@bitrise/bitkit-v2 0.3.205 → 0.3.206
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/dist/atoms/ImageCropper/ImageCropper.d.ts +10 -10
- package/dist/components/BitkitAccordion/BitkitAccordion.js.map +1 -1
- package/dist/components/BitkitCalendar/components/CalendarFooter.js.map +1 -1
- package/dist/components/BitkitCalendar/components/CalendarNextTrigger.js.map +1 -1
- package/dist/components/BitkitCalendar/components/CalendarPrevTrigger.js.map +1 -1
- package/dist/components/BitkitCalendar/components/CalendarSelect.js.map +1 -1
- package/dist/components/BitkitCalendar/components/CalendarTrigger.js.map +1 -1
- package/dist/components/BitkitCodeSnippet/BitkitCodeSnippet.js.map +1 -1
- package/dist/components/BitkitCollapsible/BitkitCollapsible.js.map +1 -1
- package/dist/components/BitkitCombobox/BitkitCombobox.d.ts +11 -1
- package/dist/components/BitkitCombobox/BitkitCombobox.js +4 -7
- package/dist/components/BitkitCombobox/BitkitCombobox.js.map +1 -1
- package/dist/components/BitkitDataWidget/BitkitDataWidget.d.ts +10 -0
- package/dist/components/BitkitDataWidget/BitkitDataWidget.js +45 -0
- package/dist/components/BitkitDataWidget/BitkitDataWidget.js.map +1 -0
- package/dist/components/BitkitDialog/BitkitDialog.d.ts +19 -6
- package/dist/components/BitkitDialog/BitkitDialog.js +22 -5
- package/dist/components/BitkitDialog/BitkitDialog.js.map +1 -1
- package/dist/components/BitkitDialog/BitkitDialogBody.d.ts +1 -1
- package/dist/components/BitkitDialog/BitkitDialogBody.js +15 -4
- package/dist/components/BitkitDialog/BitkitDialogBody.js.map +1 -1
- package/dist/components/BitkitDialog/BitkitDialogContent.d.ts +4 -2
- package/dist/components/BitkitDialog/BitkitDialogContent.js +29 -18
- package/dist/components/BitkitDialog/BitkitDialogContent.js.map +1 -1
- package/dist/components/BitkitDialog/BitkitDialogHeader.d.ts +9 -0
- package/dist/components/BitkitDialog/BitkitDialogHeader.js +8 -0
- package/dist/components/BitkitDialog/BitkitDialogHeader.js.map +1 -0
- package/dist/components/BitkitDialog/BitkitDialogStep.d.ts +11 -0
- package/dist/components/BitkitDialog/BitkitDialogStep.js +26 -0
- package/dist/components/BitkitDialog/BitkitDialogStep.js.map +1 -0
- package/dist/components/BitkitDialog/BitkitDialogStepContext.d.ts +5 -0
- package/dist/components/BitkitDialog/BitkitDialogStepContext.js +7 -0
- package/dist/components/BitkitDialog/BitkitDialogStepContext.js.map +1 -0
- package/dist/components/BitkitDraggableCard/BitkitDraggableCard.js.map +1 -1
- package/dist/components/BitkitExpandableCard/BitkitExpandableCard.js.map +1 -1
- package/dist/components/BitkitGroupHeading/BitkitGroupHeading.js.map +1 -1
- package/dist/components/BitkitInlineLoading/BitkitInlineLoading.js.map +1 -1
- package/dist/components/BitkitLabel/BitkitLabel.js +3 -3
- package/dist/components/BitkitLabel/BitkitLabel.js.map +1 -1
- package/dist/components/BitkitLabeledData/BitkitLabeledData.js +24 -17
- package/dist/components/BitkitLabeledData/BitkitLabeledData.js.map +1 -1
- package/dist/components/BitkitList/BitkitList.d.ts +21 -0
- package/dist/components/BitkitList/BitkitList.js +107 -0
- package/dist/components/BitkitList/BitkitList.js.map +1 -0
- package/dist/components/BitkitList/index.d.ts +2 -0
- package/dist/components/BitkitMarkdown/BitkitMarkdown.js +11 -17
- package/dist/components/BitkitMarkdown/BitkitMarkdown.js.map +1 -1
- package/dist/components/BitkitMarkdownCard/BitkitMarkdownCard.js.map +1 -1
- package/dist/components/BitkitMultiselect/BitkitMultiselect.d.ts +13 -1
- package/dist/components/BitkitMultiselect/BitkitMultiselect.js +3 -6
- package/dist/components/BitkitMultiselect/BitkitMultiselect.js.map +1 -1
- package/dist/components/BitkitMultiselectMenu/BitkitMultiselectMenu.d.ts +5 -1
- package/dist/components/BitkitMultiselectMenu/BitkitMultiselectMenu.js +5 -3
- package/dist/components/BitkitMultiselectMenu/BitkitMultiselectMenu.js.map +1 -1
- package/dist/components/BitkitNativeSelect/BitkitNativeSelect.js.map +1 -1
- package/dist/components/BitkitNoteCard/BitkitNoteCard.js.map +1 -1
- package/dist/components/BitkitOverflowContent/BitkitOverflowContent.js +2 -2
- package/dist/components/BitkitOverflowContent/BitkitOverflowContent.js.map +1 -1
- package/dist/components/BitkitPageFooter/BitkitPageFooter.js.map +1 -1
- package/dist/components/BitkitPagination/BitkitPagination.js.map +1 -1
- package/dist/components/BitkitPaginationLoadMore/BitkitPaginationLoadMore.js.map +1 -1
- package/dist/components/BitkitRibbon/BitkitRibbon.js.map +1 -1
- package/dist/components/BitkitSearchInput/BitkitSearchInput.js +2 -1
- package/dist/components/BitkitSearchInput/BitkitSearchInput.js.map +1 -1
- package/dist/components/BitkitSectionHeading/BitkitSectionHeading.js +1 -1
- package/dist/components/BitkitSectionHeading/BitkitSectionHeading.js.map +1 -1
- package/dist/components/BitkitSelect/BitkitSelect.d.ts +12 -1
- package/dist/components/BitkitSelect/BitkitSelect.js +3 -6
- package/dist/components/BitkitSelect/BitkitSelect.js.map +1 -1
- package/dist/components/BitkitSelectMenu/BitkitSelectMenu.d.ts +14 -11
- package/dist/components/BitkitSelectMenu/BitkitSelectMenu.js.map +1 -1
- package/dist/components/BitkitSelectMenu/SelectMenuShell.d.ts +1 -1
- package/dist/components/BitkitSelectMenu/SelectMenuShell.js +13 -13
- package/dist/components/BitkitSelectMenu/SelectMenuShell.js.map +1 -1
- package/dist/components/BitkitSettingsCard/BitkitSettingsCard.js.map +1 -1
- package/dist/components/BitkitSidebar/BitkitSidebar.js.map +1 -1
- package/dist/components/BitkitSplitButton/BitkitSplitButton.js.map +1 -1
- package/dist/components/BitkitSteps/BitkitSteps.js +3 -3
- package/dist/components/BitkitSteps/BitkitSteps.js.map +1 -1
- package/dist/components/BitkitStepsCard/BitkitStepsCard.js.map +1 -1
- package/dist/components/BitkitSwitch/BitkitSwitch.d.ts +3 -0
- package/dist/components/BitkitSwitch/BitkitSwitch.js +105 -0
- package/dist/components/BitkitSwitch/BitkitSwitch.js.map +1 -0
- package/dist/components/BitkitSwitch/BitkitSwitch.types.d.ts +21 -0
- package/dist/components/{BitkitToggle/BitkitToggle.utils.d.ts → BitkitSwitch/BitkitSwitch.utils.d.ts} +1 -1
- package/dist/components/{BitkitToggle/BitkitToggle.utils.js → BitkitSwitch/BitkitSwitch.utils.js} +2 -2
- package/dist/components/{BitkitToggle/BitkitToggle.utils.js.map → BitkitSwitch/BitkitSwitch.utils.js.map} +1 -1
- package/dist/components/BitkitSwitch/components/BitkitSwitchHelperText.d.ts +3 -0
- package/dist/components/{BitkitToggle/components/BitkitToggleHelperText.js → BitkitSwitch/components/BitkitSwitchHelperText.js} +5 -5
- package/dist/components/BitkitSwitch/components/BitkitSwitchHelperText.js.map +1 -0
- package/dist/components/BitkitSwitch/components/BitkitSwitchLabel.d.ts +3 -0
- package/dist/components/{BitkitToggle/components/BitkitToggleLabel.js → BitkitSwitch/components/BitkitSwitchLabel.js} +4 -4
- package/dist/components/BitkitSwitch/components/BitkitSwitchLabel.js.map +1 -0
- package/dist/components/BitkitSwitch/components/BitkitSwitchReadOnly.d.ts +4 -0
- package/dist/components/{BitkitToggle/components/BitkitToggleReadOnly.js → BitkitSwitch/components/BitkitSwitchReadOnly.js} +4 -4
- package/dist/components/{BitkitToggle/components/BitkitToggleReadOnly.js.map → BitkitSwitch/components/BitkitSwitchReadOnly.js.map} +1 -1
- package/dist/components/BitkitSwitch/components/BitkitSwitchValueText.d.ts +3 -0
- package/dist/components/{BitkitToggle/components/BitkitToggleValueText.js → BitkitSwitch/components/BitkitSwitchValueText.js} +7 -7
- package/dist/components/BitkitSwitch/components/BitkitSwitchValueText.js.map +1 -0
- package/dist/components/BitkitSwitch/index.d.ts +2 -0
- package/dist/components/BitkitTag/BitkitTag.js +1 -1
- package/dist/components/BitkitTag/BitkitTag.js.map +1 -1
- package/dist/components/BitkitTagsInput/BitkitTagsInput.d.ts +1 -0
- package/dist/components/BitkitTagsInput/BitkitTagsInput.js +5 -2
- package/dist/components/BitkitTagsInput/BitkitTagsInput.js.map +1 -1
- package/dist/components/BitkitTreeView/BitkitTreeView.js.map +1 -1
- package/dist/components/index.d.ts +5 -4
- package/dist/main.js +8 -7
- package/dist/theme/common/ComboboxAndSelect.common.js +2 -1
- package/dist/theme/common/ComboboxAndSelect.common.js.map +1 -1
- package/dist/theme/common/InputAndTextarea.common.d.ts +7 -0
- package/dist/theme/common/InputAndTextarea.common.js +8 -1
- package/dist/theme/common/InputAndTextarea.common.js.map +1 -1
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/recipes/Button.recipe.js.map +1 -1
- package/dist/theme/recipes/Input.recipe.js +6 -2
- package/dist/theme/recipes/Input.recipe.js.map +1 -1
- package/dist/theme/recipes/SelectableTag.recipe.js +1 -1
- package/dist/theme/recipes/SelectableTag.recipe.js.map +1 -1
- package/dist/theme/recipes/ToggleButton.recipe.js +20 -2
- package/dist/theme/recipes/ToggleButton.recipe.js.map +1 -1
- package/dist/theme/semantic-tokens/semanticColors.js +14 -9
- package/dist/theme/semantic-tokens/semanticColors.js.map +1 -1
- package/dist/theme/slot-recipes/Combobox.recipe.js +14 -4
- package/dist/theme/slot-recipes/Combobox.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/DataWidget.recipe.d.ts +2 -0
- package/dist/theme/slot-recipes/DataWidget.recipe.js +65 -0
- package/dist/theme/slot-recipes/DataWidget.recipe.js.map +1 -0
- package/dist/theme/slot-recipes/Dialog.recipe.d.ts +13 -4
- package/dist/theme/slot-recipes/Dialog.recipe.js +40 -7
- package/dist/theme/slot-recipes/Dialog.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/GroupHeading.recipe.js +1 -1
- package/dist/theme/slot-recipes/GroupHeading.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/MarkdownCard.recipe.d.ts +3 -3
- package/dist/theme/slot-recipes/MarkdownCard.recipe.js +4 -3
- package/dist/theme/slot-recipes/MarkdownCard.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/NoteCard.recipe.js +14 -4
- package/dist/theme/slot-recipes/NoteCard.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/Select.recipe.js +28 -11
- package/dist/theme/slot-recipes/Select.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/StepCard.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/Switch.recipe.d.ts +3 -3
- package/dist/theme/slot-recipes/Switch.recipe.js +12 -12
- package/dist/theme/slot-recipes/Switch.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/TagsInput.recipe.d.ts +9 -4
- package/dist/theme/slot-recipes/TagsInput.recipe.js +18 -5
- package/dist/theme/slot-recipes/TagsInput.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/TreeView.recipe.d.ts +1 -0
- package/dist/theme/slot-recipes/TreeView.recipe.js +4 -1
- package/dist/theme/slot-recipes/TreeView.recipe.js.map +1 -1
- package/dist/theme/slot-recipes/index.js +2 -0
- package/dist/theme/slot-recipes/index.js.map +1 -1
- package/dist/theme/text-styles.js.map +1 -1
- package/package.json +6 -6
- package/dist/components/BitkitExplainerList/BitkitExplainerList.d.ts +0 -14
- package/dist/components/BitkitExplainerList/BitkitExplainerList.js +0 -54
- package/dist/components/BitkitExplainerList/BitkitExplainerList.js.map +0 -1
- package/dist/components/BitkitOrderedList/BitkitOrderedList.d.ts +0 -13
- package/dist/components/BitkitOrderedList/BitkitOrderedList.js +0 -30
- package/dist/components/BitkitOrderedList/BitkitOrderedList.js.map +0 -1
- package/dist/components/BitkitToggle/BitkitToggle.d.ts +0 -3
- package/dist/components/BitkitToggle/BitkitToggle.js +0 -123
- package/dist/components/BitkitToggle/BitkitToggle.js.map +0 -1
- package/dist/components/BitkitToggle/BitkitToggle.types.d.ts +0 -22
- package/dist/components/BitkitToggle/components/BitkitToggleHelperText.d.ts +0 -3
- package/dist/components/BitkitToggle/components/BitkitToggleHelperText.js.map +0 -1
- package/dist/components/BitkitToggle/components/BitkitToggleLabel.d.ts +0 -3
- package/dist/components/BitkitToggle/components/BitkitToggleLabel.js.map +0 -1
- package/dist/components/BitkitToggle/components/BitkitToggleReadOnly.d.ts +0 -4
- package/dist/components/BitkitToggle/components/BitkitToggleValueText.d.ts +0 -3
- package/dist/components/BitkitToggle/components/BitkitToggleValueText.js.map +0 -1
- package/dist/components/BitkitToggle/index.d.ts +0 -2
- package/dist/components/BitkitUnorderedList/BitkitUnorderedList.d.ts +0 -16
- package/dist/components/BitkitUnorderedList/BitkitUnorderedList.js +0 -52
- package/dist/components/BitkitUnorderedList/BitkitUnorderedList.js.map +0 -1
- package/dist/theme/slot-recipes/Combobox.recipe.d.ts +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitAccordion.js","names":[],"sources":["../../../lib/components/BitkitAccordion/BitkitAccordion.tsx"],"sourcesContent":["import {\n Accordion,\n type AccordionItemBodyProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n useAccordionItemContext,\n} from '@chakra-ui/react/accordion';\nimport { Box } from '@chakra-ui/react/box';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { Text } from '@chakra-ui/react/text';\nimport { forwardRef, type ReactNode } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\n\nexport type BitkitAccordionProps = AccordionRootProps;\nexport type BitkitAccordionItemProps = AccordionItemProps;\nexport interface BitkitAccordionItemTriggerProps extends AccordionItemTriggerProps {\n icon?: BitkitIconComponent;\n secondaryText?: ReactNode;\n suffix?: ReactNode;\n}\nexport type BitkitAccordionItemBodyProps = AccordionItemBodyProps;\n\nconst Root = forwardRef<HTMLDivElement, BitkitAccordionProps>((props, ref) => {\n return <Accordion.Root ref={ref} multiple {...props} />;\n});\nconst Item = forwardRef<HTMLDivElement, BitkitAccordionItemProps>((props, ref) => {\n return <Accordion.Item ref={ref} {...props}></Accordion.Item>;\n});\nconst ItemTrigger = forwardRef<HTMLButtonElement, BitkitAccordionItemTriggerProps>(\n ({ children, icon: Icon, secondaryText, suffix, ...props }, ref) => {\n const recipe = useSlotRecipe({ key: 'accordion' });\n const styles = recipe();\n return (\n <Accordion.ItemTrigger ref={ref} {...props}>\n <Box display=\"flex\" alignItems=\"center\" gap=\"8\">\n {Icon && (\n <Box css={styles.icon} asChild>\n <Icon size=\"16\" />\n </Box>\n )}\n <Box display=\"flex\" alignItems=\"flex-start\" flexDirection=\"column\">\n {children}\n {secondaryText && <Text css={styles.secdText}>{secondaryText}</Text>}\n </Box>\n </Box>\n <Box display=\"flex\" alignItems=\"center\">\n {suffix && <Text css={styles.suffix}>{secondaryText}</Text>}\n <Accordion.ItemIndicator asChild>\n <AssetSelectChevron />\n </Accordion.ItemIndicator>\n </Box>\n </Accordion.ItemTrigger>\n );\n },\n);\nconst ItemBody = forwardRef<HTMLDivElement, BitkitAccordionItemBodyProps>(({ ...props }, ref) => {\n const itemProps = useAccordionItemContext();\n return (\n <Accordion.ItemContent>\n <Accordion.ItemBody ref={ref} aria-disabled={itemProps.disabled} {...props} />\n </Accordion.ItemContent>\n );\n});\n\nRoot.displayName = 'BitkitAccordion.Root';\nItemBody.displayName = 'BitkitAccordion.ItemBody';\nItem.displayName = 'BitkitAccordion.Item';\nItemTrigger.displayName = 'BitkitAccordion.ItemTrigger';\nconst BitkitAccordion = { Root, Item, ItemTrigger, ItemBody };\n\nexport default BitkitAccordion;\n"],"mappings":";;;;;;;;AAyBA,IAAM,OAAO,YAAkD,OAAO,QAAQ;AAC5E,QAAO,oBAAC,UAAU,MAAX;EAAqB;EAAK,UAAA;EAAS,GAAI;EAAS,CAAA;EACvD;AACF,IAAM,OAAO,YAAsD,OAAO,QAAQ;AAChF,QAAO,oBAAC,UAAU,MAAX;EAAqB;EAAK,GAAI;EAAwB,CAAA;EAC7D;AACF,IAAM,cAAc,YACjB,EAAE,UAAU,MAAM,MAAM,eAAe,QAAQ,GAAG,SAAS,QAAQ;CAElE,MAAM,SADS,cAAc,EAAE,KAAK,aAAa,
|
|
1
|
+
{"version":3,"file":"BitkitAccordion.js","names":[],"sources":["../../../lib/components/BitkitAccordion/BitkitAccordion.tsx"],"sourcesContent":["import {\n Accordion,\n type AccordionItemBodyProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n useAccordionItemContext,\n} from '@chakra-ui/react/accordion';\nimport { Box } from '@chakra-ui/react/box';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { Text } from '@chakra-ui/react/text';\nimport { forwardRef, type ReactNode } from 'react';\n\nimport { type BitkitIconComponent } from '../../icons';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\n\nexport type BitkitAccordionProps = AccordionRootProps;\nexport type BitkitAccordionItemProps = AccordionItemProps;\nexport interface BitkitAccordionItemTriggerProps extends AccordionItemTriggerProps {\n icon?: BitkitIconComponent;\n secondaryText?: ReactNode;\n suffix?: ReactNode;\n}\nexport type BitkitAccordionItemBodyProps = AccordionItemBodyProps;\n\nconst Root = forwardRef<HTMLDivElement, BitkitAccordionProps>((props, ref) => {\n return <Accordion.Root ref={ref} multiple {...props} />;\n});\nconst Item = forwardRef<HTMLDivElement, BitkitAccordionItemProps>((props, ref) => {\n return <Accordion.Item ref={ref} {...props}></Accordion.Item>;\n});\nconst ItemTrigger = forwardRef<HTMLButtonElement, BitkitAccordionItemTriggerProps>(\n ({ children, icon: Icon, secondaryText, suffix, ...props }, ref) => {\n const recipe = useSlotRecipe({ key: 'accordion' });\n const styles = recipe();\n return (\n <Accordion.ItemTrigger ref={ref} {...props}>\n <Box display=\"flex\" alignItems=\"center\" gap=\"8\">\n {Icon && (\n <Box css={styles.icon} asChild>\n <Icon size=\"16\" />\n </Box>\n )}\n <Box display=\"flex\" alignItems=\"flex-start\" flexDirection=\"column\">\n {children}\n {secondaryText && <Text css={styles.secdText}>{secondaryText}</Text>}\n </Box>\n </Box>\n <Box display=\"flex\" alignItems=\"center\">\n {suffix && <Text css={styles.suffix}>{secondaryText}</Text>}\n <Accordion.ItemIndicator asChild>\n <AssetSelectChevron />\n </Accordion.ItemIndicator>\n </Box>\n </Accordion.ItemTrigger>\n );\n },\n);\nconst ItemBody = forwardRef<HTMLDivElement, BitkitAccordionItemBodyProps>(({ ...props }, ref) => {\n const itemProps = useAccordionItemContext();\n return (\n <Accordion.ItemContent>\n <Accordion.ItemBody ref={ref} aria-disabled={itemProps.disabled} {...props} />\n </Accordion.ItemContent>\n );\n});\n\nRoot.displayName = 'BitkitAccordion.Root';\nItemBody.displayName = 'BitkitAccordion.ItemBody';\nItem.displayName = 'BitkitAccordion.Item';\nItemTrigger.displayName = 'BitkitAccordion.ItemTrigger';\nconst BitkitAccordion = { Root, Item, ItemTrigger, ItemBody };\n\nexport default BitkitAccordion;\n"],"mappings":";;;;;;;;AAyBA,IAAM,OAAO,YAAkD,OAAO,QAAQ;AAC5E,QAAO,oBAAC,UAAU,MAAX;EAAqB;EAAK,UAAA;EAAS,GAAI;EAAS,CAAA;EACvD;AACF,IAAM,OAAO,YAAsD,OAAO,QAAQ;AAChF,QAAO,oBAAC,UAAU,MAAX;EAAqB;EAAK,GAAI;EAAwB,CAAA;EAC7D;AACF,IAAM,cAAc,YACjB,EAAE,UAAU,MAAM,MAAM,eAAe,QAAQ,GAAG,SAAS,QAAQ;CAElE,MAAM,SADS,cAAc,EAAE,KAAK,aAAa,CAClC,EAAQ;AACvB,QACE,qBAAC,UAAU,aAAX;EAA4B;EAAK,GAAI;YAArC,CACE,qBAAC,KAAD;GAAK,SAAQ;GAAO,YAAW;GAAS,KAAI;aAA5C,CACG,QACC,oBAAC,KAAD;IAAK,KAAK,OAAO;IAAM,SAAA;cACrB,oBAAC,MAAD,EAAM,MAAK,MAAO,CAAA;IACd,CAAA,EAER,qBAAC,KAAD;IAAK,SAAQ;IAAO,YAAW;IAAa,eAAc;cAA1D,CACG,UACA,iBAAiB,oBAAC,MAAD;KAAM,KAAK,OAAO;eAAW;KAAqB,CAAA,CAChE;MACF;MACN,qBAAC,KAAD;GAAK,SAAQ;GAAO,YAAW;aAA/B,CACG,UAAU,oBAAC,MAAD;IAAM,KAAK,OAAO;cAAS;IAAqB,CAAA,EAC3D,oBAAC,UAAU,eAAX;IAAyB,SAAA;cACvB,oBAAC,oBAAD,EAAsB,CAAA;IACE,CAAA,CACtB;KACgB;;EAG7B;AACD,IAAM,WAAW,YAA0D,EAAE,GAAG,SAAS,QAAQ;CAC/F,MAAM,YAAY,yBAAyB;AAC3C,QACE,oBAAC,UAAU,aAAX,EAAA,UACE,oBAAC,UAAU,UAAX;EAAyB;EAAK,iBAAe,UAAU;EAAU,GAAI;EAAS,CAAA,EACxD,CAAA;EAE1B;AAEF,KAAK,cAAc;AACnB,SAAS,cAAc;AACvB,KAAK,cAAc;AACnB,YAAY,cAAc;AAC1B,IAAM,kBAAkB;CAAE;CAAM;CAAM;CAAa;CAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarFooter.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarFooter.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Button } from '@chakra-ui/react/button';\nimport { Text } from '@chakra-ui/react/text';\nimport { CalendarDate } from '@internationalized/date';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { calendarDateToDate } from '../Calendar.utils';\n\ntype CalendarFooterProps = {\n selectionMode?: 'day' | 'range';\n showSelectedDate?: boolean;\n};\n\nconst CalendarFooter = ({ selectionMode, showSelectedDate }: CalendarFooterProps) => {\n const { setOpen, setValue, value } = useDatePickerContext();\n\n const handleTodayClick = () => {\n const today = new Date();\n const todayCalendarDate = new CalendarDate(today.getFullYear(), today.getMonth() + 1, today.getDate());\n setValue([todayCalendarDate]);\n setOpen(false);\n };\n\n if (selectionMode === 'day') {\n return (\n <Box display=\"flex\" justifyContent=\"center\" marginTop=\"16\">\n <Button variant=\"tertiary\" size=\"sm\" onClick={handleTodayClick}>\n Today\n </Button>\n </Box>\n );\n }\n\n if (value.length === 2 && showSelectedDate) {\n const formatDate = (date: Date) => {\n return date.toLocaleDateString('en-US', {\n weekday: 'short',\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n };\n\n const startDate = calendarDateToDate(value[0]);\n const endDate = calendarDateToDate(value[1]);\n const formattedRange = `${formatDate(startDate)} – ${formatDate(endDate)}`;\n\n return (\n <Text textAlign=\"center\" color=\"text/secondary\" marginTop=\"24\" textStyle=\"body/lg/regular\">\n {formattedRange}\n </Text>\n );\n }\n\n return null;\n};\n\nexport default CalendarFooter;\n"],"mappings":";;;;;;;;AAaA,IAAM,kBAAkB,EAAE,eAAe,uBAA4C;CACnF,MAAM,EAAE,SAAS,UAAU,UAAU,sBAAsB;CAE3D,MAAM,yBAAyB;EAC7B,MAAM,wBAAQ,IAAI,MAAM;AAExB,WAAS,
|
|
1
|
+
{"version":3,"file":"CalendarFooter.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarFooter.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Button } from '@chakra-ui/react/button';\nimport { Text } from '@chakra-ui/react/text';\nimport { CalendarDate } from '@internationalized/date';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { calendarDateToDate } from '../Calendar.utils';\n\ntype CalendarFooterProps = {\n selectionMode?: 'day' | 'range';\n showSelectedDate?: boolean;\n};\n\nconst CalendarFooter = ({ selectionMode, showSelectedDate }: CalendarFooterProps) => {\n const { setOpen, setValue, value } = useDatePickerContext();\n\n const handleTodayClick = () => {\n const today = new Date();\n const todayCalendarDate = new CalendarDate(today.getFullYear(), today.getMonth() + 1, today.getDate());\n setValue([todayCalendarDate]);\n setOpen(false);\n };\n\n if (selectionMode === 'day') {\n return (\n <Box display=\"flex\" justifyContent=\"center\" marginTop=\"16\">\n <Button variant=\"tertiary\" size=\"sm\" onClick={handleTodayClick}>\n Today\n </Button>\n </Box>\n );\n }\n\n if (value.length === 2 && showSelectedDate) {\n const formatDate = (date: Date) => {\n return date.toLocaleDateString('en-US', {\n weekday: 'short',\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n };\n\n const startDate = calendarDateToDate(value[0]);\n const endDate = calendarDateToDate(value[1]);\n const formattedRange = `${formatDate(startDate)} – ${formatDate(endDate)}`;\n\n return (\n <Text textAlign=\"center\" color=\"text/secondary\" marginTop=\"24\" textStyle=\"body/lg/regular\">\n {formattedRange}\n </Text>\n );\n }\n\n return null;\n};\n\nexport default CalendarFooter;\n"],"mappings":";;;;;;;;AAaA,IAAM,kBAAkB,EAAE,eAAe,uBAA4C;CACnF,MAAM,EAAE,SAAS,UAAU,UAAU,sBAAsB;CAE3D,MAAM,yBAAyB;EAC7B,MAAM,wBAAQ,IAAI,MAAM;AAExB,WAAS,CAAC,IADoB,aAAa,MAAM,aAAa,EAAE,MAAM,UAAU,GAAG,GAAG,MAAM,SAAS,CAC3F,CAAkB,CAAC;AAC7B,UAAQ,MAAM;;AAGhB,KAAI,kBAAkB,MACpB,QACE,oBAAC,KAAD;EAAK,SAAQ;EAAO,gBAAe;EAAS,WAAU;YACpD,oBAAC,QAAD;GAAQ,SAAQ;GAAW,MAAK;GAAK,SAAS;aAAkB;GAEvD,CAAA;EACL,CAAA;AAIV,KAAI,MAAM,WAAW,KAAK,kBAAkB;EAC1C,MAAM,cAAc,SAAe;AACjC,UAAO,KAAK,mBAAmB,SAAS;IACtC,SAAS;IACT,OAAO;IACP,KAAK;IACL,MAAM;IACP,CAAC;;EAGJ,MAAM,YAAY,mBAAmB,MAAM,GAAG;EAC9C,MAAM,UAAU,mBAAmB,MAAM,GAAG;AAG5C,SACE,oBAAC,MAAD;GAAM,WAAU;GAAS,OAAM;GAAiB,WAAU;GAAK,WAAU;aACtE,GAJqB,WAAW,UAAU,CAAC,KAAK,WAAW,QAAQ;GAK/D,CAAA;;AAIX,QAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarNextTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarNextTrigger.tsx"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { IconButton } from '@chakra-ui/react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { IconChevronRight } from '../../../main';\n\nconst CalendarNextTrigger = () => {\n const datePicker = useDatePickerContext();\n\n return (\n <IconButton {...datePicker.getNextTriggerProps()} color=\"button/secondary/fg/text\" size=\"sm\" variant=\"tertiary\">\n <IconChevronRight size=\"16\" />\n </IconButton>\n );\n};\n\nexport default CalendarNextTrigger;\n"],"mappings":";;;;;AAMA,IAAM,4BAA4B;AAGhC,QACE,oBAAC,YAAD;EAAY,GAHK,
|
|
1
|
+
{"version":3,"file":"CalendarNextTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarNextTrigger.tsx"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { IconButton } from '@chakra-ui/react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { IconChevronRight } from '../../../main';\n\nconst CalendarNextTrigger = () => {\n const datePicker = useDatePickerContext();\n\n return (\n <IconButton {...datePicker.getNextTriggerProps()} color=\"button/secondary/fg/text\" size=\"sm\" variant=\"tertiary\">\n <IconChevronRight size=\"16\" />\n </IconButton>\n );\n};\n\nexport default CalendarNextTrigger;\n"],"mappings":";;;;;AAMA,IAAM,4BAA4B;AAGhC,QACE,oBAAC,YAAD;EAAY,GAHK,sBAGD,CAAW,qBAAqB;EAAE,OAAM;EAA2B,MAAK;EAAK,SAAQ;YACnG,oBAAC,kBAAD,EAAkB,MAAK,MAAO,CAAA;EACnB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarPrevTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarPrevTrigger.tsx"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { IconButton } from '@chakra-ui/react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { IconChevronLeft } from '../../../main';\n\nconst CalendarPrevTrigger = () => {\n const datePicker = useDatePickerContext();\n\n return (\n <IconButton {...datePicker.getPrevTriggerProps()} color=\"button/secondary/fg/text\" size=\"sm\" variant=\"tertiary\">\n <IconChevronLeft size=\"16\" />\n </IconButton>\n );\n};\n\nexport default CalendarPrevTrigger;\n"],"mappings":";;;;;AAMA,IAAM,4BAA4B;AAGhC,QACE,oBAAC,YAAD;EAAY,GAHK,
|
|
1
|
+
{"version":3,"file":"CalendarPrevTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarPrevTrigger.tsx"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport { IconButton } from '@chakra-ui/react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\nimport { IconChevronLeft } from '../../../main';\n\nconst CalendarPrevTrigger = () => {\n const datePicker = useDatePickerContext();\n\n return (\n <IconButton {...datePicker.getPrevTriggerProps()} color=\"button/secondary/fg/text\" size=\"sm\" variant=\"tertiary\">\n <IconChevronLeft size=\"16\" />\n </IconButton>\n );\n};\n\nexport default CalendarPrevTrigger;\n"],"mappings":";;;;;AAMA,IAAM,4BAA4B;AAGhC,QACE,oBAAC,YAAD;EAAY,GAHK,sBAGD,CAAW,qBAAqB;EAAE,OAAM;EAA2B,MAAK;EAAK,SAAQ;YACnG,oBAAC,iBAAD,EAAiB,MAAK,MAAO,CAAA;EAClB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarSelect.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarSelect.tsx"],"sourcesContent":["import { createListCollection } from '@chakra-ui/react/collection';\nimport { Portal } from '@chakra-ui/react/portal';\nimport {\n Select,\n type SelectContentProps,\n type SelectControlProps,\n type SelectRootProps,\n} from '@chakra-ui/react/select';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\n\nimport AssetSelectChevron from '../../../utilities/AssetSelectChevron.tsx';\nimport BitkitSelectMenu from '../../BitkitSelectMenu/BitkitSelectMenu.tsx';\n\nexport interface BitkitSelectProps {\n controlProps?: SelectControlProps;\n contentProps?: SelectContentProps;\n defaultValue?: string[];\n items: Array<{ group?: string; value: string; label: string }>;\n onValueChange?: SelectRootProps['onValueChange'];\n value?: string[];\n}\n\nconst CalendarSelect = (props: BitkitSelectProps) => {\n const { contentProps, controlProps, defaultValue, items, onValueChange, value } = props;\n\n const collection = createListCollection({\n items,\n groupBy: (item) => item.group || '',\n });\n\n const recipe = useSlotRecipe({ key: 'datePickerSelect' });\n const styles = recipe();\n\n return (\n <Select.Root\n collection={collection}\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n size=\"md\"\n value={value}\n >\n <Select.HiddenSelect />\n <Select.Control {...controlProps}>\n <Select.Trigger css={styles.trigger}>\n <Select.ValueText />\n </Select.Trigger>\n <Select.IndicatorGroup css={styles.indicatorGroup}>\n <Select.Indicator asChild css={styles.indicator}>\n <AssetSelectChevron width=\"20\" height=\"20\" />\n </Select.Indicator>\n </Select.IndicatorGroup>\n </Select.Control>\n <Portal>\n <Select.Positioner>\n <BitkitSelectMenu collection={collection} contentProps={contentProps} size=\"md\" />\n </Select.Positioner>\n </Portal>\n </Select.Root>\n );\n};\n\nCalendarSelect.displayName = 'CalendarSelect';\n\nexport default CalendarSelect;\n"],"mappings":";;;;;;;;AAsBA,IAAM,kBAAkB,UAA6B;CACnD,MAAM,EAAE,cAAc,cAAc,cAAc,OAAO,eAAe,UAAU;CAElF,MAAM,aAAa,qBAAqB;EACtC;EACA,UAAU,SAAS,KAAK,SAAS;EAClC,CAAC;CAGF,MAAM,SADS,cAAc,EAAE,KAAK,oBAAoB,
|
|
1
|
+
{"version":3,"file":"CalendarSelect.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarSelect.tsx"],"sourcesContent":["import { createListCollection } from '@chakra-ui/react/collection';\nimport { Portal } from '@chakra-ui/react/portal';\nimport {\n Select,\n type SelectContentProps,\n type SelectControlProps,\n type SelectRootProps,\n} from '@chakra-ui/react/select';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\n\nimport AssetSelectChevron from '../../../utilities/AssetSelectChevron.tsx';\nimport BitkitSelectMenu from '../../BitkitSelectMenu/BitkitSelectMenu.tsx';\n\nexport interface BitkitSelectProps {\n controlProps?: SelectControlProps;\n contentProps?: SelectContentProps;\n defaultValue?: string[];\n items: Array<{ group?: string; value: string; label: string }>;\n onValueChange?: SelectRootProps['onValueChange'];\n value?: string[];\n}\n\nconst CalendarSelect = (props: BitkitSelectProps) => {\n const { contentProps, controlProps, defaultValue, items, onValueChange, value } = props;\n\n const collection = createListCollection({\n items,\n groupBy: (item) => item.group || '',\n });\n\n const recipe = useSlotRecipe({ key: 'datePickerSelect' });\n const styles = recipe();\n\n return (\n <Select.Root\n collection={collection}\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n size=\"md\"\n value={value}\n >\n <Select.HiddenSelect />\n <Select.Control {...controlProps}>\n <Select.Trigger css={styles.trigger}>\n <Select.ValueText />\n </Select.Trigger>\n <Select.IndicatorGroup css={styles.indicatorGroup}>\n <Select.Indicator asChild css={styles.indicator}>\n <AssetSelectChevron width=\"20\" height=\"20\" />\n </Select.Indicator>\n </Select.IndicatorGroup>\n </Select.Control>\n <Portal>\n <Select.Positioner>\n <BitkitSelectMenu collection={collection} contentProps={contentProps} size=\"md\" />\n </Select.Positioner>\n </Portal>\n </Select.Root>\n );\n};\n\nCalendarSelect.displayName = 'CalendarSelect';\n\nexport default CalendarSelect;\n"],"mappings":";;;;;;;;AAsBA,IAAM,kBAAkB,UAA6B;CACnD,MAAM,EAAE,cAAc,cAAc,cAAc,OAAO,eAAe,UAAU;CAElF,MAAM,aAAa,qBAAqB;EACtC;EACA,UAAU,SAAS,KAAK,SAAS;EAClC,CAAC;CAGF,MAAM,SADS,cAAc,EAAE,KAAK,oBAAoB,CACzC,EAAQ;AAEvB,QACE,qBAAC,OAAO,MAAR;EACc;EACE;EACC;EACf,MAAK;EACE;YALT;GAOE,oBAAC,OAAO,cAAR,EAAuB,CAAA;GACvB,qBAAC,OAAO,SAAR;IAAgB,GAAI;cAApB,CACE,oBAAC,OAAO,SAAR;KAAgB,KAAK,OAAO;eAC1B,oBAAC,OAAO,WAAR,EAAoB,CAAA;KACL,CAAA,EACjB,oBAAC,OAAO,gBAAR;KAAuB,KAAK,OAAO;eACjC,oBAAC,OAAO,WAAR;MAAkB,SAAA;MAAQ,KAAK,OAAO;gBACpC,oBAAC,oBAAD;OAAoB,OAAM;OAAK,QAAO;OAAO,CAAA;MAC5B,CAAA;KACG,CAAA,CACT;;GACjB,oBAAC,QAAD,EAAA,UACE,oBAAC,OAAO,YAAR,EAAA,UACE,oBAAC,kBAAD;IAA8B;IAA0B;IAAc,MAAK;IAAO,CAAA,EAChE,CAAA,EACb,CAAA;GACG;;;AAIlB,eAAe,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarTrigger.tsx"],"sourcesContent":["import { cloneElement, isValidElement, type ReactNode } from 'react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\n\nconst CalendarTrigger = ({ children }: { children: ReactNode }) => {\n const context = useDatePickerContext();\n const triggerProps = context.getTriggerProps();\n\n if (!isValidElement(children)) {\n throw new Error('CalendarTrigger children must be a valid React element');\n }\n\n const childProps = children.props as Record<string, any>;\n const mergedProps = {\n ...childProps,\n ...triggerProps,\n onClick: (event: any) => {\n triggerProps.onClick?.(event);\n childProps.onClick?.(event);\n },\n };\n\n return cloneElement(children, mergedProps as any);\n};\n\nexport default CalendarTrigger;\n"],"mappings":";;;AAIA,IAAM,mBAAmB,EAAE,eAAwC;CAEjE,MAAM,eADU,
|
|
1
|
+
{"version":3,"file":"CalendarTrigger.js","names":[],"sources":["../../../../lib/components/BitkitCalendar/components/CalendarTrigger.tsx"],"sourcesContent":["import { cloneElement, isValidElement, type ReactNode } from 'react';\n\nimport { useDatePickerContext } from '../../../atoms/DatePicker/DatePicker';\n\nconst CalendarTrigger = ({ children }: { children: ReactNode }) => {\n const context = useDatePickerContext();\n const triggerProps = context.getTriggerProps();\n\n if (!isValidElement(children)) {\n throw new Error('CalendarTrigger children must be a valid React element');\n }\n\n const childProps = children.props as Record<string, any>;\n const mergedProps = {\n ...childProps,\n ...triggerProps,\n onClick: (event: any) => {\n triggerProps.onClick?.(event);\n childProps.onClick?.(event);\n },\n };\n\n return cloneElement(children, mergedProps as any);\n};\n\nexport default CalendarTrigger;\n"],"mappings":";;;AAIA,IAAM,mBAAmB,EAAE,eAAwC;CAEjE,MAAM,eADU,sBACK,CAAQ,iBAAiB;AAE9C,KAAI,CAAC,eAAe,SAAS,CAC3B,OAAM,IAAI,MAAM,yDAAyD;CAG3E,MAAM,aAAa,SAAS;AAU5B,QAAO,aAAa,UAAU;EAR5B,GAAG;EACH,GAAG;EACH,UAAU,UAAe;AACvB,gBAAa,UAAU,MAAM;AAC7B,cAAW,UAAU,MAAM;;EAID,CAAmB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitCodeSnippet.js","names":[],"sources":["../../../lib/components/BitkitCodeSnippet/BitkitCodeSnippet.tsx"],"sourcesContent":["import { useClipboard } from '@ark-ui/react/clipboard';\nimport { chakra, useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type KeyboardEvent, useState } from 'react';\n\nimport { IconCheck, IconCopy } from '../../icons';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\nimport BitkitTooltip from '../BitkitTooltip/BitkitTooltip';\n\nconst COPY_TOOLTIP = 'Copy to clipboard';\n\ninterface BaseProps {\n children: string;\n size?: 'md' | 'lg';\n textToCopy?: string;\n}\n\ninterface InlineProps extends BaseProps {\n interactive?: boolean;\n startingHeight?: never;\n variant: 'inline';\n}\n\ninterface BlockProps extends BaseProps {\n interactive?: never;\n startingHeight?: number;\n variant: 'multi' | 'single';\n}\n\nexport type BitkitCodeSnippetProps = InlineProps | BlockProps;\n\nconst BitkitCodeSnippet = forwardRef<HTMLElement, BitkitCodeSnippetProps>((props, ref) => {\n const { children, interactive, size = 'lg', startingHeight, textToCopy, variant } = props;\n\n const hasShowMore = startingHeight !== undefined;\n const [isExpanded, setIsExpanded] = useState(false);\n\n const { copied, copy } = useClipboard({ timeout: 2000, value: textToCopy ?? children });\n\n const recipe = useSlotRecipe({ key: 'codeSnippet' });\n const styles = recipe({ size, variant, hasShowMore, isExpanded, interactive });\n\n const handleToggleExpand = () => {\n setIsExpanded((prev) => !prev);\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n copy();\n }\n };\n\n const copyButton = (\n <chakra.button aria-label={COPY_TOOLTIP} css={styles.copyButton} onClick={copy} type=\"button\">\n {copied ? <IconCheck size=\"16\" /> : <IconCopy size=\"16\" />}\n </chakra.button>\n );\n\n if (variant === 'inline') {\n if (!interactive) {\n return (\n <chakra.code ref={ref} css={styles.root}>\n {children}\n </chakra.code>\n );\n }\n\n return (\n <BitkitTooltip text={COPY_TOOLTIP}>\n <chakra.code ref={ref} css={styles.root} onClick={copy} onKeyDown={handleKeyDown} role=\"button\" tabIndex={0}>\n {children}\n </chakra.code>\n </BitkitTooltip>\n );\n }\n\n if (variant === 'single') {\n return (\n <chakra.div ref={ref} css={styles.root}>\n <chakra.code css={styles.content} tabIndex={-1}>\n {children}\n </chakra.code>\n <BitkitTooltip text={COPY_TOOLTIP}>{copyButton}</BitkitTooltip>\n </chakra.div>\n );\n }\n\n const contentMaxHeight = hasShowMore && !isExpanded ? startingHeight : undefined;\n\n return (\n <chakra.div ref={ref} css={styles.root}>\n <chakra.code css={styles.content} maxHeight={contentMaxHeight} tabIndex={-1}>\n {children}\n </chakra.code>\n <chakra.div css={styles.copyButtonWrapper}>\n <BitkitTooltip text={COPY_TOOLTIP}>{copyButton}</BitkitTooltip>\n </chakra.div>\n {hasShowMore && (\n <chakra.div css={styles.showMoreContainer}>\n {!isExpanded && <chakra.div css={styles.showMoreGradient} />}\n <chakra.button onClick={handleToggleExpand} css={styles.showMoreButton}>\n {isExpanded ? 'Show less' : 'Show more'}\n <AssetSelectChevron data-state={isExpanded ? 'open' : 'closed'} height=\"16\" width=\"16\" />\n </chakra.button>\n </chakra.div>\n )}\n </chakra.div>\n );\n});\n\nBitkitCodeSnippet.displayName = 'BitkitCodeSnippet';\n\nexport default BitkitCodeSnippet;\n"],"mappings":";;;;;;;;;AAQA,IAAM,eAAe;AAsBrB,IAAM,oBAAoB,YAAiD,OAAO,QAAQ;CACxF,MAAM,EAAE,UAAU,aAAa,OAAO,MAAM,gBAAgB,YAAY,YAAY;CAEpF,MAAM,cAAc,mBAAmB,KAAA;CACvC,MAAM,CAAC,YAAY,iBAAiB,SAAS,MAAM;CAEnD,MAAM,EAAE,QAAQ,SAAS,aAAa;EAAE,SAAS;EAAM,OAAO,cAAc;EAAU,CAAC;CAGvF,MAAM,SADS,cAAc,EAAE,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"BitkitCodeSnippet.js","names":[],"sources":["../../../lib/components/BitkitCodeSnippet/BitkitCodeSnippet.tsx"],"sourcesContent":["import { useClipboard } from '@ark-ui/react/clipboard';\nimport { chakra, useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type KeyboardEvent, useState } from 'react';\n\nimport { IconCheck, IconCopy } from '../../icons';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\nimport BitkitTooltip from '../BitkitTooltip/BitkitTooltip';\n\nconst COPY_TOOLTIP = 'Copy to clipboard';\n\ninterface BaseProps {\n children: string;\n size?: 'md' | 'lg';\n textToCopy?: string;\n}\n\ninterface InlineProps extends BaseProps {\n interactive?: boolean;\n startingHeight?: never;\n variant: 'inline';\n}\n\ninterface BlockProps extends BaseProps {\n interactive?: never;\n startingHeight?: number;\n variant: 'multi' | 'single';\n}\n\nexport type BitkitCodeSnippetProps = InlineProps | BlockProps;\n\nconst BitkitCodeSnippet = forwardRef<HTMLElement, BitkitCodeSnippetProps>((props, ref) => {\n const { children, interactive, size = 'lg', startingHeight, textToCopy, variant } = props;\n\n const hasShowMore = startingHeight !== undefined;\n const [isExpanded, setIsExpanded] = useState(false);\n\n const { copied, copy } = useClipboard({ timeout: 2000, value: textToCopy ?? children });\n\n const recipe = useSlotRecipe({ key: 'codeSnippet' });\n const styles = recipe({ size, variant, hasShowMore, isExpanded, interactive });\n\n const handleToggleExpand = () => {\n setIsExpanded((prev) => !prev);\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n copy();\n }\n };\n\n const copyButton = (\n <chakra.button aria-label={COPY_TOOLTIP} css={styles.copyButton} onClick={copy} type=\"button\">\n {copied ? <IconCheck size=\"16\" /> : <IconCopy size=\"16\" />}\n </chakra.button>\n );\n\n if (variant === 'inline') {\n if (!interactive) {\n return (\n <chakra.code ref={ref} css={styles.root}>\n {children}\n </chakra.code>\n );\n }\n\n return (\n <BitkitTooltip text={COPY_TOOLTIP}>\n <chakra.code ref={ref} css={styles.root} onClick={copy} onKeyDown={handleKeyDown} role=\"button\" tabIndex={0}>\n {children}\n </chakra.code>\n </BitkitTooltip>\n );\n }\n\n if (variant === 'single') {\n return (\n <chakra.div ref={ref} css={styles.root}>\n <chakra.code css={styles.content} tabIndex={-1}>\n {children}\n </chakra.code>\n <BitkitTooltip text={COPY_TOOLTIP}>{copyButton}</BitkitTooltip>\n </chakra.div>\n );\n }\n\n const contentMaxHeight = hasShowMore && !isExpanded ? startingHeight : undefined;\n\n return (\n <chakra.div ref={ref} css={styles.root}>\n <chakra.code css={styles.content} maxHeight={contentMaxHeight} tabIndex={-1}>\n {children}\n </chakra.code>\n <chakra.div css={styles.copyButtonWrapper}>\n <BitkitTooltip text={COPY_TOOLTIP}>{copyButton}</BitkitTooltip>\n </chakra.div>\n {hasShowMore && (\n <chakra.div css={styles.showMoreContainer}>\n {!isExpanded && <chakra.div css={styles.showMoreGradient} />}\n <chakra.button onClick={handleToggleExpand} css={styles.showMoreButton}>\n {isExpanded ? 'Show less' : 'Show more'}\n <AssetSelectChevron data-state={isExpanded ? 'open' : 'closed'} height=\"16\" width=\"16\" />\n </chakra.button>\n </chakra.div>\n )}\n </chakra.div>\n );\n});\n\nBitkitCodeSnippet.displayName = 'BitkitCodeSnippet';\n\nexport default BitkitCodeSnippet;\n"],"mappings":";;;;;;;;;AAQA,IAAM,eAAe;AAsBrB,IAAM,oBAAoB,YAAiD,OAAO,QAAQ;CACxF,MAAM,EAAE,UAAU,aAAa,OAAO,MAAM,gBAAgB,YAAY,YAAY;CAEpF,MAAM,cAAc,mBAAmB,KAAA;CACvC,MAAM,CAAC,YAAY,iBAAiB,SAAS,MAAM;CAEnD,MAAM,EAAE,QAAQ,SAAS,aAAa;EAAE,SAAS;EAAM,OAAO,cAAc;EAAU,CAAC;CAGvF,MAAM,SADS,cAAc,EAAE,KAAK,eAAe,CACpC,CAAO;EAAE;EAAM;EAAS;EAAa;EAAY;EAAa,CAAC;CAE9E,MAAM,2BAA2B;AAC/B,iBAAe,SAAS,CAAC,KAAK;;CAGhC,MAAM,iBAAiB,MAAqB;AAC1C,MAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;AACtC,KAAE,gBAAgB;AAClB,SAAM;;;CAIV,MAAM,aACJ,oBAAC,OAAO,QAAR;EAAe,cAAY;EAAc,KAAK,OAAO;EAAY,SAAS;EAAM,MAAK;YAClF,SAAS,oBAAC,WAAD,EAAW,MAAK,MAAO,CAAA,GAAG,oBAAC,UAAD,EAAU,MAAK,MAAO,CAAA;EAC5C,CAAA;AAGlB,KAAI,YAAY,UAAU;AACxB,MAAI,CAAC,YACH,QACE,oBAAC,OAAO,MAAR;GAAkB;GAAK,KAAK,OAAO;GAChC;GACW,CAAA;AAIlB,SACE,oBAAC,eAAD;GAAe,MAAM;aACnB,oBAAC,OAAO,MAAR;IAAkB;IAAK,KAAK,OAAO;IAAM,SAAS;IAAM,WAAW;IAAe,MAAK;IAAS,UAAU;IACvG;IACW,CAAA;GACA,CAAA;;AAIpB,KAAI,YAAY,SACd,QACE,qBAAC,OAAO,KAAR;EAAiB;EAAK,KAAK,OAAO;YAAlC,CACE,oBAAC,OAAO,MAAR;GAAa,KAAK,OAAO;GAAS,UAAU;GACzC;GACW,CAAA,EACd,oBAAC,eAAD;GAAe,MAAM;aAAe;GAA2B,CAAA,CACpD;;CAIjB,MAAM,mBAAmB,eAAe,CAAC,aAAa,iBAAiB,KAAA;AAEvE,QACE,qBAAC,OAAO,KAAR;EAAiB;EAAK,KAAK,OAAO;YAAlC;GACE,oBAAC,OAAO,MAAR;IAAa,KAAK,OAAO;IAAS,WAAW;IAAkB,UAAU;IACtE;IACW,CAAA;GACd,oBAAC,OAAO,KAAR;IAAY,KAAK,OAAO;cACtB,oBAAC,eAAD;KAAe,MAAM;eAAe;KAA2B,CAAA;IACpD,CAAA;GACZ,eACC,qBAAC,OAAO,KAAR;IAAY,KAAK,OAAO;cAAxB,CACG,CAAC,cAAc,oBAAC,OAAO,KAAR,EAAY,KAAK,OAAO,kBAAoB,CAAA,EAC5D,qBAAC,OAAO,QAAR;KAAe,SAAS;KAAoB,KAAK,OAAO;eAAxD,CACG,aAAa,cAAc,aAC5B,oBAAC,oBAAD;MAAoB,cAAY,aAAa,SAAS;MAAU,QAAO;MAAK,OAAM;MAAO,CAAA,CAC3E;OACL;;GAEJ;;EAEf;AAEF,kBAAkB,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitCollapsible.js","names":[],"sources":["../../../lib/components/BitkitCollapsible/BitkitCollapsible.tsx"],"sourcesContent":["import { Collapsible, type CollapsibleRootProps } from '@chakra-ui/react/collapsible';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type ReactNode } from 'react';\n\n// TODO: Investigate using AssetSelectChevron instead of IconChevronDown/IconChevronUp\nimport { IconChevronDown, IconChevronUp } from '../../icons';\nimport BitkitLabel, { type BitkitLabelProps } from '../BitkitLabel/BitkitLabel';\n\ntype UncontrolledProps = {\n defaultOpen?: boolean;\n open?: never;\n onOpenChange?: never;\n};\n\ntype ControlledProps = {\n defaultOpen?: never;\n onOpenChange: (open: boolean) => void;\n open: boolean;\n};\n\nexport type BitkitCollapsibleProps = Omit<\n CollapsibleRootProps,\n 'collapsedHeight' | 'defaultOpen' | 'onOpenChange' | 'open'\n> & {\n children: ReactNode;\n closedLabel?: string;\n collapsedHeight?: string;\n label?: string;\n labelProps?: Omit<BitkitLabelProps, 'children'>;\n openLabel?: string;\n} & (UncontrolledProps | ControlledProps);\n\nconst BitkitCollapsible = forwardRef<HTMLDivElement, BitkitCollapsibleProps>((props, ref) => {\n const {\n children,\n closedLabel = 'Show less',\n collapsedHeight = '48px',\n defaultOpen,\n label,\n labelProps,\n onOpenChange,\n open,\n openLabel = 'Show more',\n ...rest\n } = props;\n\n const recipe = useSlotRecipe({ key: 'collapsible' });\n const styles = recipe();\n\n const handleOpenChange = onOpenChange ? (details: { open: boolean }) => onOpenChange(details.open) : undefined;\n\n return (\n <Collapsible.Root\n ref={ref}\n collapsedHeight={collapsedHeight}\n css={styles.root}\n defaultOpen={defaultOpen}\n onOpenChange={handleOpenChange}\n open={open}\n {...rest}\n >\n {label && <BitkitLabel {...labelProps}>{label}</BitkitLabel>}\n <Collapsible.Content css={styles.content}>{children}</Collapsible.Content>\n <Collapsible.Trigger css={styles.trigger}>\n <Collapsible.Context>\n {(api) => (\n <>\n {api.open ? closedLabel : openLabel}\n {api.open ? <IconChevronUp size=\"16\" /> : <IconChevronDown size=\"16\" />}\n </>\n )}\n </Collapsible.Context>\n </Collapsible.Trigger>\n </Collapsible.Root>\n );\n});\n\nBitkitCollapsible.displayName = 'BitkitCollapsible';\n\nexport default BitkitCollapsible;\n"],"mappings":";;;;;;;;AAgCA,IAAM,oBAAoB,YAAoD,OAAO,QAAQ;CAC3F,MAAM,EACJ,UACA,cAAc,aACd,kBAAkB,QAClB,aACA,OACA,YACA,cACA,MACA,YAAY,aACZ,GAAG,SACD;CAGJ,MAAM,SADS,cAAc,EAAE,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"BitkitCollapsible.js","names":[],"sources":["../../../lib/components/BitkitCollapsible/BitkitCollapsible.tsx"],"sourcesContent":["import { Collapsible, type CollapsibleRootProps } from '@chakra-ui/react/collapsible';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { forwardRef, type ReactNode } from 'react';\n\n// TODO: Investigate using AssetSelectChevron instead of IconChevronDown/IconChevronUp\nimport { IconChevronDown, IconChevronUp } from '../../icons';\nimport BitkitLabel, { type BitkitLabelProps } from '../BitkitLabel/BitkitLabel';\n\ntype UncontrolledProps = {\n defaultOpen?: boolean;\n open?: never;\n onOpenChange?: never;\n};\n\ntype ControlledProps = {\n defaultOpen?: never;\n onOpenChange: (open: boolean) => void;\n open: boolean;\n};\n\nexport type BitkitCollapsibleProps = Omit<\n CollapsibleRootProps,\n 'collapsedHeight' | 'defaultOpen' | 'onOpenChange' | 'open'\n> & {\n children: ReactNode;\n closedLabel?: string;\n collapsedHeight?: string;\n label?: string;\n labelProps?: Omit<BitkitLabelProps, 'children'>;\n openLabel?: string;\n} & (UncontrolledProps | ControlledProps);\n\nconst BitkitCollapsible = forwardRef<HTMLDivElement, BitkitCollapsibleProps>((props, ref) => {\n const {\n children,\n closedLabel = 'Show less',\n collapsedHeight = '48px',\n defaultOpen,\n label,\n labelProps,\n onOpenChange,\n open,\n openLabel = 'Show more',\n ...rest\n } = props;\n\n const recipe = useSlotRecipe({ key: 'collapsible' });\n const styles = recipe();\n\n const handleOpenChange = onOpenChange ? (details: { open: boolean }) => onOpenChange(details.open) : undefined;\n\n return (\n <Collapsible.Root\n ref={ref}\n collapsedHeight={collapsedHeight}\n css={styles.root}\n defaultOpen={defaultOpen}\n onOpenChange={handleOpenChange}\n open={open}\n {...rest}\n >\n {label && <BitkitLabel {...labelProps}>{label}</BitkitLabel>}\n <Collapsible.Content css={styles.content}>{children}</Collapsible.Content>\n <Collapsible.Trigger css={styles.trigger}>\n <Collapsible.Context>\n {(api) => (\n <>\n {api.open ? closedLabel : openLabel}\n {api.open ? <IconChevronUp size=\"16\" /> : <IconChevronDown size=\"16\" />}\n </>\n )}\n </Collapsible.Context>\n </Collapsible.Trigger>\n </Collapsible.Root>\n );\n});\n\nBitkitCollapsible.displayName = 'BitkitCollapsible';\n\nexport default BitkitCollapsible;\n"],"mappings":";;;;;;;;AAgCA,IAAM,oBAAoB,YAAoD,OAAO,QAAQ;CAC3F,MAAM,EACJ,UACA,cAAc,aACd,kBAAkB,QAClB,aACA,OACA,YACA,cACA,MACA,YAAY,aACZ,GAAG,SACD;CAGJ,MAAM,SADS,cAAc,EAAE,KAAK,eAAe,CACpC,EAAQ;CAEvB,MAAM,mBAAmB,gBAAgB,YAA+B,aAAa,QAAQ,KAAK,GAAG,KAAA;AAErG,QACE,qBAAC,YAAY,MAAb;EACO;EACY;EACjB,KAAK,OAAO;EACC;EACb,cAAc;EACR;EACN,GAAI;YAPN;GASG,SAAS,oBAAC,aAAD;IAAa,GAAI;cAAa;IAAoB,CAAA;GAC5D,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;IAAU;IAA+B,CAAA;GAC1E,oBAAC,YAAY,SAAb;IAAqB,KAAK,OAAO;cAC/B,oBAAC,YAAY,SAAb,EAAA,WACI,QACA,qBAAA,YAAA,EAAA,UAAA,CACG,IAAI,OAAO,cAAc,WACzB,IAAI,OAAO,oBAAC,eAAD,EAAe,MAAK,MAAO,CAAA,GAAG,oBAAC,iBAAD,EAAiB,MAAK,MAAO,CAAA,CACtE,EAAA,CAAA,EAEe,CAAA;IACF,CAAA;GACL;;EAErB;AAEF,kBAAkB,cAAc"}
|
|
@@ -12,5 +12,15 @@ export type BitkitComboboxProps = Omit<BitkitFieldProps, 'children' | 'state'> &
|
|
|
12
12
|
state?: 'disabled' | 'error' | 'readOnly' | 'warning';
|
|
13
13
|
value?: string;
|
|
14
14
|
} & BitkitSelectMenuCreateItemProps & BitkitSelectMenuSearchProps & BitkitSelectMenuEmptyStateProps;
|
|
15
|
-
declare const BitkitCombobox: import('react').ForwardRefExoticComponent<
|
|
15
|
+
declare const BitkitCombobox: import('react').ForwardRefExoticComponent<Omit<BitkitFieldProps, "children" | "state"> & {
|
|
16
|
+
comboboxProps?: Omit<ComboboxRootProps, "collection" | "defaultValue" | "onValueChange" | "value">;
|
|
17
|
+
defaultValue?: string;
|
|
18
|
+
isLoading?: boolean;
|
|
19
|
+
items: Array<BitkitSelectMenuItemProps>;
|
|
20
|
+
onValueChange?: (newVal: string | undefined) => void;
|
|
21
|
+
placeholder?: string;
|
|
22
|
+
size?: "md" | "lg";
|
|
23
|
+
state?: "disabled" | "error" | "readOnly" | "warning";
|
|
24
|
+
value?: string;
|
|
25
|
+
} & BitkitSelectMenuCreateItemProps & BitkitSelectMenuSearchProps & BitkitSelectMenuEmptyStateProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
16
26
|
export default BitkitCombobox;
|
|
@@ -12,7 +12,7 @@ import { useListCollection } from "@chakra-ui/react/hooks";
|
|
|
12
12
|
import { useFilter } from "@chakra-ui/react/locale";
|
|
13
13
|
//#region lib/components/BitkitCombobox/BitkitCombobox.tsx
|
|
14
14
|
var BitkitCombobox = forwardRef((props, ref) => {
|
|
15
|
-
const { comboboxProps, createItemLabel, defaultValue, emptyHelperText, emptyLabel,
|
|
15
|
+
const { comboboxProps, createItemLabel, defaultValue, emptyHelperText, emptyLabel, isLoading, items, onCreateItem, onSearchChange, onValueChange, placeholder = "Enter a value or select", searchValue, size, state, value, ...fieldProps } = props;
|
|
16
16
|
const { contains } = useFilter({ sensitivity: "base" });
|
|
17
17
|
const { collection, filter } = useListCollection({
|
|
18
18
|
initialItems: items,
|
|
@@ -66,13 +66,10 @@ var BitkitCombobox = forwardRef((props, ref) => {
|
|
|
66
66
|
emptyLabel,
|
|
67
67
|
isLoading,
|
|
68
68
|
onCreateItem,
|
|
69
|
+
onSearchChange,
|
|
70
|
+
searchValue,
|
|
69
71
|
size,
|
|
70
|
-
variant: "combobox"
|
|
71
|
-
...hasSearch ? {
|
|
72
|
-
hasSearch: true,
|
|
73
|
-
onSearchChange,
|
|
74
|
-
searchValue
|
|
75
|
-
} : { hasSearch: false }
|
|
72
|
+
variant: "combobox"
|
|
76
73
|
}) }) })]
|
|
77
74
|
})
|
|
78
75
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitCombobox.js","names":[],"sources":["../../../lib/components/BitkitCombobox/BitkitCombobox.tsx"],"sourcesContent":["import { Combobox, type ComboboxRootProps } from '@chakra-ui/react/combobox';\nimport { useListCollection } from '@chakra-ui/react/hooks';\nimport { useFilter } from '@chakra-ui/react/locale';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { forwardRef } from 'react';\n\nimport IconErrorCircleFilled from '../../icons/IconErrorCircleFilled';\nimport IconWarningYellow from '../../icons/IconWarningYellow';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\nimport BitkitCloseButton from '../BitkitCloseButton/BitkitCloseButton';\nimport BitkitField, { type BitkitFieldProps } from '../BitkitField/BitkitField';\nimport BitkitSelectMenu, {\n type BitkitSelectMenuCreateItemProps,\n type BitkitSelectMenuEmptyStateProps,\n type BitkitSelectMenuItemProps,\n type BitkitSelectMenuSearchProps,\n} from '../BitkitSelectMenu/BitkitSelectMenu';\n\nexport type BitkitComboboxProps = Omit<BitkitFieldProps, 'children' | 'state'> & {\n comboboxProps?: Omit<ComboboxRootProps, 'collection' | 'defaultValue' | 'onValueChange' | 'value'>;\n defaultValue?: string;\n isLoading?: boolean;\n items: Array<BitkitSelectMenuItemProps>;\n onValueChange?: (newVal: string | undefined) => void;\n placeholder?: string;\n size?: 'md' | 'lg';\n state?: 'disabled' | 'error' | 'readOnly' | 'warning';\n value?: string;\n} & BitkitSelectMenuCreateItemProps &\n BitkitSelectMenuSearchProps &\n BitkitSelectMenuEmptyStateProps;\n\nconst BitkitCombobox = forwardRef<HTMLDivElement, BitkitComboboxProps>((props: BitkitComboboxProps, ref) => {\n const {\n comboboxProps,\n createItemLabel,\n defaultValue,\n emptyHelperText,\n emptyLabel,\n
|
|
1
|
+
{"version":3,"file":"BitkitCombobox.js","names":[],"sources":["../../../lib/components/BitkitCombobox/BitkitCombobox.tsx"],"sourcesContent":["import { Combobox, type ComboboxRootProps } from '@chakra-ui/react/combobox';\nimport { useListCollection } from '@chakra-ui/react/hooks';\nimport { useFilter } from '@chakra-ui/react/locale';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { forwardRef } from 'react';\n\nimport IconErrorCircleFilled from '../../icons/IconErrorCircleFilled';\nimport IconWarningYellow from '../../icons/IconWarningYellow';\nimport AssetSelectChevron from '../../utilities/AssetSelectChevron';\nimport BitkitCloseButton from '../BitkitCloseButton/BitkitCloseButton';\nimport BitkitField, { type BitkitFieldProps } from '../BitkitField/BitkitField';\nimport BitkitSelectMenu, {\n type BitkitSelectMenuCreateItemProps,\n type BitkitSelectMenuEmptyStateProps,\n type BitkitSelectMenuItemProps,\n type BitkitSelectMenuSearchProps,\n} from '../BitkitSelectMenu/BitkitSelectMenu';\n\nexport type BitkitComboboxProps = Omit<BitkitFieldProps, 'children' | 'state'> & {\n comboboxProps?: Omit<ComboboxRootProps, 'collection' | 'defaultValue' | 'onValueChange' | 'value'>;\n defaultValue?: string;\n isLoading?: boolean;\n items: Array<BitkitSelectMenuItemProps>;\n onValueChange?: (newVal: string | undefined) => void;\n placeholder?: string;\n size?: 'md' | 'lg';\n state?: 'disabled' | 'error' | 'readOnly' | 'warning';\n value?: string;\n} & BitkitSelectMenuCreateItemProps &\n BitkitSelectMenuSearchProps &\n BitkitSelectMenuEmptyStateProps;\n\nconst BitkitCombobox = forwardRef<HTMLDivElement, BitkitComboboxProps>((props: BitkitComboboxProps, ref) => {\n const {\n comboboxProps,\n createItemLabel,\n defaultValue,\n emptyHelperText,\n emptyLabel,\n isLoading,\n items,\n onCreateItem,\n onSearchChange,\n onValueChange,\n placeholder = 'Enter a value or select',\n searchValue,\n size,\n state,\n value,\n ...fieldProps\n } = props;\n\n const { contains } = useFilter({ sensitivity: 'base' });\n const { collection, filter } = useListCollection<BitkitSelectMenuItemProps>({\n initialItems: items,\n filter: (_itemText, filterText, item) => contains(item.label, filterText),\n isItemDisabled: (item) => !!item.disabled,\n });\n\n const hasWarning = state === 'warning' || !!fieldProps.warningText;\n const isInvalid = state === 'error' || !!fieldProps.errorText;\n const iconSize = size === 'md' ? '16' : '24';\n\n let statusIcon;\n if (isInvalid) {\n statusIcon = <IconErrorCircleFilled size={iconSize} color=\"icon/negative\" />;\n } else if (hasWarning) {\n statusIcon = <IconWarningYellow size={iconSize} />;\n }\n\n return (\n <BitkitField ref={ref} state={state} {...fieldProps}>\n <Combobox.Root\n {...comboboxProps}\n collection={collection}\n defaultValue={defaultValue ? [defaultValue] : undefined}\n disabled={state === 'disabled'}\n invalid={isInvalid}\n onInputValueChange={(e) => {\n filter(e.inputValue);\n }}\n onValueChange={(details) => onValueChange?.(details.value[0])}\n readOnly={state === 'readOnly'}\n // Bypass Zag's isScrollable(contentEl) gate — our Content is overflow:hidden flex\n // column, so the real scroll container is itemList. See BitkitMultiselect for why.\n scrollToIndexFn={({ getElement }) => getElement()?.scrollIntoView({ block: 'nearest' })}\n size={size}\n value={value ? [value] : undefined}\n >\n <Combobox.Control className=\"group\">\n <Combobox.Input placeholder={placeholder} />\n <Combobox.IndicatorGroup>\n <Combobox.ClearTrigger asChild>\n <BitkitCloseButton size=\"sm\" />\n </Combobox.ClearTrigger>\n {statusIcon}\n <Combobox.Trigger asChild>\n <AssetSelectChevron />\n </Combobox.Trigger>\n </Combobox.IndicatorGroup>\n </Combobox.Control>\n <Portal>\n <Combobox.Positioner>\n <BitkitSelectMenu\n collection={collection}\n createItemLabel={createItemLabel}\n emptyHelperText={emptyHelperText}\n emptyLabel={emptyLabel}\n isLoading={isLoading}\n onCreateItem={onCreateItem}\n onSearchChange={onSearchChange}\n searchValue={searchValue}\n size={size}\n variant=\"combobox\"\n />\n </Combobox.Positioner>\n </Portal>\n </Combobox.Root>\n </BitkitField>\n );\n});\n\nBitkitCombobox.displayName = 'BitkitCombobox';\n\nexport default BitkitCombobox;\n"],"mappings":";;;;;;;;;;;;;AAgCA,IAAM,iBAAiB,YAAiD,OAA4B,QAAQ;CAC1G,MAAM,EACJ,eACA,iBACA,cACA,iBACA,YACA,WACA,OACA,cACA,gBACA,eACA,cAAc,2BACd,aACA,MACA,OACA,OACA,GAAG,eACD;CAEJ,MAAM,EAAE,aAAa,UAAU,EAAE,aAAa,QAAQ,CAAC;CACvD,MAAM,EAAE,YAAY,WAAW,kBAA6C;EAC1E,cAAc;EACd,SAAS,WAAW,YAAY,SAAS,SAAS,KAAK,OAAO,WAAW;EACzE,iBAAiB,SAAS,CAAC,CAAC,KAAK;EAClC,CAAC;CAEF,MAAM,aAAa,UAAU,aAAa,CAAC,CAAC,WAAW;CACvD,MAAM,YAAY,UAAU,WAAW,CAAC,CAAC,WAAW;CACpD,MAAM,WAAW,SAAS,OAAO,OAAO;CAExC,IAAI;AACJ,KAAI,UACF,cAAa,oBAAC,uBAAD;EAAuB,MAAM;EAAU,OAAM;EAAkB,CAAA;UACnE,WACT,cAAa,oBAAC,mBAAD,EAAmB,MAAM,UAAY,CAAA;AAGpD,QACE,oBAAC,aAAD;EAAkB;EAAY;EAAO,GAAI;YACvC,qBAAC,SAAS,MAAV;GACE,GAAI;GACQ;GACZ,cAAc,eAAe,CAAC,aAAa,GAAG,KAAA;GAC9C,UAAU,UAAU;GACpB,SAAS;GACT,qBAAqB,MAAM;AACzB,WAAO,EAAE,WAAW;;GAEtB,gBAAgB,YAAY,gBAAgB,QAAQ,MAAM,GAAG;GAC7D,UAAU,UAAU;GAGpB,kBAAkB,EAAE,iBAAiB,YAAY,EAAE,eAAe,EAAE,OAAO,WAAW,CAAC;GACjF;GACN,OAAO,QAAQ,CAAC,MAAM,GAAG,KAAA;aAf3B,CAiBE,qBAAC,SAAS,SAAV;IAAkB,WAAU;cAA5B,CACE,oBAAC,SAAS,OAAV,EAA6B,aAAe,CAAA,EAC5C,qBAAC,SAAS,gBAAV,EAAA,UAAA;KACE,oBAAC,SAAS,cAAV;MAAuB,SAAA;gBACrB,oBAAC,mBAAD,EAAmB,MAAK,MAAO,CAAA;MACT,CAAA;KACvB;KACD,oBAAC,SAAS,SAAV;MAAkB,SAAA;gBAChB,oBAAC,oBAAD,EAAsB,CAAA;MACL,CAAA;KACK,EAAA,CAAA,CACT;OACnB,oBAAC,QAAD,EAAA,UACE,oBAAC,SAAS,YAAV,EAAA,UACE,oBAAC,kBAAD;IACc;IACK;IACA;IACL;IACD;IACG;IACE;IACH;IACP;IACN,SAAQ;IACR,CAAA,EACkB,CAAA,EACf,CAAA,CACK;;EACJ,CAAA;EAEhB;AAEF,eAAe,cAAc"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BoxProps } from '@chakra-ui/react/box';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
export interface BitkitDataWidgetProps extends Omit<BoxProps, 'colorPalette' | 'title'> {
|
|
4
|
+
action?: ReactNode;
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
title?: string;
|
|
7
|
+
titleTooltip?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const BitkitDataWidget: import('react').ForwardRefExoticComponent<BitkitDataWidgetProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export default BitkitDataWidget;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import IconInfoCircle from "../../icons/IconInfoCircle.js";
|
|
2
|
+
import BitkitTooltip from "../BitkitTooltip/BitkitTooltip.js";
|
|
3
|
+
import { Box } from "@chakra-ui/react/box";
|
|
4
|
+
import { useSlotRecipe } from "@chakra-ui/react/styled-system";
|
|
5
|
+
import { Text } from "@chakra-ui/react/text";
|
|
6
|
+
import { forwardRef } from "react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
//#region lib/components/BitkitDataWidget/BitkitDataWidget.tsx
|
|
9
|
+
var BitkitDataWidget = forwardRef((props, ref) => {
|
|
10
|
+
const { action, children, title, titleTooltip, ...rest } = props;
|
|
11
|
+
const styles = useSlotRecipe({ key: "dataWidget" })();
|
|
12
|
+
return /* @__PURE__ */ jsxs(Box, {
|
|
13
|
+
ref,
|
|
14
|
+
css: styles.root,
|
|
15
|
+
...rest,
|
|
16
|
+
children: [
|
|
17
|
+
!!title && /* @__PURE__ */ jsxs(Box, {
|
|
18
|
+
css: styles.title,
|
|
19
|
+
children: [/* @__PURE__ */ jsx(Text, {
|
|
20
|
+
as: "span",
|
|
21
|
+
children: title
|
|
22
|
+
}), !!titleTooltip && /* @__PURE__ */ jsx(BitkitTooltip, {
|
|
23
|
+
text: titleTooltip,
|
|
24
|
+
children: /* @__PURE__ */ jsx(IconInfoCircle, {
|
|
25
|
+
color: "icon/tertiary",
|
|
26
|
+
size: "16"
|
|
27
|
+
})
|
|
28
|
+
})]
|
|
29
|
+
}),
|
|
30
|
+
/* @__PURE__ */ jsx(Box, {
|
|
31
|
+
css: styles.items,
|
|
32
|
+
children
|
|
33
|
+
}),
|
|
34
|
+
!!action && /* @__PURE__ */ jsx(Box, {
|
|
35
|
+
css: styles.action,
|
|
36
|
+
children: action
|
|
37
|
+
})
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
BitkitDataWidget.displayName = "BitkitDataWidget";
|
|
42
|
+
//#endregion
|
|
43
|
+
export { BitkitDataWidget as default };
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=BitkitDataWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BitkitDataWidget.js","names":[],"sources":["../../../lib/components/BitkitDataWidget/BitkitDataWidget.tsx"],"sourcesContent":["import { Box, type BoxProps } from '@chakra-ui/react/box';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { Text } from '@chakra-ui/react/text';\nimport { forwardRef, type ReactNode } from 'react';\n\nimport { IconInfoCircle } from '../../icons';\nimport BitkitTooltip from '../BitkitTooltip/BitkitTooltip';\n\nexport interface BitkitDataWidgetProps extends Omit<BoxProps, 'colorPalette' | 'title'> {\n action?: ReactNode;\n children: ReactNode;\n title?: string;\n titleTooltip?: string;\n}\n\nconst BitkitDataWidget = forwardRef<HTMLDivElement, BitkitDataWidgetProps>((props, ref) => {\n const { action, children, title, titleTooltip, ...rest } = props;\n const styles = useSlotRecipe({ key: 'dataWidget' })();\n\n return (\n <Box ref={ref} css={styles.root} {...rest}>\n {!!title && (\n <Box css={styles.title}>\n <Text as=\"span\">{title}</Text>\n {!!titleTooltip && (\n <BitkitTooltip text={titleTooltip}>\n <IconInfoCircle color=\"icon/tertiary\" size=\"16\" />\n </BitkitTooltip>\n )}\n </Box>\n )}\n <Box css={styles.items}>{children}</Box>\n {!!action && <Box css={styles.action}>{action}</Box>}\n </Box>\n );\n});\n\nBitkitDataWidget.displayName = 'BitkitDataWidget';\n\nexport default BitkitDataWidget;\n"],"mappings":";;;;;;;;AAeA,IAAM,mBAAmB,YAAmD,OAAO,QAAQ;CACzF,MAAM,EAAE,QAAQ,UAAU,OAAO,cAAc,GAAG,SAAS;CAC3D,MAAM,SAAS,cAAc,EAAE,KAAK,cAAc,CAAC,EAAE;AAErD,QACE,qBAAC,KAAD;EAAU;EAAK,KAAK,OAAO;EAAM,GAAI;YAArC;GACG,CAAC,CAAC,SACD,qBAAC,KAAD;IAAK,KAAK,OAAO;cAAjB,CACE,oBAAC,MAAD;KAAM,IAAG;eAAQ;KAAa,CAAA,EAC7B,CAAC,CAAC,gBACD,oBAAC,eAAD;KAAe,MAAM;eACnB,oBAAC,gBAAD;MAAgB,OAAM;MAAgB,MAAK;MAAO,CAAA;KACpC,CAAA,CAEd;;GAER,oBAAC,KAAD;IAAK,KAAK,OAAO;IAAQ;IAAe,CAAA;GACvC,CAAC,CAAC,UAAU,oBAAC,KAAD;IAAK,KAAK,OAAO;cAAS;IAAa,CAAA;GAChD;;EAER;AAEF,iBAAiB,cAAc"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Dialog } from '@chakra-ui/react/dialog';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
+
import { BitkitDialogHeaderProps } from './BitkitDialogHeader';
|
|
3
4
|
export interface BitkitDialogProps {
|
|
5
|
+
children?: ReactNode;
|
|
4
6
|
headerLabel?: string;
|
|
5
7
|
maxHeight?: string;
|
|
6
8
|
onOpenChange?: (details: {
|
|
@@ -11,15 +13,26 @@ export interface BitkitDialogProps {
|
|
|
11
13
|
scrollBehavior?: 'inside' | 'outside';
|
|
12
14
|
showScrollGradient?: boolean;
|
|
13
15
|
size?: 'sm' | 'md' | 'lg';
|
|
16
|
+
step?: number;
|
|
14
17
|
title: ReactNode;
|
|
15
18
|
trigger?: ReactNode;
|
|
16
19
|
variant?: 'overflowContent';
|
|
17
|
-
children?: ReactNode;
|
|
18
20
|
}
|
|
19
|
-
declare const
|
|
20
|
-
({ headerLabel, maxHeight, onOpenChange, open,
|
|
21
|
+
declare const _default: {
|
|
22
|
+
({ children, headerLabel, maxHeight, onOpenChange, open, preventScroll, scrollBehavior: scrollBehaviorProp, showScrollGradient, size, step, title, trigger, variant, }: BitkitDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
21
23
|
displayName: string;
|
|
24
|
+
} & {
|
|
25
|
+
ActionTrigger: import('react').ForwardRefExoticComponent<Dialog.ActionTriggerProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
26
|
+
Body: ({ children, ...rest }: import('./BitkitDialogBody').BitkitDialogBodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
Buttons: import('react').ForwardRefExoticComponent<import('@chakra-ui/react').BoxProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
28
|
+
Footer: import('react').ForwardRefExoticComponent<Dialog.FooterProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
29
|
+
Header: {
|
|
30
|
+
({ children }: BitkitDialogHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
displayName: string;
|
|
32
|
+
};
|
|
33
|
+
Step: {
|
|
34
|
+
(props: import('./BitkitDialogStep').BitkitDialogStepProps): import("react/jsx-runtime").JSX.Element | null;
|
|
35
|
+
displayName: string;
|
|
36
|
+
};
|
|
22
37
|
};
|
|
23
|
-
export
|
|
24
|
-
export declare const BitkitDialogFooter: import('react').ForwardRefExoticComponent<Dialog.FooterProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
25
|
-
export default BitkitDialog;
|
|
38
|
+
export default _default;
|
|
@@ -1,11 +1,20 @@
|
|
|
1
|
+
import BitkitDialogStep from "./BitkitDialogStep.js";
|
|
2
|
+
import BitkitDialogBody from "./BitkitDialogBody.js";
|
|
3
|
+
import BitkitDialogButtons from "./BitkitDialogButtons.js";
|
|
1
4
|
import BitkitDialogContent from "./BitkitDialogContent.js";
|
|
5
|
+
import BitkitDialogHeader from "./BitkitDialogHeader.js";
|
|
2
6
|
import BitkitDialogRoot from "./BitkitDialogRoot.js";
|
|
7
|
+
import { Children, isValidElement } from "react";
|
|
3
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
9
|
import { Portal } from "@chakra-ui/react/portal";
|
|
5
10
|
import { Dialog } from "@chakra-ui/react/dialog";
|
|
6
11
|
//#region lib/components/BitkitDialog/BitkitDialog.tsx
|
|
7
|
-
var BitkitDialog = ({ headerLabel, maxHeight, onOpenChange, open,
|
|
12
|
+
var BitkitDialog = ({ children, headerLabel, maxHeight, onOpenChange, open, preventScroll, scrollBehavior: scrollBehaviorProp, showScrollGradient, size, step = 0, title, trigger, variant }) => {
|
|
8
13
|
const scrollBehavior = variant === "overflowContent" ? "inside" : scrollBehaviorProp;
|
|
14
|
+
const childrenArray = Children.toArray(children);
|
|
15
|
+
const headerChild = childrenArray.find((child) => isValidElement(child) && child.type === BitkitDialogHeader);
|
|
16
|
+
const bodyChildren = childrenArray.filter((child) => !(isValidElement(child) && child.type === BitkitDialogHeader));
|
|
17
|
+
const stepHeader = isValidElement(headerChild) ? headerChild.props.children : void 0;
|
|
9
18
|
return /* @__PURE__ */ jsxs(BitkitDialogRoot, {
|
|
10
19
|
open,
|
|
11
20
|
preventScroll,
|
|
@@ -21,16 +30,24 @@ var BitkitDialog = ({ headerLabel, maxHeight, onOpenChange, open, title, trigger
|
|
|
21
30
|
maxHeight,
|
|
22
31
|
scrollBehavior,
|
|
23
32
|
showScrollGradient,
|
|
33
|
+
step,
|
|
34
|
+
stepHeader,
|
|
24
35
|
title,
|
|
25
36
|
variant,
|
|
26
|
-
children
|
|
37
|
+
children: bodyChildren
|
|
27
38
|
}) })] })]
|
|
28
39
|
});
|
|
29
40
|
};
|
|
30
|
-
Dialog.ActionTrigger;
|
|
31
|
-
Dialog.Footer;
|
|
32
41
|
BitkitDialog.displayName = "BitkitDialog";
|
|
42
|
+
var BitkitDialog_default = Object.assign(BitkitDialog, {
|
|
43
|
+
ActionTrigger: Dialog.ActionTrigger,
|
|
44
|
+
Body: BitkitDialogBody,
|
|
45
|
+
Buttons: BitkitDialogButtons,
|
|
46
|
+
Footer: Dialog.Footer,
|
|
47
|
+
Header: BitkitDialogHeader,
|
|
48
|
+
Step: BitkitDialogStep
|
|
49
|
+
});
|
|
33
50
|
//#endregion
|
|
34
|
-
export {
|
|
51
|
+
export { BitkitDialog_default as default };
|
|
35
52
|
|
|
36
53
|
//# sourceMappingURL=BitkitDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitDialog.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialog.tsx"],"sourcesContent":["import { Dialog } from '@chakra-ui/react/dialog';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { type ReactNode } from 'react';\n\nimport BitkitDialogContent from './BitkitDialogContent';\nimport BitkitDialogRoot from './BitkitDialogRoot';\n\nexport interface BitkitDialogProps {\n headerLabel?: string;\n maxHeight?: string;\n onOpenChange?: (details: { open: boolean }) => void;\n open?: boolean;\n preventScroll?: boolean;\n scrollBehavior?: 'inside' | 'outside';\n showScrollGradient?: boolean;\n size?: 'sm' | 'md' | 'lg';\n title: ReactNode;\n trigger?: ReactNode;\n variant?: 'overflowContent';\n
|
|
1
|
+
{"version":3,"file":"BitkitDialog.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialog.tsx"],"sourcesContent":["import { Dialog } from '@chakra-ui/react/dialog';\nimport { Portal } from '@chakra-ui/react/portal';\nimport { Children, isValidElement, type ReactNode } from 'react';\n\nimport BitkitDialogBody from './BitkitDialogBody';\nimport BitkitDialogButtons from './BitkitDialogButtons';\nimport BitkitDialogContent from './BitkitDialogContent';\nimport BitkitDialogHeader, { type BitkitDialogHeaderProps } from './BitkitDialogHeader';\nimport BitkitDialogRoot from './BitkitDialogRoot';\nimport BitkitDialogStep from './BitkitDialogStep';\n\nexport interface BitkitDialogProps {\n children?: ReactNode;\n headerLabel?: string;\n maxHeight?: string;\n onOpenChange?: (details: { open: boolean }) => void;\n open?: boolean;\n preventScroll?: boolean;\n scrollBehavior?: 'inside' | 'outside';\n showScrollGradient?: boolean;\n size?: 'sm' | 'md' | 'lg';\n step?: number;\n title: ReactNode;\n trigger?: ReactNode;\n variant?: 'overflowContent';\n}\n\nconst BitkitDialog = ({\n children,\n headerLabel,\n maxHeight,\n onOpenChange,\n open,\n preventScroll,\n scrollBehavior: scrollBehaviorProp,\n showScrollGradient,\n size,\n step = 0,\n title,\n trigger,\n variant,\n}: BitkitDialogProps) => {\n const scrollBehavior = variant === 'overflowContent' ? 'inside' : scrollBehaviorProp;\n\n const childrenArray = Children.toArray(children);\n const headerChild = childrenArray.find((child) => isValidElement(child) && child.type === BitkitDialogHeader);\n const bodyChildren = childrenArray.filter((child) => !(isValidElement(child) && child.type === BitkitDialogHeader));\n const stepHeader = isValidElement(headerChild) ? (headerChild.props as BitkitDialogHeaderProps).children : undefined;\n\n return (\n <BitkitDialogRoot\n open={open}\n preventScroll={preventScroll}\n scrollBehavior={scrollBehavior}\n size={size}\n variant={variant}\n onOpenChange={onOpenChange}\n >\n {trigger && <Dialog.Trigger asChild>{trigger}</Dialog.Trigger>}\n <Portal>\n <Dialog.Backdrop />\n <Dialog.Positioner>\n <BitkitDialogContent\n headerLabel={headerLabel}\n maxHeight={maxHeight}\n scrollBehavior={scrollBehavior}\n showScrollGradient={showScrollGradient}\n step={step}\n stepHeader={stepHeader}\n title={title}\n variant={variant}\n >\n {bodyChildren}\n </BitkitDialogContent>\n </Dialog.Positioner>\n </Portal>\n </BitkitDialogRoot>\n );\n};\n\nBitkitDialog.displayName = 'BitkitDialog';\n\nexport default Object.assign(BitkitDialog, {\n ActionTrigger: Dialog.ActionTrigger,\n Body: BitkitDialogBody,\n Buttons: BitkitDialogButtons,\n Footer: Dialog.Footer,\n Header: BitkitDialogHeader,\n Step: BitkitDialogStep,\n});\n"],"mappings":";;;;;;;;;;;AA2BA,IAAM,gBAAgB,EACpB,UACA,aACA,WACA,cACA,MACA,eACA,gBAAgB,oBAChB,oBACA,MACA,OAAO,GACP,OACA,SACA,cACuB;CACvB,MAAM,iBAAiB,YAAY,oBAAoB,WAAW;CAElE,MAAM,gBAAgB,SAAS,QAAQ,SAAS;CAChD,MAAM,cAAc,cAAc,MAAM,UAAU,eAAe,MAAM,IAAI,MAAM,SAAS,mBAAmB;CAC7G,MAAM,eAAe,cAAc,QAAQ,UAAU,EAAE,eAAe,MAAM,IAAI,MAAM,SAAS,oBAAoB;CACnH,MAAM,aAAa,eAAe,YAAY,GAAI,YAAY,MAAkC,WAAW,KAAA;AAE3G,QACE,qBAAC,kBAAD;EACQ;EACS;EACC;EACV;EACG;EACK;YANhB,CAQG,WAAW,oBAAC,OAAO,SAAR;GAAgB,SAAA;aAAS;GAAyB,CAAA,EAC9D,qBAAC,QAAD,EAAA,UAAA,CACE,oBAAC,OAAO,UAAR,EAAmB,CAAA,EACnB,oBAAC,OAAO,YAAR,EAAA,UACE,oBAAC,qBAAD;GACe;GACF;GACK;GACI;GACd;GACM;GACL;GACE;aAER;GACmB,CAAA,EACJ,CAAA,CACb,EAAA,CAAA,CACQ;;;AAIvB,aAAa,cAAc;AAE3B,IAAA,uBAAe,OAAO,OAAO,cAAc;CACzC,eAAe,OAAO;CACtB,MAAM;CACN,SAAS;CACT,QAAQ,OAAO;CACf,QAAQ;CACR,MAAM;CACP,CAAC"}
|
|
@@ -5,5 +5,5 @@ interface DialogBodyContext {
|
|
|
5
5
|
}
|
|
6
6
|
export type BitkitDialogBodyProps = Dialog.BodyProps;
|
|
7
7
|
export declare const DialogBodyContext: import('react').Context<DialogBodyContext>;
|
|
8
|
-
declare const BitkitDialogBody: (
|
|
8
|
+
declare const BitkitDialogBody: ({ children, ...rest }: BitkitDialogBodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
export default BitkitDialogBody;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import IconArrowDown from "../../icons/IconArrowDown.js";
|
|
2
|
+
import BitkitDialogStep from "./BitkitDialogStep.js";
|
|
2
3
|
import { Box } from "@chakra-ui/react/box";
|
|
3
4
|
import { chakra } from "@chakra-ui/react/styled-system";
|
|
4
|
-
import { createContext, useCallback, useContext, useEffect, useRef, useState } from "react";
|
|
5
|
+
import { Children, cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useRef, useState } from "react";
|
|
5
6
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
import { Dialog, useDialogContext, useDialogStyles } from "@chakra-ui/react/dialog";
|
|
7
8
|
//#region lib/components/BitkitDialog/BitkitDialogBody.tsx
|
|
@@ -57,10 +58,20 @@ var ScrollableDialogBody = ({ children, ...props }) => {
|
|
|
57
58
|
})] })]
|
|
58
59
|
});
|
|
59
60
|
};
|
|
60
|
-
var BitkitDialogBody = (
|
|
61
|
+
var BitkitDialogBody = ({ children, ...rest }) => {
|
|
61
62
|
const { scrollBehavior } = useContext(DialogBodyContext);
|
|
62
|
-
|
|
63
|
-
|
|
63
|
+
const mappedChildren = Children.map(children, (child, index) => {
|
|
64
|
+
if (isValidElement(child) && child.type === BitkitDialogStep) return cloneElement(child, { _index: index });
|
|
65
|
+
return child;
|
|
66
|
+
});
|
|
67
|
+
if (scrollBehavior === "inside") return /* @__PURE__ */ jsx(ScrollableDialogBody, {
|
|
68
|
+
...rest,
|
|
69
|
+
children: mappedChildren
|
|
70
|
+
});
|
|
71
|
+
return /* @__PURE__ */ jsx(Dialog.Body, {
|
|
72
|
+
...rest,
|
|
73
|
+
children: mappedChildren
|
|
74
|
+
});
|
|
64
75
|
};
|
|
65
76
|
//#endregion
|
|
66
77
|
export { DialogBodyContext, BitkitDialogBody as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitDialogBody.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialogBody.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Dialog, useDialogContext, useDialogStyles } from '@chakra-ui/react/dialog';\nimport { chakra } from '@chakra-ui/react/styled-system';\nimport {
|
|
1
|
+
{"version":3,"file":"BitkitDialogBody.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialogBody.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Dialog, useDialogContext, useDialogStyles } from '@chakra-ui/react/dialog';\nimport { chakra } from '@chakra-ui/react/styled-system';\nimport {\n Children,\n cloneElement,\n createContext,\n isValidElement,\n type ReactElement,\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { IconArrowDown } from '../../icons';\nimport BitkitDialogStep from './BitkitDialogStep';\n\ninterface DialogBodyContext {\n scrollBehavior: 'inside' | 'outside';\n showScrollGradient: boolean;\n}\n\nexport type BitkitDialogBodyProps = Dialog.BodyProps;\n\nexport const DialogBodyContext = createContext<DialogBodyContext>({\n scrollBehavior: 'outside',\n showScrollGradient: true,\n});\n\nconst ScrollableDialogBody = ({ children, ...props }: Dialog.BodyProps) => {\n const { showScrollGradient } = useContext(DialogBodyContext);\n const styles = useDialogStyles();\n const { open } = useDialogContext();\n const contentRef = useRef<HTMLDivElement>(null);\n const [isScrollButtonVisible, setIsScrollButtonVisible] = useState(false);\n\n const updateScrollButtonVisibility = useCallback(() => {\n const content = contentRef.current;\n if (!content) {\n setIsScrollButtonVisible(false);\n return;\n }\n const didScrollToBottom = content.scrollTop >= content.scrollHeight - content.offsetHeight - 1;\n setIsScrollButtonVisible(!didScrollToBottom);\n }, []);\n\n useEffect(() => {\n const content = contentRef.current;\n if (!open || !content) return;\n\n content.addEventListener('scroll', updateScrollButtonVisibility);\n const resizeObserver = new ResizeObserver(updateScrollButtonVisibility);\n resizeObserver.observe(content);\n\n return () => {\n content.removeEventListener('scroll', updateScrollButtonVisibility);\n resizeObserver.disconnect();\n };\n }, [open, updateScrollButtonVisibility]);\n\n return (\n <Box css={styles.scrollBody}>\n <Dialog.Body ref={contentRef} {...props}>\n {children}\n </Dialog.Body>\n {isScrollButtonVisible && (\n <>\n {showScrollGradient && <Box css={styles.scrollGradient} />}\n <chakra.button\n aria-label=\"Scroll to bottom\"\n css={styles.scrollButton}\n type=\"button\"\n onClick={() => {\n contentRef.current?.scrollTo({ top: contentRef.current.scrollHeight, behavior: 'smooth' });\n }}\n >\n <IconArrowDown color=\"icon/tertiary\" size=\"16\" />\n </chakra.button>\n </>\n )}\n </Box>\n );\n};\n\nconst BitkitDialogBody = ({ children, ...rest }: BitkitDialogBodyProps) => {\n const { scrollBehavior } = useContext(DialogBodyContext);\n\n const mappedChildren = Children.map(children, (child, index) => {\n if (isValidElement(child) && child.type === BitkitDialogStep) {\n return cloneElement(child as ReactElement<{ _index?: number }>, { _index: index });\n }\n return child;\n });\n\n if (scrollBehavior === 'inside') {\n return <ScrollableDialogBody {...rest}>{mappedChildren}</ScrollableDialogBody>;\n }\n return <Dialog.Body {...rest}>{mappedChildren}</Dialog.Body>;\n};\n\nexport default BitkitDialogBody;\n"],"mappings":";;;;;;;;AA0BA,IAAa,oBAAoB,cAAiC;CAChE,gBAAgB;CAChB,oBAAoB;CACrB,CAAC;AAEF,IAAM,wBAAwB,EAAE,UAAU,GAAG,YAA8B;CACzE,MAAM,EAAE,uBAAuB,WAAW,kBAAkB;CAC5D,MAAM,SAAS,iBAAiB;CAChC,MAAM,EAAE,SAAS,kBAAkB;CACnC,MAAM,aAAa,OAAuB,KAAK;CAC/C,MAAM,CAAC,uBAAuB,4BAA4B,SAAS,MAAM;CAEzE,MAAM,+BAA+B,kBAAkB;EACrD,MAAM,UAAU,WAAW;AAC3B,MAAI,CAAC,SAAS;AACZ,4BAAyB,MAAM;AAC/B;;AAGF,2BAAyB,EADC,QAAQ,aAAa,QAAQ,eAAe,QAAQ,eAAe,GACjD;IAC3C,EAAE,CAAC;AAEN,iBAAgB;EACd,MAAM,UAAU,WAAW;AAC3B,MAAI,CAAC,QAAQ,CAAC,QAAS;AAEvB,UAAQ,iBAAiB,UAAU,6BAA6B;EAChE,MAAM,iBAAiB,IAAI,eAAe,6BAA6B;AACvE,iBAAe,QAAQ,QAAQ;AAE/B,eAAa;AACX,WAAQ,oBAAoB,UAAU,6BAA6B;AACnE,kBAAe,YAAY;;IAE5B,CAAC,MAAM,6BAA6B,CAAC;AAExC,QACE,qBAAC,KAAD;EAAK,KAAK,OAAO;YAAjB,CACE,oBAAC,OAAO,MAAR;GAAa,KAAK;GAAY,GAAI;GAC/B;GACW,CAAA,EACb,yBACC,qBAAA,YAAA,EAAA,UAAA,CACG,sBAAsB,oBAAC,KAAD,EAAK,KAAK,OAAO,gBAAkB,CAAA,EAC1D,oBAAC,OAAO,QAAR;GACE,cAAW;GACX,KAAK,OAAO;GACZ,MAAK;GACL,eAAe;AACb,eAAW,SAAS,SAAS;KAAE,KAAK,WAAW,QAAQ;KAAc,UAAU;KAAU,CAAC;;aAG5F,oBAAC,eAAD;IAAe,OAAM;IAAgB,MAAK;IAAO,CAAA;GACnC,CAAA,CACf,EAAA,CAAA,CAED;;;AAIV,IAAM,oBAAoB,EAAE,UAAU,GAAG,WAAkC;CACzE,MAAM,EAAE,mBAAmB,WAAW,kBAAkB;CAExD,MAAM,iBAAiB,SAAS,IAAI,WAAW,OAAO,UAAU;AAC9D,MAAI,eAAe,MAAM,IAAI,MAAM,SAAS,iBAC1C,QAAO,aAAa,OAA4C,EAAE,QAAQ,OAAO,CAAC;AAEpF,SAAO;GACP;AAEF,KAAI,mBAAmB,SACrB,QAAO,oBAAC,sBAAD;EAAsB,GAAI;YAAO;EAAsC,CAAA;AAEhF,QAAO,oBAAC,OAAO,MAAR;EAAa,GAAI;YAAO;EAA6B,CAAA"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
export interface BitkitDialogContentProps {
|
|
3
|
+
children?: ReactNode;
|
|
3
4
|
headerLabel?: string;
|
|
4
5
|
maxHeight?: string;
|
|
5
6
|
scrollBehavior?: 'inside' | 'outside';
|
|
6
7
|
showScrollGradient?: boolean;
|
|
8
|
+
step?: number;
|
|
9
|
+
stepHeader?: ReactNode;
|
|
7
10
|
title: ReactNode;
|
|
8
11
|
variant?: 'overflowContent';
|
|
9
|
-
children?: ReactNode;
|
|
10
12
|
}
|
|
11
|
-
declare const BitkitDialogContent: ({ headerLabel, maxHeight,
|
|
13
|
+
declare const BitkitDialogContent: ({ children, headerLabel, maxHeight, scrollBehavior: scrollBehaviorProp, showScrollGradient, step, stepHeader, title, variant, }: BitkitDialogContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
14
|
export default BitkitDialogContent;
|
|
@@ -1,32 +1,43 @@
|
|
|
1
1
|
import BitkitCloseButton from "../BitkitCloseButton/BitkitCloseButton.js";
|
|
2
|
+
import { BitkitDialogStepProvider } from "./BitkitDialogStepContext.js";
|
|
2
3
|
import { DialogBodyContext } from "./BitkitDialogBody.js";
|
|
3
4
|
import { Box } from "@chakra-ui/react/box";
|
|
4
5
|
import { chakra } from "@chakra-ui/react/styled-system";
|
|
5
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
import { Dialog, useDialogStyles } from "@chakra-ui/react/dialog";
|
|
7
8
|
//#region lib/components/BitkitDialog/BitkitDialogContent.tsx
|
|
8
|
-
var BitkitDialogContent = ({ headerLabel, maxHeight,
|
|
9
|
+
var BitkitDialogContent = ({ children, headerLabel, maxHeight, scrollBehavior: scrollBehaviorProp = "outside", showScrollGradient = true, step = 0, stepHeader, title, variant }) => {
|
|
9
10
|
const scrollBehavior = variant === "overflowContent" ? "inside" : scrollBehaviorProp;
|
|
10
11
|
const styles = useDialogStyles();
|
|
11
12
|
return /* @__PURE__ */ jsx(Dialog.Content, {
|
|
12
13
|
maxHeight,
|
|
13
|
-
children: /* @__PURE__ */
|
|
14
|
-
value: {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
children: /* @__PURE__ */ jsx(BitkitDialogStepProvider, {
|
|
15
|
+
value: { step },
|
|
16
|
+
children: /* @__PURE__ */ jsxs(DialogBodyContext.Provider, {
|
|
17
|
+
value: {
|
|
18
|
+
scrollBehavior,
|
|
19
|
+
showScrollGradient
|
|
20
|
+
},
|
|
21
|
+
children: [/* @__PURE__ */ jsxs(Dialog.Header, { children: [
|
|
22
|
+
/* @__PURE__ */ jsxs(Box, {
|
|
23
|
+
display: "flex",
|
|
24
|
+
flexDirection: "column",
|
|
25
|
+
gap: "4",
|
|
26
|
+
children: [headerLabel && /* @__PURE__ */ jsx(chakra.p, {
|
|
27
|
+
css: styles.label,
|
|
28
|
+
children: headerLabel
|
|
29
|
+
}), /* @__PURE__ */ jsx(Dialog.Title, { children: title })]
|
|
30
|
+
}),
|
|
31
|
+
/* @__PURE__ */ jsx(Box, {
|
|
32
|
+
css: styles.stepHeader,
|
|
33
|
+
children: stepHeader
|
|
34
|
+
}),
|
|
35
|
+
/* @__PURE__ */ jsx(Dialog.CloseTrigger, {
|
|
36
|
+
asChild: true,
|
|
37
|
+
children: /* @__PURE__ */ jsx(BitkitCloseButton, { size: variant === "overflowContent" ? "xs" : "md" })
|
|
38
|
+
})
|
|
39
|
+
] }), children]
|
|
40
|
+
})
|
|
30
41
|
})
|
|
31
42
|
});
|
|
32
43
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitkitDialogContent.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialogContent.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Dialog, useDialogStyles } from '@chakra-ui/react/dialog';\nimport { chakra } from '@chakra-ui/react/styled-system';\nimport { type ReactNode } from 'react';\n\nimport BitkitCloseButton from '../BitkitCloseButton/BitkitCloseButton';\nimport { DialogBodyContext } from './BitkitDialogBody';\n\nexport interface BitkitDialogContentProps {\n headerLabel?: string;\n maxHeight?: string;\n scrollBehavior?: 'inside' | 'outside';\n showScrollGradient?: boolean;\n title: ReactNode;\n variant?: 'overflowContent';\n
|
|
1
|
+
{"version":3,"file":"BitkitDialogContent.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialogContent.tsx"],"sourcesContent":["import { Box } from '@chakra-ui/react/box';\nimport { Dialog, useDialogStyles } from '@chakra-ui/react/dialog';\nimport { chakra } from '@chakra-ui/react/styled-system';\nimport { type ReactNode } from 'react';\n\nimport BitkitCloseButton from '../BitkitCloseButton/BitkitCloseButton';\nimport { DialogBodyContext } from './BitkitDialogBody';\nimport { BitkitDialogStepProvider } from './BitkitDialogStepContext';\n\nexport interface BitkitDialogContentProps {\n children?: ReactNode;\n headerLabel?: string;\n maxHeight?: string;\n scrollBehavior?: 'inside' | 'outside';\n showScrollGradient?: boolean;\n step?: number;\n stepHeader?: ReactNode;\n title: ReactNode;\n variant?: 'overflowContent';\n}\n\nconst BitkitDialogContent = ({\n children,\n headerLabel,\n maxHeight,\n scrollBehavior: scrollBehaviorProp = 'outside',\n showScrollGradient = true,\n step = 0,\n stepHeader,\n title,\n variant,\n}: BitkitDialogContentProps) => {\n const scrollBehavior = variant === 'overflowContent' ? 'inside' : scrollBehaviorProp;\n const styles = useDialogStyles();\n\n return (\n <Dialog.Content maxHeight={maxHeight}>\n <BitkitDialogStepProvider value={{ step }}>\n <DialogBodyContext.Provider value={{ scrollBehavior, showScrollGradient }}>\n <Dialog.Header>\n <Box display=\"flex\" flexDirection=\"column\" gap=\"4\">\n {headerLabel && <chakra.p css={styles.label}>{headerLabel}</chakra.p>}\n <Dialog.Title>{title}</Dialog.Title>\n </Box>\n <Box css={styles.stepHeader}>{stepHeader}</Box>\n <Dialog.CloseTrigger asChild>\n <BitkitCloseButton size={variant === 'overflowContent' ? 'xs' : 'md'} />\n </Dialog.CloseTrigger>\n </Dialog.Header>\n {children}\n </DialogBodyContext.Provider>\n </BitkitDialogStepProvider>\n </Dialog.Content>\n );\n};\n\nexport default BitkitDialogContent;\n"],"mappings":";;;;;;;;AAqBA,IAAM,uBAAuB,EAC3B,UACA,aACA,WACA,gBAAgB,qBAAqB,WACrC,qBAAqB,MACrB,OAAO,GACP,YACA,OACA,cAC8B;CAC9B,MAAM,iBAAiB,YAAY,oBAAoB,WAAW;CAClE,MAAM,SAAS,iBAAiB;AAEhC,QACE,oBAAC,OAAO,SAAR;EAA2B;YACzB,oBAAC,0BAAD;GAA0B,OAAO,EAAE,MAAM;aACvC,qBAAC,kBAAkB,UAAnB;IAA4B,OAAO;KAAE;KAAgB;KAAoB;cAAzE,CACE,qBAAC,OAAO,QAAR,EAAA,UAAA;KACE,qBAAC,KAAD;MAAK,SAAQ;MAAO,eAAc;MAAS,KAAI;gBAA/C,CACG,eAAe,oBAAC,OAAO,GAAR;OAAU,KAAK,OAAO;iBAAQ;OAAuB,CAAA,EACrE,oBAAC,OAAO,OAAR,EAAA,UAAe,OAAqB,CAAA,CAChC;;KACN,oBAAC,KAAD;MAAK,KAAK,OAAO;gBAAa;MAAiB,CAAA;KAC/C,oBAAC,OAAO,cAAR;MAAqB,SAAA;gBACnB,oBAAC,mBAAD,EAAmB,MAAM,YAAY,oBAAoB,OAAO,MAAQ,CAAA;MACpD,CAAA;KACR,EAAA,CAAA,EACf,SAC0B;;GACJ,CAAA;EACZ,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface BitkitDialogHeaderProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
}
|
|
5
|
+
declare const BitkitDialogHeader: {
|
|
6
|
+
({ children }: BitkitDialogHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
displayName: string;
|
|
8
|
+
};
|
|
9
|
+
export default BitkitDialogHeader;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
//#region lib/components/BitkitDialog/BitkitDialogHeader.tsx
|
|
3
|
+
var BitkitDialogHeader = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });
|
|
4
|
+
BitkitDialogHeader.displayName = "BitkitDialogHeader";
|
|
5
|
+
//#endregion
|
|
6
|
+
export { BitkitDialogHeader as default };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=BitkitDialogHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BitkitDialogHeader.js","names":[],"sources":["../../../lib/components/BitkitDialog/BitkitDialogHeader.tsx"],"sourcesContent":["import { type ReactNode } from 'react';\n\nexport interface BitkitDialogHeaderProps {\n children: ReactNode;\n}\n\nconst BitkitDialogHeader = ({ children }: BitkitDialogHeaderProps) => <>{children}</>;\nBitkitDialogHeader.displayName = 'BitkitDialogHeader';\nexport default BitkitDialogHeader;\n"],"mappings":";;AAMA,IAAM,sBAAsB,EAAE,eAAwC,oBAAA,UAAA,EAAG,UAAY,CAAA;AACrF,mBAAmB,cAAc"}
|