@mindlogic-ai/logician-ui 2.0.0-alpha.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/README.md +234 -0
- package/USAGE.md +299 -0
- package/dist/Markdown-2D5K42BY.js +16 -0
- package/dist/Markdown-2D5K42BY.js.map +1 -0
- package/dist/Markdown-AZBXO5ZP.css +29 -0
- package/dist/Markdown-AZBXO5ZP.css.map +1 -0
- package/dist/Markdown-RJJEQN4R.mjs +3 -0
- package/dist/Markdown-RJJEQN4R.mjs.map +1 -0
- package/dist/analytics-GNSHP7X3.svg +1 -0
- package/dist/bulb-24SQINQB.svg +1 -0
- package/dist/chat-TLRFEUAS.svg +1 -0
- package/dist/chunk-5FHXD7KR.js +1735 -0
- package/dist/chunk-5FHXD7KR.js.map +1 -0
- package/dist/chunk-WSOHBA2C.mjs +1693 -0
- package/dist/chunk-WSOHBA2C.mjs.map +1 -0
- package/dist/edit-RWL72JNM.svg +1 -0
- package/dist/face-55KPDCH4.svg +1 -0
- package/dist/filled-analytics-RBC7KWND.svg +1 -0
- package/dist/filled-bulb-RC7E2WSM.svg +1 -0
- package/dist/filled-chat-A6J44Q7A.svg +1 -0
- package/dist/filled-edit-NKKWFSTW.svg +1 -0
- package/dist/filled-face-UML5C3LB.svg +1 -0
- package/dist/filled-layout-HBVCSDFO.svg +1 -0
- package/dist/index.css +51 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +964 -0
- package/dist/index.d.ts +964 -0
- package/dist/index.js +5600 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +5401 -0
- package/dist/index.mjs.map +1 -0
- package/dist/language-VBJ24OPV.svg +1 -0
- package/dist/layout-NDDSWNNV.svg +1 -0
- package/dist/pending-NF7NSBYO.svg +1 -0
- package/dist/receipt-MNLQIFCO.svg +1 -0
- package/dist/sparkles-EOEGVL6G.svg +1 -0
- package/dist/store-3RQPBJWG.svg +1 -0
- package/dist/store_active-SAOAGVKC.svg +1 -0
- package/dist/studio-LYPUIEFA.svg +1 -0
- package/dist/studio_active-BC6O66OI.svg +1 -0
- package/dist/vertical-ellipsis-3G4WEOCW.svg +1 -0
- package/package.json +138 -0
- package/src/components/Accordion/Accordion.stories.tsx +41 -0
- package/src/components/Accordion/Accordion.tsx +14 -0
- package/src/components/Accordion/AccordionButton.tsx +40 -0
- package/src/components/Accordion/AccordionItem.tsx +17 -0
- package/src/components/Accordion/index.ts +4 -0
- package/src/components/Alert/Alert.stories.tsx +38 -0
- package/src/components/Alert/Alert.styles.ts +19 -0
- package/src/components/Alert/Alert.tsx +41 -0
- package/src/components/Alert/Alert.types.ts +5 -0
- package/src/components/Alert/index.ts +1 -0
- package/src/components/AutowidthInput/AutowidthInput.stories.tsx +23 -0
- package/src/components/AutowidthInput/AutowidthInput.tsx +47 -0
- package/src/components/AutowidthInput/index.ts +1 -0
- package/src/components/Avatar/Avatar.stories.tsx +23 -0
- package/src/components/Avatar/Avatar.tsx +19 -0
- package/src/components/Avatar/index.tsx +1 -0
- package/src/components/Badge/Badge.stories.tsx +23 -0
- package/src/components/Badge/Badge.styles.ts +11 -0
- package/src/components/Badge/Badge.tsx +26 -0
- package/src/components/Badge/index.ts +2 -0
- package/src/components/Banner/Banner.stories.tsx +37 -0
- package/src/components/Banner/Banner.styles.ts +79 -0
- package/src/components/Banner/Banner.tsx +68 -0
- package/src/components/Banner/Banner.types.ts +6 -0
- package/src/components/Banner/index.ts +2 -0
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +14 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +19 -0
- package/src/components/Breadcrumb/Breadcrumb.types.ts +3 -0
- package/src/components/Breadcrumb/BreadcrumbItem/BreadcrumbItem.tsx +12 -0
- package/src/components/Breadcrumb/BreadcrumbItem/BreadcrumbItem.types.ts +3 -0
- package/src/components/Breadcrumb/BreadcrumbItem/index.ts +2 -0
- package/src/components/Breadcrumb/BreadcrumbLink/BreadcrumbLink.tsx +30 -0
- package/src/components/Breadcrumb/BreadcrumbLink/BreadcrumbLink.types.ts +3 -0
- package/src/components/Breadcrumb/BreadcrumbLink/index.ts +2 -0
- package/src/components/Breadcrumb/index.ts +3 -0
- package/src/components/Button/Button.stories.tsx +52 -0
- package/src/components/Button/Button.styles.ts +59 -0
- package/src/components/Button/Button.tsx +43 -0
- package/src/components/Button/Button.types.ts +13 -0
- package/src/components/Button/index.tsx +3 -0
- package/src/components/Card/Card.stories.tsx +24 -0
- package/src/components/Card/Card.styles.ts +30 -0
- package/src/components/Card/Card.tsx +29 -0
- package/src/components/Card/Card.types.ts +8 -0
- package/src/components/Card/index.ts +2 -0
- package/src/components/Carousel/Carousel.stories.tsx +159 -0
- package/src/components/Carousel/Carousel.tsx +160 -0
- package/src/components/Carousel/Carousel.types.ts +22 -0
- package/src/components/Carousel/index.ts +1 -0
- package/src/components/CarouselModal/CarouselModal.stories.tsx +53 -0
- package/src/components/CarouselModal/CarouselModal.tsx +106 -0
- package/src/components/CarouselModal/CarouselModal.types.ts +16 -0
- package/src/components/CarouselModal/index.ts +2 -0
- package/src/components/Checkbox/Checkbox.stories.tsx +16 -0
- package/src/components/Checkbox/Checkbox.tsx +29 -0
- package/src/components/Checkbox/Checkbox.types.ts +3 -0
- package/src/components/Checkbox/index.ts +2 -0
- package/src/components/Chip/Chip.stories.tsx +44 -0
- package/src/components/Chip/Chip.styles.ts +114 -0
- package/src/components/Chip/Chip.tsx +23 -0
- package/src/components/Chip/Chip.types.ts +14 -0
- package/src/components/Chip/index.ts +2 -0
- package/src/components/ChipButton/Chip.types.ts +4 -0
- package/src/components/ChipButton/ChipButton.tsx +25 -0
- package/src/components/ChipButton/index.ts +1 -0
- package/src/components/Code/Code.stories.tsx +28 -0
- package/src/components/Code/Code.tsx +160 -0
- package/src/components/Code/Code.types.ts +40 -0
- package/src/components/Code/_components/CopyButton.tsx +48 -0
- package/src/components/Code/index.ts +1 -0
- package/src/components/CodeTabs/CodeTabs.stories.tsx +51 -0
- package/src/components/CodeTabs/CodeTabs.tsx +98 -0
- package/src/components/CodeTabs/CodeTabs.types.ts +17 -0
- package/src/components/CodeTabs/index.ts +1 -0
- package/src/components/Container/Container.stories.tsx +28 -0
- package/src/components/Container/Container.tsx +21 -0
- package/src/components/Container/index.ts +1 -0
- package/src/components/Container/useContainerSize.ts +47 -0
- package/src/components/CopyableCode/CopyableCode.stories.tsx +26 -0
- package/src/components/CopyableCode/CopyableCode.tsx +58 -0
- package/src/components/CopyableCode/CopyableCode.types.ts +7 -0
- package/src/components/CopyableCode/index.ts +2 -0
- package/src/components/CrossPageToasts/CrossPageToasts.tsx +33 -0
- package/src/components/CrossPageToasts/index.ts +1 -0
- package/src/components/DataField/DataField.stories.tsx +61 -0
- package/src/components/DataField/DataField.styles.ts +33 -0
- package/src/components/DataField/DataField.tsx +141 -0
- package/src/components/DataField/DataField.types.ts +18 -0
- package/src/components/DataField/index.ts +1 -0
- package/src/components/DatePicker/RangeDatePicker.stories.tsx +45 -0
- package/src/components/DatePicker/RangeDatePicker.tsx +74 -0
- package/src/components/DatePicker/SingleDatePicker.stories.tsx +31 -0
- package/src/components/DatePicker/SingleDatePicker.tsx +72 -0
- package/src/components/DatePicker/index.ts +2 -0
- package/src/components/FileInput/FileInput.stories.tsx +28 -0
- package/src/components/FileInput/FileInput.tsx +117 -0
- package/src/components/FileInput/FileInput.types.ts +14 -0
- package/src/components/FileInput/index.ts +2 -0
- package/src/components/FileItem/FileItem.stories.tsx +27 -0
- package/src/components/FileItem/FileItem.tsx +134 -0
- package/src/components/FileItem/FileItem.types.ts +11 -0
- package/src/components/FileItem/index.ts +1 -0
- package/src/components/FileList/FileList.stories.tsx +65 -0
- package/src/components/FileList/FileList.tsx +97 -0
- package/src/components/FileList/FileList.types.ts +18 -0
- package/src/components/FileList/index.tsx +1 -0
- package/src/components/FormControl/FormControl.stories.tsx +16 -0
- package/src/components/FormControl/FormControl.tsx +12 -0
- package/src/components/FormControl/FormControl.types.ts +3 -0
- package/src/components/FormControl/index.ts +2 -0
- package/src/components/FormLabel/FormLabel.tsx +5 -0
- package/src/components/FormLabel/index.ts +1 -0
- package/src/components/GuideCue/GuideCue.stories.tsx +57 -0
- package/src/components/GuideCue/GuideCue.tsx +231 -0
- package/src/components/GuideCue/GuideCueContext.tsx +70 -0
- package/src/components/GuideCue/index.ts +2 -0
- package/src/components/Icon/Icon.stories.tsx +77 -0
- package/src/components/Icon/Icon.styles.ts +6 -0
- package/src/components/Icon/Icon.tsx +73 -0
- package/src/components/Icon/Icon.types.ts +10 -0
- package/src/components/Icon/IconMap.ts +290 -0
- package/src/components/Icon/icons/analytics.svg +1 -0
- package/src/components/Icon/icons/bulb.svg +1 -0
- package/src/components/Icon/icons/chat.svg +1 -0
- package/src/components/Icon/icons/edit.svg +1 -0
- package/src/components/Icon/icons/face.svg +1 -0
- package/src/components/Icon/icons/filled-analytics.svg +1 -0
- package/src/components/Icon/icons/filled-bulb.svg +1 -0
- package/src/components/Icon/icons/filled-chat.svg +1 -0
- package/src/components/Icon/icons/filled-edit.svg +1 -0
- package/src/components/Icon/icons/filled-face.svg +1 -0
- package/src/components/Icon/icons/filled-layout.svg +1 -0
- package/src/components/Icon/icons/language.svg +1 -0
- package/src/components/Icon/icons/layout.svg +1 -0
- package/src/components/Icon/icons/pending.svg +1 -0
- package/src/components/Icon/icons/receipt.svg +1 -0
- package/src/components/Icon/icons/sparkles.svg +1 -0
- package/src/components/Icon/icons/store.svg +1 -0
- package/src/components/Icon/icons/store_active.svg +1 -0
- package/src/components/Icon/icons/studio.svg +1 -0
- package/src/components/Icon/icons/studio_active.svg +1 -0
- package/src/components/Icon/icons/vertical-ellipsis.svg +1 -0
- package/src/components/Icon/index.tsx +3 -0
- package/src/components/IconButton/IconButton.stories.tsx +51 -0
- package/src/components/IconButton/IconButton.styles.ts +52 -0
- package/src/components/IconButton/IconButton.tsx +36 -0
- package/src/components/IconButton/IconButton.types.ts +12 -0
- package/src/components/IconButton/index.tsx +1 -0
- package/src/components/InfoSprinkle/InfoSprinkle.stories.tsx +25 -0
- package/src/components/InfoSprinkle/InfoSprinkle.tsx +48 -0
- package/src/components/InfoSprinkle/index.ts +1 -0
- package/src/components/InlineCode/InlineCode.tsx +18 -0
- package/src/components/InlineCode/index.ts +1 -0
- package/src/components/Input/Input.stories.tsx +55 -0
- package/src/components/Input/Input.tsx +358 -0
- package/src/components/Input/Input.types.ts +19 -0
- package/src/components/Input/index.tsx +2 -0
- package/src/components/LineGraph/LineGraph.stories.tsx +98 -0
- package/src/components/LineGraph/LineGraph.tsx +88 -0
- package/src/components/LineGraph/LineGraph.types.ts +41 -0
- package/src/components/LineGraph/index.ts +1 -0
- package/src/components/Link/Link.styles.ts +13 -0
- package/src/components/Link/Link.tsx +93 -0
- package/src/components/Link/index.ts +1 -0
- package/src/components/Loaders/PageLoader.stories.tsx +29 -0
- package/src/components/Loaders/PageLoader.tsx +30 -0
- package/src/components/Loaders/SectionLoader.stories.tsx +26 -0
- package/src/components/Loaders/SectionLoader.tsx +30 -0
- package/src/components/Loaders/index.ts +1 -0
- package/src/components/MDXEditor/MDXEditor.css +21 -0
- package/src/components/MDXEditor/MDXEditor.stories.tsx +45 -0
- package/src/components/MDXEditor/MDXEditor.tsx +189 -0
- package/src/components/MDXEditor/MDXEditor.types.ts +6 -0
- package/src/components/MDXEditor/index.ts +1 -0
- package/src/components/Markdown/Markdown.module.css +30 -0
- package/src/components/Markdown/Markdown.tsx +133 -0
- package/src/components/Markdown/Markdown.types.ts +5 -0
- package/src/components/Markdown/index.ts +2 -0
- package/src/components/Masonry/Masonry.stories.tsx +288 -0
- package/src/components/Masonry/Masonry.tsx +187 -0
- package/src/components/Masonry/Masonry.types.ts +18 -0
- package/src/components/Masonry/index.ts +2 -0
- package/src/components/MaxLengthIndicator/MaxLengthIndicator.stories.tsx +26 -0
- package/src/components/MaxLengthIndicator/MaxLengthIndicator.tsx +25 -0
- package/src/components/MaxLengthIndicator/index.tsx +1 -0
- package/src/components/Menu/Menu.stories.tsx +186 -0
- package/src/components/Menu/MenuButton.tsx +8 -0
- package/src/components/Menu/MenuButton.types.ts +23 -0
- package/src/components/Menu/MenuItem.tsx +35 -0
- package/src/components/Menu/MenuItem.types.ts +13 -0
- package/src/components/Menu/MenuList.tsx +19 -0
- package/src/components/Menu/index.ts +7 -0
- package/src/components/Modal/Modal.stories.tsx +83 -0
- package/src/components/Modal/Modal.styles.ts +14 -0
- package/src/components/Modal/Modal.tsx +14 -0
- package/src/components/Modal/Modal.types.ts +3 -0
- package/src/components/Modal/ModalBody.tsx +9 -0
- package/src/components/Modal/ModalCloseButton.tsx +18 -0
- package/src/components/Modal/ModalContent/ModalContent.tsx +8 -0
- package/src/components/Modal/ModalContent/ModalContent.types.ts +3 -0
- package/src/components/Modal/ModalContent/index.ts +1 -0
- package/src/components/Modal/ModalFooter/ModalFooter.module.css +3 -0
- package/src/components/Modal/ModalFooter/ModalFooter.tsx +20 -0
- package/src/components/Modal/ModalFooter/index.ts +1 -0
- package/src/components/Modal/ModalHeader.tsx +9 -0
- package/src/components/Modal/ModalOverlay.tsx +9 -0
- package/src/components/Modal/index.tsx +8 -0
- package/src/components/MonthRangePicker/MonthButton/MonthButton.tsx +105 -0
- package/src/components/MonthRangePicker/MonthButton/MonthButton.types.ts +42 -0
- package/src/components/MonthRangePicker/MonthButton/index.ts +2 -0
- package/src/components/MonthRangePicker/MonthRangePicker.stories.tsx +164 -0
- package/src/components/MonthRangePicker/MonthRangePicker.tsx +274 -0
- package/src/components/MonthRangePicker/MonthRangePicker.types.ts +38 -0
- package/src/components/MonthRangePicker/_utils/hasEnabledMonthsInYear.ts +15 -0
- package/src/components/MonthRangePicker/_utils/index.ts +6 -0
- package/src/components/MonthRangePicker/_utils/isMonthDisabled.ts +20 -0
- package/src/components/MonthRangePicker/_utils/isMonthInPreviewRange.ts +32 -0
- package/src/components/MonthRangePicker/_utils/isMonthInRange.ts +17 -0
- package/src/components/MonthRangePicker/_utils/isMonthSelected.ts +19 -0
- package/src/components/MonthRangePicker/_utils/isSelectionStart.ts +12 -0
- package/src/components/MonthRangePicker/constants.ts +63 -0
- package/src/components/MonthRangePicker/index.ts +2 -0
- package/src/components/Pagination/Pagination.stories.tsx +51 -0
- package/src/components/Pagination/Pagination.tsx +150 -0
- package/src/components/Pagination/Pagination.types.ts +12 -0
- package/src/components/Pagination/index.tsx +1 -0
- package/src/components/PasswordInput/PasswordInput.stories.tsx +16 -0
- package/src/components/PasswordInput/PasswordInput.tsx +42 -0
- package/src/components/PasswordInput/PasswordInput.types.ts +11 -0
- package/src/components/PasswordInput/index.ts +1 -0
- package/src/components/PinInput/PinInput.stories.tsx +26 -0
- package/src/components/PinInput/PinInput.tsx +53 -0
- package/src/components/PinInput/PinInput.types.ts +27 -0
- package/src/components/PinInput/index.tsx +2 -0
- package/src/components/ProgressBar/ProgressBar.stories.tsx +18 -0
- package/src/components/ProgressBar/ProgressBar.styles.ts +4 -0
- package/src/components/ProgressBar/ProgressBar.tsx +27 -0
- package/src/components/ProgressBar/ProgressBar.types.ts +4 -0
- package/src/components/ProgressBar/index.ts +1 -0
- package/src/components/RadialProgress/RadialProgress.stories.tsx +272 -0
- package/src/components/RadialProgress/RadialProgress.tsx +232 -0
- package/src/components/RadialProgress/RadialProgress.types.ts +27 -0
- package/src/components/RadialProgress/index.ts +2 -0
- package/src/components/Radio/Radio.stories.tsx +226 -0
- package/src/components/Radio/Radio.tsx +35 -0
- package/src/components/Radio/Radio.types.ts +21 -0
- package/src/components/Radio/RadioGroup.tsx +26 -0
- package/src/components/Radio/index.ts +3 -0
- package/src/components/SeeMoreButton/SeeMoreButton.stories.tsx +48 -0
- package/src/components/SeeMoreButton/SeeMoreButton.styles.ts +11 -0
- package/src/components/SeeMoreButton/SeeMoreButton.tsx +34 -0
- package/src/components/SeeMoreButton/SeeMoreButton.types.ts +6 -0
- package/src/components/SeeMoreButton/index.tsx +1 -0
- package/src/components/SegmentedControl/SegmentedControl.stories.tsx +96 -0
- package/src/components/SegmentedControl/SegmentedControl.styles.ts +28 -0
- package/src/components/SegmentedControl/SegmentedControl.tsx +89 -0
- package/src/components/SegmentedControl/SegmentedControl.types.ts +15 -0
- package/src/components/SegmentedControl/index.ts +2 -0
- package/src/components/SegmentedProgressBar/ProgressSegment.tsx +18 -0
- package/src/components/SegmentedProgressBar/SegmentedProgressBar.stories.tsx +228 -0
- package/src/components/SegmentedProgressBar/SegmentedProgressBar.tsx +25 -0
- package/src/components/SegmentedProgressBar/SegmentedProgressBar.types.ts +11 -0
- package/src/components/SegmentedProgressBar/SegmentedProgressBarContext.tsx +24 -0
- package/src/components/SegmentedProgressBar/index.ts +3 -0
- package/src/components/Select/MenuList/MenuList.tsx +87 -0
- package/src/components/Select/MenuList/MenuList.types.ts +21 -0
- package/src/components/Select/MenuList/VirtualizedMenuList.tsx +140 -0
- package/src/components/Select/MenuList/VirtualizedMenuListContext.tsx +35 -0
- package/src/components/Select/MenuList/index.ts +3 -0
- package/src/components/Select/Select.stories.tsx +70 -0
- package/src/components/Select/Select.styles.ts +102 -0
- package/src/components/Select/Select.tsx +204 -0
- package/src/components/Select/Select.types.ts +18 -0
- package/src/components/Select/_utils/resolveStyle.ts +21 -0
- package/src/components/Select/index.ts +1 -0
- package/src/components/Slider/Slider.stories.tsx +75 -0
- package/src/components/Slider/Slider.tsx +12 -0
- package/src/components/Slider/Slider.types.ts +3 -0
- package/src/components/Slider/SliderFilledTrack/SliderFilledTrack.tsx +14 -0
- package/src/components/Slider/SliderFilledTrack/SliderFilledTrack.types.ts +3 -0
- package/src/components/Slider/SliderFilledTrack/index.ts +2 -0
- package/src/components/Slider/SliderMark/SliderMark.tsx +12 -0
- package/src/components/Slider/SliderMark/SliderMark.types.ts +3 -0
- package/src/components/Slider/SliderMark/index.ts +2 -0
- package/src/components/Slider/SliderThumb/SliderThumb.tsx +22 -0
- package/src/components/Slider/SliderThumb/SliderThumb.types.ts +3 -0
- package/src/components/Slider/SliderThumb/index.ts +2 -0
- package/src/components/Slider/SliderTrack/SliderTrack.tsx +12 -0
- package/src/components/Slider/SliderTrack/SliderTrack.types.ts +3 -0
- package/src/components/Slider/SliderTrack/index.ts +2 -0
- package/src/components/Slider/index.ts +5 -0
- package/src/components/Spinner/Spinner.stories.tsx +16 -0
- package/src/components/Spinner/Spinner.tsx +20 -0
- package/src/components/Spinner/Spinner.types.ts +3 -0
- package/src/components/Spinner/index.ts +2 -0
- package/src/components/Switch/Switch.stories.tsx +63 -0
- package/src/components/Switch/Switch.tsx +8 -0
- package/src/components/Switch/index.ts +1 -0
- package/src/components/Table/ExpandingTr/ExpandingTr.tsx +31 -0
- package/src/components/Table/ExpandingTr/ExpandingTr.types.ts +9 -0
- package/src/components/Table/ExpandingTr/index.ts +2 -0
- package/src/components/Table/Table.stories.tsx +326 -0
- package/src/components/Table/Table.styles.ts +48 -0
- package/src/components/Table/Table.tsx +9 -0
- package/src/components/Table/Table.types.ts +16 -0
- package/src/components/Table/TableContainer.tsx +55 -0
- package/src/components/Table/TableContext.tsx +187 -0
- package/src/components/Table/Tbody.tsx +12 -0
- package/src/components/Table/Td.tsx +138 -0
- package/src/components/Table/Th.tsx +154 -0
- package/src/components/Table/Thead.tsx +5 -0
- package/src/components/Table/Tr.tsx +5 -0
- package/src/components/Table/index.tsx +8 -0
- package/src/components/Tabs/Tab/Tab.styles.ts +35 -0
- package/src/components/Tabs/Tab/Tab.tsx +67 -0
- package/src/components/Tabs/Tab/index.ts +1 -0
- package/src/components/Tabs/TabList/TabList.styles.ts +11 -0
- package/src/components/Tabs/TabList/TabList.tsx +19 -0
- package/src/components/Tabs/TabList/index.ts +1 -0
- package/src/components/Tabs/TabPanel.tsx +5 -0
- package/src/components/Tabs/TabPanels.tsx +5 -0
- package/src/components/Tabs/Tabs.stories.tsx +45 -0
- package/src/components/Tabs/Tabs.tsx +65 -0
- package/src/components/Tabs/Tabs.types.ts +19 -0
- package/src/components/Tabs/TabsContext.tsx +162 -0
- package/src/components/Tabs/index.tsx +5 -0
- package/src/components/Tag/Tag.stories.tsx +28 -0
- package/src/components/Tag/Tag.styles.ts +12 -0
- package/src/components/Tag/Tag.tsx +23 -0
- package/src/components/Tag/Tag.types.ts +5 -0
- package/src/components/Tag/TagCloseButton/TagCloseButton.tsx +12 -0
- package/src/components/Tag/TagCloseButton/TagCloseButton.types.ts +3 -0
- package/src/components/Tag/TagCloseButton/index.ts +2 -0
- package/src/components/Tag/TagLabel/TagLabel.tsx +12 -0
- package/src/components/Tag/TagLabel/TagLabel.types.ts +3 -0
- package/src/components/Tag/TagLabel/index.ts +2 -0
- package/src/components/Tag/TagLeftIcon/TagLeftIcon.tsx +12 -0
- package/src/components/Tag/TagLeftIcon/TagLeftIcon.types.ts +3 -0
- package/src/components/Tag/TagLeftIcon/index.ts +2 -0
- package/src/components/Tag/TagRightIcon/TagRightIcon.tsx +12 -0
- package/src/components/Tag/TagRightIcon/TagRightIcon.types.ts +3 -0
- package/src/components/Tag/TagRightIcon/index.ts +2 -0
- package/src/components/Tag/index.ts +5 -0
- package/src/components/Textarea/Textarea.tsx +56 -0
- package/src/components/Textarea/adjustHeight.tsx +9 -0
- package/src/components/Textarea/index.ts +1 -0
- package/src/components/Toast/Toast.stories.tsx +49 -0
- package/src/components/Toast/Toast.styles.ts +19 -0
- package/src/components/Toast/Toast.tsx +38 -0
- package/src/components/Toast/Toast.types.ts +22 -0
- package/src/components/Toast/ToastIcon/ToastIcon.tsx +26 -0
- package/src/components/Toast/ToastIcon/index.ts +0 -0
- package/src/components/Toast/index.ts +2 -0
- package/src/components/Toast/useToast.tsx +65 -0
- package/src/components/Tooltip/Tooltip.stories.tsx +97 -0
- package/src/components/Tooltip/Tooltip.tsx +22 -0
- package/src/components/Tooltip/Tooltip.types.ts +3 -0
- package/src/components/Tooltip/index.ts +2 -0
- package/src/components/Typography/H1.tsx +17 -0
- package/src/components/Typography/H2.tsx +17 -0
- package/src/components/Typography/H3.tsx +17 -0
- package/src/components/Typography/H4.tsx +17 -0
- package/src/components/Typography/H5.tsx +17 -0
- package/src/components/Typography/Link.tsx +49 -0
- package/src/components/Typography/Subtext.tsx +17 -0
- package/src/components/Typography/Subtitle.tsx +18 -0
- package/src/components/Typography/Text.tsx +22 -0
- package/src/components/Typography/Typography.stories.tsx +54 -0
- package/src/components/Typography/Typography.types.ts +3 -0
- package/src/components/Typography/index.ts +26 -0
- package/src/components/UrlInput/UrlInput.stories.tsx +66 -0
- package/src/components/UrlInput/UrlInput.tsx +47 -0
- package/src/components/UrlInput/index.tsx +1 -0
- package/src/hooks/useLocale.ts +11 -0
- package/src/hooks/useTranslate.ts +57 -0
- package/src/index.ts +96 -0
- package/src/theme/Palette.stories.tsx +171 -0
- package/src/theme/colors.ts +64 -0
- package/src/theme/font.ts +23 -0
- package/src/theme/global.ts +30 -0
- package/src/theme/index.ts +49 -0
- package/src/translations/Defaults.translations.json +100 -0
- package/src/types/css-modules.d.ts +0 -0
- package/src/types/svg.d.ts +15 -0
- package/src/utils/findKeyByValue.ts +17 -0
- package/src/utils/formatDateByLocale.ts +36 -0
- package/src/utils/formatFileSize.ts +14 -0
- package/src/utils/formatNumber.ts +29 -0
- package/src/utils/formatTextForMarkdown.ts +3 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/formatTextForMarkdown.ts","../src/translations/Defaults.translations.json","../src/hooks/useTranslate.ts","../src/theme/colors.ts","../src/theme/font.ts","../src/theme/global.ts","../src/theme/index.ts","../src/components/Card/Card.styles.ts","../src/components/Card/Card.tsx","../src/components/InlineCode/InlineCode.tsx","../src/components/SegmentedControl/SegmentedControl.styles.ts","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/Typography/H1.tsx","../src/components/Typography/H2.tsx","../src/components/Typography/H3.tsx","../src/components/Typography/H4.tsx","../src/components/Typography/H5.tsx","../src/components/Typography/Link.tsx","../src/components/Typography/Subtext.tsx","../src/components/Typography/Subtitle.tsx","../src/components/Typography/Text.tsx","../src/components/Icon/Icon.styles.ts","../src/components/Icon/IconMap.ts","../src/components/Icon/Icon.tsx","../src/components/IconButton/IconButton.styles.ts","../src/components/IconButton/IconButton.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/Code/_components/CopyButton.tsx","../src/components/Code/Code.tsx","../src/components/Table/Table.styles.ts","../src/components/Table/TableContext.tsx","../src/components/Table/Td.tsx","../src/components/Table/Tr.tsx","../src/components/Table/ExpandingTr/ExpandingTr.tsx","../src/components/Table/Table.tsx","../src/components/Table/TableContainer.tsx","../src/components/Table/Tbody.tsx","../src/components/Table/Th.tsx","../src/components/Table/Thead.tsx","../src/components/Markdown/Markdown.module.css","../src/components/Markdown/Markdown.tsx"],"names":["ChakraCard","jsx","ChakraCode","theme","size","forwardRef","useTheme","Heading","ChakraLink","Text","ChakraText","useToken","IconComponent","variantStyles","ChakraIconButton","ChakraTooltip","useState","jsxs","Flex","rest","SyntaxHighlighter","useCallback","useRef","useEffect","ChakraTd","ChakraTr","ChakraTable","ChakraTableContainer","ChakraTbody","ChakraTh","ChakraThead","Box","Markdown"],"mappings":"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","file":"chunk-WSOHBA2C.mjs","sourcesContent":["export const formatForMarkdown = (text: string): string => {\n return text?.replace(/\\\\n/g, ' \\n'); // Convert single `\\n` to a Markdown-compatible line break\n};\n","{\n \"get_started\": {\n \"ko\": \"시작하기\",\n \"en\": \"Get Started\",\n \"zh\": \"开始\",\n \"ja\": \"始める\",\n \"es\": \"Comenzar\"\n },\n \"next\": {\n \"ko\": \"다음\",\n \"en\": \"Next\",\n \"zh\": \"下一个\",\n \"ja\": \"次\",\n \"es\": \"Siguiente\"\n },\n \"copy\": {\n \"ko\": \"복사\",\n \"en\": \"Copy\",\n \"zh\": \"复制\",\n \"ja\": \"コピー\",\n \"es\": \"Copiar\"\n },\n \"copied\": {\n \"ko\": \"복사 완료\",\n \"en\": \"Copy completed\",\n \"zh\": \"复制完成\",\n \"ja\": \"コピー完了\",\n \"es\": \"Copia completada\"\n },\n \"see_more\": {\n \"ko\": \"더보기\",\n \"en\": \"See more\",\n \"zh\": \"查看更多\",\n \"ja\": \"もっと見る\",\n \"es\": \"Ver más\"\n },\n \"previous\": {\n \"ko\": \"이전\",\n \"en\": \"Previous\",\n \"zh\": \"以前\",\n \"ja\": \"前\",\n \"es\": \"Anterior\"\n },\n \"go_next_page_button\": {\n \"ko\": \"다음\",\n \"en\": \"Next\",\n \"zh\": \"下一个\",\n \"ja\": \"次\",\n \"es\": \"Siguiente\"\n },\n \"pagination_range_text\": {\n \"ko\": \"{num_total_items}개 중 {range_start} - {range_end} 표시 중\",\n \"en\": \"Displaying {range_start} - {range_end} of {num_total_items}\",\n \"zh\": \"显示第 {range_start} - {range_end} 项,共 {num_total_items} 项\",\n \"ja\": \"{num_total_items} 件中 {range_start} - {range_end} を表示中\",\n \"es\": \"Mostrando {range_start} - {range_end} de {num_total_items}\"\n },\n \"pagination_items_per_page\": {\n \"ko\": \"항목 수\",\n \"en\": \"items per page\",\n \"zh\": \"每页项目数\",\n \"ja\": \"ページごとの項目数\",\n \"es\": \"elementos por página\"\n },\n \"code_markdown_raw\": {\n \"ko\": \"원문\",\n \"en\": \"Raw\",\n \"zh\": \"原文\",\n \"ja\": \"原文\",\n \"es\": \"Crudo\"\n },\n \"code_markdown_preview\": {\n \"ko\": \"미리보기\",\n \"en\": \"Preview\",\n \"zh\": \"预览\",\n \"ja\": \"プレビュー\",\n \"es\": \"Vista previa\"\n },\n \"month_range_placeholder\": {\n \"ko\": \"월 범위 선택\",\n \"en\": \"Select month range\",\n \"zh\": \"选择月份范围\",\n \"ja\": \"月範囲を選択\",\n \"es\": \"Seleccionar rango de meses\"\n },\n \"clear\": {\n \"ko\": \"지우기\",\n \"en\": \"Clear\",\n \"zh\": \"清除\",\n \"ja\": \"クリア\",\n \"es\": \"Borrar\"\n },\n \"upload_your_file\": {\n \"ko\": \"파일 업로드\",\n \"en\": \"Upload file\",\n \"zh\": \"文件上传\",\n \"ja\": \"ファイルをアップロード\",\n \"es\": \"Subir archivo\"\n }\n}","'use client';\nimport { useCallback } from 'react';\n\nimport defaultTranslations from '../translations/Defaults.translations.json';\nimport { formatForMarkdown } from '../utils/formatTextForMarkdown';\n\nconst DEFAULT_LOCALE = 'ko';\n\n// Given a block of text and variables, replaces instances of the provided variables in the text\nconst replaceVariables = (text: string, variables?: { [key: string]: any }) => {\n if (!variables) return formatForMarkdown(text);\n\n const regex = /({(.*?)})/gi;\n\n const potentialKeys: string[] = text.match(regex) ?? [];\n const textParts: Array<string> = [];\n let lastIndex = 0;\n potentialKeys.forEach((potentialKey: string) => {\n const keyIndex = text.indexOf(potentialKey);\n // Push stuff up to potential key\n textParts.push(text.slice(lastIndex, keyIndex));\n // Push potential key\n textParts.push(text.slice(keyIndex, keyIndex + potentialKey.length));\n lastIndex = keyIndex + potentialKey.length;\n });\n // Push remaining\n textParts.push(text.slice(lastIndex));\n\n const parts = textParts.map(\n (partText: string) =>\n // Slice to remove { and }\n variables[partText.slice(1, partText.length - 1)] ??\n formatForMarkdown(partText)\n );\n\n return parts.every((part) => typeof part === 'string')\n ? parts.join('')\n : parts;\n};\n\nconst getLanguage = () => {\n return 'ko';\n};\n\nexport const useTranslate = (translations = {}) => {\n const userLanguage = getLanguage();\n return useCallback(\n (key: string, variables?: { [key: string]: any }) => {\n const locale = (userLanguage as string) ?? DEFAULT_LOCALE;\n const translation: string =\n { ...defaultTranslations, ...translations }[key]?.[locale] ?? key;\n const finalRes = replaceVariables(translation, variables);\n return finalRes;\n },\n [userLanguage, translations]\n );\n};\n","export const colors = {\n primary: {\n lighter: 'blue.50',\n light: 'blue.300',\n main: 'blue.900',\n dark: 'blue.1000',\n },\n secondary: {\n lighter: 'purple.50',\n light: 'purple.300',\n main: 'purple.500',\n dark: 'purple.700',\n },\n danger: {\n lighter: 'red.50',\n light: '#FFC9C9',\n main: 'red.500',\n dark: '#961616',\n },\n success: {\n lighter: '#EBFBF1',\n light: '#C1F4D4',\n main: '#019939',\n dark: '#016626',\n },\n warning: {\n lighter: '#FFF6E7',\n light: '#FFE9BA',\n main: 'yellow.400',\n dark: '#9D6508',\n },\n gray: {\n 50: '#F4F5F6',\n 100: '#EAECEF',\n 200: '#E5E7EB',\n 300: '#EBF0FB',\n 400: '#D1D4DA',\n 500: '#C7CAD1',\n 600: '#BDC1C9',\n 700: '#AEB2BC',\n 800: '#9499A5',\n 900: '#7F8493',\n 1000: '#6B7180',\n 1100: '#595E6A',\n 1200: '#474B55',\n 1300: '#363840',\n 1400: '#24262B',\n 1500: '#121315',\n },\n blue: {\n 100: '#FDFDFF',\n 200: '#FAFBFE',\n 300: '#EFF4FF',\n 400: '#D6E0F7',\n 500: '#94b0ec',\n 600: '#3182ce',\n 700: '#6c92e4',\n 800: '#4272dd',\n 900: '#1751D0',\n 1000: '#113B98',\n },\n white: '#FFFFFF',\n black: '#121212',\n};\n","// Placeholder font objects that can be overridden by the consuming application\n// The consuming app should define these fonts and pass them via theme customization\n\nexport const inter = {\n style: {\n fontFamily: '\"Inter\", sans-serif',\n },\n variable: '--es-font',\n};\n\nexport const noto = {\n style: {\n fontFamily: '\"Noto Sans\", sans-serif',\n },\n variable: '--font-noto',\n};\n\nexport const pretendard = {\n style: {\n fontFamily: '\"Pretendard Variable\", sans-serif',\n },\n variable: '--font-pretendard',\n};\n","import { inter, noto, pretendard } from './font';\n\nexport const global = {\n ':root': {\n '--chakra-colors-chakra-body-text': '#121315', // gray.1500 hex value\n '--chakra-colors-chakra-body-bg': '#FFFFFF',\n },\n\n html: {\n height: 'var(--chakra-vh)',\n fontSize: 14,\n fontFamily: [\n pretendard.style.fontFamily,\n inter.style.fontFamily,\n noto.style.fontFamily,\n ].join(','),\n overflow: 'auto',\n },\n\n 'html, body': {\n color: 'gray.1500', // Set the default body color\n },\n\n '#__next': {\n height: 'var(--chakra-vh)',\n },\n \"body[data-lang='es']\": {\n fontFamily: inter.style.fontFamily,\n },\n} as const;\n","import { extendTheme } from '@chakra-ui/react';\n\nimport { colors } from './colors';\nimport { global } from './global';\n\nconst theme = extendTheme({\n colors,\n semanticTokens: {\n colors: {\n ...colors,\n 'chakra-body-text': 'gray.1500',\n 'chakra-body-bg': 'white',\n 'chakra-body-text-secondary': 'gray.1200',\n },\n },\n styles: {\n global,\n },\n\n fonts: {\n body: '\"Pretendard Variable\", \"Inter\", \"Noto Sans\", sans-serif',\n heading: '\"Pretendard Variable\", \"Inter\", \"Noto Sans\", sans-serif',\n },\n\n // 반응형 폰트 사이즈 - 모바일에서는 더 작은 폰트 크기, 데스크톱에서는 기존 크기 유지\n fontSizes: {\n // 커스텀 폰트 크기 토큰 (em 단위 사용)\n // xs: { base: '0.7em', md: '0.7em' },\n subtitle: { base: '0.8em', md: '0.92em' },\n subtext: { base: '0.8em', md: '0.92em' },\n p: { base: '0.9em', md: '1em' },\n h5: { base: '1.1em', md: '1.2em' },\n h4: { base: '1.25em', md: '1.44em' },\n h3: { base: '1.5em', md: '1.75em' },\n h2: { base: '2em', md: '2.5em' },\n h1: { base: '2.4em', md: '3em' },\n },\n\n radii: {\n none: '0',\n sm: '6px',\n md: '8px',\n lg: '12px',\n xl: '32px',\n full: '9999px',\n },\n});\n\nexport default theme;\n","import theme from '@/theme/index';\n\n// Light mode styles only\nexport const cardStyles = {\n bgColor: theme.colors.white,\n color: theme.colors.black,\n borderColor: theme.colors.gray[100],\n};\n\nexport const clickableStyles = {\n cursor: 'pointer',\n _hover: {\n boxShadow: 'lg',\n ['.card-image']: {\n // TODO: define in theme\n transition: '0.3s all',\n transform: 'scale(1.05)',\n backgroundSize: '105%',\n },\n },\n};\n\nexport const variantStyles = {\n default: {},\n gradient: {\n bg: `linear-gradient(180deg, #F5F8FD 0%, #FFFFFF 100%)`,\n border: `1px solid`,\n borderColor: 'blue.600',\n },\n};\n","import { forwardRef } from 'react';\nimport { Card as ChakraCard } from '@chakra-ui/react';\n\nimport { clickableStyles, variantStyles } from './Card.styles';\nimport { CardProps } from './Card.types';\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>(\n ({ clickable, variant = 'default', ...rest }, ref) => {\n return (\n <ChakraCard\n ref={ref}\n position=\"relative\"\n bgColor=\"inherit\"\n color=\"inherit\"\n boxShadow=\"none\"\n border=\"1px solid\"\n borderColor=\"gray.300\"\n borderRadius=\"lg\"\n transition=\"0.3s all\"\n p={8}\n {...(clickable ? clickableStyles : {})}\n {...variantStyles[variant]}\n {...rest}\n />\n );\n }\n);\n\nCard.displayName = 'Card';\n","import {\n Code as ChakraCode,\n CodeProps as ChakraCodeProps,\n} from '@chakra-ui/react';\n\nexport const InlineCode = ({ children, ...rest }: ChakraCodeProps) => {\n return (\n <ChakraCode\n bg=\"gray.50\"\n color=\"primary.dark\"\n borderRadius=\"sm\"\n fontSize=\"p\"\n {...rest}\n >\n {children}\n </ChakraCode>\n );\n};\n","import { ButtonProps } from '../Button/Button.types';\nimport { SegmentedControlProps } from './SegmentedControl.types';\n\nexport const OptionStyles: Record<\n Exclude<SegmentedControlProps['size'], undefined>,\n ButtonProps\n> = {\n xs: {\n minW: 6,\n paddingInlineStart: 2,\n paddingInlineEnd: 2,\n h: 6,\n },\n sm: {\n minW: 10,\n paddingInlineStart: 6,\n paddingInlineEnd: 6,\n h: 8,\n },\n md: {\n paddingInlineStart: 6,\n paddingInlineEnd: 6,\n minW: 10,\n h: 10,\n },\n lg: {},\n xl: {},\n};\n","import { useState } from 'react';\nimport { Button, Flex, useTheme } from '@chakra-ui/react';\nimport { motion } from 'framer-motion';\n\nimport { OptionStyles } from './SegmentedControl.styles';\nimport { SegmentedControlProps } from './SegmentedControl.types';\n\nexport const SegmentedControl = ({\n options,\n value,\n onSelect,\n borderRadius = 'md',\n size,\n ...rest\n}: SegmentedControlProps) => {\n const [internalValue, setInternalValue] = useState(options[0].value);\n const theme = useTheme();\n\n // Use the controlled value if provided, otherwise use the internal state\n const activeValue = value !== undefined ? value : internalValue;\n const activeIndex = options.findIndex(\n (option) => option.value === activeValue\n );\n\n const getControlPadding: (\n size: SegmentedControlProps['size']\n ) => SegmentedControlProps['padding'] = (size = 'md') => {\n const paddings = {\n xs: theme.space[1],\n sm: theme.space[1],\n md: theme.space[1],\n lg: {},\n xl: {},\n };\n return paddings[size];\n };\n\n const handleSelect = (selectedValue: string) => {\n if (value === undefined) {\n setInternalValue(selectedValue);\n }\n if (onSelect) onSelect(selectedValue);\n };\n\n return (\n <Flex\n position=\"relative\"\n borderRadius={borderRadius}\n bg=\"gray.50\"\n // p=\"1\"\n {...rest}\n >\n <motion.div\n initial={false}\n animate={{\n x: `calc(${100 * activeIndex}% + ${getControlPadding(size)})`,\n }}\n transition={{ type: 'spring', stiffness: 300, damping: 30 }}\n style={{\n position: 'absolute',\n // @ts-expect-error - Chakra UI responsive values in Framer Motion styles\n top: getControlPadding(size),\n // @ts-expect-error - Chakra UI responsive values in Framer Motion styles\n bottom: getControlPadding(size),\n left: `calc(${activeIndex * 2} * ${getControlPadding(size)})`,\n width: `calc(${100 / options.length}% - 2 * ${getControlPadding(size)})`,\n borderRadius: theme.radii[borderRadius],\n background: theme.colors.white,\n boxShadow: theme.shadows.md,\n }}\n />\n\n {options.map((option) => (\n <Button\n key={option.value}\n flex={1}\n variant=\"ghost\"\n color={activeValue === option.value ? 'gray.1200' : 'gray.600'}\n onClick={() => handleSelect(option.value)}\n _hover={{ bg: 'transparent' }}\n fontSize={size}\n {...OptionStyles[size ?? 'md']}\n >\n {option.label}\n </Button>\n ))}\n </Flex>\n );\n};\n","import { forwardRef } from 'react';\nimport { Heading, HeadingProps, useTheme } from '@chakra-ui/react';\n\nexport const H1 = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Heading\n ref={ref}\n as=\"h1\"\n fontSize={theme.fontSizes.h1}\n fontWeight=\"bold\"\n {...props}\n />\n );\n});\n\nH1.displayName = 'H1';\n","import { forwardRef } from 'react';\nimport { Heading, HeadingProps, useTheme } from '@chakra-ui/react';\n\nexport const H2 = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Heading\n ref={ref}\n as=\"h2\"\n fontSize={theme.fontSizes.h2}\n fontWeight=\"semibold\"\n {...props}\n />\n );\n});\n\nH2.displayName = 'H2';\n","import { forwardRef } from 'react';\nimport { Heading, HeadingProps, useTheme } from '@chakra-ui/react';\n\nexport const H3 = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Heading\n ref={ref}\n as=\"h3\"\n fontSize={theme.fontSizes.h3}\n fontWeight=\"semibold\"\n {...props}\n />\n );\n});\n\nH3.displayName = 'H3';\n","import { forwardRef } from 'react';\nimport { Heading, HeadingProps, useTheme } from '@chakra-ui/react';\n\nexport const H4 = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Heading\n ref={ref}\n as=\"h4\"\n fontSize={theme.fontSizes.h4}\n fontWeight=\"semibold\"\n {...props}\n />\n );\n});\n\nH4.displayName = 'H4';\n","import { forwardRef } from 'react';\nimport { Heading, HeadingProps, useTheme } from '@chakra-ui/react';\n\nexport const H5 = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Heading\n ref={ref}\n as=\"h5\"\n fontSize={theme.fontSizes.h5}\n fontWeight=\"bold\"\n {...props}\n />\n );\n});\n\nH5.displayName = 'H5';\n","import { forwardRef } from 'react';\nimport {\n Link as ChakraLink,\n LinkProps,\n useTheme,\n useToken,\n} from '@chakra-ui/react';\nimport { darken } from 'polished';\n\nexport interface LinkCustomProps extends LinkProps {\n variant?: 'error';\n}\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkCustomProps>(\n ({ color, variant, ...rest }, ref) => {\n const theme = useTheme();\n const defaultColor = theme.semanticTokens.colors.primary.main;\n const errorColor = theme.semanticTokens.colors.danger.main;\n const linkColor =\n useToken(\n 'colors',\n variant === 'error' ? errorColor : color || defaultColor\n ) ?? color;\n\n const getHoverColor = () => {\n let hoverColor;\n try {\n hoverColor = darken(0.1, linkColor);\n } catch (e) {\n hoverColor = 'inherit';\n }\n return hoverColor;\n };\n\n return (\n <ChakraLink\n ref={ref}\n fontWeight=\"semibold\"\n color={linkColor}\n _hover={{\n color: getHoverColor(),\n }} // Darken by 10% on hover\n {...rest}\n />\n );\n }\n);\n\nLink.displayName = 'Link';\n","import React, { forwardRef } from 'react';\nimport { Text, TextProps, useTheme } from '@chakra-ui/react';\n\nexport const Subtext = forwardRef<HTMLSpanElement, TextProps>((props, ref) => {\n const theme = useTheme();\n\n return (\n <Text\n ref={ref}\n fontSize={theme.fontSizes.subtext}\n fontWeight=\"regular\"\n {...props}\n />\n );\n});\n\nSubtext.displayName = 'Subtext';\n","import { forwardRef } from 'react';\nimport { Text, TextProps, useTheme } from '@chakra-ui/react';\n\nexport const Subtitle = forwardRef<HTMLSpanElement, TextProps>((props, ref) => {\n const theme = useTheme();\n return (\n <Text\n ref={ref}\n as=\"h6\"\n fontSize={theme.fontSizes.p}\n fontWeight=\"medium\"\n color=\"gray.1000\"\n {...props}\n />\n );\n});\n\nSubtitle.displayName = 'Subtitle';\n","import React, { forwardRef } from 'react';\nimport { Text as ChakraText, TextProps, useTheme } from '@chakra-ui/react';\n\nexport const Text = forwardRef<HTMLParagraphElement, TextProps>(\n (props, ref) => {\n const theme = useTheme();\n\n return (\n <ChakraText\n ref={ref}\n as=\"p\"\n fontSize={theme.fontSizes.p}\n lineHeight=\"1.5\"\n fontWeight=\"medium\"\n color=\"gray.1200\"\n {...props}\n />\n );\n }\n);\n\nText.displayName = 'Text';\n","import theme from '@/theme/index';\n\n// Light mode styles only\nexport const iconStyles = {\n color: theme.colors.black,\n};\n","import { BiDetail, BiExpandAlt } from 'react-icons/bi';\nimport { BsTranslate } from 'react-icons/bs';\nimport { CiFileOn } from 'react-icons/ci';\nimport {\n FaArchive,\n FaBeer,\n FaChartPie,\n FaGraduationCap,\n FaImage,\n FaMoneyBillWave,\n FaPlay,\n FaPrint,\n FaRegEye,\n FaRegEyeSlash,\n FaRegQuestionCircle,\n FaRegTrashAlt,\n FaRegUserCircle,\n FaSortAlphaDown,\n FaSortAlphaUp,\n FaSortNumericDown,\n FaSortNumericUp,\n FaUniversity,\n FaUserCheck,\n FaUserPlus,\n FaUsers,\n} from 'react-icons/fa';\nimport {\n FaCheck,\n FaCode,\n FaLock,\n FaPersonChalkboard,\n FaRegCopy,\n FaRotateRight,\n FaUserClock,\n} from 'react-icons/fa6';\nimport { GiTwoCoins } from 'react-icons/gi';\nimport { GoArrowDownRight, GoArrowUpRight } from 'react-icons/go';\nimport { GrUserAdmin } from 'react-icons/gr';\nimport { HiLightningBolt, HiRefresh, HiX } from 'react-icons/hi';\nimport {\n IoIosAddCircleOutline,\n IoIosArrowBack,\n IoIosArrowForward,\n IoIosAttach,\n IoIosCheckmarkCircle,\n IoIosList,\n IoIosMail,\n IoIosShareAlt,\n IoMdLink,\n IoMdSave,\n IoMdSettings,\n IoMdThumbsDown,\n IoMdThumbsUp,\n} from 'react-icons/io';\nimport {\n IoAddCircleOutline,\n IoAddOutline,\n IoCall,\n IoChatbubbleEllipses,\n IoChevronDownOutline,\n IoChevronForward,\n IoClose,\n IoCloseOutline,\n IoCodeSlash,\n IoDocumentTextSharp,\n IoEyeOffOutline,\n IoEyeOutline,\n IoFilter,\n IoHome,\n IoSearch,\n IoWarning,\n IoWarningOutline,\n} from 'react-icons/io5';\nimport { LiaNewspaper } from 'react-icons/lia';\nimport { IconType as ReactIconType } from 'react-icons/lib';\nimport {\n LuBookOpenText,\n LuDownload,\n LuExternalLink,\n LuGraduationCap,\n LuInfo,\n LuMenu,\n LuReceipt,\n LuSendHorizontal,\n LuUpload,\n} from 'react-icons/lu';\nimport {\n MdAnnouncement,\n MdCardMembership,\n MdError,\n MdFilterList,\n MdLogout,\n MdOutlineCalendarToday,\n MdOutlinePersonPin,\n MdOutlineSpaceDashboard,\n MdPreview,\n MdSpaceDashboard,\n MdThumbsUpDown,\n} from 'react-icons/md';\nimport { PiChatSlashBold, PiExam, PiGlobe, PiGlobeX } from 'react-icons/pi';\nimport { RxDotsHorizontal } from 'react-icons/rx';\nimport { SlSettings } from 'react-icons/sl';\nimport {\n TbAppWindowFilled,\n TbInfinity,\n TbLayoutNavbar,\n TbLockCog,\n TbMessageChatbotFilled,\n TbSum,\n TbWorldSearch,\n} from 'react-icons/tb';\n\nimport AnalyticsIcon from './icons/analytics.svg';\nimport BulbIcon from './icons/bulb.svg';\nimport ChatIcon from './icons/chat.svg';\nimport EditIcon from './icons/edit.svg';\nimport FaceIcon from './icons/face.svg';\nimport FilledAnalyticsIcon from './icons/filled-analytics.svg';\nimport FilledBulbIcon from './icons/filled-bulb.svg';\nimport FilledChatIcon from './icons/filled-chat.svg';\nimport FilledEditIcon from './icons/filled-edit.svg';\nimport FilledFaceIcon from './icons/filled-face.svg';\nimport FilledLayoutIcon from './icons/filled-layout.svg';\nimport LanguageIcon from './icons/language.svg';\nimport LayoutIcon from './icons/layout.svg';\nimport PendingIcon from './icons/pending.svg';\nimport ReceiptIcon from './icons/receipt.svg';\nimport SparklesIcon from './icons/sparkles.svg';\nimport StoreIcon from './icons/store.svg';\nimport StoreActiveIcon from './icons/store_active.svg';\nimport StudioIcon from './icons/studio.svg';\nimport StudioActiveIcon from './icons/studio_active.svg';\nimport VerticalEllipsisIcon from './icons/vertical-ellipsis.svg';\n\nexport const REACT_ICONS_MAP: { [key: string]: ReactIconType } = {\n BiDetail,\n BiExpandAlt,\n BsTranslate,\n CiFileOn,\n FaArchive,\n FaBeer,\n FaChartPie,\n FaCheck,\n FaCode,\n FaGraduationCap,\n FaImage,\n FaLock,\n FaMoneyBillWave,\n FaPersonChalkboard,\n FaPrint,\n FaRegQuestionCircle,\n FaRegCopy,\n FaRegTrashAlt,\n FaRegUserCircle,\n FaRegEye,\n FaRegEyeSlash,\n FaRotateRight,\n FaPlay,\n FaSortAlphaDown,\n FaSortAlphaUp,\n FaSortNumericDown,\n FaSortNumericUp,\n FaUniversity,\n FaUserCheck,\n FaUserClock,\n FaUserPlus,\n FaUsers,\n GiTwoCoins,\n GoArrowUpRight,\n GoArrowDownRight,\n IoIosArrowForward,\n GrUserAdmin,\n HiLightningBolt,\n HiRefresh,\n IoAddCircleOutline,\n IoAddOutline,\n IoCall,\n IoChatbubbleEllipses,\n IoChevronDownOutline,\n IoChevronForward,\n IoCodeSlash,\n IoClose,\n IoCloseOutline,\n IoDocumentTextSharp,\n IoIosList,\n IoMdLink,\n IoMdSave,\n IoMdThumbsUp,\n IoMdThumbsDown,\n IoEyeOutline,\n IoEyeOffOutline,\n IoFilter,\n IoHome,\n IoIosArrowBack,\n IoIosAttach,\n IoIosCheckmarkCircle,\n IoIosAddCircleOutline,\n IoIosMail,\n IoIosShareAlt,\n IoMdSettings,\n IoWarningOutline,\n IoSearch,\n IoWarning,\n LuExternalLink,\n LuDownload,\n LiaNewspaper,\n LuBookOpenText,\n LuGraduationCap,\n LuInfo,\n LuMenu,\n LuReceipt,\n LuSendHorizontal,\n LuUpload,\n MdAnnouncement,\n MdCardMembership,\n MdError,\n MdFilterList,\n MdLogout,\n MdOutlineCalendarToday,\n MdOutlinePersonPin,\n MdOutlineSpaceDashboard,\n HiX,\n MdPreview,\n MdSpaceDashboard,\n MdThumbsUpDown,\n PiChatSlashBold,\n PiExam,\n PiGlobe,\n PiGlobeX,\n RxDotsHorizontal,\n SlSettings,\n TbAppWindowFilled,\n TbInfinity,\n TbLayoutNavbar,\n TbLockCog,\n TbMessageChatbotFilled,\n TbSum,\n TbWorldSearch,\n};\n\n/**\n * Map of icon names to SVGs. Records named as {iconName}: {iconName}Icon.\n *\n * Sorted alphabetically.\n */\nexport const CUSTOM_ICON_MAP: {\n [key: string]: React.FunctionComponent<\n React.SVGProps<SVGSVGElement> & { title?: string }\n >;\n} = {\n Analytics: AnalyticsIcon,\n Bulb: BulbIcon,\n Chat: ChatIcon,\n Edit: EditIcon,\n Face: FaceIcon,\n Language: LanguageIcon,\n Layout: LayoutIcon,\n FilledAnalytics: FilledAnalyticsIcon,\n FilledBulb: FilledBulbIcon,\n FilledChat: FilledChatIcon,\n FilledEdit: FilledEditIcon,\n FilledFace: FilledFaceIcon,\n FilledLayout: FilledLayoutIcon,\n Pending: PendingIcon,\n Sparkles: SparklesIcon,\n Studio: StudioIcon,\n StudioActive: StudioActiveIcon,\n Store: StoreIcon,\n StoreActive: StoreActiveIcon,\n Receipt: ReceiptIcon,\n VerticalEllipsis: VerticalEllipsisIcon,\n} as const;\n\nexport type IconType =\n | keyof typeof CUSTOM_ICON_MAP\n | keyof typeof REACT_ICONS_MAP;\n\n/**\n * Convert map of SVGs to a const of strings only to minimize import size\n */\nexport const IconTypes: { [K in IconType]: IconType } = Object.keys({\n ...CUSTOM_ICON_MAP,\n ...REACT_ICONS_MAP,\n}).reduce(\n (prevVal, currVal) => {\n prevVal[currVal] = currVal;\n return prevVal;\n },\n {} as { [K in IconType]: IconType }\n);\n","import React, { forwardRef } from 'react';\nimport { IconType as ReactIconType } from 'react-icons/lib';\nimport { chakra, useToken } from '@chakra-ui/react';\n\nimport { iconStyles } from '@/components/Icon/Icon.styles';\n\nimport { IconProps } from './Icon.types';\nimport { CUSTOM_ICON_MAP, REACT_ICONS_MAP } from './IconMap';\n\nexport const Icon = forwardRef<SVGSVGElement, IconProps>(\n (\n {\n icon,\n color,\n boxSize = 'md', // Default to 'md' size\n ...rest\n }: IconProps,\n ref\n ) => {\n // Map `boxSize` to Chakra size tokens using `useToken`\n const sizeMapping = {\n xs: '4',\n sm: '5',\n md: '6',\n lg: '8',\n xl: '10',\n };\n\n const mappedBoxSize =\n sizeMapping[boxSize as keyof typeof sizeMapping] || boxSize;\n const [resolvedBoxSize] = useToken('sizes', [\n mappedBoxSize as string | number,\n ]);\n const [resolvedColor] = useToken('colors', [color || '']);\n\n // Handle react-icons\n if (icon in REACT_ICONS_MAP) {\n const IconComponent = chakra(REACT_ICONS_MAP[icon] as ReactIconType);\n return (\n <IconComponent\n size={resolvedBoxSize}\n color={resolvedColor || color}\n ref={ref}\n {...rest}\n />\n );\n }\n\n // Handle custom SVG icons\n let IconComponent = CUSTOM_ICON_MAP[icon];\n if (!IconComponent) {\n console.warn(\n `No icon component found for ${icon}. Rendering fallback icon.`\n );\n IconComponent = CUSTOM_ICON_MAP['VerticalEllipsis'];\n }\n\n // Wrap the custom icon in Chakra's `chakra` for compatibility\n const ChakraIcon = chakra(IconComponent);\n\n return (\n <ChakraIcon\n {...iconStyles}\n color={resolvedColor}\n boxSize={resolvedBoxSize}\n ref={ref}\n {...rest}\n />\n );\n }\n);\n\nIcon.displayName = 'Icon';\n","import { IconButtonProps } from '@chakra-ui/react';\n\nimport { IconButtonVariant } from './IconButton.types';\n\n// TODO: UX를 위해 hover, active 스타일 구분 필요\nexport const variantStyles: Record<\n Exclude<IconButtonVariant, undefined>,\n Partial<IconButtonProps>\n> = {\n primary: {\n borderColor: 'primary.main',\n bgColor: 'primary.main',\n color: 'white',\n _hover: {\n borderColor: 'blue.800',\n bgColor: 'blue.800',\n },\n },\n secondary: {\n borderColor: 'primary.light',\n bgColor: 'primary.light',\n color: 'primary.main',\n _hover: {\n borderColor: 'blue.200',\n bgColor: 'blue.200',\n },\n },\n tertiary: {\n borderColor: 'gray.400',\n bgColor: 'white',\n color: 'gray.1200',\n _hover: {\n bgColor: 'gray.50',\n },\n },\n danger: {\n borderColor: 'danger.main',\n bgColor: 'danger.main',\n color: 'white',\n _hover: {\n bgColor: 'red.600',\n },\n },\n link: {\n borderColor: 'transparent',\n bgColor: 'transparent',\n borderRadius: 'none',\n _hover: {\n bgColor: 'transparent',\n },\n },\n};\n","import { ForwardedRef, forwardRef } from 'react';\nimport { IconButton as ChakraIconButton } from '@chakra-ui/react';\n\nimport { variantStyles } from './IconButton.styles';\nimport { IconButtonProps } from './IconButton.types';\n\nexport const IconButton = forwardRef(\n (\n { variant = 'link', sx, ...rest }: IconButtonProps,\n ref?: ForwardedRef<HTMLButtonElement>\n ) => {\n return (\n <ChakraIconButton\n border=\"1px solid\"\n borderRadius=\"full\"\n background=\"transparent\"\n {...variantStyles[variant]}\n {...rest}\n ref={ref}\n sx={{\n ...sx,\n '& svg': {\n pointerEvents: 'none',\n ...(sx as any)?.['& svg'],\n },\n '& svg *': {\n pointerEvents: 'none',\n ...(sx as any)?.['& svg *'],\n },\n }}\n />\n );\n }\n);\n\nIconButton.displayName = 'IconButton';\n","import { ForwardedRef, forwardRef } from 'react';\nimport { Tooltip as ChakraTooltip, useTheme } from '@chakra-ui/react';\n\nimport { TooltipProps } from './Tooltip.types';\n\nexport const Tooltip = forwardRef(\n ({ ...rest }: TooltipProps, ref?: ForwardedRef<HTMLDivElement>) => {\n const theme = useTheme();\n return (\n <ChakraTooltip\n bgColor=\"gray.1200\"\n placement=\"top\"\n fontSize={theme.fontSizes.p}\n closeOnScroll\n {...rest}\n ref={ref}\n />\n );\n }\n);\n\nTooltip.displayName = 'Tooltip';\n","import { MouseEventHandler, useState } from 'react';\n\nimport { Icon } from '@/components/Icon';\nimport { IconButton } from '@/components/IconButton';\nimport { IconButtonProps } from '@/components/IconButton/IconButton.types';\nimport { Tooltip } from '@/components/Tooltip';\nimport { useTranslate } from '@/hooks/useTranslate';\n\nexport const CopyButton = ({\n onClick,\n ...rest\n}: Omit<IconButtonProps, 'aria-label'>) => {\n const translate = useTranslate();\n const [labelText, setLabelText] = useState<string>(\n translate('copy') as string\n );\n\n // Allow both boolean and undefined to toggle back and forth between controlled and uncontrolled states fluidly\n const [isTooltipOpen, setIsTooltipOpen] = useState<boolean | undefined>(\n undefined\n );\n\n const handleClick: MouseEventHandler = (e) => {\n // Set it to 'Copied'\n setLabelText(translate('copied') as string);\n // @ts-expect-error - Event type mismatch between generic and specific button events\n onClick?.(e);\n setIsTooltipOpen(true);\n // Set it back to 'Copy' after 2s, and back to an uncontrolled tooltip\n const t = setTimeout(() => {\n setLabelText(translate('copy') as string);\n setIsTooltipOpen(undefined);\n clearTimeout(t);\n }, 3000);\n };\n\n return (\n <Tooltip label={labelText} isOpen={isTooltipOpen} placement=\"top\">\n <IconButton\n aria-label=\"Copy code\"\n icon={<Icon icon=\"FaRegCopy\" boxSize=\"sm\" />}\n onClick={handleClick}\n p={0}\n {...rest}\n />\n </Tooltip>\n );\n};\n","import { lazy, Suspense, useState } from 'react';\nimport { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';\nimport { a11yDark } from 'react-syntax-highlighter/dist/esm/styles/prism';\nimport { Box, Flex, Spinner } from '@chakra-ui/react';\n\nimport { useTranslate } from '@/hooks/useTranslate';\n\nimport { Card } from '../Card';\nimport { InlineCode } from '../InlineCode';\nimport { SegmentedControl } from '../SegmentedControl';\nimport { Subtext } from '../Typography';\nimport { CopyButton } from './_components/CopyButton';\nimport { CodeProps } from './Code.types';\n\n// Use dynamic import to break circular dependency\nconst Markdown = lazy(() =>\n import('../Markdown').then((module) => ({ default: module.Markdown }))\n);\n\nexport const Code = ({\n children,\n language: languageProp,\n onCopy,\n style = a11yDark,\n customStyle,\n hideHeader = false,\n containerProps,\n ...rest\n}: CodeProps) => {\n const language = languageProp === 'js' ? 'javascript' : languageProp;\n\n const translate = useTranslate();\n\n const [isMarkdownPreviewMode, setIsMarkdownPreviewMode] =\n useState<boolean>(false);\n\n const handleCopyClick = () => {\n onCopy?.(children);\n };\n\n const handleMarkdownModeChange = (selectedValue: string) => {\n setIsMarkdownPreviewMode(selectedValue === 'preview');\n };\n\n // On click (not drag), select the code content\n const handleSyntaxHighlighterClick = (\n e: React.MouseEvent<HTMLPreElement>\n ) => {\n // Skip selection on double-click or if user is already selecting text\n if (e.detail > 1 || window.getSelection()?.toString() !== '') {\n return;\n }\n\n try {\n // Find the first child element that contains the code text\n const codeElement = e.currentTarget.querySelector('code');\n\n if (codeElement) {\n const range = document.createRange();\n range.selectNodeContents(codeElement);\n\n const selection = window.getSelection();\n if (selection) {\n selection.removeAllRanges();\n selection.addRange(range);\n }\n }\n } catch (error) {\n console.error('Error selecting code content:', error);\n }\n };\n\n return (\n <Card\n p={0}\n borderRadius=\"none\"\n {...containerProps}\n className={['ml-code', containerProps?.className].join(' ')}\n >\n {!hideHeader && language && (\n <Flex\n className=\"ml-code-header\"\n justify=\"space-between\"\n align=\"center\"\n px={4}\n py={2}\n bgColor=\"white\"\n borderBottom=\"1px solid\"\n borderColor=\"primary.light\"\n width=\"100%\"\n zIndex={2} // show above the code block, but below the TopNav\n >\n <Subtext fontWeight=\"bold\" color=\"gray.1200\">\n <pre>{language}</pre>\n </Subtext>\n <Flex align=\"center\" justify=\"flex-end\" gap={2}>\n {language === 'markdown' && (\n <SegmentedControl\n size=\"sm\"\n options={[\n {\n label: translate('code_markdown_raw') as string,\n value: 'raw',\n },\n {\n label: translate('code_markdown_preview') as string,\n value: 'preview',\n },\n ]}\n onSelect={handleMarkdownModeChange}\n />\n )}\n {onCopy && <CopyButton onClick={handleCopyClick} />}\n </Flex>\n </Flex>\n )}\n <Box overflow=\"hidden\">\n <Box position=\"relative\" overflowY=\"scroll\" h=\"fit-content\" p={0}>\n {isMarkdownPreviewMode ? (\n <Box p={2}>\n <Suspense fallback={<Spinner />}>\n <Markdown\n // Prevent infinite loop of markdown rendering\n components={{\n code: ({ className, ...rest }: any) => {\n // className denotes the language of the code block and only exists for block code\n if (!className) {\n return <InlineCode {...rest} />;\n }\n },\n }}\n >\n {children}\n </Markdown>\n </Suspense>\n </Box>\n ) : (\n // @ts-expect-error - SyntaxHighlighter type issues with React 18\n <SyntaxHighlighter\n language={language}\n style={style}\n wrapLines\n wrapLongLines\n {...rest}\n customStyle={{\n maxWidth: '100%',\n margin: 0,\n borderRadius: 0,\n ...customStyle,\n }}\n onClick={handleSyntaxHighlighterClick}\n >\n {children}\n </SyntaxHighlighter>\n )}\n </Box>\n </Box>\n </Card>\n );\n};\n","import { TableScrollState } from './TableContext';\n\nexport type StickyDirection = 'left' | 'right';\n\nexport const getStickyStyles = (\n isSticky: boolean,\n stickyDirection: StickyDirection = 'left',\n scrollState: TableScrollState,\n stickyOffset = 0,\n isLastSticky = false\n) => {\n if (!isSticky || !scrollState) return {};\n const { isScrollStart, isScrollEnd, isScrolling } = scrollState;\n\n // 양쪽 sticky 상태\n const isBothSticky =\n (stickyDirection === 'left' && isScrollEnd) ||\n (stickyDirection === 'right' && isScrollStart);\n\n // 한쪽 sticky 상태\n const isSingleSticky = isScrolling;\n\n // Only show shadow if this is the last sticky column on this side\n const shouldShowShadow = isLastSticky && (isSingleSticky || isBothSticky);\n\n return {\n position: 'sticky' as const,\n overflow: 'visible',\n [stickyDirection]: `${stickyOffset}px`,\n zIndex: 2,\n backgroundColor: 'white',\n ...(shouldShowShadow && {\n _after: {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n bottom: '-1px',\n width: '32px',\n insetInlineEnd: stickyDirection === 'left' ? 0 : '100%',\n translate: stickyDirection === 'left' ? '100%' : '-8',\n boxShadow:\n stickyDirection === 'left'\n ? 'rgba(0, 0, 0, 0.16) 8px 0px 8px -8px inset'\n : 'rgba(0, 0, 0, 0.16) -8px 0px 8px -8px inset',\n },\n }),\n };\n};\n","import React, {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nexport interface TableScrollState {\n isScrollStart: boolean;\n isScrollEnd: boolean;\n isScrolling: boolean;\n}\n\ninterface StickyColumnInfo {\n leftColumnWidths: Map<number, number>; // Maps index to width\n rightColumnWidths: Map<number, number>; // Maps index to width\n}\n\ninterface TableContextValue extends TableScrollState {\n setContainerRef: (node: HTMLDivElement | null) => void;\n registerStickyColumn: (\n direction: 'left' | 'right',\n index: number,\n width: number\n ) => void;\n getStickyOffset: (direction: 'left' | 'right', index: number) => number;\n isLastStickyColumn: (direction: 'left' | 'right', index: number) => boolean;\n}\n\nconst TableContext = createContext<TableContextValue | null>(null);\n\nexport const useTableContext = () => {\n const context = useContext(TableContext);\n if (!context) {\n console.error('useTableContext must be used within a TableProvider');\n }\n return context;\n};\n\ninterface TableProviderProps {\n children: ReactNode;\n}\n\nexport const TableProvider: React.FC<TableProviderProps> = ({ children }) => {\n const containerRef = useRef<HTMLDivElement | null>(null);\n const [scrollState, setScrollState] = useState<TableScrollState>({\n isScrollStart: true,\n isScrollEnd: false,\n isScrolling: false,\n });\n\n const stickyColumnsRef = useRef<StickyColumnInfo>({\n leftColumnWidths: new Map(),\n rightColumnWidths: new Map(),\n });\n\n // 스크롤 상태 업데이트\n const updateScrollState = useCallback(() => {\n const container = containerRef.current;\n if (!container) return;\n\n const { scrollLeft, scrollWidth, clientWidth } = container;\n\n const isScrollStart = scrollLeft <= 1;\n const isScrollEnd = Math.abs(scrollWidth - clientWidth - scrollLeft) <= 1;\n\n setScrollState((prevState) => {\n // 상태가 변경된 경우에만 업데이트 (불필요한 리렌더링 방지)\n if (\n prevState.isScrollStart !== isScrollStart ||\n prevState.isScrollEnd !== isScrollEnd ||\n prevState.isScrolling !== (!isScrollStart && !isScrollEnd)\n ) {\n return {\n isScrollStart,\n isScrollEnd,\n isScrolling: !isScrollStart && !isScrollEnd,\n };\n }\n return prevState;\n });\n }, []);\n\n // 컨테이너 ref 설정 및 상태 업데이트\n const setContainerRef = useCallback(\n (node: HTMLDivElement | null) => {\n containerRef.current = node;\n if (node) {\n updateScrollState();\n }\n },\n [updateScrollState]\n );\n\n // Register a sticky column with its width\n const registerStickyColumn = useCallback(\n (direction: 'left' | 'right', index: number, width: number) => {\n if (direction === 'left') {\n stickyColumnsRef.current.leftColumnWidths.set(index, width);\n } else {\n stickyColumnsRef.current.rightColumnWidths.set(index, width);\n }\n },\n []\n );\n\n // Get the offset for a sticky column based on its index and direction\n const getStickyOffset = useCallback(\n (direction: 'left' | 'right', index: number) => {\n if (index === 0) return 0;\n\n const widthsMap =\n direction === 'left'\n ? stickyColumnsRef.current.leftColumnWidths\n : stickyColumnsRef.current.rightColumnWidths;\n\n let offset = 0;\n for (let i = 0; i < index; i++) {\n offset += widthsMap.get(i) || 0;\n }\n\n return offset;\n },\n []\n );\n\n // Check if a column is the last sticky column on its side\n const isLastStickyColumn = useCallback(\n (direction: 'left' | 'right', index: number) => {\n const widthsMap =\n direction === 'left'\n ? stickyColumnsRef.current.leftColumnWidths\n : stickyColumnsRef.current.rightColumnWidths;\n\n // Find the highest index in the map\n let maxIndex = -1;\n for (const idx of widthsMap.keys()) {\n if (idx > maxIndex) maxIndex = idx;\n }\n\n return index === maxIndex;\n },\n []\n );\n\n // 단일 useEffect에서 모든 이벤트 리스너 관리\n useEffect(() => {\n const container = containerRef.current;\n if (!container) return;\n\n // 스크롤 이벤트 핸들러\n const handleScroll = () => updateScrollState();\n\n // 리사이즈 이벤트 핸들러\n const handleResize = () => updateScrollState();\n\n // 이벤트 리스너 등록\n container.addEventListener('scroll', handleScroll);\n window.addEventListener('resize', handleResize);\n\n // 초기 상태 설정\n updateScrollState();\n\n // 클린업\n return () => {\n container.removeEventListener('scroll', handleScroll);\n window.removeEventListener('resize', handleResize);\n };\n }, [updateScrollState]);\n\n return (\n <TableContext.Provider\n value={{\n ...scrollState,\n setContainerRef,\n registerStickyColumn,\n getStickyOffset,\n isLastStickyColumn,\n }}\n >\n {children}\n </TableContext.Provider>\n );\n};\n","import { useEffect, useRef } from 'react';\nimport { Td as ChakraTd, useToken } from '@chakra-ui/react';\n\nimport { getStickyStyles } from './Table.styles';\nimport { TableCellProps } from './Table.types';\nimport { useTableContext } from './TableContext';\n\nexport const Td = ({\n wrap,\n isSticky = false,\n stickyDirection = 'left',\n stickyIndex = 0,\n _first,\n style,\n className,\n children,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n}: TableCellProps & { wrap?: boolean }) => {\n const cellRef = useRef<HTMLTableCellElement>(null);\n const tableContext = useTableContext();\n\n // Define all style variables ahead of time so they can be used constantly\n const grayColor = useToken('colors', 'gray.300');\n const paddingToken = useToken('space', '3'); // py={3} equivalent\n const fontSizeToken = useToken('fontSizes', 'p');\n const spacingToken = useToken('space', '4'); // spacing 4 for paddingInlineStart\n\n // If not inside TableContext, render regular HTML td with same styles\n if (!tableContext) {\n // Extract only standard HTML props for the regular td element\n const htmlProps = {\n className,\n onClick,\n onMouseEnter,\n onMouseLeave,\n // Add other standard HTML props as needed\n };\n\n return (\n <td\n ref={cellRef}\n style={{\n border: 0,\n borderTop: '1px solid',\n borderTopColor: grayColor,\n color: 'inherit',\n fontSize: fontSizeToken,\n paddingTop: paddingToken,\n paddingBottom: paddingToken,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingInlineStart: _first ? spacingToken : undefined,\n ...(wrap\n ? {\n whiteSpace: 'normal',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n }\n : {}),\n ...style,\n }}\n {...htmlProps}\n >\n {children}\n </td>\n );\n }\n\n const {\n registerStickyColumn,\n getStickyOffset,\n isLastStickyColumn,\n ...scrollState\n } = tableContext;\n\n // Update width when element is mounted and dimensions change\n useEffect(() => {\n if (isSticky && cellRef.current) {\n const width = cellRef.current.getBoundingClientRect().width;\n registerStickyColumn(stickyDirection, stickyIndex, width);\n }\n }, [isSticky, registerStickyColumn, stickyDirection, stickyIndex]);\n\n // Get the sticky offset based on the column's position\n const stickyOffset = isSticky\n ? getStickyOffset(stickyDirection, stickyIndex)\n : 0;\n\n // Check if this is the last sticky column on this side\n const isLastSticky =\n isSticky && isLastStickyColumn(stickyDirection, stickyIndex);\n\n // Apply sticky styles with appropriate offset\n const stickyStyles = getStickyStyles(\n isSticky,\n stickyDirection,\n scrollState,\n stickyOffset,\n isLastSticky\n );\n\n return (\n <ChakraTd\n border={0}\n borderTop=\"1px solid\"\n borderTopColor=\"gray.300\"\n color=\"inherit\"\n fontSize=\"p\"\n py={3}\n overflow=\"hidden\"\n textOverflow=\"ellipsis\"\n ref={cellRef}\n style={style}\n _first={{\n '&:not(:last-child)': {\n paddingInlineStart: 4,\n },\n ..._first,\n }}\n {...(wrap\n ? {\n whiteSpace: 'normal',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n }\n : {})}\n {...stickyStyles}\n {...rest}\n >\n {children}\n </ChakraTd>\n );\n};\n\nTd.displayName = 'Td';\n","import { TableRowProps, Tr as ChakraTr } from '@chakra-ui/react';\n\nexport const Tr = ({ ...rest }: TableRowProps) => {\n return <ChakraTr h={12} {...rest} />;\n};\n","import { Children } from 'react';\nimport { Collapse } from '@chakra-ui/react';\n\nimport { Td } from '../Td';\nimport { Tr } from '../Tr';\nimport { ExpandingTrProps } from './ExpandingTr.types';\n\nexport const ExpandingTr: React.FC<ExpandingTrProps> = ({\n children,\n expandedContent,\n isExpanded,\n onExpandChange,\n expandedRowProps,\n ...rest\n}) => {\n const childrenArray = Children.toArray(children);\n\n return (\n <>\n {/* Main Row */}\n <Tr {...rest}>{children}</Tr>\n\n {/* Expanded Row */}\n <Tr h={isExpanded ? undefined : 0} {...expandedRowProps}>\n <Td colSpan={childrenArray.length} p={0}>\n <Collapse in={isExpanded}>{expandedContent}</Collapse>\n </Td>\n </Tr>\n </>\n );\n};\n","import React from 'react';\nimport {\n Table as ChakraTable,\n TableProps as ChakraTableProps,\n} from '@chakra-ui/react';\n\nexport const Table = ({ ...rest }: ChakraTableProps) => {\n return <ChakraTable {...rest} />;\n};\n","import { forwardRef, useCallback } from 'react';\nimport { TableContainer as ChakraTableContainer } from '@chakra-ui/react';\n\nimport { TableContainerProps } from './Table.types';\nimport { TableProvider, useTableContext } from './TableContext';\n\n// 실제 테이블 컨테이너 컴포넌트\nconst TableContainerInner = forwardRef<HTMLDivElement, TableContainerProps>(\n ({ children, ...rest }, ref) => {\n const { setContainerRef } = useTableContext();\n\n // ref 설정 콜백 - 외부 ref와 내부 ref 결합\n const handleRef = useCallback(\n (node: HTMLDivElement | null) => {\n // 외부 ref 설정\n if (typeof ref === 'function') {\n ref(node);\n } else if (ref) {\n ref.current = node;\n }\n\n // 내부 컨텍스트 ref 설정\n setContainerRef(node);\n },\n [ref, setContainerRef]\n );\n\n return (\n <ChakraTableContainer\n border=\"1px solid\"\n borderRadius=\"md\"\n borderColor=\"gray.300\"\n ref={handleRef}\n {...rest}\n >\n {children}\n </ChakraTableContainer>\n );\n }\n);\n\nTableContainerInner.displayName = 'TableContainerInner';\n\n// 외부 노출용 컴포넌트\nexport const TableContainer = forwardRef<HTMLDivElement, TableContainerProps>(\n (props, ref) => {\n return (\n <TableProvider>\n <TableContainerInner {...props} ref={ref} />\n </TableProvider>\n );\n }\n);\n\nTableContainer.displayName = 'TableContainer';\n","import { forwardRef } from 'react';\nimport { TableBodyProps, Tbody as ChakraTbody } from '@chakra-ui/react';\n\nexport const Tbody = forwardRef<HTMLTableSectionElement, TableBodyProps>(\n (props, ref) => {\n return (\n <ChakraTbody ref={ref} color=\"gray.1500\" fontWeight=\"medium\" {...props} />\n );\n }\n);\n\nTbody.displayName = 'Tbody';\n","import { forwardRef, useCallback, useEffect, useRef } from 'react';\nimport {\n TableColumnHeaderProps,\n Th as ChakraTh,\n useToken,\n} from '@chakra-ui/react';\n\nimport { getStickyStyles } from './Table.styles';\nimport { TableCellProps } from './Table.types';\nimport { useTableContext } from './TableContext';\n\nexport const Th = forwardRef<\n HTMLTableCellElement,\n TableColumnHeaderProps & TableCellProps\n>(\n (\n {\n isSticky = false,\n stickyDirection = 'left',\n stickyIndex = 0,\n style,\n className,\n children,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n },\n forwardedRef\n ) => {\n const tableContext = useTableContext();\n const measureNodeRef = useRef<HTMLTableCellElement | null>(null);\n const fontSizeToken = useToken('fontSizes', 'subtitle');\n const spacingToken = useToken('space', '4'); // spacing 4 for paddingInlineStart\n\n // If not inside TableContext, render regular HTML th with same styles\n if (!tableContext) {\n // Extract only standard HTML props for the regular th element\n const htmlProps = {\n className,\n onClick,\n onMouseEnter,\n onMouseLeave,\n // Add other standard HTML props as needed\n };\n\n // Combine refs for the regular th element\n const setRefsForRegularTh = useCallback(\n (node: HTMLTableCellElement | null) => {\n // Set internal ref\n measureNodeRef.current = node;\n\n // Set forwarded ref\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n },\n [forwardedRef]\n );\n\n return (\n <th\n ref={setRefsForRegularTh}\n style={{\n color: 'inherit',\n fontWeight: 'inherit',\n fontSize: fontSizeToken,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n paddingInlineStart: spacingToken,\n ...style,\n }}\n {...htmlProps}\n >\n {children}\n </th>\n );\n }\n\n const {\n registerStickyColumn,\n getStickyOffset,\n isLastStickyColumn,\n ...scrollState\n } = tableContext;\n\n // Update width when element is mounted and dimensions change\n useEffect(() => {\n if (isSticky && measureNodeRef.current) {\n const width = measureNodeRef.current.getBoundingClientRect().width;\n registerStickyColumn(stickyDirection, stickyIndex, width);\n }\n }, [isSticky, registerStickyColumn, stickyDirection, stickyIndex]);\n\n // Combine refs (forwarded ref and internal ref)\n const setRefs = useCallback(\n (node: HTMLTableCellElement | null) => {\n // Set internal ref\n measureNodeRef.current = node;\n\n // Set forwarded ref\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n },\n [forwardedRef]\n );\n\n // Get the sticky offset based on the column's position\n const stickyOffset = isSticky\n ? getStickyOffset(stickyDirection, stickyIndex)\n : 0;\n\n // Check if this is the last sticky column on this side\n const isLastSticky =\n isSticky && isLastStickyColumn(stickyDirection, stickyIndex);\n\n // Apply sticky styles with appropriate offset\n const stickyStyles = getStickyStyles(\n isSticky,\n stickyDirection,\n scrollState,\n stickyOffset,\n isLastSticky\n );\n\n return (\n <ChakraTh\n color=\"inherit\"\n fontWeight=\"inherit\"\n fontSize=\"subtitle\"\n overflow=\"hidden\"\n textOverflow=\"ellipsis\"\n ref={setRefs}\n style={style}\n _first={{\n '&:not(:last-child)': {\n paddingInlineStart: 4,\n },\n }}\n {...stickyStyles}\n {...rest}\n >\n {children}\n </ChakraTh>\n );\n }\n);\n\nTh.displayName = 'Th';\n","import { TableHeadProps, Thead as ChakraThead } from '@chakra-ui/react';\n\nexport const Thead = ({ ...rest }: TableHeadProps) => {\n return <ChakraThead color=\"gray.800\" fontWeight=\"medium\" {...rest} />;\n};\n",".markdownStyles {\n color: black;\n display: flex;\n flex-direction: column;\n gap: 1.2em; /* Intended for longer form content like update modals */\n}\n\n.markdownStyles > h1,\n.markdownStyles > h2,\n.markdownStyles > h3,\n.markdownStyles > h4 {\n margin-bottom: 0.5em !important;\n}\n.markdownStyles > h1:not(:first-child),\n.markdownStyles > h2:not(:first-child),\n.markdownStyles > h3:not(:first-child),\n.markdownStyles > h4:not(:first-child) {\n margin-top: 1em !important;\n}\n\n.markdownStyles ol,\n.markdownStyles ul {\n margin-top: 8px;\n padding-inline-start: 16px;\n}\n.markdownStyles li {\n /* 1.5x standard line height */\n line-height: calc(16px * 1.5);\n margin-bottom: 8px;\n}\n","import ReactMarkdown from 'react-markdown';\nimport { Box } from '@chakra-ui/react';\nimport rehypeKatex from 'rehype-katex';\nimport rehypeRaw from 'rehype-raw';\nimport remarkBreaks from 'remark-breaks';\nimport remarkFlexibleMarkers from 'remark-flexible-markers';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\n\nimport { formatForMarkdown } from '@/utils/formatTextForMarkdown';\n\nimport 'katex/dist/katex.min.css'; // Import KaTeX CSS\n\nimport { Code } from '../Code';\nimport { InlineCode } from '../InlineCode';\nimport { Table, TableContainer, Tbody, Td, Th, Thead, Tr } from '../Table';\nimport { H1, H2, H3, H4, H5, Link, Subtitle, Text } from '../Typography';\nimport MarkdownStyles from './Markdown.module.css';\nimport { MarkdownProps } from './Markdown.types';\n\n// Simple wrapper components to avoid type issues\nconst H1Wrapper = (props: any) => <H1 {...props} />;\nconst H2Wrapper = (props: any) => <H2 {...props} />;\nconst H3Wrapper = (props: any) => <H3 {...props} />;\nconst H4Wrapper = (props: any) => <H4 {...props} />;\nconst H5Wrapper = (props: any) => <H5 {...props} />;\nconst SubtitleWrapper = (props: any) => <Subtitle {...props} />;\nconst TheadWrapper = (props: any) => <Thead {...props} />;\nconst TbodyWrapper = (props: any) => <Tbody {...props} />;\nconst TrWrapper = (props: any) => <Tr {...props} />;\nconst TdWrapper = (props: any) => <Td {...props} />;\nconst ThWrapper = (props: any) => <Th {...props} />;\n\n// Prepare base components\nexport const baseMarkdownComponents = {\n h1: H1Wrapper,\n h2: H2Wrapper,\n h3: H3Wrapper,\n h4: H4Wrapper,\n h5: H5Wrapper,\n h6: SubtitleWrapper,\n // The key fix: instead of trying to unwrap pre/code combinations,\n // we customize just the code element to detect if it's a code block\n code: ({ inline, className, children, ...props }: any) => {\n // If it's inline code (no language class), use InlineCode component\n if (inline || !className) {\n return <InlineCode {...props}>{children}</InlineCode>;\n }\n\n // For code blocks, use the Code component with language\n const language = className.match(/language-(.*)/)?.[1];\n return (\n <Code\n language={language}\n onCopy={(textToCopy: string) => {\n navigator.clipboard\n .writeText(textToCopy)\n .then(() => {\n console.log('Text copied to clipboard');\n })\n .catch((err) => {\n console.error('Could not copy text to clipboard:', err);\n });\n }}\n containerProps={{ mb: 4, className }}\n {...props}\n >\n {children}\n </Code>\n );\n },\n // Make the pre tag a no-op that just renders children\n pre: ({ children }: any) => <Box>{children}</Box>,\n p: (props: any) => <Text color=\"inherit\" {...props} />,\n a: ({ style, ...rest }: any) => (\n // `children` should be inside ...rest\n <Link target=\"_blank\" {...rest} />\n ),\n ol: ({ style, ...rest }: any) => (\n <ol\n style={{ paddingInlineStart: '22px', color: 'inherit', ...style }}\n {...rest}\n />\n ),\n ul: ({ style, ...rest }: any) => (\n <ul\n style={{ paddingInlineStart: '22px', color: 'inherit', ...style }}\n {...rest}\n />\n ),\n img: ({ style, ...rest }: any) => (\n <img style={{ maxWidth: '100%', ...style }} alt=\"chat-image\" {...rest} />\n ),\n table: (props: any) => (\n <TableContainer mt={4}>\n <Table {...props} />\n </TableContainer>\n ),\n thead: TheadWrapper,\n tbody: TbodyWrapper,\n tr: TrWrapper,\n td: TdWrapper,\n th: ThWrapper,\n};\n\nexport const Markdown = ({\n className,\n components,\n children,\n ...rest\n}: MarkdownProps) => {\n // Combine with any custom components provided by the user\n // The user-provided ones will override our defaults if there's a conflict\n const allComponents = { ...baseMarkdownComponents, ...components };\n\n return (\n <div className={[MarkdownStyles.markdownStyles, className].join(' ')}>\n <ReactMarkdown\n remarkPlugins={[\n remarkGfm,\n remarkFlexibleMarkers,\n remarkBreaks,\n remarkMath,\n ]}\n rehypePlugins={[rehypeRaw, rehypeKatex]}\n components={allComponents}\n {...rest}\n >\n {formatForMarkdown(children ?? '')}\n </ReactMarkdown>\n </div>\n );\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 19 19"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M4.24 5.348H3.3A1.88 1.88 0 0 0 1.416 7.23v8.471a1.88 1.88 0 0 0 1.882 1.882h8.47a1.88 1.88 0 0 0 1.883-1.882v-.941"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m12.71 3.466 2.824 2.823m1.304-1.331a1.976 1.976 0 1 0-2.796-2.796l-7.92 7.892v2.824h2.824z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20"><path stroke="currentColor" stroke-linecap="round" stroke-width="1.25" d="M7.227 12.433C7.81 13.375 8.834 14 10 14s2.19-.625 2.773-1.567"/><path stroke="currentColor" stroke-linecap="round" stroke-width="1.25" d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z"/><circle cx="7.5" cy="8.333" r=".833" fill="currentColor"/><circle cx="12.5" cy="8.333" r=".833" fill="currentColor"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20"><path fill="currentColor" fill-rule="evenodd" d="M1.167 4A2.833 2.833 0 0 1 4 1.167h12A2.833 2.833 0 0 1 18.834 4v12A2.833 2.833 0 0 1 16 18.833H4A2.833 2.833 0 0 1 1.167 16zm13.667 2a.833.833 0 0 0-1.667 0v8a.833.833 0 1 0 1.667 0zm-4 4a.833.833 0 0 0-1.667 0v4a.833.833 0 1 0 1.667 0zm-4 2a.833.833 0 0 0-1.667 0v2a.833.833 0 1 0 1.667 0z" clip-rule="evenodd"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 19 20"><g fill="currentColor" clip-path="url(#a)"><path d="M14.17 10.29c-.5 0-.93-.35-1.04-.84l-.03-.13c-.15-.66-.49-1.27-.98-1.74s-1.11-.79-1.79-.9c-.51-.09-.87-.51-.87-1.04s.36-.95.87-1.04a3.45 3.45 0 0 0 2.77-2.66l.03-.12c.11-.49.54-.84 1.04-.84.53-.02.94.34 1.05.83l.03.14c.15.67.5 1.27.99 1.74.5.47 1.12.78 1.79.9.52.09.87.52.87 1.04s-.36.95-.87 1.04c-.68.12-1.29.43-1.79.9s-.84 1.07-.99 1.74l-.04.15c-.11.49-.54.83-1.04.83M4.81 19.08c-.41 0-.74-.33-.74-.74s.33-.74.74-.74h5.14c.41 0 .74.33.74.74s-.33.74-.74.74z"/><path d="M5.45 15.91a1.403 1.403 0 0 1-1.39-1.39v-1.54c-1.3-.7-2.33-1.95-2.84-3.43a6.53 6.53 0 0 1 3.91-8.26A6.6 6.6 0 0 1 7.88.91c1.36.07 2.52.53 3.46 1.35l.07.06-.05.07c-.1.14-.15.22-.23.29-.29.28-.66.47-1.06.54a2.44 2.44 0 0 0-2.03 2.42c0 1.2.85 2.21 2.03 2.41a2.067 2.067 0 0 1 1.64 1.55l.03.15c.12.54.4 1.01.82 1.36l.07.06-.12.19c-.05.09-.1.17-.16.25-.02.04-.13.18-.16.21-.42.5-.92.92-1.5 1.24v1.47c0 .37-.14.71-.4.98-.26.26-.62.41-.98.41H5.45z"/></g><defs><clipPath id="a"><path fill="#fff" d="M.86.89H18.9v18.19H.86z"/></clipPath></defs></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20"><g fill="currentColor" clip-path="url(#a)"><path d="M6.24 19.08c-.84 0-1.67-.2-2.41-.58l-1.8.33a.74.74 0 0 1-.67-.21.78.78 0 0 1-.21-.67l.34-1.8c-.48-.95-.67-2.05-.53-3.11a5.344 5.344 0 0 1 4.59-4.6c1.16-.15 2.35.08 3.36.67a5.351 5.351 0 0 1 2.49 6c-.3 1.13-.98 2.14-1.9 2.85-.93.71-2.08 1.1-3.25 1.1z"/><path d="M18.62 5.75a7.3 7.3 0 0 0-1.77-2.71 7.425 7.425 0 0 0-9.04-1.03c-.93.56-1.73 1.34-2.33 2.24A7.4 7.4 0 0 0 4.34 7.2c.33-.1.67-.18 1.02-.22.29-.04.59-.06.89-.06 1.2 0 2.38.32 3.42.91 1.3.75 2.32 1.92 2.9 3.3s.67 2.94.29 4.38c-.01.05-.04.09-.05.14h.06c.8-.13 1.56-.39 2.27-.76l2.74.51c.24.05.49-.03.67-.21.17-.17.25-.42.21-.67l-.51-2.74c.46-.88.75-1.85.83-2.84.09-1.08-.06-2.19-.44-3.21z"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h20v20H0z"/></clipPath></defs></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 17 17"><g fill="currentColor" clip-path="url(#a)"><path d="m14.36 6.5-1.45 1.46-3.42 3.44a.75.75 0 0 1-.53.22H6.14c-.41 0-.75-.34-.75-.75V8.05c0-.2.08-.39.22-.53L9.05 4.1l1.46-1.45a.7.7 0 0 0-.25-.05H3.3c-.7 0-1.36.27-1.86.77-.49.49-.77 1.17-.77 1.86v8.47c0 .7.27 1.36.77 1.86s1.16.77 1.86.77h8.47c.7 0 1.36-.27 1.86-.77s.77-1.16.77-1.86V6.76c0-.09-.02-.17-.05-.25z"/><path d="M8.64 10.11H6.88V8.35l5.85-5.83 1.74 1.74zm7.67-7.7-.78.79-1.74-1.74.79-.79c.46-.46 1.27-.46 1.73 0 .23.23.36.54.36.87s-.13.64-.36.87"/></g><defs><clipPath id="a"><path fill="#fff" d="M.67.33h16v15.99h-16z"/></clipPath></defs></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20"><path fill="currentColor" fill-rule="evenodd" d="M10 1.375a8.625 8.625 0 1 0 0 17.25 8.625 8.625 0 0 0 0-17.25M7.758 12.104a.625.625 0 0 0-1.063.658c.69 1.113 1.908 1.863 3.305 1.863s2.615-.75 3.305-1.863a.625.625 0 1 0-1.063-.658A2.64 2.64 0 0 1 10 13.375c-.935 0-1.765-.5-2.242-1.271m.575-3.77a.833.833 0 1 1-1.666 0 .833.833 0 0 1 1.666 0m4.167.833a.833.833 0 1 0 0-1.667.833.833 0 0 0 0 1.667" clip-rule="evenodd"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="M18.21 6.96V5.32c0-1.94-1.57-3.52-3.52-3.52H5.32C3.37 1.8 1.8 3.37 1.8 5.32v1.64zM8.36 18.2h6.33c1.94 0 3.52-1.57 3.52-3.52V8.35H8.36zM6.96 8.36H1.8v6.33c0 1.94 1.57 3.52 3.52 3.52h1.64z"/></svg>
|
package/dist/index.css
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/* src/components/Modal/ModalFooter/ModalFooter.module.css */
|
|
2
|
+
.ml-modal-footer > * {
|
|
3
|
+
flex: 1;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/* src/components/Markdown/Markdown.module.css */
|
|
7
|
+
.markdownStyles {
|
|
8
|
+
color: black;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
gap: 1.2em;
|
|
12
|
+
}
|
|
13
|
+
.markdownStyles > h1,
|
|
14
|
+
.markdownStyles > h2,
|
|
15
|
+
.markdownStyles > h3,
|
|
16
|
+
.markdownStyles > h4 {
|
|
17
|
+
margin-bottom: 0.5em !important;
|
|
18
|
+
}
|
|
19
|
+
.markdownStyles > h1:not(:first-child),
|
|
20
|
+
.markdownStyles > h2:not(:first-child),
|
|
21
|
+
.markdownStyles > h3:not(:first-child),
|
|
22
|
+
.markdownStyles > h4:not(:first-child) {
|
|
23
|
+
margin-top: 1em !important;
|
|
24
|
+
}
|
|
25
|
+
.markdownStyles ol,
|
|
26
|
+
.markdownStyles ul {
|
|
27
|
+
margin-top: 8px;
|
|
28
|
+
padding-inline-start: 16px;
|
|
29
|
+
}
|
|
30
|
+
.markdownStyles li {
|
|
31
|
+
line-height: calc(16px * 1.5);
|
|
32
|
+
margin-bottom: 8px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* src/components/MDXEditor/MDXEditor.css */
|
|
36
|
+
[class*=_popupContainer_] {
|
|
37
|
+
z-index: 9999 !important;
|
|
38
|
+
}
|
|
39
|
+
.mdxeditor-popup-container {
|
|
40
|
+
z-index: 9999 !important;
|
|
41
|
+
}
|
|
42
|
+
[class*=_selectContent_] {
|
|
43
|
+
z-index: 9999 !important;
|
|
44
|
+
}
|
|
45
|
+
.mdxeditor-select-content {
|
|
46
|
+
z-index: 9999 !important;
|
|
47
|
+
}
|
|
48
|
+
[data-radix-select-content] {
|
|
49
|
+
z-index: 9999 !important;
|
|
50
|
+
}
|
|
51
|
+
/*# sourceMappingURL=index.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Modal/ModalFooter/ModalFooter.module.css","../src/components/Markdown/Markdown.module.css","../src/components/MDXEditor/MDXEditor.css"],"sourcesContent":[".ml-modal-footer > * {\n flex: 1;\n}\n",".markdownStyles {\n color: black;\n display: flex;\n flex-direction: column;\n gap: 1.2em; /* Intended for longer form content like update modals */\n}\n\n.markdownStyles > h1,\n.markdownStyles > h2,\n.markdownStyles > h3,\n.markdownStyles > h4 {\n margin-bottom: 0.5em !important;\n}\n.markdownStyles > h1:not(:first-child),\n.markdownStyles > h2:not(:first-child),\n.markdownStyles > h3:not(:first-child),\n.markdownStyles > h4:not(:first-child) {\n margin-top: 1em !important;\n}\n\n.markdownStyles ol,\n.markdownStyles ul {\n margin-top: 8px;\n padding-inline-start: 16px;\n}\n.markdownStyles li {\n /* 1.5x standard line height */\n line-height: calc(16px * 1.5);\n margin-bottom: 8px;\n}\n","/* MDXEditor popup container overrides */\n[class*='_popupContainer_'] {\n z-index: 9999 !important;\n}\n\n.mdxeditor-popup-container {\n z-index: 9999 !important;\n}\n\n/* MDXEditor select content overrides */\n[class*='_selectContent_'] {\n z-index: 9999 !important;\n}\n\n.mdxeditor-select-content {\n z-index: 9999 !important;\n}\n\n[data-radix-select-content] {\n z-index: 9999 !important;\n}\n"],"mappings":";AAAA,CAAC,gBAAgB,EAAE;AACjB,QAAM;AACR;;;ACFA,CAAC;AACC,SAAO;AACP,WAAS;AACT,kBAAgB;AAChB,OAAK;AACP;AAEA,CAPC,eAOe,EAAE;AAClB,CARC,eAQe,EAAE;AAClB,CATC,eASe,EAAE;AAClB,CAVC,eAUe,EAAE;AAChB,iBAAe;AACjB;AACA,CAbC,eAae,EAAE,EAAE,KAAK;AACzB,CAdC,eAce,EAAE,EAAE,KAAK;AACzB,CAfC,eAee,EAAE,EAAE,KAAK;AACzB,CAhBC,eAgBe,EAAE,EAAE,KAAK;AACvB,cAAY;AACd;AAEA,CApBC,eAoBe;AAChB,CArBC,eAqBe;AACd,cAAY;AACZ,wBAAsB;AACxB;AACA,CAzBC,eAyBe;AAEd,eAAa,KAAK,KAAK,EAAE;AACzB,iBAAe;AACjB;;;AC5BA,CAAC;AACC,WAAS;AACX;AAEA,CAAC;AACC,WAAS;AACX;AAGA,CAAC;AACC,WAAS;AACX;AAEA,CAAC;AACC,WAAS;AACX;AAEA,CAAC;AACC,WAAS;AACX;","names":[]}
|