@accelint/design-system 1.2.1 → 1.2.3

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 (143) hide show
  1. package/dist/components/aria/index.js.map +1 -1
  2. package/dist/components/button/button.css.d.ts +25 -24
  3. package/dist/components/button/index.d.ts +9 -40
  4. package/dist/components/button/index.js +23 -17
  5. package/dist/components/button/index.js.map +1 -1
  6. package/dist/components/button/types.d.ts +3 -2
  7. package/dist/components/checkbox/checkbox.css.d.ts +23 -23
  8. package/dist/components/checkbox/index.js.map +1 -1
  9. package/dist/components/chip/chip.css.d.ts +18 -18
  10. package/dist/components/chip/index.js.map +1 -1
  11. package/dist/components/collection/index.d.ts +3 -3
  12. package/dist/components/collection/index.js.map +1 -1
  13. package/dist/components/combo-box/combo-box.css.d.ts +9 -9
  14. package/dist/components/combo-box/index.js +9 -5
  15. package/dist/components/combo-box/index.js.map +1 -1
  16. package/dist/components/date-field/date-field.css.d.ts +17 -17
  17. package/dist/components/date-field/index.js +8 -4
  18. package/dist/components/date-field/index.js.map +1 -1
  19. package/dist/components/date-input/date-input.css.d.ts +25 -25
  20. package/dist/components/date-input/index.js +19 -8
  21. package/dist/components/date-input/index.js.map +1 -1
  22. package/dist/components/dialog/dialog.css.d.ts +16 -15
  23. package/dist/components/dialog/index.d.ts +1 -0
  24. package/dist/components/dialog/index.js +7 -5
  25. package/dist/components/dialog/index.js.map +1 -1
  26. package/dist/components/dialog/types.d.ts +1 -0
  27. package/dist/components/drawer/drawer.css.d.ts +17 -17
  28. package/dist/components/drawer/index.d.ts +1 -1
  29. package/dist/components/drawer/index.js +21 -8
  30. package/dist/components/drawer/index.js.map +1 -1
  31. package/dist/components/drawer/types.d.ts +1 -1
  32. package/dist/components/element/index.d.ts +1 -1
  33. package/dist/components/element/index.js +7 -3
  34. package/dist/components/element/index.js.map +1 -1
  35. package/dist/components/element/types.d.ts +2 -0
  36. package/dist/components/group/group.css.d.ts +7 -7
  37. package/dist/components/group/index.js +6 -6
  38. package/dist/components/group/index.js.map +1 -1
  39. package/dist/components/icon/icon.css.d.ts +9 -9
  40. package/dist/components/icon/index.js +4 -4
  41. package/dist/components/icon/index.js.map +1 -1
  42. package/dist/components/icon/types.d.ts +1 -1
  43. package/dist/components/index.d.ts +35 -35
  44. package/dist/components/input/index.js +17 -8
  45. package/dist/components/input/index.js.map +1 -1
  46. package/dist/components/input/input.css.d.ts +20 -20
  47. package/dist/components/menu/index.d.ts +2 -2
  48. package/dist/components/menu/index.js +1 -1
  49. package/dist/components/menu/index.js.map +1 -1
  50. package/dist/components/menu/menu.css.d.ts +42 -42
  51. package/dist/components/merge-provider/index.js +15 -7
  52. package/dist/components/merge-provider/index.js.map +1 -1
  53. package/dist/components/merge-provider/types.d.ts +2 -0
  54. package/dist/components/number-field/index.d.ts +1 -1
  55. package/dist/components/number-field/index.js +8 -4
  56. package/dist/components/number-field/index.js.map +1 -1
  57. package/dist/components/number-field/number-field.css.d.ts +12 -12
  58. package/dist/components/number-field/types.d.ts +1 -1
  59. package/dist/components/options/index.js +1 -1
  60. package/dist/components/options/index.js.map +1 -1
  61. package/dist/components/options/options.css.d.ts +44 -44
  62. package/dist/components/picker/index.js.map +1 -1
  63. package/dist/components/picker/picker.css.d.ts +18 -18
  64. package/dist/components/popover/index.js +8 -4
  65. package/dist/components/popover/index.js.map +1 -1
  66. package/dist/components/popover/popover.css.d.ts +12 -12
  67. package/dist/components/query-builder/action-element.js.map +1 -1
  68. package/dist/components/query-builder/dataset-sample.js.map +1 -1
  69. package/dist/components/query-builder/group.js.map +1 -1
  70. package/dist/components/query-builder/index.js.map +1 -1
  71. package/dist/components/query-builder/query-builder.css.d.ts +53 -53
  72. package/dist/components/query-builder/value-editor.js.map +1 -1
  73. package/dist/components/query-builder/value-selector.js.map +1 -1
  74. package/dist/components/radio/index.js +12 -8
  75. package/dist/components/radio/index.js.map +1 -1
  76. package/dist/components/radio/radio.css.d.ts +22 -22
  77. package/dist/components/search-field/index.js +9 -5
  78. package/dist/components/search-field/index.js.map +1 -1
  79. package/dist/components/search-field/search-field.css.d.ts +9 -9
  80. package/dist/components/select/index.js +5 -5
  81. package/dist/components/select/index.js.map +1 -1
  82. package/dist/components/select/select.css.d.ts +12 -12
  83. package/dist/components/slider/index.js +48 -20
  84. package/dist/components/slider/index.js.map +1 -1
  85. package/dist/components/slider/slider.css.d.ts +27 -27
  86. package/dist/components/switch/index.js +4 -4
  87. package/dist/components/switch/index.js.map +1 -1
  88. package/dist/components/switch/switch.css.d.ts +16 -16
  89. package/dist/components/tabs/index.js +32 -20
  90. package/dist/components/tabs/index.js.map +1 -1
  91. package/dist/components/tabs/tabs.css.d.ts +25 -25
  92. package/dist/components/text-field/index.d.ts +3 -128
  93. package/dist/components/text-field/index.js +11 -7
  94. package/dist/components/text-field/index.js.map +1 -1
  95. package/dist/components/text-field/text-field.css.d.ts +8 -8
  96. package/dist/components/textarea/index.js +16 -7
  97. package/dist/components/textarea/index.js.map +1 -1
  98. package/dist/components/textarea/textarea.css.d.ts +22 -22
  99. package/dist/components/time-field/index.js +8 -4
  100. package/dist/components/time-field/index.js.map +1 -1
  101. package/dist/components/time-field/time-field.css.d.ts +17 -17
  102. package/dist/components/tooltip/index.js +17 -9
  103. package/dist/components/tooltip/index.js.map +1 -1
  104. package/dist/components/tooltip/tooltip.css.d.ts +11 -11
  105. package/dist/components/tree/index.js +5 -2
  106. package/dist/components/tree/index.js.map +1 -1
  107. package/dist/components/tree/tree.css.d.ts +45 -45
  108. package/dist/components/tree/utils.js +3 -1
  109. package/dist/components/tree/utils.js.map +1 -1
  110. package/dist/constants.d.ts +3 -0
  111. package/dist/constants.js +8 -0
  112. package/dist/constants.js.map +1 -0
  113. package/dist/hooks/index.d.ts +13 -13
  114. package/dist/hooks/use-collection-render/index.d.ts +1 -1
  115. package/dist/hooks/use-collection-render/index.js +2 -3
  116. package/dist/hooks/use-collection-render/index.js.map +1 -1
  117. package/dist/hooks/use-context-props/index.js.map +1 -1
  118. package/dist/hooks/use-defaults/index.d.ts +32 -80
  119. package/dist/hooks/use-defaults/index.js +1 -4
  120. package/dist/hooks/use-defaults/index.js.map +1 -1
  121. package/dist/hooks/use-defaults/types.d.ts +1 -1
  122. package/dist/hooks/use-theme/index.d.ts +2 -2
  123. package/dist/hooks/use-theme/index.js.map +1 -1
  124. package/dist/hooks/use-theme/types.d.ts +1 -1
  125. package/dist/hooks/use-tree/index.js +3 -2
  126. package/dist/hooks/use-tree/index.js.map +1 -1
  127. package/dist/hooks/use-tree/utils.js +6 -9
  128. package/dist/hooks/use-tree/utils.js.map +1 -1
  129. package/dist/hooks/use-update-effect/index.js.map +1 -1
  130. package/dist/index.css +38 -38
  131. package/dist/index.d.ts +39 -39
  132. package/dist/ladle/actions.js.map +1 -1
  133. package/dist/styles/theme.css.d.ts +200 -200
  134. package/dist/test/setup.js +778 -1276
  135. package/dist/test/setup.js.map +1 -1
  136. package/dist/utils/css/index.d.ts +1 -1
  137. package/dist/utils/css/index.js.map +1 -1
  138. package/dist/utils/props/index.d.ts +1 -2
  139. package/dist/utils/props/index.js +1 -2
  140. package/dist/utils/props/index.js.map +1 -1
  141. package/dist/vanilla.d.ts +30 -30
  142. package/dist/vanilla.js +1 -1
  143. package/package.json +49 -48
@@ -25,8 +25,12 @@ var defaultMapping = {
25
25
  };
26
26
  var SearchFieldContext = createContext(null);
27
27
  var SearchField = forwardRef(function SearchField2(props, ref) {
28
- [props, ref] = useContextProps(props, ref, SearchFieldContext);
29
- props = useDefaultProps(props, "SearchField");
28
+ const [contextProps, contextRef] = useContextProps(
29
+ props,
30
+ ref,
31
+ SearchFieldContext
32
+ );
33
+ const finalProps = useDefaultProps(contextProps, "SearchField");
30
34
  const {
31
35
  children: childrenProp,
32
36
  classNames: classNamesProp,
@@ -35,7 +39,7 @@ var SearchField = forwardRef(function SearchField2(props, ref) {
35
39
  variant = "solid",
36
40
  isDisabled,
37
41
  isReadOnly
38
- } = props;
42
+ } = finalProps;
39
43
  const theme = useTheme();
40
44
  const mapping = useMemo(
41
45
  () => ({
@@ -81,8 +85,8 @@ var SearchField = forwardRef(function SearchField2(props, ref) {
81
85
  return /* @__PURE__ */ jsx(
82
86
  SearchField$1,
83
87
  {
84
- ...props,
85
- ref,
88
+ ...finalProps,
89
+ ref: contextRef,
86
90
  className: classNames?.container,
87
91
  style,
88
92
  children
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/search-field/index.tsx"],"names":["SearchField","RACSearchField"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n type ForwardedRef,\n createContext,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n Provider,\n type GroupProps as RACGroupProps,\n SearchField as RACSearchField,\n type SearchFieldRenderProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { AriaGroupContext } from '../aria';\nimport { ButtonContext } from '../button';\nimport type { ButtonProps } from '../button/types';\nimport { IconContext } from '../icon';\nimport type { IconProps } from '../icon/types';\nimport { InputContext } from '../input';\nimport type { InputProps } from '../input/types';\nimport {\n searchFieldClassNames,\n searchFieldStateVars,\n} from './search-field.css';\nimport type { SearchFieldMapping, SearchFieldProps } from './types';\n\nconst defaultMapping: SearchFieldMapping = {\n icon: {\n sm: { size: 'xs' },\n lg: { size: 'sm' },\n },\n clear: {\n sm: { size: 'xs', variant: 'icon' },\n lg: { size: 'sm', variant: 'icon' },\n },\n};\n\nexport const SearchFieldContext =\n createContext<ContextValue<SearchFieldProps, HTMLDivElement>>(null);\n\nexport const SearchField = forwardRef(function SearchField(\n props: SearchFieldProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SearchFieldContext);\n props = useDefaultProps(props, 'SearchField');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = 'lg',\n variant = 'solid',\n isDisabled,\n isReadOnly,\n } = props;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(searchFieldClassNames, theme.SearchField, classNamesProp),\n [theme.SearchField, classNamesProp],\n );\n\n const values = useMemo<\n [\n [typeof AriaGroupContext, ContextValue<RACGroupProps, HTMLDivElement>],\n [typeof IconContext, ContextValue<IconProps, HTMLDivElement>],\n [typeof InputContext, ContextValue<InputProps, HTMLInputElement>],\n [typeof ButtonContext, ContextValue<ButtonProps, HTMLButtonElement>],\n ]\n >(\n () => [\n [AriaGroupContext, { className: classNames?.group }],\n [IconContext, { ...mapping.icon[size], classNames: classNames?.icon }],\n [InputContext, { classNames: classNames?.input, size }],\n [\n ButtonContext,\n {\n ...mapping.clear[size],\n classNames: classNames?.clear,\n isDisabled: isDisabled ?? isReadOnly,\n },\n ],\n ],\n [classNames, mapping, isDisabled, isReadOnly, size],\n );\n\n const style = useCallback(\n ({ state, ...renderProps }: SearchFieldRenderProps) =>\n inlineVars(searchFieldStateVars, {\n ...renderProps,\n variant,\n }),\n [variant],\n );\n\n const children = useCallback(\n (renderProps: SearchFieldRenderProps) => (\n <Provider values={values}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </Provider>\n ),\n [childrenProp, values],\n );\n\n return (\n <RACSearchField\n {...props}\n ref={ref}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSearchField>\n );\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/search-field/index.tsx"],"names":["SearchField","RACSearchField"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n Provider,\n type GroupProps as RACGroupProps,\n SearchField as RACSearchField,\n type SearchFieldRenderProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { AriaGroupContext } from '../aria';\nimport { ButtonContext } from '../button';\nimport { IconContext } from '../icon';\nimport { InputContext } from '../input';\nimport {\n searchFieldClassNames,\n searchFieldStateVars,\n} from './search-field.css';\nimport type { ButtonProps } from '../button/types';\nimport type { IconProps } from '../icon/types';\nimport type { InputProps } from '../input/types';\nimport type { SearchFieldMapping, SearchFieldProps } from './types';\n\nconst defaultMapping: SearchFieldMapping = {\n icon: {\n sm: { size: 'xs' },\n lg: { size: 'sm' },\n },\n clear: {\n sm: { size: 'xs', variant: 'icon' },\n lg: { size: 'sm', variant: 'icon' },\n },\n};\n\nexport const SearchFieldContext =\n createContext<ContextValue<SearchFieldProps, HTMLDivElement>>(null);\n\nexport const SearchField = forwardRef(function SearchField(\n props: SearchFieldProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n SearchFieldContext,\n );\n const finalProps = useDefaultProps(contextProps, 'SearchField');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = 'lg',\n variant = 'solid',\n isDisabled,\n isReadOnly,\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(searchFieldClassNames, theme.SearchField, classNamesProp),\n [theme.SearchField, classNamesProp],\n );\n\n const values = useMemo<\n [\n [typeof AriaGroupContext, ContextValue<RACGroupProps, HTMLDivElement>],\n [typeof IconContext, ContextValue<IconProps, HTMLDivElement>],\n [typeof InputContext, ContextValue<InputProps, HTMLInputElement>],\n [typeof ButtonContext, ContextValue<ButtonProps, HTMLButtonElement>],\n ]\n >(\n () => [\n [AriaGroupContext, { className: classNames?.group }],\n [IconContext, { ...mapping.icon[size], classNames: classNames?.icon }],\n [InputContext, { classNames: classNames?.input, size }],\n [\n ButtonContext,\n {\n ...mapping.clear[size],\n classNames: classNames?.clear,\n isDisabled: isDisabled ?? isReadOnly,\n },\n ],\n ],\n [classNames, mapping, isDisabled, isReadOnly, size],\n );\n\n const style = useCallback(\n ({ state, ...renderProps }: SearchFieldRenderProps) =>\n inlineVars(searchFieldStateVars, {\n ...renderProps,\n variant,\n }),\n [variant],\n );\n\n const children = useCallback(\n (renderProps: SearchFieldRenderProps) => (\n <Provider values={values}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </Provider>\n ),\n [childrenProp, values],\n );\n\n return (\n <RACSearchField\n {...finalProps}\n ref={contextRef}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSearchField>\n );\n});\n"]}
@@ -11,17 +11,17 @@ import '../input/types.js';
11
11
 
12
12
  declare const searchFieldContainer: string;
13
13
  declare const searchFieldSpaceVars: {
14
- x: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
15
- y: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
14
+ x: `var(--${string})`;
15
+ y: `var(--${string})`;
16
16
  };
17
17
  declare const searchFieldStateVars: {
18
- size: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
19
- variant: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
20
- isEmpty: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
21
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
22
- isInvalid: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
23
- isReadOnly: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
24
- isRequired: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
18
+ size: `var(--${string})`;
19
+ variant: `var(--${string})`;
20
+ isEmpty: `var(--${string})`;
21
+ isDisabled: `var(--${string})`;
22
+ isInvalid: `var(--${string})`;
23
+ isReadOnly: `var(--${string})`;
24
+ isRequired: `var(--${string})`;
25
25
  };
26
26
  declare const searchFieldClassNames: SearchFieldClassNames;
27
27
 
@@ -29,14 +29,14 @@ var defaultMapping = {
29
29
  };
30
30
  var SelectContext = createContext(null);
31
31
  var Select = forwardRef(function Select2(props, ref) {
32
- [props, ref] = useContextProps(props, ref, SelectContext);
33
- props = useDefaultProps(props, "Select");
32
+ const [contextProps, contextRef] = useContextProps(props, ref, SelectContext);
33
+ const finalProps = useDefaultProps(contextProps, "Select");
34
34
  const {
35
35
  children: childrenProp,
36
36
  classNames: classNamesProp,
37
37
  mapping: mappingProp,
38
38
  size = "lg"
39
- } = props;
39
+ } = finalProps;
40
40
  const theme = useTheme();
41
41
  const mapping = useMemo(
42
42
  () => ({
@@ -98,8 +98,8 @@ var Select = forwardRef(function Select2(props, ref) {
98
98
  return /* @__PURE__ */ jsx(
99
99
  Select$1,
100
100
  {
101
- ...props,
102
- ref,
101
+ ...finalProps,
102
+ ref: contextRef,
103
103
  className: classNames?.container,
104
104
  style,
105
105
  children
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/select/index.tsx"],"names":["Select","RACSelect"],"mappings":";;;;;;;;;;;;;;;AAgDA,IAAM,cAAA,GAAgC;AAAA,EACpC,WAAA,EAAa;AAAA,IACX,IAAI,MAAA,CAAO,EAAA;AAAA,IACX,IAAI,MAAA,CAAO;AAAA,GACb;AAAA,EACA,KAAA,EAAO;AAAA,IACL,IAAI,MAAA,CAAO,EAAA;AAAA,IACX,IAAI,MAAA,CAAO;AAAA,GACb;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,EAAA,EAAI,EAAE,IAAA,EAAM,IAAA,EAAM,SAAS,QAAA,EAAS;AAAA,IACpC,EAAA,EAAI,EAAE,IAAA,EAAM,IAAA,EAAM,SAAS,QAAA;AAAS;AAExC,CAAA;AAEO,IAAM,aAAA,GACX,cAAiE,IAAI;AAEhE,IAAM,MAAA,GAAS,UAAA,CAAW,SAASA,OAAAA,CACxC,OACA,GAAA,EACA;AACA,EAAA,CAAC,OAAO,GAAG,CAAA,GAAI,eAAA,CAAgB,KAAA,EAAO,KAAK,aAAa,CAAA;AACxD,EAAA,KAAA,GAAQ,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAEvC,EAAA,MAAM;AAAA,IACJ,QAAA,EAAU,YAAA;AAAA,IACV,UAAA,EAAY,cAAA;AAAA,IACZ,OAAA,EAAS,WAAA;AAAA,IACT,IAAA,GAAO;AAAA,GACT,GAAI,KAAA;AAEJ,EAAA,MAAM,QAAQ,QAAA,EAAS;AAEvB,EAAA,MAAM,OAAA,GAAU,OAAA;AAAA,IACd,OAAO;AAAA,MACL,GAAG,cAAA;AAAA,MACH,GAAG;AAAA,KACL,CAAA;AAAA,IACA,CAAC,WAAW;AAAA,GACd;AAEA,EAAA,MAAM,UAAA,GAAa,OAAA;AAAA,IACjB,MACE,eAAA,CAAgB,gBAAA,EAAkB,KAAA,CAAM,QAAQ,cAAA,EAAgB;AAAA,MAC9D,WAAA,EAAa,OAAA,CAAQ,WAAA,CAAY,IAAI,CAAA;AAAA,MACrC,KAAA,EAAO,OAAA,CAAQ,KAAA,CAAM,IAAI;AAAA,KAC1B,CAAA;AAAA,IACH,CAAC,cAAA,EAAgB,KAAA,CAAM,MAAA,EAAQ,SAAS,IAAI;AAAA,GAC9C;AAEA,EAAA,MAAM,MAAA,GAAS,OAAA;AAAA,IAgBb,MAAM;AAAA,MACJ,CAAC,gBAAA,EAAkB,EAAE,SAAA,EAAW,UAAA,EAAY,OAAO,CAAA;AAAA,MACnD;AAAA,QACE,aAAA;AAAA,QACA;AAAA,UACE,GAAG,OAAA,CAAQ,MAAA,CAAO,IAAI,CAAA;AAAA,UACtB,YAAY,UAAA,EAAY;AAAA;AAC1B,OACF;AAAA,MACA;AAAA,QACE,sBAAA;AAAA,QACA;AAAA,UACE,WAAW,UAAA,EAAY;AAAA;AACzB,OACF;AAAA,MACA;AAAA,QACE,eAAA;AAAA,QACA;AAAA,UACE,KAAA,EAAO;AAAA,YACL,WAAA,EAAa,EAAE,SAAA,EAAW,UAAA,EAAY,WAAA;AAAY;AACpD;AACF,OACF;AAAA,MACA,CAAC,qBAAA,EAAuB,EAAE,SAAA,EAAW,UAAA,EAAY,OAAO,CAAA;AAAA,MACxD,CAAC,cAAA,EAAgB,EAAE,YAAY,UAAA,EAAY,OAAA,EAAS,MAAM;AAAA,KAC5D;AAAA,IACA,CAAC,UAAA,EAAY,OAAA,EAAS,IAAI;AAAA,GAC5B;AAEA,EAAA,MAAM,KAAA,GAAQ,WAAA;AAAA,IACZ,CAAC,WAAA,KACC,UAAA,CAAW,eAAA,EAAiB;AAAA,MAC1B,GAAG,WAAA;AAAA,MACH;AAAA,KACD,CAAA;AAAA,IACH,CAAC,IAAI;AAAA,GACP;AAEA,EAAA,MAAM,QAAA,GAAW,WAAA;AAAA,IACf,CAAC,WAAA,qBACC,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,UAAA,EAAY,MAAA,EAC1B,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,MAAA,EACP,QAAA,EAAA,eAAA,CAAgB,YAAA,EAAc;AAAA,MAC7B,GAAG,WAAA;AAAA,MACH,eAAA,EAAiB;AAAA,KAClB,GACH,CAAA,EACF,CAAA;AAAA,IAEF,CAAC,YAAA,EAAc,MAAA,EAAQ,UAAA,EAAY,MAAM;AAAA,GAC3C;AAEA,EAAA,uBACE,GAAA;AAAA,IAACC,QAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,GAAA;AAAA,MACA,WAAW,UAAA,EAAY,SAAA;AAAA,MACvB,KAAA;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ,CAAC","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n type ForwardedRef,\n createContext,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n type FieldErrorProps,\n type LabelProps,\n Provider,\n Select as RACSelect,\n type SelectRenderProps as RACSelectRenderProps,\n type SelectValueProps,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { bodies } from '../../styles/typography.css';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport {\n AriaFieldErrorContext,\n AriaLabelContext,\n AriaSelectValueContext,\n AriaTextContext,\n} from '../aria';\nimport { ButtonContext } from '../button';\nimport type { ButtonProps } from '../button/types';\nimport { OptionsContext } from '../options';\nimport type { OptionsProps } from '../options/types';\nimport { selectClassNames, selectStateVars } from './select.css';\nimport type { SelectMapping, SelectProps } from './types';\n\nconst defaultMapping: SelectMapping = {\n description: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n error: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n toggle: {\n sm: { size: 'sm', variant: 'hollow' },\n lg: { size: 'md', variant: 'hollow' },\n },\n};\n\nexport const SelectContext =\n createContext<ContextValue<SelectProps<object>, HTMLDivElement>>(null);\n\nexport const Select = forwardRef(function Select<T extends object>(\n props: SelectProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SelectContext);\n props = useDefaultProps(props, 'Select');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = 'lg',\n } = props;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(selectClassNames, theme.Select, classNamesProp, {\n description: mapping.description[size],\n error: mapping.error[size],\n }),\n [classNamesProp, theme.Select, mapping, size],\n );\n\n const values = useMemo<\n [\n [typeof AriaLabelContext, ContextValue<LabelProps, HTMLLabelElement>],\n [typeof ButtonContext, ContextValue<ButtonProps, HTMLButtonElement>],\n [\n typeof AriaSelectValueContext,\n ContextValue<SelectValueProps<object>, HTMLSpanElement>,\n ],\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [\n typeof AriaFieldErrorContext,\n ContextValue<FieldErrorProps, HTMLElement>,\n ],\n [typeof OptionsContext, ContextValue<OptionsProps, HTMLElement>],\n ]\n >(\n () => [\n [AriaLabelContext, { className: classNames?.label }],\n [\n ButtonContext,\n {\n ...mapping.toggle[size],\n classNames: classNames?.toggle,\n },\n ],\n [\n AriaSelectValueContext,\n {\n className: classNames?.value,\n },\n ],\n [\n AriaTextContext,\n {\n slots: {\n description: { className: classNames?.description },\n },\n },\n ],\n [AriaFieldErrorContext, { className: classNames?.error }],\n [OptionsContext, { classNames: classNames?.options, size }],\n ],\n [classNames, mapping, size],\n );\n\n const style = useCallback(\n (renderProps: RACSelectRenderProps) =>\n inlineVars(selectStateVars, {\n ...renderProps,\n size,\n }),\n [size],\n );\n\n const children = useCallback(\n (renderProps: RACSelectRenderProps) => (\n <div className={classNames?.select}>\n <Provider values={values}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </Provider>\n </div>\n ),\n [childrenProp, values, classNames?.select],\n );\n\n return (\n <RACSelect\n {...props}\n ref={ref}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSelect>\n );\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/select/index.tsx"],"names":["Select","RACSelect"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n type FieldErrorProps,\n type LabelProps,\n Provider,\n Select as RACSelect,\n type SelectRenderProps as RACSelectRenderProps,\n type SelectValueProps,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { bodies } from '../../styles/typography.css';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport {\n AriaFieldErrorContext,\n AriaLabelContext,\n AriaSelectValueContext,\n AriaTextContext,\n} from '../aria';\nimport { ButtonContext } from '../button';\nimport { OptionsContext } from '../options';\nimport { selectClassNames, selectStateVars } from './select.css';\nimport type { ButtonProps } from '../button/types';\nimport type { OptionsProps } from '../options/types';\nimport type { SelectMapping, SelectProps } from './types';\n\nconst defaultMapping: SelectMapping = {\n description: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n error: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n toggle: {\n sm: { size: 'sm', variant: 'hollow' },\n lg: { size: 'md', variant: 'hollow' },\n },\n};\n\nexport const SelectContext =\n createContext<ContextValue<SelectProps<object>, HTMLDivElement>>(null);\n\nexport const Select = forwardRef(function Select<T extends object>(\n props: SelectProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(props, ref, SelectContext);\n const finalProps = useDefaultProps(contextProps, 'Select');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = 'lg',\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(selectClassNames, theme.Select, classNamesProp, {\n description: mapping.description[size],\n error: mapping.error[size],\n }),\n [classNamesProp, theme.Select, mapping, size],\n );\n\n const values = useMemo<\n [\n [typeof AriaLabelContext, ContextValue<LabelProps, HTMLLabelElement>],\n [typeof ButtonContext, ContextValue<ButtonProps, HTMLButtonElement>],\n [\n typeof AriaSelectValueContext,\n ContextValue<SelectValueProps<object>, HTMLSpanElement>,\n ],\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [\n typeof AriaFieldErrorContext,\n ContextValue<FieldErrorProps, HTMLElement>,\n ],\n [typeof OptionsContext, ContextValue<OptionsProps, HTMLElement>],\n ]\n >(\n () => [\n [AriaLabelContext, { className: classNames?.label }],\n [\n ButtonContext,\n {\n ...mapping.toggle[size],\n classNames: classNames?.toggle,\n },\n ],\n [\n AriaSelectValueContext,\n {\n className: classNames?.value,\n },\n ],\n [\n AriaTextContext,\n {\n slots: {\n description: { className: classNames?.description },\n },\n },\n ],\n [AriaFieldErrorContext, { className: classNames?.error }],\n [OptionsContext, { classNames: classNames?.options, size }],\n ],\n [classNames, mapping, size],\n );\n\n const style = useCallback(\n (renderProps: RACSelectRenderProps) =>\n inlineVars(selectStateVars, {\n ...renderProps,\n size,\n }),\n [size],\n );\n\n const children = useCallback(\n (renderProps: RACSelectRenderProps) => (\n <div className={classNames?.select}>\n <Provider values={values}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </Provider>\n </div>\n ),\n [childrenProp, values, classNames?.select],\n );\n\n return (\n <RACSelect\n {...finalProps}\n ref={contextRef}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSelect>\n );\n});\n"]}
@@ -12,25 +12,25 @@ import '../options/types.js';
12
12
  declare const selectContainer: string;
13
13
  declare const selectColorVars: {
14
14
  description: {
15
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
15
+ color: `var(--${string})`;
16
16
  };
17
17
  error: {
18
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
18
+ color: `var(--${string})`;
19
19
  };
20
20
  };
21
21
  declare const selectSpaceVars: {
22
- width: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
23
- x: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
24
- y: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
22
+ width: `var(--${string})`;
23
+ x: `var(--${string})`;
24
+ y: `var(--${string})`;
25
25
  };
26
26
  declare const selectStateVars: {
27
- size: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
28
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
29
- isInvalid: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
30
- isOpen: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
31
- isRequired: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
32
- isFocused: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
33
- isFocusVisible: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
27
+ size: `var(--${string})`;
28
+ isDisabled: `var(--${string})`;
29
+ isInvalid: `var(--${string})`;
30
+ isOpen: `var(--${string})`;
31
+ isRequired: `var(--${string})`;
32
+ isFocused: `var(--${string})`;
33
+ isFocusVisible: `var(--${string})`;
34
34
  };
35
35
  declare const selectClassNames: SelectClassNames;
36
36
 
@@ -15,9 +15,13 @@ import { jsx } from 'react/jsx-runtime';
15
15
 
16
16
  var SliderBarContext = createContext(null);
17
17
  var SliderBar = forwardRef(function SliderBar2(props, ref) {
18
- [props, ref] = useContextProps(props, ref, SliderBarContext);
19
- props = useDefaultProps(props, "SliderBar");
20
- const { classNames: classNamesProp, ...rest } = props;
18
+ const [contextProps, contextRef] = useContextProps(
19
+ props,
20
+ ref,
21
+ SliderBarContext
22
+ );
23
+ const finalProps = useDefaultProps(contextProps, "SliderBar");
24
+ const { classNames: classNamesProp, ...rest } = finalProps;
21
25
  const theme = useTheme();
22
26
  const classNames = useMemo(
23
27
  () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),
@@ -33,7 +37,7 @@ var SliderBar = forwardRef(function SliderBar2(props, ref) {
33
37
  "div",
34
38
  {
35
39
  ...rest,
36
- ref,
40
+ ref: contextRef,
37
41
  className: classNames?.track?.bar,
38
42
  style: {
39
43
  position: "absolute",
@@ -51,9 +55,17 @@ var SliderBar = forwardRef(function SliderBar2(props, ref) {
51
55
  });
52
56
  var SliderOutputContext = createContext(null);
53
57
  var SliderOutput = forwardRef(function SliderOutput2(props, ref) {
54
- [props, ref] = useContextProps(props, ref, SliderOutputContext);
55
- props = useDefaultProps(props, "SliderOutput");
56
- const { children: childrenProp, classNames: classNamesProp, ...rest } = props;
58
+ const [contextProps, contextRef] = useContextProps(
59
+ props,
60
+ ref,
61
+ SliderOutputContext
62
+ );
63
+ const finalProps = useDefaultProps(contextProps, "SliderOutput");
64
+ const {
65
+ children: childrenProp,
66
+ classNames: classNamesProp,
67
+ ...rest
68
+ } = finalProps;
57
69
  const theme = useTheme();
58
70
  const classNames = useMemo(
59
71
  () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),
@@ -74,7 +86,7 @@ var SliderOutput = forwardRef(function SliderOutput2(props, ref) {
74
86
  SliderOutput$1,
75
87
  {
76
88
  ...rest,
77
- ref,
89
+ ref: contextRef,
78
90
  className: classNames?.output?.container,
79
91
  style,
80
92
  children
@@ -83,9 +95,17 @@ var SliderOutput = forwardRef(function SliderOutput2(props, ref) {
83
95
  });
84
96
  var SliderTrackContext = createContext(null);
85
97
  var SliderTrack = forwardRef(function SliderTrack2(props, ref) {
86
- [props, ref] = useContextProps(props, ref, SliderTrackContext);
87
- props = useDefaultProps(props, "SliderTrack");
88
- const { children: childrenProp, classNames: classNamesProp, ...rest } = props;
98
+ const [contextProps, contextRef] = useContextProps(
99
+ props,
100
+ ref,
101
+ SliderTrackContext
102
+ );
103
+ const finalProps = useDefaultProps(contextProps, "SliderTrack");
104
+ const {
105
+ children: childrenProp,
106
+ classNames: classNamesProp,
107
+ ...rest
108
+ } = finalProps;
89
109
  const theme = useTheme();
90
110
  const classNames = useMemo(
91
111
  () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),
@@ -113,7 +133,7 @@ var SliderTrack = forwardRef(function SliderTrack2(props, ref) {
113
133
  SliderTrack$1,
114
134
  {
115
135
  ...rest,
116
- ref,
136
+ ref: contextRef,
117
137
  className: classNames?.track?.container,
118
138
  style,
119
139
  children
@@ -122,9 +142,17 @@ var SliderTrack = forwardRef(function SliderTrack2(props, ref) {
122
142
  });
123
143
  var SliderThumbContext = createContext(null);
124
144
  var SliderThumb = forwardRef(function SliderThumb2(props, ref) {
125
- [props, ref] = useContextProps(props, ref, SliderThumbContext);
126
- props = useDefaultProps(props, "SliderThumb");
127
- const { children: childrenProp, classNames: classNamesProp, ...rest } = props;
145
+ const [contextProps, contextRef] = useContextProps(
146
+ props,
147
+ ref,
148
+ SliderThumbContext
149
+ );
150
+ const finalProps = useDefaultProps(contextProps, "SliderThumb");
151
+ const {
152
+ children: childrenProp,
153
+ classNames: classNamesProp,
154
+ ...rest
155
+ } = finalProps;
128
156
  const theme = useTheme();
129
157
  const classNames = useMemo(
130
158
  () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),
@@ -145,7 +173,7 @@ var SliderThumb = forwardRef(function SliderThumb2(props, ref) {
145
173
  SliderThumb$1,
146
174
  {
147
175
  ...rest,
148
- ref,
176
+ ref: contextRef,
149
177
  className: classNames?.thumb?.container,
150
178
  style,
151
179
  children
@@ -154,8 +182,8 @@ var SliderThumb = forwardRef(function SliderThumb2(props, ref) {
154
182
  });
155
183
  var SliderContext = createContext(null);
156
184
  var Slider = forwardRef(function Slider2(props, ref) {
157
- [props, ref] = useContextProps(props, ref, SliderContext);
158
- props = useDefaultProps(props, "Slider");
185
+ const [contextProps, contextRef] = useContextProps(props, ref, SliderContext);
186
+ const finalProps = useDefaultProps(contextProps, "Slider");
159
187
  const {
160
188
  children: childrenProp,
161
189
  classNames: classNamesProp,
@@ -163,7 +191,7 @@ var Slider = forwardRef(function Slider2(props, ref) {
163
191
  orientation = "horizontal",
164
192
  isDisabled,
165
193
  ...rest
166
- } = props;
194
+ } = finalProps;
167
195
  const theme = useTheme();
168
196
  const classNames = useMemo(
169
197
  () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),
@@ -223,7 +251,7 @@ var Slider = forwardRef(function Slider2(props, ref) {
223
251
  Slider$1,
224
252
  {
225
253
  ...rest,
226
- ref,
254
+ ref: contextRef,
227
255
  className: classNames?.slider?.container,
228
256
  orientation,
229
257
  style,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/slider/index.tsx"],"names":["SliderBar","SliderOutput","RACSliderOutput","SliderTrack","RACSliderTrack","SliderThumb","RACSliderThumb","Slider","RACSlider"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { clsx } from 'clsx';\nimport {\n type ForwardedRef,\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n DEFAULT_SLOT,\n LabelContext,\n type LabelProps,\n Provider,\n Slider as RACSlider,\n SliderOutput as RACSliderOutput,\n SliderThumb as RACSliderThumb,\n SliderTrack as RACSliderTrack,\n SliderStateContext,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { type AriaLabelContext, AriaTextContext } from '../aria';\nimport { GroupContext } from '../group';\nimport type { GroupProps } from '../group/types';\nimport { NumberFieldContext } from '../number-field';\nimport type { NumberFieldProps } from '../number-field/types';\nimport {\n sliderClassNames,\n sliderStateVars,\n sliderThumbStateVars,\n sliderTrackStateVars,\n} from './slider.css';\nimport type {\n SliderBarProps,\n SliderOutputProps,\n SliderProps,\n SliderRenderProps,\n SliderThumbProps,\n SliderThumbRenderProps,\n SliderTrackProps,\n SliderTrackRenderProps,\n} from './types';\n\nexport const SliderBarContext =\n createContext<ContextValue<SliderBarProps, HTMLDivElement>>(null);\n\n/**\n * SliderBar is optional, but must be used as a child of SliderTrack\n */\nexport const SliderBar = forwardRef(function SliderBar(\n props: SliderBarProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SliderBarContext);\n\n props = useDefaultProps(props, 'SliderBar');\n\n const { classNames: classNamesProp, ...rest } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const state = useContext(SliderStateContext);\n if (!state) {\n throw new Error('SliderBar must be used as a child of Slider.');\n }\n\n const min = state.getThumbPercent(0);\n const max = state.getThumbPercent(1);\n\n return (\n <div\n {...rest}\n ref={ref}\n className={classNames?.track?.bar}\n style={{\n position: 'absolute',\n ...(state.orientation === 'horizontal' && {\n left: max ? `${min * 100}%` : 0,\n width: max\n ? `${(max * 100 || 0) - (min * 100 || 0)}%`\n : `${min * 100}%`,\n }),\n ...(state.orientation === 'vertical' && {\n bottom: max ? `${min * 100}%` : 0,\n height: max\n ? `${(max * 100 || 0) - (min * 100 || 0)}%`\n : `${min * 100}%`,\n }),\n }}\n />\n );\n});\n\nexport const SliderOutputContext =\n createContext<ContextValue<SliderOutputProps, HTMLOutputElement>>(null);\n\nexport const SliderOutput = forwardRef(function SliderOutput(\n props: SliderOutputProps,\n ref: ForwardedRef<HTMLOutputElement>,\n) {\n [props, ref] = useContextProps(props, ref, SliderOutputContext);\n\n props = useDefaultProps(props, 'SliderOutput');\n\n const { children: childrenProp, classNames: classNamesProp, ...rest } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderRenderProps) =>\n inlineVars(sliderStateVars, renderProps),\n [],\n );\n\n const children = useCallback(\n (renderProps: SliderRenderProps) => (\n <div className={classNames?.output?.output}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n ),\n [childrenProp, classNames?.output?.output],\n );\n\n return (\n <RACSliderOutput\n {...rest}\n ref={ref}\n className={classNames?.output?.container}\n style={style}\n >\n {children}\n </RACSliderOutput>\n );\n});\n\nexport const SliderTrackContext =\n createContext<ContextValue<SliderTrackProps, HTMLDivElement>>(null);\n\n/**\n * SliderTrack must be used as a child of Slider, a parent of SliderThumb,\n * and if used, a parent of SliderBar\n */\nexport const SliderTrack = forwardRef(function SliderTrack(\n props: SliderTrackProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SliderTrackContext);\n\n props = useDefaultProps(props, 'SliderTrack');\n\n const { children: childrenProp, classNames: classNamesProp, ...rest } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderTrackRenderProps) =>\n inlineVars(sliderTrackStateVars, renderProps),\n [],\n );\n\n const values = useMemo<\n [\n [\n typeof SliderThumbContext,\n ContextValue<SliderThumbProps, HTMLDivElement>,\n ],\n [typeof SliderBarContext, ContextValue<SliderBarProps, HTMLDivElement>],\n ]\n >(\n () => [\n [SliderThumbContext, { classNames }],\n [SliderBarContext, { classNames }],\n ],\n [classNames],\n );\n\n const children = useCallback(\n (renderProps: SliderTrackRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.track?.track}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n </Provider>\n ),\n [childrenProp, values, classNames?.track?.track],\n );\n\n return (\n <RACSliderTrack\n {...rest}\n ref={ref}\n className={classNames?.track?.container}\n style={style}\n >\n {children}\n </RACSliderTrack>\n );\n});\n\nexport const SliderThumbContext =\n createContext<ContextValue<SliderThumbProps, HTMLDivElement>>(null);\n\n/**\n * SliderThumb must be used as a child of SliderTrack\n */\nexport const SliderThumb = forwardRef(function SliderThumb(\n props: SliderThumbProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SliderThumbContext);\n\n props = useDefaultProps(props, 'SliderThumb');\n\n const { children: childrenProp, classNames: classNamesProp, ...rest } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderThumbRenderProps) =>\n inlineVars(sliderThumbStateVars, renderProps),\n [],\n );\n\n const children = useCallback(\n (renderProps: SliderThumbRenderProps) => (\n <div className={classNames?.thumb?.thumb}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n ),\n [childrenProp, classNames?.thumb?.thumb],\n );\n\n return (\n <RACSliderThumb\n {...rest}\n ref={ref}\n className={classNames?.thumb?.container}\n style={style}\n >\n {children}\n </RACSliderThumb>\n );\n});\n\nexport const SliderContext =\n createContext<ContextValue<SliderProps, HTMLDivElement>>(null);\n\nexport const Slider = forwardRef(function Slider(\n props: SliderProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n [props, ref] = useContextProps(props, ref, SliderContext);\n\n props = useDefaultProps(props, 'Slider');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n layout = 'stacked',\n orientation = 'horizontal',\n isDisabled,\n ...rest\n } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n ({ ...renderProps }: SliderRenderProps) =>\n inlineVars(sliderStateVars, {\n ...renderProps,\n layout,\n }),\n [layout],\n );\n\n const values = useMemo<\n [\n [typeof AriaLabelContext, ContextValue<LabelProps, HTMLLabelElement>],\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [\n typeof NumberFieldContext,\n ContextValue<NumberFieldProps, HTMLDivElement>,\n ],\n [\n typeof SliderOutputContext,\n ContextValue<SliderOutputProps, HTMLOutputElement>,\n ],\n [\n typeof SliderTrackContext,\n ContextValue<SliderTrackProps, HTMLDivElement>,\n ],\n [\n typeof GroupContext,\n ContextValue<\n GroupProps<NumberFieldProps, HTMLDivElement>,\n HTMLDivElement\n >,\n ],\n ]\n >(\n () => [\n [LabelContext, { className: classNames?.slider?.label }],\n [\n AriaTextContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n min: {\n className: clsx(\n classNames?.slider?.tick,\n classNames?.slider?.min,\n ),\n },\n max: {\n className: clsx(\n classNames?.slider?.tick,\n classNames?.slider?.max,\n ),\n },\n },\n },\n ],\n [NumberFieldContext, { classNames: classNames?.numberField, isDisabled }],\n [SliderOutputContext, { classNames }],\n [SliderTrackContext, { classNames }],\n [\n GroupContext,\n {\n classNames: classNames?.group,\n context: NumberFieldContext,\n orientation,\n reverse: orientation === 'vertical',\n values: { classNames: classNames?.group?.numberField },\n },\n ],\n ],\n [classNames, orientation, isDisabled],\n );\n\n const children = useCallback(\n (renderProps: SliderRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.slider?.slider}>\n {callRenderProps(childrenProp, renderProps)}\n </div>\n </Provider>\n ),\n [childrenProp, classNames?.slider, values],\n );\n\n return (\n <RACSlider\n {...rest}\n ref={ref}\n className={classNames?.slider?.container}\n orientation={orientation}\n style={style}\n isDisabled={isDisabled}\n >\n {children}\n </RACSlider>\n );\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/slider/index.tsx"],"names":["SliderBar","SliderOutput","RACSliderOutput","SliderTrack","RACSliderTrack","SliderThumb","RACSliderThumb","Slider","RACSlider"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { clsx } from 'clsx';\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n DEFAULT_SLOT,\n LabelContext,\n type LabelProps,\n Provider,\n Slider as RACSlider,\n SliderOutput as RACSliderOutput,\n SliderThumb as RACSliderThumb,\n SliderTrack as RACSliderTrack,\n SliderStateContext,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { type AriaLabelContext, AriaTextContext } from '../aria';\nimport { GroupContext } from '../group';\nimport { NumberFieldContext } from '../number-field';\nimport {\n sliderClassNames,\n sliderStateVars,\n sliderThumbStateVars,\n sliderTrackStateVars,\n} from './slider.css';\nimport type { GroupProps } from '../group/types';\nimport type { NumberFieldProps } from '../number-field/types';\nimport type {\n SliderBarProps,\n SliderOutputProps,\n SliderProps,\n SliderRenderProps,\n SliderThumbProps,\n SliderThumbRenderProps,\n SliderTrackProps,\n SliderTrackRenderProps,\n} from './types';\n\nexport const SliderBarContext =\n createContext<ContextValue<SliderBarProps, HTMLDivElement>>(null);\n\n/**\n * SliderBar is optional, but must be used as a child of SliderTrack\n */\nexport const SliderBar = forwardRef(function SliderBar(\n props: SliderBarProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n SliderBarContext,\n );\n\n const finalProps = useDefaultProps(contextProps, 'SliderBar');\n\n const { classNames: classNamesProp, ...rest } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const state = useContext(SliderStateContext);\n if (!state) {\n throw new Error('SliderBar must be used as a child of Slider.');\n }\n\n const min = state.getThumbPercent(0);\n const max = state.getThumbPercent(1);\n\n return (\n <div\n {...rest}\n ref={contextRef}\n className={classNames?.track?.bar}\n style={{\n position: 'absolute',\n ...(state.orientation === 'horizontal' && {\n left: max ? `${min * 100}%` : 0,\n width: max\n ? `${(max * 100 || 0) - (min * 100 || 0)}%`\n : `${min * 100}%`,\n }),\n ...(state.orientation === 'vertical' && {\n bottom: max ? `${min * 100}%` : 0,\n height: max\n ? `${(max * 100 || 0) - (min * 100 || 0)}%`\n : `${min * 100}%`,\n }),\n }}\n />\n );\n});\n\nexport const SliderOutputContext =\n createContext<ContextValue<SliderOutputProps, HTMLOutputElement>>(null);\n\nexport const SliderOutput = forwardRef(function SliderOutput(\n props: SliderOutputProps,\n ref: ForwardedRef<HTMLOutputElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n SliderOutputContext,\n );\n\n const finalProps = useDefaultProps(contextProps, 'SliderOutput');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderRenderProps) =>\n inlineVars(sliderStateVars, renderProps),\n [],\n );\n\n const children = useCallback(\n (renderProps: SliderRenderProps) => (\n <div className={classNames?.output?.output}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n ),\n [childrenProp, classNames?.output?.output],\n );\n\n return (\n <RACSliderOutput\n {...rest}\n ref={contextRef}\n className={classNames?.output?.container}\n style={style}\n >\n {children}\n </RACSliderOutput>\n );\n});\n\nexport const SliderTrackContext =\n createContext<ContextValue<SliderTrackProps, HTMLDivElement>>(null);\n\n/**\n * SliderTrack must be used as a child of Slider, a parent of SliderThumb,\n * and if used, a parent of SliderBar\n */\nexport const SliderTrack = forwardRef(function SliderTrack(\n props: SliderTrackProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n SliderTrackContext,\n );\n\n const finalProps = useDefaultProps(contextProps, 'SliderTrack');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderTrackRenderProps) =>\n inlineVars(sliderTrackStateVars, renderProps),\n [],\n );\n\n const values = useMemo<\n [\n [\n typeof SliderThumbContext,\n ContextValue<SliderThumbProps, HTMLDivElement>,\n ],\n [typeof SliderBarContext, ContextValue<SliderBarProps, HTMLDivElement>],\n ]\n >(\n () => [\n [SliderThumbContext, { classNames }],\n [SliderBarContext, { classNames }],\n ],\n [classNames],\n );\n\n const children = useCallback(\n (renderProps: SliderTrackRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.track?.track}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n </Provider>\n ),\n [childrenProp, values, classNames?.track?.track],\n );\n\n return (\n <RACSliderTrack\n {...rest}\n ref={contextRef}\n className={classNames?.track?.container}\n style={style}\n >\n {children}\n </RACSliderTrack>\n );\n});\n\nexport const SliderThumbContext =\n createContext<ContextValue<SliderThumbProps, HTMLDivElement>>(null);\n\n/**\n * SliderThumb must be used as a child of SliderTrack\n */\nexport const SliderThumb = forwardRef(function SliderThumb(\n props: SliderThumbProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n SliderThumbContext,\n );\n\n const finalProps = useDefaultProps(contextProps, 'SliderThumb');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: SliderThumbRenderProps) =>\n inlineVars(sliderThumbStateVars, renderProps),\n [],\n );\n\n const children = useCallback(\n (renderProps: SliderThumbRenderProps) => (\n <div className={classNames?.thumb?.thumb}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n ),\n [childrenProp, classNames?.thumb?.thumb],\n );\n\n return (\n <RACSliderThumb\n {...rest}\n ref={contextRef}\n className={classNames?.thumb?.container}\n style={style}\n >\n {children}\n </RACSliderThumb>\n );\n});\n\nexport const SliderContext =\n createContext<ContextValue<SliderProps, HTMLDivElement>>(null);\n\nexport const Slider = forwardRef(function Slider(\n props: SliderProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [contextProps, contextRef] = useContextProps(props, ref, SliderContext);\n\n const finalProps = useDefaultProps(contextProps, 'Slider');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n layout = 'stacked',\n orientation = 'horizontal',\n isDisabled,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(sliderClassNames, theme.Slider, classNamesProp),\n [theme.Slider, classNamesProp],\n );\n\n const style = useCallback(\n ({ ...renderProps }: SliderRenderProps) =>\n inlineVars(sliderStateVars, {\n ...renderProps,\n layout,\n }),\n [layout],\n );\n\n const values = useMemo<\n [\n [typeof AriaLabelContext, ContextValue<LabelProps, HTMLLabelElement>],\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [\n typeof NumberFieldContext,\n ContextValue<NumberFieldProps, HTMLDivElement>,\n ],\n [\n typeof SliderOutputContext,\n ContextValue<SliderOutputProps, HTMLOutputElement>,\n ],\n [\n typeof SliderTrackContext,\n ContextValue<SliderTrackProps, HTMLDivElement>,\n ],\n [\n typeof GroupContext,\n ContextValue<\n GroupProps<NumberFieldProps, HTMLDivElement>,\n HTMLDivElement\n >,\n ],\n ]\n >(\n () => [\n [LabelContext, { className: classNames?.slider?.label }],\n [\n AriaTextContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n min: {\n className: clsx(\n classNames?.slider?.tick,\n classNames?.slider?.min,\n ),\n },\n max: {\n className: clsx(\n classNames?.slider?.tick,\n classNames?.slider?.max,\n ),\n },\n },\n },\n ],\n [NumberFieldContext, { classNames: classNames?.numberField, isDisabled }],\n [SliderOutputContext, { classNames }],\n [SliderTrackContext, { classNames }],\n [\n GroupContext,\n {\n classNames: classNames?.group,\n context: NumberFieldContext,\n orientation,\n reverse: orientation === 'vertical',\n values: { classNames: classNames?.group?.numberField },\n },\n ],\n ],\n [classNames, orientation, isDisabled],\n );\n\n const children = useCallback(\n (renderProps: SliderRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.slider?.slider}>\n {callRenderProps(childrenProp, renderProps)}\n </div>\n </Provider>\n ),\n [childrenProp, classNames?.slider, values],\n );\n\n return (\n <RACSlider\n {...rest}\n ref={contextRef}\n className={classNames?.slider?.container}\n orientation={orientation}\n style={style}\n isDisabled={isDisabled}\n >\n {children}\n </RACSlider>\n );\n});\n"]}
@@ -13,53 +13,53 @@ import '../icon/types.js';
13
13
  import '../input/types.js';
14
14
 
15
15
  declare const sliderColorVars: {
16
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
17
- background: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
18
- boxShadow: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
16
+ color: `var(--${string})`;
17
+ background: `var(--${string})`;
18
+ boxShadow: `var(--${string})`;
19
19
  thumb: {
20
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
20
+ color: `var(--${string})`;
21
21
  };
22
22
  track: {
23
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
23
+ color: `var(--${string})`;
24
24
  };
25
25
  bar: {
26
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
26
+ color: `var(--${string})`;
27
27
  };
28
28
  };
29
29
  declare const sliderSpaceVars: {
30
- gap: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
31
- margin: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
30
+ gap: `var(--${string})`;
31
+ margin: `var(--${string})`;
32
32
  track: {
33
- minDimension: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
34
- thickness: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
33
+ minDimension: `var(--${string})`;
34
+ thickness: `var(--${string})`;
35
35
  };
36
36
  thumb: {
37
- height: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
38
- width: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
39
- borderRadius: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
37
+ height: `var(--${string})`;
38
+ width: `var(--${string})`;
39
+ borderRadius: `var(--${string})`;
40
40
  };
41
41
  bar: {
42
- height: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
43
- width: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
42
+ height: `var(--${string})`;
43
+ width: `var(--${string})`;
44
44
  };
45
45
  };
46
46
  declare const sliderStateVars: {
47
- layout: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
48
- orientation: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
49
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
47
+ layout: `var(--${string})`;
48
+ orientation: `var(--${string})`;
49
+ isDisabled: `var(--${string})`;
50
50
  };
51
51
  declare const sliderThumbStateVars: {
52
- layout: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
53
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
54
- isDragging: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
55
- isFocused: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
56
- isFocusVisible: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
57
- isHovered: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
52
+ layout: `var(--${string})`;
53
+ isDisabled: `var(--${string})`;
54
+ isDragging: `var(--${string})`;
55
+ isFocused: `var(--${string})`;
56
+ isFocusVisible: `var(--${string})`;
57
+ isHovered: `var(--${string})`;
58
58
  };
59
59
  declare const sliderTrackStateVars: {
60
- layout: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
61
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
62
- isHovered: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
60
+ layout: `var(--${string})`;
61
+ isDisabled: `var(--${string})`;
62
+ isHovered: `var(--${string})`;
63
63
  };
64
64
  declare const sliderClassNames: SliderClassNames;
65
65
 
@@ -11,14 +11,14 @@ import { jsxs, jsx } from 'react/jsx-runtime';
11
11
 
12
12
  var SwitchContext = createContext(null);
13
13
  var Switch = forwardRef(function Switch2(props, ref) {
14
- [props, ref] = useContextProps(props, ref, SwitchContext);
15
- props = useDefaultProps(props, "Switch");
14
+ const [contextProps, contextRef] = useContextProps(props, ref, SwitchContext);
15
+ const defaultProps = useDefaultProps(contextProps, "Switch");
16
16
  const {
17
17
  children: childrenProp,
18
18
  classNames: classNamesProp,
19
19
  alignInput,
20
20
  ...rest
21
- } = props;
21
+ } = defaultProps;
22
22
  const theme = useTheme();
23
23
  const classNames = useMemo(
24
24
  () => mergeClassNames(switchClassNames, theme.Switch, classNamesProp),
@@ -50,7 +50,7 @@ var Switch = forwardRef(function Switch2(props, ref) {
50
50
  Switch$1,
51
51
  {
52
52
  ...rest,
53
- ref,
53
+ ref: contextRef,
54
54
  className: classNames?.container,
55
55
  style,
56
56
  children
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/switch/index.tsx"],"names":["Switch","RACSwitch"],"mappings":";;;;;;;;;;;AA4BO,IAAM,aAAA,GACX,cAA2D,IAAI;AAE1D,IAAM,MAAA,GAAS,UAAA,CAAW,SAASA,OAAAA,CACxC,OACA,GAAA,EACA;AACA,EAAA,CAAC,OAAO,GAAG,CAAA,GAAI,eAAA,CAAgB,KAAA,EAAO,KAAK,aAAa,CAAA;AAExD,EAAA,KAAA,GAAQ,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAEvC,EAAA,MAAM;AAAA,IACJ,QAAA,EAAU,YAAA;AAAA,IACV,UAAA,EAAY,cAAA;AAAA,IACZ,UAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,QAAQ,QAAA,EAAS;AAEvB,EAAA,MAAM,UAAA,GAAa,OAAA;AAAA,IACjB,MAAM,eAAA,CAAgB,gBAAA,EAAkB,KAAA,CAAM,QAAQ,cAAc,CAAA;AAAA,IACpE,CAAC,KAAA,CAAM,MAAA,EAAQ,cAAc;AAAA,GAC/B;AAEA,EAAA,MAAM,KAAA,GAAQ,WAAA;AAAA,IACZ,CAAC,EAAE,KAAA,EAAO,GAAG,WAAA,EAAY,KACvB,WAAW,eAAA,EAAiB;AAAA,MAC1B,GAAG,WAAA;AAAA,MACH;AAAA,KACD,CAAA;AAAA,IACH,CAAC,UAAU;AAAA,GACb;AAEA,EAAA,MAAM,QAAA,GAAW,WAAA;AAAA,IACf,CAAC,WAAA,KAAmC;AAClC,MAAA,MAAM,KAAA,GAAQ,eAAA,CAAgB,YAAA,EAAc,WAAW,CAAA;AAEvD,MAAA,uBACE,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,MAAA,EAC1B,QAAA,EAAA;AAAA,QAAA,KAAA,oBAAS,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,OAAQ,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,wBACrD,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,SAAA,EAAW;AAAA,OAAA,EAC1C,CAAA;AAAA,IAEJ,CAAA;AAAA,IACA;AAAA,MACE,YAAA;AAAA,MACA,UAAA,EAAY,MAAA;AAAA,MACZ,UAAA,EAAY,KAAA;AAAA,MACZ,UAAA,EAAY;AAAA;AACd,GACF;AAEA,EAAA,uBACE,GAAA;AAAA,IAACC,QAAA;AAAA,IAAA;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,GAAA;AAAA,MACA,WAAW,UAAA,EAAY,SAAA;AAAA,MACvB,KAAA;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ,CAAC","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n type ForwardedRef,\n createContext,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport { type ContextValue, Switch as RACSwitch } from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { switchClassNames, switchStateVars } from './switch.css';\nimport type { SwitchProps, SwitchRenderProps } from './types';\n\nexport const SwitchContext =\n createContext<ContextValue<SwitchProps, HTMLLabelElement>>(null);\n\nexport const Switch = forwardRef(function Switch(\n props: SwitchProps,\n ref: ForwardedRef<HTMLLabelElement>,\n) {\n [props, ref] = useContextProps(props, ref, SwitchContext);\n\n props = useDefaultProps(props, 'Switch');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n alignInput,\n ...rest\n } = props;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(switchClassNames, theme.Switch, classNamesProp),\n [theme.Switch, classNamesProp],\n );\n\n const style = useCallback(\n ({ state, ...renderProps }: SwitchRenderProps) =>\n inlineVars(switchStateVars, {\n ...renderProps,\n alignInput,\n }),\n [alignInput],\n );\n\n const children = useCallback(\n (renderProps: SwitchRenderProps) => {\n const child = callRenderProps(childrenProp, renderProps);\n\n return (\n <span className={classNames?.switch}>\n {child && <span className={classNames?.label}>{child}</span>}\n <span className={classNames?.indicator} />\n </span>\n );\n },\n [\n childrenProp,\n classNames?.switch,\n classNames?.label,\n classNames?.indicator,\n ],\n );\n\n return (\n <RACSwitch\n {...rest}\n ref={ref}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSwitch>\n );\n});\n"]}
1
+ {"version":3,"sources":["../../../src/components/switch/index.tsx"],"names":["Switch","RACSwitch"],"mappings":";;;;;;;;;;;AA4BO,IAAM,aAAA,GACX,cAA2D,IAAI;AAE1D,IAAM,MAAA,GAAS,UAAA,CAAW,SAASA,OAAAA,CACxC,OACA,GAAA,EACA;AACA,EAAA,MAAM,CAAC,YAAA,EAAc,UAAU,IAAI,eAAA,CAAgB,KAAA,EAAO,KAAK,aAAa,CAAA;AAE5E,EAAA,MAAM,YAAA,GAAe,eAAA,CAAgB,YAAA,EAAc,QAAQ,CAAA;AAE3D,EAAA,MAAM;AAAA,IACJ,QAAA,EAAU,YAAA;AAAA,IACV,UAAA,EAAY,cAAA;AAAA,IACZ,UAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,YAAA;AAEJ,EAAA,MAAM,QAAQ,QAAA,EAAS;AAEvB,EAAA,MAAM,UAAA,GAAa,OAAA;AAAA,IACjB,MAAM,eAAA,CAAgB,gBAAA,EAAkB,KAAA,CAAM,QAAQ,cAAc,CAAA;AAAA,IACpE,CAAC,KAAA,CAAM,MAAA,EAAQ,cAAc;AAAA,GAC/B;AAEA,EAAA,MAAM,KAAA,GAAQ,WAAA;AAAA,IACZ,CAAC,EAAE,KAAA,EAAO,GAAG,WAAA,EAAY,KACvB,WAAW,eAAA,EAAiB;AAAA,MAC1B,GAAG,WAAA;AAAA,MACH;AAAA,KACD,CAAA;AAAA,IACH,CAAC,UAAU;AAAA,GACb;AAEA,EAAA,MAAM,QAAA,GAAW,WAAA;AAAA,IACf,CAAC,WAAA,KAAmC;AAClC,MAAA,MAAM,KAAA,GAAQ,eAAA,CAAgB,YAAA,EAAc,WAAW,CAAA;AAEvD,MAAA,uBACE,IAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,MAAA,EAC1B,QAAA,EAAA;AAAA,QAAA,KAAA,oBAAS,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,OAAQ,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,wBACrD,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,UAAA,EAAY,SAAA,EAAW;AAAA,OAAA,EAC1C,CAAA;AAAA,IAEJ,CAAA;AAAA,IACA;AAAA,MACE,YAAA;AAAA,MACA,UAAA,EAAY,MAAA;AAAA,MACZ,UAAA,EAAY,KAAA;AAAA,MACZ,UAAA,EAAY;AAAA;AACd,GACF;AAEA,EAAA,uBACE,GAAA;AAAA,IAACC,QAAA;AAAA,IAAA;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,GAAA,EAAK,UAAA;AAAA,MACL,WAAW,UAAA,EAAY,SAAA;AAAA,MACvB,KAAA;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ,CAAC","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport { type ContextValue, Switch as RACSwitch } from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { switchClassNames, switchStateVars } from './switch.css';\nimport type { SwitchProps, SwitchRenderProps } from './types';\n\nexport const SwitchContext =\n createContext<ContextValue<SwitchProps, HTMLLabelElement>>(null);\n\nexport const Switch = forwardRef(function Switch(\n props: SwitchProps,\n ref: ForwardedRef<HTMLLabelElement>,\n) {\n const [contextProps, contextRef] = useContextProps(props, ref, SwitchContext);\n\n const defaultProps = useDefaultProps(contextProps, 'Switch');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n alignInput,\n ...rest\n } = defaultProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(switchClassNames, theme.Switch, classNamesProp),\n [theme.Switch, classNamesProp],\n );\n\n const style = useCallback(\n ({ state, ...renderProps }: SwitchRenderProps) =>\n inlineVars(switchStateVars, {\n ...renderProps,\n alignInput,\n }),\n [alignInput],\n );\n\n const children = useCallback(\n (renderProps: SwitchRenderProps) => {\n const child = callRenderProps(childrenProp, renderProps);\n\n return (\n <span className={classNames?.switch}>\n {child && <span className={classNames?.label}>{child}</span>}\n <span className={classNames?.indicator} />\n </span>\n );\n },\n [\n childrenProp,\n classNames?.switch,\n classNames?.label,\n classNames?.indicator,\n ],\n );\n\n return (\n <RACSwitch\n {...rest}\n ref={contextRef}\n className={classNames?.container}\n style={style}\n >\n {children}\n </RACSwitch>\n );\n});\n"]}
@@ -5,26 +5,26 @@ import 'react';
5
5
 
6
6
  declare const switchContainer: string;
7
7
  declare const switchColorVars: {
8
- border: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
9
- background: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
10
- color: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
11
- indicator: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
8
+ border: `var(--${string})`;
9
+ background: `var(--${string})`;
10
+ color: `var(--${string})`;
11
+ indicator: `var(--${string})`;
12
12
  };
13
13
  declare const switchSpaceVars: {
14
- diameter: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
15
- gutter: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
16
- gap: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
17
- travel: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
14
+ diameter: `var(--${string})`;
15
+ gutter: `var(--${string})`;
16
+ gap: `var(--${string})`;
17
+ travel: `var(--${string})`;
18
18
  };
19
19
  declare const switchStateVars: {
20
- alignInput: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
21
- isDisabled: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
22
- isFocused: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
23
- isFocusVisible: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
24
- isHovered: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
25
- isPressed: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
26
- isReadOnly: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
27
- isSelected: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
20
+ alignInput: `var(--${string})`;
21
+ isDisabled: `var(--${string})`;
22
+ isFocused: `var(--${string})`;
23
+ isFocusVisible: `var(--${string})`;
24
+ isHovered: `var(--${string})`;
25
+ isPressed: `var(--${string})`;
26
+ isReadOnly: `var(--${string})`;
27
+ isSelected: `var(--${string})`;
28
28
  };
29
29
  declare const switchClassNames: SwitchClassNames;
30
30