@cambly/syntax-core 18.4.0 → 18.6.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.
Files changed (97) hide show
  1. package/dist/Button/Button.cjs +3 -3
  2. package/dist/Button/Button.css +25 -19
  3. package/dist/Button/Button.css.map +1 -1
  4. package/dist/Button/Button.js +2 -2
  5. package/dist/Button/constants/iconSize.cjs +2 -2
  6. package/dist/Button/constants/iconSize.css +25 -19
  7. package/dist/Button/constants/iconSize.css.map +1 -1
  8. package/dist/Button/constants/iconSize.js +1 -1
  9. package/dist/Dialog/ModalDialog.cjs +4 -4
  10. package/dist/Dialog/ModalDialog.css +25 -19
  11. package/dist/Dialog/ModalDialog.css.map +1 -1
  12. package/dist/Dialog/ModalDialog.js +3 -3
  13. package/dist/IconButton/IconButton.cjs +3 -3
  14. package/dist/IconButton/IconButton.css +25 -19
  15. package/dist/IconButton/IconButton.css.map +1 -1
  16. package/dist/IconButton/IconButton.js +2 -2
  17. package/dist/LinkButton/LinkButton.cjs +3 -3
  18. package/dist/LinkButton/LinkButton.css +25 -19
  19. package/dist/LinkButton/LinkButton.css.map +1 -1
  20. package/dist/LinkButton/LinkButton.js +2 -2
  21. package/dist/Modal/Modal.cjs +4 -4
  22. package/dist/Modal/Modal.css +25 -19
  23. package/dist/Modal/Modal.css.map +1 -1
  24. package/dist/Modal/Modal.js +3 -3
  25. package/dist/Popover/Popover.cjs +5 -5
  26. package/dist/Popover/Popover.css +25 -19
  27. package/dist/Popover/Popover.css.map +1 -1
  28. package/dist/Popover/Popover.js +4 -4
  29. package/dist/RichSelect/RichSelectBox.cjs +4 -4
  30. package/dist/RichSelect/RichSelectBox.css +25 -19
  31. package/dist/RichSelect/RichSelectBox.css.map +1 -1
  32. package/dist/RichSelect/RichSelectBox.js +3 -3
  33. package/dist/RichSelect/RichSelectList.cjs +9 -9
  34. package/dist/RichSelect/RichSelectList.css +25 -19
  35. package/dist/RichSelect/RichSelectList.css.map +1 -1
  36. package/dist/RichSelect/RichSelectList.d.ts +5 -0
  37. package/dist/RichSelect/RichSelectList.js +8 -8
  38. package/dist/SelectList/SelectList.cjs +3 -3
  39. package/dist/SelectList/SelectList.js +2 -2
  40. package/dist/__chunks/{7OXYHK2R.js → 4LS53X3H.js} +1 -3
  41. package/dist/__chunks/{7OXYHK2R.js.map → 4LS53X3H.js.map} +1 -1
  42. package/dist/__chunks/{572U5GX5.js → 65PXO4OL.js} +2 -2
  43. package/dist/__chunks/7TEFD526.cjs +22 -0
  44. package/dist/__chunks/7TEFD526.cjs.map +1 -0
  45. package/dist/__chunks/{3A6QVJ43.js → BLW57GRR.js} +2 -2
  46. package/dist/__chunks/{5QPF5U2V.js → BNRTELQX.js} +3 -3
  47. package/dist/__chunks/{5QPF5U2V.js.map → BNRTELQX.js.map} +1 -1
  48. package/dist/__chunks/{GN5VNYV3.js → BTBAAACD.js} +3 -3
  49. package/dist/__chunks/{GN5VNYV3.js.map → BTBAAACD.js.map} +1 -1
  50. package/dist/__chunks/{6JEGAMYW.cjs → BZ546NNE.cjs} +7 -7
  51. package/dist/__chunks/{6JEGAMYW.cjs.map → BZ546NNE.cjs.map} +1 -1
  52. package/dist/__chunks/{325VK7L2.cjs → C4GAUB4Y.cjs} +3 -3
  53. package/dist/__chunks/ESVDNOSI.js +22 -0
  54. package/dist/__chunks/ESVDNOSI.js.map +1 -0
  55. package/dist/__chunks/{GYAWVPB7.js → GVDYEBNZ.js} +2 -2
  56. package/dist/__chunks/GVDYEBNZ.js.map +1 -0
  57. package/dist/__chunks/{FC54JDM6.cjs → H3QQNW5X.cjs} +5 -5
  58. package/dist/__chunks/H3QQNW5X.cjs.map +1 -0
  59. package/dist/__chunks/{YRFKC6UH.cjs → IYYTLOO3.cjs} +3 -3
  60. package/dist/__chunks/{IBNQI7PM.cjs → LIUV3J2M.cjs} +4 -4
  61. package/dist/__chunks/{JITGKYWW.js → MZOGVH4K.js} +2 -2
  62. package/dist/__chunks/{7SNO5LIA.cjs → OXSHUPNO.cjs} +2 -4
  63. package/dist/__chunks/OXSHUPNO.cjs.map +1 -0
  64. package/dist/__chunks/{BDTRE65A.js → PW6JTQVM.js} +30 -11
  65. package/dist/__chunks/PW6JTQVM.js.map +1 -0
  66. package/dist/__chunks/{KXPCTYHD.cjs → RCCK2EW4.cjs} +3 -3
  67. package/dist/__chunks/{42LZ6YP3.js → SNLD3DG6.js} +2 -2
  68. package/dist/__chunks/{K4QY6POL.cjs → TSMYMWWE.cjs} +7 -7
  69. package/dist/__chunks/{K4QY6POL.cjs.map → TSMYMWWE.cjs.map} +1 -1
  70. package/dist/__chunks/{ASKKVHEA.js → TU2BVOKD.js} +2 -2
  71. package/dist/__chunks/{GWHKJE5R.cjs → XVYUFV22.cjs} +34 -15
  72. package/dist/__chunks/XVYUFV22.cjs.map +1 -0
  73. package/dist/__chunks/{DOYGRWJR.cjs → YJAKY2I2.cjs} +4 -4
  74. package/dist/index.cjs +12 -12
  75. package/dist/index.css +25 -19
  76. package/dist/index.css.map +1 -1
  77. package/dist/index.js +11 -11
  78. package/package.json +1 -1
  79. package/dist/__chunks/7SNO5LIA.cjs.map +0 -1
  80. package/dist/__chunks/BDTRE65A.js.map +0 -1
  81. package/dist/__chunks/EGB44W5V.cjs +0 -22
  82. package/dist/__chunks/EGB44W5V.cjs.map +0 -1
  83. package/dist/__chunks/FC54JDM6.cjs.map +0 -1
  84. package/dist/__chunks/GWHKJE5R.cjs.map +0 -1
  85. package/dist/__chunks/GYAWVPB7.js.map +0 -1
  86. package/dist/__chunks/TLUQZXLV.js +0 -22
  87. package/dist/__chunks/TLUQZXLV.js.map +0 -1
  88. /package/dist/__chunks/{572U5GX5.js.map → 65PXO4OL.js.map} +0 -0
  89. /package/dist/__chunks/{3A6QVJ43.js.map → BLW57GRR.js.map} +0 -0
  90. /package/dist/__chunks/{325VK7L2.cjs.map → C4GAUB4Y.cjs.map} +0 -0
  91. /package/dist/__chunks/{YRFKC6UH.cjs.map → IYYTLOO3.cjs.map} +0 -0
  92. /package/dist/__chunks/{IBNQI7PM.cjs.map → LIUV3J2M.cjs.map} +0 -0
  93. /package/dist/__chunks/{JITGKYWW.js.map → MZOGVH4K.js.map} +0 -0
  94. /package/dist/__chunks/{KXPCTYHD.cjs.map → RCCK2EW4.cjs.map} +0 -0
  95. /package/dist/__chunks/{42LZ6YP3.js.map → SNLD3DG6.js.map} +0 -0
  96. /package/dist/__chunks/{ASKKVHEA.js.map → TU2BVOKD.js.map} +0 -0
  97. /package/dist/__chunks/{DOYGRWJR.cjs.map → YJAKY2I2.cjs.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/RichSelect/RichSelectList.tsx","css-module:../SelectList/SelectList.module.css#css-module"],"sourcesContent":["import React, {\n type ReactElement,\n useMemo,\n type SyntheticEvent,\n useRef,\n useId,\n} from \"react\";\nimport classNames from \"classnames\";\nimport {\n ColorBaseDestructive700,\n ColorBaseGray700,\n ColorCambioWhite100,\n} from \"@cambly/syntax-design-tokens\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\nimport Popover from \"../Popover/Popover\";\nimport {\n Label as ReactAriaLabel,\n Provider as ReactAriaProvider,\n} from \"react-aria-components\";\nimport { useControlledState } from \"@react-stately/utils\";\nimport { setInteractionModality } from \"@react-aria/interactions\";\nimport { DialogContext } from \"../Dialog/Dialog\";\nimport styles from \"../SelectList/SelectList.module.css\";\nimport RichSelectBox, {\n RichSelectBoxContext,\n convertSelection,\n type RichSelectBoxProps,\n} from \"./RichSelectBox\";\nimport TapArea from \"../TapArea/TapArea\";\nimport { type OverlayHandlerRef } from \"../react-aria-utils/Triggerable\";\nimport Box from \"../Box/Box\";\nimport RichSelectSection from \"./RichSelectSection\";\nimport RichSelectChip from \"./RichSelectChip\";\nimport RichSelectRadioButton from \"./RichSelectRadioButton\";\nimport { useField } from \"react-aria\";\n\nconst NOOP = () => undefined;\n\nexport type RichSelectListProps = RichSelectBoxProps & {\n /** Test id for the select element */\n \"data-testid\"?: string;\n /**\n * Disables the select dropdown entirely\n * @defaultValue false\n */\n disabled?: boolean;\n /** Callback to be called when select is clicked */\n onClick?: (event: SyntheticEvent<HTMLDivElement>) => void;\n /** Text shown below select box if there is an input error. */\n errorText?: string;\n /** Text shown below select box */\n helperText?: string;\n /**\n * RichSelectList id, if not provided, a unique id will be generated\n */\n id?: string;\n /** Text shown above select box */\n label: string;\n /**\n * Text showing in select box if no option has been chosen.\n * There should always have a placeholder unless there is a default option selected\n */\n placeholderText?: string;\n /** Use to render (override) text shown in the select box */\n selectTextValue?: (selectedValues?: \"all\" | string[]) => string | undefined;\n /**\n * Color of the select box\n * @defaultValue white\n */\n color?: \"white\" | \"clear\";\n};\n\n/**\n * [RichSelectList](https://cambly-syntax.vercel.app/?path=/docs/components-richselectlist--docs) is a dropdown menu that allows users to select one or multiple options from a list.\n *\n * Example Usage:\n ```\n <RichSelectList\n label=\"My Label\"\n multiple\n onChange={() => { ... }}\n primaryButtonText=\"Save\"\n primaryButtonAccessibilityLabel=\"Save\"\n secondaryButtonText=\"Clear\"\n secondaryButtonAccessibilityLabel=\"Clear\"\n >\n <RichSelectList.Section label=\"Cities\">\n <RichSelectList.Chip label=\"San Francisco\" value=\"sf\" />\n <RichSelectList.Chip label=\"New York\" value=\"ny\" disabled />\n <RichSelectList.Chip label=\"Tulsa\" value=\"tulsa\" />\n <RichSelectList.Chip label=\"Chicago\" value=\"chicago\" disabled />\n </RichSelectList.Section>\n </RichSelectList>\n ```\n */\nfunction RichSelectList(props: RichSelectListProps): ReactElement {\n const {\n autosave,\n children,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n errorText,\n helperText,\n label,\n id,\n onChange,\n onClick = NOOP,\n placeholderText,\n selectTextValue,\n selectedValues: selectedValuesProp,\n defaultSelectedValues: defaultSelectedValuesProp,\n color = \"white\",\n ...richSelectBoxProps\n } = props;\n\n const reactId = useId();\n const inputId = id ?? reactId;\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n\n // passed to popover, which attached open/close methods\n const overlayHandlerRef = useRef<OverlayHandlerRef>({});\n\n const selectedKeysProp = useMemo(\n () => convertSelection(selectedValuesProp),\n [selectedValuesProp],\n );\n const defaultSelectedKeys = useMemo(\n () => convertSelection(defaultSelectedValuesProp, new Set()),\n [defaultSelectedValuesProp],\n );\n const [selectedKeys, setSelectedKeys] = useControlledState(\n selectedKeysProp!, // eslint-disable-line @typescript-eslint/no-non-null-assertion -- there is a bug in the typedef for useControlledState from react-stately. Internally they rely on value (first arg) able to be undefined\n defaultSelectedKeys,\n (value) => {\n const _value = value === \"all\" ? \"all\" : [...value].map(String);\n onChange(_value);\n if (!autosave) overlayHandlerRef.current.close?.();\n },\n );\n\n const selectedTextValue = useMemo(() => {\n if (selectTextValue)\n return (\n selectTextValue(\n selectedKeys === \"all\" ? \"all\" : [...selectedKeys].map(String),\n ) ?? placeholderText\n );\n if (selectedKeys === \"all\") return \"All selected\";\n if (selectedKeys.size) return `${selectedKeys.size} selected`;\n return placeholderText;\n }, [selectTextValue, selectedKeys, placeholderText]);\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const { labelProps, fieldProps, descriptionProps, errorMessageProps } =\n useField({\n label, // this is the label for the select box\n description: helperText,\n errorMessage: errorText,\n });\n\n const textColor = {\n white: \"gray700\",\n clear: \"white\",\n } as const;\n\n const getArrowIconColor = () => {\n if (errorText) {\n return ColorBaseDestructive700;\n } else {\n if (color === \"clear\") {\n return ColorCambioWhite100;\n } else {\n return ColorBaseGray700;\n }\n }\n };\n\n return (\n <ReactAriaProvider\n values={[\n [RichSelectBoxContext, { autoFocus: true }],\n [DialogContext, { padding: autosave ? undefined : 0 }], // this is altering Popover's internal dialog padding to show the sticky save/close buttons. Ideally this could be avoided\n ]}\n >\n <div\n className={classNames(styles.selectContainer, {\n [styles.opacityOverlay]: disabled,\n })}\n onClick={onClick}\n >\n {label && (\n <>\n <ReactAriaLabel\n data-testid={[dataTestId, \"label\"].filter(Boolean).join(\"-\")}\n {...labelProps}\n onClick={() => {\n if (disabled) return;\n fieldRef.current?.focus();\n setInteractionModality(\"keyboard\"); // Show the focus ring so the user knows where focus went\n }}\n >\n <Box paddingX={1}>\n <Typography size={100} color={textColor[color]}>\n {label}\n </Typography>\n </Box>\n </ReactAriaLabel>\n </>\n )}\n <Popover\n ref={overlayHandlerRef}\n disabled={disabled}\n content={\n // this Box wrapper is to reapply the padding that was stripped from popover's dialog to show the sticky save/close buttons. Ideally this could be avoided\n <Box\n padding={autosave ? undefined : 5}\n dangerouslySetInlineStyle={\n autosave ? undefined : { __style: { paddingBottom: 0 } }\n }\n role=\"menu\"\n >\n <RichSelectBox\n autosave={autosave}\n selectedValues={selectedKeys}\n defaultSelectedValues={defaultSelectedKeys}\n onChange={(selected) => setSelectedKeys(new Set(selected))}\n {...richSelectBoxProps}\n accessibilityLabel={inputId}\n >\n {children}\n </RichSelectBox>\n </Box>\n }\n >\n <TapArea\n data-testid={dataTestId}\n disabled={disabled}\n onClick={onClick}\n rounding=\"md\"\n {...fieldProps}\n ref={fieldRef}\n >\n <div className={styles.selectWrapper}>\n <div\n className={classNames(\n styles.selectBox,\n styles.selectBoxCambio,\n {\n [styles.unselected]:\n !errorText &&\n selectedKeys !== \"all\" &&\n !selectedKeys.size,\n [styles.selected]:\n !errorText &&\n (selectedKeys === \"all\" || selectedKeys.size),\n [styles.selectErrorCambio]: errorText,\n [styles[`selectColor${color}`]]: color,\n },\n )}\n >\n {selectedTextValue}\n </div>\n <div className={styles.arrowIcon}>\n <svg\n focusable=\"false\"\n aria-hidden=\"true\"\n viewBox=\"0 0 24 24\"\n width={24}\n >\n <path\n fill={getArrowIconColor()}\n d=\"M15.88 9.29 12 13.17 8.12 9.29a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.59 4.59c.39.39 1.02.39 1.41 0l4.59-4.59c.39-.39.39-1.02 0-1.41-.39-.38-1.03-.39-1.42 0z\"\n />\n </svg>\n </div>\n </div>\n </TapArea>\n </Popover>\n {(helperText || errorText) && (\n <Box paddingX={1}>\n <Typography\n size={100}\n color={errorText ? \"destructive-primary\" : textColor[color]}\n {...(errorText ? errorMessageProps : descriptionProps)}\n >\n {errorText ? errorText : helperText}\n </Typography>\n </Box>\n )}\n </div>\n </ReactAriaProvider>\n );\n}\n\nexport default Object.assign(RichSelectList, {\n Section: RichSelectSection,\n Chip: RichSelectChip,\n RadioButton: RichSelectRadioButton,\n});\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/SelectList/SelectList.module.css\"; export default {\"selectContainer\":\"_selectContainer_1g9ap_1\",\"opacityOverlay\":\"_opacityOverlay_1g9ap_7\",\"selectWrapper\":\"_selectWrapper_1g9ap_11\",\"selectBox\":\"_selectBox_1g9ap_16\",\"selectBoxCambio\":\"_selectBoxCambio_1g9ap_30\",\"selectMouseFocusStyling\":\"_selectMouseFocusStyling_1g9ap_38\",\"unselected\":\"_unselected_1g9ap_43\",\"selected\":\"_selected_1g9ap_47\",\"arrowIcon\":\"_arrowIcon_1g9ap_51\",\"selectErrorCambio\":\"_selectErrorCambio_1g9ap_65\",\"selectColorwhite\":\"_selectColorwhite_1g9ap_71\",\"selectColorclear\":\"_selectColorclear_1g9ap_77\"}"],"mappings":"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","names":["_a"]}
@@ -4,7 +4,7 @@
4
4
  var _J27AGJQBcjs = require('./J27AGJQB.cjs');
5
5
 
6
6
 
7
- var _DOYGRWJRcjs = require('./DOYGRWJR.cjs');
7
+ var _YJAKY2I2cjs = require('./YJAKY2I2.cjs');
8
8
 
9
9
 
10
10
  var _KJLBDAZHcjs = require('./KJLBDAZH.cjs');
@@ -130,7 +130,7 @@ var ModalDialog = _react.forwardRef.call(void 0,
130
130
  }
131
131
  },
132
132
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
133
- _DOYGRWJRcjs.IconButton_default,
133
+ _YJAKY2I2cjs.IconButton_default,
134
134
  {
135
135
  onClick: () => state.close(),
136
136
  color: "tertiary",
@@ -157,4 +157,4 @@ var ModalDialog_default = ModalDialog;
157
157
 
158
158
 
159
159
  exports.AriaModalOverlay = AriaModalOverlay; exports.AriaModal = AriaModal; exports.ModalDialog_default = ModalDialog_default;
160
- //# sourceMappingURL=KXPCTYHD.cjs.map
160
+ //# sourceMappingURL=RCCK2EW4.cjs.map
@@ -1,7 +1,7 @@
1
1
  "use client"
2
2
  import {
3
3
  ModalDialog_default
4
- } from "./3A6QVJ43.js";
4
+ } from "./BLW57GRR.js";
5
5
  import {
6
6
  Dialog_default
7
7
  } from "./5HEC7ASW.js";
@@ -141,4 +141,4 @@ export {
141
141
  AriaPopover,
142
142
  Popover_default
143
143
  };
144
- //# sourceMappingURL=42LZ6YP3.js.map
144
+ //# sourceMappingURL=SNLD3DG6.js.map
@@ -8,7 +8,7 @@ var _3P2PWHOUcjs = require('./3P2PWHOU.cjs');
8
8
 
9
9
 
10
10
 
11
- var _EGB44W5Vcjs = require('./EGB44W5V.cjs');
11
+ var _7TEFD526cjs = require('./7TEFD526.cjs');
12
12
 
13
13
 
14
14
  var _KJLBDAZHcjs = require('./KJLBDAZH.cjs');
@@ -33,7 +33,7 @@ var _react = require('react');
33
33
  var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
34
34
 
35
35
  // css-module:./Button.module.css#css-module
36
- var Button_module_default = { "button": "_button_17niw_1", "buttonGap": "_buttonGap_17niw_8", "disabled": "_disabled_17niw_42", "disabledPrimary": "_disabledPrimary_17niw_49", "fullWidth": "_fullWidth_17niw_53", "sm": "_sm_17niw_57", "md": "_md_17niw_64", "lg": "_lg_17niw_71", "icon": "_icon_17niw_78", "smIcon": "_smIcon_17niw_82", "mdIcon": "_mdIcon_17niw_89", "lgIcon": "_lgIcon_17niw_96", "loading": "_loading_17niw_113", "syntaxButtonLoadingRotate": "_syntaxButtonLoadingRotate_17niw_1", "loadingCircle": "_loadingCircle_17niw_117" };
36
+ var Button_module_default = { "button": "_button_1hpt0_1", "buttonGap": "_buttonGap_1hpt0_8", "disabled": "_disabled_1hpt0_42", "disabledPrimary": "_disabledPrimary_1hpt0_56", "fullWidth": "_fullWidth_1hpt0_60", "sm": "_sm_1hpt0_64", "md": "_md_1hpt0_71", "lg": "_lg_1hpt0_78", "icon": "_icon_1hpt0_85", "smIcon": "_smIcon_1hpt0_89", "mdIcon": "_mdIcon_1hpt0_96", "lgIcon": "_lgIcon_1hpt0_103", "loading": "_loading_1hpt0_120", "syntaxButtonLoadingRotate": "_syntaxButtonLoadingRotate_1hpt0_1", "loadingCircle": "_loadingCircle_1hpt0_124" };
37
37
 
38
38
  // src/Button/Button.tsx
39
39
  var _jsxruntime = require('react/jsx-runtime');
@@ -88,10 +88,10 @@ var Button = _react.forwardRef.call(void 0,
88
88
  {
89
89
  className: _classnames2.default.call(void 0,
90
90
  Button_module_default.icon,
91
- _EGB44W5Vcjs.materialIconSize[size],
91
+ _7TEFD526cjs.materialIconSize[size],
92
92
  disabledPrimary && Button_module_default.disabledPrimary
93
93
  ),
94
- size: _EGB44W5Vcjs.internalIconSize[size]
94
+ size: _7TEFD526cjs.internalIconSize[size]
95
95
  }
96
96
  ),
97
97
  (loading && loadingText || !loading && text) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _KJLBDAZHcjs.Box_default, { paddingX: 1, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _FEFAG4KTcjs.Typography_default, { size: _5JUNB754cjs.textVariant_default[size], weight: "medium", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -109,10 +109,10 @@ var Button = _react.forwardRef.call(void 0,
109
109
  {
110
110
  className: _classnames2.default.call(void 0,
111
111
  Button_module_default.icon,
112
- _EGB44W5Vcjs.materialIconSize[size],
112
+ _7TEFD526cjs.materialIconSize[size],
113
113
  disabledPrimary && Button_module_default.disabledPrimary
114
114
  ),
115
- size: _EGB44W5Vcjs.internalIconSize[size]
115
+ size: _7TEFD526cjs.internalIconSize[size]
116
116
  }
117
117
  ),
118
118
  loading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -146,4 +146,4 @@ var Button_default = Button;
146
146
 
147
147
 
148
148
  exports.Button_default = Button_default;
149
- //# sourceMappingURL=K4QY6POL.cjs.map
149
+ //# sourceMappingURL=TSMYMWWE.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Button/Button.tsx","css-module:./Button.module.css#css-module"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,kBAAuC;AACvD,OAAO,gBAAgB;;;ACDqE,IAAO,wBAAQ,EAAC,UAAS,mBAAkB,aAAY,sBAAqB,YAAW,sBAAqB,mBAAkB,6BAA4B,aAAY,uBAAsB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,QAAO,kBAAiB,UAAS,oBAAmB,UAAS,oBAAmB,UAAS,oBAAmB,WAAU,sBAAqB,6BAA4B,sCAAqC,iBAAgB,2BAA0B;;;AD4IpkB,SAsBI,KAtBJ;AA7BN,IAAM,SAAS;AAAA,EACb,CACE;AAAA,IACE,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,OAAO;AAAA,IACP;AAAA,IACA,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,SAAS;AAAA,IACT,KAAK;AAAA,IACL;AAAA,IACA;AAAA,IACA,OAAO;AAAA,EACT,GACA,QACG;AACH,UAAM,aAAa,cAAc;AAEjC,UAAM,uBAAuB,gBAAgB,OAAO,EAAE;AACtD,UAAM,uBAAuB,gBAAgB,OAAO,EAAE;AACtD,UAAM,kBAAkB,UAAU,aAAa;AAC/C,UAAM,aAAa,CAAC,cAAc,YAAY;AAE9C,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU;AAAA,QACV;AAAA,QACA,WAAW;AAAA,UACT,sBAAO;AAAA,UACP;AAAA,UACA;AAAA,UACA,OAAO,OAAO,EAAE;AAAA,UAChB,sBAAO,IAAI;AAAA,UACX;AAAA,YACE,CAAC,sBAAO,SAAS,GAAG;AAAA,YACpB,CAAC,sBAAO,SAAS,GAAG,SAAS,QAAQ,SAAS;AAAA,YAC9C,CAAC,sBAAO,QAAQ,GAAG;AAAA,UACrB;AAAA,QACF;AAAA,QAEC;AAAA,WAAC,WAAW,aACX;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT,sBAAO;AAAA,gBACP,iBAAiB,IAAI;AAAA,gBACrB,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cACA,MAAM,iBAAiB,IAAI;AAAA;AAAA,UAC7B;AAAA,WAEC,WAAW,eAAiB,CAAC,WAAW,SACzC,oBAAC,eAAI,UAAU,GACb,8BAAC,sBAAW,MAAM,oBAAY,IAAI,GAAG,QAAO,UAC1C;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT;AAAA,gBACA,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cAEC,oBAAU,cAAc;AAAA;AAAA,UAC3B,GACF,GACF;AAAA,UAED,CAAC,WAAW,WACX;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT,sBAAO;AAAA,gBACP,iBAAiB,IAAI;AAAA,gBACrB,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cACA,MAAM,iBAAiB,IAAI;AAAA;AAAA,UAC7B;AAAA,UAED,WACC;AAAA,YAAC;AAAA;AAAA,cACC,WAAW,WAAW,sBAAO,SAAS,oBAAoB;AAAA,cAC1D,SAAQ;AAAA,cACR,OAAO,wBAAgB,IAAI;AAAA,cAC3B,QAAQ,wBAAgB,IAAI;AAAA,cAE5B;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAW,sBAAO;AAAA,kBAClB,IAAG;AAAA,kBACH,IAAG;AAAA,kBACH,GAAE;AAAA,kBACF,MAAK;AAAA,kBACL,aAAY;AAAA;AAAA,cACd;AAAA;AAAA,UACF;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF;AAEA,OAAO,cAAc;AAErB,IAAO,iBAAQ","sourcesContent":["import React, { forwardRef, type ComponentProps } from \"react\";\nimport classNames from \"classnames\";\nimport { type Size } from \"../constants\";\nimport Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\nimport { materialIconSize, internalIconSize } from \"./constants/iconSize\";\nimport textVariant from \"./constants/textVariant\";\nimport loadingIconSize from \"./constants/loadingIconSize\";\nimport styles from \"./Button.module.css\";\nimport useIsHydrated from \"../useIsHydrated\";\nimport { backgroundColor } from \"../colors/backgroundColor\";\nimport { foregroundColor } from \"../colors/foregroundColor\";\nimport { border } from \"../colors/border\";\nimport type InternalIcon from \"../Icon/Icon\";\n\ntype ButtonProps = {\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * The text to be displayed inside the button\n */\n text: string;\n /**\n * The text to be displayed inside the button when it is in a loading state\n */\n loadingText?: string;\n /**\n * The color of the button\n *\n * @defaultValue \"primary\"\n */\n color?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"destructive-primary\"\n | \"destructive-secondary\"\n | \"destructive-tertiary\"\n | \"branded\"\n | \"success-primary\"\n | \"success-secondary\"\n | \"success-tertiary\";\n /**\n * The size of the button\n *\n * * `sm`: 32px\n * * `md`: 48px\n * * `lg`: 64px\n *\n * @defaultValue \"md\"\n */\n size?: (typeof Size)[number];\n /**\n * The label to be used for accessibility\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the button will be disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * If `true`, the button will be in a loading state\n *\n * @defaultValue false\n */\n loading?: boolean;\n /**\n * If `true`, the button will take up the full width of its container\n *\n * @defaultValue false\n */\n fullWidth?: boolean;\n /**\n * The icon to be displayed at the start of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n startIcon?:\n | React.ComponentType<{ className?: string }>\n | React.ComponentType<ComponentProps<typeof InternalIcon>>;\n /**\n * The icon to be displayed at the end of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n endIcon?:\n | React.ComponentType<{ className?: string }>\n | React.ComponentType<ComponentProps<typeof InternalIcon>>;\n /**\n * Indicate whether the button renders on a light or dark background. Changes the color of the button\n *\n * @defaulValue `lightBackground`\n */\n on?: \"lightBackground\" | \"darkBackground\";\n /**\n * The callback to be called when the button is clicked\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * The tooltip to be displayed when the user hovers over the button\n */\n tooltip?: string;\n /**\n * The type you want to set for the primitive `<button/>`\n */\n type?: \"button\" | \"submit\" | \"reset\";\n};\n\n/**\n * [Button](https://cambly-syntax.vercel.app/?path=/docs/components-button--docs) is used to trigger an action or event, such as submitting a form, opening a dialog, canceling an action, or performing a delete operation.\n */\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n \"data-testid\": dataTestId,\n text,\n loadingText,\n color = \"primary\",\n size = \"md\",\n accessibilityLabel,\n disabled = false,\n loading = false,\n fullWidth = false,\n startIcon: StartIcon,\n endIcon: EndIcon,\n on = \"lightBackground\",\n onClick,\n tooltip,\n type = \"button\",\n }: ButtonProps,\n ref,\n ) => {\n const isHydrated = useIsHydrated();\n\n const foregroundColorClass = foregroundColor(color, on);\n const backgroundColorClass = backgroundColor(color, on);\n const disabledPrimary = color === \"primary\" && disabled;\n const isDisabled = !isHydrated || disabled || loading;\n\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={isDisabled}\n onClick={onClick}\n className={classNames(\n styles.button,\n foregroundColorClass,\n backgroundColorClass,\n border(color, on),\n styles[size],\n {\n [styles.fullWidth]: fullWidth,\n [styles.buttonGap]: size === \"lg\" || size === \"md\",\n [styles.disabled]: isDisabled,\n },\n )}\n >\n {!loading && StartIcon && (\n <StartIcon\n className={classNames(\n styles.icon,\n materialIconSize[size],\n disabledPrimary && styles.disabledPrimary,\n )}\n size={internalIconSize[size]}\n />\n )}\n {((loading && loadingText) || (!loading && text)) && (\n <Box paddingX={1}>\n <Typography size={textVariant[size]} weight=\"medium\">\n <span\n className={classNames(\n foregroundColorClass,\n disabledPrimary && styles.disabledPrimary,\n )}\n >\n {loading ? loadingText : text}\n </span>\n </Typography>\n </Box>\n )}\n {!loading && EndIcon && (\n <EndIcon\n className={classNames(\n styles.icon,\n materialIconSize[size],\n disabledPrimary && styles.disabledPrimary,\n )}\n size={internalIconSize[size]}\n />\n )}\n {loading && (\n <svg\n className={classNames(styles.loading, foregroundColorClass)}\n viewBox=\"22 22 44 44\"\n width={loadingIconSize[size]}\n height={loadingIconSize[size]}\n >\n <circle\n className={styles.loadingCircle}\n cx=\"44\"\n cy=\"44\"\n r=\"20.2\"\n fill=\"none\"\n strokeWidth=\"3.6\"\n />\n </svg>\n )}\n </button>\n );\n },\n);\n\nButton.displayName = \"Button\";\n\nexport default Button;\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/Button/Button.module.css\"; export default {\"button\":\"_button_17niw_1\",\"buttonGap\":\"_buttonGap_17niw_8\",\"disabled\":\"_disabled_17niw_42\",\"disabledPrimary\":\"_disabledPrimary_17niw_49\",\"fullWidth\":\"_fullWidth_17niw_53\",\"sm\":\"_sm_17niw_57\",\"md\":\"_md_17niw_64\",\"lg\":\"_lg_17niw_71\",\"icon\":\"_icon_17niw_78\",\"smIcon\":\"_smIcon_17niw_82\",\"mdIcon\":\"_mdIcon_17niw_89\",\"lgIcon\":\"_lgIcon_17niw_96\",\"loading\":\"_loading_17niw_113\",\"syntaxButtonLoadingRotate\":\"_syntaxButtonLoadingRotate_17niw_1\",\"loadingCircle\":\"_loadingCircle_17niw_117\"}"]}
1
+ {"version":3,"sources":["../../src/Button/Button.tsx","css-module:./Button.module.css#css-module"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAgB,kBAAuC;AACvD,OAAO,gBAAgB;;;ACDqE,IAAO,wBAAQ,EAAC,UAAS,mBAAkB,aAAY,sBAAqB,YAAW,sBAAqB,mBAAkB,6BAA4B,aAAY,uBAAsB,MAAK,gBAAe,MAAK,gBAAe,MAAK,gBAAe,QAAO,kBAAiB,UAAS,oBAAmB,UAAS,oBAAmB,UAAS,qBAAoB,WAAU,sBAAqB,6BAA4B,sCAAqC,iBAAgB,2BAA0B;;;AD4IrkB,SAsBI,KAtBJ;AA7BN,IAAM,SAAS;AAAA,EACb,CACE;AAAA,IACE,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,OAAO;AAAA,IACP;AAAA,IACA,WAAW;AAAA,IACX,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,SAAS;AAAA,IACT,KAAK;AAAA,IACL;AAAA,IACA;AAAA,IACA,OAAO;AAAA,EACT,GACA,QACG;AACH,UAAM,aAAa,cAAc;AAEjC,UAAM,uBAAuB,gBAAgB,OAAO,EAAE;AACtD,UAAM,uBAAuB,gBAAgB,OAAO,EAAE;AACtD,UAAM,kBAAkB,UAAU,aAAa;AAC/C,UAAM,aAAa,CAAC,cAAc,YAAY;AAE9C,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb;AAAA,QACA,cAAY;AAAA,QACZ;AAAA,QACA,OAAO;AAAA,QACP,UAAU;AAAA,QACV;AAAA,QACA,WAAW;AAAA,UACT,sBAAO;AAAA,UACP;AAAA,UACA;AAAA,UACA,OAAO,OAAO,EAAE;AAAA,UAChB,sBAAO,IAAI;AAAA,UACX;AAAA,YACE,CAAC,sBAAO,SAAS,GAAG;AAAA,YACpB,CAAC,sBAAO,SAAS,GAAG,SAAS,QAAQ,SAAS;AAAA,YAC9C,CAAC,sBAAO,QAAQ,GAAG;AAAA,UACrB;AAAA,QACF;AAAA,QAEC;AAAA,WAAC,WAAW,aACX;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT,sBAAO;AAAA,gBACP,iBAAiB,IAAI;AAAA,gBACrB,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cACA,MAAM,iBAAiB,IAAI;AAAA;AAAA,UAC7B;AAAA,WAEC,WAAW,eAAiB,CAAC,WAAW,SACzC,oBAAC,eAAI,UAAU,GACb,8BAAC,sBAAW,MAAM,oBAAY,IAAI,GAAG,QAAO,UAC1C;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT;AAAA,gBACA,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cAEC,oBAAU,cAAc;AAAA;AAAA,UAC3B,GACF,GACF;AAAA,UAED,CAAC,WAAW,WACX;AAAA,YAAC;AAAA;AAAA,cACC,WAAW;AAAA,gBACT,sBAAO;AAAA,gBACP,iBAAiB,IAAI;AAAA,gBACrB,mBAAmB,sBAAO;AAAA,cAC5B;AAAA,cACA,MAAM,iBAAiB,IAAI;AAAA;AAAA,UAC7B;AAAA,UAED,WACC;AAAA,YAAC;AAAA;AAAA,cACC,WAAW,WAAW,sBAAO,SAAS,oBAAoB;AAAA,cAC1D,SAAQ;AAAA,cACR,OAAO,wBAAgB,IAAI;AAAA,cAC3B,QAAQ,wBAAgB,IAAI;AAAA,cAE5B;AAAA,gBAAC;AAAA;AAAA,kBACC,WAAW,sBAAO;AAAA,kBAClB,IAAG;AAAA,kBACH,IAAG;AAAA,kBACH,GAAE;AAAA,kBACF,MAAK;AAAA,kBACL,aAAY;AAAA;AAAA,cACd;AAAA;AAAA,UACF;AAAA;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF;AAEA,OAAO,cAAc;AAErB,IAAO,iBAAQ","sourcesContent":["import React, { forwardRef, type ComponentProps } from \"react\";\nimport classNames from \"classnames\";\nimport { type Size } from \"../constants\";\nimport Typography from \"../Typography/Typography\";\nimport Box from \"../Box/Box\";\nimport { materialIconSize, internalIconSize } from \"./constants/iconSize\";\nimport textVariant from \"./constants/textVariant\";\nimport loadingIconSize from \"./constants/loadingIconSize\";\nimport styles from \"./Button.module.css\";\nimport useIsHydrated from \"../useIsHydrated\";\nimport { backgroundColor } from \"../colors/backgroundColor\";\nimport { foregroundColor } from \"../colors/foregroundColor\";\nimport { border } from \"../colors/border\";\nimport type InternalIcon from \"../Icon/Icon\";\n\ntype ButtonProps = {\n /**\n * Test id for the button\n */\n \"data-testid\"?: string;\n /**\n * The text to be displayed inside the button\n */\n text: string;\n /**\n * The text to be displayed inside the button when it is in a loading state\n */\n loadingText?: string;\n /**\n * The color of the button\n *\n * @defaultValue \"primary\"\n */\n color?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"destructive-primary\"\n | \"destructive-secondary\"\n | \"destructive-tertiary\"\n | \"branded\"\n | \"success-primary\"\n | \"success-secondary\"\n | \"success-tertiary\";\n /**\n * The size of the button\n *\n * * `sm`: 32px\n * * `md`: 48px\n * * `lg`: 64px\n *\n * @defaultValue \"md\"\n */\n size?: (typeof Size)[number];\n /**\n * The label to be used for accessibility\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the button will be disabled\n *\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * If `true`, the button will be in a loading state\n *\n * @defaultValue false\n */\n loading?: boolean;\n /**\n * If `true`, the button will take up the full width of its container\n *\n * @defaultValue false\n */\n fullWidth?: boolean;\n /**\n * The icon to be displayed at the start of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n startIcon?:\n | React.ComponentType<{ className?: string }>\n | React.ComponentType<ComponentProps<typeof InternalIcon>>;\n /**\n * The icon to be displayed at the end of the button. Please use a [Rounded Material Icon](https://material.io/resources/icons/?style=round)\n */\n endIcon?:\n | React.ComponentType<{ className?: string }>\n | React.ComponentType<ComponentProps<typeof InternalIcon>>;\n /**\n * Indicate whether the button renders on a light or dark background. Changes the color of the button\n *\n * @defaulValue `lightBackground`\n */\n on?: \"lightBackground\" | \"darkBackground\";\n /**\n * The callback to be called when the button is clicked\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * The tooltip to be displayed when the user hovers over the button\n */\n tooltip?: string;\n /**\n * The type you want to set for the primitive `<button/>`\n */\n type?: \"button\" | \"submit\" | \"reset\";\n};\n\n/**\n * [Button](https://cambly-syntax.vercel.app/?path=/docs/components-button--docs) is used to trigger an action or event, such as submitting a form, opening a dialog, canceling an action, or performing a delete operation.\n */\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n \"data-testid\": dataTestId,\n text,\n loadingText,\n color = \"primary\",\n size = \"md\",\n accessibilityLabel,\n disabled = false,\n loading = false,\n fullWidth = false,\n startIcon: StartIcon,\n endIcon: EndIcon,\n on = \"lightBackground\",\n onClick,\n tooltip,\n type = \"button\",\n }: ButtonProps,\n ref,\n ) => {\n const isHydrated = useIsHydrated();\n\n const foregroundColorClass = foregroundColor(color, on);\n const backgroundColorClass = backgroundColor(color, on);\n const disabledPrimary = color === \"primary\" && disabled;\n const isDisabled = !isHydrated || disabled || loading;\n\n return (\n <button\n data-testid={dataTestId}\n ref={ref}\n aria-label={accessibilityLabel}\n type={type}\n title={tooltip}\n disabled={isDisabled}\n onClick={onClick}\n className={classNames(\n styles.button,\n foregroundColorClass,\n backgroundColorClass,\n border(color, on),\n styles[size],\n {\n [styles.fullWidth]: fullWidth,\n [styles.buttonGap]: size === \"lg\" || size === \"md\",\n [styles.disabled]: isDisabled,\n },\n )}\n >\n {!loading && StartIcon && (\n <StartIcon\n className={classNames(\n styles.icon,\n materialIconSize[size],\n disabledPrimary && styles.disabledPrimary,\n )}\n size={internalIconSize[size]}\n />\n )}\n {((loading && loadingText) || (!loading && text)) && (\n <Box paddingX={1}>\n <Typography size={textVariant[size]} weight=\"medium\">\n <span\n className={classNames(\n foregroundColorClass,\n disabledPrimary && styles.disabledPrimary,\n )}\n >\n {loading ? loadingText : text}\n </span>\n </Typography>\n </Box>\n )}\n {!loading && EndIcon && (\n <EndIcon\n className={classNames(\n styles.icon,\n materialIconSize[size],\n disabledPrimary && styles.disabledPrimary,\n )}\n size={internalIconSize[size]}\n />\n )}\n {loading && (\n <svg\n className={classNames(styles.loading, foregroundColorClass)}\n viewBox=\"22 22 44 44\"\n width={loadingIconSize[size]}\n height={loadingIconSize[size]}\n >\n <circle\n className={styles.loadingCircle}\n cx=\"44\"\n cy=\"44\"\n r=\"20.2\"\n fill=\"none\"\n strokeWidth=\"3.6\"\n />\n </svg>\n )}\n </button>\n );\n },\n);\n\nButton.displayName = \"Button\";\n\nexport default Button;\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/Button/Button.module.css\"; export default {\"button\":\"_button_1hpt0_1\",\"buttonGap\":\"_buttonGap_1hpt0_8\",\"disabled\":\"_disabled_1hpt0_42\",\"disabledPrimary\":\"_disabledPrimary_1hpt0_56\",\"fullWidth\":\"_fullWidth_1hpt0_60\",\"sm\":\"_sm_1hpt0_64\",\"md\":\"_md_1hpt0_71\",\"lg\":\"_lg_1hpt0_78\",\"icon\":\"_icon_1hpt0_85\",\"smIcon\":\"_smIcon_1hpt0_89\",\"mdIcon\":\"_mdIcon_1hpt0_96\",\"lgIcon\":\"_lgIcon_1hpt0_103\",\"loading\":\"_loading_1hpt0_120\",\"syntaxButtonLoadingRotate\":\"_syntaxButtonLoadingRotate_1hpt0_1\",\"loadingCircle\":\"_loadingCircle_1hpt0_124\"}"]}
@@ -1,7 +1,7 @@
1
1
  "use client"
2
2
  import {
3
3
  Button_default
4
- } from "./GN5VNYV3.js";
4
+ } from "./BTBAAACD.js";
5
5
  import {
6
6
  Divider
7
7
  } from "./YAZOHZLW.js";
@@ -208,4 +208,4 @@ export {
208
208
  RichSelectBoxContext,
209
209
  RichSelectBox_default
210
210
  };
211
- //# sourceMappingURL=ASKKVHEA.js.map
211
+ //# sourceMappingURL=TU2BVOKD.js.map
@@ -1,19 +1,20 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }"use client"
2
2
 
3
3
 
4
- var _325VK7L2cjs = require('./325VK7L2.cjs');
4
+ var _C4GAUB4Ycjs = require('./C4GAUB4Y.cjs');
5
5
 
6
6
 
7
7
  var _J27AGJQBcjs = require('./J27AGJQB.cjs');
8
8
 
9
9
 
10
10
 
11
- var _7SNO5LIAcjs = require('./7SNO5LIA.cjs');
12
11
 
12
+ var _OXSHUPNOcjs = require('./OXSHUPNO.cjs');
13
13
 
14
14
 
15
15
 
16
- var _IBNQI7PMcjs = require('./IBNQI7PM.cjs');
16
+
17
+ var _LIUV3J2Mcjs = require('./LIUV3J2M.cjs');
17
18
 
18
19
 
19
20
  var _I76WKOLEcjs = require('./I76WKOLE.cjs');
@@ -77,7 +78,8 @@ function RichSelectList(props) {
77
78
  placeholderText,
78
79
  selectTextValue,
79
80
  selectedValues: selectedValuesProp,
80
- defaultSelectedValues: defaultSelectedValuesProp
81
+ defaultSelectedValues: defaultSelectedValuesProp,
82
+ color = "white"
81
83
  } = _a, richSelectBoxProps = _X2SDR4SDcjs.__objRest.call(void 0, _a, [
82
84
  "autosave",
83
85
  "children",
@@ -92,7 +94,8 @@ function RichSelectList(props) {
92
94
  "placeholderText",
93
95
  "selectTextValue",
94
96
  "selectedValues",
95
- "defaultSelectedValues"
97
+ "defaultSelectedValues",
98
+ "color"
96
99
  ]);
97
100
  const reactId = _react.useId.call(void 0, );
98
101
  const inputId = id != null ? id : reactId;
@@ -100,11 +103,11 @@ function RichSelectList(props) {
100
103
  const disabled = !isHydrated || disabledProp;
101
104
  const overlayHandlerRef = _react.useRef.call(void 0, {});
102
105
  const selectedKeysProp = _react.useMemo.call(void 0,
103
- () => _IBNQI7PMcjs.convertSelection.call(void 0, selectedValuesProp),
106
+ () => _LIUV3J2Mcjs.convertSelection.call(void 0, selectedValuesProp),
104
107
  [selectedValuesProp]
105
108
  );
106
109
  const defaultSelectedKeys = _react.useMemo.call(void 0,
107
- () => _IBNQI7PMcjs.convertSelection.call(void 0, defaultSelectedValuesProp, /* @__PURE__ */ new Set()),
110
+ () => _LIUV3J2Mcjs.convertSelection.call(void 0, defaultSelectedValuesProp, /* @__PURE__ */ new Set()),
108
111
  [defaultSelectedValuesProp]
109
112
  );
110
113
  const [selectedKeys, setSelectedKeys] = _utils.useControlledState.call(void 0,
@@ -138,11 +141,26 @@ function RichSelectList(props) {
138
141
  description: helperText,
139
142
  errorMessage: errorText
140
143
  });
144
+ const textColor = {
145
+ white: "gray700",
146
+ clear: "white"
147
+ };
148
+ const getArrowIconColor = () => {
149
+ if (errorText) {
150
+ return _OXSHUPNOcjs.ColorBaseDestructive700;
151
+ } else {
152
+ if (color === "clear") {
153
+ return _OXSHUPNOcjs.ColorCambioWhite100;
154
+ } else {
155
+ return _OXSHUPNOcjs.ColorBaseGray700;
156
+ }
157
+ }
158
+ };
141
159
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
142
160
  _reactariacomponents.Provider,
143
161
  {
144
162
  values: [
145
- [_IBNQI7PMcjs.RichSelectBoxContext, { autoFocus: true }],
163
+ [_LIUV3J2Mcjs.RichSelectBoxContext, { autoFocus: true }],
146
164
  [_J27AGJQBcjs.DialogContext, { padding: autosave ? void 0 : 0 }]
147
165
  // this is altering Popover's internal dialog padding to show the sticky save/close buttons. Ideally this could be avoided
148
166
  ],
@@ -166,11 +184,11 @@ function RichSelectList(props) {
166
184
  (_a2 = fieldRef.current) == null ? void 0 : _a2.focus();
167
185
  _interactions.setInteractionModality.call(void 0, "keyboard");
168
186
  },
169
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _KJLBDAZHcjs.Box_default, { paddingX: 1, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _FEFAG4KTcjs.Typography_default, { size: 100, color: "gray700", children: label }) })
187
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _KJLBDAZHcjs.Box_default, { paddingX: 1, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _FEFAG4KTcjs.Typography_default, { size: 100, color: textColor[color], children: label }) })
170
188
  })
171
189
  ) }),
172
190
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
173
- _325VK7L2cjs.Popover_default,
191
+ _C4GAUB4Ycjs.Popover_default,
174
192
  {
175
193
  ref: overlayHandlerRef,
176
194
  disabled,
@@ -183,7 +201,7 @@ function RichSelectList(props) {
183
201
  dangerouslySetInlineStyle: autosave ? void 0 : { __style: { paddingBottom: 0 } },
184
202
  role: "menu",
185
203
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
186
- _IBNQI7PMcjs.RichSelectBox_default,
204
+ _LIUV3J2Mcjs.RichSelectBox_default,
187
205
  _X2SDR4SDcjs.__spreadProps.call(void 0, _X2SDR4SDcjs.__spreadValues.call(void 0, {
188
206
  autosave,
189
207
  selectedValues: selectedKeys,
@@ -216,7 +234,8 @@ function RichSelectList(props) {
216
234
  {
217
235
  [SelectList_module_default.unselected]: !errorText && selectedKeys !== "all" && !selectedKeys.size,
218
236
  [SelectList_module_default.selected]: !errorText && (selectedKeys === "all" || selectedKeys.size),
219
- [SelectList_module_default.selectErrorCambio]: errorText
237
+ [SelectList_module_default.selectErrorCambio]: errorText,
238
+ [SelectList_module_default[`selectColor${color}`]]: color
220
239
  }
221
240
  ),
222
241
  children: selectedTextValue
@@ -232,7 +251,7 @@ function RichSelectList(props) {
232
251
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
233
252
  "path",
234
253
  {
235
- fill: errorText ? _7SNO5LIAcjs.ColorBaseDestructive700 : _7SNO5LIAcjs.ColorBaseGray800,
254
+ fill: getArrowIconColor(),
236
255
  d: "M15.88 9.29 12 13.17 8.12 9.29a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.59 4.59c.39.39 1.02.39 1.41 0l4.59-4.59c.39-.39.39-1.02 0-1.41-.39-.38-1.03-.39-1.42 0z"
237
256
  }
238
257
  )
@@ -247,7 +266,7 @@ function RichSelectList(props) {
247
266
  _FEFAG4KTcjs.Typography_default,
248
267
  _X2SDR4SDcjs.__spreadProps.call(void 0, _X2SDR4SDcjs.__spreadValues.call(void 0, {
249
268
  size: 100,
250
- color: errorText ? "destructive-primary" : "gray700"
269
+ color: errorText ? "destructive-primary" : textColor[color]
251
270
  }, errorText ? errorMessageProps : descriptionProps), {
252
271
  children: errorText ? errorText : helperText
253
272
  })
@@ -267,4 +286,4 @@ var RichSelectList_default = Object.assign(RichSelectList, {
267
286
 
268
287
 
269
288
  exports.RichSelectList_default = RichSelectList_default;
270
- //# sourceMappingURL=GWHKJE5R.cjs.map
289
+ //# sourceMappingURL=XVYUFV22.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/RichSelect/RichSelectList.tsx","css-module:../SelectList/SelectList.module.css#css-module"],"names":["_a"],"mappings":"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","sourcesContent":["import React, {\n type ReactElement,\n useMemo,\n type SyntheticEvent,\n useRef,\n useId,\n} from \"react\";\nimport classNames from \"classnames\";\nimport {\n ColorBaseDestructive700,\n ColorBaseGray700,\n ColorCambioWhite100,\n} from \"@cambly/syntax-design-tokens\";\nimport Typography from \"../Typography/Typography\";\nimport useIsHydrated from \"../useIsHydrated\";\nimport Popover from \"../Popover/Popover\";\nimport {\n Label as ReactAriaLabel,\n Provider as ReactAriaProvider,\n} from \"react-aria-components\";\nimport { useControlledState } from \"@react-stately/utils\";\nimport { setInteractionModality } from \"@react-aria/interactions\";\nimport { DialogContext } from \"../Dialog/Dialog\";\nimport styles from \"../SelectList/SelectList.module.css\";\nimport RichSelectBox, {\n RichSelectBoxContext,\n convertSelection,\n type RichSelectBoxProps,\n} from \"./RichSelectBox\";\nimport TapArea from \"../TapArea/TapArea\";\nimport { type OverlayHandlerRef } from \"../react-aria-utils/Triggerable\";\nimport Box from \"../Box/Box\";\nimport RichSelectSection from \"./RichSelectSection\";\nimport RichSelectChip from \"./RichSelectChip\";\nimport RichSelectRadioButton from \"./RichSelectRadioButton\";\nimport { useField } from \"react-aria\";\n\nconst NOOP = () => undefined;\n\nexport type RichSelectListProps = RichSelectBoxProps & {\n /** Test id for the select element */\n \"data-testid\"?: string;\n /**\n * Disables the select dropdown entirely\n * @defaultValue false\n */\n disabled?: boolean;\n /** Callback to be called when select is clicked */\n onClick?: (event: SyntheticEvent<HTMLDivElement>) => void;\n /** Text shown below select box if there is an input error. */\n errorText?: string;\n /** Text shown below select box */\n helperText?: string;\n /**\n * RichSelectList id, if not provided, a unique id will be generated\n */\n id?: string;\n /** Text shown above select box */\n label: string;\n /**\n * Text showing in select box if no option has been chosen.\n * There should always have a placeholder unless there is a default option selected\n */\n placeholderText?: string;\n /** Use to render (override) text shown in the select box */\n selectTextValue?: (selectedValues?: \"all\" | string[]) => string | undefined;\n /**\n * Color of the select box\n * @defaultValue white\n */\n color?: \"white\" | \"clear\";\n};\n\n/**\n * [RichSelectList](https://cambly-syntax.vercel.app/?path=/docs/components-richselectlist--docs) is a dropdown menu that allows users to select one or multiple options from a list.\n *\n * Example Usage:\n ```\n <RichSelectList\n label=\"My Label\"\n multiple\n onChange={() => { ... }}\n primaryButtonText=\"Save\"\n primaryButtonAccessibilityLabel=\"Save\"\n secondaryButtonText=\"Clear\"\n secondaryButtonAccessibilityLabel=\"Clear\"\n >\n <RichSelectList.Section label=\"Cities\">\n <RichSelectList.Chip label=\"San Francisco\" value=\"sf\" />\n <RichSelectList.Chip label=\"New York\" value=\"ny\" disabled />\n <RichSelectList.Chip label=\"Tulsa\" value=\"tulsa\" />\n <RichSelectList.Chip label=\"Chicago\" value=\"chicago\" disabled />\n </RichSelectList.Section>\n </RichSelectList>\n ```\n */\nfunction RichSelectList(props: RichSelectListProps): ReactElement {\n const {\n autosave,\n children,\n \"data-testid\": dataTestId,\n disabled: disabledProp = false,\n errorText,\n helperText,\n label,\n id,\n onChange,\n onClick = NOOP,\n placeholderText,\n selectTextValue,\n selectedValues: selectedValuesProp,\n defaultSelectedValues: defaultSelectedValuesProp,\n color = \"white\",\n ...richSelectBoxProps\n } = props;\n\n const reactId = useId();\n const inputId = id ?? reactId;\n const isHydrated = useIsHydrated();\n const disabled = !isHydrated || disabledProp;\n\n // passed to popover, which attached open/close methods\n const overlayHandlerRef = useRef<OverlayHandlerRef>({});\n\n const selectedKeysProp = useMemo(\n () => convertSelection(selectedValuesProp),\n [selectedValuesProp],\n );\n const defaultSelectedKeys = useMemo(\n () => convertSelection(defaultSelectedValuesProp, new Set()),\n [defaultSelectedValuesProp],\n );\n const [selectedKeys, setSelectedKeys] = useControlledState(\n selectedKeysProp!, // eslint-disable-line @typescript-eslint/no-non-null-assertion -- there is a bug in the typedef for useControlledState from react-stately. Internally they rely on value (first arg) able to be undefined\n defaultSelectedKeys,\n (value) => {\n const _value = value === \"all\" ? \"all\" : [...value].map(String);\n onChange(_value);\n if (!autosave) overlayHandlerRef.current.close?.();\n },\n );\n\n const selectedTextValue = useMemo(() => {\n if (selectTextValue)\n return (\n selectTextValue(\n selectedKeys === \"all\" ? \"all\" : [...selectedKeys].map(String),\n ) ?? placeholderText\n );\n if (selectedKeys === \"all\") return \"All selected\";\n if (selectedKeys.size) return `${selectedKeys.size} selected`;\n return placeholderText;\n }, [selectTextValue, selectedKeys, placeholderText]);\n\n const fieldRef = useRef<HTMLDivElement>(null);\n const { labelProps, fieldProps, descriptionProps, errorMessageProps } =\n useField({\n label, // this is the label for the select box\n description: helperText,\n errorMessage: errorText,\n });\n\n const textColor = {\n white: \"gray700\",\n clear: \"white\",\n } as const;\n\n const getArrowIconColor = () => {\n if (errorText) {\n return ColorBaseDestructive700;\n } else {\n if (color === \"clear\") {\n return ColorCambioWhite100;\n } else {\n return ColorBaseGray700;\n }\n }\n };\n\n return (\n <ReactAriaProvider\n values={[\n [RichSelectBoxContext, { autoFocus: true }],\n [DialogContext, { padding: autosave ? undefined : 0 }], // this is altering Popover's internal dialog padding to show the sticky save/close buttons. Ideally this could be avoided\n ]}\n >\n <div\n className={classNames(styles.selectContainer, {\n [styles.opacityOverlay]: disabled,\n })}\n onClick={onClick}\n >\n {label && (\n <>\n <ReactAriaLabel\n data-testid={[dataTestId, \"label\"].filter(Boolean).join(\"-\")}\n {...labelProps}\n onClick={() => {\n if (disabled) return;\n fieldRef.current?.focus();\n setInteractionModality(\"keyboard\"); // Show the focus ring so the user knows where focus went\n }}\n >\n <Box paddingX={1}>\n <Typography size={100} color={textColor[color]}>\n {label}\n </Typography>\n </Box>\n </ReactAriaLabel>\n </>\n )}\n <Popover\n ref={overlayHandlerRef}\n disabled={disabled}\n content={\n // this Box wrapper is to reapply the padding that was stripped from popover's dialog to show the sticky save/close buttons. Ideally this could be avoided\n <Box\n padding={autosave ? undefined : 5}\n dangerouslySetInlineStyle={\n autosave ? undefined : { __style: { paddingBottom: 0 } }\n }\n role=\"menu\"\n >\n <RichSelectBox\n autosave={autosave}\n selectedValues={selectedKeys}\n defaultSelectedValues={defaultSelectedKeys}\n onChange={(selected) => setSelectedKeys(new Set(selected))}\n {...richSelectBoxProps}\n accessibilityLabel={inputId}\n >\n {children}\n </RichSelectBox>\n </Box>\n }\n >\n <TapArea\n data-testid={dataTestId}\n disabled={disabled}\n onClick={onClick}\n rounding=\"md\"\n {...fieldProps}\n ref={fieldRef}\n >\n <div className={styles.selectWrapper}>\n <div\n className={classNames(\n styles.selectBox,\n styles.selectBoxCambio,\n {\n [styles.unselected]:\n !errorText &&\n selectedKeys !== \"all\" &&\n !selectedKeys.size,\n [styles.selected]:\n !errorText &&\n (selectedKeys === \"all\" || selectedKeys.size),\n [styles.selectErrorCambio]: errorText,\n [styles[`selectColor${color}`]]: color,\n },\n )}\n >\n {selectedTextValue}\n </div>\n <div className={styles.arrowIcon}>\n <svg\n focusable=\"false\"\n aria-hidden=\"true\"\n viewBox=\"0 0 24 24\"\n width={24}\n >\n <path\n fill={getArrowIconColor()}\n d=\"M15.88 9.29 12 13.17 8.12 9.29a.9959.9959 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41l4.59 4.59c.39.39 1.02.39 1.41 0l4.59-4.59c.39-.39.39-1.02 0-1.41-.39-.38-1.03-.39-1.42 0z\"\n />\n </svg>\n </div>\n </div>\n </TapArea>\n </Popover>\n {(helperText || errorText) && (\n <Box paddingX={1}>\n <Typography\n size={100}\n color={errorText ? \"destructive-primary\" : textColor[color]}\n {...(errorText ? errorMessageProps : descriptionProps)}\n >\n {errorText ? errorText : helperText}\n </Typography>\n </Box>\n )}\n </div>\n </ReactAriaProvider>\n );\n}\n\nexport default Object.assign(RichSelectList, {\n Section: RichSelectSection,\n Chip: RichSelectChip,\n RadioButton: RichSelectRadioButton,\n});\n","import \"/home/runner/work/syntax/syntax/packages/syntax-core/src/SelectList/SelectList.module.css\"; export default {\"selectContainer\":\"_selectContainer_1g9ap_1\",\"opacityOverlay\":\"_opacityOverlay_1g9ap_7\",\"selectWrapper\":\"_selectWrapper_1g9ap_11\",\"selectBox\":\"_selectBox_1g9ap_16\",\"selectBoxCambio\":\"_selectBoxCambio_1g9ap_30\",\"selectMouseFocusStyling\":\"_selectMouseFocusStyling_1g9ap_38\",\"unselected\":\"_unselected_1g9ap_43\",\"selected\":\"_selected_1g9ap_47\",\"arrowIcon\":\"_arrowIcon_1g9ap_51\",\"selectErrorCambio\":\"_selectErrorCambio_1g9ap_65\",\"selectColorwhite\":\"_selectColorwhite_1g9ap_71\",\"selectColorclear\":\"_selectColorclear_1g9ap_77\"}"]}
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _EGB44W5Vcjs = require('./EGB44W5V.cjs');
5
+ var _7TEFD526cjs = require('./7TEFD526.cjs');
6
6
 
7
7
 
8
8
  var _LZYX5BWDcjs = require('./LZYX5BWD.cjs');
@@ -60,8 +60,8 @@ var IconButton = _react.forwardRef.call(void 0,
60
60
  children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
61
61
  Icon,
62
62
  {
63
- className: _EGB44W5Vcjs.materialIconSize[size],
64
- size: _EGB44W5Vcjs.internalIconSize[size]
63
+ className: _7TEFD526cjs.materialIconSize[size],
64
+ size: _7TEFD526cjs.internalIconSize[size]
65
65
  }
66
66
  )
67
67
  }
@@ -74,4 +74,4 @@ var IconButton_default = IconButton;
74
74
 
75
75
 
76
76
  exports.IconButton_default = IconButton_default;
77
- //# sourceMappingURL=DOYGRWJR.cjs.map
77
+ //# sourceMappingURL=YJAKY2I2.cjs.map
package/dist/index.cjs CHANGED
@@ -16,7 +16,7 @@ var _C3FW5QDGcjs = require('./__chunks/C3FW5QDG.cjs');
16
16
  var _L32D5WEGcjs = require('./__chunks/L32D5WEG.cjs');
17
17
 
18
18
 
19
- var _YRFKC6UHcjs = require('./__chunks/YRFKC6UH.cjs');
19
+ var _IYYTLOO3cjs = require('./__chunks/IYYTLOO3.cjs');
20
20
 
21
21
 
22
22
  var _Q4P2W7UUcjs = require('./__chunks/Q4P2W7UU.cjs');
@@ -25,29 +25,29 @@ require('./__chunks/G3SXARBL.cjs');
25
25
  require('./__chunks/THM3NAFO.cjs');
26
26
 
27
27
 
28
- var _6JEGAMYWcjs = require('./__chunks/6JEGAMYW.cjs');
28
+ var _BZ546NNEcjs = require('./__chunks/BZ546NNE.cjs');
29
29
 
30
30
 
31
31
  var _L5RBAKANcjs = require('./__chunks/L5RBAKAN.cjs');
32
32
 
33
33
 
34
- var _FC54JDM6cjs = require('./__chunks/FC54JDM6.cjs');
34
+ var _H3QQNW5Xcjs = require('./__chunks/H3QQNW5X.cjs');
35
35
 
36
36
 
37
- var _GWHKJE5Rcjs = require('./__chunks/GWHKJE5R.cjs');
37
+ var _XVYUFV22cjs = require('./__chunks/XVYUFV22.cjs');
38
38
 
39
39
 
40
- var _325VK7L2cjs = require('./__chunks/325VK7L2.cjs');
41
- require('./__chunks/KXPCTYHD.cjs');
40
+ var _C4GAUB4Ycjs = require('./__chunks/C4GAUB4Y.cjs');
41
+ require('./__chunks/RCCK2EW4.cjs');
42
42
  require('./__chunks/J27AGJQB.cjs');
43
43
 
44
44
 
45
- var _DOYGRWJRcjs = require('./__chunks/DOYGRWJR.cjs');
46
- require('./__chunks/7SNO5LIA.cjs');
47
- require('./__chunks/IBNQI7PM.cjs');
45
+ var _YJAKY2I2cjs = require('./__chunks/YJAKY2I2.cjs');
46
+ require('./__chunks/OXSHUPNO.cjs');
47
+ require('./__chunks/LIUV3J2M.cjs');
48
48
 
49
49
 
50
- var _K4QY6POLcjs = require('./__chunks/K4QY6POL.cjs');
50
+ var _TSMYMWWEcjs = require('./__chunks/TSMYMWWE.cjs');
51
51
 
52
52
 
53
53
  var _42SRFCQLcjs = require('./__chunks/42SRFCQL.cjs');
@@ -56,7 +56,7 @@ var _42SRFCQLcjs = require('./__chunks/42SRFCQL.cjs');
56
56
  var _C5XPZTFOcjs = require('./__chunks/C5XPZTFO.cjs');
57
57
  require('./__chunks/5JUNB754.cjs');
58
58
  require('./__chunks/3P2PWHOU.cjs');
59
- require('./__chunks/EGB44W5V.cjs');
59
+ require('./__chunks/7TEFD526.cjs');
60
60
  require('./__chunks/I76WKOLE.cjs');
61
61
  require('./__chunks/MF7LLV7V.cjs');
62
62
  require('./__chunks/XTZEWLM5.cjs');
@@ -145,5 +145,5 @@ require('./__chunks/X2SDR4SD.cjs');
145
145
 
146
146
 
147
147
 
148
- exports.Avatar = _RC7EMZ6Ncjs.Avatar_default; exports.AvatarGroup = _5COVOOB3cjs.AvatarGroup; exports.Badge = _XG7O4UGWcjs.Badge_default; exports.Box = _KJLBDAZHcjs.Box_default; exports.Button = _K4QY6POLcjs.Button_default; exports.ButtonGroup = _C5XPZTFOcjs.ButtonGroup_default; exports.Card = _L32D5WEGcjs.Card_default; exports.Checkbox = _C3FW5QDGcjs.Checkbox_default; exports.Chip = _SKFX2MXKcjs.Chip_default; exports.Divider = _42SRFCQLcjs.Divider; exports.Heading = _Q4P2W7UUcjs.Heading_default; exports.Icon = _L5RBAKANcjs.Icon_default; exports.IconButton = _DOYGRWJRcjs.IconButton_default; exports.LinkButton = _6JEGAMYWcjs.LinkButton_default; exports.Modal = _YRFKC6UHcjs.Modal; exports.Popover = _325VK7L2cjs.Popover_default; exports.RadioButton = _EF6R3LRBcjs.RadioButton_default; exports.RichSelectList = _GWHKJE5Rcjs.RichSelectList_default; exports.SelectList = _FC54JDM6cjs.SelectList; exports.Tabs = _HBIGKRZ2cjs.Tabs; exports.TapArea = _3UEOKPM2cjs.TapArea_default; exports.TextArea = _HBHOLWEMcjs.TextArea_default; exports.TextField = _CW24HTITcjs.TextField; exports.ThemeProvider = _36JMUQOLcjs.ThemeProvider; exports.Tooltip = _QI5Q2WJGcjs.Tooltip_default; exports.Typography = _FEFAG4KTcjs.Typography_default;
148
+ exports.Avatar = _RC7EMZ6Ncjs.Avatar_default; exports.AvatarGroup = _5COVOOB3cjs.AvatarGroup; exports.Badge = _XG7O4UGWcjs.Badge_default; exports.Box = _KJLBDAZHcjs.Box_default; exports.Button = _TSMYMWWEcjs.Button_default; exports.ButtonGroup = _C5XPZTFOcjs.ButtonGroup_default; exports.Card = _L32D5WEGcjs.Card_default; exports.Checkbox = _C3FW5QDGcjs.Checkbox_default; exports.Chip = _SKFX2MXKcjs.Chip_default; exports.Divider = _42SRFCQLcjs.Divider; exports.Heading = _Q4P2W7UUcjs.Heading_default; exports.Icon = _L5RBAKANcjs.Icon_default; exports.IconButton = _YJAKY2I2cjs.IconButton_default; exports.LinkButton = _BZ546NNEcjs.LinkButton_default; exports.Modal = _IYYTLOO3cjs.Modal; exports.Popover = _C4GAUB4Ycjs.Popover_default; exports.RadioButton = _EF6R3LRBcjs.RadioButton_default; exports.RichSelectList = _XVYUFV22cjs.RichSelectList_default; exports.SelectList = _H3QQNW5Xcjs.SelectList; exports.Tabs = _HBIGKRZ2cjs.Tabs; exports.TapArea = _3UEOKPM2cjs.TapArea_default; exports.TextArea = _HBHOLWEMcjs.TextArea_default; exports.TextField = _CW24HTITcjs.TextField; exports.ThemeProvider = _36JMUQOLcjs.ThemeProvider; exports.Tooltip = _QI5Q2WJGcjs.Tooltip_default; exports.Typography = _FEFAG4KTcjs.Typography_default;
149
149
  //# sourceMappingURL=index.cjs.map
package/dist/index.css CHANGED
@@ -2263,76 +2263,82 @@
2263
2263
  }
2264
2264
 
2265
2265
  /* css-module:/home/runner/work/syntax/syntax/packages/syntax-core/src/Button/Button.module.css/#css-module-data */
2266
- ._button_17niw_1 {
2266
+ ._button_1hpt0_1 {
2267
2267
  display: flex;
2268
2268
  flex-direction: row;
2269
2269
  align-items: center;
2270
2270
  justify-content: center;
2271
2271
  }
2272
- ._buttonGap_17niw_8 {
2272
+ ._buttonGap_1hpt0_8 {
2273
2273
  gap: 4px;
2274
2274
  }
2275
- ._button_17niw_1:hover {
2275
+ ._button_1hpt0_1:hover {
2276
2276
  background-image: linear-gradient(to bottom, rgba(190, 180, 171, 0.3) 0%, rgba(190, 180, 171, 0.3) 100%);
2277
2277
  transition-duration: 0.2s;
2278
2278
  cursor: pointer;
2279
2279
  }
2280
- ._button_17niw_1:focus-visible {
2280
+ ._button_1hpt0_1:focus-visible {
2281
2281
  background-image: linear-gradient(to bottom, rgba(190, 180, 171, 0.3) 0%, rgba(190, 180, 171, 0.3) 100%);
2282
2282
  box-shadow: 0 0 0 4px #000;
2283
2283
  outline: solid 2px #fff;
2284
2284
  }
2285
- ._button_17niw_1:active {
2285
+ ._button_1hpt0_1:active {
2286
2286
  background-image: linear-gradient(to bottom, rgba(190, 180, 171, 0.3) 0%, rgba(190, 180, 171, 0.3) 100%);
2287
2287
  transform: scale(0.97);
2288
2288
  transition-duration: 0.2s;
2289
2289
  }
2290
- ._disabled_17niw_42 {
2290
+ ._disabled_1hpt0_42 {
2291
2291
  filter: opacity(50%);
2292
2292
  background-image: none;
2293
2293
  transform: none;
2294
2294
  cursor: auto;
2295
2295
  }
2296
- ._disabledPrimary_17niw_49 {
2296
+ ._disabled_1hpt0_42:hover {
2297
+ filter: opacity(50%);
2298
+ background-image: none;
2299
+ transform: none;
2300
+ cursor: auto;
2301
+ }
2302
+ ._disabledPrimary_1hpt0_56 {
2297
2303
  opacity: 0.5;
2298
2304
  }
2299
- ._fullWidth_17niw_53 {
2305
+ ._fullWidth_1hpt0_60 {
2300
2306
  width: 100%;
2301
2307
  }
2302
- ._sm_17niw_57 {
2308
+ ._sm_1hpt0_64 {
2303
2309
  min-width: 52px;
2304
2310
  height: 32px;
2305
2311
  padding: 0 16px;
2306
2312
  border-radius: 100px;
2307
2313
  }
2308
- ._md_17niw_64 {
2314
+ ._md_1hpt0_71 {
2309
2315
  min-width: 78px;
2310
2316
  height: 48px;
2311
2317
  padding: 0 24px;
2312
2318
  border-radius: 100px;
2313
2319
  }
2314
- ._lg_17niw_71 {
2320
+ ._lg_1hpt0_78 {
2315
2321
  min-width: 104px;
2316
2322
  height: 64px;
2317
2323
  padding: 0 32px;
2318
2324
  border-radius: 100px;
2319
2325
  }
2320
- ._icon_17niw_78 {
2326
+ ._icon_1hpt0_85 {
2321
2327
  color: inherit;
2322
2328
  }
2323
- ._smIcon_17niw_82 {
2329
+ ._smIcon_1hpt0_89 {
2324
2330
  width: 16px !important;
2325
2331
  height: 16px !important;
2326
2332
  }
2327
- ._mdIcon_17niw_89 {
2333
+ ._mdIcon_1hpt0_96 {
2328
2334
  width: 20px !important;
2329
2335
  height: 20px !important;
2330
2336
  }
2331
- ._lgIcon_17niw_96 {
2337
+ ._lgIcon_1hpt0_103 {
2332
2338
  width: 24px !important;
2333
2339
  height: 24px !important;
2334
2340
  }
2335
- @keyframes _syntaxButtonLoadingRotate_17niw_1 {
2341
+ @keyframes _syntaxButtonLoadingRotate_1hpt0_1 {
2336
2342
  0% {
2337
2343
  transform-origin: 50% 50%;
2338
2344
  }
@@ -2340,10 +2346,10 @@
2340
2346
  transform: rotate(360deg);
2341
2347
  }
2342
2348
  }
2343
- ._loading_17niw_113 {
2344
- animation: _syntaxButtonLoadingRotate_17niw_1 1.4s linear infinite;
2349
+ ._loading_1hpt0_120 {
2350
+ animation: _syntaxButtonLoadingRotate_1hpt0_1 1.4s linear infinite;
2345
2351
  }
2346
- ._loadingCircle_17niw_117 {
2352
+ ._loadingCircle_1hpt0_124 {
2347
2353
  stroke: currentcolor;
2348
2354
  stroke-dasharray: 80px, 200px;
2349
2355
  stroke-dashoffset: 0;