Skip to content

Remove keys and deprecated modules from banner samples #862

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jun 12, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 26 additions & 39 deletions samples/notifications/banner/banner-advanced-sample/src/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,18 @@ import React, { useEffect, useRef, useState } from 'react';
import ReactDOM from 'react-dom/client';
import {
IgrBanner,
IgrBannerModule,
IgrButton,
IgrButtonModule,
IgrCard,
IgrCardModule,
IgrIcon,
IgrIconModule,
IgrNavbar,
IgrNavbarModule,
IgrRipple,
IgrRippleModule,
IgrToast,
IgrToastModule,
registerIconFromText,
} from 'igniteui-react';
} from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
import './BannerAdvancedSample.css';
import './index.css';

IgrBannerModule.register();
IgrNavbarModule.register();
IgrIconModule.register();
IgrCardModule.register();
IgrButtonModule.register();
IgrRippleModule.register();
IgrToastModule.register();

const wifiOnIcon =
'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M12.01 21.49L23.64 7c-.45-.34-4.93-4-11.64-4C5.28 3 .81 6.66.36 7l11.63 14.49.01.01.01-.01z"/></svg>';
const wifiOffIcon =
Expand All @@ -40,27 +25,29 @@ export default function BannerAdvancedSample() {
const toastRef = useRef<IgrToast>(null);

const [wifiState, setWifiState] = useState(false);
const [iconName, setIconName] = useState("signal_wifi_off");

useEffect(() => {
registerIconFromText('signal_wifi_off', wifiOffIcon);
registerIconFromText('signal_wifi_4_bar', wifiOnIcon);
bannerRef.current.open = true;
}, []);

function refreshBanner() {
if (!wifiState) {
iconRef.current.name = 'signal_wifi_4_bar';
const refreshBanner = () => {
const nextWifiState = !wifiState;
setWifiState(nextWifiState);
setIconName(nextWifiState ? "signal_wifi_4_bar" : "signal_wifi_off");

if (nextWifiState) {
bannerRef.current.hide();
} else {
iconRef.current.name = 'signal_wifi_off';
bannerRef.current.show();
}

setWifiState(current => !current);
showToast();
}

function showToast() {
const showToast = () => {
toastRef.current.open = false;
toastRef.current.show();
}
Expand All @@ -69,37 +56,37 @@ export default function BannerAdvancedSample() {
<div className="gallery__wrapper">
<div className="gallery__content">
<IgrNavbar>
<h1 key="header">Gallery</h1>
<IgrIcon ref={iconRef} key="icon-wifi-off" name="signal_wifi_off" slot="end" onClick={() => refreshBanner()}></IgrIcon>
<h1>Gallery</h1>
<IgrIcon ref={iconRef} name={iconName} slot="end" onClick={refreshBanner}></IgrIcon>
</IgrNavbar>

<IgrBanner ref={bannerRef} className="offline-banner">
<IgrIcon key="icon-wifi-off" name="signal_wifi_off" slot="prefix"></IgrIcon>
<span key="message">You have lost connection to the internet. This app is offline.</span>
<div key="actions" slot="actions">
<IgrButton key="button-offline" variant="flat" onClick={() => bannerRef.current.hide()}>
<IgrRipple key="ripple-offline" />
<span key="action-offline">Continue Offline</span>
<IgrIcon name="signal_wifi_off" slot="prefix"></IgrIcon>
<span>You have lost connection to the internet. This app is offline.</span>
<div slot="actions">
<IgrButton variant="flat" onClick={() => bannerRef.current.hide()}>
<IgrRipple />
<span>Continue Offline</span>
</IgrButton>
<IgrButton key="button-wifi" variant="flat" onClick={() => refreshBanner()}>
<IgrRipple key="ripple-wifi" />
<span key="action-wifi">Turn On Wifi</span>
<IgrButton variant="flat" onClick={refreshBanner}>
<IgrRipple />
<span>Turn On Wifi</span>
</IgrButton>
</div>
</IgrBanner>

<IgrCard className="gallery__item" elevated>
<div key="img-forest">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg" />
</div>
</IgrCard>
<IgrCard className="gallery__item" elevated>
<div key="img-yosemite">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg" />
</div>
</IgrCard>
<IgrToast ref={toastRef} position="middle">
<span key="toast-message">{`Wifi is now ${wifiState ? 'on' : 'off'}`}</span>
<span>{`Wifi is now ${wifiState ? 'on' : 'off'}`}</span>
</IgrToast>
</div>
</div>
Expand All @@ -108,4 +95,4 @@ export default function BannerAdvancedSample() {

// rendering above class to the React DOM
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<BannerAdvancedSample/>);
root.render(<BannerAdvancedSample />);
29 changes: 10 additions & 19 deletions samples/notifications/banner/banner-sample-1/src/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,15 @@ import React, { useEffect, useRef } from 'react';
import ReactDOM from 'react-dom/client';
import {
IgrBanner,
IgrBannerModule,
IgrCard,
IgrCardModule,
IgrIcon,
IgrIconModule,
IgrNavbar,
IgrNavbarModule,
registerIconFromText,
} from 'igniteui-react';
} from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
import './BannerSample1.css';
import './index.css';

IgrBannerModule.register();
IgrNavbarModule.register();
IgrIconModule.register();
IgrCardModule.register();

const refreshIcon =
'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"/></svg>';

Expand All @@ -35,22 +26,22 @@ export default function BannerSample1() {
<div className="gallery__wrapper">
<div className="gallery__content">
<IgrNavbar>
<h1 key="header">Gallery</h1>
<IgrIcon key="icon" name="refresh" slot="end" onClick={() => bannerRef.current.show()}></IgrIcon>
<h1>Gallery</h1>
<IgrIcon name="refresh" slot="end" onClick={() => bannerRef.current.show()}></IgrIcon>
</IgrNavbar>

<IgrBanner ref={bannerRef} className="offline-banner">
<span key="message">You are currently offline.</span>
<span>You are currently offline.</span>
</IgrBanner>

<IgrCard className="gallery__item" elevated>
<div key="img-forest">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg" />
</div>
</IgrCard>
<IgrCard className="gallery__item" elevated>
<div key="img-yosemite">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg" />
</div>
</IgrCard>
</div>
Expand All @@ -60,4 +51,4 @@ export default function BannerSample1() {

// rendering above class to the React DOM
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<BannerSample1/>);
root.render(<BannerSample1 />);
41 changes: 14 additions & 27 deletions samples/notifications/banner/banner-sample-2/src/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,17 @@ import React, { useEffect, useRef } from 'react';
import ReactDOM from 'react-dom/client';
import {
IgrBanner,
IgrBannerModule,
IgrButton,
IgrButtonModule,
IgrCard,
IgrCardModule,
IgrIcon,
IgrIconModule,
IgrNavbar,
IgrNavbarModule,
IgrRipple,
IgrRippleModule,
registerIconFromText,
} from 'igniteui-react';
} from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
import './BannerSample2.css';
import './index.css';

IgrBannerModule.register();
IgrNavbarModule.register();
IgrIconModule.register();
IgrCardModule.register();
IgrButtonModule.register();
IgrRippleModule.register();

const refreshIcon =
'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"/></svg>';
const wifiOffIcon =
Expand All @@ -44,29 +31,29 @@ export default function BannerSample2() {
<div className="gallery__wrapper">
<div className="gallery__content">
<IgrNavbar>
<h1 key="header">Gallery</h1>
<IgrIcon key="icon-refresh" name="refresh" slot="end" onClick={() => bannerRef.current.show()}></IgrIcon>
<h1>Gallery</h1>
<IgrIcon name="refresh" slot="end" onClick={() => bannerRef.current.show()}></IgrIcon>
</IgrNavbar>

<IgrBanner ref={bannerRef} className="offline-banner">
<IgrIcon key="icon-wifi-off" name="signal_wifi_off" slot="prefix"></IgrIcon>
<span key="message">You have lost connection to the internet. This app is offline.</span>
<div key="actions"slot="actions" >
<IgrButton key="button" variant="flat" onClick={() => bannerRef.current.toggle()}>
<IgrRipple key="ripple" />
<span key="action-text">Toggle Banner</span>
<IgrIcon name="signal_wifi_off" slot="prefix"></IgrIcon>
<span>You have lost connection to the internet. This app is offline.</span>
<div slot="actions" >
<IgrButton variant="flat" onClick={() => bannerRef.current.toggle()}>
<IgrRipple />
<span>Toggle Banner</span>
</IgrButton>
</div>
</IgrBanner>

<IgrCard className="gallery__item" elevated>
<div key="img-forest">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/the_red_ice_forest.jpg" />
</div>
</IgrCard>
<IgrCard className="gallery__item" elevated>
<div key="img-yosemite">
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg"/>
<div>
<img src="https://www.infragistics.com/angular-demos-lob/assets/images/card/media/yosemite.jpg" />
</div>
</IgrCard>
</div>
Expand All @@ -76,4 +63,4 @@ export default function BannerSample2() {

// rendering above class to the React DOM
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<BannerSample2/>);
root.render(<BannerSample2 />);
Loading