@seed-design/react 1.1.17 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/AspectRatio/AspectRatio.cjs +53 -0
- package/lib/components/AspectRatio/AspectRatio.d.ts +11 -0
- package/lib/components/AspectRatio/AspectRatio.d.ts.map +1 -0
- package/lib/components/AspectRatio/AspectRatio.js +30 -0
- package/lib/components/AspectRatio/index.cjs +9 -0
- package/lib/components/AspectRatio/index.d.ts +2 -0
- package/lib/components/AspectRatio/index.d.ts.map +1 -0
- package/lib/components/AspectRatio/index.js +1 -0
- package/lib/components/Avatar/Avatar.cjs +4 -10
- package/lib/components/Avatar/Avatar.d.ts +4 -4
- package/lib/components/Avatar/Avatar.d.ts.map +1 -1
- package/lib/components/Avatar/Avatar.js +4 -10
- package/lib/components/Checkbox/Checkbox.cjs +5 -0
- package/lib/components/Checkbox/Checkbox.d.ts +4 -0
- package/lib/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/lib/components/Checkbox/Checkbox.js +5 -1
- package/lib/components/Checkbox/Checkbox.namespace.cjs +1 -0
- package/lib/components/Checkbox/Checkbox.namespace.d.ts +1 -1
- package/lib/components/Checkbox/Checkbox.namespace.d.ts.map +1 -1
- package/lib/components/Checkbox/Checkbox.namespace.js +1 -1
- package/lib/components/Checkbox/index.cjs +1 -0
- package/lib/components/Checkbox/index.d.ts +1 -1
- package/lib/components/Checkbox/index.d.ts.map +1 -1
- package/lib/components/Checkbox/index.js +1 -1
- package/lib/components/Dialog/Dialog.d.ts.map +1 -1
- package/lib/components/Fieldset/Fieldset.cjs +86 -0
- package/lib/components/Fieldset/Fieldset.d.ts +30 -0
- package/lib/components/Fieldset/Fieldset.d.ts.map +1 -0
- package/lib/components/Fieldset/Fieldset.js +75 -0
- package/lib/components/Fieldset/Fieldset.namespace.cjs +16 -0
- package/lib/components/Fieldset/Fieldset.namespace.d.ts +2 -0
- package/lib/components/Fieldset/Fieldset.namespace.d.ts.map +1 -0
- package/lib/components/Fieldset/Fieldset.namespace.js +1 -0
- package/lib/components/Fieldset/index.cjs +18 -0
- package/lib/components/Fieldset/index.d.ts +3 -0
- package/lib/components/Fieldset/index.d.ts.map +1 -0
- package/lib/components/Fieldset/index.js +3 -0
- package/lib/components/Grid/Grid.cjs +56 -0
- package/lib/components/Grid/Grid.d.ts +41 -0
- package/lib/components/Grid/Grid.d.ts.map +1 -0
- package/lib/components/Grid/Grid.js +33 -0
- package/lib/components/Grid/index.cjs +9 -0
- package/lib/components/Grid/index.d.ts +2 -0
- package/lib/components/Grid/index.d.ts.map +1 -0
- package/lib/components/Grid/index.js +1 -0
- package/lib/components/GridItem/GridItem.cjs +45 -0
- package/lib/components/GridItem/GridItem.d.ts +35 -0
- package/lib/components/GridItem/GridItem.d.ts.map +1 -0
- package/lib/components/GridItem/GridItem.js +22 -0
- package/lib/components/GridItem/index.cjs +9 -0
- package/lib/components/GridItem/index.d.ts +2 -0
- package/lib/components/GridItem/index.d.ts.map +1 -0
- package/lib/components/GridItem/index.js +1 -0
- package/lib/components/HelpBubble/HelpBubble.cjs +5 -0
- package/lib/components/HelpBubble/HelpBubble.d.ts +3 -0
- package/lib/components/HelpBubble/HelpBubble.d.ts.map +1 -1
- package/lib/components/HelpBubble/HelpBubble.js +5 -1
- package/lib/components/HelpBubble/HelpBubble.namespace.cjs +1 -0
- package/lib/components/HelpBubble/HelpBubble.namespace.d.ts +1 -1
- package/lib/components/HelpBubble/HelpBubble.namespace.d.ts.map +1 -1
- package/lib/components/HelpBubble/HelpBubble.namespace.js +1 -1
- package/lib/components/HelpBubble/index.cjs +1 -0
- package/lib/components/HelpBubble/index.d.ts +1 -1
- package/lib/components/HelpBubble/index.d.ts.map +1 -1
- package/lib/components/HelpBubble/index.js +1 -1
- package/lib/components/ImageFrame/ImageFrame.cjs +157 -0
- package/lib/components/ImageFrame/ImageFrame.d.ts +51 -0
- package/lib/components/ImageFrame/ImageFrame.d.ts.map +1 -0
- package/lib/components/ImageFrame/ImageFrame.js +129 -0
- package/lib/components/ImageFrame/index.cjs +14 -0
- package/lib/components/ImageFrame/index.d.ts +2 -0
- package/lib/components/ImageFrame/index.d.ts.map +1 -0
- package/lib/components/ImageFrame/index.js +1 -0
- package/lib/components/MenuSheet/MenuSheet.cjs +60 -24
- package/lib/components/MenuSheet/MenuSheet.d.ts +12 -0
- package/lib/components/MenuSheet/MenuSheet.d.ts.map +1 -1
- package/lib/components/MenuSheet/MenuSheet.js +57 -25
- package/lib/components/MenuSheet/MenuSheet.namespace.cjs +4 -0
- package/lib/components/MenuSheet/MenuSheet.namespace.d.ts +1 -1
- package/lib/components/MenuSheet/MenuSheet.namespace.d.ts.map +1 -1
- package/lib/components/MenuSheet/MenuSheet.namespace.js +1 -1
- package/lib/components/MenuSheet/index.cjs +4 -0
- package/lib/components/MenuSheet/index.d.ts +1 -1
- package/lib/components/MenuSheet/index.d.ts.map +1 -1
- package/lib/components/MenuSheet/index.js +1 -1
- package/lib/components/RadioGroup/RadioGroup.cjs +4 -1
- package/lib/components/RadioGroup/RadioGroup.d.ts +3 -2
- package/lib/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/lib/components/RadioGroup/RadioGroup.js +4 -1
- package/lib/components/RadioGroupField/RadioGroupField.cjs +79 -0
- package/lib/components/RadioGroupField/RadioGroupField.d.ts +30 -0
- package/lib/components/RadioGroupField/RadioGroupField.d.ts.map +1 -0
- package/lib/components/RadioGroupField/RadioGroupField.js +68 -0
- package/lib/components/RadioGroupField/RadioGroupField.namespace.cjs +16 -0
- package/lib/components/RadioGroupField/RadioGroupField.namespace.d.ts +2 -0
- package/lib/components/RadioGroupField/RadioGroupField.namespace.d.ts.map +1 -0
- package/lib/components/RadioGroupField/RadioGroupField.namespace.js +1 -0
- package/lib/components/RadioGroupField/index.cjs +18 -0
- package/lib/components/RadioGroupField/index.d.ts +3 -0
- package/lib/components/RadioGroupField/index.d.ts.map +1 -0
- package/lib/components/RadioGroupField/index.js +3 -0
- package/lib/components/SelectBox/CheckSelectBox.cjs +117 -8
- package/lib/components/SelectBox/CheckSelectBox.d.ts +38 -10
- package/lib/components/SelectBox/CheckSelectBox.d.ts.map +1 -1
- package/lib/components/SelectBox/CheckSelectBox.js +113 -10
- package/lib/components/SelectBox/CheckSelectBox.namespace.cjs +6 -0
- package/lib/components/SelectBox/CheckSelectBox.namespace.d.ts +1 -1
- package/lib/components/SelectBox/CheckSelectBox.namespace.d.ts.map +1 -1
- package/lib/components/SelectBox/CheckSelectBox.namespace.js +1 -1
- package/lib/components/SelectBox/RadioSelectBox.cjs +112 -9
- package/lib/components/SelectBox/RadioSelectBox.d.ts +31 -7
- package/lib/components/SelectBox/RadioSelectBox.d.ts.map +1 -1
- package/lib/components/SelectBox/RadioSelectBox.js +109 -10
- package/lib/components/SelectBox/RadioSelectBox.namespace.cjs +5 -1
- package/lib/components/SelectBox/RadioSelectBox.namespace.d.ts +1 -1
- package/lib/components/SelectBox/RadioSelectBox.namespace.d.ts.map +1 -1
- package/lib/components/SelectBox/RadioSelectBox.namespace.js +1 -1
- package/lib/components/SelectBox/index.cjs +11 -1
- package/lib/components/SelectBox/index.d.ts +2 -2
- package/lib/components/SelectBox/index.d.ts.map +1 -1
- package/lib/components/SelectBox/index.js +2 -2
- package/lib/components/Switch/Switch.cjs +5 -5
- package/lib/components/Switch/Switch.d.ts +3 -3
- package/lib/components/Switch/Switch.d.ts.map +1 -1
- package/lib/components/Switch/Switch.js +5 -5
- package/lib/components/TagGroup/TagGroup.cjs +25 -9
- package/lib/components/TagGroup/TagGroup.d.ts +5 -1
- package/lib/components/TagGroup/TagGroup.d.ts.map +1 -1
- package/lib/components/TagGroup/TagGroup.js +25 -10
- package/lib/components/TagGroup/TagGroup.namespace.cjs +1 -0
- package/lib/components/TagGroup/TagGroup.namespace.d.ts +1 -1
- package/lib/components/TagGroup/TagGroup.namespace.d.ts.map +1 -1
- package/lib/components/TagGroup/TagGroup.namespace.js +1 -1
- package/lib/components/TagGroup/index.cjs +1 -0
- package/lib/components/TagGroup/index.d.ts +1 -1
- package/lib/components/TagGroup/index.d.ts.map +1 -1
- package/lib/components/TagGroup/index.js +1 -1
- package/lib/components/index.cjs +53 -1
- package/lib/components/index.d.ts +6 -0
- package/lib/components/index.d.ts.map +1 -1
- package/lib/components/index.js +16 -6
- package/lib/index.cjs +53 -1
- package/lib/index.js +16 -6
- package/lib/utils/styled.cjs +6 -0
- package/lib/utils/styled.d.ts +6 -0
- package/lib/utils/styled.d.ts.map +1 -1
- package/lib/utils/styled.js +6 -0
- package/package.json +5 -2
- package/src/components/AspectRatio/AspectRatio.tsx +38 -0
- package/src/components/AspectRatio/index.ts +1 -0
- package/src/components/Avatar/Avatar.tsx +7 -14
- package/src/components/Checkbox/Checkbox.namespace.ts +2 -0
- package/src/components/Checkbox/Checkbox.tsx +15 -0
- package/src/components/Checkbox/index.ts +2 -0
- package/src/components/Dialog/Dialog.tsx +6 -0
- package/src/components/Fieldset/Fieldset.namespace.ts +17 -0
- package/src/components/Fieldset/Fieldset.tsx +101 -0
- package/src/components/Fieldset/index.ts +19 -0
- package/src/components/Grid/Grid.tsx +79 -0
- package/src/components/Grid/index.ts +1 -0
- package/src/components/GridItem/GridItem.tsx +70 -0
- package/src/components/GridItem/index.ts +1 -0
- package/src/components/HelpBubble/HelpBubble.namespace.ts +3 -0
- package/src/components/HelpBubble/HelpBubble.tsx +7 -2
- package/src/components/HelpBubble/index.ts +2 -0
- package/src/components/ImageFrame/ImageFrame.tsx +227 -0
- package/src/components/ImageFrame/index.ts +14 -0
- package/src/components/MenuSheet/MenuSheet.namespace.ts +8 -0
- package/src/components/MenuSheet/MenuSheet.tsx +82 -34
- package/src/components/MenuSheet/index.ts +8 -0
- package/src/components/RadioGroup/RadioGroup.tsx +8 -2
- package/src/components/RadioGroupField/RadioGroupField.namespace.ts +18 -0
- package/src/components/RadioGroupField/RadioGroupField.tsx +114 -0
- package/src/components/RadioGroupField/index.ts +2 -0
- package/src/components/SelectBox/CheckSelectBox.namespace.ts +12 -0
- package/src/components/SelectBox/CheckSelectBox.tsx +229 -24
- package/src/components/SelectBox/RadioSelectBox.namespace.ts +10 -2
- package/src/components/SelectBox/RadioSelectBox.tsx +210 -16
- package/src/components/SelectBox/index.ts +22 -2
- package/src/components/Switch/Switch.tsx +7 -7
- package/src/components/TagGroup/TagGroup.namespace.ts +2 -0
- package/src/components/TagGroup/TagGroup.tsx +33 -9
- package/src/components/TagGroup/index.ts +2 -0
- package/src/components/index.ts +6 -0
- package/src/utils/styled.tsx +18 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
const field = require('@seed-design/css/recipes/field');
|
|
8
|
+
const fieldLabel = require('@seed-design/css/recipes/field-label');
|
|
9
|
+
const reactPrimitive = require('@seed-design/react-primitive');
|
|
10
|
+
const reactRadioGroup = require('@seed-design/react-radio-group');
|
|
11
|
+
const React = require('react');
|
|
12
|
+
const clsx = require('clsx');
|
|
13
|
+
const createSlotRecipeContext = require('../../utils/createSlotRecipeContext.cjs');
|
|
14
|
+
const Icon = require('../private/Icon.cjs');
|
|
15
|
+
|
|
16
|
+
const { withProvider, withContext } = createSlotRecipeContext.createSlotRecipeContext(field.field);
|
|
17
|
+
const {
|
|
18
|
+
withContext: withLabelContext,
|
|
19
|
+
withProvider: withLabelProvider,
|
|
20
|
+
useClassNames: useLabelClassNames
|
|
21
|
+
} = createSlotRecipeContext.createSlotRecipeContext(fieldLabel.fieldLabel);
|
|
22
|
+
const RadioGroupFieldRoot = withProvider(
|
|
23
|
+
reactRadioGroup.RadioGroup.Root,
|
|
24
|
+
"root"
|
|
25
|
+
);
|
|
26
|
+
const RadioGroupFieldHeader = withContext(
|
|
27
|
+
reactPrimitive.Primitive.div,
|
|
28
|
+
"header"
|
|
29
|
+
);
|
|
30
|
+
const RadioGroupFieldLabel = withLabelProvider(
|
|
31
|
+
reactRadioGroup.RadioGroup.Label,
|
|
32
|
+
"root"
|
|
33
|
+
);
|
|
34
|
+
const RadioGroupFieldIndicatorText = withLabelContext(reactPrimitive.Primitive.span, "indicatorText");
|
|
35
|
+
const RadioGroupFieldRequiredIndicator = React.forwardRef(({ className, ...props }, ref) => {
|
|
36
|
+
const { indicatorIcon } = useLabelClassNames();
|
|
37
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
38
|
+
Icon.InternalIcon,
|
|
39
|
+
{
|
|
40
|
+
svg: (
|
|
41
|
+
// biome-ignore lint/a11y/noSvgWithoutTitle: InternalIcon is aria-hidden
|
|
42
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
43
|
+
"svg",
|
|
44
|
+
{
|
|
45
|
+
viewBox: "0 0 6 6",
|
|
46
|
+
fill: "none",
|
|
47
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
48
|
+
className: clsx(indicatorIcon, className),
|
|
49
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
50
|
+
"path",
|
|
51
|
+
{
|
|
52
|
+
d: "M3.75002 1.55859L4.41318 1.09468C4.75243 0.857361 5.21982 0.939865 5.45732 1.27899C5.69499 1.61836 5.61243 2.08615 5.27295 2.32366L4.30763 2.99902L5.27372 3.67612C5.61285 3.91381 5.69517 4.38137 5.45761 4.72059C5.21999 5.0599 4.7523 5.14233 4.41299 4.90471L3.75002 4.44043V5.25C3.75002 5.66421 3.41423 6 3.00002 6C2.5858 6 2.25002 5.66421 2.25002 5.25V4.44043L1.58704 4.90471C1.24773 5.14233 0.780041 5.0599 0.542418 4.72059C0.304856 4.38137 0.387176 3.91381 0.726309 3.67612L1.6924 2.99902L0.727079 2.32366C0.387603 2.08615 0.305043 1.61836 0.542707 1.27899C0.780206 0.939865 1.2476 0.857361 1.58685 1.09468L2.25002 1.55859V0.75C2.25002 0.335786 2.5858 0 3.00002 0C3.41423 0 3.75002 0.335786 3.75002 0.75V1.55859Z",
|
|
53
|
+
fill: "currentColor"
|
|
54
|
+
}
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
),
|
|
59
|
+
ref,
|
|
60
|
+
...props
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
});
|
|
64
|
+
RadioGroupFieldRequiredIndicator.displayName = "RadioGroupFieldRequiredIndicator";
|
|
65
|
+
const RadioGroupFieldFooter = withContext(
|
|
66
|
+
reactPrimitive.Primitive.div,
|
|
67
|
+
"footer"
|
|
68
|
+
);
|
|
69
|
+
const RadioGroupFieldDescription = withContext(reactRadioGroup.RadioGroup.Description, "description");
|
|
70
|
+
const RadioGroupFieldErrorMessage = withContext(reactRadioGroup.RadioGroup.ErrorMessage, "errorMessage");
|
|
71
|
+
|
|
72
|
+
exports.RadioGroupFieldDescription = RadioGroupFieldDescription;
|
|
73
|
+
exports.RadioGroupFieldErrorMessage = RadioGroupFieldErrorMessage;
|
|
74
|
+
exports.RadioGroupFieldFooter = RadioGroupFieldFooter;
|
|
75
|
+
exports.RadioGroupFieldHeader = RadioGroupFieldHeader;
|
|
76
|
+
exports.RadioGroupFieldIndicatorText = RadioGroupFieldIndicatorText;
|
|
77
|
+
exports.RadioGroupFieldLabel = RadioGroupFieldLabel;
|
|
78
|
+
exports.RadioGroupFieldRequiredIndicator = RadioGroupFieldRequiredIndicator;
|
|
79
|
+
exports.RadioGroupFieldRoot = RadioGroupFieldRoot;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { FieldVariantProps } from '@seed-design/css/recipes/field';
|
|
2
|
+
import { FieldLabelVariantProps } from '@seed-design/css/recipes/field-label';
|
|
3
|
+
import { PrimitiveProps } from '@seed-design/react-primitive';
|
|
4
|
+
import { RadioGroup as RadioGroupPrimitive } from '@seed-design/react-radio-group';
|
|
5
|
+
import type * as React from "react";
|
|
6
|
+
export interface RadioGroupFieldRootProps extends FieldVariantProps, RadioGroupPrimitive.RootProps {
|
|
7
|
+
}
|
|
8
|
+
export declare const RadioGroupFieldRoot: React.ForwardRefExoticComponent<RadioGroupFieldRootProps & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
+
export interface RadioGroupFieldHeaderProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
10
|
+
}
|
|
11
|
+
export declare const RadioGroupFieldHeader: React.ForwardRefExoticComponent<RadioGroupFieldHeaderProps & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
export interface RadioGroupFieldLabelProps extends FieldLabelVariantProps, RadioGroupPrimitive.LabelProps {
|
|
13
|
+
}
|
|
14
|
+
export declare const RadioGroupFieldLabel: React.ForwardRefExoticComponent<RadioGroupFieldLabelProps & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export interface RadioGroupFieldIndicatorTextProps extends PrimitiveProps, React.HTMLAttributes<HTMLSpanElement> {
|
|
16
|
+
}
|
|
17
|
+
export declare const RadioGroupFieldIndicatorText: React.ForwardRefExoticComponent<RadioGroupFieldIndicatorTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
18
|
+
export interface RadioGroupFieldRequiredIndicatorProps extends React.SVGProps<SVGElement> {
|
|
19
|
+
}
|
|
20
|
+
export declare const RadioGroupFieldRequiredIndicator: React.ForwardRefExoticComponent<Omit<RadioGroupFieldRequiredIndicatorProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
|
|
21
|
+
export interface RadioGroupFieldFooterProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
22
|
+
}
|
|
23
|
+
export declare const RadioGroupFieldFooter: React.ForwardRefExoticComponent<RadioGroupFieldFooterProps & React.RefAttributes<HTMLDivElement>>;
|
|
24
|
+
export interface RadioGroupFieldDescriptionProps extends RadioGroupPrimitive.DescriptionProps {
|
|
25
|
+
}
|
|
26
|
+
export declare const RadioGroupFieldDescription: React.ForwardRefExoticComponent<RadioGroupFieldDescriptionProps & React.RefAttributes<HTMLSpanElement>>;
|
|
27
|
+
export interface RadioGroupFieldErrorMessageProps extends RadioGroupPrimitive.ErrorMessageProps {
|
|
28
|
+
}
|
|
29
|
+
export declare const RadioGroupFieldErrorMessage: React.ForwardRefExoticComponent<RadioGroupFieldErrorMessageProps & React.RefAttributes<HTMLDivElement>>;
|
|
30
|
+
//# sourceMappingURL=RadioGroupField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroupField.d.ts","sourceRoot":"","sources":["../../../src/components/RadioGroupField/RadioGroupField.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAc,KAAK,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAepC,MAAM,WAAW,wBACf,SAAQ,iBAAiB,EACvB,mBAAmB,CAAC,SAAS;CAAG;AAEpC,eAAO,MAAM,mBAAmB,iGAG/B,CAAC;AAIF,MAAM,WAAW,0BACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,qBAAqB,mGAGjC,CAAC;AAEF,MAAM,WAAW,yBACf,SAAQ,sBAAsB,EAC5B,mBAAmB,CAAC,UAAU;CAAG;AAErC,eAAO,MAAM,oBAAoB,kGAGhC,CAAC;AAEF,MAAM,WAAW,iCACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;CAAG;AAE5C,eAAO,MAAM,4BAA4B,2GAGP,CAAC;AAEnC,MAAM,WAAW,qCAAsC,SAAQ,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;CAAG;AAE5F,eAAO,MAAM,gCAAgC,0HA0B3C,CAAC;AAKH,MAAM,WAAW,0BACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,qBAAqB,mGAGjC,CAAC;AAEF,MAAM,WAAW,+BAAgC,SAAQ,mBAAmB,CAAC,gBAAgB;CAAG;AAEhG,eAAO,MAAM,0BAA0B,yGAGU,CAAC;AAElD,MAAM,WAAW,gCAAiC,SAAQ,mBAAmB,CAAC,iBAAiB;CAAG;AAElG,eAAO,MAAM,2BAA2B,yGAGW,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { field } from '@seed-design/css/recipes/field';
|
|
4
|
+
import { fieldLabel } from '@seed-design/css/recipes/field-label';
|
|
5
|
+
import { Primitive } from '@seed-design/react-primitive';
|
|
6
|
+
import { RadioGroup } from '@seed-design/react-radio-group';
|
|
7
|
+
import { forwardRef } from 'react';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
|
+
import { createSlotRecipeContext } from '../../utils/createSlotRecipeContext.js';
|
|
10
|
+
import { InternalIcon } from '../private/Icon.js';
|
|
11
|
+
|
|
12
|
+
const { withProvider, withContext } = createSlotRecipeContext(field);
|
|
13
|
+
const {
|
|
14
|
+
withContext: withLabelContext,
|
|
15
|
+
withProvider: withLabelProvider,
|
|
16
|
+
useClassNames: useLabelClassNames
|
|
17
|
+
} = createSlotRecipeContext(fieldLabel);
|
|
18
|
+
const RadioGroupFieldRoot = withProvider(
|
|
19
|
+
RadioGroup.Root,
|
|
20
|
+
"root"
|
|
21
|
+
);
|
|
22
|
+
const RadioGroupFieldHeader = withContext(
|
|
23
|
+
Primitive.div,
|
|
24
|
+
"header"
|
|
25
|
+
);
|
|
26
|
+
const RadioGroupFieldLabel = withLabelProvider(
|
|
27
|
+
RadioGroup.Label,
|
|
28
|
+
"root"
|
|
29
|
+
);
|
|
30
|
+
const RadioGroupFieldIndicatorText = withLabelContext(Primitive.span, "indicatorText");
|
|
31
|
+
const RadioGroupFieldRequiredIndicator = forwardRef(({ className, ...props }, ref) => {
|
|
32
|
+
const { indicatorIcon } = useLabelClassNames();
|
|
33
|
+
return /* @__PURE__ */ jsx(
|
|
34
|
+
InternalIcon,
|
|
35
|
+
{
|
|
36
|
+
svg: (
|
|
37
|
+
// biome-ignore lint/a11y/noSvgWithoutTitle: InternalIcon is aria-hidden
|
|
38
|
+
/* @__PURE__ */ jsx(
|
|
39
|
+
"svg",
|
|
40
|
+
{
|
|
41
|
+
viewBox: "0 0 6 6",
|
|
42
|
+
fill: "none",
|
|
43
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
44
|
+
className: clsx(indicatorIcon, className),
|
|
45
|
+
children: /* @__PURE__ */ jsx(
|
|
46
|
+
"path",
|
|
47
|
+
{
|
|
48
|
+
d: "M3.75002 1.55859L4.41318 1.09468C4.75243 0.857361 5.21982 0.939865 5.45732 1.27899C5.69499 1.61836 5.61243 2.08615 5.27295 2.32366L4.30763 2.99902L5.27372 3.67612C5.61285 3.91381 5.69517 4.38137 5.45761 4.72059C5.21999 5.0599 4.7523 5.14233 4.41299 4.90471L3.75002 4.44043V5.25C3.75002 5.66421 3.41423 6 3.00002 6C2.5858 6 2.25002 5.66421 2.25002 5.25V4.44043L1.58704 4.90471C1.24773 5.14233 0.780041 5.0599 0.542418 4.72059C0.304856 4.38137 0.387176 3.91381 0.726309 3.67612L1.6924 2.99902L0.727079 2.32366C0.387603 2.08615 0.305043 1.61836 0.542707 1.27899C0.780206 0.939865 1.2476 0.857361 1.58685 1.09468L2.25002 1.55859V0.75C2.25002 0.335786 2.5858 0 3.00002 0C3.41423 0 3.75002 0.335786 3.75002 0.75V1.55859Z",
|
|
49
|
+
fill: "currentColor"
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
}
|
|
53
|
+
)
|
|
54
|
+
),
|
|
55
|
+
ref,
|
|
56
|
+
...props
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
});
|
|
60
|
+
RadioGroupFieldRequiredIndicator.displayName = "RadioGroupFieldRequiredIndicator";
|
|
61
|
+
const RadioGroupFieldFooter = withContext(
|
|
62
|
+
Primitive.div,
|
|
63
|
+
"footer"
|
|
64
|
+
);
|
|
65
|
+
const RadioGroupFieldDescription = withContext(RadioGroup.Description, "description");
|
|
66
|
+
const RadioGroupFieldErrorMessage = withContext(RadioGroup.ErrorMessage, "errorMessage");
|
|
67
|
+
|
|
68
|
+
export { RadioGroupFieldDescription, RadioGroupFieldErrorMessage, RadioGroupFieldFooter, RadioGroupFieldHeader, RadioGroupFieldIndicatorText, RadioGroupFieldLabel, RadioGroupFieldRequiredIndicator, RadioGroupFieldRoot };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const RadioGroupField = require('./RadioGroupField.cjs');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
exports.Description = RadioGroupField.RadioGroupFieldDescription;
|
|
10
|
+
exports.ErrorMessage = RadioGroupField.RadioGroupFieldErrorMessage;
|
|
11
|
+
exports.Footer = RadioGroupField.RadioGroupFieldFooter;
|
|
12
|
+
exports.Header = RadioGroupField.RadioGroupFieldHeader;
|
|
13
|
+
exports.IndicatorText = RadioGroupField.RadioGroupFieldIndicatorText;
|
|
14
|
+
exports.Label = RadioGroupField.RadioGroupFieldLabel;
|
|
15
|
+
exports.RequiredIndicator = RadioGroupField.RadioGroupFieldRequiredIndicator;
|
|
16
|
+
exports.Root = RadioGroupField.RadioGroupFieldRoot;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { RadioGroupFieldRoot as Root, RadioGroupFieldHeader as Header, RadioGroupFieldLabel as Label, RadioGroupFieldIndicatorText as IndicatorText, RadioGroupFieldRequiredIndicator as RequiredIndicator, RadioGroupFieldFooter as Footer, RadioGroupFieldDescription as Description, RadioGroupFieldErrorMessage as ErrorMessage, type RadioGroupFieldRootProps as RootProps, type RadioGroupFieldHeaderProps as HeaderProps, type RadioGroupFieldLabelProps as LabelProps, type RadioGroupFieldIndicatorTextProps as IndicatorTextProps, type RadioGroupFieldRequiredIndicatorProps as RequiredIndicatorProps, type RadioGroupFieldFooterProps as FooterProps, type RadioGroupFieldDescriptionProps as DescriptionProps, type RadioGroupFieldErrorMessageProps as ErrorMessageProps, } from './RadioGroupField';
|
|
2
|
+
//# sourceMappingURL=RadioGroupField.namespace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroupField.namespace.d.ts","sourceRoot":"","sources":["../../../src/components/RadioGroupField/RadioGroupField.namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,IAAI,IAAI,EAC3B,qBAAqB,IAAI,MAAM,EAC/B,oBAAoB,IAAI,KAAK,EAC7B,4BAA4B,IAAI,aAAa,EAC7C,gCAAgC,IAAI,iBAAiB,EACrD,qBAAqB,IAAI,MAAM,EAC/B,0BAA0B,IAAI,WAAW,EACzC,2BAA2B,IAAI,YAAY,EAC3C,KAAK,wBAAwB,IAAI,SAAS,EAC1C,KAAK,0BAA0B,IAAI,WAAW,EAC9C,KAAK,yBAAyB,IAAI,UAAU,EAC5C,KAAK,iCAAiC,IAAI,kBAAkB,EAC5D,KAAK,qCAAqC,IAAI,sBAAsB,EACpE,KAAK,0BAA0B,IAAI,WAAW,EAC9C,KAAK,+BAA+B,IAAI,gBAAgB,EACxD,KAAK,gCAAgC,IAAI,iBAAiB,GAC3D,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { RadioGroupFieldDescription as Description, RadioGroupFieldErrorMessage as ErrorMessage, RadioGroupFieldFooter as Footer, RadioGroupFieldHeader as Header, RadioGroupFieldIndicatorText as IndicatorText, RadioGroupFieldLabel as Label, RadioGroupFieldRequiredIndicator as RequiredIndicator, RadioGroupFieldRoot as Root } from './RadioGroupField.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const RadioGroupField = require('./RadioGroupField.cjs');
|
|
6
|
+
const RadioGroupField_namespace = require('./RadioGroupField.namespace.cjs');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
exports.RadioGroupFieldDescription = RadioGroupField.RadioGroupFieldDescription;
|
|
11
|
+
exports.RadioGroupFieldErrorMessage = RadioGroupField.RadioGroupFieldErrorMessage;
|
|
12
|
+
exports.RadioGroupFieldFooter = RadioGroupField.RadioGroupFieldFooter;
|
|
13
|
+
exports.RadioGroupFieldHeader = RadioGroupField.RadioGroupFieldHeader;
|
|
14
|
+
exports.RadioGroupFieldIndicatorText = RadioGroupField.RadioGroupFieldIndicatorText;
|
|
15
|
+
exports.RadioGroupFieldLabel = RadioGroupField.RadioGroupFieldLabel;
|
|
16
|
+
exports.RadioGroupFieldRequiredIndicator = RadioGroupField.RadioGroupFieldRequiredIndicator;
|
|
17
|
+
exports.RadioGroupFieldRoot = RadioGroupField.RadioGroupFieldRoot;
|
|
18
|
+
exports.RadioGroupField = RadioGroupField_namespace;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/RadioGroupField/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { RadioGroupFieldDescription, RadioGroupFieldErrorMessage, RadioGroupFieldFooter, RadioGroupFieldHeader, RadioGroupFieldIndicatorText, RadioGroupFieldLabel, RadioGroupFieldRequiredIndicator, RadioGroupFieldRoot } from './RadioGroupField.js';
|
|
2
|
+
import * as RadioGroupField_namespace from './RadioGroupField.namespace.js';
|
|
3
|
+
export { RadioGroupField_namespace as RadioGroupField };
|
|
@@ -4,37 +4,146 @@
|
|
|
4
4
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
5
|
|
|
6
6
|
const jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
const reactComposeRefs = require('@radix-ui/react-compose-refs');
|
|
7
8
|
const selectBox = require('@seed-design/css/recipes/select-box');
|
|
9
|
+
const selectBoxCheckmark = require('@seed-design/css/recipes/selectBoxCheckmark');
|
|
8
10
|
const selectBoxGroup = require('@seed-design/css/recipes/select-box-group');
|
|
9
11
|
const reactCheckbox = require('@seed-design/react-checkbox');
|
|
12
|
+
const reactCollapsible = require('@seed-design/react-collapsible');
|
|
10
13
|
const reactPrimitive = require('@seed-design/react-primitive');
|
|
14
|
+
const clsx = require('clsx');
|
|
11
15
|
const React = require('react');
|
|
12
|
-
const createRecipeContext = require('../../utils/createRecipeContext.cjs');
|
|
13
16
|
const createSlotRecipeContext = require('../../utils/createSlotRecipeContext.cjs');
|
|
14
17
|
const createWithStateProps = require('../../utils/createWithStateProps.cjs');
|
|
18
|
+
const Icon = require('../private/Icon.cjs');
|
|
15
19
|
|
|
16
|
-
const { withContext
|
|
17
|
-
const { withContext, withProvider } = createSlotRecipeContext.createSlotRecipeContext(selectBox.selectBox);
|
|
20
|
+
const { PropsProvider, ClassNamesProvider, withContext, useProps, useClassNames } = createSlotRecipeContext.createSlotRecipeContext(selectBox.selectBox);
|
|
18
21
|
const withStateProps = createWithStateProps.createWithStateProps([reactCheckbox.useCheckboxContext]);
|
|
19
|
-
const
|
|
20
|
-
|
|
22
|
+
const FooterContext = React.createContext(null);
|
|
23
|
+
const CheckSelectBoxGroup = React.forwardRef(
|
|
24
|
+
({ columns = 1, className, style, ...props }, ref) => {
|
|
25
|
+
const [variantProps, otherProps] = selectBoxGroup.selectBoxGroup.splitVariantProps(props);
|
|
26
|
+
const recipeClassName = selectBoxGroup.selectBoxGroup(variantProps);
|
|
27
|
+
const layout = columns === 1 ? "horizontal" : "vertical";
|
|
28
|
+
return /* @__PURE__ */ jsxRuntime.jsx(PropsProvider, { value: { layout }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
29
|
+
reactPrimitive.Primitive.div,
|
|
30
|
+
{
|
|
31
|
+
ref,
|
|
32
|
+
"data-columns": columns,
|
|
33
|
+
className: clsx(recipeClassName, className),
|
|
34
|
+
style: {
|
|
35
|
+
...style,
|
|
36
|
+
"--seed-select-box-group--columns": columns
|
|
37
|
+
},
|
|
38
|
+
...otherProps
|
|
39
|
+
}
|
|
40
|
+
) });
|
|
41
|
+
}
|
|
21
42
|
);
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
43
|
+
function FooterVisibilityProvider({
|
|
44
|
+
children,
|
|
45
|
+
footerVisibility
|
|
46
|
+
}) {
|
|
47
|
+
const { checked } = reactCheckbox.useCheckboxContext();
|
|
48
|
+
const collapsible = reactCollapsible.useCollapsible({
|
|
49
|
+
open: {
|
|
50
|
+
"when-selected": checked,
|
|
51
|
+
"when-not-selected": !checked
|
|
52
|
+
}[footerVisibility]
|
|
53
|
+
});
|
|
54
|
+
const [isFooterRendered, setIsFooterRendered] = React.useState(false);
|
|
55
|
+
const footerRef = React.useCallback((node) => {
|
|
56
|
+
setIsFooterRendered(!!node);
|
|
57
|
+
}, []);
|
|
58
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactCollapsible.CollapsibleProvider, { value: collapsible, children: /* @__PURE__ */ jsxRuntime.jsx(FooterContext.Provider, { value: { isFooterRendered, footerRef, footerVisibility }, children }) });
|
|
59
|
+
}
|
|
60
|
+
const CheckSelectBoxRoot = React.forwardRef(
|
|
61
|
+
({ footerVisibility = "when-selected", className, children, ...props }, ref) => {
|
|
62
|
+
const [variantProps, otherProps] = selectBox.selectBox.splitVariantProps(props);
|
|
63
|
+
const classNames = selectBox.selectBox({
|
|
64
|
+
...useProps(),
|
|
65
|
+
...variantProps
|
|
66
|
+
});
|
|
67
|
+
return /* @__PURE__ */ jsxRuntime.jsx(ClassNamesProvider, { value: classNames, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
68
|
+
reactCheckbox.Checkbox.Root,
|
|
69
|
+
{
|
|
70
|
+
ref,
|
|
71
|
+
className: clsx(classNames.root, className),
|
|
72
|
+
...otherProps,
|
|
73
|
+
children: footerVisibility === "always" ? children : /* @__PURE__ */ jsxRuntime.jsx(FooterVisibilityProvider, { footerVisibility, children })
|
|
74
|
+
}
|
|
75
|
+
) });
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
const CheckSelectBoxTrigger = withContext(
|
|
79
|
+
withStateProps(reactPrimitive.Primitive.div),
|
|
80
|
+
"trigger"
|
|
25
81
|
);
|
|
26
82
|
const CheckSelectBoxContent = withContext(
|
|
27
83
|
withStateProps(reactPrimitive.Primitive.div),
|
|
28
84
|
"content"
|
|
29
85
|
);
|
|
86
|
+
const CheckSelectBoxBody = withContext(
|
|
87
|
+
withStateProps(reactPrimitive.Primitive.div),
|
|
88
|
+
"body"
|
|
89
|
+
);
|
|
30
90
|
const CheckSelectBoxLabel = withContext(
|
|
31
91
|
withStateProps(reactPrimitive.Primitive.div),
|
|
32
92
|
"label"
|
|
33
93
|
);
|
|
34
94
|
const CheckSelectBoxDescription = withContext(withStateProps(reactPrimitive.Primitive.div), "description");
|
|
95
|
+
const { withProvider: withCheckmarkProvider, withContext: withCheckmarkContext } = createSlotRecipeContext.createSlotRecipeContext(selectBoxCheckmark.selectBoxCheckmark);
|
|
96
|
+
const withCheckmarkStateProps = createWithStateProps.createWithStateProps([reactCheckbox.useCheckboxContext]);
|
|
97
|
+
const CheckSelectBoxCheckmarkControl = withCheckmarkProvider(reactCheckbox.Checkbox.Control, "root");
|
|
98
|
+
const CheckSelectBoxCheckmarkIcon = withCheckmarkContext(withCheckmarkStateProps(Icon.InternalIcon), "icon");
|
|
99
|
+
const CheckSelectBoxHiddenInput = React.forwardRef((props, ref) => {
|
|
100
|
+
const collapsibleContext = reactCollapsible.useCollapsibleContext({ strict: false });
|
|
101
|
+
const footerContext = React.useContext(FooterContext);
|
|
102
|
+
const triggerAriaProps = footerContext?.isFooterRendered ? collapsibleContext?.triggerAriaProps : void 0;
|
|
103
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactCheckbox.Checkbox.HiddenInput, { ref, ...triggerAriaProps, ...props });
|
|
104
|
+
});
|
|
105
|
+
CheckSelectBoxHiddenInput.displayName = "CheckSelectBoxHiddenInput";
|
|
106
|
+
const CheckSelectBoxFooter = React.forwardRef(
|
|
107
|
+
({ className, children, ...props }, ref) => {
|
|
108
|
+
const classNames = useClassNames();
|
|
109
|
+
const { stateProps } = reactCheckbox.useCheckboxContext();
|
|
110
|
+
const collapsibleContext = reactCollapsible.useCollapsibleContext({ strict: false });
|
|
111
|
+
const footerContext = React.useContext(FooterContext);
|
|
112
|
+
const composedRef = reactComposeRefs.composeRefs(ref, footerContext?.footerRef ?? null);
|
|
113
|
+
if (collapsibleContext) {
|
|
114
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
115
|
+
reactCollapsible.Collapsible.Content,
|
|
116
|
+
{
|
|
117
|
+
ref: composedRef,
|
|
118
|
+
className: clsx(classNames.footer, className),
|
|
119
|
+
...stateProps,
|
|
120
|
+
...props,
|
|
121
|
+
children
|
|
122
|
+
}
|
|
123
|
+
);
|
|
124
|
+
}
|
|
125
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
126
|
+
reactPrimitive.Primitive.div,
|
|
127
|
+
{
|
|
128
|
+
ref: composedRef,
|
|
129
|
+
className: clsx(classNames.footer, className),
|
|
130
|
+
...stateProps,
|
|
131
|
+
...props,
|
|
132
|
+
children
|
|
133
|
+
}
|
|
134
|
+
);
|
|
135
|
+
}
|
|
136
|
+
);
|
|
137
|
+
CheckSelectBoxFooter.displayName = "CheckSelectBoxFooter";
|
|
35
138
|
|
|
139
|
+
exports.CheckSelectBoxBody = CheckSelectBoxBody;
|
|
140
|
+
exports.CheckSelectBoxCheckmarkControl = CheckSelectBoxCheckmarkControl;
|
|
141
|
+
exports.CheckSelectBoxCheckmarkIcon = CheckSelectBoxCheckmarkIcon;
|
|
36
142
|
exports.CheckSelectBoxContent = CheckSelectBoxContent;
|
|
37
143
|
exports.CheckSelectBoxDescription = CheckSelectBoxDescription;
|
|
144
|
+
exports.CheckSelectBoxFooter = CheckSelectBoxFooter;
|
|
38
145
|
exports.CheckSelectBoxGroup = CheckSelectBoxGroup;
|
|
146
|
+
exports.CheckSelectBoxHiddenInput = CheckSelectBoxHiddenInput;
|
|
39
147
|
exports.CheckSelectBoxLabel = CheckSelectBoxLabel;
|
|
40
148
|
exports.CheckSelectBoxRoot = CheckSelectBoxRoot;
|
|
149
|
+
exports.CheckSelectBoxTrigger = CheckSelectBoxTrigger;
|
|
@@ -1,23 +1,51 @@
|
|
|
1
|
+
import { SelectBoxVariantProps } from '@seed-design/css/recipes/select-box';
|
|
2
|
+
import { SelectBoxCheckmarkVariantProps } from '@seed-design/css/recipes/selectBoxCheckmark';
|
|
3
|
+
import { SelectBoxGroupVariantProps } from '@seed-design/css/recipes/select-box-group';
|
|
1
4
|
import { Checkbox as CheckboxPrimitive } from '@seed-design/react-checkbox';
|
|
2
5
|
import { PrimitiveProps } from '@seed-design/react-primitive';
|
|
6
|
+
import { InternalIconProps } from '../private/Icon';
|
|
3
7
|
import { ForwardRefExoticComponent, RefAttributes } from 'react';
|
|
4
|
-
export interface CheckSelectBoxGroupProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
8
|
+
export interface CheckSelectBoxGroupProps extends SelectBoxGroupVariantProps, PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
9
|
+
/**
|
|
10
|
+
* Number of columns in the grid layout. When bigger than 1, child `CheckSelectBoxRoot` will have a default layout of "vertical".
|
|
11
|
+
* @default 1
|
|
12
|
+
*/
|
|
13
|
+
columns?: number;
|
|
5
14
|
}
|
|
6
|
-
/**
|
|
7
|
-
* CheckSelectBoxGroup is a simple div wrapper for future extensibility.
|
|
8
|
-
* It does not have spacing by default, nesting <VStack> under it is recommended.
|
|
9
|
-
*/
|
|
10
15
|
export declare const CheckSelectBoxGroup: ForwardRefExoticComponent<CheckSelectBoxGroupProps & RefAttributes<HTMLDivElement>>;
|
|
11
|
-
export interface CheckSelectBoxRootProps extends CheckboxPrimitive.RootProps {
|
|
16
|
+
export interface CheckSelectBoxRootProps extends SelectBoxVariantProps, CheckboxPrimitive.RootProps {
|
|
17
|
+
/**
|
|
18
|
+
* Controls when the footer is visible.
|
|
19
|
+
* @default "when-selected"
|
|
20
|
+
*/
|
|
21
|
+
footerVisibility?: "when-selected" | "when-not-selected" | "always";
|
|
12
22
|
}
|
|
13
23
|
export declare const CheckSelectBoxRoot: ForwardRefExoticComponent<CheckSelectBoxRootProps & RefAttributes<HTMLLabelElement>>;
|
|
24
|
+
export interface CheckSelectBoxTriggerProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
25
|
+
}
|
|
26
|
+
export declare const CheckSelectBoxTrigger: ForwardRefExoticComponent<CheckSelectBoxTriggerProps & RefAttributes<HTMLDivElement>>;
|
|
14
27
|
export interface CheckSelectBoxContentProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
15
28
|
}
|
|
16
29
|
export declare const CheckSelectBoxContent: ForwardRefExoticComponent<CheckSelectBoxContentProps & RefAttributes<HTMLDivElement>>;
|
|
17
|
-
export interface
|
|
30
|
+
export interface CheckSelectBoxBodyProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
31
|
+
}
|
|
32
|
+
export declare const CheckSelectBoxBody: ForwardRefExoticComponent<CheckSelectBoxBodyProps & RefAttributes<HTMLDivElement>>;
|
|
33
|
+
export interface CheckSelectBoxLabelProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
34
|
+
}
|
|
35
|
+
export declare const CheckSelectBoxLabel: ForwardRefExoticComponent<CheckSelectBoxLabelProps & RefAttributes<HTMLDivElement>>;
|
|
36
|
+
export interface CheckSelectBoxDescriptionProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
37
|
+
}
|
|
38
|
+
export declare const CheckSelectBoxDescription: ForwardRefExoticComponent<CheckSelectBoxDescriptionProps & RefAttributes<HTMLDivElement>>;
|
|
39
|
+
export interface CheckSelectBoxCheckmarkControlProps extends SelectBoxCheckmarkVariantProps, CheckboxPrimitive.ControlProps {
|
|
40
|
+
}
|
|
41
|
+
export declare const CheckSelectBoxCheckmarkControl: ForwardRefExoticComponent<CheckSelectBoxCheckmarkControlProps & RefAttributes<HTMLDivElement>>;
|
|
42
|
+
export interface CheckSelectBoxCheckmarkIconProps extends InternalIconProps {
|
|
43
|
+
}
|
|
44
|
+
export declare const CheckSelectBoxCheckmarkIcon: ForwardRefExoticComponent<CheckSelectBoxCheckmarkIconProps & RefAttributes<SVGSVGElement>>;
|
|
45
|
+
export interface CheckSelectBoxHiddenInputProps extends CheckboxPrimitive.HiddenInputProps {
|
|
18
46
|
}
|
|
19
|
-
export declare const
|
|
20
|
-
export interface
|
|
47
|
+
export declare const CheckSelectBoxHiddenInput: ForwardRefExoticComponent<CheckSelectBoxHiddenInputProps & RefAttributes<HTMLInputElement>>;
|
|
48
|
+
export interface CheckSelectBoxFooterProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {
|
|
21
49
|
}
|
|
22
|
-
export declare const
|
|
50
|
+
export declare const CheckSelectBoxFooter: ForwardRefExoticComponent<CheckSelectBoxFooterProps & RefAttributes<HTMLDivElement>>;
|
|
23
51
|
//# sourceMappingURL=CheckSelectBox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckSelectBox.d.ts","sourceRoot":"","sources":["../../../src/components/SelectBox/CheckSelectBox.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"CheckSelectBox.d.ts","sourceRoot":"","sources":["../../../src/components/SelectBox/CheckSelectBox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAa,KAAK,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5F,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAsB,MAAM,6BAA6B,CAAC;AAOhG,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAY9E,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAYvE,MAAM,WAAW,wBACf,SAAQ,0BAA0B,EAChC,cAAc,EACd,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,mBAAmB,qHAuB/B,CAAC;AA+BF,MAAM,WAAW,uBACf,SAAQ,qBAAqB,EAC3B,iBAAiB,CAAC,SAAS;IAC7B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,eAAe,GAAG,mBAAmB,GAAG,QAAQ,CAAC;CACrE;AAED,eAAO,MAAM,kBAAkB,sHA0B9B,CAAC;AAEF,MAAM,WAAW,0BACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,qBAAqB,uHAGjC,CAAC;AAEF,MAAM,WAAW,0BACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,qBAAqB,uHAGjC,CAAC;AAEF,MAAM,WAAW,uBACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,kBAAkB,oHAG9B,CAAC;AAEF,MAAM,WAAW,wBACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,mBAAmB,qHAG/B,CAAC;AAEF,MAAM,WAAW,8BACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,yBAAyB,2HAGS,CAAC;AAMhD,MAAM,WAAW,mCACf,SAAQ,8BAA8B,EACpC,iBAAiB,CAAC,YAAY;CAAG;AAErC,eAAO,MAAM,8BAA8B,gIAGP,CAAC;AAErC,MAAM,WAAW,gCAAiC,SAAQ,iBAAiB;CAAG;AAE9E,eAAO,MAAM,2BAA2B,4HAGQ,CAAC;AAEjD,MAAM,WAAW,8BAA+B,SAAQ,iBAAiB,CAAC,gBAAgB;CAAG;AAE7F,eAAO,MAAM,yBAAyB,6HAapC,CAAC;AAGH,MAAM,WAAW,yBACf,SAAQ,cAAc,EACpB,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;CAAG;AAE3C,eAAO,MAAM,oBAAoB,sHAgChC,CAAC"}
|
|
@@ -1,32 +1,135 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { composeRefs } from '@radix-ui/react-compose-refs';
|
|
3
4
|
import { selectBox } from '@seed-design/css/recipes/select-box';
|
|
5
|
+
import { selectBoxCheckmark } from '@seed-design/css/recipes/selectBoxCheckmark';
|
|
4
6
|
import { selectBoxGroup } from '@seed-design/css/recipes/select-box-group';
|
|
5
7
|
import { Checkbox, useCheckboxContext } from '@seed-design/react-checkbox';
|
|
8
|
+
import { useCollapsibleContext, Collapsible, useCollapsible, CollapsibleProvider } from '@seed-design/react-collapsible';
|
|
6
9
|
import { Primitive } from '@seed-design/react-primitive';
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
10
|
+
import clsx from 'clsx';
|
|
11
|
+
import { forwardRef, useContext, createContext, useState, useCallback } from 'react';
|
|
9
12
|
import { createSlotRecipeContext } from '../../utils/createSlotRecipeContext.js';
|
|
10
13
|
import { createWithStateProps } from '../../utils/createWithStateProps.js';
|
|
14
|
+
import { InternalIcon } from '../private/Icon.js';
|
|
11
15
|
|
|
12
|
-
const { withContext
|
|
13
|
-
const { withContext, withProvider } = createSlotRecipeContext(selectBox);
|
|
16
|
+
const { PropsProvider, ClassNamesProvider, withContext, useProps, useClassNames } = createSlotRecipeContext(selectBox);
|
|
14
17
|
const withStateProps = createWithStateProps([useCheckboxContext]);
|
|
15
|
-
const
|
|
16
|
-
|
|
18
|
+
const FooterContext = createContext(null);
|
|
19
|
+
const CheckSelectBoxGroup = forwardRef(
|
|
20
|
+
({ columns = 1, className, style, ...props }, ref) => {
|
|
21
|
+
const [variantProps, otherProps] = selectBoxGroup.splitVariantProps(props);
|
|
22
|
+
const recipeClassName = selectBoxGroup(variantProps);
|
|
23
|
+
const layout = columns === 1 ? "horizontal" : "vertical";
|
|
24
|
+
return /* @__PURE__ */ jsx(PropsProvider, { value: { layout }, children: /* @__PURE__ */ jsx(
|
|
25
|
+
Primitive.div,
|
|
26
|
+
{
|
|
27
|
+
ref,
|
|
28
|
+
"data-columns": columns,
|
|
29
|
+
className: clsx(recipeClassName, className),
|
|
30
|
+
style: {
|
|
31
|
+
...style,
|
|
32
|
+
"--seed-select-box-group--columns": columns
|
|
33
|
+
},
|
|
34
|
+
...otherProps
|
|
35
|
+
}
|
|
36
|
+
) });
|
|
37
|
+
}
|
|
17
38
|
);
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
39
|
+
function FooterVisibilityProvider({
|
|
40
|
+
children,
|
|
41
|
+
footerVisibility
|
|
42
|
+
}) {
|
|
43
|
+
const { checked } = useCheckboxContext();
|
|
44
|
+
const collapsible = useCollapsible({
|
|
45
|
+
open: {
|
|
46
|
+
"when-selected": checked,
|
|
47
|
+
"when-not-selected": !checked
|
|
48
|
+
}[footerVisibility]
|
|
49
|
+
});
|
|
50
|
+
const [isFooterRendered, setIsFooterRendered] = useState(false);
|
|
51
|
+
const footerRef = useCallback((node) => {
|
|
52
|
+
setIsFooterRendered(!!node);
|
|
53
|
+
}, []);
|
|
54
|
+
return /* @__PURE__ */ jsx(CollapsibleProvider, { value: collapsible, children: /* @__PURE__ */ jsx(FooterContext.Provider, { value: { isFooterRendered, footerRef, footerVisibility }, children }) });
|
|
55
|
+
}
|
|
56
|
+
const CheckSelectBoxRoot = forwardRef(
|
|
57
|
+
({ footerVisibility = "when-selected", className, children, ...props }, ref) => {
|
|
58
|
+
const [variantProps, otherProps] = selectBox.splitVariantProps(props);
|
|
59
|
+
const classNames = selectBox({
|
|
60
|
+
...useProps(),
|
|
61
|
+
...variantProps
|
|
62
|
+
});
|
|
63
|
+
return /* @__PURE__ */ jsx(ClassNamesProvider, { value: classNames, children: /* @__PURE__ */ jsx(
|
|
64
|
+
Checkbox.Root,
|
|
65
|
+
{
|
|
66
|
+
ref,
|
|
67
|
+
className: clsx(classNames.root, className),
|
|
68
|
+
...otherProps,
|
|
69
|
+
children: footerVisibility === "always" ? children : /* @__PURE__ */ jsx(FooterVisibilityProvider, { footerVisibility, children })
|
|
70
|
+
}
|
|
71
|
+
) });
|
|
72
|
+
}
|
|
73
|
+
);
|
|
74
|
+
const CheckSelectBoxTrigger = withContext(
|
|
75
|
+
withStateProps(Primitive.div),
|
|
76
|
+
"trigger"
|
|
21
77
|
);
|
|
22
78
|
const CheckSelectBoxContent = withContext(
|
|
23
79
|
withStateProps(Primitive.div),
|
|
24
80
|
"content"
|
|
25
81
|
);
|
|
82
|
+
const CheckSelectBoxBody = withContext(
|
|
83
|
+
withStateProps(Primitive.div),
|
|
84
|
+
"body"
|
|
85
|
+
);
|
|
26
86
|
const CheckSelectBoxLabel = withContext(
|
|
27
87
|
withStateProps(Primitive.div),
|
|
28
88
|
"label"
|
|
29
89
|
);
|
|
30
90
|
const CheckSelectBoxDescription = withContext(withStateProps(Primitive.div), "description");
|
|
91
|
+
const { withProvider: withCheckmarkProvider, withContext: withCheckmarkContext } = createSlotRecipeContext(selectBoxCheckmark);
|
|
92
|
+
const withCheckmarkStateProps = createWithStateProps([useCheckboxContext]);
|
|
93
|
+
const CheckSelectBoxCheckmarkControl = withCheckmarkProvider(Checkbox.Control, "root");
|
|
94
|
+
const CheckSelectBoxCheckmarkIcon = withCheckmarkContext(withCheckmarkStateProps(InternalIcon), "icon");
|
|
95
|
+
const CheckSelectBoxHiddenInput = forwardRef((props, ref) => {
|
|
96
|
+
const collapsibleContext = useCollapsibleContext({ strict: false });
|
|
97
|
+
const footerContext = useContext(FooterContext);
|
|
98
|
+
const triggerAriaProps = footerContext?.isFooterRendered ? collapsibleContext?.triggerAriaProps : void 0;
|
|
99
|
+
return /* @__PURE__ */ jsx(Checkbox.HiddenInput, { ref, ...triggerAriaProps, ...props });
|
|
100
|
+
});
|
|
101
|
+
CheckSelectBoxHiddenInput.displayName = "CheckSelectBoxHiddenInput";
|
|
102
|
+
const CheckSelectBoxFooter = forwardRef(
|
|
103
|
+
({ className, children, ...props }, ref) => {
|
|
104
|
+
const classNames = useClassNames();
|
|
105
|
+
const { stateProps } = useCheckboxContext();
|
|
106
|
+
const collapsibleContext = useCollapsibleContext({ strict: false });
|
|
107
|
+
const footerContext = useContext(FooterContext);
|
|
108
|
+
const composedRef = composeRefs(ref, footerContext?.footerRef ?? null);
|
|
109
|
+
if (collapsibleContext) {
|
|
110
|
+
return /* @__PURE__ */ jsx(
|
|
111
|
+
Collapsible.Content,
|
|
112
|
+
{
|
|
113
|
+
ref: composedRef,
|
|
114
|
+
className: clsx(classNames.footer, className),
|
|
115
|
+
...stateProps,
|
|
116
|
+
...props,
|
|
117
|
+
children
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
return /* @__PURE__ */ jsx(
|
|
122
|
+
Primitive.div,
|
|
123
|
+
{
|
|
124
|
+
ref: composedRef,
|
|
125
|
+
className: clsx(classNames.footer, className),
|
|
126
|
+
...stateProps,
|
|
127
|
+
...props,
|
|
128
|
+
children
|
|
129
|
+
}
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
);
|
|
133
|
+
CheckSelectBoxFooter.displayName = "CheckSelectBoxFooter";
|
|
31
134
|
|
|
32
|
-
export { CheckSelectBoxContent, CheckSelectBoxDescription, CheckSelectBoxGroup, CheckSelectBoxLabel, CheckSelectBoxRoot };
|
|
135
|
+
export { CheckSelectBoxBody, CheckSelectBoxCheckmarkControl, CheckSelectBoxCheckmarkIcon, CheckSelectBoxContent, CheckSelectBoxDescription, CheckSelectBoxFooter, CheckSelectBoxGroup, CheckSelectBoxHiddenInput, CheckSelectBoxLabel, CheckSelectBoxRoot, CheckSelectBoxTrigger };
|
|
@@ -6,8 +6,14 @@ const CheckSelectBox = require('./CheckSelectBox.cjs');
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
exports.Body = CheckSelectBox.CheckSelectBoxBody;
|
|
10
|
+
exports.CheckmarkControl = CheckSelectBox.CheckSelectBoxCheckmarkControl;
|
|
11
|
+
exports.CheckmarkIcon = CheckSelectBox.CheckSelectBoxCheckmarkIcon;
|
|
9
12
|
exports.Content = CheckSelectBox.CheckSelectBoxContent;
|
|
10
13
|
exports.Description = CheckSelectBox.CheckSelectBoxDescription;
|
|
14
|
+
exports.Footer = CheckSelectBox.CheckSelectBoxFooter;
|
|
11
15
|
exports.Group = CheckSelectBox.CheckSelectBoxGroup;
|
|
16
|
+
exports.HiddenInput = CheckSelectBox.CheckSelectBoxHiddenInput;
|
|
12
17
|
exports.Label = CheckSelectBox.CheckSelectBoxLabel;
|
|
13
18
|
exports.Root = CheckSelectBox.CheckSelectBoxRoot;
|
|
19
|
+
exports.Trigger = CheckSelectBox.CheckSelectBoxTrigger;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { CheckSelectBoxContent as Content, CheckSelectBoxDescription as Description, CheckSelectBoxGroup as Group, CheckSelectBoxLabel as Label, CheckSelectBoxRoot as Root, type CheckSelectBoxContentProps as ContentProps, type CheckSelectBoxDescriptionProps as DescriptionProps, type CheckSelectBoxGroupProps as GroupProps, type CheckSelectBoxLabelProps as LabelProps, type CheckSelectBoxRootProps as RootProps, } from './CheckSelectBox';
|
|
1
|
+
export { CheckSelectBoxBody as Body, CheckSelectBoxCheckmarkControl as CheckmarkControl, CheckSelectBoxCheckmarkIcon as CheckmarkIcon, CheckSelectBoxContent as Content, CheckSelectBoxDescription as Description, CheckSelectBoxFooter as Footer, CheckSelectBoxGroup as Group, CheckSelectBoxHiddenInput as HiddenInput, CheckSelectBoxLabel as Label, CheckSelectBoxRoot as Root, CheckSelectBoxTrigger as Trigger, type CheckSelectBoxBodyProps as BodyProps, type CheckSelectBoxCheckmarkControlProps as CheckmarkControlProps, type CheckSelectBoxCheckmarkIconProps as CheckmarkIconProps, type CheckSelectBoxContentProps as ContentProps, type CheckSelectBoxDescriptionProps as DescriptionProps, type CheckSelectBoxFooterProps as FooterProps, type CheckSelectBoxGroupProps as GroupProps, type CheckSelectBoxHiddenInputProps as HiddenInputProps, type CheckSelectBoxLabelProps as LabelProps, type CheckSelectBoxRootProps as RootProps, type CheckSelectBoxTriggerProps as TriggerProps, } from './CheckSelectBox';
|
|
2
2
|
//# sourceMappingURL=CheckSelectBox.namespace.d.ts.map
|