@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,196 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { createElement as _createElement } from "react";
|
|
3
|
+
import { cn } from '@nlabs/utils';
|
|
4
|
+
import { ChevronDown as ArrowDown01Icon } from 'lucide-react';
|
|
5
|
+
import { memo, useEffect, useMemo, useRef, useState } from 'react';
|
|
6
|
+
import { MessageBox } from '../MessageBox/MessageBox.js';
|
|
7
|
+
const MessageListComponent = (listProps)=>{
|
|
8
|
+
const { referance = null, lockable = false, toBottomHeight = 300, downButton, ...props } = listProps;
|
|
9
|
+
const scrollBottom = useRef(0);
|
|
10
|
+
const [_downButton, setDownButton] = useState(false);
|
|
11
|
+
const prevProps = useRef(props);
|
|
12
|
+
const checkScroll = ()=>{
|
|
13
|
+
const e = referance;
|
|
14
|
+
if (!e || !e.current) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (toBottomHeight === '100%' || typeof toBottomHeight === 'number' && scrollBottom.current < toBottomHeight) {
|
|
18
|
+
e.current.scrollTop = e.current.scrollHeight; // scroll to bottom
|
|
19
|
+
} else {
|
|
20
|
+
if (lockable === true) {
|
|
21
|
+
e.current.scrollTop = e.current.scrollHeight - e.current.offsetHeight - scrollBottom.current;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
useEffect(()=>{
|
|
26
|
+
if (!referance) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (prevProps.current.dataSource.length !== props.dataSource.length) {
|
|
30
|
+
checkScroll();
|
|
31
|
+
scrollBottom.current = getBottom(referance);
|
|
32
|
+
}
|
|
33
|
+
prevProps.current = props;
|
|
34
|
+
}, [
|
|
35
|
+
prevProps,
|
|
36
|
+
props
|
|
37
|
+
]);
|
|
38
|
+
const getBottom = (e)=>{
|
|
39
|
+
if (e.current) {
|
|
40
|
+
return e.current.scrollHeight - e.current.scrollTop - e.current.offsetHeight;
|
|
41
|
+
}
|
|
42
|
+
return e.scrollHeight - e.scrollTop - e.offsetHeight;
|
|
43
|
+
};
|
|
44
|
+
const onOpen = (item, index, event)=>{
|
|
45
|
+
if (props.onOpen instanceof Function) {
|
|
46
|
+
props.onOpen(item, index, event);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const onDownload = (item, index, event)=>{
|
|
50
|
+
if (props.onDownload instanceof Function) {
|
|
51
|
+
props.onDownload(item, index, event);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
const onPhotoError = (item, index, event)=>{
|
|
55
|
+
if (props.onPhotoError instanceof Function) {
|
|
56
|
+
props.onPhotoError(item, index, event);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
const onClick = (item, index, event)=>{
|
|
60
|
+
if (props.onClick instanceof Function) {
|
|
61
|
+
props.onClick(item, index, event);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const onTitleClick = (item, index, event)=>{
|
|
65
|
+
if (props.onTitleClick instanceof Function) {
|
|
66
|
+
props.onTitleClick(item, index, event);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
const onForwardClick = (item, index, event)=>{
|
|
70
|
+
if (props.onForwardClick instanceof Function) {
|
|
71
|
+
props.onForwardClick(item, index, event);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const onReplyClick = (item, index, event)=>{
|
|
75
|
+
if (props.onReplyClick instanceof Function) {
|
|
76
|
+
props.onReplyClick(item, index, event);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
const onReplyMessageClick = (item, index, event)=>{
|
|
80
|
+
if (props.onReplyMessageClick instanceof Function) {
|
|
81
|
+
props.onReplyMessageClick(item, index, event);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const onRemoveMessageClick = (item, index, event)=>{
|
|
85
|
+
if (props.onRemoveMessageClick instanceof Function) {
|
|
86
|
+
props.onRemoveMessageClick(item, index, event);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
const onContextMenu = (item, index, event)=>{
|
|
90
|
+
if (props.onContextMenu instanceof Function) {
|
|
91
|
+
props.onContextMenu(item, index, event);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
const onMessageFocused = (item, index, event)=>{
|
|
95
|
+
if (props.onMessageFocused instanceof Function) {
|
|
96
|
+
props.onMessageFocused(item, index, event);
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
const onMeetingMessageClick = (item, index, event)=>{
|
|
100
|
+
if (props.onMeetingMessageClick instanceof Function) {
|
|
101
|
+
props.onMeetingMessageClick(item, index, event);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
const onScroll = (e)=>{
|
|
105
|
+
const bottom = getBottom(e.currentTarget);
|
|
106
|
+
scrollBottom.current = bottom;
|
|
107
|
+
if (toBottomHeight === '100%' || typeof toBottomHeight === 'number' && bottom > toBottomHeight) {
|
|
108
|
+
if (_downButton !== true) {
|
|
109
|
+
setDownButton(true);
|
|
110
|
+
}
|
|
111
|
+
} else {
|
|
112
|
+
if (_downButton !== false) {
|
|
113
|
+
setDownButton(false);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (props.onScroll instanceof Function) {
|
|
117
|
+
props.onScroll(e);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
const toBottom = (e)=>{
|
|
121
|
+
if (!referance) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
referance.current.scrollTop = referance.current.scrollHeight;
|
|
125
|
+
if (props.onDownButtonClick instanceof Function) {
|
|
126
|
+
props.onDownButtonClick(e);
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
const onMeetingMoreSelect = (item, i, e)=>{
|
|
130
|
+
if (props.onMeetingMoreSelect instanceof Function) {
|
|
131
|
+
props.onMeetingMoreSelect(item, i, e);
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
const onMeetingLinkClick = (item, i, e)=>{
|
|
135
|
+
if (props.onMeetingLinkClick instanceof Function) {
|
|
136
|
+
props.onMeetingLinkClick(item, i, e);
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
const messages = useMemo(()=>props.dataSource.map((x, i)=>/*#__PURE__*/ _createElement(MessageBox, {
|
|
140
|
+
...x,
|
|
141
|
+
// data={x}
|
|
142
|
+
actionButtons: props.actionButtons,
|
|
143
|
+
key: x.id ?? i,
|
|
144
|
+
notchStyle: props.notchStyle,
|
|
145
|
+
onClick: props.onClick && ((e)=>onClick(x, i, e)),
|
|
146
|
+
onContextMenu: props.onContextMenu && ((e)=>onContextMenu(x, i, e)),
|
|
147
|
+
onDownload: props.onDownload && ((e)=>onDownload(x, i, e)),
|
|
148
|
+
onForwardClick: props.onForwardClick && ((e)=>onForwardClick(x, i, e)),
|
|
149
|
+
onMeetingLinkClick: props.onMeetingLinkClick && ((e)=>onMeetingLinkClick(x, i, e)),
|
|
150
|
+
onMeetingMessageClick: props.onMeetingMessageClick && ((e)=>onMeetingMessageClick(x, i, e)),
|
|
151
|
+
onMeetingMoreSelect: props.onMeetingMoreSelect && ((e)=>onMeetingMoreSelect(x, i, e)),
|
|
152
|
+
onMeetingTitleClick: props.onMeetingTitleClick,
|
|
153
|
+
onMeetingVideoLinkClick: props.onMeetingVideoLinkClick,
|
|
154
|
+
onMessageFocused: props.onMessageFocused && ((e)=>onMessageFocused(x, i, e)),
|
|
155
|
+
onOpen: props.onOpen && ((e)=>onOpen(x, i, e)),
|
|
156
|
+
onPhotoError: props.onPhotoError && ((e)=>onPhotoError(x, i, e)),
|
|
157
|
+
onRemoveMessageClick: props.onRemoveMessageClick && ((e)=>onRemoveMessageClick(x, i, e)),
|
|
158
|
+
onReplyClick: props.onReplyClick && ((e)=>onReplyClick(x, i, e)),
|
|
159
|
+
onReplyMessageClick: props.onReplyMessageClick && ((e)=>onReplyMessageClick(x, i, e)),
|
|
160
|
+
onTitleClick: props.onTitleClick && ((e)=>onTitleClick(x, i, e)),
|
|
161
|
+
styles: props.messageBoxStyles
|
|
162
|
+
})), [
|
|
163
|
+
listProps
|
|
164
|
+
]);
|
|
165
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
166
|
+
className: cn([
|
|
167
|
+
'rce-container-mlist',
|
|
168
|
+
props.className
|
|
169
|
+
]),
|
|
170
|
+
...props.customProps,
|
|
171
|
+
children: [
|
|
172
|
+
!!props.children && props.isShowChild && props.children,
|
|
173
|
+
/*#__PURE__*/ _jsx("div", {
|
|
174
|
+
className: "rce-mlist",
|
|
175
|
+
onScroll: onScroll,
|
|
176
|
+
ref: referance,
|
|
177
|
+
children: messages
|
|
178
|
+
}),
|
|
179
|
+
downButton === true && _downButton && toBottomHeight !== '100%' && /*#__PURE__*/ _jsxs("div", {
|
|
180
|
+
className: "rce-mlist-down-button",
|
|
181
|
+
onClick: toBottom,
|
|
182
|
+
children: [
|
|
183
|
+
/*#__PURE__*/ _jsx(ArrowDown01Icon, {}),
|
|
184
|
+
props.downButtonBadge !== undefined ? /*#__PURE__*/ _jsx("span", {
|
|
185
|
+
className: "rce-mlist-down-button--badge",
|
|
186
|
+
children: props.downButtonBadge.toString()
|
|
187
|
+
}) : null
|
|
188
|
+
]
|
|
189
|
+
})
|
|
190
|
+
]
|
|
191
|
+
});
|
|
192
|
+
};
|
|
193
|
+
export const MessageList = /*#__PURE__*/ memo(MessageListComponent);
|
|
194
|
+
MessageList.displayName = 'MessageList';
|
|
195
|
+
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvTWVzc2FnZUxpc3QvTWVzc2FnZUxpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y259IGZyb20gJ0BubGFicy91dGlscyc7XG5pbXBvcnQge0NoZXZyb25Eb3duIGFzIEFycm93RG93bjAxSWNvbn0gZnJvbSAnbHVjaWRlLXJlYWN0JztcbmltcG9ydCB7bWVtbywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7TWVzc2FnZUJveH0gZnJvbSAnLi4vTWVzc2FnZUJveC9NZXNzYWdlQm94LmpzJztcblxuaW1wb3J0IHR5cGUge0ZDfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7SU1lc3NhZ2VMaXN0UHJvcHMsIE1lc3NhZ2VMaXN0RXZlbnR9IGZyb20gJy4uL3R5cGUnO1xuXG5jb25zdCBNZXNzYWdlTGlzdENvbXBvbmVudDogRkM8SU1lc3NhZ2VMaXN0UHJvcHM+ID0gKGxpc3RQcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgcmVmZXJhbmNlID0gbnVsbCxcbiAgICBsb2NrYWJsZSA9IGZhbHNlLFxuICAgIHRvQm90dG9tSGVpZ2h0ID0gMzAwLFxuICAgIGRvd25CdXR0b24sXG4gICAgLi4ucHJvcHNcbiAgfSA9IGxpc3RQcm9wcztcbiAgY29uc3Qgc2Nyb2xsQm90dG9tID0gdXNlUmVmKDApO1xuICBjb25zdCBbX2Rvd25CdXR0b24sIHNldERvd25CdXR0b25dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBwcmV2UHJvcHMgPSB1c2VSZWYocHJvcHMpO1xuXG4gIGNvbnN0IGNoZWNrU2Nyb2xsID0gKCkgPT4ge1xuICAgIGNvbnN0IGUgPSByZWZlcmFuY2U7XG4gICAgaWYoIWUgfHwgIWUuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmKHRvQm90dG9tSGVpZ2h0ID09PSAnMTAwJScgfHwgKHR5cGVvZiB0b0JvdHRvbUhlaWdodCA9PT0gJ251bWJlcicgJiYgc2Nyb2xsQm90dG9tLmN1cnJlbnQgPCB0b0JvdHRvbUhlaWdodCkpIHtcbiAgICAgIGUuY3VycmVudC5zY3JvbGxUb3AgPSBlLmN1cnJlbnQuc2Nyb2xsSGVpZ2h0OyAvLyBzY3JvbGwgdG8gYm90dG9tXG4gICAgfSBlbHNlIHtcbiAgICAgIGlmKGxvY2thYmxlID09PSB0cnVlKSB7XG4gICAgICAgIGUuY3VycmVudC5zY3JvbGxUb3AgPSBlLmN1cnJlbnQuc2Nyb2xsSGVpZ2h0IC0gZS5jdXJyZW50Lm9mZnNldEhlaWdodCAtIHNjcm9sbEJvdHRvbS5jdXJyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmKCFyZWZlcmFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZihwcmV2UHJvcHMuY3VycmVudC5kYXRhU291cmNlLmxlbmd0aCAhPT0gcHJvcHMuZGF0YVNvdXJjZS5sZW5ndGgpIHtcbiAgICAgIGNoZWNrU2Nyb2xsKCk7XG4gICAgICBzY3JvbGxCb3R0b20uY3VycmVudCA9IGdldEJvdHRvbShyZWZlcmFuY2UpO1xuICAgIH1cblxuICAgIHByZXZQcm9wcy5jdXJyZW50ID0gcHJvcHM7XG4gIH0sIFtwcmV2UHJvcHMsIHByb3BzXSk7XG5cbiAgY29uc3QgZ2V0Qm90dG9tID0gKGU6IGFueSkgPT4ge1xuICAgIGlmKGUuY3VycmVudCkge1xuICAgICAgcmV0dXJuIGUuY3VycmVudC5zY3JvbGxIZWlnaHQgLSBlLmN1cnJlbnQuc2Nyb2xsVG9wIC0gZS5jdXJyZW50Lm9mZnNldEhlaWdodDtcbiAgICB9XG4gICAgcmV0dXJuIGUuc2Nyb2xsSGVpZ2h0IC0gZS5zY3JvbGxUb3AgLSBlLm9mZnNldEhlaWdodDtcbiAgfTtcblxuICBjb25zdCBvbk9wZW46IE1lc3NhZ2VMaXN0RXZlbnQgPSAoaXRlbSwgaW5kZXgsIGV2ZW50KSA9PiB7XG4gICAgaWYocHJvcHMub25PcGVuIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uT3BlbihpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbkRvd25sb2FkOiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGluZGV4LCBldmVudCkgPT4ge1xuICAgIGlmKHByb3BzLm9uRG93bmxvYWQgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25Eb3dubG9hZChpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblBob3RvRXJyb3I6IE1lc3NhZ2VMaXN0RXZlbnQgPSAoaXRlbSwgaW5kZXgsIGV2ZW50KSA9PiB7XG4gICAgaWYocHJvcHMub25QaG90b0Vycm9yIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uUGhvdG9FcnJvcihpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbkNsaWNrOiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGluZGV4LCBldmVudCkgPT4ge1xuICAgIGlmKHByb3BzLm9uQ2xpY2sgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25DbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblRpdGxlQ2xpY2s6IE1lc3NhZ2VMaXN0RXZlbnQgPSAoaXRlbSwgaW5kZXgsIGV2ZW50KSA9PiB7XG4gICAgaWYocHJvcHMub25UaXRsZUNsaWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uVGl0bGVDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbkZvcndhcmRDbGljazogTWVzc2FnZUxpc3RFdmVudCA9IChpdGVtLCBpbmRleCwgZXZlbnQpID0+IHtcbiAgICBpZihwcm9wcy5vbkZvcndhcmRDbGljayBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgICBwcm9wcy5vbkZvcndhcmRDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblJlcGx5Q2xpY2s6IE1lc3NhZ2VMaXN0RXZlbnQgPSAoaXRlbSwgaW5kZXgsIGV2ZW50KSA9PiB7XG4gICAgaWYocHJvcHMub25SZXBseUNsaWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uUmVwbHlDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblJlcGx5TWVzc2FnZUNsaWNrOiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGluZGV4LCBldmVudCkgPT4ge1xuICAgIGlmKHByb3BzLm9uUmVwbHlNZXNzYWdlQ2xpY2sgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25SZXBseU1lc3NhZ2VDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblJlbW92ZU1lc3NhZ2VDbGljazogTWVzc2FnZUxpc3RFdmVudCA9IChpdGVtLCBpbmRleCwgZXZlbnQpID0+IHtcbiAgICBpZihwcm9wcy5vblJlbW92ZU1lc3NhZ2VDbGljayBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgICBwcm9wcy5vblJlbW92ZU1lc3NhZ2VDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbkNvbnRleHRNZW51OiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGluZGV4LCBldmVudCkgPT4ge1xuICAgIGlmKHByb3BzLm9uQ29udGV4dE1lbnUgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25Db250ZXh0TWVudShpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1lc3NhZ2VGb2N1c2VkOiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGluZGV4LCBldmVudCkgPT4ge1xuICAgIGlmKHByb3BzLm9uTWVzc2FnZUZvY3VzZWQgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25NZXNzYWdlRm9jdXNlZChpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1lZXRpbmdNZXNzYWdlQ2xpY2s6IE1lc3NhZ2VMaXN0RXZlbnQgPSAoaXRlbSwgaW5kZXgsIGV2ZW50KSA9PiB7XG4gICAgaWYocHJvcHMub25NZWV0aW5nTWVzc2FnZUNsaWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uTWVldGluZ01lc3NhZ2VDbGljayhpdGVtLCBpbmRleCwgZXZlbnQpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvblNjcm9sbCA9IChlOiBSZWFjdC5VSUV2ZW50PEhUTUxFbGVtZW50Pik6IHZvaWQgPT4ge1xuICAgIGNvbnN0IGJvdHRvbSA9IGdldEJvdHRvbShlLmN1cnJlbnRUYXJnZXQpO1xuICAgIHNjcm9sbEJvdHRvbS5jdXJyZW50ID0gYm90dG9tO1xuICAgIGlmKHRvQm90dG9tSGVpZ2h0ID09PSAnMTAwJScgfHwgKHR5cGVvZiB0b0JvdHRvbUhlaWdodCA9PT0gJ251bWJlcicgJiYgYm90dG9tID4gdG9Cb3R0b21IZWlnaHQpKSB7XG4gICAgICBpZihfZG93bkJ1dHRvbiAhPT0gdHJ1ZSkge1xuICAgICAgICBzZXREb3duQnV0dG9uKHRydWUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZihfZG93bkJ1dHRvbiAhPT0gZmFsc2UpIHtcbiAgICAgICAgc2V0RG93bkJ1dHRvbihmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYocHJvcHMub25TY3JvbGwgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgcHJvcHMub25TY3JvbGwoZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHRvQm90dG9tID0gKGU6IGFueSkgPT4ge1xuICAgIGlmKCFyZWZlcmFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcmVmZXJhbmNlLmN1cnJlbnQuc2Nyb2xsVG9wID0gcmVmZXJhbmNlLmN1cnJlbnQuc2Nyb2xsSGVpZ2h0O1xuICAgIGlmKHByb3BzLm9uRG93bkJ1dHRvbkNsaWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uRG93bkJ1dHRvbkNsaWNrKGUpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1lZXRpbmdNb3JlU2VsZWN0OiBNZXNzYWdlTGlzdEV2ZW50ID0gKGl0ZW0sIGksIGUpID0+IHtcbiAgICBpZihwcm9wcy5vbk1lZXRpbmdNb3JlU2VsZWN0IGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uTWVldGluZ01vcmVTZWxlY3QoaXRlbSwgaSwgZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uTWVldGluZ0xpbmtDbGljazogTWVzc2FnZUxpc3RFdmVudCA9IChpdGVtLCBpLCBlKSA9PiB7XG4gICAgaWYocHJvcHMub25NZWV0aW5nTGlua0NsaWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHByb3BzLm9uTWVldGluZ0xpbmtDbGljayhpdGVtLCBpLCBlKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgbWVzc2FnZXMgPSB1c2VNZW1vKCgpID0+IHByb3BzLmRhdGFTb3VyY2UubWFwKCh4LCBpOiBudW1iZXIpID0+IChcbiAgICA8TWVzc2FnZUJveFxuICAgICAgey4uLih4IGFzIGFueSl9XG4gICAgICAvLyBkYXRhPXt4fVxuICAgICAgYWN0aW9uQnV0dG9ucz17cHJvcHMuYWN0aW9uQnV0dG9uc31cbiAgICAgIGtleT17eC5pZCA/PyBpfVxuICAgICAgbm90Y2hTdHlsZT17cHJvcHMubm90Y2hTdHlsZX1cbiAgICAgIG9uQ2xpY2s9e3Byb3BzLm9uQ2xpY2sgJiYgKChlOiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50PikgPT4gb25DbGljayh4LCBpLCBlKSl9XG4gICAgICBvbkNvbnRleHRNZW51PXtwcm9wcy5vbkNvbnRleHRNZW51ICYmICgoZTogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudD4pID0+IG9uQ29udGV4dE1lbnUoeCwgaSwgZSkpfVxuICAgICAgb25Eb3dubG9hZD17cHJvcHMub25Eb3dubG9hZCAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvbkRvd25sb2FkKHgsIGksIGUpKX1cbiAgICAgIG9uRm9yd2FyZENsaWNrPXtwcm9wcy5vbkZvcndhcmRDbGljayAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvbkZvcndhcmRDbGljayh4LCBpLCBlKSl9XG4gICAgICBvbk1lZXRpbmdMaW5rQ2xpY2s9e1xuICAgICAgICBwcm9wcy5vbk1lZXRpbmdMaW5rQ2xpY2sgJiYgKChlOiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50PikgPT4gb25NZWV0aW5nTGlua0NsaWNrKHgsIGksIGUpKVxuICAgICAgfVxuICAgICAgb25NZWV0aW5nTWVzc2FnZUNsaWNrPXtcbiAgICAgICAgcHJvcHMub25NZWV0aW5nTWVzc2FnZUNsaWNrICYmICgoZTogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudD4pID0+IG9uTWVldGluZ01lc3NhZ2VDbGljayh4LCBpLCBlKSlcbiAgICAgIH1cbiAgICAgIG9uTWVldGluZ01vcmVTZWxlY3Q9e1xuICAgICAgICBwcm9wcy5vbk1lZXRpbmdNb3JlU2VsZWN0ICYmICgoZTogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudD4pID0+IG9uTWVldGluZ01vcmVTZWxlY3QoeCwgaSwgZSkpXG4gICAgICB9XG4gICAgICBvbk1lZXRpbmdUaXRsZUNsaWNrPXtwcm9wcy5vbk1lZXRpbmdUaXRsZUNsaWNrfVxuICAgICAgb25NZWV0aW5nVmlkZW9MaW5rQ2xpY2s9e3Byb3BzLm9uTWVldGluZ1ZpZGVvTGlua0NsaWNrfVxuICAgICAgb25NZXNzYWdlRm9jdXNlZD17cHJvcHMub25NZXNzYWdlRm9jdXNlZCAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvbk1lc3NhZ2VGb2N1c2VkKHgsIGksIGUpKX1cbiAgICAgIG9uT3Blbj17cHJvcHMub25PcGVuICYmICgoZTogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudD4pID0+IG9uT3Blbih4LCBpLCBlKSl9XG4gICAgICBvblBob3RvRXJyb3I9e3Byb3BzLm9uUGhvdG9FcnJvciAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvblBob3RvRXJyb3IoeCwgaSwgZSkpfVxuICAgICAgb25SZW1vdmVNZXNzYWdlQ2xpY2s9e1xuICAgICAgICBwcm9wcy5vblJlbW92ZU1lc3NhZ2VDbGljayAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvblJlbW92ZU1lc3NhZ2VDbGljayh4LCBpLCBlKSlcbiAgICAgIH1cbiAgICAgIG9uUmVwbHlDbGljaz17cHJvcHMub25SZXBseUNsaWNrICYmICgoZTogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudD4pID0+IG9uUmVwbHlDbGljayh4LCBpLCBlKSl9XG4gICAgICBvblJlcGx5TWVzc2FnZUNsaWNrPXtcbiAgICAgICAgcHJvcHMub25SZXBseU1lc3NhZ2VDbGljayAmJiAoKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQ+KSA9PiBvblJlcGx5TWVzc2FnZUNsaWNrKHgsIGksIGUpKVxuICAgICAgfVxuICAgICAgb25UaXRsZUNsaWNrPXtwcm9wcy5vblRpdGxlQ2xpY2sgJiYgKChlOiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50PikgPT4gb25UaXRsZUNsaWNrKHgsIGksIGUpKX1cbiAgICAgIHN0eWxlcz17cHJvcHMubWVzc2FnZUJveFN0eWxlc31cbiAgICAvPlxuXG4gICkpLCBbbGlzdFByb3BzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y24oWydyY2UtY29udGFpbmVyLW1saXN0JywgcHJvcHMuY2xhc3NOYW1lXSl9IHsuLi5wcm9wcy5jdXN0b21Qcm9wc30+XG4gICAgICB7ISFwcm9wcy5jaGlsZHJlbiAmJiBwcm9wcy5pc1Nob3dDaGlsZCAmJiBwcm9wcy5jaGlsZHJlbn1cbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdyY2UtbWxpc3QnIG9uU2Nyb2xsPXtvblNjcm9sbH0gcmVmPXtyZWZlcmFuY2V9PlxuICAgICAgICB7bWVzc2FnZXN9XG4gICAgICA8L2Rpdj5cbiAgICAgIHtkb3duQnV0dG9uID09PSB0cnVlICYmIF9kb3duQnV0dG9uICYmIHRvQm90dG9tSGVpZ2h0ICE9PSAnMTAwJScgJiYgKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLW1saXN0LWRvd24tYnV0dG9uJyBvbkNsaWNrPXt0b0JvdHRvbX0+XG4gICAgICAgICAgPEFycm93RG93bjAxSWNvbiAgLz5cbiAgICAgICAgICB7cHJvcHMuZG93bkJ1dHRvbkJhZGdlICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9J3JjZS1tbGlzdC1kb3duLWJ1dHRvbi0tYmFkZ2UnPntwcm9wcy5kb3duQnV0dG9uQmFkZ2UudG9TdHJpbmcoKX08L3NwYW4+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlTGlzdCA9IG1lbW8oTWVzc2FnZUxpc3RDb21wb25lbnQpO1xuTWVzc2FnZUxpc3QuZGlzcGxheU5hbWUgPSAnTWVzc2FnZUxpc3QnO1xuIl0sIm5hbWVzIjpbImNuIiwiQ2hldnJvbkRvd24iLCJBcnJvd0Rvd24wMUljb24iLCJtZW1vIiwidXNlRWZmZWN0IiwidXNlTWVtbyIsInVzZVJlZiIsInVzZVN0YXRlIiwiTWVzc2FnZUJveCIsIk1lc3NhZ2VMaXN0Q29tcG9uZW50IiwibGlzdFByb3BzIiwicmVmZXJhbmNlIiwibG9ja2FibGUiLCJ0b0JvdHRvbUhlaWdodCIsImRvd25CdXR0b24iLCJwcm9wcyIsInNjcm9sbEJvdHRvbSIsIl9kb3duQnV0dG9uIiwic2V0RG93bkJ1dHRvbiIsInByZXZQcm9wcyIsImNoZWNrU2Nyb2xsIiwiZSIsImN1cnJlbnQiLCJzY3JvbGxUb3AiLCJzY3JvbGxIZWlnaHQiLCJvZmZzZXRIZWlnaHQiLCJkYXRhU291cmNlIiwibGVuZ3RoIiwiZ2V0Qm90dG9tIiwib25PcGVuIiwiaXRlbSIsImluZGV4IiwiZXZlbnQiLCJGdW5jdGlvbiIsIm9uRG93bmxvYWQiLCJvblBob3RvRXJyb3IiLCJvbkNsaWNrIiwib25UaXRsZUNsaWNrIiwib25Gb3J3YXJkQ2xpY2siLCJvblJlcGx5Q2xpY2siLCJvblJlcGx5TWVzc2FnZUNsaWNrIiwib25SZW1vdmVNZXNzYWdlQ2xpY2siLCJvbkNvbnRleHRNZW51Iiwib25NZXNzYWdlRm9jdXNlZCIsIm9uTWVldGluZ01lc3NhZ2VDbGljayIsIm9uU2Nyb2xsIiwiYm90dG9tIiwiY3VycmVudFRhcmdldCIsInRvQm90dG9tIiwib25Eb3duQnV0dG9uQ2xpY2siLCJvbk1lZXRpbmdNb3JlU2VsZWN0IiwiaSIsIm9uTWVldGluZ0xpbmtDbGljayIsIm1lc3NhZ2VzIiwibWFwIiwieCIsImFjdGlvbkJ1dHRvbnMiLCJrZXkiLCJpZCIsIm5vdGNoU3R5bGUiLCJvbk1lZXRpbmdUaXRsZUNsaWNrIiwib25NZWV0aW5nVmlkZW9MaW5rQ2xpY2siLCJzdHlsZXMiLCJtZXNzYWdlQm94U3R5bGVzIiwiZGl2IiwiY2xhc3NOYW1lIiwiY3VzdG9tUHJvcHMiLCJjaGlsZHJlbiIsImlzU2hvd0NoaWxkIiwicmVmIiwiZG93bkJ1dHRvbkJhZGdlIiwidW5kZWZpbmVkIiwic3BhbiIsInRvU3RyaW5nIiwiTWVzc2FnZUxpc3QiLCJkaXNwbGF5TmFtZSJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFRQSxFQUFFLFFBQU8sZUFBZTtB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-navbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:10px}.rce-navbar.light{background:#f4f4f4}.rce-navbar.dark{background:#2f414c}.rce-navbar-item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.rce-navbar-item,.rce-navbar-item>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rce-navbar-item>*>*{margin-left:5px}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '@nlabs/utils';
|
|
3
|
+
export const Navbar = ({ type = 'light', ...props })=>/*#__PURE__*/ _jsxs("div", {
|
|
4
|
+
className: cn('rce-navbar', type, props.className),
|
|
5
|
+
children: [
|
|
6
|
+
/*#__PURE__*/ _jsx("div", {
|
|
7
|
+
className: "rce-navbar-item rce-navbar-item__left",
|
|
8
|
+
children: props.left
|
|
9
|
+
}),
|
|
10
|
+
/*#__PURE__*/ _jsx("div", {
|
|
11
|
+
className: "rce-navbar-item rce-navbar-item__center",
|
|
12
|
+
children: props.center
|
|
13
|
+
}),
|
|
14
|
+
/*#__PURE__*/ _jsx("div", {
|
|
15
|
+
className: "rce-navbar-item rce-navbar-item__right",
|
|
16
|
+
children: props.right
|
|
17
|
+
})
|
|
18
|
+
]
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvTmF2YmFyL05hdmJhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjbn0gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuaW1wb3J0IHtJTmF2YmFyUHJvcHN9IGZyb20gJy4uL3R5cGUnO1xuXG5pbXBvcnQgdHlwZSB7RkN9IGZyb20gJ3JlYWN0JztcblxuZXhwb3J0IGNvbnN0IE5hdmJhcjogRkM8SU5hdmJhclByb3BzPiA9ICh7dHlwZSA9ICdsaWdodCcsIC4uLnByb3BzfSkgPT4gKFxuICA8ZGl2IGNsYXNzTmFtZT17Y24oJ3JjZS1uYXZiYXInLCB0eXBlLCBwcm9wcy5jbGFzc05hbWUpfT5cbiAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLW5hdmJhci1pdGVtIHJjZS1uYXZiYXItaXRlbV9fbGVmdCc+e3Byb3BzLmxlZnR9PC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9J3JjZS1uYXZiYXItaXRlbSByY2UtbmF2YmFyLWl0ZW1fX2NlbnRlcic+e3Byb3BzLmNlbnRlcn08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLW5hdmJhci1pdGVtIHJjZS1uYXZiYXItaXRlbV9fcmlnaHQnPntwcm9wcy5yaWdodH08L2Rpdj5cbiAgPC9kaXY+XG4pO1xuIl0sIm5hbWVzIjpbImNuIiwiTmF2YmFyIiwidHlwZSIsInByb3BzIiwiZGl2IiwiY2xhc3NOYW1lIiwibGVmdCIsImNlbnRlciIsInJpZ2h0Il0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsRUFBRSxRQUFPLGVBQWU7QUFNaEMsT0FBTyxNQUFNQyxTQUEyQixDQUFDLEVBQUNDLE9BQU8sT0FBTyxFQUFFLEdBQUdDLE9BQU0saUJBQ2pFLE1BQUNDO1FBQUlDLFdBQVdMLEdBQUcsY0FBY0UsTUFBTUMsTUFBTUUsU0FBUzs7MEJBQ3BELEtBQUNEO2dCQUFJQyxXQUFVOzBCQUF5Q0YsTUFBTUcsSUFBSTs7MEJBQ2xFLEtBQUNGO2dCQUFJQyxXQUFVOzBCQUEyQ0YsTUFBTUksTUFBTTs7MEJBQ3RFLEtBQUNIO2dCQUFJQyxXQUFVOzBCQUEwQ0YsTUFBTUssS0FBSzs7O09BRXRFIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-mbox-photo{margin-top:-3px;margin-right:-6px;margin-left:-6px}.rce-mbox-photo .rce-mbox-text{padding:5px 0;max-width:300px;margin:auto}.rce-mbox-photo--img{position:relative;overflow:hidden;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;max-height:300px}.rce-mbox-photo--img,.rce-mbox-photo--img__block{display:-webkit-box;display:-ms-flexbox;display:flex;border-radius:5px}.rce-mbox-photo--img__block{position:absolute;top:0;right:0;left:0;bottom:0;background-color:rgba(0,0,0,.5)}.rce-mbox-photo--img img{height:100%;min-height:100px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rce-mbox-photo--img__block-item{margin:auto;cursor:pointer;width:100px;height:100px}.rce-mbox-photo--download{color:#efe;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background:none;font-size:3.2em;outline:none;border:1px solid #eee;border-radius:100%;height:100px;width:100px}.rce-mbox-photo--download:hover{opacity:.7}.rce-mbox-photo--download:active{opacity:.3}.rce-mbox-photo--error{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:none;font-size:70px;color:#eaeaea}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CircleAlert as Alert02Icon, CloudDownload as CloudDownloadIcon } from 'lucide-react';
|
|
3
|
+
import { ProgressCircle } from '../Circle/Circle.js';
|
|
4
|
+
export const PhotoMessage = (props)=>{
|
|
5
|
+
const progressOptions = {
|
|
6
|
+
strokeWidth: 2.3,
|
|
7
|
+
color: '#efe',
|
|
8
|
+
trailColor: '#aaa',
|
|
9
|
+
trailWidth: 1,
|
|
10
|
+
step: (state, circle)=>{
|
|
11
|
+
circle.path.setAttribute('trail', state?.state?.color);
|
|
12
|
+
circle.path.setAttribute('trailwidth-width', state?.state?.width);
|
|
13
|
+
const value = Math.round(circle.value() * 100);
|
|
14
|
+
if (value === 0) {
|
|
15
|
+
circle.setText('');
|
|
16
|
+
} else {
|
|
17
|
+
circle.setText(value);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
const error = props?.data?.status && props?.data?.status.error === true;
|
|
22
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
23
|
+
className: "rce-mbox-photo",
|
|
24
|
+
children: [
|
|
25
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
26
|
+
className: "rce-mbox-photo--img",
|
|
27
|
+
style: {
|
|
28
|
+
...props?.data?.width && props?.data?.height && {
|
|
29
|
+
width: props.data.width,
|
|
30
|
+
height: props.data.height
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
children: [
|
|
34
|
+
/*#__PURE__*/ _jsx("img", {
|
|
35
|
+
src: props?.data?.uri,
|
|
36
|
+
alt: props?.data?.alt,
|
|
37
|
+
onClick: props.onOpen,
|
|
38
|
+
onLoad: props.onLoad,
|
|
39
|
+
onError: props.onPhotoError
|
|
40
|
+
}),
|
|
41
|
+
error && /*#__PURE__*/ _jsx("div", {
|
|
42
|
+
className: "rce-mbox-photo--img__block",
|
|
43
|
+
children: /*#__PURE__*/ _jsx("span", {
|
|
44
|
+
className: "rce-mbox-photo--img__block-item rce-mbox-photo--error",
|
|
45
|
+
children: /*#__PURE__*/ _jsx(Alert02Icon, {})
|
|
46
|
+
})
|
|
47
|
+
}),
|
|
48
|
+
!error && props?.data?.status && !props?.data?.status?.download && /*#__PURE__*/ _jsxs("div", {
|
|
49
|
+
className: "rce-mbox-photo--img__block",
|
|
50
|
+
children: [
|
|
51
|
+
!props?.data?.status.click && /*#__PURE__*/ _jsx("button", {
|
|
52
|
+
onClick: props.onDownload,
|
|
53
|
+
className: "rce-mbox-photo--img__block-item rce-mbox-photo--download",
|
|
54
|
+
children: /*#__PURE__*/ _jsx(CloudDownloadIcon, {})
|
|
55
|
+
}),
|
|
56
|
+
typeof props?.data?.status.loading === 'number' && props?.data?.status.loading !== 0 && /*#__PURE__*/ _jsx(ProgressCircle, {
|
|
57
|
+
animate: props?.data?.status.loading,
|
|
58
|
+
progressOptions: progressOptions,
|
|
59
|
+
className: "rce-mbox-photo--img__block-item"
|
|
60
|
+
})
|
|
61
|
+
]
|
|
62
|
+
})
|
|
63
|
+
]
|
|
64
|
+
}),
|
|
65
|
+
props?.text && /*#__PURE__*/ _jsx("div", {
|
|
66
|
+
className: "rce-mbox-text",
|
|
67
|
+
children: props.text
|
|
68
|
+
})
|
|
69
|
+
]
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvUGhvdG9NZXNzYWdlL1Bob3RvTWVzc2FnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2lyY2xlQWxlcnQgYXMgQWxlcnQwMkljb24sXG4gIENsb3VkRG93bmxvYWQgYXMgQ2xvdWREb3dubG9hZEljb25cbn0gZnJvbSAnbHVjaWRlLXJlYWN0JztcblxuaW1wb3J0IHtQcm9ncmVzc0NpcmNsZX0gZnJvbSAnLi4vQ2lyY2xlL0NpcmNsZS5qcyc7XG5cbmltcG9ydCB0eXBlIHtGQ30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUge0lQaG90b01lc3NhZ2VQcm9wcywgSVByb2dyZXNzT3B0aW9uc30gZnJvbSAnLi4vdHlwZSc7XG5cbmV4cG9ydCBjb25zdCBQaG90b01lc3NhZ2U6IEZDPElQaG90b01lc3NhZ2VQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgcHJvZ3Jlc3NPcHRpb25zID0ge1xuICAgIHN0cm9rZVdpZHRoOiAyLjMsXG4gICAgY29sb3I6ICcjZWZlJyxcbiAgICB0cmFpbENvbG9yOiAnI2FhYScsXG4gICAgdHJhaWxXaWR0aDogMSxcbiAgICBzdGVwOiAoXG4gICAgICBzdGF0ZTogSVByb2dyZXNzT3B0aW9ucyxcbiAgICAgIGNpcmNsZToge1xuICAgICAgICBwYXRoOiB7IHNldEF0dHJpYnV0ZTogKGFyZzA6IHN0cmluZywgYXJnMTogYW55KSA9PiB2b2lkIH07XG4gICAgICAgIHZhbHVlOiAoKSA9PiBudW1iZXI7XG4gICAgICAgIHNldFRleHQ6IChhcmcwOiBzdHJpbmcgfCBudW1iZXIpID0+IHZvaWQ7XG4gICAgICB9XG4gICAgKSA9PiB7XG4gICAgICBjaXJjbGUucGF0aC5zZXRBdHRyaWJ1dGUoJ3RyYWlsJywgc3RhdGU/LnN0YXRlPy5jb2xvcik7XG4gICAgICBjaXJjbGUucGF0aC5zZXRBdHRyaWJ1dGUoJ3RyYWlsd2lkdGgtd2lkdGgnLCBzdGF0ZT8uc3RhdGU/LndpZHRoKTtcblxuICAgICAgY29uc3QgdmFsdWUgPSBNYXRoLnJvdW5kKGNpcmNsZS52YWx1ZSgpICogMTAwKTtcblxuICAgICAgaWYodmFsdWUgPT09IDApIHtcbiAgICAgICAgY2lyY2xlLnNldFRleHQoJycpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2lyY2xlLnNldFRleHQodmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBlcnJvciA9IHByb3BzPy5kYXRhPy5zdGF0dXMgJiYgcHJvcHM/LmRhdGE/LnN0YXR1cy5lcnJvciA9PT0gdHJ1ZTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPSdyY2UtbWJveC1waG90byc+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT0ncmNlLW1ib3gtcGhvdG8tLWltZydcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAuLi4ocHJvcHM/LmRhdGE/LndpZHRoICYmXG4gICAgICAgICAgICBwcm9wcz8uZGF0YT8uaGVpZ2h0ICYmIHtcbiAgICAgICAgICAgIHdpZHRoOiBwcm9wcy5kYXRhLndpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiBwcm9wcy5kYXRhLmhlaWdodFxuICAgICAgICAgIH0pXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxpbWdcbiAgICAgICAgICBzcmM9e3Byb3BzPy5kYXRhPy51cml9XG4gICAgICAgICAgYWx0PXtwcm9wcz8uZGF0YT8uYWx0fVxuICAgICAgICAgIG9uQ2xpY2s9e3Byb3BzLm9uT3Blbn1cbiAgICAgICAgICBvbkxvYWQ9e3Byb3BzLm9uTG9hZH1cbiAgICAgICAgICBvbkVycm9yPXtwcm9wcy5vblBob3RvRXJyb3J9XG4gICAgICAgIC8+XG4gICAgICAgIHtlcnJvciAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JjZS1tYm94LXBob3RvLS1pbWdfX2Jsb2NrJz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT0ncmNlLW1ib3gtcGhvdG8tLWltZ19fYmxvY2staXRlbSByY2UtbWJveC1waG90by0tZXJyb3InPlxuICAgICAgICAgICAgICA8QWxlcnQwMkljb24gIC8+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICAgIHshZXJyb3IgJiYgcHJvcHM/LmRhdGE/LnN0YXR1cyAmJiAhcHJvcHM/LmRhdGE/LnN0YXR1cz8uZG93bmxvYWQgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyY2UtbWJveC1waG90by0taW1nX19ibG9jayc+XG4gICAgICAgICAgICB7IXByb3BzPy5kYXRhPy5zdGF0dXMuY2xpY2sgJiYgKFxuICAgICAgICAgICAgICA8YnV0dG9uIG9uQ2xpY2s9e3Byb3BzLm9uRG93bmxvYWR9IGNsYXNzTmFtZT0ncmNlLW1ib3gtcGhvdG8tLWltZ19fYmxvY2staXRlbSByY2UtbWJveC1waG90by0tZG93bmxvYWQnPlxuICAgICAgICAgICAgICAgIDxDbG91ZERvd25sb2FkSWNvbiAgLz5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAge3R5cGVvZiBwcm9wcz8uZGF0YT8uc3RhdHVzLmxvYWRpbmcgPT09ICdudW1iZXInICYmIHByb3BzPy5kYXRhPy5zdGF0dXMubG9hZGluZyAhPT0gMCAmJiAoXG4gICAgICAgICAgICAgIDxQcm9ncmVzc0NpcmNsZVxuICAgICAgICAgICAgICAgIGFuaW1hdGU9e3Byb3BzPy5kYXRhPy5zdGF0dXMubG9hZGluZ31cbiAgICAgICAgICAgICAgICBwcm9ncmVzc09wdGlvbnM9e3Byb2dyZXNzT3B0aW9uc31cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J3JjZS1tYm94LXBob3RvLS1pbWdfX2Jsb2NrLWl0ZW0nXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICB7cHJvcHM/LnRleHQgJiYgPGRpdiBjbGFzc05hbWU9J3JjZS1tYm94LXRleHQnPntwcm9wcy50ZXh0fTwvZGl2Pn1cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXSwibmFtZXMiOlsiQ2lyY2xlQWxlcnQiLCJBbGVydDAySWNvbiIsIkNsb3VkRG93bmxvYWQiLCJDbG91ZERvd25sb2FkSWNvbiIsIlByb2dyZXNzQ2lyY2xlIiwiUGhvdG9NZXNzYWdlIiwicHJvcHMiLCJwcm9ncmVzc09wdGlvbnMiLCJzdHJva2VXaWR0aCIsImNvbG9yIiwidHJhaWxDb2xvciIsInRyYWlsV2lkdGgiLCJzdGVwIiwic3RhdGUiLCJjaXJjbGUiLCJwYXRoIiwic2V0QXR0cmlidXRlIiwid2lkdGgiLCJ2YWx1ZSIsIk1hdGgiLCJyb3VuZCIsInNldFRleHQiLCJlcnJvciIsImRhdGEiLCJzdGF0dXMiLCJkaXYiLCJjbGFzc05hbWUiLCJzdHlsZSIsImhlaWdodCIsImltZyIsInNyYyIsInVyaSIsImFsdCIsIm9uQ2xpY2siLCJvbk9wZW4iLCJvbkxvYWQiLCJvbkVycm9yIiwib25QaG90b0Vycm9yIiwic3BhbiIsImRvd25sb2FkIiwiY2xpY2siLCJidXR0b24iLCJvbkRvd25sb2FkIiwibG9hZGluZyIsImFuaW1hdGUiLCJ0ZXh0Il0sIm1hcHBpbmdzIjoiO0FBQUEsU0FDRUEsZUFBZUMsV0FBVyxFQUMxQkMsaUJBQWlCQyxpQkFBaUIsUUFDN0IsZUFBZTtBQUV0QixTQUFRQyxjQUFjLFFBQU8sc0JBQXNCO0FBS25ELE9BQU8sTUFBTUMsZUFBdUMsQ0FBQ0M7SUFDbkQsTUFBTUMsa0JBQWtCO1FBQ3RCQyxhQUFhO1FBQ2JDLE9BQU87UUFDUEMsWUFBWTtRQUNaQyxZQUFZO1FBQ1pDLE1BQU0sQ0FDSkMsT0FDQUM7WUFNQUEsT0FBT0MsSUFBSSxDQUFDQyxZQUFZLENBQUMsU0FBU0gsT0FBT0EsT0FBT0o7WUFDaERLLE9BQU9DLElBQUksQ0FBQ0MsWUFBWSxDQUFDLG9CQUFvQkgsT0FBT0EsT0FBT0k7WUFFM0QsTUFBTUMsUUFBUUMsS0FBS0MsS0FBSyxDQUFDTixPQUFPSSxLQUFLLEtBQUs7WUFFMUMsSUFBR0EsVUFBVSxHQUFHO2dCQUNkSixPQUFPTyxPQUFPLENBQUM7WUFDakIsT0FBTztnQkFDTFAsT0FBT08sT0FBTyxDQUFDSDtZQUNqQjtRQUNGO0lBQ0Y7SUFFQSxNQUFNSSxRQUFRaEIsT0FBT2lCLE1BQU1DLFVBQVVsQixPQUFPaUIsTUFBTUMsT0FBT0YsVUFBVTtJQUVuRSxxQkFDRSxNQUFDRztRQUFJQyxXQUFVOzswQkFDYixNQUFDRDtnQkFDQ0MsV0FBVTtnQkFDVkMsT0FBTztvQkFDTCxHQUFJckIsT0FBT2lCLE1BQU1OLFNBQ2ZYLE9BQU9pQixNQUFNSyxVQUFVO3dCQUN2QlgsT0FBT1gsTUFBTWlCLElBQUksQ0FBQ04sS0FBSzt3QkFDdkJXLFFBQVF0QixNQUFNaUIsSUFBSSxDQUFDSyxNQUFNO29CQUMzQixDQUFDO2dCQUNIOztrQ0FFQSxLQUFDQzt3QkFDQ0MsS0FBS3hCLE9BQU9pQixNQUFNUTt3QkFDbEJDLEtBQUsxQixPQUFPaUIsTUFBTVM7d0JBQ2xCQyxTQUFTM0IsTUFBTTRCLE1BQU07d0JBQ3JCQyxRQUFRN0IsTUFBTTZCLE1BQU07d0JBQ3BCQyxTQUFTOUIsTUFBTStCLFlBQVk7O29CQUU1QmYsdUJBQ0MsS0FBQ0c7d0JBQUlDLFdBQVU7a0NBQ2IsY0FBQSxLQUFDWTs0QkFBS1osV0FBVTtzQ0FDZCxjQUFBLEtBQUN6Qjs7O29CQUlOLENBQUNxQixTQUFTaEIsT0FBT2lCLE1BQU1DLFVBQVUsQ0FBQ2xCLE9BQU9pQixNQUFNQyxRQUFRZSwwQkFDdEQsTUFBQ2Q7d0JBQUlDLFdBQVU7OzRCQUNaLENBQUNwQixPQUFPaUIsTUFBTUMsT0FBT2dCLHVCQUNwQixLQUFDQztnQ0FBT1IsU0FBUzNCLE1BQU1vQyxVQUFVO2dDQUFFaEIsV0FBVTswQ0FDM0MsY0FBQSxLQUFDdkI7OzRCQUdKLE9BQU9HLE9BQU9pQixNQUFNQyxPQUFPbUIsWUFBWSxZQUFZckMsT0FBT2lCLE1BQU1DLE9BQU9tQixZQUFZLG1CQUNsRixLQUFDdkM7Z0NBQ0N3QyxTQUFTdEMsT0FBT2lCLE1BQU1DLE9BQU9tQjtnQ0FDN0JwQyxpQkFBaUJBO2dDQUNqQm1CLFdBQVU7Ozs7OztZQU1uQnBCLE9BQU91QyxzQkFBUSxLQUFDcEI7Z0JBQUlDLFdBQVU7MEJBQWlCcEIsTUFBTXVDLElBQUk7Ozs7QUFHaEUsRUFBRSJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-popup-wrapper{position:fixed;left:0;right:0;top:0;bottom:0;margin:auto;background:hsla(0,0%,100%,.7);z-index:9999999999;-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.rce-popup,.rce-popup-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-direction:normal}.rce-popup{background:#fff;border-radius:5px;padding:0 10px;width:400px;min-height:100px;-webkit-box-shadow:0 0 25px -2px #4f4f4f;box-shadow:0 0 25px -2px #4f4f4f;-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-animation:popup-scaling .4s ease forwards;animation:popup-scaling .4s ease forwards;-webkit-box-sizing:border-box;box-sizing:border-box}@-webkit-keyframes popup-scaling{0%{-webkit-transform:scale(0);transform:scale(0);opacity:0}50%{-webkit-transform:scale(1.2);transform:scale(1.2);opacity:.5}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes popup-scaling{0%{-webkit-transform:scale(0);transform:scale(0);opacity:0}50%{-webkit-transform:scale(1.2);transform:scale(1.2);opacity:.5}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.rce-popup-header{padding:18px 8px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.rce-popup-content,.rce-popup-header{-webkit-box-sizing:border-box;box-sizing:border-box}.rce-popup-content{padding:8px;font-size:14px}.rce-popup-content *{margin:0}.rce-popup-footer{padding:18px 8px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box}.rce-popup-footer>*{margin-left:5px}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '@nlabs/utils';
|
|
3
|
+
import { Button } from '../Button/Button.js';
|
|
4
|
+
export const Popup = ({ ...props })=>{
|
|
5
|
+
if (props.popup?.show === true) {
|
|
6
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
7
|
+
className: cn('rce-popup-wrapper', props.type, props.className),
|
|
8
|
+
children: /*#__PURE__*/ _jsxs("div", {
|
|
9
|
+
className: "rce-popup",
|
|
10
|
+
children: [
|
|
11
|
+
props.popup?.renderHeader ? /*#__PURE__*/ _jsx("div", {
|
|
12
|
+
className: "rce-popup-header",
|
|
13
|
+
children: props.popup?.renderHeader()
|
|
14
|
+
}) : /*#__PURE__*/ _jsxs("div", {
|
|
15
|
+
className: "rce-popup-header",
|
|
16
|
+
children: [
|
|
17
|
+
/*#__PURE__*/ _jsx("span", {
|
|
18
|
+
children: props.popup?.header
|
|
19
|
+
}),
|
|
20
|
+
props.popup?.header && props.popup?.headerButtons?.map((x, i)=>/*#__PURE__*/ _jsx(Button, {
|
|
21
|
+
...x
|
|
22
|
+
}, i))
|
|
23
|
+
]
|
|
24
|
+
}),
|
|
25
|
+
/*#__PURE__*/ _jsx("div", {
|
|
26
|
+
className: "rce-popup-content",
|
|
27
|
+
style: {
|
|
28
|
+
color: props.popup?.color
|
|
29
|
+
},
|
|
30
|
+
children: props.popup?.renderContent ? props.popup?.renderContent() : props.popup?.text
|
|
31
|
+
}),
|
|
32
|
+
/*#__PURE__*/ _jsx("div", {
|
|
33
|
+
className: "rce-popup-footer",
|
|
34
|
+
children: props.popup?.renderFooter ? props.popup?.renderFooter() : props.popup?.footerButtons?.map((x, i)=>/*#__PURE__*/ _jsx(Button, {
|
|
35
|
+
...x
|
|
36
|
+
}, i))
|
|
37
|
+
})
|
|
38
|
+
]
|
|
39
|
+
})
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvUG9wdXAvUG9wdXAudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y259IGZyb20gJ0BubGFicy91dGlscyc7XG5cbmltcG9ydCB7QnV0dG9ufSBmcm9tICcuLi9CdXR0b24vQnV0dG9uLmpzJztcblxuaW1wb3J0IHR5cGUge0ZDfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7SVBvcHVwUHJvcHN9IGZyb20gJy4uL3R5cGUnO1xuXG5leHBvcnQgY29uc3QgUG9wdXA6IEZDPElQb3B1cFByb3BzPiA9ICh7Li4ucHJvcHN9KSA9PiB7XG4gIGlmKHByb3BzLnBvcHVwPy5zaG93ID09PSB0cnVlKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbigncmNlLXBvcHVwLXdyYXBwZXInLCBwcm9wcy50eXBlLCBwcm9wcy5jbGFzc05hbWUpfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JjZS1wb3B1cCc+XG4gICAgICAgICAge3Byb3BzLnBvcHVwPy5yZW5kZXJIZWFkZXIgPyAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLXBvcHVwLWhlYWRlcic+e3Byb3BzLnBvcHVwPy5yZW5kZXJIZWFkZXIoKX08L2Rpdj5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JjZS1wb3B1cC1oZWFkZXInPlxuICAgICAgICAgICAgICA8c3Bhbj57cHJvcHMucG9wdXA/LmhlYWRlcn08L3NwYW4+XG4gICAgICAgICAgICAgIHtwcm9wcy5wb3B1cD8uaGVhZGVyICYmIHByb3BzLnBvcHVwPy5oZWFkZXJCdXR0b25zPy5tYXAoKHgsIGkpID0+IDxCdXR0b24ga2V5PXtpfSB7Li4ueH0gLz4pfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLXBvcHVwLWNvbnRlbnQnIHN0eWxlPXt7Y29sb3I6IHByb3BzLnBvcHVwPy5jb2xvcn19PlxuICAgICAgICAgICAge3Byb3BzLnBvcHVwPy5yZW5kZXJDb250ZW50ID8gcHJvcHMucG9wdXA/LnJlbmRlckNvbnRlbnQoKSA6IHByb3BzLnBvcHVwPy50ZXh0fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyY2UtcG9wdXAtZm9vdGVyJz5cbiAgICAgICAgICAgIHtwcm9wcy5wb3B1cD8ucmVuZGVyRm9vdGVyXG4gICAgICAgICAgICAgID8gcHJvcHMucG9wdXA/LnJlbmRlckZvb3RlcigpXG4gICAgICAgICAgICAgIDogcHJvcHMucG9wdXA/LmZvb3RlckJ1dHRvbnM/Lm1hcCgoeCwgaSkgPT4gPEJ1dHRvbiBrZXk9e2l9IHsuLi54fSAvPil9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn07XG4iXSwibmFtZXMiOlsiY24iLCJCdXR0b24iLCJQb3B1cCIsInByb3BzIiwicG9wdXAiLCJzaG93IiwiZGl2IiwiY2xhc3NOYW1lIiwidHlwZSIsInJlbmRlckhlYWRlciIsInNwYW4iLCJoZWFkZXIiLCJoZWFkZXJCdXR0b25zIiwibWFwIiwieCIsImkiLCJzdHlsZSIsImNvbG9yIiwicmVuZGVyQ29udGVudCIsInRleHQiLCJyZW5kZXJGb290ZXIiLCJmb290ZXJCdXR0b25zIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsRUFBRSxRQUFPLGVBQWU7QUFFaEMsU0FBUUMsTUFBTSxRQUFPLHNCQUFzQjtBQUszQyxPQUFPLE1BQU1DLFFBQXlCLENBQUMsRUFBQyxHQUFHQyxPQUFNO0lBQy9DLElBQUdBLE1BQU1DLEtBQUssRUFBRUMsU0FBUyxNQUFNO1FBQzdCLHFCQUNFLEtBQUNDO1lBQUlDLFdBQVdQLEdBQUcscUJBQXFCRyxNQUFNSyxJQUFJLEVBQUVMLE1BQU1JLFNBQVM7c0JBQ2pFLGNBQUEsTUFBQ0Q7Z0JBQUlDLFdBQVU7O29CQUNaSixNQUFNQyxLQUFLLEVBQUVLLDZCQUNaLEtBQUNIO3dCQUFJQyxXQUFVO2tDQUFvQkosTUFBTUMsS0FBSyxFQUFFSzt1Q0FFaEQsTUFBQ0g7d0JBQUlDLFdBQVU7OzBDQUNiLEtBQUNHOzBDQUFNUCxNQUFNQyxLQUFLLEVBQUVPOzs0QkFDbkJSLE1BQU1DLEtBQUssRUFBRU8sVUFBVVIsTUFBTUMsS0FBSyxFQUFFUSxlQUFlQyxJQUFJLENBQUNDLEdBQUdDLGtCQUFNLEtBQUNkO29DQUFnQixHQUFHYSxDQUFDO21DQUFSQzs7O2tDQUduRixLQUFDVDt3QkFBSUMsV0FBVTt3QkFBb0JTLE9BQU87NEJBQUNDLE9BQU9kLE1BQU1DLEtBQUssRUFBRWE7d0JBQUs7a0NBQ2pFZCxNQUFNQyxLQUFLLEVBQUVjLGdCQUFnQmYsTUFBTUMsS0FBSyxFQUFFYyxrQkFBa0JmLE1BQU1DLEtBQUssRUFBRWU7O2tDQUU1RSxLQUFDYjt3QkFBSUMsV0FBVTtrQ0FDWkosTUFBTUMsS0FBSyxFQUFFZ0IsZUFDVmpCLE1BQU1DLEtBQUssRUFBRWdCLGlCQUNiakIsTUFBTUMsS0FBSyxFQUFFaUIsZUFBZVIsSUFBSSxDQUFDQyxHQUFHQyxrQkFBTSxLQUFDZDtnQ0FBZ0IsR0FBR2EsQ0FBQzsrQkFBUkM7Ozs7O0lBS3JFO0lBQ0EsT0FBTztBQUNULEVBQUUifQ==
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Gotham Chat Components
|
|
2
|
+
|
|
3
|
+
This folder contains GothamUI chat UI components vendored from `react-chat-elements`.
|
|
4
|
+
|
|
5
|
+
## Import Options
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import {Chat} from '@nlabs/gothamui';
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import {MessageBox, MessageList, ChatList} from '@nlabs/gothamui/chat';
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Migration From `react-chat-elements`
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
// Before
|
|
19
|
+
import {MessageBox, MessageList, ChatList} from 'react-chat-elements';
|
|
20
|
+
|
|
21
|
+
// After
|
|
22
|
+
import {MessageBox, MessageList, ChatList} from '@nlabs/gothamui/chat';
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Exported Components
|
|
26
|
+
|
|
27
|
+
- `MessageBox`
|
|
28
|
+
- `ChatItem`
|
|
29
|
+
- `ChatList`
|
|
30
|
+
- `MessageList`
|
|
31
|
+
- `MeetingItem`
|
|
32
|
+
- `MeetingList`
|
|
33
|
+
- `SystemMessage`
|
|
34
|
+
- `ReplyMessage`
|
|
35
|
+
- `MeetingMessage`
|
|
36
|
+
- `AudioMessage`
|
|
37
|
+
- `FileMessage`
|
|
38
|
+
- `LocationMessage`
|
|
39
|
+
- `SpotifyMessage`
|
|
40
|
+
- `VideoMessage`
|
|
41
|
+
- `PhotoMessage`
|
|
42
|
+
- `MeetingLink`
|
|
43
|
+
- `Input`
|
|
44
|
+
- `Button`
|
|
45
|
+
- `Avatar`
|
|
46
|
+
- `Navbar`
|
|
47
|
+
- `Dropdown`
|
|
48
|
+
- `SideBar`
|
|
49
|
+
- `Popup`
|
|
50
|
+
- `Circle`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-mbox-reply{position:relative;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;margin:-3px -6px 6px;border-radius:5px;background:#ececec;padding:0 0 0 5px;font-size:12px;cursor:pointer;-webkit-transition:.2s;transition:.2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rce-mbox-reply.rce-mbox-reply-border{border-left:5px solid}.rce-mbox-reply:hover{opacity:.85}.rce-mbox-reply-left{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:3px 0;-webkit-box-flex:1;-ms-flex:1 1;flex:1 1}.rce-mbox-reply-owner{font-size:13px}.rce-mbox-reply-message{color:#5a5a5a;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:150px}.rce-mbox-reply-right{width:40px;height:40px}.rce-mbox-reply-right img{width:100%}.rce-mbox-reply-text{padding:5px 0;width:250px;margin-left:-6px;margin-right:-6px}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '@nlabs/utils';
|
|
3
|
+
export const ReplyMessage = ({ onClick, ...props })=>/*#__PURE__*/ _jsxs("div", {
|
|
4
|
+
className: cn('rce-mbox-reply', {
|
|
5
|
+
'rce-mbox-reply-border': !!props.titleColor
|
|
6
|
+
}),
|
|
7
|
+
style: {
|
|
8
|
+
...props.titleColor && {
|
|
9
|
+
borderColor: props.titleColor
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
onClick: onClick,
|
|
13
|
+
children: [
|
|
14
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
15
|
+
className: "rce-mbox-reply-left",
|
|
16
|
+
children: [
|
|
17
|
+
/*#__PURE__*/ _jsx("div", {
|
|
18
|
+
style: {
|
|
19
|
+
...props.titleColor && {
|
|
20
|
+
color: props.titleColor
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
className: "rce-mbox-reply-owner",
|
|
24
|
+
children: props.title || 'Unknown'
|
|
25
|
+
}),
|
|
26
|
+
/*#__PURE__*/ _jsx("div", {
|
|
27
|
+
className: "rce-mbox-reply-message",
|
|
28
|
+
children: props.message || '...'
|
|
29
|
+
})
|
|
30
|
+
]
|
|
31
|
+
}),
|
|
32
|
+
props.photoURL && /*#__PURE__*/ _jsx("div", {
|
|
33
|
+
className: "rce-mbox-reply-right",
|
|
34
|
+
children: /*#__PURE__*/ _jsx("img", {
|
|
35
|
+
src: props.photoURL,
|
|
36
|
+
alt: ""
|
|
37
|
+
})
|
|
38
|
+
})
|
|
39
|
+
]
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvUmVwbHlNZXNzYWdlL1JlcGx5TWVzc2FnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjbn0gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuXG5pbXBvcnQgdHlwZSB7RkN9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHtJUmVwbHlNZXNzYWdlUHJvcHN9IGZyb20gJy4uL3R5cGUnO1xuXG5leHBvcnQgY29uc3QgUmVwbHlNZXNzYWdlOiBGQzxJUmVwbHlNZXNzYWdlUHJvcHM+ID0gKHtvbkNsaWNrLCAuLi5wcm9wc30pID0+IChcbiAgPGRpdlxuICAgIGNsYXNzTmFtZT17Y24oJ3JjZS1tYm94LXJlcGx5Jywge1xuICAgICAgJ3JjZS1tYm94LXJlcGx5LWJvcmRlcic6ICEhcHJvcHMudGl0bGVDb2xvclxuICAgIH0pfVxuICAgIHN0eWxlPXt7Li4uKHByb3BzLnRpdGxlQ29sb3IgJiYge2JvcmRlckNvbG9yOiBwcm9wcy50aXRsZUNvbG9yfSl9fVxuICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gID5cbiAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLW1ib3gtcmVwbHktbGVmdCc+XG4gICAgICA8ZGl2IHN0eWxlPXt7Li4uKHByb3BzLnRpdGxlQ29sb3IgJiYge2NvbG9yOiBwcm9wcy50aXRsZUNvbG9yfSl9fSBjbGFzc05hbWU9J3JjZS1tYm94LXJlcGx5LW93bmVyJz5cbiAgICAgICAge3Byb3BzLnRpdGxlIHx8ICdVbmtub3duJ31cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9J3JjZS1tYm94LXJlcGx5LW1lc3NhZ2UnPntwcm9wcy5tZXNzYWdlIHx8ICcuLi4nfTwvZGl2PlxuICAgIDwvZGl2PlxuICAgIHtwcm9wcy5waG90b1VSTCAmJiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLW1ib3gtcmVwbHktcmlnaHQnPlxuICAgICAgICA8aW1nIHNyYz17cHJvcHMucGhvdG9VUkx9IGFsdD0nJyAvPlxuICAgICAgPC9kaXY+XG4gICAgKX1cbiAgPC9kaXY+XG4pO1xuIl0sIm5hbWVzIjpbImNuIiwiUmVwbHlNZXNzYWdlIiwib25DbGljayIsInByb3BzIiwiZGl2IiwiY2xhc3NOYW1lIiwidGl0bGVDb2xvciIsInN0eWxlIiwiYm9yZGVyQ29sb3IiLCJjb2xvciIsInRpdGxlIiwibWVzc2FnZSIsInBob3RvVVJMIiwiaW1nIiwic3JjIiwiYWx0Il0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsRUFBRSxRQUFPLGVBQWU7QUFNaEMsT0FBTyxNQUFNQyxlQUF1QyxDQUFDLEVBQUNDLE9BQU8sRUFBRSxHQUFHQyxPQUFNLGlCQUN0RSxNQUFDQztRQUNDQyxXQUFXTCxHQUFHLGtCQUFrQjtZQUM5Qix5QkFBeUIsQ0FBQyxDQUFDRyxNQUFNRyxVQUFVO1FBQzdDO1FBQ0FDLE9BQU87WUFBQyxHQUFJSixNQUFNRyxVQUFVLElBQUk7Z0JBQUNFLGFBQWFMLE1BQU1HLFVBQVU7WUFBQSxDQUFDO1FBQUM7UUFDaEVKLFNBQVNBOzswQkFFVCxNQUFDRTtnQkFBSUMsV0FBVTs7a0NBQ2IsS0FBQ0Q7d0JBQUlHLE9BQU87NEJBQUMsR0FBSUosTUFBTUcsVUFBVSxJQUFJO2dDQUFDRyxPQUFPTixNQUFNRyxVQUFVOzRCQUFBLENBQUM7d0JBQUM7d0JBQUdELFdBQVU7a0NBQ3pFRixNQUFNTyxLQUFLLElBQUk7O2tDQUVsQixLQUFDTjt3QkFBSUMsV0FBVTtrQ0FBMEJGLE1BQU1RLE9BQU8sSUFBSTs7OztZQUUzRFIsTUFBTVMsUUFBUSxrQkFDYixLQUFDUjtnQkFBSUMsV0FBVTswQkFDYixjQUFBLEtBQUNRO29CQUFJQyxLQUFLWCxNQUFNUyxRQUFRO29CQUFFRyxLQUFJOzs7O09BSXBDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-sbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:10px;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:100%}.rce-sbar.light{background:#f4f4f4}.rce-sbar.dark{background:#2f414c}.rce-sbar-item{-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;max-width:100%}.rce-sbar-item,.rce-sbar-item>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-direction:normal}.rce-sbar-item>*{-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column}.rce-sbar-item__center{margin:15px 0}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '@nlabs/utils';
|
|
3
|
+
export const SideBar = ({ type = 'dark', ...props })=>/*#__PURE__*/ _jsxs("div", {
|
|
4
|
+
className: cn('rce-sbar', type, props.data.className),
|
|
5
|
+
children: [
|
|
6
|
+
/*#__PURE__*/ _jsx("div", {
|
|
7
|
+
className: "rce-sbar-item",
|
|
8
|
+
children: props.data?.top
|
|
9
|
+
}),
|
|
10
|
+
/*#__PURE__*/ _jsx("div", {
|
|
11
|
+
className: "rce-sbar-item rce-sbar-item__center",
|
|
12
|
+
children: props.data?.center
|
|
13
|
+
}),
|
|
14
|
+
/*#__PURE__*/ _jsx("div", {
|
|
15
|
+
className: "rce-sbar-item",
|
|
16
|
+
children: props.data?.bottom
|
|
17
|
+
})
|
|
18
|
+
]
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvU2lkZUJhci9TaWRlQmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2NufSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuXG5cbmltcG9ydCB0eXBlIHtGQ30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUge0lTaWRlQmFyUHJvcHN9IGZyb20gJy4uL3R5cGUnO1xuXG5leHBvcnQgY29uc3QgU2lkZUJhcjogRkM8SVNpZGVCYXJQcm9wcz4gPSAoe3R5cGUgPSAnZGFyaycsIC4uLnByb3BzfSkgPT4gKFxuICA8ZGl2IGNsYXNzTmFtZT17Y24oJ3JjZS1zYmFyJywgdHlwZSwgcHJvcHMuZGF0YS5jbGFzc05hbWUpfT5cbiAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLXNiYXItaXRlbSc+e3Byb3BzLmRhdGE/LnRvcH08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzTmFtZT0ncmNlLXNiYXItaXRlbSByY2Utc2Jhci1pdGVtX19jZW50ZXInPntwcm9wcy5kYXRhPy5jZW50ZXJ9PC9kaXY+XG4gICAgPGRpdiBjbGFzc05hbWU9J3JjZS1zYmFyLWl0ZW0nPntwcm9wcy5kYXRhPy5ib3R0b219PC9kaXY+XG4gIDwvZGl2PlxuKTtcbiJdLCJuYW1lcyI6WyJjbiIsIlNpZGVCYXIiLCJ0eXBlIiwicHJvcHMiLCJkaXYiLCJjbGFzc05hbWUiLCJkYXRhIiwidG9wIiwiY2VudGVyIiwiYm90dG9tIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsRUFBRSxRQUFPLGVBQWU7QUFNaEMsT0FBTyxNQUFNQyxVQUE2QixDQUFDLEVBQUNDLE9BQU8sTUFBTSxFQUFFLEdBQUdDLE9BQU0saUJBQ2xFLE1BQUNDO1FBQUlDLFdBQVdMLEdBQUcsWUFBWUUsTUFBTUMsTUFBTUcsSUFBSSxDQUFDRCxTQUFTOzswQkFDdkQsS0FBQ0Q7Z0JBQUlDLFdBQVU7MEJBQWlCRixNQUFNRyxJQUFJLEVBQUVDOzswQkFDNUMsS0FBQ0g7Z0JBQUlDLFdBQVU7MEJBQXVDRixNQUFNRyxJQUFJLEVBQUVFOzswQkFDbEUsS0FBQ0o7Z0JBQUlDLFdBQVU7MEJBQWlCRixNQUFNRyxJQUFJLEVBQUVHOzs7T0FFOUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-mbox-spotify{margin-top:-2px;overflow:hidden;margin-right:-6px;margin-left:-6px;display:-webkit-box;display:-ms-flexbox;display:flex;border-radius:5px}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export const SpotifyMessage = ({ width = 300, height = 380, ...props })=>{
|
|
3
|
+
const toUrl = ()=>{
|
|
4
|
+
const formBody = [];
|
|
5
|
+
for(const property in props){
|
|
6
|
+
const encodedKey = encodeURIComponent(property);
|
|
7
|
+
// @ts-ignore
|
|
8
|
+
const encodedValue = encodeURIComponent(props[property]);
|
|
9
|
+
formBody.push(`${encodedKey}=${encodedValue}`);
|
|
10
|
+
}
|
|
11
|
+
return formBody.join('&');
|
|
12
|
+
};
|
|
13
|
+
if (!props.uri) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
17
|
+
className: "rce-mbox-spotify",
|
|
18
|
+
children: /*#__PURE__*/ _jsx("iframe", {
|
|
19
|
+
src: `https://open.spotify.com/embed?${toUrl()}`,
|
|
20
|
+
width: width,
|
|
21
|
+
height: height,
|
|
22
|
+
frameBorder: "0",
|
|
23
|
+
allowTransparency: true
|
|
24
|
+
})
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy9jb21wb25lbnRzL0NoYXQvU3BvdGlmeU1lc3NhZ2UvU3BvdGlmeU1lc3NhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHR5cGUge0ZDfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7SVNwb3RpZnlNZXNzYWdlUHJvcHN9IGZyb20gJy4uL3R5cGUnO1xuXG5leHBvcnQgY29uc3QgU3BvdGlmeU1lc3NhZ2U6IEZDPElTcG90aWZ5TWVzc2FnZVByb3BzPiA9ICh7XG4gIHdpZHRoID0gMzAwLFxuICBoZWlnaHQgPSAzODAsXG4gIC4uLnByb3BzXG59KSA9PiB7XG4gIGNvbnN0IHRvVXJsID0gKCk6IHN0cmluZyA9PiB7XG4gICAgY29uc3QgZm9ybUJvZHk6IHN0cmluZ1tdIHwgc3RyaW5nID0gW107XG4gICAgZm9yKGNvbnN0IHByb3BlcnR5IGluIHByb3BzKSB7XG4gICAgICBjb25zdCBlbmNvZGVkS2V5ID0gZW5jb2RlVVJJQ29tcG9uZW50KHByb3BlcnR5KTtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbnN0IGVuY29kZWRWYWx1ZSA9IGVuY29kZVVSSUNvbXBvbmVudChwcm9wc1twcm9wZXJ0eV0pO1xuICAgICAgZm9ybUJvZHkucHVzaChgJHtlbmNvZGVkS2V5fT0ke2VuY29kZWRWYWx1ZX1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybUJvZHkuam9pbignJicpO1xuICB9O1xuXG4gIGlmKCFwcm9wcy51cmkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPSdyY2UtbWJveC1zcG90aWZ5Jz5cbiAgICAgIDxpZnJhbWVcbiAgICAgICAgc3JjPXtgaHR0cHM6Ly9vcGVuLnNwb3RpZnkuY29tL2VtYmVkPyR7dG9VcmwoKX1gfVxuICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgICBmcmFtZUJvcmRlcj0nMCdcbiAgICAgICAgYWxsb3dUcmFuc3BhcmVuY3k9e3RydWV9XG4gICAgICA+PC9pZnJhbWU+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm5hbWVzIjpbIlNwb3RpZnlNZXNzYWdlIiwid2lkdGgiLCJoZWlnaHQiLCJwcm9wcyIsInRvVXJsIiwiZm9ybUJvZHkiLCJwcm9wZXJ0eSIsImVuY29kZWRLZXkiLCJlbmNvZGVVUklDb21wb25lbnQiLCJlbmNvZGVkVmFsdWUiLCJwdXNoIiwiam9pbiIsInVyaSIsImRpdiIsImNsYXNzTmFtZSIsImlmcmFtZSIsInNyYyIsImZyYW1lQm9yZGVyIiwiYWxsb3dUcmFuc3BhcmVuY3kiXSwibWFwcGluZ3MiOiI7QUFJQSxPQUFPLE1BQU1BLGlCQUEyQyxDQUFDLEVBQ3ZEQyxRQUFRLEdBQUcsRUFDWEMsU0FBUyxHQUFHLEVBQ1osR0FBR0MsT0FDSjtJQUNDLE1BQU1DLFFBQVE7UUFDWixNQUFNQyxXQUE4QixFQUFFO1FBQ3RDLElBQUksTUFBTUMsWUFBWUgsTUFBTztZQUMzQixNQUFNSSxhQUFhQyxtQkFBbUJGO1lBQ3RDLGFBQWE7WUFDYixNQUFNRyxlQUFlRCxtQkFBbUJMLEtBQUssQ0FBQ0csU0FBUztZQUN2REQsU0FBU0ssSUFBSSxDQUFDLEdBQUdILFdBQVcsQ0FBQyxFQUFFRSxjQUFjO1FBQy9DO1FBRUEsT0FBT0osU0FBU00sSUFBSSxDQUFDO0lBQ3ZCO0lBRUEsSUFBRyxDQUFDUixNQUFNUyxHQUFHLEVBQUU7UUFDYixPQUFPO0lBQ1Q7SUFDQSxxQkFDRSxLQUFDQztRQUFJQyxXQUFVO2tCQUNiLGNBQUEsS0FBQ0M7WUFDQ0MsS0FBSyxDQUFDLCtCQUErQixFQUFFWixTQUFTO1lBQ2hESCxPQUFPQTtZQUNQQyxRQUFRQTtZQUNSZSxhQUFZO1lBQ1pDLG1CQUFtQjs7O0FBSTNCLEVBQUUifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rce-container-smsg,.rce-smsg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.rce-smsg{position:relative;background:#fff;border-radius:10px;-webkit-box-shadow:1px 1px 1px 1px rgba(0,0,0,.2);box-shadow:1px 1px 1px 1px rgba(0,0,0,.2);-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:5px 0;padding:6px 9px 8px;float:left;max-width:70%}.rce-smsg-text{text-align:center;display:inline-block;font-size:15px}
|