@hero-design/rn 8.33.2 → 8.34.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.
Files changed (35) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/assets/fonts/hero-icons-mobile.ttf +0 -0
  3. package/es/index.js +713 -479
  4. package/lib/assets/fonts/hero-icons-mobile.ttf +0 -0
  5. package/lib/index.js +716 -480
  6. package/package.json +6 -5
  7. package/rollup.config.js +1 -0
  8. package/src/components/Carousel/CardCarousel.tsx +2 -0
  9. package/src/components/Icon/HeroIcon/glyphMap.json +1 -1
  10. package/src/components/Icon/IconList.ts +2 -0
  11. package/src/components/Modal/ModalContentWrapper.tsx +112 -0
  12. package/src/components/Modal/ModalPresenter/ModalPresenter.tsx +135 -0
  13. package/src/components/Modal/ModalPresenter/index.tsx +9 -0
  14. package/src/components/Modal/ModalProvider.tsx +8 -0
  15. package/src/components/Modal/__tests__/ModalContentWrapper.spec.tsx +25 -0
  16. package/src/components/Modal/__tests__/ModalPresenter.spec.tsx +57 -0
  17. package/src/components/Modal/__tests__/__snapshots__/ModalContentWrapper.spec.tsx.snap +35 -0
  18. package/src/components/Modal/__tests__/__snapshots__/ModalPresenter.spec.tsx.snap +55 -0
  19. package/src/components/Modal/__tests__/index.spec.tsx +50 -0
  20. package/src/components/Modal/index.tsx +121 -0
  21. package/src/components/PinInput/index.tsx +2 -0
  22. package/src/components/RichTextEditor/RichTextEditor.tsx +5 -2
  23. package/src/components/Toast/ToastContainer.tsx +2 -0
  24. package/src/index.ts +2 -0
  25. package/testUtils/setup.tsx +24 -0
  26. package/types/components/Icon/IconList.d.ts +1 -1
  27. package/types/components/Icon/index.d.ts +1 -1
  28. package/types/components/Icon/utils.d.ts +1 -1
  29. package/types/components/Modal/ModalContentWrapper.d.ts +16 -0
  30. package/types/components/Modal/ModalPresenter/ModalPresenter.d.ts +34 -0
  31. package/types/components/Modal/ModalPresenter/index.d.ts +3 -0
  32. package/types/components/Modal/ModalProvider.d.ts +5 -0
  33. package/types/components/Modal/index.d.ts +33 -0
  34. package/types/components/RichTextEditor/RichTextEditor.d.ts +2 -2
  35. package/types/index.d.ts +2 -1
@@ -0,0 +1,121 @@
1
+ import React from 'react';
2
+ import { BackHandler, Dimensions, View, ViewStyle } from 'react-native';
3
+ import ModalContentWrapper, {
4
+ ModalContentWrapperHandler,
5
+ } from './ModalContentWrapper';
6
+ import ModalProvider from './ModalProvider';
7
+ import { ModalHandler, showModal } from './ModalPresenter';
8
+
9
+ const wrapperStyle: ViewStyle = {
10
+ width: Dimensions.get('window').width,
11
+ height: Dimensions.get('window').height,
12
+ };
13
+
14
+ export interface ModalProps {
15
+ /**
16
+ * Content of the modal.
17
+ */
18
+ children: React.ReactElement;
19
+ /**
20
+ * Visibility of the modal
21
+ */
22
+ visible?: boolean;
23
+ /**
24
+ * Callback when the modal is shown.
25
+ */
26
+ onShow?: () => void;
27
+ /**
28
+ * Callback when the user taps the hardware back button.
29
+ */
30
+ onRequestClose?: () => void;
31
+ /**
32
+ * TestID of the modal.
33
+ */
34
+ testID?: string;
35
+ /**
36
+ * Animation type of the modal content.
37
+ */
38
+ animationType?: 'none' | 'slide' | 'fade';
39
+ }
40
+
41
+ const Modal = ({
42
+ children,
43
+ onShow,
44
+ onRequestClose,
45
+ testID,
46
+ visible = true,
47
+ animationType = 'none',
48
+ }: ModalProps) => {
49
+ const [modalHandler, setModalHandler] = React.useState<ModalHandler>();
50
+ const modalContentWrapperRef = React.useRef<ModalContentWrapperHandler>(null);
51
+
52
+ const getModalContent = React.useCallback(
53
+ (isUpdate = false) => {
54
+ return animationType === 'none' ? (
55
+ <View style={wrapperStyle} testID={testID}>
56
+ {children}
57
+ </View>
58
+ ) : (
59
+ <ModalContentWrapper
60
+ visible={visible}
61
+ style={wrapperStyle}
62
+ animationType={animationType}
63
+ testID={testID}
64
+ onShow={onShow}
65
+ ref={modalContentWrapperRef}
66
+ animated={!isUpdate}
67
+ >
68
+ {children}
69
+ </ModalContentWrapper>
70
+ );
71
+ },
72
+ [visible, children, onShow, testID, animationType]
73
+ );
74
+
75
+ React.useEffect(() => {
76
+ if (visible) {
77
+ // Modal does not exist, create a new one
78
+ if (!modalHandler) {
79
+ const newModalHandler = showModal(getModalContent(false));
80
+ setModalHandler(newModalHandler);
81
+
82
+ // If animationType is slide for fade, onShow would be run after animation on ModalContentWrapper,
83
+ // else run on this component.
84
+ if (animationType === 'none') {
85
+ onShow?.();
86
+ }
87
+ }
88
+ // Modal already exists, update it
89
+ else {
90
+ modalHandler.update(getModalContent(true));
91
+ }
92
+ } else if (animationType === 'none') {
93
+ modalHandler?.dismiss();
94
+ setModalHandler(undefined);
95
+ } else {
96
+ // Wait to finish animation before dismissing
97
+ modalContentWrapperRef.current?.hide(() => {
98
+ modalHandler?.dismiss();
99
+ setModalHandler(undefined);
100
+ });
101
+ }
102
+ }, [getModalContent]);
103
+
104
+ React.useEffect(() => {
105
+ const backHandler = BackHandler.addEventListener(
106
+ 'hardwareBackPress',
107
+ () => {
108
+ onRequestClose?.();
109
+ return true;
110
+ }
111
+ );
112
+
113
+ return () => backHandler.remove();
114
+ }, [onRequestClose]);
115
+
116
+ return null;
117
+ };
118
+
119
+ export default Object.assign(Modal, {
120
+ Provider: ModalProvider,
121
+ });
@@ -198,4 +198,6 @@ const PinInput = forwardRef<PinInputHandler, PinInputProps>(
198
198
  }
199
199
  );
200
200
 
201
+ PinInput.displayName = 'PinInput';
202
+
201
203
  export default PinInput;
@@ -378,8 +378,11 @@ const RichTextEditor: ComponentType<RichTextEditorProps> = ({
378
378
  </StyledContainer>
379
379
  );
380
380
  };
381
-
382
- export default forwardRef<
381
+ const RichTextEditorWithRef = forwardRef<
383
382
  RichTextEditorRef,
384
383
  Omit<RichTextEditorProps, 'forwardedRef'>
385
384
  >((props, ref) => <RichTextEditor {...props} forwardedRef={ref} />);
385
+
386
+ RichTextEditorWithRef.displayName = 'RichTextEditor';
387
+
388
+ export default RichTextEditorWithRef;
@@ -85,4 +85,6 @@ const ToastContainer = React.forwardRef<
85
85
  );
86
86
  });
87
87
 
88
+ ToastContainer.displayName = 'ToastContainer';
89
+
88
90
  export default ToastContainer;
package/src/index.ts CHANGED
@@ -37,6 +37,7 @@ import FAB from './components/FAB';
37
37
  import Icon from './components/Icon';
38
38
  import Image from './components/Image';
39
39
  import List from './components/List';
40
+ import Modal from './components/Modal';
40
41
  import PinInput from './components/PinInput';
41
42
  import Progress from './components/Progress';
42
43
  import Slider from './components/Slider';
@@ -99,6 +100,7 @@ export {
99
100
  Icon,
100
101
  Image,
101
102
  List,
103
+ Modal,
102
104
  PinInput,
103
105
  Progress,
104
106
  PageControl,
@@ -107,4 +107,28 @@ jest.mock('react-native-gesture-handler', () => {
107
107
  };
108
108
  });
109
109
 
110
+ jest.mock('react-native/Libraries/Utilities/BackHandler', () => {
111
+ return jest.requireActual(
112
+ 'react-native/Libraries/Utilities/__mocks__/BackHandler.js',
113
+ );
114
+ });
115
+
116
+ jest.mock('react-native-root-siblings', () => {
117
+ const React = jest.requireActual('react');
118
+
119
+ class RootSiblingsManager extends React.Component {
120
+ constructor(props) {
121
+ super(props);
122
+ }
123
+ render() {
124
+ return React.createElement('RootSiblingsManager', this.props, this.props.children);
125
+ }
126
+ }
127
+
128
+ return {
129
+ __esModule: true,
130
+ default: RootSiblingsManager,
131
+ };
132
+ });
133
+
110
134
  export {};
@@ -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", "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", "double-buildings", "edit-template", "envelope", "exclude", "expense", "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", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "home", "image", "import", "incident-siren", "instapay", "list", "loading-2", "loading", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "node", "open-folder", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-circle", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rostering", "save", "schedule-send", "schedule", "search-person", "send", "speaker-active", "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", "switch", "tag", "target", "teams", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "activate-outlined", "add-credit-card-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "at-sign", "auto-graph-outlined", "beer-outlined", "bell-active-outlined", "bell-outlined", "bell-slash-outlined", "billing-outlined", "body-outlined", "bold", "book-outlined", "bookmark-added-outlined", "bookmark-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calendar-dates-outlined", "calendar-star-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-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-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cup-outlined", "dentistry-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", "email-outlined", "enter-arrow", "envelope-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", "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-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "folder-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "graph-outlined", "hand-holding-user-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "home-active-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "link-1", "link-2", "list-outlined", "live-help-outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "print-outlined", "qr-code-outlined", "qualification-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "return-arrow", "rostering-outlined", "save-outlined", "schedule-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "speaker-active-outlined", "speaker-outlined", "star-circle-outlined", "star-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tag-outlined", "target-outlined", "tennis-outlined", "ticket-outlined", "timesheet-outlined", "today-outlined", "transfer", "trash-bin-outlined", "umbrela-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-circle-outlined", "user-gear-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined"];
1
+ declare const IconList: readonly ["activate", "add-emoji", "add-person", "adjustment", "alignment", "antenna", "archive", "assignment-warning", "bank", "bell", "billing", "bolt", "bookmark-added", "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", "double-buildings", "edit-template", "envelope", "exclude", "expense", "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", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "home", "image", "import", "incident-siren", "instapay", "list", "loading-2", "loading", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "node", "open-folder", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-circle", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rostering", "save", "schedule-send", "schedule", "search-person", "send", "speaker-active", "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", "switch", "tag", "target", "teams", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "activate-outlined", "add-credit-card-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "at-sign", "auto-graph-outlined", "beer-outlined", "bell-active-outlined", "bell-outlined", "bell-slash-outlined", "billing-outlined", "body-outlined", "bold", "book-outlined", "bookmark-added-outlined", "bookmark-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calendar-dates-outlined", "calendar-star-outlined", "call-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-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-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cup-outlined", "dentistry-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", "email-outlined", "enter-arrow", "envelope-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", "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-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "folder-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "graph-outlined", "hand-holding-user-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "home-active-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "link-1", "link-2", "list-outlined", "live-help-outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "mail-outlined", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "print-outlined", "qr-code-outlined", "qualification-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "return-arrow", "rostering-outlined", "save-outlined", "schedule-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "speaker-active-outlined", "speaker-outlined", "star-circle-outlined", "star-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tag-outlined", "target-outlined", "tennis-outlined", "ticket-outlined", "timesheet-outlined", "today-outlined", "transfer", "trash-bin-outlined", "umbrela-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-circle-outlined", "user-gear-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined"];
2
2
  export default IconList;
@@ -29,6 +29,6 @@ export interface IconProps extends AccessibilityProps {
29
29
  }
30
30
  declare const Icon: {
31
31
  ({ icon, style, size, intent, testID, spin, accessibilityLabel, accessibilityHint, accessibilityRole, accessibilityState, accessibilityValue, accessibilityLiveRegion, accessibilityElementsHidden, accessible, accessibilityIgnoresInvertColors, accessibilityViewIsModal, accessibilityActions, }: IconProps): JSX.Element;
32
- List: readonly ["activate", "add-emoji", "add-person", "adjustment", "alignment", "antenna", "archive", "assignment-warning", "bank", "bell", "billing", "bolt", "bookmark-added", "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", "double-buildings", "edit-template", "envelope", "exclude", "expense", "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", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "home", "image", "import", "incident-siren", "instapay", "list", "loading-2", "loading", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "node", "open-folder", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-circle", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rostering", "save", "schedule-send", "schedule", "search-person", "send", "speaker-active", "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", "switch", "tag", "target", "teams", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "activate-outlined", "add-credit-card-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "at-sign", "auto-graph-outlined", "beer-outlined", "bell-active-outlined", "bell-outlined", "bell-slash-outlined", "billing-outlined", "body-outlined", "bold", "book-outlined", "bookmark-added-outlined", "bookmark-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calendar-dates-outlined", "calendar-star-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-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-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cup-outlined", "dentistry-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", "email-outlined", "enter-arrow", "envelope-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", "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-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "folder-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "graph-outlined", "hand-holding-user-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "home-active-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "link-1", "link-2", "list-outlined", "live-help-outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "print-outlined", "qr-code-outlined", "qualification-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "return-arrow", "rostering-outlined", "save-outlined", "schedule-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "speaker-active-outlined", "speaker-outlined", "star-circle-outlined", "star-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tag-outlined", "target-outlined", "tennis-outlined", "ticket-outlined", "timesheet-outlined", "today-outlined", "transfer", "trash-bin-outlined", "umbrela-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-circle-outlined", "user-gear-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined"];
32
+ List: readonly ["activate", "add-emoji", "add-person", "adjustment", "alignment", "antenna", "archive", "assignment-warning", "bank", "bell", "billing", "bolt", "bookmark-added", "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", "double-buildings", "edit-template", "envelope", "exclude", "expense", "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", "globe", "graduation-cap", "graph", "happy-sun", "health-bag", "heart", "home", "image", "import", "incident-siren", "instapay", "list", "loading-2", "loading", "location", "lock", "looks-one", "looks-two", "media-content", "menu", "money-notes", "moneybag", "moon", "multiple-stars", "multiple-users", "node", "open-folder", "paperclip", "payment-summary", "pencil", "phone", "piggy-bank", "plane-up", "plane", "play-circle", "print", "raising-hands", "reply-arrow", "reply", "reschedule", "rostering", "save", "schedule-send", "schedule", "search-person", "send", "speaker-active", "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", "switch", "tag", "target", "teams", "timesheet", "touch-id", "trash-bin", "unlock", "user", "video-1", "video-2", "wallet", "warning", "activate-outlined", "add-credit-card-outlined", "add-person-outlined", "add-section-outlined", "add-time-outlined", "add", "adjustment-outlined", "ai-outlined", "alignment-2-outlined", "alignment-outlined", "all-caps", "arrow-down", "arrow-downwards", "arrow-left", "arrow-leftwards", "arrow-right", "arrow-rightwards", "arrow-up", "arrow-upwards", "article-outlined", "at-sign", "auto-graph-outlined", "beer-outlined", "bell-active-outlined", "bell-outlined", "bell-slash-outlined", "billing-outlined", "body-outlined", "bold", "book-outlined", "bookmark-added-outlined", "bookmark-outlined", "box-check-outlined", "box-outlined", "bullet-points", "cake-outlined", "calendar-dates-outlined", "calendar-star-outlined", "call-outlined", "call-split-outlined", "camera-outlined", "cancel", "car-forward-outlined", "charging-station-outlined", "chat-bubble-outlined", "chat-unread-outlined", "checkmark", "circle-add-outlined", "circle-cancel-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-outlined", "cog-outlined", "coin-outlined", "coin-super-outlined", "comment-outlined", "contacts-outlined", "contacts-user-outlined", "credit-card-outlined", "cup-outlined", "dentistry-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", "email-outlined", "enter-arrow", "envelope-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", "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-search-outlined", "file-secured-outlined", "file-statutory-outlined", "file-verified-outlined", "filter-outlined", "folder-outlined", "folder-user-outlined", "form-outlined", "funnel-filter-outline", "graph-outlined", "hand-holding-user-outlined", "happy-sun-outlined", "health-bag-outlined", "heart-outlined", "home-active-outlined", "home-outlined", "id-card-outlined", "image-outlined", "import-outlined", "instapay-outlined", "italic", "link-1", "link-2", "list-outlined", "live-help-outlined", "location-on-outlined", "location-outlined", "lock-outlined", "locked-file-outlined", "log-out", "mail-outlined", "media-content-outlined", "menu-close", "menu-expand", "menu-fold-outlined", "menu-unfold-outlined", "moneybag-outlined", "moon-outlined", "more-horizontal", "more-vertical", "multiple-folders-outlined", "multiple-users-outlined", "near-me-outlined", "node-outlined", "number-points", "number", "overview-outlined", "payment-summary-outlined", "payslip-outlined", "pencil-outlined", "percentage", "phone-outlined", "piggy-bank-outlined", "plane-outlined", "play-circle-outlined", "print-outlined", "qr-code-outlined", "qualification-outlined", "re-assign", "redeem", "refresh", "remove", "reply-outlined", "restart", "return-arrow", "rostering-outlined", "save-outlined", "schedule-outlined", "search-outlined", "search-secured-outlined", "send-outlined", "share-1", "share-2", "share-outlined", "show-chart-outlined", "single-down-arrow", "single-left-arrow", "single-right-arrow", "single-up-arrow", "speaker-active-outlined", "speaker-outlined", "star-circle-outlined", "star-outlined", "stopwatch-outlined", "strikethrough", "styler-outlined", "suitcase-clock-outlined", "suitcase-outlined", "survey-outlined", "switch-outlined", "sync", "tag-outlined", "target-outlined", "tennis-outlined", "ticket-outlined", "timesheet-outlined", "today-outlined", "transfer", "trash-bin-outlined", "umbrela-outlined", "unavailable", "underline", "union-outlined", "unlock-outlined", "upload-outlined", "user-circle-outlined", "user-gear-outlined", "user-outlined", "user-rectangle-outlined", "video-1-outlined", "video-2-outlined", "volunteer-outlined", "wallet-outlined"];
33
33
  };
34
34
  export default Icon;
@@ -1,2 +1,2 @@
1
- declare const isHeroIcon: (x: any) => x is "number" | "swag" | "wallet" | "bold" | "menu" | "filter" | "image" | "switch" | "list" | "warning" | "activate" | "add-emoji" | "add-person" | "adjustment" | "alignment" | "antenna" | "archive" | "assignment-warning" | "bank" | "bell" | "billing" | "bolt" | "bookmark-added" | "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" | "double-buildings" | "edit-template" | "envelope" | "exclude" | "expense" | "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" | "folder-user" | "folder" | "format-bold" | "format-heading1" | "format-heading2" | "format-italic" | "format-list-bulleted" | "format-list-numbered" | "format-underlined" | "funnel-filter" | "global-dollar" | "globe" | "graduation-cap" | "graph" | "happy-sun" | "health-bag" | "heart" | "home" | "import" | "incident-siren" | "instapay" | "loading-2" | "loading" | "location" | "lock" | "looks-one" | "looks-two" | "media-content" | "money-notes" | "moneybag" | "moon" | "multiple-stars" | "multiple-users" | "node" | "open-folder" | "paperclip" | "payment-summary" | "pencil" | "phone" | "piggy-bank" | "plane-up" | "plane" | "play-circle" | "print" | "raising-hands" | "reply-arrow" | "reply" | "reschedule" | "rostering" | "save" | "schedule-send" | "schedule" | "search-person" | "send" | "speaker-active" | "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" | "tag" | "target" | "teams" | "timesheet" | "touch-id" | "trash-bin" | "unlock" | "user" | "video-1" | "video-2" | "activate-outlined" | "add-credit-card-outlined" | "add-person-outlined" | "add-section-outlined" | "add-time-outlined" | "add" | "adjustment-outlined" | "ai-outlined" | "alignment-2-outlined" | "alignment-outlined" | "all-caps" | "arrow-down" | "arrow-downwards" | "arrow-left" | "arrow-leftwards" | "arrow-right" | "arrow-rightwards" | "arrow-up" | "arrow-upwards" | "article-outlined" | "at-sign" | "auto-graph-outlined" | "beer-outlined" | "bell-active-outlined" | "bell-outlined" | "bell-slash-outlined" | "billing-outlined" | "body-outlined" | "book-outlined" | "bookmark-added-outlined" | "bookmark-outlined" | "box-check-outlined" | "box-outlined" | "bullet-points" | "cake-outlined" | "calendar-dates-outlined" | "calendar-star-outlined" | "call-split-outlined" | "camera-outlined" | "cancel" | "car-forward-outlined" | "charging-station-outlined" | "chat-bubble-outlined" | "chat-unread-outlined" | "checkmark" | "circle-add-outlined" | "circle-cancel-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-outlined" | "cog-outlined" | "coin-outlined" | "coin-super-outlined" | "comment-outlined" | "contacts-outlined" | "contacts-user-outlined" | "credit-card-outlined" | "cup-outlined" | "dentistry-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" | "email-outlined" | "enter-arrow" | "envelope-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" | "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-search-outlined" | "file-secured-outlined" | "file-statutory-outlined" | "file-verified-outlined" | "filter-outlined" | "folder-outlined" | "folder-user-outlined" | "form-outlined" | "funnel-filter-outline" | "graph-outlined" | "hand-holding-user-outlined" | "happy-sun-outlined" | "health-bag-outlined" | "heart-outlined" | "home-active-outlined" | "home-outlined" | "id-card-outlined" | "image-outlined" | "import-outlined" | "instapay-outlined" | "italic" | "link-1" | "link-2" | "list-outlined" | "live-help-outlined" | "location-on-outlined" | "location-outlined" | "lock-outlined" | "locked-file-outlined" | "log-out" | "media-content-outlined" | "menu-close" | "menu-expand" | "menu-fold-outlined" | "menu-unfold-outlined" | "moneybag-outlined" | "moon-outlined" | "more-horizontal" | "more-vertical" | "multiple-folders-outlined" | "multiple-users-outlined" | "near-me-outlined" | "node-outlined" | "number-points" | "overview-outlined" | "payment-summary-outlined" | "payslip-outlined" | "pencil-outlined" | "percentage" | "phone-outlined" | "piggy-bank-outlined" | "plane-outlined" | "play-circle-outlined" | "print-outlined" | "qr-code-outlined" | "qualification-outlined" | "re-assign" | "redeem" | "refresh" | "remove" | "reply-outlined" | "restart" | "return-arrow" | "rostering-outlined" | "save-outlined" | "schedule-outlined" | "search-outlined" | "search-secured-outlined" | "send-outlined" | "share-1" | "share-2" | "share-outlined" | "show-chart-outlined" | "single-down-arrow" | "single-left-arrow" | "single-right-arrow" | "single-up-arrow" | "speaker-active-outlined" | "speaker-outlined" | "star-circle-outlined" | "star-outlined" | "stopwatch-outlined" | "strikethrough" | "styler-outlined" | "suitcase-clock-outlined" | "suitcase-outlined" | "survey-outlined" | "switch-outlined" | "sync" | "tag-outlined" | "target-outlined" | "tennis-outlined" | "ticket-outlined" | "timesheet-outlined" | "today-outlined" | "transfer" | "trash-bin-outlined" | "umbrela-outlined" | "unavailable" | "underline" | "union-outlined" | "unlock-outlined" | "upload-outlined" | "user-circle-outlined" | "user-gear-outlined" | "user-outlined" | "user-rectangle-outlined" | "video-1-outlined" | "video-2-outlined" | "volunteer-outlined" | "wallet-outlined";
1
+ declare const isHeroIcon: (x: any) => x is "number" | "swag" | "wallet" | "bold" | "menu" | "filter" | "image" | "switch" | "list" | "warning" | "activate" | "add-emoji" | "add-person" | "adjustment" | "alignment" | "antenna" | "archive" | "assignment-warning" | "bank" | "bell" | "billing" | "bolt" | "bookmark-added" | "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" | "double-buildings" | "edit-template" | "envelope" | "exclude" | "expense" | "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" | "folder-user" | "folder" | "format-bold" | "format-heading1" | "format-heading2" | "format-italic" | "format-list-bulleted" | "format-list-numbered" | "format-underlined" | "funnel-filter" | "global-dollar" | "globe" | "graduation-cap" | "graph" | "happy-sun" | "health-bag" | "heart" | "home" | "import" | "incident-siren" | "instapay" | "loading-2" | "loading" | "location" | "lock" | "looks-one" | "looks-two" | "media-content" | "money-notes" | "moneybag" | "moon" | "multiple-stars" | "multiple-users" | "node" | "open-folder" | "paperclip" | "payment-summary" | "pencil" | "phone" | "piggy-bank" | "plane-up" | "plane" | "play-circle" | "print" | "raising-hands" | "reply-arrow" | "reply" | "reschedule" | "rostering" | "save" | "schedule-send" | "schedule" | "search-person" | "send" | "speaker-active" | "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" | "tag" | "target" | "teams" | "timesheet" | "touch-id" | "trash-bin" | "unlock" | "user" | "video-1" | "video-2" | "activate-outlined" | "add-credit-card-outlined" | "add-person-outlined" | "add-section-outlined" | "add-time-outlined" | "add" | "adjustment-outlined" | "ai-outlined" | "alignment-2-outlined" | "alignment-outlined" | "all-caps" | "arrow-down" | "arrow-downwards" | "arrow-left" | "arrow-leftwards" | "arrow-right" | "arrow-rightwards" | "arrow-up" | "arrow-upwards" | "article-outlined" | "at-sign" | "auto-graph-outlined" | "beer-outlined" | "bell-active-outlined" | "bell-outlined" | "bell-slash-outlined" | "billing-outlined" | "body-outlined" | "book-outlined" | "bookmark-added-outlined" | "bookmark-outlined" | "box-check-outlined" | "box-outlined" | "bullet-points" | "cake-outlined" | "calendar-dates-outlined" | "calendar-star-outlined" | "call-outlined" | "call-split-outlined" | "camera-outlined" | "cancel" | "car-forward-outlined" | "charging-station-outlined" | "chat-bubble-outlined" | "chat-unread-outlined" | "checkmark" | "circle-add-outlined" | "circle-cancel-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-outlined" | "cog-outlined" | "coin-outlined" | "coin-super-outlined" | "comment-outlined" | "contacts-outlined" | "contacts-user-outlined" | "credit-card-outlined" | "cup-outlined" | "dentistry-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" | "email-outlined" | "enter-arrow" | "envelope-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" | "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-search-outlined" | "file-secured-outlined" | "file-statutory-outlined" | "file-verified-outlined" | "filter-outlined" | "folder-outlined" | "folder-user-outlined" | "form-outlined" | "funnel-filter-outline" | "graph-outlined" | "hand-holding-user-outlined" | "happy-sun-outlined" | "health-bag-outlined" | "heart-outlined" | "home-active-outlined" | "home-outlined" | "id-card-outlined" | "image-outlined" | "import-outlined" | "instapay-outlined" | "italic" | "link-1" | "link-2" | "list-outlined" | "live-help-outlined" | "location-on-outlined" | "location-outlined" | "lock-outlined" | "locked-file-outlined" | "log-out" | "mail-outlined" | "media-content-outlined" | "menu-close" | "menu-expand" | "menu-fold-outlined" | "menu-unfold-outlined" | "moneybag-outlined" | "moon-outlined" | "more-horizontal" | "more-vertical" | "multiple-folders-outlined" | "multiple-users-outlined" | "near-me-outlined" | "node-outlined" | "number-points" | "overview-outlined" | "payment-summary-outlined" | "payslip-outlined" | "pencil-outlined" | "percentage" | "phone-outlined" | "piggy-bank-outlined" | "plane-outlined" | "play-circle-outlined" | "print-outlined" | "qr-code-outlined" | "qualification-outlined" | "re-assign" | "redeem" | "refresh" | "remove" | "reply-outlined" | "restart" | "return-arrow" | "rostering-outlined" | "save-outlined" | "schedule-outlined" | "search-outlined" | "search-secured-outlined" | "send-outlined" | "share-1" | "share-2" | "share-outlined" | "show-chart-outlined" | "single-down-arrow" | "single-left-arrow" | "single-right-arrow" | "single-up-arrow" | "speaker-active-outlined" | "speaker-outlined" | "star-circle-outlined" | "star-outlined" | "stopwatch-outlined" | "strikethrough" | "styler-outlined" | "suitcase-clock-outlined" | "suitcase-outlined" | "survey-outlined" | "switch-outlined" | "sync" | "tag-outlined" | "target-outlined" | "tennis-outlined" | "ticket-outlined" | "timesheet-outlined" | "today-outlined" | "transfer" | "trash-bin-outlined" | "umbrela-outlined" | "unavailable" | "underline" | "union-outlined" | "unlock-outlined" | "upload-outlined" | "user-circle-outlined" | "user-gear-outlined" | "user-outlined" | "user-rectangle-outlined" | "video-1-outlined" | "video-2-outlined" | "volunteer-outlined" | "wallet-outlined";
2
2
  export { isHeroIcon };
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ import { StyleProp, ViewStyle } from 'react-native';
3
+ type ModalContentWrapperProps = {
4
+ children: React.ReactElement;
5
+ visible?: boolean;
6
+ onShow?: () => void;
7
+ testID?: string;
8
+ animationType?: 'none' | 'slide' | 'fade';
9
+ style?: StyleProp<ViewStyle>;
10
+ animated?: boolean;
11
+ };
12
+ export type ModalContentWrapperHandler = {
13
+ hide: (callback?: () => void) => void;
14
+ };
15
+ declare const ModalContentWrapper: React.ForwardRefExoticComponent<ModalContentWrapperProps & React.RefAttributes<ModalContentWrapperHandler>>;
16
+ export default ModalContentWrapper;
@@ -0,0 +1,34 @@
1
+ import React from 'react';
2
+ import { ViewProps } from 'react-native';
3
+ export type ModalPresenterHandles = {
4
+ animatedOut: (completion?: () => void) => void;
5
+ };
6
+ export type ModalDismissFunc = (onDismiss?: () => void) => void;
7
+ export type ModalUpdateFunc = (content: React.ReactNode) => void;
8
+ /**
9
+ * Modal handler is returned by `showModal` function.
10
+ */
11
+ export type ModalHandler = {
12
+ /**
13
+ * Same `dismiss` function as in `ModalContentProps`.
14
+ */
15
+ dismiss: ModalDismissFunc;
16
+ /**
17
+ * Same `update` function as in `ModalContentProps`.
18
+ */
19
+ update: ModalUpdateFunc;
20
+ };
21
+ declare const ModalPresenter: React.ForwardRefExoticComponent<ViewProps & React.RefAttributes<ModalPresenterHandles>>;
22
+ /**
23
+ * Present a modal on screen immediately.
24
+ *
25
+ * The new presented modal will be on top of existing modals if there are any.
26
+ *
27
+ * @param Content A component to be presented as a modal on screen.
28
+ * This component will be centered horizontally and vertically on screen with
29
+ * a semitransparent black overlay underneath.
30
+ * @param contentProps Props for this modal component.
31
+ * @returns A `ModalHandler` you can use to dismiss the modal.
32
+ */
33
+ export declare const showModal: (content: React.ReactNode) => ModalHandler;
34
+ export default ModalPresenter;
@@ -0,0 +1,3 @@
1
+ import { ModalDismissFunc, ModalHandler, showModal, ModalPresenterHandles } from './ModalPresenter';
2
+ export type { ModalDismissFunc, ModalHandler, ModalPresenterHandles };
3
+ export { showModal };
@@ -0,0 +1,5 @@
1
+ import { ReactNode } from 'react';
2
+ declare const ModalProvider: ({ children }: {
3
+ children: ReactNode;
4
+ }) => JSX.Element;
5
+ export default ModalProvider;
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ export interface ModalProps {
3
+ /**
4
+ * Content of the modal.
5
+ */
6
+ children: React.ReactElement;
7
+ /**
8
+ * Visibility of the modal
9
+ */
10
+ visible?: boolean;
11
+ /**
12
+ * Callback when the modal is shown.
13
+ */
14
+ onShow?: () => void;
15
+ /**
16
+ * Callback when the user taps the hardware back button.
17
+ */
18
+ onRequestClose?: () => void;
19
+ /**
20
+ * TestID of the modal.
21
+ */
22
+ testID?: string;
23
+ /**
24
+ * Animation type of the modal content.
25
+ */
26
+ animationType?: 'none' | 'slide' | 'fade';
27
+ }
28
+ declare const _default: (({ children, onShow, onRequestClose, testID, visible, animationType, }: ModalProps) => null) & {
29
+ Provider: ({ children }: {
30
+ children: React.ReactNode;
31
+ }) => JSX.Element;
32
+ };
33
+ export default _default;
@@ -66,5 +66,5 @@ export interface RichTextEditorProps {
66
66
  */
67
67
  forwardedRef?: Ref<RichTextEditorRef>;
68
68
  }
69
- declare const _default: React.ForwardRefExoticComponent<Omit<RichTextEditorProps, "forwardedRef"> & React.RefAttributes<RichTextEditorRef>>;
70
- export default _default;
69
+ declare const RichTextEditorWithRef: React.ForwardRefExoticComponent<Omit<RichTextEditorProps, "forwardedRef"> & React.RefAttributes<RichTextEditorRef>>;
70
+ export default RichTextEditorWithRef;
package/types/index.d.ts CHANGED
@@ -24,6 +24,7 @@ import FAB from './components/FAB';
24
24
  import Icon from './components/Icon';
25
25
  import Image from './components/Image';
26
26
  import List from './components/List';
27
+ import Modal from './components/Modal';
27
28
  import PinInput from './components/PinInput';
28
29
  import Progress from './components/Progress';
29
30
  import Slider from './components/Slider';
@@ -46,5 +47,5 @@ import Rate from './components/Rate';
46
47
  import RefreshControl from './components/RefreshControl';
47
48
  import RichTextEditor from './components/RichTextEditor';
48
49
  import PageControl from './components/PageControl';
49
- export { theme, getTheme, useTheme, scale, ThemeProvider, ThemeSwitcher, withTheme, swagSystemPalette, swagDarkSystemPalette, workSystemPalette, jobsSystemPalette, walletSystemPalette, eBensSystemPalette, Accordion, Alert, Attachment, Avatar, useAvatarColors, Badge, BottomNavigation, BottomSheet, Box, Button, Calendar, Card, Carousel, Collapse, Checkbox, ContentNavigator, DatePicker, Divider, Drawer, Empty, Error, FAB, Icon, Image, List, PinInput, Progress, PageControl, Skeleton, Slider, Spinner, Swipeable, Radio, SectionHeading, Select, Success, Switch, Tabs, Tag, TextInput, TimePicker, Toast, Toolbar, Typography, Rate, RefreshControl, RichTextEditor, };
50
+ export { theme, getTheme, useTheme, scale, ThemeProvider, ThemeSwitcher, withTheme, swagSystemPalette, swagDarkSystemPalette, workSystemPalette, jobsSystemPalette, walletSystemPalette, eBensSystemPalette, Accordion, Alert, Attachment, Avatar, useAvatarColors, Badge, BottomNavigation, BottomSheet, Box, Button, Calendar, Card, Carousel, Collapse, Checkbox, ContentNavigator, DatePicker, Divider, Drawer, Empty, Error, FAB, Icon, Image, List, Modal, PinInput, Progress, PageControl, Skeleton, Slider, Spinner, Swipeable, Radio, SectionHeading, Select, Success, Switch, Tabs, Tag, TextInput, TimePicker, Toast, Toolbar, Typography, Rate, RefreshControl, RichTextEditor, };
50
51
  export * from './types';