@hero-design/rn 8.139.3 → 8.141.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hero-design/rn",
3
- "version": "8.139.3",
3
+ "version": "8.141.0",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -0,0 +1,239 @@
1
+ import React, {
2
+ useCallback,
3
+ useEffect,
4
+ useMemo,
5
+ useRef,
6
+ useState,
7
+ } from 'react';
8
+ import {
9
+ AccessibilityInfo,
10
+ Animated,
11
+ StyleSheet,
12
+ useWindowDimensions,
13
+ } from 'react-native';
14
+ import type { LayoutChangeEvent } from 'react-native';
15
+
16
+ import { useTheme } from '../../theme';
17
+ import { computeXKeyframes } from './computeXKeyframes';
18
+
19
+ const CONFETTI_MIN_SIZE = 4;
20
+ const CONFETTI_MAX_SIZE = 20;
21
+ const BATCH_SIZE = 10;
22
+ const BATCH_DELAY_MS = 300;
23
+ const FADE_OUT_MS = 500;
24
+ const Y_START_OFFSET = -60;
25
+
26
+ const styles = StyleSheet.create({
27
+ container: {
28
+ ...StyleSheet.absoluteFillObject,
29
+ overflow: 'hidden',
30
+ },
31
+ piece: {
32
+ position: 'absolute',
33
+ left: 0,
34
+ top: 0,
35
+ },
36
+ });
37
+
38
+ function randomBetween(min: number, max: number): number {
39
+ return Math.random() * (max - min) + min;
40
+ }
41
+
42
+ type PieceConfig = {
43
+ color: string;
44
+ size: number;
45
+ initialX: number;
46
+ xVel: number;
47
+ yVel: number;
48
+ angleVel: number;
49
+ delay: number;
50
+ };
51
+
52
+ type ConfettiPieceProps = PieceConfig & {
53
+ containerWidth: number;
54
+ duration: number;
55
+ onFinish: () => void;
56
+ };
57
+
58
+ const ConfettiPiece = ({
59
+ angleVel,
60
+ color,
61
+ containerWidth,
62
+ delay,
63
+ duration,
64
+ initialX,
65
+ onFinish,
66
+ size,
67
+ xVel,
68
+ yVel,
69
+ }: ConfettiPieceProps) => {
70
+ const progress = useRef(new Animated.Value(0)).current;
71
+ const durationSeconds = duration / 1000;
72
+
73
+ const xKeyframes = useMemo(
74
+ () => computeXKeyframes(initialX, xVel, durationSeconds, containerWidth),
75
+ // eslint-disable-next-line react-hooks/exhaustive-deps
76
+ []
77
+ );
78
+
79
+ const translateX = progress.interpolate({
80
+ inputRange: xKeyframes.inputRange,
81
+ outputRange: xKeyframes.outputRange,
82
+ });
83
+
84
+ const translateY = progress.interpolate({
85
+ inputRange: [0, 1],
86
+ outputRange: [Y_START_OFFSET, Y_START_OFFSET + yVel * durationSeconds],
87
+ });
88
+
89
+ const rotate = progress.interpolate({
90
+ inputRange: [0, 1],
91
+ outputRange: ['0rad', `${angleVel * durationSeconds}rad`],
92
+ });
93
+
94
+ useEffect(() => {
95
+ Animated.sequence([
96
+ Animated.delay(delay),
97
+ Animated.timing(progress, {
98
+ toValue: 1,
99
+ duration,
100
+ useNativeDriver: true,
101
+ }),
102
+ ]).start(({ finished }) => {
103
+ if (finished) onFinish();
104
+ });
105
+ // eslint-disable-next-line react-hooks/exhaustive-deps
106
+ }, []);
107
+
108
+ return (
109
+ <Animated.View
110
+ style={[
111
+ styles.piece,
112
+ { width: size, height: size / 2, backgroundColor: color },
113
+ { transform: [{ translateX }, { translateY }, { rotate }] },
114
+ ]}
115
+ />
116
+ );
117
+ };
118
+
119
+ export type ShowConfettiConfig = {
120
+ /** Animation duration in milliseconds.
121
+ * @default 3000
122
+ */
123
+ duration?: number;
124
+ /** Number of confetti pieces to render.
125
+ * @default 80
126
+ */
127
+ numberOfPieces?: number;
128
+ /** Colors for confetti pieces. Defaults to theme primary and secondary colors. */
129
+ colors?: string[];
130
+ };
131
+
132
+ export type ConfettiProps = ShowConfettiConfig & {
133
+ /** Triggers the confetti burst animation when set to true */
134
+ run: boolean;
135
+ /** Called after all pieces have finished animating and faded out */
136
+ onFinish?: () => void;
137
+ testID?: string;
138
+ };
139
+
140
+ const Confetti = ({
141
+ colors: colorsProp,
142
+ numberOfPieces = 80,
143
+ duration = 3000,
144
+ onFinish,
145
+ run,
146
+ testID,
147
+ }: ConfettiProps) => {
148
+ const theme = useTheme();
149
+ const { height: screenHeight } = useWindowDimensions();
150
+ const [isReducedMotion, setIsReducedMotion] = useState(false);
151
+ const [isVisible, setIsVisible] = useState(false);
152
+ const [containerWidth, setContainerWidth] = useState(0);
153
+ const containerOpacity = useRef(new Animated.Value(0)).current;
154
+ const finishedCount = useRef(0);
155
+ const pieces = useRef<PieceConfig[] | null>(null);
156
+
157
+ useEffect(() => {
158
+ AccessibilityInfo.isReduceMotionEnabled().then(setIsReducedMotion);
159
+ const sub = AccessibilityInfo.addEventListener(
160
+ 'reduceMotionChanged',
161
+ setIsReducedMotion
162
+ );
163
+ return () => sub.remove();
164
+ }, []);
165
+
166
+ useEffect(() => {
167
+ if (run && !isReducedMotion && containerWidth > 0) {
168
+ const durationSeconds = duration / 1000;
169
+ const yVelMin = (screenHeight + 80) / durationSeconds;
170
+ const yVelMax = yVelMin * 1.5;
171
+ const colors = colorsProp ?? [
172
+ theme.colors.primary,
173
+ theme.colors.secondary,
174
+ ];
175
+ pieces.current = Array.from({ length: numberOfPieces }, (_, i) => ({
176
+ color: colors[i % colors.length],
177
+ size: Math.round(randomBetween(CONFETTI_MIN_SIZE, CONFETTI_MAX_SIZE)),
178
+ initialX: randomBetween(containerWidth * 0.2, containerWidth * 0.8),
179
+ xVel: randomBetween(-200, 200),
180
+ yVel: randomBetween(yVelMin, yVelMax),
181
+ angleVel: randomBetween(-Math.PI * 1.5, Math.PI * 1.5),
182
+ delay: Math.floor(i / BATCH_SIZE) * BATCH_DELAY_MS,
183
+ }));
184
+ finishedCount.current = 0;
185
+ containerOpacity.setValue(1);
186
+ setIsVisible(true);
187
+ }
188
+ // eslint-disable-next-line react-hooks/exhaustive-deps
189
+ }, [run, containerWidth]);
190
+
191
+ const handlePieceFinish = useCallback(() => {
192
+ finishedCount.current += 1;
193
+ if (finishedCount.current >= numberOfPieces) {
194
+ Animated.timing(containerOpacity, {
195
+ toValue: 0,
196
+ duration: FADE_OUT_MS,
197
+ useNativeDriver: true,
198
+ }).start(({ finished }) => {
199
+ if (finished) {
200
+ setIsVisible(false);
201
+ onFinish?.();
202
+ }
203
+ });
204
+ }
205
+ }, [containerOpacity, numberOfPieces, onFinish]);
206
+
207
+ const handleLayout = useCallback(({ nativeEvent }: LayoutChangeEvent) => {
208
+ const { width } = nativeEvent.layout;
209
+ if (width > 0) setContainerWidth(width);
210
+ }, []);
211
+
212
+ if (isReducedMotion) {
213
+ return null;
214
+ }
215
+
216
+ // Always render the container (when not in reduced motion) so onLayout fires and we know the real width.
217
+ // Visibility is controlled via opacity to avoid losing the measurement.
218
+ return (
219
+ <Animated.View
220
+ pointerEvents="none"
221
+ onLayout={handleLayout}
222
+ style={[styles.container, { opacity: isVisible ? containerOpacity : 0 }]}
223
+ testID={isVisible ? testID : undefined}
224
+ >
225
+ {isVisible &&
226
+ pieces.current?.map((piece, id) => (
227
+ <ConfettiPiece
228
+ key={id}
229
+ {...piece}
230
+ containerWidth={containerWidth}
231
+ duration={duration}
232
+ onFinish={handlePieceFinish}
233
+ />
234
+ ))}
235
+ </Animated.View>
236
+ );
237
+ };
238
+
239
+ export default Confetti;
@@ -0,0 +1,61 @@
1
+ import React, {
2
+ createContext,
3
+ useCallback,
4
+ useMemo,
5
+ useRef,
6
+ useState,
7
+ } from 'react';
8
+ import type { PropsWithChildren } from 'react';
9
+
10
+ import Confetti from './Confetti';
11
+ import type { ShowConfettiConfig } from './Confetti';
12
+
13
+ type ConfettiContextValue = {
14
+ showConfetti: (
15
+ config?: ShowConfettiConfig,
16
+ onFinished?: (isFinished: boolean) => void
17
+ ) => void;
18
+ };
19
+
20
+ export const ConfettiContext = createContext<ConfettiContextValue | null>(null);
21
+
22
+ const ConfettiProvider = ({ children }: PropsWithChildren) => {
23
+ const [run, setRun] = useState(false);
24
+ const [callConfig, setCallConfig] = useState<
25
+ ShowConfettiConfig | undefined
26
+ >();
27
+ const onFinishedRef = useRef<((isFinished: boolean) => void) | undefined>(
28
+ undefined
29
+ );
30
+
31
+ const showConfetti = useCallback(
32
+ (
33
+ config?: ShowConfettiConfig,
34
+ onFinished?: (isFinished: boolean) => void
35
+ ) => {
36
+ setCallConfig(config);
37
+ onFinishedRef.current = onFinished;
38
+ setRun(true);
39
+ },
40
+ []
41
+ );
42
+
43
+ const handleFinish = useCallback(() => {
44
+ setRun(false);
45
+ onFinishedRef.current?.(true);
46
+ }, []);
47
+
48
+ const contextValue = useMemo<ConfettiContextValue>(
49
+ () => ({ showConfetti }),
50
+ [showConfetti]
51
+ );
52
+
53
+ return (
54
+ <ConfettiContext.Provider value={contextValue}>
55
+ {children}
56
+ <Confetti run={run} onFinish={handleFinish} {...callConfig} />
57
+ </ConfettiContext.Provider>
58
+ );
59
+ };
60
+
61
+ export default ConfettiProvider;
@@ -0,0 +1,38 @@
1
+ export function reflectX(rawX: number, width: number): number {
2
+ const period = 2 * width;
3
+ const modX = ((rawX % period) + period) % period;
4
+ return modX < width ? modX : period - modX;
5
+ }
6
+
7
+ /**
8
+ * Pre-computes the reflectX triangle-wave as interpolation keyframes.
9
+ * Run once in JS before animation starts; native driver handles per-frame lerp.
10
+ */
11
+ export function computeXKeyframes(
12
+ initialX: number,
13
+ xVel: number,
14
+ durationSeconds: number,
15
+ width: number
16
+ ): { inputRange: number[]; outputRange: number[] } {
17
+ if (xVel === 0) {
18
+ return { inputRange: [0, 1], outputRange: [initialX, initialX] };
19
+ }
20
+ const rawEnd = initialX + xVel * durationSeconds;
21
+ const rawMin = Math.min(initialX, rawEnd);
22
+ const rawMax = Math.max(initialX, rawEnd);
23
+ const nMin = Math.ceil(rawMin / width);
24
+ const nMax = Math.floor(rawMax / width);
25
+
26
+ const times: number[] = [0];
27
+ for (let n = nMin; n <= nMax; n += 1) {
28
+ const t = (n * width - initialX) / xVel;
29
+ if (t > 0 && t < durationSeconds) times.push(t);
30
+ }
31
+ times.push(durationSeconds);
32
+ times.sort((a, b) => a - b);
33
+
34
+ return {
35
+ inputRange: times.map((t) => t / durationSeconds),
36
+ outputRange: times.map((t) => reflectX(initialX + xVel * t, width)),
37
+ };
38
+ }
@@ -0,0 +1,12 @@
1
+ import ConfettiComponent from './Confetti';
2
+ import ConfettiProvider from './ConfettiProvider';
3
+ import useConfetti from './useConfetti';
4
+
5
+ export type { ConfettiProps, ShowConfettiConfig } from './Confetti';
6
+
7
+ const Confetti = Object.assign(ConfettiComponent, {
8
+ Provider: ConfettiProvider,
9
+ useConfetti,
10
+ });
11
+
12
+ export default Confetti;
@@ -0,0 +1,13 @@
1
+ import { useContext } from 'react';
2
+
3
+ import { ConfettiContext } from './ConfettiProvider';
4
+
5
+ const useConfetti = () => {
6
+ const context = useContext(ConfettiContext);
7
+ if (!context) {
8
+ throw new Error('useConfetti must be used within a Confetti.Provider');
9
+ }
10
+ return context;
11
+ };
12
+
13
+ export default useConfetti;
@@ -1 +1 @@
1
- {"activate":59000,"add-emoji":59001,"add-person":59002,"adjustment":59003,"alignment":59004,"antenna":59005,"archive":59006,"assignment-warning":59007,"bank":59008,"bell":59009,"billing":59010,"bolt":59011,"bookmark-added":59012,"bookmark-checked":59013,"bookmark":59014,"box-check":59015,"box":59016,"bpay":59017,"buildings":59018,"cake":59019,"calendar-clock":59020,"calendar":59021,"candy-box-menu":59022,"caret-down-small":59023,"caret-down":59024,"caret-left-small":59025,"caret-left":59026,"caret-right-small":59027,"caret-right":59028,"caret-up-small":59029,"caret-up":59030,"check-radio":59031,"circle-add":59032,"circle-cancel":59033,"circle-check":59034,"circle-down":59035,"circle-info":59036,"circle-left":59037,"circle-ok":59038,"circle-pencil":59039,"circle-question":59040,"circle-remove":59041,"circle-right":59042,"circle-up":59043,"circle-warning":59044,"clock-3":59045,"clock":59046,"cloud-download":59047,"cloud-upload":59048,"cog":59049,"coin":59050,"contacts":59051,"credit-card":59052,"diamond":59053,"direction-arrows":59054,"directory":59055,"document":59056,"dollar-coin-shine":59057,"dot":59058,"double-buildings":59059,"edit-template":59060,"envelope":59061,"exclude":59062,"expand-content":59063,"expense":59064,"explore_nearby":59065,"eye-circle":59066,"eye-invisible":59067,"eye":59068,"face-meh":59069,"face-sad":59070,"face-smiley":59071,"feed":59072,"feedbacks":59073,"file-certified":59074,"file-clone":59075,"file-copy":59076,"file-csv":59077,"file-dispose":59078,"file-doc":59079,"file-excel":59080,"file-export":59081,"file-lock":59082,"file-pdf":59083,"file-powerpoint":59084,"file-search":59085,"file-secured":59086,"file-sheets":59087,"file-slide":59088,"file-verified":59089,"file-word":59090,"file":59091,"filter":59092,"folder-user":59093,"folder":59094,"format-bold":59095,"format-heading1":59096,"format-heading2":59097,"format-italic":59098,"format-list-bulleted":59099,"format-list-numbered":59100,"format-underlined":59101,"funnel-filter":59102,"global-dollar":59103,"global-pound":59104,"globe":59105,"graduation-cap":59106,"graph":59107,"happy-sun":59108,"health-bag":59109,"heart":59110,"hero-points":59111,"home":59112,"image":59113,"import":59114,"incident-siren":59115,"instapay-daily":59116,"instapay-now":59117,"instapay":59118,"list":59119,"loading-2":59120,"loading":59121,"location-on":59122,"location":59123,"lock":59124,"looks-one":59125,"looks-two":59126,"media-content":59127,"menu":59128,"money-notes":59129,"moneybag":59130,"moon":59131,"multiple-stars":59132,"multiple-users":59133,"near-me":59134,"node":59135,"open-folder":59136,"paperclip-vertical":59137,"paperclip":59138,"payment-summary":59139,"pencil":59140,"phone":59141,"piggy-bank":59142,"plane-up":59143,"plane":59144,"play-arrow":59145,"play-circle":59146,"pound-coin-shine":59147,"pound-sign":59148,"print":59149,"raising-hands":59150,"reply-arrow":59151,"reply":59152,"reschedule":59153,"rocket-launch":59154,"rostering":59155,"salary-sacrifice":59156,"save":59157,"schedule-send":59158,"schedule":59159,"search-person":59160,"search":59161,"send":59162,"speaker":59163,"star-award":59164,"star-badge":59165,"star-circle":59166,"star-medal":59167,"star":59168,"steps-circle":59169,"stopwatch":59170,"suitcase":59171,"surfing":59172,"survey":59173,"swag-pillar-benefit":59174,"swag-pillar-career":59175,"swag-pillar-money":59176,"swag-pillar-work":59177,"swag":59178,"swipe-right":59179,"switch":59180,"tag":59181,"target":59182,"teams":59183,"thumb-down":59184,"thumb-up":59185,"timesheet":59186,"touch-id":59187,"trash-bin":59188,"unlock":59189,"user":59190,"video-1":59191,"video-2":59192,"wallet":59193,"warning":59194,"academic-hat-outlined":59195,"accommodation-outlined":59196,"activate-outlined":59197,"add-credit-card-outlined":59198,"add-emoji-outlined":59199,"add-person-outlined":59200,"add-section-outlined":59201,"add-time-outlined":59202,"add":59203,"adjustment-outlined":59204,"afternoon-outlined":59205,"ai-outlined":59206,"alignment-2-outlined":59207,"alignment-outlined":59208,"all-caps":59209,"application-outlined":59210,"archive-outlined":59211,"arrow-down":59212,"arrow-downwards":59213,"arrow-left":59214,"arrow-leftwards":59215,"arrow-right":59216,"arrow-rightwards":59217,"arrow-up":59218,"arrow-upwards":59219,"article-outlined":59220,"assignment-warning-outlined":59221,"at-sign":59222,"auto-graph-outlined":59223,"automotive-outlined":59224,"bakery-outlined":59225,"bank-outlined":59226,"bar-outlined":59227,"beauty-outlined":59228,"beer-outlined":59229,"bell-outlined":59230,"bell-slash-outlined":59231,"bill-management-outlined":59232,"billing-outlined":59233,"body-outlined":59234,"bold":59235,"bolt-outlined":59236,"book-outlined":59237,"bookmark-added-outlined":59238,"bookmark-checked-outlined":59239,"bookmark-outlined":59240,"box-1-outlined":59241,"box-check-outlined":59242,"box-outlined":59243,"bullet-points":59244,"cake-outlined":59245,"calculator-outlined":59246,"calendar-clock-outlined":59247,"calendar-dates-outlined":59248,"calendar-edit-outlined":59249,"calendar-outlined":59250,"calendar-star-outlined":59251,"call-outlined":59252,"call-split-outlined":59253,"camera-outlined":59254,"cancel":59255,"car-forward-outlined":59256,"cashback-outlined":59257,"charging-station-outlined":59258,"chat-bubble-outlined":59259,"chat-unread-outlined":59260,"checkmark":59261,"circle-add-outlined":59262,"circle-cancel-outlined":59263,"circle-check-outlined":59264,"circle-down-outlined":59265,"circle-info-outlined":59266,"circle-left-outlined":59267,"circle-ok-outlined":59268,"circle-question-outlined":59269,"circle-remove-outlined":59270,"circle-right-outlined":59271,"circle-up-outlined":59272,"circle-warning-outlined":59273,"clock-2-outlined":59274,"clock-3-outlined":59275,"clock-in-outlined":59276,"clock-out-outlined":59277,"clock-outlined":59278,"cloud-download-outlined":59279,"cog-outlined":59280,"coin-outlined":59281,"coin-super-outlined":59282,"comment-outlined":59283,"contacts-outlined":59284,"contacts-user-outlined":59285,"credit-card-outlined":59286,"cultural-site-outlined":59287,"cup-outlined":59288,"dentistry-outlined":59289,"diamond-outlined":59290,"direction-arrows-outlined":59291,"directory-outlined":59292,"document-outlined":59293,"dollar-box-outlined":59294,"dollar-card-outlined":59295,"dollar-coin-shine-outlined":59296,"dollar-credit-card-outlined":59297,"dollar-sign":59298,"double-buildings-outlined":59299,"double-left-arrows":59300,"double-right-arrows":59301,"download-box-outlined":59302,"download-outlined":59303,"edit-template-outlined":59304,"edit-user-outlined":59305,"electronics-outlined":59306,"email-outlined":59307,"end-break-outlined":59308,"enter-arrow":59309,"entertainment-outlined":59310,"envelope-outlined":59311,"evening-outlined":59312,"expense-approval-outlined":59313,"expense-outlined":59314,"explore-outlined":59315,"extension-outlined":59316,"external-link":59317,"eye-invisible-outlined":59318,"eye-outlined":59319,"face-id":59320,"face-meh-outlined":59321,"face-open-smiley-outlined":59322,"face-sad-outlined":59323,"face-smiley-outlined":59324,"fastfood-outlined":59325,"feed-outlined":59326,"feedbacks-outlined":59327,"file-certified-outlined":59328,"file-clone-outlined":59329,"file-copy-outlined":59330,"file-dispose-outlined":59331,"file-dollar-certified-outlined":59332,"file-dollar-outlined":59333,"file-download-outlined":59334,"file-export-outlined":59335,"file-lock-outlined":59336,"file-outlined":59337,"file-pound-outlined":59338,"file-search-outlined":59339,"file-secured-outlined":59340,"file-statutory-outlined":59341,"file-verified-outlined":59342,"filter-outlined":59343,"fitness-outlined":59344,"folder-outlined":59345,"folder-upload-outlined":59346,"folder-user-outlined":59347,"form-outlined":59348,"funnel-filter-outline":59349,"goal-outlined":59350,"graph-outlined":59351,"grocery-outlined":59352,"hand-holding-user-outlined":59353,"handshake-outlined":59354,"happy-sun-outlined":59355,"health-bag-outlined":59356,"heart-outlined":59357,"history-outlined":59358,"home-outlined":59359,"id-card-outlined":59360,"image-outlined":59361,"import-outlined":59362,"instapay-outlined":59363,"italic":59364,"job-search-outlined":59365,"leave-approval-outlined":59366,"lighting-outlined":59367,"link-1":59368,"link-2":59369,"list-outlined":59370,"live-help-outlined":59371,"local_mall_outlined":59372,"location-on-outlined":59373,"location-outlined":59374,"lock-outlined":59375,"locked-file-outlined":59376,"log-out":59377,"mail-outlined":59378,"map-outlined":59379,"media-content-outlined":59380,"menu-close":59381,"menu-expand":59382,"menu-fold-outlined":59383,"menu-unfold-outlined":59384,"mic-outlined":59385,"mic-slash-outlined":59386,"moneybag-outlined":59387,"moon-outlined":59388,"more-horizontal":59389,"more-vertical":59390,"morning-outlined":59391,"multiple-folders-outlined":59392,"multiple-users-outlined":59393,"near-me-outlined":59394,"node-outlined":59395,"number-points":59396,"number":59397,"overview-outlined":59398,"park-outlined":59399,"payment-summary-outlined":59400,"payslip-outlined":59401,"pencil-outlined":59402,"percentage":59403,"phone-outlined":59404,"piggy-bank-outlined":59405,"plane-outlined":59406,"play-circle-outlined":59407,"pound-box-outlined":59408,"pound-card-outlined":59409,"pound-coin-shine-outlined":59410,"pound-credit-card-outlined":59411,"print-outlined":59412,"profile-2user-outlined":59413,"propane-tank-outlined":59414,"qr-code-outlined":59415,"qualification-outlined":59416,"question-mark":59417,"raising-hands-outlined":59418,"re-assign":59419,"redeem":59420,"refresh":59421,"remove":59422,"reply-outlined":59423,"restart":59424,"restaurant-outlined":59425,"resume-outlined":59426,"return-arrow":59427,"rocket-launch-outlined":59428,"rostering-outlined":59429,"safety-outlined":59430,"save-outlined":59431,"schedule-outlined":59432,"schedule-send-outlined":59433,"search-outlined":59434,"search-secured-outlined":59435,"send-outlined":59436,"share-1":59437,"share-2":59438,"share-outlined-2":59439,"share-outlined":59440,"shield-check-outlined":59441,"shop-outlined":59442,"shopping_basket_outlined":59443,"show-chart-outlined":59444,"single-down-arrow":59445,"single-left-arrow":59446,"single-right-arrow":59447,"single-up-arrow":59448,"smart-match-outlined":59449,"sparkle-2-outlined":59450,"sparkle-outlined":59451,"speaker-outlined":59452,"star-award-outlined":59453,"star-badge-outlined":59454,"star-circle-outlined":59455,"star-medal-outlined":59456,"star-outlined":59457,"start-break-outlined":59458,"stash-outlined":59459,"stop-outlined":59460,"stopwatch-outlined":59461,"strikethrough":59462,"styler-outlined":59463,"suitcase-clock-outlined":59464,"suitcase-outlined":59465,"survey-outlined":59466,"switch-outlined":59467,"sync":59468,"tag-outlined":59469,"target-outlined":59470,"teams-outlined":59471,"tennis-outlined":59472,"thumb-down-outlined":59473,"thumb-up-outlined":59474,"ticket-outlined":59475,"timesheet-outlined":59476,"timesheets-outlined":59477,"today-outlined":59478,"transfer":59479,"transportation-outlined":59480,"trash-bin-outlined":59481,"umbrela-outlined":59482,"unavailability-outlined":59483,"unavailable":59484,"underline":59485,"union-outlined":59486,"unlock-outlined":59487,"upload-outlined":59488,"user-add-outlined":59489,"user-circle-outlined":59490,"user-gear-outlined":59491,"user-out-outlined":59492,"user-outlined":59493,"user-rectangle-outlined":59494,"video-1-outlined":59495,"video-2-outlined":59496,"volunteer-outlined":59497,"wallet-outlined":59498,"warning-outlined":59499,"wellness-outlined":59500}
1
+ {"activate":59000,"add-emoji":59001,"add-person":59002,"adjustment":59003,"alignment":59004,"antenna":59005,"archive":59006,"assignment-warning":59007,"bank":59008,"bell":59009,"billing":59010,"bolt":59011,"bookmark-added":59012,"bookmark-checked":59013,"bookmark":59014,"box-check":59015,"box":59016,"bpay":59017,"buildings":59018,"cake":59019,"calendar-clock":59020,"calendar":59021,"candy-box-menu":59022,"caret-down-small":59023,"caret-down":59024,"caret-left-small":59025,"caret-left":59026,"caret-right-small":59027,"caret-right":59028,"caret-up-small":59029,"caret-up":59030,"check-radio":59031,"circle-add":59032,"circle-cancel":59033,"circle-check":59034,"circle-down":59035,"circle-info":59036,"circle-left":59037,"circle-ok":59038,"circle-pencil":59039,"circle-question":59040,"circle-remove":59041,"circle-right":59042,"circle-up":59043,"circle-warning":59044,"clock-3":59045,"clock":59046,"cloud-download":59047,"cloud-upload":59048,"cog":59049,"coin":59050,"contacts":59051,"credit-card":59052,"diamond":59053,"direction-arrows":59054,"directory":59055,"document":59056,"dollar-coin-shine":59057,"dot":59058,"double-buildings":59059,"edit-template":59060,"envelope":59061,"exclude":59062,"expand-content":59063,"expense":59064,"explore_nearby":59065,"eye-circle":59066,"eye-invisible":59067,"eye":59068,"face-meh":59069,"face-sad":59070,"face-smiley":59071,"feed":59072,"feedbacks":59073,"file-certified":59074,"file-clone":59075,"file-copy":59076,"file-csv":59077,"file-dispose":59078,"file-doc":59079,"file-excel":59080,"file-export":59081,"file-lock":59082,"file-pdf":59083,"file-powerpoint":59084,"file-search":59085,"file-secured":59086,"file-sheets":59087,"file-slide":59088,"file-verified":59089,"file-word":59090,"file":59091,"filter":59092,"folder-user":59093,"folder":59094,"format-bold":59095,"format-heading1":59096,"format-heading2":59097,"format-italic":59098,"format-list-bulleted":59099,"format-list-numbered":59100,"format-underlined":59101,"funnel-filter":59102,"global-dollar":59103,"global-pound":59104,"globe":59105,"graduation-cap":59106,"graph":59107,"happy-sun":59108,"health-bag":59109,"heart":59110,"hero-points":59111,"home":59112,"image":59113,"import":59114,"incident-siren":59115,"instapay-daily":59116,"instapay-now":59117,"instapay":59118,"list":59119,"loading-2":59120,"loading":59121,"location-on":59122,"location":59123,"lock":59124,"looks-one":59125,"looks-two":59126,"media-content":59127,"menu":59128,"money-notes":59129,"moneybag":59130,"moon":59131,"multiple-stars":59132,"multiple-users":59133,"near-me":59134,"node":59135,"open-folder":59136,"paperclip-vertical":59137,"paperclip":59138,"payment-summary":59139,"pencil":59140,"phone":59141,"piggy-bank":59142,"plane-up":59143,"plane":59144,"play-arrow":59145,"play-circle":59146,"pound-coin-shine":59147,"pound-sign":59148,"print":59149,"raising-hands":59150,"reply-arrow":59151,"reply":59152,"reschedule":59153,"rocket-launch":59154,"rostering":59155,"salary-sacrifice":59156,"save":59157,"schedule-send":59158,"schedule":59159,"search-person":59160,"search":59161,"send":59162,"speaker":59163,"star-award":59164,"star-badge":59165,"star-circle":59166,"star-medal":59167,"star":59168,"steps-circle":59169,"stopwatch":59170,"suitcase":59171,"surfing":59172,"survey":59173,"swag-pillar-benefit":59174,"swag-pillar-career":59175,"swag-pillar-money":59176,"swag-pillar-work":59177,"swag":59178,"swipe-right":59179,"switch":59180,"tag":59181,"target":59182,"teams":59183,"thumb-down":59184,"thumb-up":59185,"timesheet":59186,"touch-id":59187,"trash-bin":59188,"unlock":59189,"user":59190,"video-1":59191,"video-2":59192,"wallet":59193,"warning":59194,"academic-hat-outlined":59195,"accommodation-outlined":59196,"activate-outlined":59197,"add-credit-card-outlined":59198,"add-emoji-outlined":59199,"add-person-outlined":59200,"add-section-outlined":59201,"add-time-outlined":59202,"add":59203,"adjustment-outlined":59204,"afternoon-outlined":59205,"ai-outlined":59206,"alignment-2-outlined":59207,"alignment-outlined":59208,"all-caps":59209,"application-outlined":59210,"archive-outlined":59211,"arrow-down":59212,"arrow-downwards":59213,"arrow-left":59214,"arrow-leftwards":59215,"arrow-right":59216,"arrow-rightwards":59217,"arrow-up":59218,"arrow-upwards":59219,"article-outlined":59220,"assignment-warning-outlined":59221,"at-sign":59222,"auto-graph-outlined":59223,"automotive-outlined":59224,"bakery-outlined":59225,"bank-outlined":59226,"bar-outlined":59227,"beauty-outlined":59228,"beer-outlined":59229,"bell-outlined":59230,"bell-slash-outlined":59231,"bill-management-outlined":59232,"billing-outlined":59233,"body-outlined":59234,"bold":59235,"bolt-outlined":59236,"book-outlined":59237,"bookmark-added-outlined":59238,"bookmark-checked-outlined":59239,"bookmark-outlined":59240,"box-1-outlined":59241,"box-check-outlined":59242,"box-outlined":59243,"bullet-points":59244,"cake-outlined":59245,"calculator-outlined":59246,"calendar-clock-outlined":59247,"calendar-dates-outlined":59248,"calendar-edit-outlined":59249,"calendar-outlined":59250,"calendar-star-outlined":59251,"call-outlined":59252,"call-split-outlined":59253,"camera-outlined":59254,"cancel":59255,"car-forward-outlined":59256,"cashback-outlined":59257,"charging-station-outlined":59258,"chat-bubble-outlined":59259,"chat-unread-outlined":59260,"checkmark":59261,"circle-add-outlined":59262,"circle-cancel-outlined":59263,"circle-check-outlined":59264,"circle-down-outlined":59265,"circle-info-outlined":59266,"circle-left-outlined":59267,"circle-ok-outlined":59268,"circle-question-outlined":59269,"circle-remove-outlined":59270,"circle-right-outlined":59271,"circle-up-outlined":59272,"circle-warning-outlined":59273,"clock-2-outlined":59274,"clock-3-outlined":59275,"clock-in-outlined":59276,"clock-out-outlined":59277,"clock-outlined":59278,"cloud-download-outlined":59279,"cog-outlined":59280,"coin-outlined":59281,"coin-super-outlined":59282,"comment-outlined":59283,"contacts-outlined":59284,"contacts-user-outlined":59285,"credit-card-outlined":59286,"cultural-site-outlined":59287,"cup-outlined":59288,"dentistry-outlined":59289,"diamond-outlined":59290,"direction-arrows-outlined":59291,"directory-outlined":59292,"document-outlined":59293,"dollar-box-outlined":59294,"dollar-card-outlined":59295,"dollar-coin-shine-outlined":59296,"dollar-credit-card-outlined":59297,"dollar-sign":59298,"double-buildings-outlined":59299,"double-left-arrows":59300,"double-right-arrows":59301,"download-box-outlined":59302,"download-outlined":59303,"edit-template-outlined":59304,"edit-user-outlined":59305,"electronics-outlined":59306,"email-outlined":59307,"end-break-outlined":59308,"enter-arrow":59309,"entertainment-outlined":59310,"envelope-outlined":59311,"evening-outlined":59312,"expense-approval-outlined":59313,"expense-outlined":59314,"explore-outlined":59315,"extension-outlined":59316,"external-link":59317,"eye-invisible-outlined":59318,"eye-outlined":59319,"face-id":59320,"face-meh-outlined":59321,"face-open-smiley-outlined":59322,"face-sad-outlined":59323,"face-smiley-outlined":59324,"fastfood-outlined":59325,"feed-outlined":59326,"feedbacks-outlined":59327,"file-certified-outlined":59328,"file-clone-outlined":59329,"file-copy-outlined":59330,"file-dispose-outlined":59331,"file-dollar-certified-outlined":59332,"file-dollar-outlined":59333,"file-download-outlined":59334,"file-export-outlined":59335,"file-lock-outlined":59336,"file-outlined":59337,"file-pound-outlined":59338,"file-search-outlined":59339,"file-secured-outlined":59340,"file-statutory-outlined":59341,"file-verified-outlined":59342,"filter-outlined":59343,"fitness-outlined":59344,"folder-outlined":59345,"folder-upload-outlined":59346,"folder-user-outlined":59347,"form-outlined":59348,"funnel-filter-outline":59349,"goal-outlined":59350,"graph-outlined":59351,"grocery-outlined":59352,"hand-holding-user-outlined":59353,"handshake-outlined":59354,"happy-sun-outlined":59355,"health-bag-outlined":59356,"heart-outlined":59357,"history-outlined":59358,"home-outlined":59359,"id-card-outlined":59360,"image-outlined":59361,"import-outlined":59362,"instapay-outlined":59363,"italic":59364,"job-search-outlined":59365,"leave-approval-outlined":59366,"lighting-outlined":59367,"link-1":59368,"link-2":59369,"list-outlined":59370,"live-help-outlined":59371,"local_mall_outlined":59372,"location-on-outlined":59373,"location-outlined":59374,"lock-outlined":59375,"locked-file-outlined":59376,"log-out":59377,"mail-outlined":59378,"map-outlined":59379,"media-content-outlined":59380,"menu-close":59381,"menu-expand":59382,"menu-fold-outlined":59383,"menu-unfold-outlined":59384,"mic-outlined":59385,"mic-slash-outlined":59386,"mobile-outlined":59387,"moneybag-outlined":59388,"moon-outlined":59389,"more-horizontal":59390,"more-vertical":59391,"morning-outlined":59392,"multiple-folders-outlined":59393,"multiple-users-outlined":59394,"near-me-outlined":59395,"node-outlined":59396,"number-points":59397,"number":59398,"overview-outlined":59399,"park-outlined":59400,"payment-summary-outlined":59401,"payslip-outlined":59402,"pencil-outlined":59403,"percentage":59404,"phone-outlined":59405,"piggy-bank-outlined":59406,"plane-outlined":59407,"play-circle-outlined":59408,"pound-box-outlined":59409,"pound-card-outlined":59410,"pound-coin-shine-outlined":59411,"pound-credit-card-outlined":59412,"print-outlined":59413,"profile-2user-outlined":59414,"propane-tank-outlined":59415,"qr-code-outlined":59416,"qualification-outlined":59417,"question-mark":59418,"raising-hands-outlined":59419,"re-assign":59420,"redeem":59421,"refresh":59422,"remove":59423,"reply-outlined":59424,"restart":59425,"restaurant-outlined":59426,"resume-outlined":59427,"return-arrow":59428,"rocket-launch-outlined":59429,"rostering-outlined":59430,"safety-outlined":59431,"save-outlined":59432,"schedule-outlined":59433,"schedule-send-outlined":59434,"search-outlined":59435,"search-secured-outlined":59436,"send-outlined":59437,"share-1":59438,"share-2":59439,"share-outlined-2":59440,"share-outlined":59441,"shield-check-outlined":59442,"shop-outlined":59443,"shopping_basket_outlined":59444,"show-chart-outlined":59445,"single-down-arrow":59446,"single-left-arrow":59447,"single-right-arrow":59448,"single-up-arrow":59449,"smart-match-outlined":59450,"sparkle-2-outlined":59451,"sparkle-outlined":59452,"speaker-outlined":59453,"star-award-outlined":59454,"star-badge-outlined":59455,"star-circle-outlined":59456,"star-medal-outlined":59457,"star-outlined":59458,"start-break-outlined":59459,"stash-outlined":59460,"stop-outlined":59461,"stopwatch-outlined":59462,"strikethrough":59463,"styler-outlined":59464,"suitcase-clock-outlined":59465,"suitcase-outlined":59466,"survey-outlined":59467,"switch-outlined":59468,"sync":59469,"tablet-outlined":59470,"tag-outlined":59471,"target-outlined":59472,"teams-outlined":59473,"tennis-outlined":59474,"thumb-down-outlined":59475,"thumb-up-outlined":59476,"ticket-outlined":59477,"timesheet-outlined":59478,"timesheets-outlined":59479,"today-outlined":59480,"transfer":59481,"transportation-outlined":59482,"trash-bin-outlined":59483,"umbrela-outlined":59484,"unavailability-outlined":59485,"unavailable":59486,"underline":59487,"union-outlined":59488,"unlock-outlined":59489,"upload-outlined":59490,"user-add-outlined":59491,"user-circle-outlined":59492,"user-gear-outlined":59493,"user-out-outlined":59494,"user-outlined":59495,"user-rectangle-outlined":59496,"video-1-outlined":59497,"video-2-outlined":59498,"volunteer-outlined":59499,"wallet-outlined":59500,"warning-outlined":59501,"wellness-outlined":59502}
@@ -387,6 +387,7 @@ const IconList = [
387
387
  'menu-unfold-outlined',
388
388
  'mic-outlined',
389
389
  'mic-slash-outlined',
390
+ 'mobile-outlined',
390
391
  'moneybag-outlined',
391
392
  'moon-outlined',
392
393
  'more-horizontal',
@@ -469,6 +470,7 @@ const IconList = [
469
470
  'survey-outlined',
470
471
  'switch-outlined',
471
472
  'sync',
473
+ 'tablet-outlined',
472
474
  'tag-outlined',
473
475
  'target-outlined',
474
476
  'teams-outlined',
@@ -74,6 +74,10 @@ const Icon = ({
74
74
  )} instead.`,
75
75
  icon.startsWith('carat')
76
76
  );
77
+ useDeprecation(
78
+ 'charging-station-outlined icon is deprecated and will be removed in the next major release, please use mobile-outlined instead.',
79
+ icon === 'charging-station-outlined'
80
+ );
77
81
  const accessibilityProps = {
78
82
  accessibilityLabel,
79
83
  accessibilityHint,
@@ -82,4 +82,6 @@ const Confetti = ({
82
82
  );
83
83
  };
84
84
 
85
+ Confetti.displayName = 'ConfettiIllustration';
86
+
85
87
  export default Confetti;
package/src/index.ts CHANGED
@@ -24,6 +24,8 @@ import type { ShadowPalette } from './theme';
24
24
  import { scale } from './utils/scale';
25
25
 
26
26
  import Accordion from './components/Accordion';
27
+ import Confetti from './components/Confetti';
28
+ import type { ConfettiProps } from './components/Confetti';
27
29
  import Alert from './components/Alert';
28
30
  import AppCue from './components/AppCue';
29
31
  import Attachment from './components/Attachment';
@@ -183,6 +185,8 @@ export {
183
185
  FilterTrigger,
184
186
  InlineLoader,
185
187
  type InlineLoaderProps,
188
+ Confetti,
189
+ type ConfettiProps,
186
190
  styled,
187
191
  };
188
192
 
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ export type ShowConfettiConfig = {
3
+ /** Animation duration in milliseconds.
4
+ * @default 3000
5
+ */
6
+ duration?: number;
7
+ /** Number of confetti pieces to render.
8
+ * @default 80
9
+ */
10
+ numberOfPieces?: number;
11
+ /** Colors for confetti pieces. Defaults to theme primary and secondary colors. */
12
+ colors?: string[];
13
+ };
14
+ export type ConfettiProps = ShowConfettiConfig & {
15
+ /** Triggers the confetti burst animation when set to true */
16
+ run: boolean;
17
+ /** Called after all pieces have finished animating and faded out */
18
+ onFinish?: () => void;
19
+ testID?: string;
20
+ };
21
+ declare const Confetti: ({ colors: colorsProp, numberOfPieces, duration, onFinish, run, testID, }: ConfettiProps) => React.JSX.Element | null;
22
+ export default Confetti;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import type { PropsWithChildren } from 'react';
3
+ import type { ShowConfettiConfig } from './Confetti';
4
+ type ConfettiContextValue = {
5
+ showConfetti: (config?: ShowConfettiConfig, onFinished?: (isFinished: boolean) => void) => void;
6
+ };
7
+ export declare const ConfettiContext: React.Context<ConfettiContextValue | null>;
8
+ declare const ConfettiProvider: ({ children }: PropsWithChildren) => React.JSX.Element;
9
+ export default ConfettiProvider;
@@ -0,0 +1,9 @@
1
+ export declare function reflectX(rawX: number, width: number): number;
2
+ /**
3
+ * Pre-computes the reflectX triangle-wave as interpolation keyframes.
4
+ * Run once in JS before animation starts; native driver handles per-frame lerp.
5
+ */
6
+ export declare function computeXKeyframes(initialX: number, xVel: number, durationSeconds: number, width: number): {
7
+ inputRange: number[];
8
+ outputRange: number[];
9
+ };
@@ -0,0 +1,8 @@
1
+ export type { ConfettiProps, ShowConfettiConfig } from './Confetti';
2
+ declare const Confetti: (({ colors: colorsProp, numberOfPieces, duration, onFinish, run, testID, }: import("./Confetti").ConfettiProps) => import("react").JSX.Element | null) & {
3
+ Provider: ({ children }: import("react").PropsWithChildren) => import("react").JSX.Element;
4
+ useConfetti: () => {
5
+ showConfetti: (config?: import("./Confetti").ShowConfettiConfig, onFinished?: (isFinished: boolean) => void) => void;
6
+ };
7
+ };
8
+ export default Confetti;
@@ -0,0 +1,4 @@
1
+ declare const useConfetti: () => {
2
+ showConfetti: (config?: import("./Confetti").ShowConfettiConfig, onFinished?: (isFinished: boolean) => void) => void;
3
+ };
4
+ export default useConfetti;
@@ -1,2 +1,2 @@
1
- declare const IconList: readonly ["activate", "add-emoji", "add-person", "adjustment", "alignment", "antenna", "archive", "assignment-warning", "bank", "bell", "billing", "bolt", "bookmark-added", "bookmark-checked", "bookmark", "box-check", "box", "bpay", "buildings", "cake", "calendar-clock", "calendar", "candy-box-menu", "caret-down-small", "caret-down", "caret-left-small", "caret-left", "caret-right-small", "caret-right", "caret-up-small", "caret-up", "check-radio", "circle-add", "circle-cancel", "circle-check", "circle-down", "circle-info", "circle-left", "circle-ok", "circle-pencil", "circle-question", "circle-remove", "circle-right", "circle-up", "circle-warning", "clock-3", "clock", "cloud-download", "cloud-upload", "cog", "coin", "contacts", "credit-card", "diamond", "direction-arrows", "directory", "document", "dollar-coin-shine", "dot", "double-buildings", "edit-template", "envelope", "exclude", "expand-content", "expense", "explore_nearby", "eye-circle", "eye-invisible", "eye", "face-meh", "face-sad", "face-smiley", "feed", "feedbacks", "file-certified", "file-clone", "file-copy", "file-csv", "file-dispose", "file-doc", "file-excel", "file-export", "file-lock", "file-pdf", "file-powerpoint", "file-search", "file-secured", "file-sheets", "file-slide", "file-verified", "file-word", "file", "filter", "folder-user", "folder", "format-bold", "format-heading1", "format-heading2", "format-italic", "format-list-bulleted", "format-list-numbered", "format-underlined", "funnel-filter", "global-dollar", "global-pound", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "hero-points", "home", "image", "import", "incident-siren", "instapay-daily", "instapay-now", "instapay", "list", "loading-2", "loading", "location-on", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "near-me", "node", "open-folder", "paperclip-vertical", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-arrow", "play-circle", "pound-coin-shine", "pound-sign", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rocket-launch", "rostering", "salary-sacrifice", "save", "schedule-send", "schedule", "search-person", "search", "send", "speaker", "star-award", "star-badge", "star-circle", "star-medal", "star", "steps-circle", "stopwatch", "suitcase", "surfing", "survey", "swag-pillar-benefit", "swag-pillar-career", "swag-pillar-money", "swag-pillar-work", "swag", "swipe-right", "switch", "tag", "target", "teams", "thumb-down", "thumb-up", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "academic-hat-outlined", "accommodation-outlined", "activate-outlined", "add-credit-card-outlined", "add-emoji-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "afternoon-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "application-outlined", "archive-outlined", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "assignment-warning-outlined", "at-sign", "auto-graph-outlined", "automotive-outlined", "bakery-outlined", "bank-outlined", "bar-outlined", "beauty-outlined", "beer-outlined", "bell-outlined", "bell-slash-outlined", "bill-management-outlined", "billing-outlined", "body-outlined", "bold", "bolt-outlined", "book-outlined", "bookmark-added-outlined", "bookmark-checked-outlined", "bookmark-outlined", "box-1-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calculator-outlined", "calendar-clock-outlined", "calendar-dates-outlined", "calendar-edit-outlined", "calendar-outlined", "calendar-star-outlined", "call-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "cashback-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-outlined", "circle-check-outlined", "circle-down-outlined", "circle-info-outlined", "circle-left-outlined", "circle-ok-outlined", "circle-question-outlined", "circle-remove-outlined", "circle-right-outlined", "circle-up-outlined", "circle-warning-outlined", "clock-2-outlined", "clock-3-outlined", "clock-in-outlined", "clock-out-outlined", "clock-outlined", "cloud-download-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cultural-site-outlined", "cup-outlined", "dentistry-outlined", "diamond-outlined", "direction-arrows-outlined", "directory-outlined", "document-outlined", "dollar-box-outlined", "dollar-card-outlined", "dollar-coin-shine-outlined", "dollar-credit-card-outlined", "dollar-sign", "double-buildings-outlined", "double-left-arrows", "double-right-arrows", "download-box-outlined", "download-outlined", "edit-template-outlined", "edit-user-outlined", "electronics-outlined", "email-outlined", "end-break-outlined", "enter-arrow", "entertainment-outlined", "envelope-outlined", "evening-outlined", "expense-approval-outlined", "expense-outlined", "explore-outlined", "extension-outlined", "external-link", "eye-invisible-outlined", "eye-outlined", "face-id", "face-meh-outlined", "face-open-smiley-outlined", "face-sad-outlined", "face-smiley-outlined", "fastfood-outlined", "feed-outlined", "feedbacks-outlined", "file-certified-outlined", "file-clone-outlined", "file-copy-outlined", "file-dispose-outlined", "file-dollar-certified-outlined", "file-dollar-outlined", "file-download-outlined", "file-export-outlined", "file-lock-outlined", "file-outlined", "file-pound-outlined", "file-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "fitness-outlined", "folder-outlined", "folder-upload-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "goal-outlined", "graph-outlined", "grocery-outlined", "hand-holding-user-outlined", "handshake-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "history-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "job-search-outlined", "leave-approval-outlined", "lighting-outlined", "link-1", "link-2", "list-outlined", "live-help-outlined", "local_mall_outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "mail-outlined", "map-outlined", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "mic-outlined", "mic-slash-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "morning-outlined", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "park-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "pound-box-outlined", "pound-card-outlined", "pound-coin-shine-outlined", "pound-credit-card-outlined", "print-outlined", "profile-2user-outlined", "propane-tank-outlined", "qr-code-outlined", "qualification-outlined", "question-mark", "raising-hands-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "restaurant-outlined", "resume-outlined", "return-arrow", "rocket-launch-outlined", "rostering-outlined", "safety-outlined", "save-outlined", "schedule-outlined", "schedule-send-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined-2", "share-outlined", "shield-check-outlined", "shop-outlined", "shopping_basket_outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "smart-match-outlined", "sparkle-2-outlined", "sparkle-outlined", "speaker-outlined", "star-award-outlined", "star-badge-outlined", "star-circle-outlined", "star-medal-outlined", "star-outlined", "start-break-outlined", "stash-outlined", "stop-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tag-outlined", "target-outlined", "teams-outlined", "tennis-outlined", "thumb-down-outlined", "thumb-up-outlined", "ticket-outlined", "timesheet-outlined", "timesheets-outlined", "today-outlined", "transfer", "transportation-outlined", "trash-bin-outlined", "umbrela-outlined", "unavailability-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-add-outlined", "user-circle-outlined", "user-gear-outlined", "user-out-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined", "warning-outlined", "wellness-outlined"];
1
+ declare const IconList: readonly ["activate", "add-emoji", "add-person", "adjustment", "alignment", "antenna", "archive", "assignment-warning", "bank", "bell", "billing", "bolt", "bookmark-added", "bookmark-checked", "bookmark", "box-check", "box", "bpay", "buildings", "cake", "calendar-clock", "calendar", "candy-box-menu", "caret-down-small", "caret-down", "caret-left-small", "caret-left", "caret-right-small", "caret-right", "caret-up-small", "caret-up", "check-radio", "circle-add", "circle-cancel", "circle-check", "circle-down", "circle-info", "circle-left", "circle-ok", "circle-pencil", "circle-question", "circle-remove", "circle-right", "circle-up", "circle-warning", "clock-3", "clock", "cloud-download", "cloud-upload", "cog", "coin", "contacts", "credit-card", "diamond", "direction-arrows", "directory", "document", "dollar-coin-shine", "dot", "double-buildings", "edit-template", "envelope", "exclude", "expand-content", "expense", "explore_nearby", "eye-circle", "eye-invisible", "eye", "face-meh", "face-sad", "face-smiley", "feed", "feedbacks", "file-certified", "file-clone", "file-copy", "file-csv", "file-dispose", "file-doc", "file-excel", "file-export", "file-lock", "file-pdf", "file-powerpoint", "file-search", "file-secured", "file-sheets", "file-slide", "file-verified", "file-word", "file", "filter", "folder-user", "folder", "format-bold", "format-heading1", "format-heading2", "format-italic", "format-list-bulleted", "format-list-numbered", "format-underlined", "funnel-filter", "global-dollar", "global-pound", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "hero-points", "home", "image", "import", "incident-siren", "instapay-daily", "instapay-now", "instapay", "list", "loading-2", "loading", "location-on", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "near-me", "node", "open-folder", "paperclip-vertical", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-arrow", "play-circle", "pound-coin-shine", "pound-sign", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rocket-launch", "rostering", "salary-sacrifice", "save", "schedule-send", "schedule", "search-person", "search", "send", "speaker", "star-award", "star-badge", "star-circle", "star-medal", "star", "steps-circle", "stopwatch", "suitcase", "surfing", "survey", "swag-pillar-benefit", "swag-pillar-career", "swag-pillar-money", "swag-pillar-work", "swag", "swipe-right", "switch", "tag", "target", "teams", "thumb-down", "thumb-up", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "academic-hat-outlined", "accommodation-outlined", "activate-outlined", "add-credit-card-outlined", "add-emoji-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "afternoon-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "application-outlined", "archive-outlined", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "assignment-warning-outlined", "at-sign", "auto-graph-outlined", "automotive-outlined", "bakery-outlined", "bank-outlined", "bar-outlined", "beauty-outlined", "beer-outlined", "bell-outlined", "bell-slash-outlined", "bill-management-outlined", "billing-outlined", "body-outlined", "bold", "bolt-outlined", "book-outlined", "bookmark-added-outlined", "bookmark-checked-outlined", "bookmark-outlined", "box-1-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calculator-outlined", "calendar-clock-outlined", "calendar-dates-outlined", "calendar-edit-outlined", "calendar-outlined", "calendar-star-outlined", "call-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "cashback-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-outlined", "circle-check-outlined", "circle-down-outlined", "circle-info-outlined", "circle-left-outlined", "circle-ok-outlined", "circle-question-outlined", "circle-remove-outlined", "circle-right-outlined", "circle-up-outlined", "circle-warning-outlined", "clock-2-outlined", "clock-3-outlined", "clock-in-outlined", "clock-out-outlined", "clock-outlined", "cloud-download-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cultural-site-outlined", "cup-outlined", "dentistry-outlined", "diamond-outlined", "direction-arrows-outlined", "directory-outlined", "document-outlined", "dollar-box-outlined", "dollar-card-outlined", "dollar-coin-shine-outlined", "dollar-credit-card-outlined", "dollar-sign", "double-buildings-outlined", "double-left-arrows", "double-right-arrows", "download-box-outlined", "download-outlined", "edit-template-outlined", "edit-user-outlined", "electronics-outlined", "email-outlined", "end-break-outlined", "enter-arrow", "entertainment-outlined", "envelope-outlined", "evening-outlined", "expense-approval-outlined", "expense-outlined", "explore-outlined", "extension-outlined", "external-link", "eye-invisible-outlined", "eye-outlined", "face-id", "face-meh-outlined", "face-open-smiley-outlined", "face-sad-outlined", "face-smiley-outlined", "fastfood-outlined", "feed-outlined", "feedbacks-outlined", "file-certified-outlined", "file-clone-outlined", "file-copy-outlined", "file-dispose-outlined", "file-dollar-certified-outlined", "file-dollar-outlined", "file-download-outlined", "file-export-outlined", "file-lock-outlined", "file-outlined", "file-pound-outlined", "file-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "fitness-outlined", "folder-outlined", "folder-upload-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "goal-outlined", "graph-outlined", "grocery-outlined", "hand-holding-user-outlined", "handshake-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "history-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "job-search-outlined", "leave-approval-outlined", "lighting-outlined", "link-1", "link-2", "list-outlined", "live-help-outlined", "local_mall_outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "mail-outlined", "map-outlined", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "mic-outlined", "mic-slash-outlined", "mobile-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "morning-outlined", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "park-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "pound-box-outlined", "pound-card-outlined", "pound-coin-shine-outlined", "pound-credit-card-outlined", "print-outlined", "profile-2user-outlined", "propane-tank-outlined", "qr-code-outlined", "qualification-outlined", "question-mark", "raising-hands-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "restaurant-outlined", "resume-outlined", "return-arrow", "rocket-launch-outlined", "rostering-outlined", "safety-outlined", "save-outlined", "schedule-outlined", "schedule-send-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined-2", "share-outlined", "shield-check-outlined", "shop-outlined", "shopping_basket_outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "smart-match-outlined", "sparkle-2-outlined", "sparkle-outlined", "speaker-outlined", "star-award-outlined", "star-badge-outlined", "star-circle-outlined", "star-medal-outlined", "star-outlined", "start-break-outlined", "stash-outlined", "stop-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tablet-outlined", "tag-outlined", "target-outlined", "teams-outlined", "tennis-outlined", "thumb-down-outlined", "thumb-up-outlined", "ticket-outlined", "timesheet-outlined", "timesheets-outlined", "today-outlined", "transfer", "transportation-outlined", "trash-bin-outlined", "umbrela-outlined", "unavailability-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-add-outlined", "user-circle-outlined", "user-gear-outlined", "user-out-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined", "warning-outlined", "wellness-outlined"];
2
2
  export default IconList;