@televet/kibble-ui 4.0.0-beta.96 → 4.0.0-beta.98
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/chunks/{alert.types-DeHWvQla.js → alert.types-DEe0eEG4.js} +3 -3
- package/dist/chunks/{alert.types-DeHWvQla.js.map → alert.types-DEe0eEG4.js.map} +1 -1
- package/dist/chunks/{avatar.component-CV_95YCj.js → avatar.component-CvE1vv5L.js} +5 -5
- package/dist/chunks/{avatar.component-CV_95YCj.js.map → avatar.component-CvE1vv5L.js.map} +1 -1
- package/dist/chunks/{avatarGroup.component-CPTXS5Mp.js → avatarGroup.component-SoAj9p5n.js} +2 -2
- package/dist/chunks/{avatarGroup.component-CPTXS5Mp.js.map → avatarGroup.component-SoAj9p5n.js.map} +1 -1
- package/dist/chunks/{buttonGroup.component-BJl5t4CV.js → buttonGroup.component-Bp2YbVtj.js} +2 -2
- package/dist/chunks/{buttonGroup.component-BJl5t4CV.js.map → buttonGroup.component-Bp2YbVtj.js.map} +1 -1
- package/dist/chunks/{characterCounter.component-C4sKYWJ2.js → characterCounter.component-Lya4VMgB.js} +2 -2
- package/dist/chunks/{characterCounter.component-C4sKYWJ2.js.map → characterCounter.component-Lya4VMgB.js.map} +1 -1
- package/dist/chunks/{checkbox.component-BpSGOInE.js → checkbox.component-PmkaXzNs.js} +7 -7
- package/dist/chunks/{checkbox.component-BpSGOInE.js.map → checkbox.component-PmkaXzNs.js.map} +1 -1
- package/dist/chunks/{checkbox.records-CTlAD-2Q.js → checkbox.records-Ds6SvFdm.js} +4 -4
- package/dist/chunks/{checkbox.records-CTlAD-2Q.js.map → checkbox.records-Ds6SvFdm.js.map} +1 -1
- package/dist/chunks/{checkboxGroup.component-B154cVx5.js → checkboxGroup.component-DXWrZuhZ.js} +3 -3
- package/dist/chunks/{checkboxGroup.component-B154cVx5.js.map → checkboxGroup.component-DXWrZuhZ.js.map} +1 -1
- package/dist/chunks/{conversationCard.component-DCpGDLwc.js → conversationCard.component-D3WN8rhl.js} +7 -7
- package/dist/chunks/{conversationCard.component-DCpGDLwc.js.map → conversationCard.component-D3WN8rhl.js.map} +1 -1
- package/dist/chunks/{datePicker.component-DSEMVYWG.js → datePicker.component-BSzcmQ9c.js} +7 -7
- package/dist/chunks/{datePicker.component-DSEMVYWG.js.map → datePicker.component-BSzcmQ9c.js.map} +1 -1
- package/dist/chunks/{dialog-trigger-eqGXDXGQ.js → dialog-trigger-Crrp0YGG.js} +5 -5
- package/dist/chunks/{dialog-trigger-eqGXDXGQ.js.map → dialog-trigger-Crrp0YGG.js.map} +1 -1
- package/dist/chunks/{heading.component-BHha3j1I.js → heading.component-73t_EqZx.js} +2 -2
- package/dist/chunks/{heading.component-BHha3j1I.js.map → heading.component-73t_EqZx.js.map} +1 -1
- package/dist/chunks/{index-C_AXAeNS.js → index-B3d3tRic.js} +4 -4
- package/dist/chunks/{index-C_AXAeNS.js.map → index-B3d3tRic.js.map} +1 -1
- package/dist/chunks/{index-Cbkb_94C.js → index-BBxAd1xM.js} +3 -3
- package/dist/chunks/{index-Cbkb_94C.js.map → index-BBxAd1xM.js.map} +1 -1
- package/dist/chunks/{index-CJLttzPM.js → index-BODNpj2d.js} +3 -3
- package/dist/chunks/{index-CJLttzPM.js.map → index-BODNpj2d.js.map} +1 -1
- package/dist/chunks/{index-cSjUS7Xj.js → index-BRBNqTA7.js} +3 -3
- package/dist/chunks/{index-cSjUS7Xj.js.map → index-BRBNqTA7.js.map} +1 -1
- package/dist/chunks/{index-Bff1r_rH.js → index-BpQwMKfa.js} +2 -2
- package/dist/chunks/{index-Bff1r_rH.js.map → index-BpQwMKfa.js.map} +1 -1
- package/dist/chunks/{index-DVNjUEDJ.js → index-C-m6RNXT.js} +4 -4
- package/dist/chunks/{index-DVNjUEDJ.js.map → index-C-m6RNXT.js.map} +1 -1
- package/dist/chunks/{index-OpolRlgD.js → index-CX3yrbBD.js} +3 -3
- package/dist/chunks/{index-OpolRlgD.js.map → index-CX3yrbBD.js.map} +1 -1
- package/dist/chunks/{index-DUY19L6M.js → index-CYHDITxm.js} +3196 -1649
- package/dist/chunks/index-CYHDITxm.js.map +1 -0
- package/dist/chunks/{index-Bz8HDeWA.js → index-Cd-5e4RS.js} +2 -2
- package/dist/chunks/{index-Bz8HDeWA.js.map → index-Cd-5e4RS.js.map} +1 -1
- package/dist/chunks/index-ClcMgyeA.js +10 -0
- package/dist/chunks/index-ClcMgyeA.js.map +1 -0
- package/dist/chunks/{index-YtNA0Ueo.js → index-Ztgrae6O.js} +49 -49
- package/dist/chunks/{index-YtNA0Ueo.js.map → index-Ztgrae6O.js.map} +1 -1
- package/dist/chunks/{index-L197Dry5.js → index-mndLieJA.js} +4 -4
- package/dist/chunks/{index-L197Dry5.js.map → index-mndLieJA.js.map} +1 -1
- package/dist/chunks/{menu.component-D38vU6MX.js → menu.component-CYoNg8cG.js} +8 -8
- package/dist/chunks/{menu.component-D38vU6MX.js.map → menu.component-CYoNg8cG.js.map} +1 -1
- package/dist/chunks/{modal.types-mGxpGfVt.js → modal.types-hyW2Nhp9.js} +4 -4
- package/dist/chunks/{modal.types-mGxpGfVt.js.map → modal.types-hyW2Nhp9.js.map} +1 -1
- package/dist/chunks/{pinInput.types-CD_tKvQm.js → pinInput.types-DI4tGMSB.js} +6 -6
- package/dist/chunks/{pinInput.types-CD_tKvQm.js.map → pinInput.types-DI4tGMSB.js.map} +1 -1
- package/dist/chunks/{popover-root-provider-BErev2-N.js → popover-root-provider-R2bRQ-xz.js} +4 -4
- package/dist/chunks/{popover-root-provider-BErev2-N.js.map → popover-root-provider-R2bRQ-xz.js.map} +1 -1
- package/dist/chunks/{popover.component-UkDDe5Dh.js → popover.component-CV6ZJKNL.js} +7 -7
- package/dist/chunks/{popover.component-UkDDe5Dh.js.map → popover.component-CV6ZJKNL.js.map} +1 -1
- package/dist/chunks/{popover.recipe-DlJtOeLy.js → popover.recipe-DDKba5kq.js} +4 -4
- package/dist/chunks/{popover.recipe-DlJtOeLy.js.map → popover.recipe-DDKba5kq.js.map} +1 -1
- package/dist/chunks/{radio.records-4ih1q8nO.js → radio.records-muLWVHhG.js} +4 -4
- package/dist/chunks/{radio.records-4ih1q8nO.js.map → radio.records-muLWVHhG.js.map} +1 -1
- package/dist/chunks/{radioGroup.component-DJsYK4YT.js → radioGroup.component-BUFZGQ-P.js} +7 -7
- package/dist/chunks/{radioGroup.component-DJsYK4YT.js.map → radioGroup.component-BUFZGQ-P.js.map} +1 -1
- package/dist/chunks/{ratingDots.component-BdUvoShh.js → ratingDots.component-CtmqAmV5.js} +3 -3
- package/dist/chunks/{ratingDots.component-BdUvoShh.js.map → ratingDots.component-CtmqAmV5.js.map} +1 -1
- package/dist/chunks/{render-strategy-CHp7lb6C.js → render-strategy-D5Z6LZ1V.js} +2 -2
- package/dist/chunks/{render-strategy-CHp7lb6C.js.map → render-strategy-D5Z6LZ1V.js.map} +1 -1
- package/dist/chunks/{select.component-BNMyz5Nm.js → select.component-Fq8Hh2MP.js} +9 -9
- package/dist/chunks/{select.component-BNMyz5Nm.js.map → select.component-Fq8Hh2MP.js.map} +1 -1
- package/dist/chunks/{sortableList.component-BKthQS8R.js → sortableList.component-Dl8iDhRd.js} +3 -3
- package/dist/chunks/{sortableList.component-BKthQS8R.js.map → sortableList.component-Dl8iDhRd.js.map} +1 -1
- package/dist/chunks/{spinner.component-CzTRzWbL.js → spinner.component-katjnJzv.js} +2 -2
- package/dist/chunks/{spinner.component-CzTRzWbL.js.map → spinner.component-katjnJzv.js.map} +1 -1
- package/dist/chunks/{styledAvatar.types-DXwe2DPH.js → styledAvatar.types-C8U-V56j.js} +2 -2
- package/dist/chunks/{styledAvatar.types-DXwe2DPH.js.map → styledAvatar.types-C8U-V56j.js.map} +1 -1
- package/dist/chunks/{switch.component-DVHjLc9H.js → switch.component-U2g70Pc5.js} +6 -6
- package/dist/chunks/{switch.component-DVHjLc9H.js.map → switch.component-U2g70Pc5.js.map} +1 -1
- package/dist/chunks/{tabs.component-b8VxTs-T.js → tabs.component-P5GKt5Sv.js} +5 -5
- package/dist/chunks/{tabs.component-b8VxTs-T.js.map → tabs.component-P5GKt5Sv.js.map} +1 -1
- package/dist/chunks/{tagBlock.component-CfxiQgjI.js → tagBlock.component-CF3z8rKF.js} +5 -5
- package/dist/chunks/{tagBlock.component-CfxiQgjI.js.map → tagBlock.component-CF3z8rKF.js.map} +1 -1
- package/dist/chunks/{text.component-DJW--Vty.js → text.component-DKtdjH7k.js} +2 -2
- package/dist/chunks/{text.component-DJW--Vty.js.map → text.component-DKtdjH7k.js.map} +1 -1
- package/dist/chunks/{textInput.component-evu71Hys.js → textInput.component-DSVsTHqO.js} +6 -6
- package/dist/chunks/{textInput.component-evu71Hys.js.map → textInput.component-DSVsTHqO.js.map} +1 -1
- package/dist/chunks/{textarea.component-CZQMAMYT.js → textarea.component-Cbo5Vs-6.js} +6 -6
- package/dist/chunks/{textarea.component-CZQMAMYT.js.map → textarea.component-Cbo5Vs-6.js.map} +1 -1
- package/dist/chunks/{theme.provider-DHvMwBwG.js → theme.provider-BHh_9yV5.js} +1138 -2679
- package/dist/chunks/theme.provider-BHh_9yV5.js.map +1 -0
- package/dist/chunks/theme.provider-Ey-yIBM6.js +24 -0
- package/dist/chunks/theme.provider-Ey-yIBM6.js.map +1 -0
- package/dist/chunks/{timePicker.component-DXkOhFKy.js → timePicker.component-BSuNH0Ze.js} +3 -3
- package/dist/chunks/{timePicker.component-DXkOhFKy.js.map → timePicker.component-BSuNH0Ze.js.map} +1 -1
- package/dist/chunks/{timeRange.component-BTmY7o_y.js → timeRange.component-SMQArMaf.js} +2 -2
- package/dist/chunks/{timeRange.component-BTmY7o_y.js.map → timeRange.component-SMQArMaf.js.map} +1 -1
- package/dist/chunks/{timestamp.component-DLqT7x-O.js → timestamp.component-DAa3tXHL.js} +3 -3
- package/dist/chunks/{timestamp.component-DLqT7x-O.js.map → timestamp.component-DAa3tXHL.js.map} +1 -1
- package/dist/chunks/{toaster.records-Bb46MMbZ.js → toaster.records-DcadVT_W.js} +2 -2
- package/dist/chunks/{toaster.records-Bb46MMbZ.js.map → toaster.records-DcadVT_W.js.map} +1 -1
- package/dist/chunks/{tooltip.component-Cr_en1NQ.js → tooltip.component-XxpjNATA.js} +3 -3
- package/dist/chunks/{tooltip.component-Cr_en1NQ.js.map → tooltip.component-XxpjNATA.js.map} +1 -1
- package/dist/chunks/{typography.records-H4aA5AOA.js → typography.records-DDZuRT8J.js} +2 -2
- package/dist/chunks/{typography.records-H4aA5AOA.js.map → typography.records-DDZuRT8J.js.map} +1 -1
- package/dist/chunks/{use-field-context-Cm3grEyV.js → use-field-context-BZaIHuSQ.js} +2 -2
- package/dist/chunks/{use-field-context-Cm3grEyV.js.map → use-field-context-BZaIHuSQ.js.map} +1 -1
- package/dist/chunks/{use-locale-context-BiiNTYMT.js → use-locale-context-BNU4MHrO.js} +71 -71
- package/dist/chunks/{use-locale-context-BiiNTYMT.js.map → use-locale-context-BNU4MHrO.js.map} +1 -1
- package/dist/chunks/{withFormControl-l2C92-pT.js → withFormControl-BJbzRb4N.js} +6 -6
- package/dist/chunks/{withFormControl-l2C92-pT.js.map → withFormControl-BJbzRb4N.js.map} +1 -1
- package/dist/chunks/{withTruncation-CQ7mmyn9.js → withTruncation-CR8pGwFg.js} +2 -2
- package/dist/chunks/{withTruncation-CQ7mmyn9.js.map → withTruncation-CR8pGwFg.js.map} +1 -1
- package/dist/cjs/chakra/index.cjs +1 -1
- package/dist/cjs/chakra/index.cjs.map +1 -1
- package/dist/cjs/cli/generate-theme-types.cjs +4 -4
- package/dist/cjs/cli/generate-theme-types.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/theme/index.cjs +1 -1
- package/dist/esm/chakra/index.js +165 -162
- package/dist/esm/chakra/index.js.map +1 -1
- package/dist/esm/cli/generate-theme-types.js +2 -2
- package/dist/esm/cli/generate-theme-types.js.map +1 -1
- package/dist/esm/components/Alert/index.js +1 -1
- package/dist/esm/components/Avatar/index.js +1 -1
- package/dist/esm/components/AvatarGroup/index.js +1 -1
- package/dist/esm/components/ButtonGroup/index.js +1 -1
- package/dist/esm/components/CharacterCounter/index.js +1 -1
- package/dist/esm/components/Checkbox/index.js +1 -1
- package/dist/esm/components/CheckboxGroup/index.js +1 -1
- package/dist/esm/components/ConversationCard/index.js +1 -1
- package/dist/esm/components/DatePicker/index.js +1 -1
- package/dist/esm/components/Heading/index.js +1 -1
- package/dist/esm/components/Menu/index.js +1 -1
- package/dist/esm/components/Modal/index.js +1 -1
- package/dist/esm/components/PinInput/index.js +1 -1
- package/dist/esm/components/Popover/index.js +1 -1
- package/dist/esm/components/RadioGroup/index.js +1 -1
- package/dist/esm/components/RatingDots/index.js +1 -1
- package/dist/esm/components/Select/index.js +1 -1
- package/dist/esm/components/SortableList/index.js +1 -1
- package/dist/esm/components/Spinner/index.js +1 -1
- package/dist/esm/components/StyledAvatar/index.js +1 -1
- package/dist/esm/components/Switch/index.js +1 -1
- package/dist/esm/components/Tabs/index.js +1 -1
- package/dist/esm/components/TagBlock/index.js +1 -1
- package/dist/esm/components/Text/index.js +1 -1
- package/dist/esm/components/TextInput/index.js +1 -1
- package/dist/esm/components/Textarea/index.js +1 -1
- package/dist/esm/components/TimePicker/index.js +1 -1
- package/dist/esm/components/TimeRange/index.js +1 -1
- package/dist/esm/components/Timestamp/index.js +1 -1
- package/dist/esm/components/Toast/index.js +1 -1
- package/dist/esm/components/Tooltip/index.js +1 -1
- package/dist/esm/components/index.js +30 -30
- package/dist/esm/index.js +60 -59
- package/dist/esm/theme/index.js +4 -3
- package/dist/types/chakra/index.d.ts +1 -1
- package/dist/types/theme/index.d.ts +1 -1
- package/dist/types/theme/theme.config.d.ts +3 -2
- package/package.json +1 -21
- package/dist/chunks/index-DUY19L6M.js.map +0 -1
- package/dist/chunks/index-iaug4k6v.js +0 -8
- package/dist/chunks/index-iaug4k6v.js.map +0 -1
- package/dist/chunks/theme.provider-Bt7Zc9PF.js +0 -26
- package/dist/chunks/theme.provider-Bt7Zc9PF.js.map +0 -1
- package/dist/chunks/theme.provider-DHvMwBwG.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as t } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
|
-
import { W as c } from "./text.component-
|
|
2
|
+
import { W as c } from "./text.component-DKtdjH7k.js";
|
|
3
3
|
import { t as n } from "./typography-Cqrokog3.js";
|
|
4
4
|
import { a as d } from "./config-DlTdf-Yt.js";
|
|
5
5
|
import { u as b } from "./use-slot-recipe-DhtQ1j_5.js";
|
|
@@ -176,4 +176,4 @@ const S = ["root", "spinner", "label"], u = {
|
|
|
176
176
|
export {
|
|
177
177
|
V as S
|
|
178
178
|
};
|
|
179
|
-
//# sourceMappingURL=spinner.component-
|
|
179
|
+
//# sourceMappingURL=spinner.component-katjnJzv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spinner.component-
|
|
1
|
+
{"version":3,"file":"spinner.component-katjnJzv.js","sources":["../../src/components/Spinner/spinner.recipe.ts","../../src/components/Spinner/spinner.component.tsx"],"sourcesContent":["import { defineSlotRecipe, SystemStyleObject } from '@chakra-ui/react/styled-system';\nimport { SpinnerSize } from './spinner.types';\nimport { TypographyVariant } from 'shared/types';\nimport { typographyVariantStyles } from '../../shared/records/typography';\n\nconst spinnerSlots = ['root', 'spinner', 'label'] as const;\ntype SpinnerSlot = (typeof spinnerSlots)[number];\ntype SpinnerSlotStyles = {\n [key in SpinnerSlot]?: SystemStyleObject;\n};\n\nconst spinnerSizeStyles: Record<SpinnerSize, SpinnerSlotStyles> = {\n xs: {\n spinner: {\n h: 3,\n w: 3,\n },\n label: {\n fontSize: 'xs',\n },\n },\n sm: {\n spinner: {\n h: 4,\n w: 4,\n },\n label: {\n fontSize: 'sm',\n },\n },\n md: {\n spinner: {\n h: 6,\n w: 6,\n '--spinner-size': 6,\n },\n label: {\n fontSize: 'md',\n },\n },\n lg: {\n spinner: {\n h: 8,\n w: 8,\n },\n label: {\n fontSize: 'lg',\n },\n },\n xl: {\n spinner: {\n h: 12,\n w: 12,\n },\n label: {\n fontSize: 'xl',\n },\n },\n};\n\nconst spinnerVariantStyles: Record<TypographyVariant, SpinnerSlotStyles> = {\n accent: {\n spinner: typographyVariantStyles.accent,\n },\n accentSubtle: {\n spinner: typographyVariantStyles.accentSubtle,\n },\n brand: {\n spinner: typographyVariantStyles.brand,\n },\n brandOnContrast: {\n spinner: typographyVariantStyles.brandOnContrast,\n },\n danger: {\n spinner: typographyVariantStyles.danger,\n },\n dangerOnContrast: {\n spinner: typographyVariantStyles.dangerOnContrast,\n },\n default: {\n spinner: typographyVariantStyles.default,\n },\n info: {\n spinner: typographyVariantStyles.info,\n },\n interactive: {\n spinner: typographyVariantStyles.interactive,\n },\n interactiveOnContrast: {\n spinner: typographyVariantStyles.interactiveOnContrast,\n },\n onContrast: {\n spinner: typographyVariantStyles.onContrast,\n },\n placeholder: {\n spinner: typographyVariantStyles.placeholder,\n },\n placeholderOnContrast: {\n spinner: typographyVariantStyles.placeholderOnContrast,\n },\n subtle: {\n spinner: typographyVariantStyles.subtle,\n },\n subtleOnContrast: {\n spinner: typographyVariantStyles.subtleOnContrast,\n },\n success: {\n spinner: typographyVariantStyles.success,\n },\n warning: {\n spinner: typographyVariantStyles.warning,\n },\n};\n\nexport const spinnerRecipe = defineSlotRecipe({\n slots: spinnerSlots,\n base: {\n root: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n },\n variants: {\n variant: spinnerVariantStyles,\n size: spinnerSizeStyles,\n fullScreen: {\n true: {\n root: {\n h: '100%',\n left: 0,\n top: 0,\n position: 'absolute',\n w: '100%',\n zIndex: 'tooltipExtra',\n },\n },\n false: {\n root: {\n h: 'max-content',\n w: 'max-content',\n },\n },\n },\n },\n defaultVariants: {\n fullScreen: false,\n size: 'md',\n variant: 'brand',\n },\n});\n","import React from 'react';\nimport { Spinner as CSpinner } from '@chakra-ui/react/spinner';\nimport { VStack } from '@chakra-ui/react/stack';\nimport { SpinnerSize } from './spinner.types';\nimport { Text, TextProps } from 'components/Text/text.component';\nimport { TypographyVariant } from 'shared/types';\nimport { useSlotRecipe } from '@chakra-ui/react';\nimport { spinnerRecipe } from './spinner.recipe';\nimport { SemanticBackgroundColorToken } from 'theme/semanticTokens';\n\nexport interface SpinnerProps {\n backdropColor?: SemanticBackgroundColorToken;\n fullScreen?: boolean;\n label?: string;\n labelProps?: Omit<TextProps, 'chilren'>;\n showLabel?: boolean;\n size?: SpinnerSize;\n variant?: TypographyVariant;\n}\n\nexport const Spinner = ({\n backdropColor = 'background.alpha.pressed',\n fullScreen = false,\n label = 'Loading...',\n labelProps,\n showLabel = false,\n size = 'md',\n variant = 'accent',\n}: SpinnerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: spinnerRecipe });\n const styles = recipe({ variant, size, fullScreen });\n\n return (\n <VStack\n className=\"Spinner\"\n data-testid=\"kibble-spinner\"\n css={styles.root}\n {...(fullScreen && { bg: backdropColor })}\n >\n <CSpinner css={styles.spinner} />\n {showLabel && (\n <Text\n className=\"Spinner__Label\"\n data-testid=\"kibble-spinner-label\"\n variant=\"subtle\"\n css={styles.label}\n {...labelProps}\n >\n {label}\n </Text>\n )}\n </VStack>\n );\n};\n"],"names":["spinnerSlots","spinnerSizeStyles","spinnerVariantStyles","typographyVariantStyles","spinnerRecipe","defineSlotRecipe","Spinner","backdropColor","fullScreen","label","labelProps","showLabel","size","variant","styles","useSlotRecipe","jsxs","VStack","jsx","CSpinner","Text"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as c } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
|
-
import { A as p } from "./avatar.component-
|
|
2
|
+
import { A as p } from "./avatar.component-CvE1vv5L.js";
|
|
3
3
|
const y = ({ type: l = "Client", ...o }) => {
|
|
4
4
|
const { name: e, tooltipProps: t = { placement: "top", ...o.tooltipProps }, onClick: s } = o, n = {
|
|
5
5
|
variant: "outlineYellow",
|
|
@@ -48,4 +48,4 @@ export {
|
|
|
48
48
|
y as S,
|
|
49
49
|
C as s
|
|
50
50
|
};
|
|
51
|
-
//# sourceMappingURL=styledAvatar.types-
|
|
51
|
+
//# sourceMappingURL=styledAvatar.types-C8U-V56j.js.map
|
package/dist/chunks/{styledAvatar.types-DXwe2DPH.js.map → styledAvatar.types-C8U-V56j.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styledAvatar.types-
|
|
1
|
+
{"version":3,"file":"styledAvatar.types-C8U-V56j.js","sources":["../../src/components/StyledAvatar/styledAvatar.component.tsx","../../src/components/StyledAvatar/styledAvatar.types.ts"],"sourcesContent":["import React from 'react';\nimport { Avatar, AvatarProps } from 'components/Avatar/avatar.component';\nimport { StyledAvatarType } from './styledAvatar.types';\n\nexport interface StyledAvatarProps extends AvatarProps {\n type?: StyledAvatarType;\n}\n\nexport const StyledAvatar = ({ type = 'Client', ...rest }: StyledAvatarProps): React.JSX.Element => {\n const { name, tooltipProps = { placement: 'top', ...rest.tooltipProps }, onClick } = rest;\n\n const testClientStyleProps: Partial<AvatarProps> = {\n variant: 'outlineYellow',\n tooltipProps: {\n ...tooltipProps,\n label: tooltipProps?.label || `${name} (Test Client)`,\n },\n };\n\n const smsStyleProps: Partial<AvatarProps> = {\n iconName: 'cellphone',\n tooltipProps: {\n ...tooltipProps,\n label: tooltipProps?.label || `Text messages sent from ${name || 'unknown number'}`,\n },\n };\n\n const automatedStyleProps: Partial<AvatarProps> = {\n iconName: 'robot',\n backgroundColor: 'background.primary',\n hideBorder: true,\n color: 'text.contrast',\n size: 'sm',\n showTooltip: false,\n cursor: 'default',\n };\n\n const clinicStyleProps: Partial<AvatarProps> = {\n variant: 'outlineAccent',\n name: name || 'Sys',\n };\n\n const styleProps: Record<StyledAvatarType, Partial<AvatarProps>> = {\n Automated: automatedStyleProps,\n Client: {},\n Clinic: clinicStyleProps,\n SMS: smsStyleProps,\n TestClient: testClientStyleProps,\n };\n\n return (\n <Avatar\n className=\"StyledAvatar\"\n data-testid={`kibble-styled-avatar-${type}`}\n onClick={(e): void => {\n e.stopPropagation();\n if (onClick) {\n onClick(e);\n }\n }}\n {...rest}\n {...styleProps[type]}\n />\n );\n};\n","export const styledAvatarTypes = ['Client', 'SMS', 'TestClient', 'Automated', 'Clinic'] as const;\nexport type StyledAvatarType = (typeof styledAvatarTypes)[number];\n"],"names":["StyledAvatar","type","rest","name","tooltipProps","onClick","testClientStyleProps","smsStyleProps","styleProps","jsx","Avatar","e","styledAvatarTypes"],"mappings":";;AAQO,MAAMA,IAAe,CAAC,EAAE,MAAAC,IAAO,UAAU,GAAGC,QAAiD;AAC5F,QAAA,EAAE,MAAAC,GAAM,cAAAC,IAAe,EAAE,WAAW,OAAO,GAAGF,EAAK,aAAA,GAAgB,SAAAG,EAAA,IAAYH,GAE/EI,IAA6C;AAAA,IACjD,SAAS;AAAA,IACT,cAAc;AAAA,MACZ,GAAGF;AAAA,MACH,OAAOA,GAAc,SAAS,GAAGD,CAAI;AAAA,IAAA;AAAA,EAEzC,GAEMI,IAAsC;AAAA,IAC1C,UAAU;AAAA,IACV,cAAc;AAAA,MACZ,GAAGH;AAAA,MACH,OAAOA,GAAc,SAAS,2BAA2BD,KAAQ,gBAAgB;AAAA,IAAA;AAAA,EAErF,GAiBMK,IAA6D;AAAA,IACjE,WAhBgD;AAAA,MAChD,UAAU;AAAA,MACV,iBAAiB;AAAA,MACjB,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,QAAQ;AAAA,IACV;AAAA,IASE,QAAQ,CAAC;AAAA,IACT,QAR6C;AAAA,MAC7C,SAAS;AAAA,MACT,MAAML,KAAQ;AAAA,IAChB;AAAA,IAME,KAAKI;AAAA,IACL,YAAYD;AAAA,EACd;AAGE,SAAAG,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAa,wBAAwBT,CAAI;AAAA,MACzC,SAAS,CAACU,MAAY;AACpB,QAAAA,EAAE,gBAAgB,GACdN,KACFA,EAAQM,CAAC;AAAA,MAEb;AAAA,MACC,GAAGT;AAAA,MACH,GAAGM,EAAWP,CAAI;AAAA,IAAA;AAAA,EACrB;AAEJ,GChEaW,IAAoB,CAAC,UAAU,OAAO,cAAc,aAAa,QAAQ;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { j as c } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
2
|
import I, { forwardRef as n, useId as A, useMemo as L } from "react";
|
|
3
|
-
import { w as T } from "./withFormControl-
|
|
3
|
+
import { w as T } from "./withFormControl-BJbzRb4N.js";
|
|
4
4
|
import { d as u } from "./attr-sm10PXOd.js";
|
|
5
5
|
import { c as _ } from "./create-slot-recipe-context-BJmsuxih.js";
|
|
6
6
|
import { c as w } from "./factory-Ctbv0Ozn.js";
|
|
7
|
-
import { c as $, f as d, i as H, j as O, k as q, n as E, a as S } from "./use-locale-context-
|
|
8
|
-
import { u as f } from "./use-field-context-
|
|
9
|
-
import { a1 as l } from "./index-
|
|
10
|
-
import { m as F, c as M } from "./index-
|
|
7
|
+
import { c as $, f as d, i as H, j as O, k as q, n as E, a as S } from "./use-locale-context-BNU4MHrO.js";
|
|
8
|
+
import { u as f } from "./use-field-context-BZaIHuSQ.js";
|
|
9
|
+
import { a1 as l } from "./index-Ztgrae6O.js";
|
|
10
|
+
import { m as F, c as M } from "./index-C-m6RNXT.js";
|
|
11
11
|
const [b, h] = $({
|
|
12
12
|
name: "SwitchContext",
|
|
13
13
|
hookName: "useSwitchContext",
|
|
@@ -151,4 +151,4 @@ const rt = T(g);
|
|
|
151
151
|
export {
|
|
152
152
|
rt as W
|
|
153
153
|
};
|
|
154
|
-
//# sourceMappingURL=switch.component-
|
|
154
|
+
//# sourceMappingURL=switch.component-U2g70Pc5.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.component-DVHjLc9H.js","sources":["../../node_modules/@ark-ui/react/dist/components/switch/use-switch-context.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-control.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-hidden-input.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-label.js","../../node_modules/@ark-ui/react/dist/components/switch/use-switch.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-root.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-root-provider.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-thumb.js","../../node_modules/@chakra-ui/react/dist/esm/components/switch/switch.js","../../src/components/Switch/switch.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [SwitchProvider, useSwitchContext] = createContext({\n name: \"SwitchContext\",\n hookName: \"useSwitchContext\",\n providerName: \"<SwitchProvider />\"\n});\n\nexport { SwitchProvider, useSwitchContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchControl = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getControlProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchControl.displayName = \"SwitchControl\";\n\nexport { SwitchControl };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useFieldContext } from '../field/use-field-context.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchHiddenInput = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getHiddenInputProps(), props);\n const field = useFieldContext();\n return /* @__PURE__ */ jsx(ark.input, { \"aria-describedby\": field?.ariaDescribedby, ...mergedProps, ref });\n});\nSwitchHiddenInput.displayName = \"SwitchHiddenInput\";\n\nexport { SwitchHiddenInput };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchLabel = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getLabelProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchLabel.displayName = \"SwitchLabel\";\n\nexport { SwitchLabel };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as zagSwitch from '@zag-js/switch';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\nimport { useFieldContext } from '../field/use-field-context.js';\n\nconst useSwitch = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const field = useFieldContext();\n const machineProps = {\n id,\n ids: {\n label: field?.ids.label,\n hiddenInput: field?.ids.control\n },\n dir,\n disabled: field?.disabled,\n readOnly: field?.readOnly,\n invalid: field?.invalid,\n required: field?.required,\n getRootNode,\n ...props\n };\n const service = useMachine(zagSwitch.machine, machineProps);\n return zagSwitch.connect(service, normalizeProps);\n};\n\nexport { useSwitch };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useSwitch } from './use-switch.js';\nimport { SwitchProvider } from './use-switch-context.js';\n\nconst SwitchRoot = forwardRef((props, ref) => {\n const [switchProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"defaultChecked\",\n \"disabled\",\n \"form\",\n \"id\",\n \"ids\",\n \"invalid\",\n \"label\",\n \"name\",\n \"onCheckedChange\",\n \"readOnly\",\n \"required\",\n \"value\"\n ]);\n const switchContext = useSwitch(switchProps);\n const mergedProps = mergeProps(switchContext.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(SwitchProvider, { value: switchContext, children: /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref }) });\n});\nSwitchRoot.displayName = \"SwitchRoot\";\n\nexport { SwitchRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { SwitchProvider } from './use-switch-context.js';\n\nconst SwitchRootProvider = forwardRef((props, ref) => {\n const [{ value: api }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(api.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(SwitchProvider, { value: api, children: /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref }) });\n});\nSwitchRootProvider.displayName = \"SwitchRootProvider\";\n\nexport { SwitchRootProvider };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchThumb = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getThumbProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchThumb.displayName = \"SwitchThumb\";\n\nexport { SwitchThumb };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Switch, useSwitchContext } from '@ark-ui/react/switch';\nimport { forwardRef } from 'react';\nimport { dataAttr } from '../../utils/attr.js';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { chakra } from '../../styled-system/factory.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useSwitchStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"switch\" });\nconst SwitchRootProvider = withProvider(Switch.RootProvider, \"root\", { forwardAsChild: true });\nconst SwitchRoot = withProvider(\n Switch.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst SwitchPropsProvider = PropsProvider;\nconst SwitchLabel = withContext(\n Switch.Label,\n \"label\",\n { forwardAsChild: true }\n);\nconst SwitchThumb = withContext(\n Switch.Thumb,\n \"thumb\",\n { forwardAsChild: true }\n);\nconst SwitchControl = withContext(\n Switch.Control,\n \"control\",\n {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(SwitchThumb, {}) }\n }\n);\nconst SwitchIndicator = forwardRef(function SwitchIndicator2(props, ref) {\n const api = useSwitchContext();\n const styles = useSwitchStyles();\n const { fallback, children, ...rest } = props;\n return /* @__PURE__ */ jsx(\n chakra.span,\n {\n ref,\n \"data-checked\": dataAttr(api.checked),\n ...rest,\n css: [styles.indicator, props.css],\n children: api.checked ? children : fallback\n }\n );\n});\nconst SwitchThumbIndicator = forwardRef(function SwitchThumbIndicator2(props, ref) {\n const api = useSwitchContext();\n const { fallback, children, ...rest } = props;\n return /* @__PURE__ */ jsx(chakra.span, { ref, \"data-checked\": dataAttr(api.checked), ...rest, children: api.checked ? children : fallback });\n});\nconst SwitchContext = Switch.Context;\nconst SwitchHiddenInput = Switch.HiddenInput;\n\nexport { SwitchContext, SwitchControl, SwitchHiddenInput, SwitchIndicator, SwitchLabel, SwitchPropsProvider, SwitchRoot, SwitchRootProvider, SwitchThumb, SwitchThumbIndicator, useSwitchStyles };\n","import React, { ForwardedRef, useMemo } from 'react';\nimport { Switch as CSwitch } from '@chakra-ui/react/switch';\nimport { withFormControl, WithFormControlProps } from 'hocs/withFormControl/withFormControl';\nimport { FormControlSize } from 'hocs/withFormControl/withFormControl.types';\n\nexport interface SwitchProps extends WithFormControlProps, Omit<CSwitch.RootProps, 'label' | 'onChange'> {\n indeterminate?: boolean;\n rootRef?: ForwardedRef<HTMLLabelElement>;\n size?: FormControlSize;\n switchRef?: React.RefObject<HTMLInputElement | null>;\n}\n\nconst Switch = React.forwardRef<HTMLInputElement, SwitchProps>(\n (\n {\n children,\n indeterminate = false,\n onContrast,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n label,\n rootRef,\n size = 'md',\n switchRef,\n ...rest\n },\n ref,\n ): React.JSX.Element => {\n const _computedVariant = useMemo(() => {\n if (indeterminate) {\n return onContrast ? 'indeterminateOnContrast' : 'indeterminate';\n } else {\n return onContrast ? 'onContrast' : 'default';\n }\n }, [indeterminate, onContrast]);\n\n return (\n <CSwitch.Root\n className=\"Switch\"\n data-testid=\"kibble-switch\"\n ref={rootRef}\n size={size}\n variant={_computedVariant}\n {...rest}\n >\n <CSwitch.HiddenInput className=\"Switch_Input\" data-testid=\"kibble-switch-input\" ref={switchRef || ref} />\n <CSwitch.Control className=\"Switch_Control\" data-testid=\"kibble-switch-control\" />\n {!!children && <CSwitch.Label>{children}</CSwitch.Label>}\n </CSwitch.Root>\n );\n },\n);\n\nSwitch.displayName = 'Switch';\nconst WrappedSwitch = withFormControl<SwitchProps>(Switch);\n\nexport { WrappedSwitch as Switch };\n"],"names":["SwitchProvider","useSwitchContext","createContext","SwitchControl","forwardRef","props","ref","switchContext","mergedProps","mergeProps","jsx","ark","SwitchHiddenInput","field","useFieldContext","SwitchLabel","useSwitch","id","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","zagSwitch.machine","zagSwitch.connect","normalizeProps","SwitchRoot","switchProps","localProps","createSplitProps","SwitchRootProvider","api","SwitchThumb","withProvider","withContext","useSwitchStyles","createSlotRecipeContext","Switch.RootProvider","Switch.Root","Switch.Label","Switch.Thumb","Switch.Control","styles","fallback","children","rest","chakra","dataAttr","Switch.HiddenInput","Switch","React","indeterminate","onContrast","label","rootRef","size","switchRef","_computedVariant","useMemo","jsxs","CSwitch.Root","CSwitch.HiddenInput","CSwitch.Control","CSwitch.Label","WrappedSwitch","withFormControl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}
|
|
1
|
+
{"version":3,"file":"switch.component-U2g70Pc5.js","sources":["../../node_modules/@ark-ui/react/dist/components/switch/use-switch-context.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-control.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-hidden-input.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-label.js","../../node_modules/@ark-ui/react/dist/components/switch/use-switch.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-root.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-root-provider.js","../../node_modules/@ark-ui/react/dist/components/switch/switch-thumb.js","../../node_modules/@chakra-ui/react/dist/esm/components/switch/switch.js","../../src/components/Switch/switch.component.tsx"],"sourcesContent":["'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [SwitchProvider, useSwitchContext] = createContext({\n name: \"SwitchContext\",\n hookName: \"useSwitchContext\",\n providerName: \"<SwitchProvider />\"\n});\n\nexport { SwitchProvider, useSwitchContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchControl = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getControlProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchControl.displayName = \"SwitchControl\";\n\nexport { SwitchControl };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useFieldContext } from '../field/use-field-context.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchHiddenInput = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getHiddenInputProps(), props);\n const field = useFieldContext();\n return /* @__PURE__ */ jsx(ark.input, { \"aria-describedby\": field?.ariaDescribedby, ...mergedProps, ref });\n});\nSwitchHiddenInput.displayName = \"SwitchHiddenInput\";\n\nexport { SwitchHiddenInput };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchLabel = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getLabelProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchLabel.displayName = \"SwitchLabel\";\n\nexport { SwitchLabel };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as zagSwitch from '@zag-js/switch';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\nimport { useFieldContext } from '../field/use-field-context.js';\n\nconst useSwitch = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const field = useFieldContext();\n const machineProps = {\n id,\n ids: {\n label: field?.ids.label,\n hiddenInput: field?.ids.control\n },\n dir,\n disabled: field?.disabled,\n readOnly: field?.readOnly,\n invalid: field?.invalid,\n required: field?.required,\n getRootNode,\n ...props\n };\n const service = useMachine(zagSwitch.machine, machineProps);\n return zagSwitch.connect(service, normalizeProps);\n};\n\nexport { useSwitch };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useSwitch } from './use-switch.js';\nimport { SwitchProvider } from './use-switch-context.js';\n\nconst SwitchRoot = forwardRef((props, ref) => {\n const [switchProps, localProps] = createSplitProps()(props, [\n \"checked\",\n \"defaultChecked\",\n \"disabled\",\n \"form\",\n \"id\",\n \"ids\",\n \"invalid\",\n \"label\",\n \"name\",\n \"onCheckedChange\",\n \"readOnly\",\n \"required\",\n \"value\"\n ]);\n const switchContext = useSwitch(switchProps);\n const mergedProps = mergeProps(switchContext.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(SwitchProvider, { value: switchContext, children: /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref }) });\n});\nSwitchRoot.displayName = \"SwitchRoot\";\n\nexport { SwitchRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { SwitchProvider } from './use-switch-context.js';\n\nconst SwitchRootProvider = forwardRef((props, ref) => {\n const [{ value: api }, localProps] = createSplitProps()(props, [\"value\"]);\n const mergedProps = mergeProps(api.getRootProps(), localProps);\n return /* @__PURE__ */ jsx(SwitchProvider, { value: api, children: /* @__PURE__ */ jsx(ark.label, { ...mergedProps, ref }) });\n});\nSwitchRootProvider.displayName = \"SwitchRootProvider\";\n\nexport { SwitchRootProvider };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useSwitchContext } from './use-switch-context.js';\n\nconst SwitchThumb = forwardRef((props, ref) => {\n const switchContext = useSwitchContext();\n const mergedProps = mergeProps(switchContext.getThumbProps(), props);\n return /* @__PURE__ */ jsx(ark.span, { ...mergedProps, ref });\n});\nSwitchThumb.displayName = \"SwitchThumb\";\n\nexport { SwitchThumb };\n","\"use strict\";\n\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { Switch, useSwitchContext } from '@ark-ui/react/switch';\nimport { forwardRef } from 'react';\nimport { dataAttr } from '../../utils/attr.js';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\nimport { chakra } from '../../styled-system/factory.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useSwitchStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"switch\" });\nconst SwitchRootProvider = withProvider(Switch.RootProvider, \"root\", { forwardAsChild: true });\nconst SwitchRoot = withProvider(\n Switch.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst SwitchPropsProvider = PropsProvider;\nconst SwitchLabel = withContext(\n Switch.Label,\n \"label\",\n { forwardAsChild: true }\n);\nconst SwitchThumb = withContext(\n Switch.Thumb,\n \"thumb\",\n { forwardAsChild: true }\n);\nconst SwitchControl = withContext(\n Switch.Control,\n \"control\",\n {\n forwardAsChild: true,\n defaultProps: { children: /* @__PURE__ */ jsx(SwitchThumb, {}) }\n }\n);\nconst SwitchIndicator = forwardRef(function SwitchIndicator2(props, ref) {\n const api = useSwitchContext();\n const styles = useSwitchStyles();\n const { fallback, children, ...rest } = props;\n return /* @__PURE__ */ jsx(\n chakra.span,\n {\n ref,\n \"data-checked\": dataAttr(api.checked),\n ...rest,\n css: [styles.indicator, props.css],\n children: api.checked ? children : fallback\n }\n );\n});\nconst SwitchThumbIndicator = forwardRef(function SwitchThumbIndicator2(props, ref) {\n const api = useSwitchContext();\n const { fallback, children, ...rest } = props;\n return /* @__PURE__ */ jsx(chakra.span, { ref, \"data-checked\": dataAttr(api.checked), ...rest, children: api.checked ? children : fallback });\n});\nconst SwitchContext = Switch.Context;\nconst SwitchHiddenInput = Switch.HiddenInput;\n\nexport { SwitchContext, SwitchControl, SwitchHiddenInput, SwitchIndicator, SwitchLabel, SwitchPropsProvider, SwitchRoot, SwitchRootProvider, SwitchThumb, SwitchThumbIndicator, useSwitchStyles };\n","import React, { ForwardedRef, useMemo } from 'react';\nimport { Switch as CSwitch } from '@chakra-ui/react/switch';\nimport { withFormControl, WithFormControlProps } from 'hocs/withFormControl/withFormControl';\nimport { FormControlSize } from 'hocs/withFormControl/withFormControl.types';\n\nexport interface SwitchProps extends WithFormControlProps, Omit<CSwitch.RootProps, 'label' | 'onChange'> {\n indeterminate?: boolean;\n rootRef?: ForwardedRef<HTMLLabelElement>;\n size?: FormControlSize;\n switchRef?: React.RefObject<HTMLInputElement | null>;\n}\n\nconst Switch = React.forwardRef<HTMLInputElement, SwitchProps>(\n (\n {\n children,\n indeterminate = false,\n onContrast,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n label,\n rootRef,\n size = 'md',\n switchRef,\n ...rest\n },\n ref,\n ): React.JSX.Element => {\n const _computedVariant = useMemo(() => {\n if (indeterminate) {\n return onContrast ? 'indeterminateOnContrast' : 'indeterminate';\n } else {\n return onContrast ? 'onContrast' : 'default';\n }\n }, [indeterminate, onContrast]);\n\n return (\n <CSwitch.Root\n className=\"Switch\"\n data-testid=\"kibble-switch\"\n ref={rootRef}\n size={size}\n variant={_computedVariant}\n {...rest}\n >\n <CSwitch.HiddenInput className=\"Switch_Input\" data-testid=\"kibble-switch-input\" ref={switchRef || ref} />\n <CSwitch.Control className=\"Switch_Control\" data-testid=\"kibble-switch-control\" />\n {!!children && <CSwitch.Label>{children}</CSwitch.Label>}\n </CSwitch.Root>\n );\n },\n);\n\nSwitch.displayName = 'Switch';\nconst WrappedSwitch = withFormControl<SwitchProps>(Switch);\n\nexport { WrappedSwitch as Switch };\n"],"names":["SwitchProvider","useSwitchContext","createContext","SwitchControl","forwardRef","props","ref","switchContext","mergedProps","mergeProps","jsx","ark","SwitchHiddenInput","field","useFieldContext","SwitchLabel","useSwitch","id","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","service","useMachine","zagSwitch.machine","zagSwitch.connect","normalizeProps","SwitchRoot","switchProps","localProps","createSplitProps","SwitchRootProvider","api","SwitchThumb","withProvider","withContext","useSwitchStyles","createSlotRecipeContext","Switch.RootProvider","Switch.Root","Switch.Label","Switch.Thumb","Switch.Control","styles","fallback","children","rest","chakra","dataAttr","Switch.HiddenInput","Switch","React","indeterminate","onContrast","label","rootRef","size","switchRef","_computedVariant","useMemo","jsxs","CSwitch.Root","CSwitch.HiddenInput","CSwitch.Control","CSwitch.Label","WrappedSwitch","withFormControl"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { j as c } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
2
|
import { I as S } from "./icon.component-DszmCnE4.js";
|
|
3
3
|
import { N as G } from "./notificationCounter.component-BzhAKrKR.js";
|
|
4
|
-
import { W as Y } from "./heading.component-
|
|
4
|
+
import { W as Y } from "./heading.component-73t_EqZx.js";
|
|
5
5
|
import { c as J } from "./create-slot-recipe-context-BJmsuxih.js";
|
|
6
6
|
import { useState as Q, useEffect as Z, forwardRef as T, useId as ee } from "react";
|
|
7
|
-
import { c as te, a as F, l as ae, m as se, f as m, h as oe, b as _, i as re, j as ne, k as ie, n as ce } from "./use-locale-context-
|
|
8
|
-
import { u as le, s as j, R as B } from "./render-strategy-
|
|
9
|
-
import { a1 as y, c as ue, z as de, a4 as ge, J as fe, an as be, r as v, ao as pe, ap as ve, X as Te, b as me, d as f, i as ye, Q as he, m as Re, q as Ce, aq as Ee, y as Pe, ae as Ve, U as Ie, V as Ae } from "./index-
|
|
7
|
+
import { c as te, a as F, l as ae, m as se, f as m, h as oe, b as _, i as re, j as ne, k as ie, n as ce } from "./use-locale-context-BNU4MHrO.js";
|
|
8
|
+
import { u as le, s as j, R as B } from "./render-strategy-D5Z6LZ1V.js";
|
|
9
|
+
import { a1 as y, c as ue, z as de, a4 as ge, J as fe, an as be, r as v, ao as pe, ap as ve, X as Te, b as me, d as f, i as ye, Q as he, m as Re, q as Ce, aq as Ee, y as Pe, ae as Ve, U as Ie, V as Ae } from "./index-Ztgrae6O.js";
|
|
10
10
|
function Fe(e, t) {
|
|
11
11
|
const [s, a] = Q(e);
|
|
12
12
|
return Z(() => {
|
|
@@ -611,4 +611,4 @@ const Ke = {
|
|
|
611
611
|
export {
|
|
612
612
|
rt as T
|
|
613
613
|
};
|
|
614
|
-
//# sourceMappingURL=tabs.component-
|
|
614
|
+
//# sourceMappingURL=tabs.component-P5GKt5Sv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.component-b8VxTs-T.js","sources":["../../node_modules/@ark-ui/react/dist/utils/use-debounce.js","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs-context.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-content.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-indicator.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-list.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-trigger.js","../../node_modules/@zag-js/tabs/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/tabs/tabs.js","../../src/components/Tabs/components/Tab/tab.records.ts","../../src/components/Tabs/components/Tab/tab.component.tsx","../../src/components/Tabs/tabs.component.tsx"],"sourcesContent":["'use client';\nimport { useState, useEffect } from 'react';\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n return debouncedValue;\n}\n\nexport { useDebounce };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [TabsProvider, useTabsContext] = createContext({\n name: \"TabsContext\",\n hookName: \"useTabsContext\",\n providerName: \"<TabsProvider />\"\n});\n\nexport { TabsProvider, useTabsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';\nimport { useDebounce } from '../../utils/use-debounce.js';\nimport { ark } from '../factory.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabContent = forwardRef((props, ref) => {\n const [contentProps, localProps] = createSplitProps()(props, [\"value\"]);\n const tabs = useTabsContext();\n const renderStrategyProps = useRenderStrategyPropsContext();\n const presence = usePresence({\n ...renderStrategyProps,\n present: useDebounce(tabs.value === props.value, 0),\n immediate: true\n });\n const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);\n return /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children: presence.unmounted ? null : /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) }) });\n});\nTabContent.displayName = \"TabContent\";\n\nexport { TabContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabIndicator = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabIndicator.displayName = \"TabIndicator\";\n\nexport { TabIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabList = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getListProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabList.displayName = \"TabList\";\n\nexport { TabList };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabTrigger = forwardRef((props, ref) => {\n const [tabProps, localProps] = createSplitProps()(props, [\"disabled\", \"value\"]);\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getTriggerProps(tabProps), localProps);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nTabTrigger.displayName = \"TabTrigger\";\n\nexport { TabTrigger };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { isAnchorElement, trackElementRect, nextTick, raf, getFocusables, prevById, nextById, clickIfLink, itemById, queryAll, dataAttr, isSafari, isSelfTarget, isComposingEvent, getEventKey } from '@zag-js/dom-query';\nimport { last, first, createSplitProps } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { createProps } from '@zag-js/types';\n\n// src/tabs.anatomy.ts\nvar anatomy = createAnatomy(\"tabs\").parts(\"root\", \"list\", \"trigger\", \"content\", \"indicator\");\nvar parts = anatomy.build();\nvar getRootId = (ctx) => ctx.ids?.root ?? `tabs:${ctx.id}`;\nvar getListId = (ctx) => ctx.ids?.list ?? `tabs:${ctx.id}:list`;\nvar getContentId = (ctx, id) => ctx.ids?.content ?? `tabs:${ctx.id}:content-${id}`;\nvar getTriggerId = (ctx, id) => ctx.ids?.trigger ?? `tabs:${ctx.id}:trigger-${id}`;\nvar getIndicatorId = (ctx) => ctx.ids?.indicator ?? `tabs:${ctx.id}:indicator`;\nvar getListEl = (ctx) => ctx.getById(getListId(ctx));\nvar getContentEl = (ctx, id) => ctx.getById(getContentId(ctx, id));\nvar getTriggerEl = (ctx, id) => ctx.getById(getTriggerId(ctx, id));\nvar getIndicatorEl = (ctx) => ctx.getById(getIndicatorId(ctx));\nvar getElements = (ctx) => {\n const ownerId = CSS.escape(getListId(ctx));\n const selector = `[role=tab][data-ownedby='${ownerId}']:not([disabled])`;\n return queryAll(getListEl(ctx), selector);\n};\nvar getFirstTriggerEl = (ctx) => first(getElements(ctx));\nvar getLastTriggerEl = (ctx) => last(getElements(ctx));\nvar getNextTriggerEl = (ctx, opts) => nextById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getPrevTriggerEl = (ctx, opts) => prevById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getOffsetRect = (el) => {\n return {\n left: el?.offsetLeft ?? 0,\n top: el?.offsetTop ?? 0,\n width: el?.offsetWidth ?? 0,\n height: el?.offsetHeight ?? 0\n };\n};\nvar getRectById = (ctx, id) => {\n const tab = itemById(getElements(ctx), getTriggerId(ctx, id));\n return resolveRect(getOffsetRect(tab));\n};\nvar resolveRect = (rect) => ({\n width: `${rect.width}px`,\n height: `${rect.height}px`,\n left: `${rect.left}px`,\n top: `${rect.top}px`\n});\n\n// src/tabs.connect.ts\nfunction connect(service, normalize) {\n const { state, send, context, prop, scope } = service;\n const translations = prop(\"translations\");\n const focused = state.matches(\"focused\");\n const isVertical = prop(\"orientation\") === \"vertical\";\n const isHorizontal = prop(\"orientation\") === \"horizontal\";\n const composite = prop(\"composite\");\n function getTriggerState(props2) {\n return {\n selected: context.get(\"value\") === props2.value,\n focused: context.get(\"focusedValue\") === props2.value,\n disabled: !!props2.disabled\n };\n }\n return {\n value: context.get(\"value\"),\n focusedValue: context.get(\"focusedValue\"),\n setValue(value) {\n send({ type: \"SET_VALUE\", value });\n },\n clearValue() {\n send({ type: \"CLEAR_VALUE\" });\n },\n setIndicatorRect(value) {\n const id = getTriggerId(scope, value);\n send({ type: \"SET_INDICATOR_RECT\", id });\n },\n syncTabIndex() {\n send({ type: \"SYNC_TAB_INDEX\" });\n },\n selectNext(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectNext\" });\n send({ type: \"ARROW_NEXT\", src: \"selectNext\" });\n },\n selectPrev(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectPrev\" });\n send({ type: \"ARROW_PREV\", src: \"selectPrev\" });\n },\n focus() {\n const value = context.get(\"value\");\n if (!value) return;\n getTriggerEl(scope, value)?.focus();\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n id: getRootId(scope),\n \"data-orientation\": prop(\"orientation\"),\n \"data-focus\": dataAttr(focused),\n dir: prop(\"dir\")\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n id: getListId(scope),\n role: \"tablist\",\n dir: prop(\"dir\"),\n \"data-focus\": dataAttr(focused),\n \"aria-orientation\": prop(\"orientation\"),\n \"data-orientation\": prop(\"orientation\"),\n \"aria-label\": translations?.listLabel,\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!isSelfTarget(event)) return;\n if (isComposingEvent(event)) return;\n const keyMap = {\n ArrowDown() {\n if (isHorizontal) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowDown\" });\n },\n ArrowUp() {\n if (isHorizontal) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowUp\" });\n },\n ArrowLeft() {\n if (isVertical) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowLeft\" });\n },\n ArrowRight() {\n if (isVertical) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowRight\" });\n },\n Home() {\n send({ type: \"HOME\" });\n },\n End() {\n send({ type: \"END\" });\n },\n Enter() {\n send({ type: \"ENTER\" });\n }\n };\n let key = getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: prop(\"orientation\")\n });\n const exec = keyMap[key];\n if (exec) {\n event.preventDefault();\n exec(event);\n }\n }\n });\n },\n getTriggerState,\n getTriggerProps(props2) {\n const { value, disabled } = props2;\n const triggerState = getTriggerState(props2);\n return normalize.button({\n ...parts.trigger.attrs,\n role: \"tab\",\n type: \"button\",\n disabled,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n \"data-disabled\": dataAttr(disabled),\n \"aria-disabled\": disabled,\n \"data-value\": value,\n \"aria-selected\": triggerState.selected,\n \"data-selected\": dataAttr(triggerState.selected),\n \"data-focus\": dataAttr(triggerState.focused),\n \"aria-controls\": triggerState.selected ? getContentId(scope, value) : void 0,\n \"data-ownedby\": getListId(scope),\n \"data-ssr\": dataAttr(context.get(\"ssr\")),\n id: getTriggerId(scope, value),\n tabIndex: triggerState.selected && composite ? 0 : -1,\n onFocus() {\n send({ type: \"TAB_FOCUS\", value });\n },\n onBlur(event) {\n const target = event.relatedTarget;\n if (target?.getAttribute(\"role\") !== \"tab\") {\n send({ type: \"TAB_BLUR\" });\n }\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n if (isSafari()) {\n event.currentTarget.focus();\n }\n send({ type: \"TAB_CLICK\", value });\n }\n });\n },\n getContentProps(props2) {\n const { value } = props2;\n const selected = context.get(\"value\") === value;\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope, value),\n tabIndex: composite ? 0 : -1,\n \"aria-labelledby\": getTriggerId(scope, value),\n role: \"tabpanel\",\n \"data-ownedby\": getListId(scope),\n \"data-selected\": dataAttr(selected),\n \"data-orientation\": prop(\"orientation\"),\n hidden: !selected\n });\n },\n getIndicatorProps() {\n const indicatorRect = context.get(\"indicatorRect\");\n const indicatorTransition = context.get(\"indicatorTransition\");\n return normalize.element({\n id: getIndicatorId(scope),\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n style: {\n \"--transition-property\": \"left, right, top, bottom, width, height\",\n \"--left\": indicatorRect.left,\n \"--top\": indicatorRect.top,\n \"--width\": indicatorRect.width,\n \"--height\": indicatorRect.height,\n position: \"absolute\",\n willChange: \"var(--transition-property)\",\n transitionProperty: \"var(--transition-property)\",\n transitionDuration: indicatorTransition ? \"var(--transition-duration, 150ms)\" : \"0ms\",\n transitionTimingFunction: \"var(--transition-timing-function)\",\n [isHorizontal ? \"left\" : \"top\"]: isHorizontal ? \"var(--left)\" : \"var(--top)\"\n }\n });\n }\n };\n}\nvar { not } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n dir: \"ltr\",\n orientation: \"horizontal\",\n activationMode: \"automatic\",\n loopFocus: true,\n composite: true,\n navigate(details) {\n clickIfLink(details.node);\n },\n defaultValue: null,\n ...props2\n };\n },\n initialState() {\n return \"idle\";\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n onChange(value) {\n prop(\"onValueChange\")?.({ value });\n }\n })),\n focusedValue: bindable(() => ({\n defaultValue: prop(\"value\") || prop(\"defaultValue\"),\n sync: true,\n onChange(value) {\n prop(\"onFocusChange\")?.({ focusedValue: value });\n }\n })),\n ssr: bindable(() => ({ defaultValue: true })),\n indicatorTransition: bindable(() => ({ defaultValue: false })),\n indicatorRect: bindable(() => ({\n defaultValue: { left: \"0px\", top: \"0px\", width: \"0px\", height: \"0px\" }\n }))\n };\n },\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\")], () => {\n action([\"allowIndicatorTransition\", \"syncIndicatorRect\", \"syncTabIndex\", \"navigateIfNeeded\"]);\n });\n track([() => prop(\"dir\"), () => prop(\"orientation\")], () => {\n action([\"syncIndicatorRect\"]);\n });\n },\n on: {\n SET_VALUE: {\n actions: [\"setValue\"]\n },\n CLEAR_VALUE: {\n actions: [\"clearValue\"]\n },\n SET_INDICATOR_RECT: {\n actions: [\"setIndicatorRect\"]\n },\n SYNC_TAB_INDEX: {\n actions: [\"syncTabIndex\"]\n }\n },\n entry: [\"syncIndicatorRect\", \"syncTabIndex\", \"syncSsr\"],\n exit: [\"cleanupObserver\"],\n states: {\n idle: {\n on: {\n TAB_FOCUS: {\n target: \"focused\",\n actions: [\"setFocusedValue\"]\n },\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n }\n }\n },\n focused: {\n on: {\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n },\n ARROW_PREV: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusPrevTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusPrevTab\"]\n }\n ],\n ARROW_NEXT: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusNextTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusNextTab\"]\n }\n ],\n HOME: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusFirstTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusFirstTab\"]\n }\n ],\n END: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusLastTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusLastTab\"]\n }\n ],\n ENTER: {\n guard: not(\"selectOnFocus\"),\n actions: [\"selectFocusedTab\"]\n },\n TAB_FOCUS: {\n actions: [\"setFocusedValue\"]\n },\n TAB_BLUR: {\n target: \"idle\",\n actions: [\"clearFocusedValue\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n selectOnFocus: ({ prop }) => prop(\"activationMode\") === \"automatic\"\n },\n actions: {\n selectFocusedTab({ context, prop }) {\n raf(() => {\n const focusedValue = context.get(\"focusedValue\");\n if (!focusedValue) return;\n const nullable = prop(\"deselectable\") && context.get(\"value\") === focusedValue;\n const value = nullable ? null : focusedValue;\n context.set(\"value\", value);\n });\n },\n setFocusedValue({ context, event, flush }) {\n if (event.value == null) return;\n flush(() => {\n context.set(\"focusedValue\", event.value);\n });\n },\n clearFocusedValue({ context }) {\n context.set(\"focusedValue\", null);\n },\n setValue({ context, event, prop }) {\n const nullable = prop(\"deselectable\") && context.get(\"value\") === context.get(\"focusedValue\");\n context.set(\"value\", nullable ? null : event.value);\n },\n clearValue({ context }) {\n context.set(\"value\", null);\n },\n focusFirstTab({ scope }) {\n raf(() => {\n getFirstTriggerEl(scope)?.focus();\n });\n },\n focusLastTab({ scope }) {\n raf(() => {\n getLastTriggerEl(scope)?.focus();\n });\n },\n focusNextTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getNextTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n focusPrevTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getPrevTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n syncTabIndex({ context, scope }) {\n raf(() => {\n const value = context.get(\"value\");\n if (!value) return;\n const contentEl = getContentEl(scope, value);\n if (!contentEl) return;\n const focusables = getFocusables(contentEl);\n if (focusables.length > 0) {\n contentEl.removeAttribute(\"tabindex\");\n } else {\n contentEl.setAttribute(\"tabindex\", \"0\");\n }\n });\n },\n cleanupObserver({ refs }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n },\n allowIndicatorTransition({ context }) {\n context.set(\"indicatorTransition\", true);\n },\n setIndicatorRect({ context, event, scope }) {\n const value = event.id ?? context.get(\"value\");\n const indicatorEl = getIndicatorEl(scope);\n if (!indicatorEl) return;\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n if (!triggerEl) return;\n context.set(\"indicatorRect\", getRectById(scope, value));\n nextTick(() => {\n context.set(\"indicatorTransition\", false);\n });\n },\n syncSsr({ context }) {\n context.set(\"ssr\", false);\n },\n syncIndicatorRect({ context, refs, scope }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n const value = context.get(\"value\");\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n const indicatorEl = getIndicatorEl(scope);\n if (!triggerEl || !indicatorEl) return;\n const indicatorCleanup = trackElementRect([triggerEl], {\n measure(el) {\n return getOffsetRect(el);\n },\n onEntry({ rects }) {\n const [rect] = rects;\n context.set(\"indicatorRect\", resolveRect(rect));\n }\n });\n refs.set(\"indicatorCleanup\", indicatorCleanup);\n },\n navigateIfNeeded({ context, prop, scope }) {\n const value = context.get(\"value\");\n if (!value) return;\n const triggerEl = getTriggerEl(scope, value);\n if (isAnchorElement(triggerEl)) {\n prop(\"navigate\")?.({ value, node: triggerEl, href: triggerEl.href });\n }\n }\n }\n }\n});\nvar props = createProps()([\n \"activationMode\",\n \"composite\",\n \"deselectable\",\n \"dir\",\n \"getRootNode\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\",\n \"defaultValue\"\n]);\nvar splitProps = createSplitProps(props);\nvar triggerProps = createProps()([\"disabled\", \"value\"]);\nvar splitTriggerProps = createSplitProps(triggerProps);\nvar contentProps = createProps()([\"value\"]);\nvar splitContentProps = createSplitProps(contentProps);\n\nexport { anatomy, connect, contentProps, machine, props, splitContentProps, splitProps, splitTriggerProps, triggerProps };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as tabs from '@zag-js/tabs';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useTabs = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(tabs.machine, machineProps);\n return tabs.connect(service, normalizeProps);\n};\n\nexport { useTabs };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { useTabs } from './use-tabs.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRoot = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [useTabsProps, localprops] = createSplitProps()(tabsProps, [\n \"activationMode\",\n \"composite\",\n \"defaultValue\",\n \"deselectable\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\"\n ]);\n const tabs = useTabs(useTabsProps);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRoot.displayName = \"TabsRoot\";\n\nexport { TabsRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRootProvider = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [{ value: tabs }, localprops] = createSplitProps()(tabsProps, [\"value\"]);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRootProvider.displayName = \"TabsRootProvider\";\n\nexport { TabsRootProvider };\n","\"use strict\";\n\"use client\";\nimport { Tabs } from '@ark-ui/react/tabs';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useTabsStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"tabs\" });\nconst TabsRootProvider = withProvider(Tabs.RootProvider, \"root\", { forwardAsChild: true });\nconst TabsRoot = withProvider(\n Tabs.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst TabsPropsProvider = PropsProvider;\nconst TabsTrigger = withContext(\n Tabs.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst TabsContent = withContext(\n Tabs.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst TabsContentGroup = withContext(\"div\", \"contentGroup\");\nconst TabsList = withContext(\n Tabs.List,\n \"list\",\n { forwardAsChild: true }\n);\nconst TabsIndicator = withContext(\n Tabs.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst TabsContext = Tabs.Context;\n\nexport { TabsContent, TabsContentGroup, TabsContext, TabsIndicator, TabsList, TabsPropsProvider, TabsRoot, TabsRootProvider, TabsTrigger, useTabsStyles };\n","import { TabSize } from './tab.types';\nimport { NotificationCounterSize } from 'components/NotificationCounter/notificationCounter.types';\nimport { HeadingSize } from 'components/Heading/heading.types';\n\nexport const tabNotificationCounterSize: Record<TabSize, NotificationCounterSize> = {\n xs: 'sm',\n sm: 'md',\n md: 'md',\n lg: 'lg',\n};\n\nexport const tabLabelSize: Record<TabSize, HeadingSize> = {\n xs: 'xs',\n sm: 'xs',\n md: 'sm',\n lg: 'md',\n};\n","import React from 'react';\nimport { Tabs } from '@chakra-ui/react/tabs';\nimport { Icon, IconName } from 'components/Icon';\nimport {\n NotificationCounter,\n NotificationCounterProps,\n} from 'components/NotificationCounter/notificationCounter.component';\nimport { TabIconPosition, TabSize } from './tab.types';\nimport { tabLabelSize, tabNotificationCounterSize } from './tab.records';\nimport { Heading } from 'components/Heading/heading.component';\n\nexport interface TabProps extends Tabs.TriggerProps {\n iconName?: IconName;\n iconPosition?: TabIconPosition;\n label: string;\n notificationCounterProps?: Omit<NotificationCounterProps, 'size'>;\n showNotificationCounter?: boolean;\n size?: TabSize;\n}\n\nexport const Tab = ({\n iconName,\n iconPosition = 'left',\n label,\n notificationCounterProps,\n showNotificationCounter,\n size = 'md',\n ...rest\n}: TabProps): React.JSX.Element => {\n return (\n <Tabs.Trigger className=\"Tab\" data-testid=\"kibble-tab\" {...rest}>\n {!!iconName && iconPosition === 'left' && (\n <Icon className=\"Tab__Icon\" data-testid=\"kibble-tab-icon\" name={iconName} size={size} variant=\"default\" />\n )}\n <Heading className=\"Tab__Label\" data-testid=\"kibble-tab-label\" size={tabLabelSize[size]}>\n {label}\n </Heading>\n {!!iconName && iconPosition === 'right' && (\n <Icon className=\"Tab__Icon\" data-testid=\"kibble-tab-icon\" name={iconName} size={size} />\n )}\n {showNotificationCounter && (\n <NotificationCounter\n className=\"Tab__NotificationCounter\"\n data-testid=\"kibble-tab-notification-counter\"\n {...notificationCounterProps}\n size={tabNotificationCounterSize[size]}\n />\n )}\n </Tabs.Trigger>\n );\n};\n","import React from 'react';\nimport { Tabs as CTabs } from '@chakra-ui/react/tabs';\nimport { TabSize } from './components/Tab/tab.types';\nimport { Tab, TabProps } from './components/Tab/tab.component';\nimport { Alignment } from 'shared/types/alignment';\n\nexport interface TabsProps extends Omit<CTabs.RootProps, 'onChange' | 'variant'> {\n align?: Alignment;\n onChange?: (value: string) => void;\n size?: TabSize;\n tabs: TabProps[];\n tabsContents?: CTabs.ContentProps[];\n}\n\nexport const Tabs = ({\n align = 'start',\n onChange,\n size = 'md',\n tabs,\n tabsContents,\n ...rest\n}: TabsProps): React.JSX.Element => {\n return (\n <CTabs.Root\n className=\"Tabs\"\n data-testid=\"kibble-tabs\"\n justify={align || rest.justify}\n size={size}\n onValueChange={({ value }) => onChange?.(value)}\n {...rest}\n >\n <CTabs.List className=\"Tabs__List\" data-testid=\"kibble-tabs-list\">\n {tabs.map((tab, index) => (\n <Tab key={`tab-${index}`} {...tab} />\n ))}\n </CTabs.List>\n {!!tabsContents &&\n tabsContents.map((tabContent, index) => <CTabs.Content key={`tabContent-${index}`} {...tabContent} />)}\n </CTabs.Root>\n );\n};\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer","TabsProvider","useTabsContext","createContext","TabContent","forwardRef","props","ref","contentProps","localProps","createSplitProps","tabs","renderStrategyProps","useRenderStrategyPropsContext","presence","usePresence","mergedProps","mergeProps","jsx","PresenceProvider","ark","composeRefs","TabIndicator","TabList","TabTrigger","tabProps","anatomy","createAnatomy","parts","getRootId","ctx","getListId","getContentId","id","getTriggerId","getIndicatorId","getListEl","getContentEl","getTriggerEl","getIndicatorEl","getElements","selector","queryAll","getFirstTriggerEl","first","getLastTriggerEl","last","getNextTriggerEl","opts","nextById","getPrevTriggerEl","prevById","getOffsetRect","el","getRectById","tab","itemById","resolveRect","rect","connect","service","normalize","state","send","context","prop","scope","translations","focused","isVertical","isHorizontal","composite","getTriggerState","props2","fromValue","dataAttr","event","isSelfTarget","isComposingEvent","keyMap","key","getEventKey","exec","disabled","triggerState","isSafari","selected","indicatorRect","indicatorTransition","not","createGuards","machine","createMachine","details","clickIfLink","bindable","track","action","raf","focusedValue","flush","nullable","triggerEl","contentEl","getFocusables","refs","cleanup","nextTick","indicatorEl","indicatorCleanup","trackElementRect","rects","isAnchorElement","createProps","useTabs","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","useMachine","tabs.machine","tabs.connect","normalizeProps","TabsRoot","tabsProps","splitRenderStrategyProps","useTabsProps","localprops","RenderStrategyPropsProvider","TabsRootProvider","withProvider","withContext","createSlotRecipeContext","Tabs.RootProvider","Tabs.Root","TabsTrigger","Tabs.Trigger","TabsContent","Tabs.Content","TabsList","Tabs.List","Tabs.Indicator","tabNotificationCounterSize","tabLabelSize","Tab","iconName","iconPosition","label","notificationCounterProps","showNotificationCounter","size","rest","jsxs","Icon","Heading","NotificationCounter","Tabs","align","onChange","tabsContents","CTabs.Root","CTabs.List","index","tabContent","CTabs.Content"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10]}
|
|
1
|
+
{"version":3,"file":"tabs.component-P5GKt5Sv.js","sources":["../../node_modules/@ark-ui/react/dist/utils/use-debounce.js","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs-context.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-content.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-indicator.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-list.js","../../node_modules/@ark-ui/react/dist/components/tabs/tab-trigger.js","../../node_modules/@zag-js/tabs/dist/index.mjs","../../node_modules/@ark-ui/react/dist/components/tabs/use-tabs.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root.js","../../node_modules/@ark-ui/react/dist/components/tabs/tabs-root-provider.js","../../node_modules/@chakra-ui/react/dist/esm/components/tabs/tabs.js","../../src/components/Tabs/components/Tab/tab.records.ts","../../src/components/Tabs/components/Tab/tab.component.tsx","../../src/components/Tabs/tabs.component.tsx"],"sourcesContent":["'use client';\nimport { useState, useEffect } from 'react';\n\nfunction useDebounce(value, delay) {\n const [debouncedValue, setDebouncedValue] = useState(value);\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n return debouncedValue;\n}\n\nexport { useDebounce };\n","'use client';\nimport { createContext } from '../../utils/create-context.js';\n\nconst [TabsProvider, useTabsContext] = createContext({\n name: \"TabsContext\",\n hookName: \"useTabsContext\",\n providerName: \"<TabsProvider />\"\n});\n\nexport { TabsProvider, useTabsContext };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { composeRefs } from '../../utils/compose-refs.js';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';\nimport { useDebounce } from '../../utils/use-debounce.js';\nimport { ark } from '../factory.js';\nimport { usePresence } from '../presence/use-presence.js';\nimport { PresenceProvider } from '../presence/use-presence-context.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabContent = forwardRef((props, ref) => {\n const [contentProps, localProps] = createSplitProps()(props, [\"value\"]);\n const tabs = useTabsContext();\n const renderStrategyProps = useRenderStrategyPropsContext();\n const presence = usePresence({\n ...renderStrategyProps,\n present: useDebounce(tabs.value === props.value, 0),\n immediate: true\n });\n const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);\n return /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children: presence.unmounted ? null : /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref: composeRefs(presence.ref, ref) }) });\n});\nTabContent.displayName = \"TabContent\";\n\nexport { TabContent };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabIndicator = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getIndicatorProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabIndicator.displayName = \"TabIndicator\";\n\nexport { TabIndicator };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabList = forwardRef((props, ref) => {\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getListProps(), props);\n return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });\n});\nTabList.displayName = \"TabList\";\n\nexport { TabList };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { ark } from '../factory.js';\nimport { useTabsContext } from './use-tabs-context.js';\n\nconst TabTrigger = forwardRef((props, ref) => {\n const [tabProps, localProps] = createSplitProps()(props, [\"disabled\", \"value\"]);\n const tabs = useTabsContext();\n const mergedProps = mergeProps(tabs.getTriggerProps(tabProps), localProps);\n return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });\n});\nTabTrigger.displayName = \"TabTrigger\";\n\nexport { TabTrigger };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { isAnchorElement, trackElementRect, nextTick, raf, getFocusables, prevById, nextById, clickIfLink, itemById, queryAll, dataAttr, isSafari, isSelfTarget, isComposingEvent, getEventKey } from '@zag-js/dom-query';\nimport { last, first, createSplitProps } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { createProps } from '@zag-js/types';\n\n// src/tabs.anatomy.ts\nvar anatomy = createAnatomy(\"tabs\").parts(\"root\", \"list\", \"trigger\", \"content\", \"indicator\");\nvar parts = anatomy.build();\nvar getRootId = (ctx) => ctx.ids?.root ?? `tabs:${ctx.id}`;\nvar getListId = (ctx) => ctx.ids?.list ?? `tabs:${ctx.id}:list`;\nvar getContentId = (ctx, id) => ctx.ids?.content ?? `tabs:${ctx.id}:content-${id}`;\nvar getTriggerId = (ctx, id) => ctx.ids?.trigger ?? `tabs:${ctx.id}:trigger-${id}`;\nvar getIndicatorId = (ctx) => ctx.ids?.indicator ?? `tabs:${ctx.id}:indicator`;\nvar getListEl = (ctx) => ctx.getById(getListId(ctx));\nvar getContentEl = (ctx, id) => ctx.getById(getContentId(ctx, id));\nvar getTriggerEl = (ctx, id) => ctx.getById(getTriggerId(ctx, id));\nvar getIndicatorEl = (ctx) => ctx.getById(getIndicatorId(ctx));\nvar getElements = (ctx) => {\n const ownerId = CSS.escape(getListId(ctx));\n const selector = `[role=tab][data-ownedby='${ownerId}']:not([disabled])`;\n return queryAll(getListEl(ctx), selector);\n};\nvar getFirstTriggerEl = (ctx) => first(getElements(ctx));\nvar getLastTriggerEl = (ctx) => last(getElements(ctx));\nvar getNextTriggerEl = (ctx, opts) => nextById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getPrevTriggerEl = (ctx, opts) => prevById(getElements(ctx), getTriggerId(ctx, opts.value), opts.loopFocus);\nvar getOffsetRect = (el) => {\n return {\n left: el?.offsetLeft ?? 0,\n top: el?.offsetTop ?? 0,\n width: el?.offsetWidth ?? 0,\n height: el?.offsetHeight ?? 0\n };\n};\nvar getRectById = (ctx, id) => {\n const tab = itemById(getElements(ctx), getTriggerId(ctx, id));\n return resolveRect(getOffsetRect(tab));\n};\nvar resolveRect = (rect) => ({\n width: `${rect.width}px`,\n height: `${rect.height}px`,\n left: `${rect.left}px`,\n top: `${rect.top}px`\n});\n\n// src/tabs.connect.ts\nfunction connect(service, normalize) {\n const { state, send, context, prop, scope } = service;\n const translations = prop(\"translations\");\n const focused = state.matches(\"focused\");\n const isVertical = prop(\"orientation\") === \"vertical\";\n const isHorizontal = prop(\"orientation\") === \"horizontal\";\n const composite = prop(\"composite\");\n function getTriggerState(props2) {\n return {\n selected: context.get(\"value\") === props2.value,\n focused: context.get(\"focusedValue\") === props2.value,\n disabled: !!props2.disabled\n };\n }\n return {\n value: context.get(\"value\"),\n focusedValue: context.get(\"focusedValue\"),\n setValue(value) {\n send({ type: \"SET_VALUE\", value });\n },\n clearValue() {\n send({ type: \"CLEAR_VALUE\" });\n },\n setIndicatorRect(value) {\n const id = getTriggerId(scope, value);\n send({ type: \"SET_INDICATOR_RECT\", id });\n },\n syncTabIndex() {\n send({ type: \"SYNC_TAB_INDEX\" });\n },\n selectNext(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectNext\" });\n send({ type: \"ARROW_NEXT\", src: \"selectNext\" });\n },\n selectPrev(fromValue) {\n send({ type: \"TAB_FOCUS\", value: fromValue, src: \"selectPrev\" });\n send({ type: \"ARROW_PREV\", src: \"selectPrev\" });\n },\n focus() {\n const value = context.get(\"value\");\n if (!value) return;\n getTriggerEl(scope, value)?.focus();\n },\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n id: getRootId(scope),\n \"data-orientation\": prop(\"orientation\"),\n \"data-focus\": dataAttr(focused),\n dir: prop(\"dir\")\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n id: getListId(scope),\n role: \"tablist\",\n dir: prop(\"dir\"),\n \"data-focus\": dataAttr(focused),\n \"aria-orientation\": prop(\"orientation\"),\n \"data-orientation\": prop(\"orientation\"),\n \"aria-label\": translations?.listLabel,\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!isSelfTarget(event)) return;\n if (isComposingEvent(event)) return;\n const keyMap = {\n ArrowDown() {\n if (isHorizontal) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowDown\" });\n },\n ArrowUp() {\n if (isHorizontal) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowUp\" });\n },\n ArrowLeft() {\n if (isVertical) return;\n send({ type: \"ARROW_PREV\", key: \"ArrowLeft\" });\n },\n ArrowRight() {\n if (isVertical) return;\n send({ type: \"ARROW_NEXT\", key: \"ArrowRight\" });\n },\n Home() {\n send({ type: \"HOME\" });\n },\n End() {\n send({ type: \"END\" });\n },\n Enter() {\n send({ type: \"ENTER\" });\n }\n };\n let key = getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: prop(\"orientation\")\n });\n const exec = keyMap[key];\n if (exec) {\n event.preventDefault();\n exec(event);\n }\n }\n });\n },\n getTriggerState,\n getTriggerProps(props2) {\n const { value, disabled } = props2;\n const triggerState = getTriggerState(props2);\n return normalize.button({\n ...parts.trigger.attrs,\n role: \"tab\",\n type: \"button\",\n disabled,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n \"data-disabled\": dataAttr(disabled),\n \"aria-disabled\": disabled,\n \"data-value\": value,\n \"aria-selected\": triggerState.selected,\n \"data-selected\": dataAttr(triggerState.selected),\n \"data-focus\": dataAttr(triggerState.focused),\n \"aria-controls\": triggerState.selected ? getContentId(scope, value) : void 0,\n \"data-ownedby\": getListId(scope),\n \"data-ssr\": dataAttr(context.get(\"ssr\")),\n id: getTriggerId(scope, value),\n tabIndex: triggerState.selected && composite ? 0 : -1,\n onFocus() {\n send({ type: \"TAB_FOCUS\", value });\n },\n onBlur(event) {\n const target = event.relatedTarget;\n if (target?.getAttribute(\"role\") !== \"tab\") {\n send({ type: \"TAB_BLUR\" });\n }\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n if (isSafari()) {\n event.currentTarget.focus();\n }\n send({ type: \"TAB_CLICK\", value });\n }\n });\n },\n getContentProps(props2) {\n const { value } = props2;\n const selected = context.get(\"value\") === value;\n return normalize.element({\n ...parts.content.attrs,\n dir: prop(\"dir\"),\n id: getContentId(scope, value),\n tabIndex: composite ? 0 : -1,\n \"aria-labelledby\": getTriggerId(scope, value),\n role: \"tabpanel\",\n \"data-ownedby\": getListId(scope),\n \"data-selected\": dataAttr(selected),\n \"data-orientation\": prop(\"orientation\"),\n hidden: !selected\n });\n },\n getIndicatorProps() {\n const indicatorRect = context.get(\"indicatorRect\");\n const indicatorTransition = context.get(\"indicatorTransition\");\n return normalize.element({\n id: getIndicatorId(scope),\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"data-orientation\": prop(\"orientation\"),\n style: {\n \"--transition-property\": \"left, right, top, bottom, width, height\",\n \"--left\": indicatorRect.left,\n \"--top\": indicatorRect.top,\n \"--width\": indicatorRect.width,\n \"--height\": indicatorRect.height,\n position: \"absolute\",\n willChange: \"var(--transition-property)\",\n transitionProperty: \"var(--transition-property)\",\n transitionDuration: indicatorTransition ? \"var(--transition-duration, 150ms)\" : \"0ms\",\n transitionTimingFunction: \"var(--transition-timing-function)\",\n [isHorizontal ? \"left\" : \"top\"]: isHorizontal ? \"var(--left)\" : \"var(--top)\"\n }\n });\n }\n };\n}\nvar { not } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n dir: \"ltr\",\n orientation: \"horizontal\",\n activationMode: \"automatic\",\n loopFocus: true,\n composite: true,\n navigate(details) {\n clickIfLink(details.node);\n },\n defaultValue: null,\n ...props2\n };\n },\n initialState() {\n return \"idle\";\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n onChange(value) {\n prop(\"onValueChange\")?.({ value });\n }\n })),\n focusedValue: bindable(() => ({\n defaultValue: prop(\"value\") || prop(\"defaultValue\"),\n sync: true,\n onChange(value) {\n prop(\"onFocusChange\")?.({ focusedValue: value });\n }\n })),\n ssr: bindable(() => ({ defaultValue: true })),\n indicatorTransition: bindable(() => ({ defaultValue: false })),\n indicatorRect: bindable(() => ({\n defaultValue: { left: \"0px\", top: \"0px\", width: \"0px\", height: \"0px\" }\n }))\n };\n },\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\")], () => {\n action([\"allowIndicatorTransition\", \"syncIndicatorRect\", \"syncTabIndex\", \"navigateIfNeeded\"]);\n });\n track([() => prop(\"dir\"), () => prop(\"orientation\")], () => {\n action([\"syncIndicatorRect\"]);\n });\n },\n on: {\n SET_VALUE: {\n actions: [\"setValue\"]\n },\n CLEAR_VALUE: {\n actions: [\"clearValue\"]\n },\n SET_INDICATOR_RECT: {\n actions: [\"setIndicatorRect\"]\n },\n SYNC_TAB_INDEX: {\n actions: [\"syncTabIndex\"]\n }\n },\n entry: [\"syncIndicatorRect\", \"syncTabIndex\", \"syncSsr\"],\n exit: [\"cleanupObserver\"],\n states: {\n idle: {\n on: {\n TAB_FOCUS: {\n target: \"focused\",\n actions: [\"setFocusedValue\"]\n },\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n }\n }\n },\n focused: {\n on: {\n TAB_CLICK: {\n target: \"focused\",\n actions: [\"setFocusedValue\", \"setValue\"]\n },\n ARROW_PREV: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusPrevTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusPrevTab\"]\n }\n ],\n ARROW_NEXT: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusNextTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusNextTab\"]\n }\n ],\n HOME: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusFirstTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusFirstTab\"]\n }\n ],\n END: [\n {\n guard: \"selectOnFocus\",\n actions: [\"focusLastTab\", \"selectFocusedTab\"]\n },\n {\n actions: [\"focusLastTab\"]\n }\n ],\n ENTER: {\n guard: not(\"selectOnFocus\"),\n actions: [\"selectFocusedTab\"]\n },\n TAB_FOCUS: {\n actions: [\"setFocusedValue\"]\n },\n TAB_BLUR: {\n target: \"idle\",\n actions: [\"clearFocusedValue\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n selectOnFocus: ({ prop }) => prop(\"activationMode\") === \"automatic\"\n },\n actions: {\n selectFocusedTab({ context, prop }) {\n raf(() => {\n const focusedValue = context.get(\"focusedValue\");\n if (!focusedValue) return;\n const nullable = prop(\"deselectable\") && context.get(\"value\") === focusedValue;\n const value = nullable ? null : focusedValue;\n context.set(\"value\", value);\n });\n },\n setFocusedValue({ context, event, flush }) {\n if (event.value == null) return;\n flush(() => {\n context.set(\"focusedValue\", event.value);\n });\n },\n clearFocusedValue({ context }) {\n context.set(\"focusedValue\", null);\n },\n setValue({ context, event, prop }) {\n const nullable = prop(\"deselectable\") && context.get(\"value\") === context.get(\"focusedValue\");\n context.set(\"value\", nullable ? null : event.value);\n },\n clearValue({ context }) {\n context.set(\"value\", null);\n },\n focusFirstTab({ scope }) {\n raf(() => {\n getFirstTriggerEl(scope)?.focus();\n });\n },\n focusLastTab({ scope }) {\n raf(() => {\n getLastTriggerEl(scope)?.focus();\n });\n },\n focusNextTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getNextTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n focusPrevTab({ context, prop, scope, event }) {\n const focusedValue = event.value ?? context.get(\"focusedValue\");\n if (!focusedValue) return;\n const triggerEl = getPrevTriggerEl(scope, {\n value: focusedValue,\n loopFocus: prop(\"loopFocus\")\n });\n raf(() => {\n if (prop(\"composite\")) {\n triggerEl?.focus();\n } else if (triggerEl?.dataset.value != null) {\n context.set(\"focusedValue\", triggerEl.dataset.value);\n }\n });\n },\n syncTabIndex({ context, scope }) {\n raf(() => {\n const value = context.get(\"value\");\n if (!value) return;\n const contentEl = getContentEl(scope, value);\n if (!contentEl) return;\n const focusables = getFocusables(contentEl);\n if (focusables.length > 0) {\n contentEl.removeAttribute(\"tabindex\");\n } else {\n contentEl.setAttribute(\"tabindex\", \"0\");\n }\n });\n },\n cleanupObserver({ refs }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n },\n allowIndicatorTransition({ context }) {\n context.set(\"indicatorTransition\", true);\n },\n setIndicatorRect({ context, event, scope }) {\n const value = event.id ?? context.get(\"value\");\n const indicatorEl = getIndicatorEl(scope);\n if (!indicatorEl) return;\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n if (!triggerEl) return;\n context.set(\"indicatorRect\", getRectById(scope, value));\n nextTick(() => {\n context.set(\"indicatorTransition\", false);\n });\n },\n syncSsr({ context }) {\n context.set(\"ssr\", false);\n },\n syncIndicatorRect({ context, refs, scope }) {\n const cleanup = refs.get(\"indicatorCleanup\");\n if (cleanup) cleanup();\n const value = context.get(\"value\");\n if (!value) {\n context.set(\"indicatorTransition\", false);\n return;\n }\n const triggerEl = getTriggerEl(scope, value);\n const indicatorEl = getIndicatorEl(scope);\n if (!triggerEl || !indicatorEl) return;\n const indicatorCleanup = trackElementRect([triggerEl], {\n measure(el) {\n return getOffsetRect(el);\n },\n onEntry({ rects }) {\n const [rect] = rects;\n context.set(\"indicatorRect\", resolveRect(rect));\n }\n });\n refs.set(\"indicatorCleanup\", indicatorCleanup);\n },\n navigateIfNeeded({ context, prop, scope }) {\n const value = context.get(\"value\");\n if (!value) return;\n const triggerEl = getTriggerEl(scope, value);\n if (isAnchorElement(triggerEl)) {\n prop(\"navigate\")?.({ value, node: triggerEl, href: triggerEl.href });\n }\n }\n }\n }\n});\nvar props = createProps()([\n \"activationMode\",\n \"composite\",\n \"deselectable\",\n \"dir\",\n \"getRootNode\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\",\n \"defaultValue\"\n]);\nvar splitProps = createSplitProps(props);\nvar triggerProps = createProps()([\"disabled\", \"value\"]);\nvar splitTriggerProps = createSplitProps(triggerProps);\nvar contentProps = createProps()([\"value\"]);\nvar splitContentProps = createSplitProps(contentProps);\n\nexport { anatomy, connect, contentProps, machine, props, splitContentProps, splitProps, splitTriggerProps, triggerProps };\n","'use client';\nimport { useMachine, normalizeProps } from '@zag-js/react';\nimport * as tabs from '@zag-js/tabs';\nimport { useId } from 'react';\nimport { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';\nimport { useLocaleContext } from '../../providers/locale/use-locale-context.js';\n\nconst useTabs = (props) => {\n const id = useId();\n const { getRootNode } = useEnvironmentContext();\n const { dir } = useLocaleContext();\n const machineProps = {\n id,\n dir,\n getRootNode,\n ...props\n };\n const service = useMachine(tabs.machine, machineProps);\n return tabs.connect(service, normalizeProps);\n};\n\nexport { useTabs };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { useTabs } from './use-tabs.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRoot = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [useTabsProps, localprops] = createSplitProps()(tabsProps, [\n \"activationMode\",\n \"composite\",\n \"defaultValue\",\n \"deselectable\",\n \"id\",\n \"ids\",\n \"loopFocus\",\n \"navigate\",\n \"onFocusChange\",\n \"onValueChange\",\n \"orientation\",\n \"translations\",\n \"value\"\n ]);\n const tabs = useTabs(useTabsProps);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRoot.displayName = \"TabsRoot\";\n\nexport { TabsRoot };\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { mergeProps } from '@zag-js/react';\nimport { forwardRef } from 'react';\nimport { createSplitProps } from '../../utils/create-split-props.js';\nimport { splitRenderStrategyProps, RenderStrategyPropsProvider } from '../../utils/render-strategy.js';\nimport { ark } from '../factory.js';\nimport { TabsProvider } from './use-tabs-context.js';\n\nconst TabsRootProvider = forwardRef((props, ref) => {\n const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);\n const [{ value: tabs }, localprops] = createSplitProps()(tabsProps, [\"value\"]);\n const mergedProps = mergeProps(tabs.getRootProps(), localprops);\n return /* @__PURE__ */ jsx(TabsProvider, { value: tabs, children: /* @__PURE__ */ jsx(RenderStrategyPropsProvider, { value: renderStrategyProps, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) }) });\n});\nTabsRootProvider.displayName = \"TabsRootProvider\";\n\nexport { TabsRootProvider };\n","\"use strict\";\n\"use client\";\nimport { Tabs } from '@ark-ui/react/tabs';\nimport { createSlotRecipeContext } from '../../styled-system/create-slot-recipe-context.js';\n\nconst {\n withProvider,\n withContext,\n useStyles: useTabsStyles,\n PropsProvider\n} = createSlotRecipeContext({ key: \"tabs\" });\nconst TabsRootProvider = withProvider(Tabs.RootProvider, \"root\", { forwardAsChild: true });\nconst TabsRoot = withProvider(\n Tabs.Root,\n \"root\",\n { forwardAsChild: true }\n);\nconst TabsPropsProvider = PropsProvider;\nconst TabsTrigger = withContext(\n Tabs.Trigger,\n \"trigger\",\n { forwardAsChild: true }\n);\nconst TabsContent = withContext(\n Tabs.Content,\n \"content\",\n { forwardAsChild: true }\n);\nconst TabsContentGroup = withContext(\"div\", \"contentGroup\");\nconst TabsList = withContext(\n Tabs.List,\n \"list\",\n { forwardAsChild: true }\n);\nconst TabsIndicator = withContext(\n Tabs.Indicator,\n \"indicator\",\n { forwardAsChild: true }\n);\nconst TabsContext = Tabs.Context;\n\nexport { TabsContent, TabsContentGroup, TabsContext, TabsIndicator, TabsList, TabsPropsProvider, TabsRoot, TabsRootProvider, TabsTrigger, useTabsStyles };\n","import { TabSize } from './tab.types';\nimport { NotificationCounterSize } from 'components/NotificationCounter/notificationCounter.types';\nimport { HeadingSize } from 'components/Heading/heading.types';\n\nexport const tabNotificationCounterSize: Record<TabSize, NotificationCounterSize> = {\n xs: 'sm',\n sm: 'md',\n md: 'md',\n lg: 'lg',\n};\n\nexport const tabLabelSize: Record<TabSize, HeadingSize> = {\n xs: 'xs',\n sm: 'xs',\n md: 'sm',\n lg: 'md',\n};\n","import React from 'react';\nimport { Tabs } from '@chakra-ui/react/tabs';\nimport { Icon, IconName } from 'components/Icon';\nimport {\n NotificationCounter,\n NotificationCounterProps,\n} from 'components/NotificationCounter/notificationCounter.component';\nimport { TabIconPosition, TabSize } from './tab.types';\nimport { tabLabelSize, tabNotificationCounterSize } from './tab.records';\nimport { Heading } from 'components/Heading/heading.component';\n\nexport interface TabProps extends Tabs.TriggerProps {\n iconName?: IconName;\n iconPosition?: TabIconPosition;\n label: string;\n notificationCounterProps?: Omit<NotificationCounterProps, 'size'>;\n showNotificationCounter?: boolean;\n size?: TabSize;\n}\n\nexport const Tab = ({\n iconName,\n iconPosition = 'left',\n label,\n notificationCounterProps,\n showNotificationCounter,\n size = 'md',\n ...rest\n}: TabProps): React.JSX.Element => {\n return (\n <Tabs.Trigger className=\"Tab\" data-testid=\"kibble-tab\" {...rest}>\n {!!iconName && iconPosition === 'left' && (\n <Icon className=\"Tab__Icon\" data-testid=\"kibble-tab-icon\" name={iconName} size={size} variant=\"default\" />\n )}\n <Heading className=\"Tab__Label\" data-testid=\"kibble-tab-label\" size={tabLabelSize[size]}>\n {label}\n </Heading>\n {!!iconName && iconPosition === 'right' && (\n <Icon className=\"Tab__Icon\" data-testid=\"kibble-tab-icon\" name={iconName} size={size} />\n )}\n {showNotificationCounter && (\n <NotificationCounter\n className=\"Tab__NotificationCounter\"\n data-testid=\"kibble-tab-notification-counter\"\n {...notificationCounterProps}\n size={tabNotificationCounterSize[size]}\n />\n )}\n </Tabs.Trigger>\n );\n};\n","import React from 'react';\nimport { Tabs as CTabs } from '@chakra-ui/react/tabs';\nimport { TabSize } from './components/Tab/tab.types';\nimport { Tab, TabProps } from './components/Tab/tab.component';\nimport { Alignment } from 'shared/types/alignment';\n\nexport interface TabsProps extends Omit<CTabs.RootProps, 'onChange' | 'variant'> {\n align?: Alignment;\n onChange?: (value: string) => void;\n size?: TabSize;\n tabs: TabProps[];\n tabsContents?: CTabs.ContentProps[];\n}\n\nexport const Tabs = ({\n align = 'start',\n onChange,\n size = 'md',\n tabs,\n tabsContents,\n ...rest\n}: TabsProps): React.JSX.Element => {\n return (\n <CTabs.Root\n className=\"Tabs\"\n data-testid=\"kibble-tabs\"\n justify={align || rest.justify}\n size={size}\n onValueChange={({ value }) => onChange?.(value)}\n {...rest}\n >\n <CTabs.List className=\"Tabs__List\" data-testid=\"kibble-tabs-list\">\n {tabs.map((tab, index) => (\n <Tab key={`tab-${index}`} {...tab} />\n ))}\n </CTabs.List>\n {!!tabsContents &&\n tabsContents.map((tabContent, index) => <CTabs.Content key={`tabContent-${index}`} {...tabContent} />)}\n </CTabs.Root>\n );\n};\n"],"names":["useDebounce","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer","TabsProvider","useTabsContext","createContext","TabContent","forwardRef","props","ref","contentProps","localProps","createSplitProps","tabs","renderStrategyProps","useRenderStrategyPropsContext","presence","usePresence","mergedProps","mergeProps","jsx","PresenceProvider","ark","composeRefs","TabIndicator","TabList","TabTrigger","tabProps","anatomy","createAnatomy","parts","getRootId","ctx","getListId","getContentId","id","getTriggerId","getIndicatorId","getListEl","getContentEl","getTriggerEl","getIndicatorEl","getElements","selector","queryAll","getFirstTriggerEl","first","getLastTriggerEl","last","getNextTriggerEl","opts","nextById","getPrevTriggerEl","prevById","getOffsetRect","el","getRectById","tab","itemById","resolveRect","rect","connect","service","normalize","state","send","context","prop","scope","translations","focused","isVertical","isHorizontal","composite","getTriggerState","props2","fromValue","dataAttr","event","isSelfTarget","isComposingEvent","keyMap","key","getEventKey","exec","disabled","triggerState","isSafari","selected","indicatorRect","indicatorTransition","not","createGuards","machine","createMachine","details","clickIfLink","bindable","track","action","raf","focusedValue","flush","nullable","triggerEl","contentEl","getFocusables","refs","cleanup","nextTick","indicatorEl","indicatorCleanup","trackElementRect","rects","isAnchorElement","createProps","useTabs","useId","getRootNode","useEnvironmentContext","dir","useLocaleContext","machineProps","useMachine","tabs.machine","tabs.connect","normalizeProps","TabsRoot","tabsProps","splitRenderStrategyProps","useTabsProps","localprops","RenderStrategyPropsProvider","TabsRootProvider","withProvider","withContext","createSlotRecipeContext","Tabs.RootProvider","Tabs.Root","TabsTrigger","Tabs.Trigger","TabsContent","Tabs.Content","TabsList","Tabs.List","Tabs.Indicator","tabNotificationCounterSize","tabLabelSize","Tab","iconName","iconPosition","label","notificationCounterProps","showNotificationCounter","size","rest","jsxs","Icon","Heading","NotificationCounter","Tabs","align","onChange","tabsContents","CTabs.Root","CTabs.List","index","tabContent","CTabs.Content"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { j as e } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
2
|
import T, { useCallback as g } from "react";
|
|
3
3
|
import { B as k } from "./button.component-DOAhnxbj.js";
|
|
4
|
-
import { W as N } from "./heading.component-
|
|
5
|
-
import { M as v } from "./menu.component-
|
|
6
|
-
import { S as w } from "./spinner.component-
|
|
4
|
+
import { W as N } from "./heading.component-73t_EqZx.js";
|
|
5
|
+
import { M as v } from "./menu.component-CYoNg8cG.js";
|
|
6
|
+
import { S as w } from "./spinner.component-katjnJzv.js";
|
|
7
7
|
import { T as W } from "./tag.component-BAH11mPX.js";
|
|
8
|
-
import { W as h } from "./text.component-
|
|
8
|
+
import { W as h } from "./text.component-DKtdjH7k.js";
|
|
9
9
|
import { B as s } from "./box-Ck9I7FYv.js";
|
|
10
10
|
import { F as n } from "./flex-smlF8uQG.js";
|
|
11
11
|
import { H as y } from "./h-stack-Ce6JSBK2.js";
|
|
@@ -166,4 +166,4 @@ export {
|
|
|
166
166
|
q as T,
|
|
167
167
|
d as a
|
|
168
168
|
};
|
|
169
|
-
//# sourceMappingURL=tagBlock.component-
|
|
169
|
+
//# sourceMappingURL=tagBlock.component-CF3z8rKF.js.map
|
package/dist/chunks/{tagBlock.component-CfxiQgjI.js.map → tagBlock.component-CF3z8rKF.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagBlock.component-CfxiQgjI.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = 'Inactive',\n Deleted = 'Deleted',\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { HStack } from '@chakra-ui/react/stack';\nimport { Button } from 'components/Button/button.component';\nimport { Heading } from 'components/Heading/heading.component';\nimport { Menu, MenuProps } from 'components/Menu/menu.component';\nimport { Spinner } from 'components/Spinner/spinner.component';\nimport { Tag } from 'components/Tag/tag.component';\nimport { Text } from 'components/Text/text.component';\nimport { TagBlockTag, TagDisabledState } from './tagBlock.types';\nimport { MenuButtonProps } from 'components/Menu/components/MenuButton/menuButton.components';\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: 'sm',\n variant: 'secondarySubtle',\n iconName: 'plus',\n text: 'Add',\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = 'This field contains an error',\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || '-';\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) || tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? 'text.placeholder' : 'text'}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : ''}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? 'hidden' : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box className=\"TagBlock__GroupTitle\" data-testid=\"kibble-tag-block-group-title\">\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text className=\"TagBlock__Error\" data-testid=\"kibble-tag-block-error\" mt={2} size=\"xs\" variant=\"danger\">\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":";;;;;;;;;;;AAAY,IAAAA,sBAAAA,OACVA,EAAA,WAAW,YACXA,EAAA,UAAU,WAFAA,IAAAA,KAAA,CAAA,CAAA;ACqCZ,MAAMC,IAA0C;AAAA,EAC9C,MAAM;AAAA,EACN,SAAS;AAAA,EACT,UAAU;AAAA,EACV,MAAM;AAAA,EACN,WAAW;AACb,GAEaC,IAAW,CAAC;AAAA,EACvB,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,MAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,YAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,WAAAC,IAAY;AAAA,EACZ,qBAAAC;AAAA,EACA,SAAAC,IAAU;AACZ,MAAwC;AACtC,QAAMC,IAAkBC;AAAA,IACtB,CAACC,MAAwB;AACvB,MAAIR,KACFA,EAAYQ,GAAOX,CAAI;AAAA,IAE3B;AAAA,IACA,CAACG,GAAaH,CAAI;AAAA,EACpB,GAEMY,IAAcC,EAAM,QAAQ,MAAM;AACtC,QAAI,CAACN;AACH,aAAO,CAAC;AAEV,UAAMO,IAAU,CAAC;AACjB,eAAWC,KAAOf,GAAM;AAChB,YAAAgB,IAAQD,EAAI,cAAc;AAC5B,MAACD,EAAQE,CAAK,MACRF,EAAAE,CAAK,IAAI,CAAC,IAEZF,EAAAE,CAAK,EAAE,KAAKD,CAAG;AAAA,IAAA;AAElB,WAAA,OAAO,QAAQD,CAAO,EAAE,IAAI,CAAC,CAACG,GAAYjB,CAAI,OAAO;AAAA,MAC1D,YAAAiB;AAAA,MACA,MAAAjB;AAAAA,IAAA,EACA;AAAA,EAAA,GACD,CAACA,GAAMO,CAAmB,CAAC,GAExBW,IAAaR;AAAA,IACjB,CAACV,MACQA,EAAK,IAAI,CAACe,MAAQ;AACjB,YAAAI,IACJJ,EAAI,MAAM,SAASpB,EAAiB,QAAQ,KAAKoB,EAAI,MAAM,SAASpB,EAAiB,OAAO;AAG5F,aAAAyB,gBAAAA,EAAA;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,eAAY;AAAA,UACZ,IAAI;AAAA,UACJ,IAAI;AAAA,UAEJ,OAAON,EAAI;AAAA,UACX,SAAS,MAAYN,EAAgBM,EAAI,KAAK;AAAA,UAC9C,oBAAmB;AAAA,UACnB,YAAW;AAAA,UACX,OAAOI,IAAa,qBAAqB;AAAA,UACzC,MAAK;AAAA,QAAA;AAAA,QANAJ,EAAI;AAAA,MAOX;AAAA,IAAA,CAEH;AAAA,IAEH,CAACN,CAAe;AAAA,EAClB;AAGE,SAAAa,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAY;AAAA,MACZ,UAAS;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAG;AAAA,MACH,cAAa;AAAA,MACb,WAAWlB,IAAW,iDAAiD;AAAA,MACvE,QAAO;AAAA,MACP,aAAY;AAAA,MACZ,UAAUG,IAAU,WAAW;AAAA,MAE/B,UAAA;AAAA,QAAAc,gBAAAA,EAAA;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,eAAY;AAAA,YACZ,gBAAe;AAAA,YAEf,UAAA;AAAA,cAAAF,gBAAAA,EAAA,KAACG,GAAO,EAAA,KAAK,GAAG,MAAM,IACnB,UAAA;AAAA,gBACC3B,KAAAsB,gBAAAA,EAAA,IAACM,KAAK,WAAU,mBAAkB,IAAI,GAAG,YAAW,QACjD,UACH5B,EAAA,CAAA;AAAA,gBAEFsB,gBAAAA,EAAA;AAAA,kBAACO;AAAA,kBAAA;AAAA,oBACC,eAAY;AAAA,oBACX,GAAG5B;AAAA,oBACJ,aAAaA,GAAW,eAAeH;AAAA,kBAAA;AAAA,gBACzC;AAAA,gBACAwB,gBAAAA,EAAA;AAAA,kBAACQ;AAAA,kBAAA;AAAA,oBACC,WAAU;AAAA,oBACV,eAAY;AAAA,oBACZ,MAAK;AAAA,oBACL,UAAS;AAAA,oBACT,SAAQ;AAAA,oBACR,SAAS1B;AAAA,oBACT,UAAUF,EAAK,UAAU;AAAA,oBAC1B,UAAA;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAED,GACF;AAAA,cACCC,2BACEsB,GACC,EAAA,UAAAH,gBAAAA,EAAA;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,WAAU;AAAA,kBACV,eAAY;AAAA,kBACZ,UAAS;AAAA,kBACT,SAAQ;AAAA,kBACR,SAASxB;AAAA,kBACT,aAAY;AAAA,gBAAA;AAAA,cAAA,EAEhB,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAEJ;AAAA,QACC,EAAQJ,EAAK,UACZoB,gBAAAA,EAAA;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,eAAY;AAAA,YACZ,IAAI;AAAA,YACJ,IAAI;AAAA,YACJ,cAAa;AAAA,YACb,UAAS;AAAA,YACT,gBAAe;AAAA,YACf,YAAW;AAAA,YAEV,eAAuBZ,EAAY,+BACjCY,GAAK,EAAA,WAAU,UACb,UAAYZ,EAAA,IAAI,CAAC,EAAE,YAAAK,GAAY,MAAAjB,QAC7BsB,gBAAAA,OAAAC,GAAA,EAAqB,IAAI,GACxB,UAAA;AAAA,cAAAH,gBAAAA,EAAA,IAACG,GAAI,EAAA,WAAU,wBAAuB,eAAY,gCAChD,UAAAH,gBAAAA,EAAA,IAACS,GAAQ,EAAA,MAAK,MAAK,IAAI,GACpB,UAAAZ,EACH,CAAA,GACF;AAAA,cACAG,gBAAAA,EAAA;AAAA,gBAACI;AAAA,gBAAA;AAAA,kBACC,cAAa;AAAA,kBACb,UAAS;AAAA,kBACT,gBAAe;AAAA,kBACf,YAAW;AAAA,kBAEV,YAAWxB,CAAI;AAAA,gBAAA;AAAA,cAAA;AAAA,YAClB,EAAA,GAbQiB,CAcV,CACD,GACH,IAEAC,EAAWlB,CAAI;AAAA,UAAA;AAAA,QAEnB;AAAA,QAEDQ,KAAWY,gBAAAA,EAAAA,IAACU,GAAQ,EAAA,YAAU,GAAC,CAAA;AAAA,QAC/BzB,KACCe,gBAAAA,EAAA,IAACM,GAAK,EAAA,WAAU,mBAAkB,eAAY,0BAAyB,IAAI,GAAG,MAAK,MAAK,SAAQ,UAC7F,UACHpB,EAAA,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"tagBlock.component-CF3z8rKF.js","sources":["../../src/components/TagBlock/tagBlock.types.ts","../../src/components/TagBlock/tagBlock.component.tsx"],"sourcesContent":["export enum TagDisabledState {\n Inactive = 'Inactive',\n Deleted = 'Deleted',\n}\n\nexport interface TagBlockTag {\n label: string;\n value: string;\n groupLabel?: string;\n}\n","import React, { useCallback } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { Flex } from '@chakra-ui/react/flex';\nimport { HStack } from '@chakra-ui/react/stack';\nimport { Button } from 'components/Button/button.component';\nimport { Heading } from 'components/Heading/heading.component';\nimport { Menu, MenuProps } from 'components/Menu/menu.component';\nimport { Spinner } from 'components/Spinner/spinner.component';\nimport { Tag } from 'components/Tag/tag.component';\nimport { Text } from 'components/Text/text.component';\nimport { TagBlockTag, TagDisabledState } from './tagBlock.types';\nimport { MenuButtonProps } from 'components/Menu/components/MenuButton/menuButton.components';\n\ninterface BaseTagBlockProps {\n displayTagsInGroups?: boolean;\n errorText?: string;\n hasError?: boolean;\n loading?: boolean;\n menuProps?: MenuProps;\n onClearAll?: () => void;\n onRemoveTag?: (tag: string, selectedTags: TagBlockTag[]) => void;\n tags: TagBlockTag[];\n title?: string;\n}\n\ninterface DefaultTagBlockProps extends BaseTagBlockProps {\n canBeDeleted?: false;\n onDelete?: never;\n}\n\ninterface DeletableTagBlockProps extends BaseTagBlockProps {\n canBeDeleted: true;\n onDelete: () => void;\n}\n\nexport type TagBlockProps = DefaultTagBlockProps | DeletableTagBlockProps;\n\nconst defaultMenuButtonProps: MenuButtonProps = {\n size: 'sm',\n variant: 'secondarySubtle',\n iconName: 'plus',\n text: 'Add',\n hideCaret: true,\n};\n\nexport const TagBlock = ({\n title,\n menuProps,\n tags,\n canBeDeleted = false,\n onClearAll,\n onRemoveTag,\n onDelete,\n hasError = false,\n errorText = 'This field contains an error',\n displayTagsInGroups,\n loading = false,\n}: TagBlockProps): React.JSX.Element => {\n const handleRemoveTag = useCallback(\n (value: string): void => {\n if (onRemoveTag) {\n onRemoveTag(value, tags);\n }\n },\n [onRemoveTag, tags],\n );\n\n const tagsByGroup = React.useMemo(() => {\n if (!displayTagsInGroups) {\n return [];\n }\n const grouped = {} as Record<string, TagBlockTag[]>;\n for (const tag of tags) {\n const group = tag.groupLabel || '-';\n if (!grouped[group]) {\n grouped[group] = [];\n }\n grouped[group].push(tag);\n }\n return Object.entries(grouped).map(([groupLabel, tags]) => ({\n groupLabel,\n tags,\n }));\n }, [tags, displayTagsInGroups]);\n\n const renderTags = useCallback(\n (tags: TagBlockTag[]) => {\n return tags.map((tag) => {\n const isDisabled =\n tag.label.includes(TagDisabledState.Inactive) || tag.label.includes(TagDisabledState.Deleted);\n\n return (\n <Tag\n className=\"TagBlock__Tag\"\n data-testid=\"kibble-tag-block-tag\"\n mr={1}\n mb={1}\n key={tag.value}\n label={tag.label}\n onClose={(): void => handleRemoveTag(tag.value)}\n closeButtonDisplay=\"always\"\n fontWeight=\"normal\"\n color={isDisabled ? 'text.placeholder' : 'text'}\n size=\"md\"\n />\n );\n });\n },\n [handleRemoveTag],\n );\n\n return (\n <Box\n className=\"TagBlock\"\n data-testid=\"kibble-tag-block\"\n position=\"relative\"\n mb={3}\n py={2}\n pl={4}\n pr={2}\n bg=\"background.subtle\"\n borderRadius=\"lg\"\n boxShadow={hasError ? `0 0 0 2px var(--chakra-colors-border-danger)` : ''}\n border=\"1px\"\n borderColor=\"border\"\n overflow={loading ? 'hidden' : undefined}\n >\n <Flex\n className=\"TagBlock__ButtonContainer\"\n data-testid=\"kibble-tag-block-button-container\"\n justifyContent=\"space-between\"\n >\n <HStack gap={1} minH={10}>\n {title && (\n <Text className=\"TagBlock__Title\" mr={2} fontWeight=\"bold\">\n {title}\n </Text>\n )}\n <Menu\n data-testid=\"kibble-tag-block-menu\"\n {...menuProps}\n buttonProps={menuProps?.buttonProps || defaultMenuButtonProps}\n />\n <Button\n className=\"TagBlock__Button--ClearAll\"\n data-testid=\"kibble-tag-block-clear-all-button\"\n size=\"sm\"\n iconName=\"arrowCircle\"\n variant=\"ghostNeutral\"\n onClick={onClearAll}\n disabled={tags.length <= 0}\n >\n Clear All\n </Button>\n </HStack>\n {canBeDeleted && (\n <Box>\n <Button\n className=\"TagBlock__Button--Delete\"\n data-testid=\"kibble-tag-block-delete-button\"\n iconName=\"trashcan\"\n variant=\"ghostNeutral\"\n onClick={onDelete}\n justifySelf=\"flex-end\"\n />\n </Box>\n )}\n </Flex>\n {Boolean(tags.length) && (\n <Flex\n className=\"TagBlock__TagContainer\"\n data-testid=\"kibble-tag-block-tag-container\"\n mt={2}\n pb={1}\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {displayTagsInGroups && tagsByGroup.length ? (\n <Flex direction=\"column\">\n {tagsByGroup.map(({ groupLabel, tags }) => (\n <Box key={groupLabel} mb={2}>\n <Box className=\"TagBlock__GroupTitle\" data-testid=\"kibble-tag-block-group-title\">\n <Heading size=\"xs\" pb={2}>\n {groupLabel}\n </Heading>\n </Box>\n <Flex\n alignContent=\"space-between\"\n flexWrap=\"wrap\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n >\n {renderTags(tags)}\n </Flex>\n </Box>\n ))}\n </Flex>\n ) : (\n renderTags(tags)\n )}\n </Flex>\n )}\n {loading && <Spinner fullScreen />}\n {hasError && (\n <Text className=\"TagBlock__Error\" data-testid=\"kibble-tag-block-error\" mt={2} size=\"xs\" variant=\"danger\">\n {errorText}\n </Text>\n )}\n </Box>\n );\n};\n"],"names":["TagDisabledState","defaultMenuButtonProps","TagBlock","title","menuProps","tags","canBeDeleted","onClearAll","onRemoveTag","onDelete","hasError","errorText","displayTagsInGroups","loading","handleRemoveTag","useCallback","value","tagsByGroup","React","grouped","tag","group","groupLabel","renderTags","isDisabled","jsx","Tag","jsxs","Box","Flex","HStack","Text","Menu","Button","Heading","Spinner"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as s } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
|
-
import { w as a } from "./withTruncation-
|
|
2
|
+
import { w as a } from "./withTruncation-CR8pGwFg.js";
|
|
3
3
|
import { c as r } from "./create-recipe-context-D7FewUR4.js";
|
|
4
4
|
const { withContext: x } = r({
|
|
5
5
|
key: "text"
|
|
@@ -9,4 +9,4 @@ const m = a(t);
|
|
|
9
9
|
export {
|
|
10
10
|
m as W
|
|
11
11
|
};
|
|
12
|
-
//# sourceMappingURL=text.component-
|
|
12
|
+
//# sourceMappingURL=text.component-DKtdjH7k.js.map
|