@nlabs/gothamui 1.8.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/LICENSE +21 -0
- package/MIGRATION.md +36 -0
- package/README.md +768 -0
- package/docs/assets/gothamui-app-architecture.svg +159 -0
- package/docs/assets/gothamui-logo.png +0 -0
- package/docs/assets/gothamui-logo.svg +42 -0
- package/docs/render-performance.md +34 -0
- package/lib/actions/GothamActions.d.ts +42 -0
- package/lib/actions/GothamActions.js +67 -0
- package/lib/actions/MarkdownActions.d.ts +4 -0
- package/lib/actions/MarkdownActions.js +48 -0
- package/lib/app.d.ts +1 -0
- package/lib/app.js +198 -0
- package/lib/components/Alert/Alert.d.ts +8 -0
- package/lib/components/Alert/Alert.js +24 -0
- package/lib/components/Alert/Alert.stories.js +59 -0
- package/lib/components/AuthRoute/AuthRoute.d.ts +3 -0
- package/lib/components/AuthRoute/AuthRoute.js +21 -0
- package/lib/components/AuthRoute/AuthRoute.stories.js +45 -0
- package/lib/components/AutocompleteField/AutocompleteField.d.ts +24 -0
- package/lib/components/AutocompleteField/AutocompleteField.js +148 -0
- package/lib/components/AutocompleteField/AutocompleteField.stories.js +62 -0
- package/lib/components/Avatar/Avatar.d.ts +29 -0
- package/lib/components/Avatar/Avatar.js +154 -0
- package/lib/components/Avatar/Avatar.stories.js +105 -0
- package/lib/components/Badge/Badge.d.ts +9 -0
- package/lib/components/Badge/Badge.js +22 -0
- package/lib/components/Badge/Badge.stories.js +53 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +19 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.js +74 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.stories.js +95 -0
- package/lib/components/Button/Button.d.ts +25 -0
- package/lib/components/Button/Button.js +157 -0
- package/lib/components/Button/Button.stories.js +119 -0
- package/lib/components/Card/Card.d.ts +8 -0
- package/lib/components/Card/Card.js +39 -0
- package/lib/components/Card/Card.stories.js +60 -0
- package/lib/components/CategoryGrid/CategoryGrid.d.ts +15 -0
- package/lib/components/CategoryGrid/CategoryGrid.js +42 -0
- package/lib/components/CategoryGrid/CategoryGrid.stories.js +35 -0
- package/lib/components/Chat/AudioMessage/AudioMessage.css +1 -0
- package/lib/components/Chat/AudioMessage/AudioMessage.d.ts +3 -0
- package/lib/components/Chat/AudioMessage/AudioMessage.js +28 -0
- package/lib/components/Chat/Avatar/Avatar.css +1 -0
- package/lib/components/Chat/Avatar/Avatar.d.ts +3 -0
- package/lib/components/Chat/Avatar/Avatar.js +72 -0
- package/lib/components/Chat/Button/Button.css +1 -0
- package/lib/components/Chat/Button/Button.d.ts +3 -0
- package/lib/components/Chat/Button/Button.js +37 -0
- package/lib/components/Chat/Chat.stories.js +688 -0
- package/lib/components/Chat/ChatItem/ChatItem.css +1 -0
- package/lib/components/Chat/ChatItem/ChatItem.d.ts +3 -0
- package/lib/components/Chat/ChatItem/ChatItem.js +183 -0
- package/lib/components/Chat/ChatList/ChatList.css +1 -0
- package/lib/components/Chat/ChatList/ChatList.d.ts +3 -0
- package/lib/components/Chat/ChatList/ChatList.js +84 -0
- package/lib/components/Chat/Circle/Circle.d.ts +3 -0
- package/lib/components/Chat/Circle/Circle.js +27 -0
- package/lib/components/Chat/Dropdown/Dropdown.css +1 -0
- package/lib/components/Chat/Dropdown/Dropdown.d.ts +3 -0
- package/lib/components/Chat/Dropdown/Dropdown.js +66 -0
- package/lib/components/Chat/FileMessage/FileMessage.css +1 -0
- package/lib/components/Chat/FileMessage/FileMessage.d.ts +3 -0
- package/lib/components/Chat/FileMessage/FileMessage.js +77 -0
- package/lib/components/Chat/Input/Input.css +1 -0
- package/lib/components/Chat/Input/Input.d.ts +3 -0
- package/lib/components/Chat/Input/Input.js +108 -0
- package/lib/components/Chat/LocationMessage/LocationMessage.css +1 -0
- package/lib/components/Chat/LocationMessage/LocationMessage.d.ts +3 -0
- package/lib/components/Chat/LocationMessage/LocationMessage.js +36 -0
- package/lib/components/Chat/MeetingItem/MeetingItem.css +1 -0
- package/lib/components/Chat/MeetingItem/MeetingItem.d.ts +3 -0
- package/lib/components/Chat/MeetingItem/MeetingItem.js +106 -0
- package/lib/components/Chat/MeetingLink/MeetingLink.css +1 -0
- package/lib/components/Chat/MeetingLink/MeetingLink.d.ts +3 -0
- package/lib/components/Chat/MeetingLink/MeetingLink.js +26 -0
- package/lib/components/Chat/MeetingList/MeetingList.css +1 -0
- package/lib/components/Chat/MeetingList/MeetingList.d.ts +3 -0
- package/lib/components/Chat/MeetingList/MeetingList.js +52 -0
- package/lib/components/Chat/MeetingMessage/MeetingMessage.css +1 -0
- package/lib/components/Chat/MeetingMessage/MeetingMessage.d.ts +3 -0
- package/lib/components/Chat/MeetingMessage/MeetingMessage.js +227 -0
- package/lib/components/Chat/MessageBox/MessageBox.css +1 -0
- package/lib/components/Chat/MessageBox/MessageBox.d.ts +3 -0
- package/lib/components/Chat/MessageBox/MessageBox.js +263 -0
- package/lib/components/Chat/MessageList/MessageList.css +1 -0
- package/lib/components/Chat/MessageList/MessageList.d.ts +2 -0
- package/lib/components/Chat/MessageList/MessageList.js +196 -0
- package/lib/components/Chat/Navbar/Navbar.css +1 -0
- package/lib/components/Chat/Navbar/Navbar.d.ts +3 -0
- package/lib/components/Chat/Navbar/Navbar.js +21 -0
- package/lib/components/Chat/PhotoMessage/PhotoMessage.css +1 -0
- package/lib/components/Chat/PhotoMessage/PhotoMessage.d.ts +3 -0
- package/lib/components/Chat/PhotoMessage/PhotoMessage.js +73 -0
- package/lib/components/Chat/Popup/Popup.css +1 -0
- package/lib/components/Chat/Popup/Popup.d.ts +3 -0
- package/lib/components/Chat/Popup/Popup.js +45 -0
- package/lib/components/Chat/README.md +50 -0
- package/lib/components/Chat/ReplyMessage/ReplyMessage.css +1 -0
- package/lib/components/Chat/ReplyMessage/ReplyMessage.d.ts +3 -0
- package/lib/components/Chat/ReplyMessage/ReplyMessage.js +42 -0
- package/lib/components/Chat/SideBar/SideBar.css +1 -0
- package/lib/components/Chat/SideBar/SideBar.d.ts +3 -0
- package/lib/components/Chat/SideBar/SideBar.js +21 -0
- package/lib/components/Chat/SpotifyMessage/SpotifyMessage.css +1 -0
- package/lib/components/Chat/SpotifyMessage/SpotifyMessage.d.ts +3 -0
- package/lib/components/Chat/SpotifyMessage/SpotifyMessage.js +28 -0
- package/lib/components/Chat/SystemMessage/SystemMessage.css +1 -0
- package/lib/components/Chat/SystemMessage/SystemMessage.d.ts +3 -0
- package/lib/components/Chat/SystemMessage/SystemMessage.js +14 -0
- package/lib/components/Chat/VideoMessage/VideoMessage.css +1 -0
- package/lib/components/Chat/VideoMessage/VideoMessage.d.ts +3 -0
- package/lib/components/Chat/VideoMessage/VideoMessage.js +88 -0
- package/lib/components/Chat/assets/img/leftArrow.svg +6 -0
- package/lib/components/Chat/assets/img/rightArrow.svg +6 -0
- package/lib/components/Chat/index.d.ts +25 -0
- package/lib/components/Chat/index.js +27 -0
- package/lib/components/Chat/type.d.js +52 -0
- package/lib/components/Chat/utils/formatRelativeDate.d.ts +4 -0
- package/lib/components/Chat/utils/formatRelativeDate.js +110 -0
- package/lib/components/Checkbox/Checkbox.d.ts +15 -0
- package/lib/components/Checkbox/Checkbox.js +106 -0
- package/lib/components/Checkbox/Checkbox.stories.js +51 -0
- package/lib/components/ComponentUtils/renderWithAsChild.d.ts +9 -0
- package/lib/components/ComponentUtils/renderWithAsChild.js +27 -0
- package/lib/components/Container/Container.d.ts +7 -0
- package/lib/components/Container/Container.js +16 -0
- package/lib/components/Container/Container.stories.js +36 -0
- package/lib/components/DateField/DateField.d.ts +22 -0
- package/lib/components/DateField/DateField.js +145 -0
- package/lib/components/DateField/DateField.stories.js +125 -0
- package/lib/components/DateField/DatePicker.d.ts +9 -0
- package/lib/components/DateField/DatePicker.js +205 -0
- package/lib/components/DateField/DatePicker.stories.js +33 -0
- package/lib/components/DescriptionList/DescriptionList.d.ts +4 -0
- package/lib/components/DescriptionList/DescriptionList.js +19 -0
- package/lib/components/DescriptionList/DescriptionList.stories.js +34 -0
- package/lib/components/Dialog/Dialog.d.ts +25 -0
- package/lib/components/Dialog/Dialog.js +66 -0
- package/lib/components/Dialog/Dialog.stories.js +88 -0
- package/lib/components/DropUpload/DropUpload.d.ts +37 -0
- package/lib/components/DropUpload/DropUpload.js +323 -0
- package/lib/components/DropUpload/DropUpload.stories.js +48 -0
- package/lib/components/Empty/Empty.d.ts +11 -0
- package/lib/components/Empty/Empty.js +39 -0
- package/lib/components/Empty/Empty.stories.js +52 -0
- package/lib/components/EmptyState/EmptyState.d.ts +15 -0
- package/lib/components/EmptyState/EmptyState.js +44 -0
- package/lib/components/EmptyState/EmptyState.stories.js +36 -0
- package/lib/components/ErrorMessage/ErrorMessage.d.ts +7 -0
- package/lib/components/ErrorMessage/ErrorMessage.js +20 -0
- package/lib/components/ErrorMessage/ErrorMessage.stories.js +25 -0
- package/lib/components/FaqSection/FaqSection.d.ts +14 -0
- package/lib/components/FaqSection/FaqSection.js +37 -0
- package/lib/components/FaqSection/FaqSection.stories.js +31 -0
- package/lib/components/Fieldset/Fieldset.d.ts +21 -0
- package/lib/components/Fieldset/Fieldset.js +39 -0
- package/lib/components/Fieldset/Fieldset.stories.js +42 -0
- package/lib/components/Footer/Footer.d.ts +26 -0
- package/lib/components/Footer/Footer.js +119 -0
- package/lib/components/Footer/Footer.stories.js +184 -0
- package/lib/components/Form/Form.d.ts +42 -0
- package/lib/components/Form/Form.js +198 -0
- package/lib/components/Form/Form.stories.js +65 -0
- package/lib/components/Form/FormContext.d.ts +35 -0
- package/lib/components/Form/FormContext.js +71 -0
- package/lib/components/GothamRoute/GothamRoute.d.ts +0 -0
- package/lib/components/GothamRoute/GothamRoute.js +56 -0
- package/lib/components/GothamRouter/GothamRouter.d.ts +0 -0
- package/lib/components/GothamRouter/GothamRouter.js +52 -0
- package/lib/components/Heading/Heading.d.ts +7 -0
- package/lib/components/Heading/Heading.js +20 -0
- package/lib/components/Heading/Heading.stories.js +51 -0
- package/lib/components/IncentiveGrid/IncentiveGrid.d.ts +15 -0
- package/lib/components/IncentiveGrid/IncentiveGrid.js +34 -0
- package/lib/components/IncentiveGrid/IncentiveGrid.stories.js +41 -0
- package/lib/components/InputField/InputField.d.ts +25 -0
- package/lib/components/InputField/InputField.js +68 -0
- package/lib/components/InputField/InputField.stories.js +58 -0
- package/lib/components/Item/Item.d.ts +25 -0
- package/lib/components/Item/Item.js +79 -0
- package/lib/components/Item/Item.stories.js +94 -0
- package/lib/components/Kbd/Kbd.d.ts +2 -0
- package/lib/components/Kbd/Kbd.js +9 -0
- package/lib/components/Kbd/Kbd.stories.js +24 -0
- package/lib/components/Label/Label.d.ts +11 -0
- package/lib/components/Label/Label.js +23 -0
- package/lib/components/Label/Label.stories.js +38 -0
- package/lib/components/Link/Link.d.ts +7 -0
- package/lib/components/Link/Link.js +13 -0
- package/lib/components/Link/Link.stories.js +28 -0
- package/lib/components/ListContainer/ListContainer.d.ts +8 -0
- package/lib/components/ListContainer/ListContainer.js +14 -0
- package/lib/components/ListContainer/ListContainer.stories.js +45 -0
- package/lib/components/Loader/Loader.d.ts +9 -0
- package/lib/components/Loader/Loader.js +36 -0
- package/lib/components/Loader/Loader.stories.js +94 -0
- package/lib/components/LogoCloud/LogoCloud.d.ts +15 -0
- package/lib/components/LogoCloud/LogoCloud.js +43 -0
- package/lib/components/LogoCloud/LogoCloud.stories.js +28 -0
- package/lib/components/Markdown/Markdown.d.ts +8 -0
- package/lib/components/Markdown/Markdown.js +64 -0
- package/lib/components/Markdown/Markdown.stories.js +34 -0
- package/lib/components/MediaLightbox/MediaLightbox.d.ts +22 -0
- package/lib/components/MediaLightbox/MediaLightbox.js +80 -0
- package/lib/components/MediaObject/MediaObject.d.ts +8 -0
- package/lib/components/MediaObject/MediaObject.js +37 -0
- package/lib/components/MediaObject/MediaObject.stories.js +28 -0
- package/lib/components/Navbar/Navbar.d.ts +43 -0
- package/lib/components/Navbar/Navbar.js +213 -0
- package/lib/components/Navbar/Navbar.stories.js +235 -0
- package/lib/components/NotFound/NotFound.d.ts +34 -0
- package/lib/components/NotFound/NotFound.js +351 -0
- package/lib/components/NotFound/NotFound.stories.js +80 -0
- package/lib/components/Notify/Notify.d.ts +18 -0
- package/lib/components/Notify/Notify.js +178 -0
- package/lib/components/Notify/Notify.stories.js +148 -0
- package/lib/components/Notify/NotifyExample.d.ts +1 -0
- package/lib/components/Notify/NotifyExample.js +174 -0
- package/lib/components/Notify/README.md +103 -0
- package/lib/components/Pagination/Pagination.d.ts +18 -0
- package/lib/components/Pagination/Pagination.js +225 -0
- package/lib/components/Pagination/Pagination.stories.js +69 -0
- package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.d.ts +12 -0
- package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.js +88 -0
- package/lib/components/PasswordStrengthMeter/PasswordStrengthMeter.stories.js +16 -0
- package/lib/components/PaymentMethodPanel/PaymentMethodPanel.d.ts +18 -0
- package/lib/components/PaymentMethodPanel/PaymentMethodPanel.js +113 -0
- package/lib/components/PaymentMethodPanel/PaymentMethodPanel.stories.js +88 -0
- package/lib/components/Pricing/Pricing.d.ts +78 -0
- package/lib/components/Pricing/Pricing.js +764 -0
- package/lib/components/Pricing/Pricing.stories.js +146 -0
- package/lib/components/ProductGrid/ProductGrid.d.ts +23 -0
- package/lib/components/ProductGrid/ProductGrid.js +79 -0
- package/lib/components/ProductGrid/ProductGrid.stories.js +50 -0
- package/lib/components/ProgressSteps/ProgressSteps.d.ts +13 -0
- package/lib/components/ProgressSteps/ProgressSteps.js +51 -0
- package/lib/components/ProgressSteps/ProgressSteps.stories.js +35 -0
- package/lib/components/RadioField/RadioField.d.ts +16 -0
- package/lib/components/RadioField/RadioField.js +63 -0
- package/lib/components/RadioField/RadioField.stories.js +140 -0
- package/lib/components/ReviewList/ReviewList.d.ts +15 -0
- package/lib/components/ReviewList/ReviewList.js +51 -0
- package/lib/components/ReviewList/ReviewList.stories.js +29 -0
- package/lib/components/SectionHeader/SectionHeader.d.ts +9 -0
- package/lib/components/SectionHeader/SectionHeader.js +36 -0
- package/lib/components/SectionHeader/SectionHeader.stories.js +35 -0
- package/lib/components/SelectField/SelectField.d.ts +18 -0
- package/lib/components/SelectField/SelectField.js +145 -0
- package/lib/components/SelectField/SelectField.stories.js +155 -0
- package/lib/components/SelectField/SelectOption.d.ts +13 -0
- package/lib/components/SelectField/SelectOption.js +40 -0
- package/lib/components/SelectField/SelectOption.stories.js +40 -0
- package/lib/components/Separator/Separator.d.ts +6 -0
- package/lib/components/Separator/Separator.js +13 -0
- package/lib/components/Separator/Separator.stories.js +70 -0
- package/lib/components/Skeleton/Skeleton.d.ts +2 -0
- package/lib/components/Skeleton/Skeleton.js +9 -0
- package/lib/components/Skeleton/Skeleton.stories.js +24 -0
- package/lib/components/Svg/Svg.d.ts +9 -0
- package/lib/components/Svg/Svg.js +25 -0
- package/lib/components/Svg/Svg.stories.js +34 -0
- package/lib/components/Switch/Switch.d.ts +12 -0
- package/lib/components/Switch/Switch.js +54 -0
- package/lib/components/Switch/Switch.stories.js +61 -0
- package/lib/components/Table/Table.d.ts +18 -0
- package/lib/components/Table/Table.js +99 -0
- package/lib/components/Table/Table.stories.js +79 -0
- package/lib/components/Tabs/Tabs.d.ts +17 -0
- package/lib/components/Tabs/Tabs.js +85 -0
- package/lib/components/Tabs/Tabs.stories.js +45 -0
- package/lib/components/Text/Text.d.ts +5 -0
- package/lib/components/Text/Text.js +24 -0
- package/lib/components/Text/Text.stories.js +35 -0
- package/lib/components/TextField/TextField.d.ts +31 -0
- package/lib/components/TextField/TextField.js +91 -0
- package/lib/components/TextField/TextField.stories.js +158 -0
- package/lib/components/Textarea/Textarea.d.ts +5 -0
- package/lib/components/Textarea/Textarea.js +10 -0
- package/lib/components/Textarea/Textarea.stories.js +32 -0
- package/lib/components/index.d.ts +60 -0
- package/lib/components/index.js +62 -0
- package/lib/config/appConfig.d.ts +5 -0
- package/lib/config/appConfig.js +20 -0
- package/lib/constants/AuthConstants.d.ts +8 -0
- package/lib/constants/AuthConstants.js +9 -0
- package/lib/constants/GothamConstants.d.ts +24 -0
- package/lib/constants/GothamConstants.js +25 -0
- package/lib/constants/MarkdownConstants.d.ts +8 -0
- package/lib/constants/MarkdownConstants.js +9 -0
- package/lib/constants/MessageConstants.d.ts +10 -0
- package/lib/constants/MessageConstants.js +11 -0
- package/lib/docs/analytics.md +231 -0
- package/lib/docs/api-reference.md +364 -0
- package/lib/docs/comparison.md +83 -0
- package/lib/docs/containers.md +11 -0
- package/lib/docs/gettingStarted.md +338 -0
- package/lib/docs/payments.md +79 -0
- package/lib/editor/CodeEditor.d.ts +11 -0
- package/lib/editor/CodeEditor.js +15 -0
- package/lib/editor/CodeEditor.stories.js +24 -0
- package/lib/editor/index.d.ts +1 -0
- package/lib/editor/index.js +3 -0
- package/lib/errors/UserError.d.ts +8 -0
- package/lib/errors/UserError.js +12 -0
- package/lib/examples/OptimizedFormExample.d.ts +1 -0
- package/lib/examples/OptimizedFormExample.js +130 -0
- package/lib/form/index.d.ts +11 -0
- package/lib/form/index.js +13 -0
- package/lib/hooks/useIsMobile.d.ts +1 -0
- package/lib/hooks/useIsMobile.js +12 -0
- package/lib/i18n/index.d.ts +8 -0
- package/lib/i18n/index.js +7 -0
- package/lib/icons/Dual Ring-1s-100px.svg +1 -0
- package/lib/icons/gotham-logo.svg +17 -0
- package/lib/icons/gotham.svg +8 -0
- package/lib/icons/index.d.ts +5 -0
- package/lib/icons/index.js +6 -0
- package/lib/icons/pencil.svg +6 -0
- package/lib/img/arkhamjs-logo.png +0 -0
- package/lib/img/logo.png +0 -0
- package/lib/index.d.ts +25 -0
- package/lib/index.js +25 -0
- package/lib/router/index.d.ts +5 -0
- package/lib/router/index.js +6 -0
- package/lib/stores/GothamAppStore.d.ts +35 -0
- package/lib/stores/GothamAppStore.js +70 -0
- package/lib/stories/Button.d.ts +28 -0
- package/lib/stories/Button.js +22 -0
- package/lib/stories/Header.d.ts +12 -0
- package/lib/stories/Header.js +78 -0
- package/lib/stories/Page.d.ts +3 -0
- package/lib/stories/Page.js +108 -0
- package/lib/stories/assets/accessibility.png +0 -0
- package/lib/stories/assets/accessibility.svg +5 -0
- package/lib/stories/assets/addon-library.png +0 -0
- package/lib/stories/assets/assets.png +0 -0
- package/lib/stories/assets/context.png +0 -0
- package/lib/stories/assets/discord.svg +15 -0
- package/lib/stories/assets/docs.png +0 -0
- package/lib/stories/assets/figma-plugin.png +0 -0
- package/lib/stories/assets/github.svg +3 -0
- package/lib/stories/assets/share.png +0 -0
- package/lib/stories/assets/styling.png +0 -0
- package/lib/stories/assets/testing.png +0 -0
- package/lib/stories/assets/theming.png +0 -0
- package/lib/stories/assets/tutorials.svg +12 -0
- package/lib/stories/assets/youtube.svg +4 -0
- package/lib/stories/button.css +1 -0
- package/lib/stories/header.css +1 -0
- package/lib/stories/page.css +1 -0
- package/lib/styles/chat.css +1 -0
- package/lib/styles/index.css +2 -0
- package/lib/styles/tailwind.css +1 -0
- package/lib/types/assets.d.js +2 -0
- package/lib/types/gotham.d.ts +12 -0
- package/lib/types/gotham.js +3 -0
- package/lib/types/vitest-globals.d.js +3 -0
- package/lib/utils/GothamContext.d.ts +14 -0
- package/lib/utils/GothamContext.js +14 -0
- package/lib/utils/awsRum.d.ts +23 -0
- package/lib/utils/awsRum.js +50 -0
- package/lib/utils/colorUtils.d.ts +20 -0
- package/lib/utils/colorUtils.js +499 -0
- package/lib/utils/contentUtils.d.ts +2 -0
- package/lib/utils/contentUtils.js +18 -0
- package/lib/utils/i18nUtil.d.ts +1 -0
- package/lib/utils/i18nUtil.js +7 -0
- package/lib/utils/imageUtils.d.ts +5 -0
- package/lib/utils/imageUtils.js +48 -0
- package/lib/utils/interactionAnalytics.d.ts +10 -0
- package/lib/utils/interactionAnalytics.js +142 -0
- package/lib/utils/navEventQueue.d.ts +6 -0
- package/lib/utils/navEventQueue.js +50 -0
- package/lib/utils/refUtils.d.ts +2 -0
- package/lib/utils/refUtils.js +11 -0
- package/lib/utils/routeUtils.d.ts +12 -0
- package/lib/utils/routeUtils.js +109 -0
- package/lib/utils/sizeUtils.d.ts +5 -0
- package/lib/utils/sizeUtils.js +6 -0
- package/lib/utils/storyInteractions.d.ts +6 -0
- package/lib/utils/storyInteractions.js +45 -0
- package/lib/utils/storyUtils.d.ts +1 -0
- package/lib/utils/storyUtils.js +11 -0
- package/lib/utils/testUtils.d.ts +3 -0
- package/lib/utils/testUtils.js +56 -0
- package/lib/utils/timer.d.ts +21 -0
- package/lib/utils/timer.js +38 -0
- package/lib/utils/useBreakpoint.d.ts +6 -0
- package/lib/utils/useBreakpoint.js +56 -0
- package/lib/utils/viewPerformance.d.ts +34 -0
- package/lib/utils/viewPerformance.js +103 -0
- package/lib/utils/viewUtils.d.ts +9 -0
- package/lib/utils/viewUtils.js +44 -0
- package/lib/views/AuthSignInView/AuthSignInView.d.ts +20 -0
- package/lib/views/AuthSignInView/AuthSignInView.js +107 -0
- package/lib/views/AuthSignInView/AuthSignInView.stories.js +29 -0
- package/lib/views/AuthSignUpView/AuthSignUpView.d.ts +21 -0
- package/lib/views/AuthSignUpView/AuthSignUpView.js +146 -0
- package/lib/views/AuthSignUpView/AuthSignUpView.stories.js +30 -0
- package/lib/views/AuthView/AuthView.d.ts +16 -0
- package/lib/views/AuthView/AuthView.js +60 -0
- package/lib/views/AuthView/AuthView.stories.js +34 -0
- package/lib/views/DefaultView/DefaultView.d.ts +5 -0
- package/lib/views/DefaultView/DefaultView.js +134 -0
- package/lib/views/Gotham/Gotham.d.ts +44 -0
- package/lib/views/Gotham/Gotham.js +24 -0
- package/lib/views/Gotham/Gotham.stories.js +31 -0
- package/lib/views/Gotham/GothamListeners.d.ts +0 -0
- package/lib/views/Gotham/GothamListeners.js +2 -0
- package/lib/views/Gotham/GothamProvider.d.ts +43 -0
- package/lib/views/Gotham/GothamProvider.js +217 -0
- package/lib/views/Gotham/GothamRoot.d.ts +6 -0
- package/lib/views/Gotham/GothamRoot.js +69 -0
- package/lib/views/HomeView/HomeView.d.ts +10 -0
- package/lib/views/HomeView/HomeView.js +134 -0
- package/lib/views/LoaderView/LoaderView.d.ts +8 -0
- package/lib/views/LoaderView/LoaderView.js +30 -0
- package/lib/views/MenuView/MenuView.d.ts +13 -0
- package/lib/views/MenuView/MenuView.js +305 -0
- package/lib/views/NotFoundView/NotFoundView.d.ts +2 -0
- package/lib/views/NotFoundView/NotFoundView.js +12 -0
- package/lib/views/index.d.ts +11 -0
- package/lib/views/index.js +13 -0
- package/package.json +202 -0
- package/styles/tailwind.css +1 -0
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Dialog, DialogBackdrop, DialogPanel, Menu, MenuButton, MenuItem, MenuItems, TransitionChild } from '@headlessui/react';
|
|
4
|
+
import { cn } from '@nlabs/utils';
|
|
5
|
+
import { Menu as Bars3, Bell, Calendar, ChevronDown, Files, Folder, Home, PieChart, Search, Users, X } from 'lucide-react';
|
|
6
|
+
import { memo, useState } from 'react';
|
|
7
|
+
import { Outlet } from 'react-router';
|
|
8
|
+
import { Config } from '../../config/appConfig.js';
|
|
9
|
+
const sideMenuItems = [
|
|
10
|
+
{
|
|
11
|
+
current: true,
|
|
12
|
+
href: '#',
|
|
13
|
+
icon: Home,
|
|
14
|
+
name: 'Dashboard'
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
current: false,
|
|
18
|
+
href: '#',
|
|
19
|
+
icon: Users,
|
|
20
|
+
name: 'Team'
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
current: false,
|
|
24
|
+
href: '#',
|
|
25
|
+
icon: Folder,
|
|
26
|
+
name: 'Projects'
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
current: false,
|
|
30
|
+
href: '#',
|
|
31
|
+
icon: Calendar,
|
|
32
|
+
name: 'Calendar'
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
current: false,
|
|
36
|
+
href: '#',
|
|
37
|
+
icon: Files,
|
|
38
|
+
name: 'Documents'
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
current: false,
|
|
42
|
+
href: '#',
|
|
43
|
+
icon: PieChart,
|
|
44
|
+
name: 'Reports'
|
|
45
|
+
}
|
|
46
|
+
];
|
|
47
|
+
const userMenuItems = [
|
|
48
|
+
{
|
|
49
|
+
href: '#',
|
|
50
|
+
name: 'Profile'
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
href: '#',
|
|
54
|
+
name: 'Sign out'
|
|
55
|
+
}
|
|
56
|
+
];
|
|
57
|
+
const MenuViewComponent = ()=>{
|
|
58
|
+
const [sidebarOpen, setSidebarOpen] = useState(false);
|
|
59
|
+
const app = Config.get('app');
|
|
60
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
61
|
+
children: [
|
|
62
|
+
/*#__PURE__*/ _jsxs(Dialog, {
|
|
63
|
+
className: "relative z-50 lg:hidden",
|
|
64
|
+
onClose: setSidebarOpen,
|
|
65
|
+
open: sidebarOpen,
|
|
66
|
+
children: [
|
|
67
|
+
/*#__PURE__*/ _jsx(DialogBackdrop, {
|
|
68
|
+
className: "fixed inset-0 bg-gray-900/80 transition-opacity duration-300 ease-linear data-closed:opacity-0",
|
|
69
|
+
transition: true
|
|
70
|
+
}),
|
|
71
|
+
/*#__PURE__*/ _jsx("div", {
|
|
72
|
+
className: "fixed inset-0 flex",
|
|
73
|
+
children: /*#__PURE__*/ _jsxs(DialogPanel, {
|
|
74
|
+
className: "relative mr-16 flex w-full max-w-xs flex-1 transform transition duration-300 ease-in-out data-closed:-translate-x-full",
|
|
75
|
+
transition: true,
|
|
76
|
+
children: [
|
|
77
|
+
/*#__PURE__*/ _jsx(TransitionChild, {
|
|
78
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
79
|
+
className: "absolute top-0 left-full flex w-16 justify-center pt-5 duration-300 ease-in-out data-closed:opacity-0",
|
|
80
|
+
children: /*#__PURE__*/ _jsxs("button", {
|
|
81
|
+
className: "-m-2.5 p-2.5",
|
|
82
|
+
onClick: ()=>setSidebarOpen(false),
|
|
83
|
+
type: "button",
|
|
84
|
+
children: [
|
|
85
|
+
/*#__PURE__*/ _jsx("span", {
|
|
86
|
+
className: "sr-only",
|
|
87
|
+
children: "Close sidebar"
|
|
88
|
+
}),
|
|
89
|
+
/*#__PURE__*/ _jsx(X, {
|
|
90
|
+
"aria-hidden": "true",
|
|
91
|
+
className: "size-6 text-white"
|
|
92
|
+
})
|
|
93
|
+
]
|
|
94
|
+
})
|
|
95
|
+
})
|
|
96
|
+
}),
|
|
97
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
98
|
+
className: "flex grow flex-col gap-y-5 overflow-y-auto bg-gray-900 px-6 pb-2 ring-1 ring-white/10",
|
|
99
|
+
children: [
|
|
100
|
+
/*#__PURE__*/ _jsx("div", {
|
|
101
|
+
className: "flex h-16 shrink-0 items-center",
|
|
102
|
+
children: /*#__PURE__*/ _jsx("img", {
|
|
103
|
+
alt: app?.title,
|
|
104
|
+
className: "h-8 w-auto",
|
|
105
|
+
src: app?.logo
|
|
106
|
+
})
|
|
107
|
+
}),
|
|
108
|
+
/*#__PURE__*/ _jsx("nav", {
|
|
109
|
+
className: "flex flex-1 flex-col",
|
|
110
|
+
children: /*#__PURE__*/ _jsx("ul", {
|
|
111
|
+
className: "-mx-2 flex-1 space-y-1",
|
|
112
|
+
role: "list",
|
|
113
|
+
children: sideMenuItems?.map((item)=>/*#__PURE__*/ _jsx("li", {
|
|
114
|
+
children: /*#__PURE__*/ _jsxs("a", {
|
|
115
|
+
className: cn(item.current ? 'bg-gray-800 text-white' : 'text-gray-400 hover:bg-gray-800 hover:text-white', 'group flex gap-x-3 rounded-md p-2 text-sm/6 font-semibold'),
|
|
116
|
+
href: item.href,
|
|
117
|
+
children: [
|
|
118
|
+
item.icon && /*#__PURE__*/ _jsx(item.icon, {
|
|
119
|
+
"aria-hidden": "true",
|
|
120
|
+
className: "size-6 shrink-0"
|
|
121
|
+
}),
|
|
122
|
+
item.name
|
|
123
|
+
]
|
|
124
|
+
})
|
|
125
|
+
}, item.name))
|
|
126
|
+
})
|
|
127
|
+
})
|
|
128
|
+
]
|
|
129
|
+
})
|
|
130
|
+
]
|
|
131
|
+
})
|
|
132
|
+
})
|
|
133
|
+
]
|
|
134
|
+
}),
|
|
135
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
136
|
+
className: "hidden lg:fixed lg:inset-y-0 lg:left-0 lg:z-50 lg:block lg:w-20 lg:overflow-y-auto lg:bg-gray-900 lg:pb-4",
|
|
137
|
+
children: [
|
|
138
|
+
/*#__PURE__*/ _jsx("div", {
|
|
139
|
+
className: "flex h-16 shrink-0 items-center justify-center",
|
|
140
|
+
children: /*#__PURE__*/ _jsx("img", {
|
|
141
|
+
alt: "Your Company",
|
|
142
|
+
className: "h-8 w-auto",
|
|
143
|
+
src: "https://tailwindcss.com/plus-assets/img/logos/mark.svg?color=indigo&shade=500"
|
|
144
|
+
})
|
|
145
|
+
}),
|
|
146
|
+
/*#__PURE__*/ _jsx("nav", {
|
|
147
|
+
className: "mt-8",
|
|
148
|
+
children: /*#__PURE__*/ _jsx("ul", {
|
|
149
|
+
className: "flex flex-col items-center space-y-1",
|
|
150
|
+
role: "list",
|
|
151
|
+
children: sideMenuItems?.map((item)=>/*#__PURE__*/ _jsx("li", {
|
|
152
|
+
children: /*#__PURE__*/ _jsxs("a", {
|
|
153
|
+
className: cn(item.current ? 'bg-gray-800 text-white' : 'text-gray-400 hover:bg-gray-800 hover:text-white', 'group flex gap-x-3 rounded-md p-3 text-sm/6 font-semibold'),
|
|
154
|
+
href: item.href,
|
|
155
|
+
children: [
|
|
156
|
+
item.icon && /*#__PURE__*/ _jsx(item.icon, {
|
|
157
|
+
"aria-hidden": "true",
|
|
158
|
+
className: "size-6 shrink-0"
|
|
159
|
+
}),
|
|
160
|
+
/*#__PURE__*/ _jsx("span", {
|
|
161
|
+
className: "sr-only",
|
|
162
|
+
children: item.name
|
|
163
|
+
})
|
|
164
|
+
]
|
|
165
|
+
})
|
|
166
|
+
}, item.name))
|
|
167
|
+
})
|
|
168
|
+
})
|
|
169
|
+
]
|
|
170
|
+
}),
|
|
171
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
172
|
+
className: "lg:pl-20",
|
|
173
|
+
children: [
|
|
174
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
175
|
+
className: "sticky top-0 z-40 flex h-16 shrink-0 items-center gap-x-4 border-b border-gray-200 bg-white px-4 shadow-xs sm:gap-x-6 sm:px-6 lg:px-8",
|
|
176
|
+
children: [
|
|
177
|
+
/*#__PURE__*/ _jsxs("button", {
|
|
178
|
+
className: "-m-2.5 p-2.5 text-gray-700 lg:hidden",
|
|
179
|
+
onClick: ()=>setSidebarOpen(true),
|
|
180
|
+
type: "button",
|
|
181
|
+
children: [
|
|
182
|
+
/*#__PURE__*/ _jsx("span", {
|
|
183
|
+
className: "sr-only",
|
|
184
|
+
children: "Open sidebar"
|
|
185
|
+
}),
|
|
186
|
+
/*#__PURE__*/ _jsx(Bars3, {
|
|
187
|
+
"aria-hidden": "true",
|
|
188
|
+
className: "size-6"
|
|
189
|
+
})
|
|
190
|
+
]
|
|
191
|
+
}),
|
|
192
|
+
/*#__PURE__*/ _jsx("div", {
|
|
193
|
+
"aria-hidden": "true",
|
|
194
|
+
className: "h-6 w-px bg-gray-900/10 lg:hidden"
|
|
195
|
+
}),
|
|
196
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
197
|
+
className: "flex flex-1 gap-x-4 self-stretch lg:gap-x-6",
|
|
198
|
+
children: [
|
|
199
|
+
/*#__PURE__*/ _jsxs("form", {
|
|
200
|
+
action: "#",
|
|
201
|
+
className: "grid flex-1 grid-cols-1",
|
|
202
|
+
method: "GET",
|
|
203
|
+
children: [
|
|
204
|
+
/*#__PURE__*/ _jsx("input", {
|
|
205
|
+
"aria-label": "Search",
|
|
206
|
+
className: "col-start-1 row-start-1 block size-full bg-white pl-8 text-base text-gray-900 outline-hidden placeholder:text-gray-400 sm:text-sm/6",
|
|
207
|
+
name: "search",
|
|
208
|
+
placeholder: "Search",
|
|
209
|
+
type: "search"
|
|
210
|
+
}),
|
|
211
|
+
/*#__PURE__*/ _jsx(Search, {
|
|
212
|
+
"aria-hidden": "true",
|
|
213
|
+
className: "pointer-events-none col-start-1 row-start-1 size-5 self-center text-gray-400"
|
|
214
|
+
})
|
|
215
|
+
]
|
|
216
|
+
}),
|
|
217
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
218
|
+
className: "flex items-center gap-x-4 lg:gap-x-6",
|
|
219
|
+
children: [
|
|
220
|
+
/*#__PURE__*/ _jsxs("button", {
|
|
221
|
+
className: "-m-2.5 p-2.5 text-gray-400 hover:text-gray-500",
|
|
222
|
+
type: "button",
|
|
223
|
+
children: [
|
|
224
|
+
/*#__PURE__*/ _jsx("span", {
|
|
225
|
+
className: "sr-only",
|
|
226
|
+
children: "View notifications"
|
|
227
|
+
}),
|
|
228
|
+
/*#__PURE__*/ _jsx(Bell, {
|
|
229
|
+
"aria-hidden": "true",
|
|
230
|
+
className: "size-6"
|
|
231
|
+
})
|
|
232
|
+
]
|
|
233
|
+
}),
|
|
234
|
+
/*#__PURE__*/ _jsx("div", {
|
|
235
|
+
"aria-hidden": "true",
|
|
236
|
+
className: "hidden lg:block lg:h-6 lg:w-px lg:bg-gray-900/10"
|
|
237
|
+
}),
|
|
238
|
+
/*#__PURE__*/ _jsxs(Menu, {
|
|
239
|
+
as: "div",
|
|
240
|
+
className: "relative",
|
|
241
|
+
children: [
|
|
242
|
+
/*#__PURE__*/ _jsxs(MenuButton, {
|
|
243
|
+
className: "-m-1.5 flex items-center p-1.5",
|
|
244
|
+
children: [
|
|
245
|
+
/*#__PURE__*/ _jsx("span", {
|
|
246
|
+
className: "sr-only",
|
|
247
|
+
children: "Open user menu"
|
|
248
|
+
}),
|
|
249
|
+
/*#__PURE__*/ _jsx("img", {
|
|
250
|
+
alt: "",
|
|
251
|
+
className: "size-8 rounded-full bg-gray-50",
|
|
252
|
+
src: "https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80"
|
|
253
|
+
}),
|
|
254
|
+
/*#__PURE__*/ _jsxs("span", {
|
|
255
|
+
className: "hidden lg:flex lg:items-center",
|
|
256
|
+
children: [
|
|
257
|
+
/*#__PURE__*/ _jsx("span", {
|
|
258
|
+
"aria-hidden": "true",
|
|
259
|
+
className: "ml-4 text-sm/6 font-semibold text-gray-900",
|
|
260
|
+
children: "Tom Cook"
|
|
261
|
+
}),
|
|
262
|
+
/*#__PURE__*/ _jsx(ChevronDown, {
|
|
263
|
+
"aria-hidden": "true",
|
|
264
|
+
className: "ml-2 size-5 text-gray-400"
|
|
265
|
+
})
|
|
266
|
+
]
|
|
267
|
+
})
|
|
268
|
+
]
|
|
269
|
+
}),
|
|
270
|
+
/*#__PURE__*/ _jsx(MenuItems, {
|
|
271
|
+
className: "absolute right-0 z-10 mt-2.5 w-32 origin-top-right rounded-md bg-white py-2 ring-1 shadow-lg ring-gray-900/5 transition focus:outline-hidden data-closed:scale-95 data-closed:transform data-closed:opacity-0 data-enter:duration-100 data-enter:ease-out data-leave:duration-75 data-leave:ease-in",
|
|
272
|
+
transition: true,
|
|
273
|
+
children: userMenuItems?.map((item)=>/*#__PURE__*/ _jsx(MenuItem, {
|
|
274
|
+
children: /*#__PURE__*/ _jsx("a", {
|
|
275
|
+
className: "block px-3 py-1 text-sm/6 text-gray-900 data-focus:bg-gray-50 data-focus:outline-hidden",
|
|
276
|
+
href: item.href,
|
|
277
|
+
children: item.name
|
|
278
|
+
})
|
|
279
|
+
}, item.name))
|
|
280
|
+
})
|
|
281
|
+
]
|
|
282
|
+
})
|
|
283
|
+
]
|
|
284
|
+
})
|
|
285
|
+
]
|
|
286
|
+
})
|
|
287
|
+
]
|
|
288
|
+
}),
|
|
289
|
+
/*#__PURE__*/ _jsx("main", {
|
|
290
|
+
className: "xl:pl-96",
|
|
291
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
292
|
+
className: "px-4 py-10 sm:px-6 lg:px-8 lg:py-6",
|
|
293
|
+
children: /*#__PURE__*/ _jsx(Outlet, {})
|
|
294
|
+
})
|
|
295
|
+
})
|
|
296
|
+
]
|
|
297
|
+
})
|
|
298
|
+
]
|
|
299
|
+
});
|
|
300
|
+
};
|
|
301
|
+
export const MenuView = /*#__PURE__*/ memo(MenuViewComponent);
|
|
302
|
+
MenuView.displayName = 'MenuView';
|
|
303
|
+
export default MenuView;
|
|
304
|
+
|
|
305
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy92aWV3cy9NZW51Vmlldy9NZW51Vmlldy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnO1xuaW1wb3J0IHtcbiAgRGlhbG9nLFxuICBEaWFsb2dCYWNrZHJvcCxcbiAgRGlhbG9nUGFuZWwsXG4gIE1lbnUsXG4gIE1lbnVCdXR0b24sXG4gIE1lbnVJdGVtLFxuICBNZW51SXRlbXMsXG4gIFRyYW5zaXRpb25DaGlsZFxufSBmcm9tICdAaGVhZGxlc3N1aS9yZWFjdCc7XG5pbXBvcnQge2NufSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHtcbiAgTWVudSBhcyBCYXJzMyxcbiAgQmVsbCxcbiAgQ2FsZW5kYXIsXG4gIENoZXZyb25Eb3duLFxuICBGaWxlcyxcbiAgRm9sZGVyLFxuICBIb21lLFxuICBQaWVDaGFydCxcbiAgU2VhcmNoLFxuICBVc2VycyxcbiAgWFxufSBmcm9tICdsdWNpZGUtcmVhY3QnO1xuaW1wb3J0IHttZW1vLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtPdXRsZXR9IGZyb20gJ3JlYWN0LXJvdXRlcic7XG5cbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi8uLi9jb25maWcvYXBwQ29uZmlnLmpzJztcblxuaW1wb3J0IHR5cGUge0VsZW1lbnRUeXBlLCBGQ30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUge0dvdGhhbUNvbmZpZ3VyYXRpb259IGZyb20gJy4uL0dvdGhhbS9Hb3RoYW1Qcm92aWRlci5qcyc7XG5cbmNvbnN0IHNpZGVNZW51SXRlbXM6IE1lbnVJdGVtc1tdID0gW1xuICB7Y3VycmVudDogdHJ1ZSwgaHJlZjogJyMnLCBpY29uOiBIb21lLCBuYW1lOiAnRGFzaGJvYXJkJ30sXG4gIHtjdXJyZW50OiBmYWxzZSwgaHJlZjogJyMnLCBpY29uOiBVc2VycywgbmFtZTogJ1RlYW0nfSxcbiAge2N1cnJlbnQ6IGZhbHNlLCBocmVmOiAnIycsIGljb246IEZvbGRlciwgbmFtZTogJ1Byb2plY3RzJ30sXG4gIHtjdXJyZW50OiBmYWxzZSwgaHJlZjogJyMnLCBpY29uOiBDYWxlbmRhciwgbmFtZTogJ0NhbGVuZGFyJ30sXG4gIHtjdXJyZW50OiBmYWxzZSwgaHJlZjogJyMnLCBpY29uOiBGaWxlcywgbmFtZTogJ0RvY3VtZW50cyd9LFxuICB7Y3VycmVudDogZmFsc2UsIGhyZWY6ICcjJywgaWNvbjogUGllQ2hhcnQsIG5hbWU6ICdSZXBvcnRzJ31cbl07XG5cbmNvbnN0IHVzZXJNZW51SXRlbXM6IE1lbnVJdGVtc1tdID0gW1xuICB7aHJlZjogJyMnLCBuYW1lOiAnUHJvZmlsZSd9LFxuICB7aHJlZjogJyMnLCBuYW1lOiAnU2lnbiBvdXQnfVxuXTtcblxuZXhwb3J0IHR5cGUgTWVudUl0ZW1zID0ge1xuICByZWFkb25seSBjdXJyZW50PzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgaHJlZjogc3RyaW5nO1xuICByZWFkb25seSBpY29uPzogRWxlbWVudFR5cGU7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVudVZpZXdQcm9wcyB7XG4gIHNpZGVNZW51SXRlbXM6IE1lbnVJdGVtc1tdO1xuICB1c2VyTWVudUl0ZW1zOiBNZW51SXRlbXNbXTtcbn1cblxuY29uc3QgTWVudVZpZXdDb21wb25lbnQ6IEZDPE1lbnVWaWV3UHJvcHM+ID0gKCkgPT4ge1xuICBjb25zdCBbc2lkZWJhck9wZW4sIHNldFNpZGViYXJPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgYXBwOiBHb3RoYW1Db25maWd1cmF0aW9uWydhcHAnXSA9IENvbmZpZy5nZXQoJ2FwcCcpIGFzIEdvdGhhbUNvbmZpZ3VyYXRpb25bJ2FwcCddO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxEaWFsb2cgY2xhc3NOYW1lPVwicmVsYXRpdmUgei01MCBsZzpoaWRkZW5cIiBvbkNsb3NlPXtzZXRTaWRlYmFyT3Blbn0gb3Blbj17c2lkZWJhck9wZW59PlxuICAgICAgICA8RGlhbG9nQmFja2Ryb3BcbiAgICAgICAgICBjbGFzc05hbWU9XCJmaXhlZCBpbnNldC0wIGJnLWdyYXktOTAwLzgwIHRyYW5zaXRpb24tb3BhY2l0eSBkdXJhdGlvbi0zMDAgZWFzZS1saW5lYXIgZGF0YS1jbG9zZWQ6b3BhY2l0eS0wXCJcbiAgICAgICAgICB0cmFuc2l0aW9uXG4gICAgICAgIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaXhlZCBpbnNldC0wIGZsZXhcIj5cbiAgICAgICAgICA8RGlhbG9nUGFuZWxcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cInJlbGF0aXZlIG1yLTE2IGZsZXggdy1mdWxsIG1heC13LXhzIGZsZXgtMSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBkdXJhdGlvbi0zMDAgZWFzZS1pbi1vdXQgZGF0YS1jbG9zZWQ6LXRyYW5zbGF0ZS14LWZ1bGxcIlxuICAgICAgICAgICAgdHJhbnNpdGlvblxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxUcmFuc2l0aW9uQ2hpbGQ+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWJzb2x1dGUgdG9wLTAgbGVmdC1mdWxsIGZsZXggdy0xNiBqdXN0aWZ5LWNlbnRlciBwdC01IGR1cmF0aW9uLTMwMCBlYXNlLWluLW91dCBkYXRhLWNsb3NlZDpvcGFjaXR5LTBcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cIi1tLTIuNSBwLTIuNVwiIG9uQ2xpY2s9eygpID0+IHNldFNpZGViYXJPcGVuKGZhbHNlKX0gdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPkNsb3NlIHNpZGViYXI8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8WCBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzc05hbWU9XCJzaXplLTYgdGV4dC13aGl0ZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9UcmFuc2l0aW9uQ2hpbGQ+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBncm93IGZsZXgtY29sIGdhcC15LTUgb3ZlcmZsb3cteS1hdXRvIGJnLWdyYXktOTAwIHB4LTYgcGItMiByaW5nLTEgcmluZy13aGl0ZS8xMFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaC0xNiBzaHJpbmstMCBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICBhbHQ9e2FwcD8udGl0bGV9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJoLTggdy1hdXRvXCJcbiAgICAgICAgICAgICAgICAgIHNyYz17YXBwPy5sb2dvfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8bmF2IGNsYXNzTmFtZT1cImZsZXggZmxleC0xIGZsZXgtY29sXCI+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cIi1teC0yIGZsZXgtMSBzcGFjZS15LTFcIiByb2xlPVwibGlzdFwiPlxuICAgICAgICAgICAgICAgICAge3NpZGVNZW51SXRlbXM/Lm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICA8bGkga2V5PXtpdGVtLm5hbWV9PlxuICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmN1cnJlbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdiZy1ncmF5LTgwMCB0ZXh0LXdoaXRlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJ3RleHQtZ3JheS00MDAgaG92ZXI6YmctZ3JheS04MDAgaG92ZXI6dGV4dC13aGl0ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdncm91cCBmbGV4IGdhcC14LTMgcm91bmRlZC1tZCBwLTIgdGV4dC1zbS82IGZvbnQtc2VtaWJvbGQnXG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj17aXRlbS5ocmVmfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpdGVtLmljb24gJiYgPGl0ZW0uaWNvbiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzc05hbWU9XCJzaXplLTYgc2hyaW5rLTBcIiAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpdGVtLm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgPC9uYXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L0RpYWxvZ1BhbmVsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvRGlhbG9nPlxuXG4gICAgICB7LyogU3RhdGljIHNpZGViYXIgZm9yIGRlc2t0b3AgKi99XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImhpZGRlbiBsZzpmaXhlZCBsZzppbnNldC15LTAgbGc6bGVmdC0wIGxnOnotNTAgbGc6YmxvY2sgbGc6dy0yMCBsZzpvdmVyZmxvdy15LWF1dG8gbGc6YmctZ3JheS05MDAgbGc6cGItNFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaC0xNiBzaHJpbmstMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgICA8aW1nXG4gICAgICAgICAgICBhbHQ9XCJZb3VyIENvbXBhbnlcIlxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiaC04IHctYXV0b1wiXG4gICAgICAgICAgICBzcmM9XCJodHRwczovL3RhaWx3aW5kY3NzLmNvbS9wbHVzLWFzc2V0cy9pbWcvbG9nb3MvbWFyay5zdmc/Y29sb3I9aW5kaWdvJnNoYWRlPTUwMFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuYXYgY2xhc3NOYW1lPVwibXQtOFwiPlxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciBzcGFjZS15LTFcIiByb2xlPVwibGlzdFwiPlxuICAgICAgICAgICAge3NpZGVNZW51SXRlbXM/Lm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgICAgICA8bGkga2V5PXtpdGVtLm5hbWV9PlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgICAgICAgICAgICBpdGVtLmN1cnJlbnQgPyAnYmctZ3JheS04MDAgdGV4dC13aGl0ZScgOiAndGV4dC1ncmF5LTQwMCBob3ZlcjpiZy1ncmF5LTgwMCBob3Zlcjp0ZXh0LXdoaXRlJyxcbiAgICAgICAgICAgICAgICAgICAgJ2dyb3VwIGZsZXggZ2FwLXgtMyByb3VuZGVkLW1kIHAtMyB0ZXh0LXNtLzYgZm9udC1zZW1pYm9sZCdcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICBocmVmPXtpdGVtLmhyZWZ9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2l0ZW0uaWNvbiAmJiA8aXRlbS5pY29uIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzTmFtZT1cInNpemUtNiBzaHJpbmstMFwiIC8+fVxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPntpdGVtLm5hbWV9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvbmF2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGc6cGwtMjBcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzdGlja3kgdG9wLTAgei00MCBmbGV4IGgtMTYgc2hyaW5rLTAgaXRlbXMtY2VudGVyIGdhcC14LTQgYm9yZGVyLWIgYm9yZGVyLWdyYXktMjAwIGJnLXdoaXRlIHB4LTQgc2hhZG93LXhzIHNtOmdhcC14LTYgc206cHgtNiBsZzpweC04XCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzc05hbWU9XCItbS0yLjUgcC0yLjUgdGV4dC1ncmF5LTcwMCBsZzpoaWRkZW5cIiBvbkNsaWNrPXsoKSA9PiBzZXRTaWRlYmFyT3Blbih0cnVlKX0gdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPk9wZW4gc2lkZWJhcjwvc3Bhbj5cbiAgICAgICAgICAgIDxCYXJzMyBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzc05hbWU9XCJzaXplLTZcIiAvPlxuICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgey8qIFNlcGFyYXRvciAqL31cbiAgICAgICAgICA8ZGl2IGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzTmFtZT1cImgtNiB3LXB4IGJnLWdyYXktOTAwLzEwIGxnOmhpZGRlblwiIC8+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggZmxleC0xIGdhcC14LTQgc2VsZi1zdHJldGNoIGxnOmdhcC14LTZcIj5cbiAgICAgICAgICAgIDxmb3JtIGFjdGlvbj1cIiNcIiBjbGFzc05hbWU9XCJncmlkIGZsZXgtMSBncmlkLWNvbHMtMVwiIG1ldGhvZD1cIkdFVFwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoXCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJjb2wtc3RhcnQtMSByb3ctc3RhcnQtMSBibG9jayBzaXplLWZ1bGwgYmctd2hpdGUgcGwtOCB0ZXh0LWJhc2UgdGV4dC1ncmF5LTkwMCBvdXRsaW5lLWhpZGRlbiBwbGFjZWhvbGRlcjp0ZXh0LWdyYXktNDAwIHNtOnRleHQtc20vNlwiXG4gICAgICAgICAgICAgICAgbmFtZT1cInNlYXJjaFwiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8U2VhcmNoXG4gICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJwb2ludGVyLWV2ZW50cy1ub25lIGNvbC1zdGFydC0xIHJvdy1zdGFydC0xIHNpemUtNSBzZWxmLWNlbnRlciB0ZXh0LWdyYXktNDAwXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLXgtNCBsZzpnYXAteC02XCI+XG4gICAgICAgICAgICAgIDxidXR0b24gY2xhc3NOYW1lPVwiLW0tMi41IHAtMi41IHRleHQtZ3JheS00MDAgaG92ZXI6dGV4dC1ncmF5LTUwMFwiIHR5cGU9XCJidXR0b25cIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+VmlldyBub3RpZmljYXRpb25zPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxCZWxsIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzTmFtZT1cInNpemUtNlwiIC8+XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgIHsvKiBTZXBhcmF0b3IgKi99XG4gICAgICAgICAgICAgIDxkaXYgYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3NOYW1lPVwiaGlkZGVuIGxnOmJsb2NrIGxnOmgtNiBsZzp3LXB4IGxnOmJnLWdyYXktOTAwLzEwXCIgLz5cblxuICAgICAgICAgICAgICB7LyogUHJvZmlsZSBkcm9wZG93biAqL31cbiAgICAgICAgICAgICAgPE1lbnUgYXM9XCJkaXZcIiBjbGFzc05hbWU9XCJyZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgIDxNZW51QnV0dG9uIGNsYXNzTmFtZT1cIi1tLTEuNSBmbGV4IGl0ZW1zLWNlbnRlciBwLTEuNVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPk9wZW4gdXNlciBtZW51PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICBhbHQ9XCJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzaXplLTggcm91bmRlZC1mdWxsIGJnLWdyYXktNTBcIlxuICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2ltYWdlcy51bnNwbGFzaC5jb20vcGhvdG8tMTQ3MjA5OTY0NTc4NS01NjU4YWJmNGZmNGU/aXhsaWI9cmItMS4yLjEmaXhpZD1leUpoY0hCZmFXUWlPakV5TURkOSZhdXRvPWZvcm1hdCZmaXQ9ZmFjZWFyZWEmZmFjZXBhZD0yJnc9MjU2Jmg9MjU2JnE9ODBcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImhpZGRlbiBsZzpmbGV4IGxnOml0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzc05hbWU9XCJtbC00IHRleHQtc20vNiBmb250LXNlbWlib2xkIHRleHQtZ3JheS05MDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICBUb20gQ29va1xuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxDaGV2cm9uRG93biBhcmlhLWhpZGRlbj1cInRydWVcIiBjbGFzc05hbWU9XCJtbC0yIHNpemUtNSB0ZXh0LWdyYXktNDAwXCIgLz5cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L01lbnVCdXR0b24+XG4gICAgICAgICAgICAgICAgPE1lbnVJdGVtc1xuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiYWJzb2x1dGUgcmlnaHQtMCB6LTEwIG10LTIuNSB3LTMyIG9yaWdpbi10b3AtcmlnaHQgcm91bmRlZC1tZCBiZy13aGl0ZSBweS0yIHJpbmctMSBzaGFkb3ctbGcgcmluZy1ncmF5LTkwMC81IHRyYW5zaXRpb24gZm9jdXM6b3V0bGluZS1oaWRkZW4gZGF0YS1jbG9zZWQ6c2NhbGUtOTUgZGF0YS1jbG9zZWQ6dHJhbnNmb3JtIGRhdGEtY2xvc2VkOm9wYWNpdHktMCBkYXRhLWVudGVyOmR1cmF0aW9uLTEwMCBkYXRhLWVudGVyOmVhc2Utb3V0IGRhdGEtbGVhdmU6ZHVyYXRpb24tNzUgZGF0YS1sZWF2ZTplYXNlLWluXCJcbiAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb25cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7dXNlck1lbnVJdGVtcz8ubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgIDxNZW51SXRlbSBrZXk9e2l0ZW0ubmFtZX0+XG4gICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImJsb2NrIHB4LTMgcHktMSB0ZXh0LXNtLzYgdGV4dC1ncmF5LTkwMCBkYXRhLWZvY3VzOmJnLWdyYXktNTAgZGF0YS1mb2N1czpvdXRsaW5lLWhpZGRlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBocmVmPXtpdGVtLmhyZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge2l0ZW0ubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICA8L01lbnVJdGVtcz5cbiAgICAgICAgICAgICAgPC9NZW51PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxtYWluIGNsYXNzTmFtZT1cInhsOnBsLTk2XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweC00IHB5LTEwIHNtOnB4LTYgbGc6cHgtOCBsZzpweS02XCI+PE91dGxldC8+PC9kaXY+XG4gICAgICAgIDwvbWFpbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuXG5leHBvcnQgY29uc3QgTWVudVZpZXcgPSBtZW1vKE1lbnVWaWV3Q29tcG9uZW50KTtcbk1lbnVWaWV3LmRpc3BsYXlOYW1lID0gJ01lbnVWaWV3JztcblxuZXhwb3J0IGRlZmF1bHQgTWVudVZpZXc7XG4iXSwibmFtZXMiOlsiRGlhbG9nIiwiRGlhbG9nQmFja2Ryb3AiLCJEaWFsb2dQYW5lbCIsIk1lbnUiLCJNZW51QnV0dG9uIiwiTWVudUl0ZW0iLCJNZW51SXRlbXMiLCJUcmFuc2l0aW9uQ2hpbGQiLCJjbiIsIkJhcnMzIiwiQmVsbCIsIkNhbGVuZGFyIiwiQ2hldnJvbkRvd24iLCJGaWxlcyIsIkZvbGRlciIsIkhvbWUiLCJQaWVDaGFydCIsIlNlYXJjaCIsIlVzZXJzIiwiWCIsIm1lbW8iLCJ1c2VTdGF0ZSIsIk91dGxldCIsIkNvbmZpZyIsInNpZGVNZW51SXRlbXMiLCJjdXJyZW50IiwiaHJlZiIsImljb24iLCJuYW1lIiwidXNlck1lbnVJdGVtcyIsIk1lbnVWaWV3Q29tcG9uZW50Iiwic2lkZWJhck9wZW4iLCJzZXRTaWRlYmFyT3BlbiIsImFwcCIsImdldCIsImRpdiIsImNsYXNzTmFtZSIsIm9uQ2xvc2UiLCJvcGVuIiwidHJhbnNpdGlvbiIsImJ1dHRvbiIsIm9uQ2xpY2siLCJ0eXBlIiwic3BhbiIsImFyaWEtaGlkZGVuIiwiaW1nIiwiYWx0IiwidGl0bGUiLCJzcmMiLCJsb2dvIiwibmF2IiwidWwiLCJyb2xlIiwibWFwIiwiaXRlbSIsImxpIiwiYSIsImZvcm0iLCJhY3Rpb24iLCJtZXRob2QiLCJpbnB1dCIsImFyaWEtbGFiZWwiLCJwbGFjZWhvbGRlciIsImFzIiwibWFpbiIsIk1lbnVWaWV3IiwiZGlzcGxheU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOztBQUNBLFNBQ0VBLE1BQU0sRUFDTkMsY0FBYyxFQUNkQyxXQUFXLEVBQ1hDLElBQUksRUFDSkMsVUFBVSxFQUNWQyxRQUFRLEVBQ1JDLFNBQVMsRUFDVEMsZUFBZSxRQUNWLG9CQUFvQjtBQUMzQixTQUFRQyxFQUFFLFFBQU8sZUFBZTtBQUNoQyxTQUNFTCxRQUFRTSxLQUFLLEVBQ2JDLElBQUksRUFDSkMsUUFBUSxFQUNSQyxXQUFXLEVBQ1hDLEtBQUssRUFDTEMsTUFBTSxFQUNOQyxJQUFJLEVBQ0pDLFFBQVEsRUFDUkMsTUFBTSxFQUNOQyxLQUFLLEVBQ0xDLENBQUMsUUFDSSxlQUFlO0FBQ3RCLFNBQVFDLElBQUksRUFBRUMsUUFBUSxRQUFPLFFBQVE7QUFDckMsU0FBUUMsTUFBTSxRQUFPLGVBQWU7QUFFcEMsU0FBUUMsTUFBTSxRQUFPLDRCQUE0QjtBQUtqRCxNQUFNQyxnQkFBNkI7SUFDakM7UUFBQ0MsU0FBUztRQUFNQyxNQUFNO1FBQUtDLE1BQU1aO1FBQU1hLE1BQU07SUFBVztJQUN4RDtRQUFDSCxTQUFTO1FBQU9DLE1BQU07UUFBS0MsTUFBTVQ7UUFBT1UsTUFBTTtJQUFNO0lBQ3JEO1FBQUNILFNBQVM7UUFBT0MsTUFBTTtRQUFLQyxNQUFNYjtRQUFRYyxNQUFNO0lBQVU7SUFDMUQ7UUFBQ0gsU0FBUztRQUFPQyxNQUFNO1FBQUtDLE1BQU1oQjtRQUFVaUIsTUFBTTtJQUFVO0lBQzVEO1FBQUNILFNBQVM7UUFBT0MsTUFBTTtRQUFLQyxNQUFNZDtRQUFPZSxNQUFNO0lBQVc7SUFDMUQ7UUFBQ0gsU0FBUztRQUFPQyxNQUFNO1FBQUtDLE1BQU1YO1FBQVVZLE1BQU07SUFBUztDQUM1RDtBQUVELE1BQU1DLGdCQUE2QjtJ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
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2018-Present, Nitrogen Labs, Inc.
|
|
4
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
5
|
+
*/ import { memo } from 'react';
|
|
6
|
+
import { NotFound } from '../../components/NotFound/NotFound.js';
|
|
7
|
+
const NotFoundViewComponent = ()=>/*#__PURE__*/ _jsx(NotFound, {});
|
|
8
|
+
export const NotFoundView = /*#__PURE__*/ memo(NotFoundViewComponent);
|
|
9
|
+
NotFoundView.displayName = 'NotFoundView';
|
|
10
|
+
export default NotFoundView;
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy92aWV3cy9Ob3RGb3VuZFZpZXcvTm90Rm91bmRWaWV3LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHttZW1vfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7Tm90Rm91bmR9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvTm90Rm91bmQvTm90Rm91bmQuanMnO1xuXG5pbXBvcnQgdHlwZSB7RkN9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgTm90Rm91bmRWaWV3Q29tcG9uZW50OiBGQyA9ICgpID0+IDxOb3RGb3VuZCAvPjtcblxuXG5leHBvcnQgY29uc3QgTm90Rm91bmRWaWV3ID0gbWVtbyhOb3RGb3VuZFZpZXdDb21wb25lbnQpO1xuTm90Rm91bmRWaWV3LmRpc3BsYXlOYW1lID0gJ05vdEZvdW5kVmlldyc7XG5cbmV4cG9ydCBkZWZhdWx0IE5vdEZvdW5kVmlldztcbiJdLCJuYW1lcyI6WyJtZW1vIiwiTm90Rm91bmQiLCJOb3RGb3VuZFZpZXdDb21wb25lbnQiLCJOb3RGb3VuZFZpZXciLCJkaXNwbGF5TmFtZSJdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Q0FHQyxHQUNELFNBQVFBLElBQUksUUFBTyxRQUFRO0FBRTNCLFNBQVFDLFFBQVEsUUFBTyx3Q0FBd0M7QUFJL0QsTUFBTUMsd0JBQTRCLGtCQUFNLEtBQUNEO0FBR3pDLE9BQU8sTUFBTUUsNkJBQWVILEtBQUtFLHVCQUF1QjtBQUN4REMsYUFBYUMsV0FBVyxHQUFHO0FBRTNCLGVBQWVELGFBQWEifQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './AuthSignInView/AuthSignInView.js';
|
|
2
|
+
export * from './AuthSignUpView/AuthSignUpView.js';
|
|
3
|
+
export * from './AuthView/AuthView.js';
|
|
4
|
+
export * from './DefaultView/DefaultView.js';
|
|
5
|
+
export * from './Gotham/Gotham.js';
|
|
6
|
+
export * from './Gotham/GothamProvider.js';
|
|
7
|
+
export { GothamRoot } from './Gotham/GothamRoot.js';
|
|
8
|
+
export * from './HomeView/HomeView.js';
|
|
9
|
+
export * from './LoaderView/LoaderView.js';
|
|
10
|
+
export * from './MenuView/MenuView.js';
|
|
11
|
+
export * from './NotFoundView/NotFoundView.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './AuthSignInView/AuthSignInView.js';
|
|
2
|
+
export * from './AuthSignUpView/AuthSignUpView.js';
|
|
3
|
+
export * from './AuthView/AuthView.js';
|
|
4
|
+
export * from './DefaultView/DefaultView.js';
|
|
5
|
+
export * from './Gotham/Gotham.js';
|
|
6
|
+
export * from './Gotham/GothamProvider.js';
|
|
7
|
+
export { GothamRoot } from './Gotham/GothamRoot.js';
|
|
8
|
+
export * from './HomeView/HomeView.js';
|
|
9
|
+
export * from './LoaderView/LoaderView.js';
|
|
10
|
+
export * from './MenuView/MenuView.js';
|
|
11
|
+
export * from './NotFoundView/NotFoundView.js';
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy92aWV3cy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0F1dGhTaWduSW5WaWV3L0F1dGhTaWduSW5WaWV3LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vQXV0aFNpZ25VcFZpZXcvQXV0aFNpZ25VcFZpZXcuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9BdXRoVmlldy9BdXRoVmlldy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL0RlZmF1bHRWaWV3L0RlZmF1bHRWaWV3LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vR290aGFtL0dvdGhhbS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL0dvdGhhbS9Hb3RoYW1Qcm92aWRlci5qcyc7XG5leHBvcnQge0dvdGhhbVJvb3R9IGZyb20gJy4vR290aGFtL0dvdGhhbVJvb3QuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9Ib21lVmlldy9Ib21lVmlldy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL0xvYWRlclZpZXcvTG9hZGVyVmlldy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL01lbnVWaWV3L01lbnVWaWV3LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vTm90Rm91bmRWaWV3L05vdEZvdW5kVmlldy5qcyc7XG4iXSwibmFtZXMiOlsiR290aGFtUm9vdCJdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUM7QUFDbkQsY0FBYyxxQ0FBcUM7QUFDbkQsY0FBYyx5QkFBeUI7QUFDdkMsY0FBYywrQkFBK0I7QUFDN0MsY0FBYyxxQkFBcUI7QUFDbkMsY0FBYyw2QkFBNkI7QUFDM0MsU0FBUUEsVUFBVSxRQUFPLHlCQUF5QjtBQUNsRCxjQUFjLHlCQUF5QjtBQUN2QyxjQUFjLDZCQUE2QjtBQUMzQyxjQUFjLHlCQUF5QjtBQUN2QyxjQUFjLGlDQUFpQyJ9
|
package/package.json
ADDED
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@nlabs/gothamui",
|
|
3
|
+
"version": "1.8.0",
|
|
4
|
+
"description": "React 19 UI framework with accessible components, routing, forms, i18n, responsive navigation, and Tailwind CSS v4 theming.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"main": "lib/index.js",
|
|
8
|
+
"module": "lib/index.js",
|
|
9
|
+
"browser": "lib/index.js",
|
|
10
|
+
"types": "lib/index.d.ts",
|
|
11
|
+
"files": [
|
|
12
|
+
"lib",
|
|
13
|
+
"styles",
|
|
14
|
+
"README.md",
|
|
15
|
+
"LICENSE",
|
|
16
|
+
"MIGRATION.md",
|
|
17
|
+
"docs/assets",
|
|
18
|
+
"docs/render-performance.md"
|
|
19
|
+
],
|
|
20
|
+
"exports": {
|
|
21
|
+
".": {
|
|
22
|
+
"types": "./lib/index.d.ts",
|
|
23
|
+
"import": "./lib/index.js",
|
|
24
|
+
"default": "./lib/index.js"
|
|
25
|
+
},
|
|
26
|
+
"./components": {
|
|
27
|
+
"types": "./lib/components/index.d.ts",
|
|
28
|
+
"import": "./lib/components/index.js",
|
|
29
|
+
"default": "./lib/components/index.js"
|
|
30
|
+
},
|
|
31
|
+
"./editor": {
|
|
32
|
+
"types": "./lib/editor/index.d.ts",
|
|
33
|
+
"import": "./lib/editor/index.js",
|
|
34
|
+
"default": "./lib/editor/index.js"
|
|
35
|
+
},
|
|
36
|
+
"./icons": {
|
|
37
|
+
"types": "./lib/icons/index.d.ts",
|
|
38
|
+
"import": "./lib/icons/index.js",
|
|
39
|
+
"default": "./lib/icons/index.js"
|
|
40
|
+
},
|
|
41
|
+
"./i18n": {
|
|
42
|
+
"types": "./lib/i18n/index.d.ts",
|
|
43
|
+
"import": "./lib/i18n/index.js",
|
|
44
|
+
"default": "./lib/i18n/index.js"
|
|
45
|
+
},
|
|
46
|
+
"./router": {
|
|
47
|
+
"types": "./lib/router/index.d.ts",
|
|
48
|
+
"import": "./lib/router/index.js",
|
|
49
|
+
"default": "./lib/router/index.js"
|
|
50
|
+
},
|
|
51
|
+
"./views": {
|
|
52
|
+
"types": "./lib/views/index.d.ts",
|
|
53
|
+
"import": "./lib/views/index.js",
|
|
54
|
+
"default": "./lib/views/index.js"
|
|
55
|
+
},
|
|
56
|
+
"./form": {
|
|
57
|
+
"types": "./lib/form/index.d.ts",
|
|
58
|
+
"import": "./lib/form/index.js",
|
|
59
|
+
"default": "./lib/form/index.js"
|
|
60
|
+
},
|
|
61
|
+
"./chat": {
|
|
62
|
+
"types": "./lib/components/Chat/index.d.ts",
|
|
63
|
+
"import": "./lib/components/Chat/index.js",
|
|
64
|
+
"default": "./lib/components/Chat/index.js"
|
|
65
|
+
},
|
|
66
|
+
"./styles/tailwind.css": {
|
|
67
|
+
"default": "./lib/styles/tailwind.css"
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"keywords": [
|
|
71
|
+
"accessibility",
|
|
72
|
+
"arkhamjs",
|
|
73
|
+
"code-editor",
|
|
74
|
+
"component-library",
|
|
75
|
+
"design-system",
|
|
76
|
+
"documentation",
|
|
77
|
+
"flux",
|
|
78
|
+
"forms",
|
|
79
|
+
"gothamui",
|
|
80
|
+
"i18n",
|
|
81
|
+
"markdown",
|
|
82
|
+
"nitrogenlabs",
|
|
83
|
+
"react",
|
|
84
|
+
"react-19",
|
|
85
|
+
"responsive",
|
|
86
|
+
"router",
|
|
87
|
+
"tailwindcss",
|
|
88
|
+
"tailwindcss-v4",
|
|
89
|
+
"typescript",
|
|
90
|
+
"ui"
|
|
91
|
+
],
|
|
92
|
+
"author": {
|
|
93
|
+
"name": "Giraldo Rosales",
|
|
94
|
+
"email": "giraldo@nitrogenx.co",
|
|
95
|
+
"url": "http://nitrogenlabs.com"
|
|
96
|
+
},
|
|
97
|
+
"repository": {
|
|
98
|
+
"type": "git",
|
|
99
|
+
"url": "git+https://github.com/nitrogenlabs/gothamui.git"
|
|
100
|
+
},
|
|
101
|
+
"homepage": "https://gothamui.nitrogenx.co",
|
|
102
|
+
"bugs": {
|
|
103
|
+
"url": "https://github.com/nitrogenlabs/gothamui/issues"
|
|
104
|
+
},
|
|
105
|
+
"scripts": {
|
|
106
|
+
"build": "npm run tailwind:build && lex compile --remove --config ./tsconfig.build.json && npm run sync:tailwind-lib",
|
|
107
|
+
"build:dev": "npm run tailwind:build && NODE_ENV=development lex compile --remove --config ./tsconfig.build.json && npm run sync:tailwind-lib",
|
|
108
|
+
"clean": "lex clean",
|
|
109
|
+
"dev": "npm run tailwind:build && npm run sync:tailwind-lib && lex dev",
|
|
110
|
+
"lint": "lex lint --fix",
|
|
111
|
+
"prepublishOnly": "npm test && npm run build",
|
|
112
|
+
"publish:major": "npm version major && npm run publish:tags && npm publish",
|
|
113
|
+
"publish:minor": "npm version minor && npm run publish:tags && npm publish",
|
|
114
|
+
"publish:patch": "npm version patch && npm run publish:tags && npm publish",
|
|
115
|
+
"publish:tags": "git push --tags && git push origin HEAD",
|
|
116
|
+
"start": "npm run tailwind:build && npm run sync:tailwind-lib && lex dev -r -o",
|
|
117
|
+
"test": "lex test --config ./vitest.config.mts",
|
|
118
|
+
"update": "lex update --interactive",
|
|
119
|
+
"watch": "lex compile -w",
|
|
120
|
+
"storybook": "npm run tailwind:build && npm run sync:tailwind-lib && lex storybook",
|
|
121
|
+
"sync:tailwind-lib": "node -e \"const fs=require('fs'); fs.mkdirSync('./lib/styles',{recursive:true}); fs.writeFileSync('./lib/styles/tailwind.css','@import \\\"./index.css\\\";\\n');\"",
|
|
122
|
+
"tailwind:build": "npx @tailwindcss/cli -i ./src/styles/tailwind.css -o ./src/styles/index.css",
|
|
123
|
+
"tailwind:watch": "npx @tailwindcss/cli -i ./src/styles/tailwind.css -o ./src/styles/index.css --watch",
|
|
124
|
+
"deprecate:gothamjs": "node scripts/deprecate-gothamjs.mjs"
|
|
125
|
+
},
|
|
126
|
+
"browserslist": [
|
|
127
|
+
"> 5%",
|
|
128
|
+
"last 2 versions"
|
|
129
|
+
],
|
|
130
|
+
"dependencies": {
|
|
131
|
+
"@headlessui/react": "^2.2.10",
|
|
132
|
+
"@monaco-editor/react": "^4.8.0-rc.3",
|
|
133
|
+
"@nlabs/rip-hunter": "^3.1.2",
|
|
134
|
+
"@nlabs/utils": "^2.10.7",
|
|
135
|
+
"autosuggest-highlight": "^3.3.4",
|
|
136
|
+
"cropperjs": "^2.2.0",
|
|
137
|
+
"hast-util-sanitize": "5.0.2",
|
|
138
|
+
"highlight.js": "^11.12.0",
|
|
139
|
+
"history": "^5.3.0",
|
|
140
|
+
"i18next": "^26.4.1",
|
|
141
|
+
"lucide-react": "^1.39.0",
|
|
142
|
+
"monaco-editor": "^0.56.0",
|
|
143
|
+
"progressbar.js": "^1.1.1",
|
|
144
|
+
"react-autosuggest": "^10.1.0",
|
|
145
|
+
"react-cropper": "^2.3.3",
|
|
146
|
+
"react-i18next": "^17.0.13",
|
|
147
|
+
"react-markdown": "^10.1.0",
|
|
148
|
+
"react-router": "^8.3.1",
|
|
149
|
+
"react-spinkit": "^3.0.0",
|
|
150
|
+
"react-tag-autocomplete": "^7.5.1",
|
|
151
|
+
"react-transition-group": "^4.4.5",
|
|
152
|
+
"rehype-react": "^8.0.0",
|
|
153
|
+
"yet-another-react-lightbox": "^3.32.2",
|
|
154
|
+
"zod": "^4.5.4"
|
|
155
|
+
},
|
|
156
|
+
"devDependencies": {
|
|
157
|
+
"@nlabs/arkhamjs": "^3.31.15",
|
|
158
|
+
"@nlabs/arkhamjs-middleware-logger": "^3.30.11",
|
|
159
|
+
"@nlabs/arkhamjs-storage-browser": "^3.30.11",
|
|
160
|
+
"@nlabs/arkhamjs-utils-react": "^3.32.12",
|
|
161
|
+
"@nlabs/lex": "2.0.6",
|
|
162
|
+
"@storybook/addon-docs": "10.6.0",
|
|
163
|
+
"@storybook/addon-links": "10.6.0",
|
|
164
|
+
"@storybook/addon-themes": "10.6.0",
|
|
165
|
+
"@storybook/react-vite": "10.6.0",
|
|
166
|
+
"@tailwindcss/cli": "^4.3.3",
|
|
167
|
+
"@types/history": "^5.0.0",
|
|
168
|
+
"@types/jest": "^30.0.0",
|
|
169
|
+
"@types/node": "^26.4.1",
|
|
170
|
+
"@types/progressbar.js": "^1.1.7",
|
|
171
|
+
"@types/react": "^19.2.18",
|
|
172
|
+
"@types/react-dom": "^19.2.5",
|
|
173
|
+
"react": "^19.2.8",
|
|
174
|
+
"react-dom": "^19.2.8",
|
|
175
|
+
"tailwindcss": "^4.3.3",
|
|
176
|
+
"typescript": "^7.0.2"
|
|
177
|
+
},
|
|
178
|
+
"peerDependencies": {
|
|
179
|
+
"@nlabs/arkhamjs": "^3.31.4",
|
|
180
|
+
"@nlabs/arkhamjs-middleware-logger": "^3.30.2",
|
|
181
|
+
"@nlabs/arkhamjs-storage-browser": "^3.30.1",
|
|
182
|
+
"@nlabs/arkhamjs-utils-react": "^3.32.3",
|
|
183
|
+
"react": "^19.0.0",
|
|
184
|
+
"react-dom": "^19.0.0"
|
|
185
|
+
},
|
|
186
|
+
"overrides": {
|
|
187
|
+
"cross-spawn": "^7.0.6",
|
|
188
|
+
"http-proxy-middleware": "^3.0.5",
|
|
189
|
+
"minimatch@9.0.9": {
|
|
190
|
+
"brace-expansion": "^2.1.4"
|
|
191
|
+
},
|
|
192
|
+
"postcss-url": {
|
|
193
|
+
"minimatch": "3.1.5"
|
|
194
|
+
},
|
|
195
|
+
"semver-regex": "^4.0.5",
|
|
196
|
+
"tmp": "^0.2.7",
|
|
197
|
+
"uuid": "^11.1.1"
|
|
198
|
+
},
|
|
199
|
+
"publishConfig": {
|
|
200
|
+
"access": "public"
|
|
201
|
+
}
|
|
202
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import "../lib/styles/tailwind.css";
|