@persona/design-system 0.10.5 → 0.10.6

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 (202) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/Badge-8YzapjWf.mjs.map +1 -1
  3. package/dist/Breadcrumbs-Dft2TR4v.mjs.map +1 -1
  4. package/dist/Card-DuQHyroh.mjs.map +1 -1
  5. package/dist/CardV2-BRJbRSts.mjs.map +1 -1
  6. package/dist/Checkbox-Dr4LMKHV.mjs.map +1 -1
  7. package/dist/{CheckboxGroupField-UHpA38U5.d.mts → CheckboxGroupField-CjeEoiPa.d.mts} +2 -2
  8. package/dist/CheckboxGroupField.d.mts +1 -1
  9. package/dist/Combobox-DQxaOCLA.mjs.map +1 -1
  10. package/dist/{Combobox-BXkcQ2aY.d.mts → Combobox-O6LbofT2.d.mts} +3 -3
  11. package/dist/Combobox.d.mts +2 -2
  12. package/dist/{ComboboxBase-D2rDQHYZ.d.mts → ComboboxBase-5aSDuY-E.d.mts} +2 -2
  13. package/dist/ComboboxBase.d.mts +1 -1
  14. package/dist/{ComboboxMultiSelect-CrvB6ap5.d.mts → ComboboxMultiSelect-D3mX4Dzq.d.mts} +2 -2
  15. package/dist/ComboboxMultiSelect.d.mts +1 -1
  16. package/dist/{ComboboxSingleSelect-Dp0iTdDO.d.mts → ComboboxSingleSelect-CfSy6sCU.d.mts} +3 -3
  17. package/dist/ComboboxSingleSelect.d.mts +1 -1
  18. package/dist/{DataTable-C000E74h.d.mts → DataTable-BXHmi-SW.d.mts} +7 -6
  19. package/dist/{DataTable-DEJHWrsy.mjs → DataTable-CAfZNJmb.mjs} +8 -7
  20. package/dist/DataTable-CAfZNJmb.mjs.map +1 -0
  21. package/dist/DataTable.d.mts +1 -1
  22. package/dist/DatePicker-D-_ibUd1.mjs.map +1 -1
  23. package/dist/DropdownButton-BiFRlSVD.mjs.map +1 -1
  24. package/dist/DropdownButton.d.mts +1 -1
  25. package/dist/{DropdownMenu-CQbS7ML5.d.mts → DropdownMenu-CAYVX9Q3.d.mts} +2 -2
  26. package/dist/DropdownMenu-Q8S-9rXm.mjs.map +1 -1
  27. package/dist/DropdownMenu.d.mts +1 -1
  28. package/dist/FormControl-BztNXLn6.mjs.map +1 -1
  29. package/dist/{FormField-g1zQFM9T.mjs → FormField-BStxmlZT.mjs} +2 -2
  30. package/dist/FormField-BStxmlZT.mjs.map +1 -0
  31. package/dist/{FormField-PBo1ctY8.d.mts → FormField-D10LW9-a.d.mts} +2 -2
  32. package/dist/FormField.d.mts +1 -1
  33. package/dist/HoverCopyableField-CW7Jxmni.mjs.map +1 -1
  34. package/dist/{I18nContext-EPmbUprm.d.mts → I18nContext-BBVKF9ui.d.mts} +2 -2
  35. package/dist/I18nContext.d.mts +1 -1
  36. package/dist/IconButton-DftINsp7.mjs.map +1 -1
  37. package/dist/IndexTableLayout.d.mts +3 -3
  38. package/dist/InlineCombobox.d.mts +1 -1
  39. package/dist/InlineInput.d.mts +1 -1
  40. package/dist/Input-DtO3qMnE.mjs.map +1 -1
  41. package/dist/Link-DKYmdL9t.mjs.map +1 -1
  42. package/dist/ListBox-CDG0EAPg.mjs.map +1 -1
  43. package/dist/{ListBox-D9SYTzOd.d.mts → ListBox-CvnFiHK5.d.mts} +2 -2
  44. package/dist/ListBox.d.mts +1 -1
  45. package/dist/{ListBoxField-CtPDd_Aw.d.mts → ListBoxField-DuUwx9Cv.d.mts} +4 -4
  46. package/dist/ListBoxField.d.mts +1 -1
  47. package/dist/LoadingShimmer-oPIv2ESr.mjs.map +1 -1
  48. package/dist/{LogicRow-BWIZ7262.d.mts → LogicRow-COvZNiUd.d.mts} +2 -2
  49. package/dist/LogicRow.d.mts +1 -1
  50. package/dist/{Menu-DizjcMbO.d.mts → Menu-ByYFNvgS.d.mts} +2 -2
  51. package/dist/Menu-EIT_MwK6.mjs.map +1 -1
  52. package/dist/Menu.d.mts +1 -1
  53. package/dist/{Modal-92O_uW8H.mjs → Modal-ziuzDCPN.mjs} +2 -2
  54. package/dist/Modal-ziuzDCPN.mjs.map +1 -0
  55. package/dist/PageHeader-BzvA_NNt.mjs.map +1 -1
  56. package/dist/PageLayout-DCe3F76N.mjs.map +1 -1
  57. package/dist/{PageSelector-QaKYtk6y.d.mts → PageSelector-BOe4EzbS.d.mts} +8 -2
  58. package/dist/PageSelector.d.mts +1 -1
  59. package/dist/{Pagination-dTsHLVAk.mjs → Pagination-Dpc6TadZ.mjs} +15 -11
  60. package/dist/Pagination-Dpc6TadZ.mjs.map +1 -0
  61. package/dist/{Pagination-DeXorbSK.d.mts → Pagination-Dy-OSH0Y.d.mts} +10 -2
  62. package/dist/Pagination.d.mts +1 -1
  63. package/dist/Popover-DordjYNM.mjs.map +1 -1
  64. package/dist/ProgressIndicator-ISARECzW.mjs.map +1 -1
  65. package/dist/Radio-BlEtetrr.mjs.map +1 -1
  66. package/dist/RadioGroup-CMrXmmn4.mjs.map +1 -1
  67. package/dist/SegmentedControl-D_DA-MU1.mjs.map +1 -1
  68. package/dist/{Select-Chk5WB1F.d.mts → Select-BLqHxJUz.d.mts} +2 -2
  69. package/dist/Select-DkUMz4LG.mjs.map +1 -1
  70. package/dist/Select.d.mts +1 -1
  71. package/dist/SmartTextInputField.d.mts +2 -2
  72. package/dist/Spacer-C4d9Aho6.mjs.map +1 -1
  73. package/dist/Spinner-CXb-KUs1.mjs.map +1 -1
  74. package/dist/StatusIndicator-pWl1-FLb.mjs.map +1 -1
  75. package/dist/Sticker-Bi_fezCO.mjs.map +1 -1
  76. package/dist/TabBar-DpXYsWgS.mjs.map +1 -1
  77. package/dist/Table-DPi4Dt5H.mjs.map +1 -1
  78. package/dist/TableBox-BfSF36Gy.mjs.map +1 -1
  79. package/dist/TableBox.d.mts +1 -1
  80. package/dist/{TableBoxCell-CwroLAWy.d.mts → TableBoxCell-DPXrw63v.d.mts} +4 -4
  81. package/dist/TableBoxCell.d.mts +1 -1
  82. package/dist/{TableBoxField-B7bHv7uV.d.mts → TableBoxField-C7MGSie9.d.mts} +5 -5
  83. package/dist/TableBoxField.d.mts +1 -1
  84. package/dist/{TableBoxRow-Dke8B99J.d.mts → TableBoxRow-uToXVWvl.d.mts} +2 -2
  85. package/dist/TableBoxRow.d.mts +1 -1
  86. package/dist/{TableBoxRowActions-CkUDVERC.d.mts → TableBoxRowActions-Do646IVE.d.mts} +2 -2
  87. package/dist/TableBoxRowActions.d.mts +1 -1
  88. package/dist/{TableControls-DAjx1TYG.d.mts → TableControls-BHv-tXA-.d.mts} +4 -3
  89. package/dist/{TableControls-BDXOQMr7.mjs → TableControls-C-0Dw8vM.mjs} +7 -5
  90. package/dist/TableControls-C-0Dw8vM.mjs.map +1 -0
  91. package/dist/TableControls.d.mts +1 -1
  92. package/dist/{TableControlsContext-BEIvE9qN.d.mts → TableControlsContext-D6rifk-v.d.mts} +2 -2
  93. package/dist/TableControlsContext.d.mts +1 -1
  94. package/dist/{TableViewConfigurationDropdown-vYnU0d4k.d.mts → TableViewConfigurationDropdown-C5bjxTGX.d.mts} +2 -2
  95. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  96. package/dist/TechnicalSticker-B_JlBkXZ.mjs.map +1 -1
  97. package/dist/Text-D0vEReED.mjs.map +1 -1
  98. package/dist/TextArea-Dro-HH8O.mjs.map +1 -1
  99. package/dist/Toggle-D9MzTIZs.mjs.map +1 -1
  100. package/dist/Tooltip-YViXzMdm.mjs.map +1 -1
  101. package/dist/{clientFilterUtils-DYKgw2Yq.d.mts → clientFilterUtils-DDDG1g7e.d.mts} +2 -2
  102. package/dist/clientFilterUtils.d.mts +1 -1
  103. package/dist/components/Accordion/index.mjs.map +1 -1
  104. package/dist/components/Attribute/index.mjs.map +1 -1
  105. package/dist/components/Banner/index.mjs.map +1 -1
  106. package/dist/components/BottomPanel/index.mjs.map +1 -1
  107. package/dist/components/ButtonGroup/index.mjs.map +1 -1
  108. package/dist/components/CodeHighlight/index.mjs.map +1 -1
  109. package/dist/components/Combobox/index.d.mts +2 -2
  110. package/dist/components/DataTable/TableControls/index.d.mts +6 -6
  111. package/dist/components/DataTable/TableControls/index.mjs +1 -1
  112. package/dist/components/DataTable/index.d.mts +5 -5
  113. package/dist/components/DataTable/index.mjs +1 -1
  114. package/dist/components/DataTable/types.d.mts +1 -1
  115. package/dist/components/DropdownMenu/index.d.mts +1 -1
  116. package/dist/components/FloatingPanel/index.mjs.map +1 -1
  117. package/dist/components/FormField/index.d.mts +5 -5
  118. package/dist/components/FormField/index.mjs +1 -1
  119. package/dist/components/ImageTile/index.mjs.map +1 -1
  120. package/dist/components/ListBox/index.d.mts +3 -3
  121. package/dist/components/MaskedInput/index.mjs.map +1 -1
  122. package/dist/components/MatchHighlight/index.mjs.map +1 -1
  123. package/dist/components/Menu/index.d.mts +1 -1
  124. package/dist/components/Modal/index.mjs +1 -1
  125. package/dist/components/Pagination/index.d.mts +2 -2
  126. package/dist/components/Pagination/index.mjs +1 -1
  127. package/dist/components/ProgressBar/index.mjs.map +1 -1
  128. package/dist/components/RichTextEditor/index.mjs +1 -1
  129. package/dist/components/RichTextEditor/index.mjs.map +1 -1
  130. package/dist/components/RightPanel/index.mjs.map +1 -1
  131. package/dist/components/Select/index.d.mts +1 -1
  132. package/dist/components/SelectionCard/index.mjs.map +1 -1
  133. package/dist/components/Slider/index.mjs.map +1 -1
  134. package/dist/components/SmartTextInput/index.mjs +1 -1
  135. package/dist/components/SmartTextInput/index.mjs.map +1 -1
  136. package/dist/components/SwatchPicker/index.mjs.map +1 -1
  137. package/dist/components/TableBox/index.d.mts +1 -1
  138. package/dist/components/Tile/index.mjs.map +1 -1
  139. package/dist/components/Toast/index.mjs.map +1 -1
  140. package/dist/components/VersionHistory/index.mjs +1 -1
  141. package/dist/components/VersionHistory/index.mjs.map +1 -1
  142. package/dist/display.d.mts +1 -1
  143. package/dist/fieldPickerOptions.d.mts +1 -1
  144. package/dist/{filters-DjXkx8GJ.d.mts → filters-CkAFU8LV.d.mts} +2 -2
  145. package/dist/filters.d.mts +1 -1
  146. package/dist/{helpers-CdxEL7ri.d.mts → helpers-Dvvcz-hL.d.mts} +3 -3
  147. package/dist/helpers.d.mts +1 -1
  148. package/dist/{i18n-BLyCaSdJ.mjs → i18n-CKRi992F.mjs} +2 -1
  149. package/dist/i18n-CKRi992F.mjs.map +1 -0
  150. package/dist/{index-DX5Zu9JU.d.mts → index-B3A74_ew.d.mts} +3 -3
  151. package/dist/index6.d.mts +1 -1
  152. package/dist/{inputFields-CYttsz5M.d.mts → inputFields-Dfpxi68z.d.mts} +5 -5
  153. package/dist/inputFields.d.mts +1 -1
  154. package/dist/lib/PDSProvider.d.mts +1 -1
  155. package/dist/lib/PDSProvider.mjs +1 -1
  156. package/dist/lib/PDSProvider.mjs.map +1 -1
  157. package/dist/lib/TruncatedText.mjs.map +1 -1
  158. package/dist/lib/TruncatedTextWithTooltip.mjs.map +1 -1
  159. package/dist/lib/color.mjs.map +1 -1
  160. package/dist/lib/colorMode.mjs.map +1 -1
  161. package/dist/lib/i18n/index.d.mts +2 -2
  162. package/dist/lib/i18n/index.mjs +1 -1
  163. package/dist/lib/pseudoClass.mjs.map +1 -1
  164. package/dist/lib/semanticColor.mjs.map +1 -1
  165. package/dist/lib/useEmbeddedSurface.mjs.map +1 -1
  166. package/dist/mixins/focus.mjs.map +1 -1
  167. package/dist/mixins/hoverable.mjs.map +1 -1
  168. package/dist/mixins/input.mjs.map +1 -1
  169. package/dist/mixins/menuItem.mjs.map +1 -1
  170. package/dist/mixins/print/index.mjs.map +1 -1
  171. package/dist/mixins/scrollbar.mjs.map +1 -1
  172. package/dist/{operators-gCG7uZ6y.d.mts → operators-BrrJKENE.d.mts} +2 -2
  173. package/dist/operators.d.mts +1 -1
  174. package/dist/patterns/CardGrouping/index.mjs.map +1 -1
  175. package/dist/patterns/IndexTableLayout/index.mjs +1 -1
  176. package/dist/patterns/IndexTableLayout/index.mjs.map +1 -1
  177. package/dist/patterns/LayoutLoadingShimmer/index.mjs.map +1 -1
  178. package/dist/patterns/LayoutLoadingSpinner/index.mjs.map +1 -1
  179. package/dist/patterns/WizardModal/index.mjs +1 -1
  180. package/dist/patterns/WizardModal/index.mjs.map +1 -1
  181. package/dist/{strings-CK9n6b65.d.mts → strings-BGXKl_m6.d.mts} +6 -1
  182. package/dist/strings.d.mts +1 -1
  183. package/dist/theme.mjs.map +1 -1
  184. package/dist/{types-DJobO07d.d.mts → types-DoJubhWu.d.mts} +2 -2
  185. package/dist/{types-CayYd8EX.d.mts → types-sUEmxsGM.d.mts} +2 -2
  186. package/dist/types5.d.mts +1 -1
  187. package/dist/useChain-D1aNsdvn.mjs.map +1 -1
  188. package/dist/useColumnConfiguration.d.mts +2 -2
  189. package/dist/useComboboxFooterAction.d.mts +1 -1
  190. package/dist/useFormField-pOVkb5BK.mjs.map +1 -1
  191. package/dist/{useTableColumns-BK-KYY0L.d.mts → useTableColumns-nPrbDfF_.d.mts} +2 -2
  192. package/dist/useTableColumns.d.mts +1 -1
  193. package/dist/useTruncation.d.mts +1 -1
  194. package/dist/utils/storybook.mjs.map +1 -1
  195. package/dist/variables/effect.mjs.map +1 -1
  196. package/package.json +16 -3
  197. package/dist/DataTable-DEJHWrsy.mjs.map +0 -1
  198. package/dist/FormField-g1zQFM9T.mjs.map +0 -1
  199. package/dist/Modal-92O_uW8H.mjs.map +0 -1
  200. package/dist/Pagination-dTsHLVAk.mjs.map +0 -1
  201. package/dist/TableControls-BDXOQMr7.mjs.map +0 -1
  202. package/dist/i18n-BLyCaSdJ.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/components/Slider/SliderThumb.tsx","../../../src/components/Slider/Slider.tsx","../../../src/components/Slider/SliderRHF.tsx"],"sourcesContent":["import {\n autoUpdate,\n type ElementProps,\n flip,\n type FloatingContext,\n offset,\n shift,\n useDismiss,\n useFloating,\n useInteractions,\n useRole,\n} from '@floating-ui/react';\nimport { useFocusRing } from '@react-aria/focus';\nimport { useSliderThumb } from '@react-aria/slider';\nimport { mergeProps } from '@react-aria/utils';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\nimport type { SliderState } from '@react-stately/slider';\nimport { debounce } from 'lodash-es';\nimport {\n type OutputHTMLAttributes,\n type RefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport styled from 'styled-components';\n\nimport { Color } from '@persona/design-tokens';\nimport { FloatingTooltip } from 'design-system/components/Tooltip';\nimport { semanticColor } from 'design-system/lib/semanticColor';\nimport { focusStyle } from 'design-system/mixins/focus';\nimport { paragraphMixins } from 'design-system/mixins/text';\n\nconst Tooltip = styled(FloatingTooltip)`\n ${paragraphMixins.sm};\n`;\n\nconst Thumb = styled('div')<{ disabled?: boolean }>`\n /* Note this will break if the element is not on a white background. Variable is provided to be able to override. */\n --background-color-behind-thumb: ${({ theme }) => semanticColor(theme, 'SurfacePrimary', Color.PrimaryWhite)};\n box-sizing: border-box;\n width: 16px;\n height: 16px;\n background: ${({ theme, disabled }) =>\n disabled\n ? semanticColor(theme, 'InputSurfaceDisabled', Color.BackgroundInputDisabled)\n : semanticColor(theme, 'InputSurfaceInverseStatic', Color.BackgroundInputDefault)};\n cursor: ${(props) => (props.disabled ? 'inherit' : 'pointer')};\n border-radius: 50%;\n border: 1px solid\n ${({ theme, disabled }) =>\n disabled\n ? semanticColor(theme, 'InputBorderDisabled', Color.BorderInputDisabled)\n : semanticColor(theme, 'BorderDefault', Color.BorderInputDisabled)};\n /* Enable clicks on thumb */\n pointer-events: auto;\n\n &[data-focused] {\n ${focusStyle}\n /* Extra pixel of size to overlap into the outline, fixing a small visual bug */\n box-shadow: 0 0 0 2px var(--background-color-behind-thumb);\n }\n`;\n\ninterface SliderThumbProps {\n state: SliderState;\n trackRef: RefObject<HTMLElement>;\n index: number;\n outputProps: OutputHTMLAttributes<HTMLOutputElement>;\n hideTooltips?: boolean;\n}\n\ninterface UsePressedOptions {\n delay?: number;\n}\n\nconst usePressed = (context: FloatingContext, options?: UsePressedOptions): ElementProps => {\n const closeHandler = useMemo(\n () => debounce(() => context.onOpenChange(false), options?.delay ?? 500),\n [],\n );\n return {\n reference: {\n onPointerDown: () => {\n context.onOpenChange(true);\n },\n onPointerUp: () => {\n closeHandler();\n },\n },\n };\n};\n\nconst SliderThumb = ({ state, trackRef, index, outputProps, hideTooltips }: SliderThumbProps) => {\n const inputRef = useRef(null);\n const { thumbProps, inputProps } = useSliderThumb(\n {\n index,\n trackRef,\n inputRef,\n },\n state,\n );\n\n const { focusProps, isFocused } = useFocusRing();\n\n const [open, setOpen] = useState(false);\n\n const { x, y, refs, strategy, context } = useFloating({\n placement: 'top',\n open,\n onOpenChange: setOpen,\n whileElementsMounted: autoUpdate,\n middleware: [offset(4), flip(), shift({ padding: 4 })],\n });\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useRole(context, { role: 'tooltip' }),\n useDismiss(context),\n usePressed(context),\n ]);\n\n useEffect(() => {\n setOpen(isFocused);\n }, [isFocused]);\n\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n left: `${state.getThumbPercent(index) * 100}%`,\n }}\n >\n {open && !hideTooltips && (\n <Tooltip\n {...mergeProps(\n getFloatingProps({\n ref: refs.setFloating,\n style: {\n position: strategy,\n top: y ?? '',\n left: x ?? '',\n },\n }),\n outputProps,\n )}\n >\n {state.getThumbValueLabel(index)}\n </Tooltip>\n )}\n <Thumb\n {...mergeProps(\n thumbProps,\n getReferenceProps({\n ref: refs.setReference,\n }),\n isFocused ? { 'data-focused': true } : undefined,\n )}\n >\n <VisuallyHidden>\n <input ref={inputRef} {...mergeProps(inputProps, focusProps)} />\n </VisuallyHidden>\n </Thumb>\n </div>\n );\n};\n\nexport default SliderThumb;\n","import type { NumberFormatOptions } from '@internationalized/number';\nimport { useNumberFormatter } from '@react-aria/i18n';\nimport { useSlider } from '@react-aria/slider';\nimport { useSliderState } from '@react-stately/slider';\nimport type { SliderProps as SliderPropsType } from '@react-types/slider';\nimport { type FocusEventHandler, type ReactNode, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport SliderThumb from 'design-system/components/Slider/SliderThumb';\nimport { semanticColor, semanticOnly } from 'design-system/lib/semanticColor';\nimport { paragraphMixins } from 'design-system/mixins/text';\n\nconst SliderContainer = styled.div`\n display: flex;\n align-items: center;\n touch-action: none;\n position: relative;\n`;\n\nconst SliderLabel = styled.div<{ $disabled?: boolean }>`\n ${paragraphMixins.md};\n ${({ $disabled }) =>\n semanticOnly((tokens) => `color: ${$disabled ? tokens.FgDisabled : tokens.FgPrimary};`)}\n &:first-of-type {\n padding-right: ${Spacing[2]};\n }\n\n &:last-of-type {\n padding-left: ${Spacing[2]};\n }\n`;\n\ntype SliderTrackProps = {\n track?: boolean;\n percents: number[];\n disabled?: boolean;\n};\nconst SliderTrack = styled.div<SliderTrackProps>`\n position: relative;\n width: 100%;\n height: 4px;\n border-radius: 4px;\n outline: none;\n transition: background 0.2s;\n\n /* Disable clicks on slide bar */\n pointer-events: none;\n\n ${({ theme, percents, track, disabled }) => {\n const activeColor = disabled\n ? semanticColor(theme, 'InputBorderDisabled', Color.BorderInputDisabled)\n : semanticColor(theme, 'InputBorderAccent', Color.CoreBlue700);\n const trackColor = semanticColor(theme, 'BorderSubtle', Color.BorderDivider);\n\n if (track === false) {\n return css`\n background: ${trackColor};\n `;\n }\n\n if (percents.length === 2) {\n return css`\n background: linear-gradient(\n to right,\n ${trackColor} 0%,\n ${trackColor} ${percents[0] * 100}%,\n ${activeColor} ${percents[0] * 100}%,\n ${activeColor} ${percents[1] * 100}%,\n ${trackColor} ${percents[1] * 100}%,\n ${trackColor} 100%\n );\n `;\n }\n\n const leftColor = activeColor;\n const rightColor = trackColor;\n\n return css`\n background: linear-gradient(\n to right,\n ${leftColor} 0%,\n ${leftColor} ${percents[0] * 100}%,\n ${rightColor} ${percents[0] * 100}%,\n ${rightColor} 100%\n );\n `;\n }}\n`;\n\nexport interface SliderProps<T = number | number[]> {\n min?: number;\n minLabel?: ReactNode;\n max?: number;\n maxLabel?: ReactNode;\n onChange?: (value: T) => void;\n value?: T;\n defaultValue?: T;\n step?: number;\n\n /**\n * Show labels on ends of track\n */\n showLabels?: boolean;\n\n /**\n * Track style\n */\n track?: boolean;\n\n /**\n * Hide tooltips on slider thumbs\n */\n hideTooltips?: boolean;\n width?: number | 'auto';\n disabled?: boolean;\n formatOptions?: NumberFormatOptions;\n\n id?: string;\n className?: string;\n name?: string;\n onBlur?: FocusEventHandler<HTMLDivElement>;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n}\n\nexport const Slider = ({\n minLabel,\n maxLabel,\n showLabels,\n track,\n width,\n hideTooltips,\n className,\n id,\n onBlur,\n ...elemProps\n}: SliderProps) => {\n const { min, max, value, defaultValue, disabled } = elemProps;\n const trackRef = useRef(null);\n const numberFormatter = useNumberFormatter(elemProps.formatOptions);\n\n const ariaElemProps: SliderPropsType = {\n ...elemProps,\n isDisabled: disabled,\n minValue: min,\n maxValue: max,\n value: typeof value === 'number' ? [value] : value,\n defaultValue: typeof defaultValue === 'number' ? [defaultValue] : defaultValue,\n onChange:\n typeof elemProps.onChange !== 'undefined'\n ? (v) => {\n if (Array.isArray(v) && v.length === 1) {\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return elemProps.onChange(v[0]);\n }\n\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return elemProps.onChange(v);\n }\n : undefined,\n };\n\n const state = useSliderState({ ...ariaElemProps, numberFormatter });\n const { groupProps, trackProps, outputProps } = useSlider(ariaElemProps, state, trackRef);\n\n return (\n <SliderContainer\n {...groupProps}\n style={{\n position: 'relative',\n alignItems: 'center',\n width: width ?? 300,\n touchAction: 'none',\n }}\n className={className}\n id={id}\n onBlur={onBlur}\n >\n {showLabels && <SliderLabel $disabled={disabled}>{minLabel ?? min}</SliderLabel>}\n <SliderTrack\n {...trackProps}\n track={track}\n ref={trackRef}\n percents={state.values.map((_v, i) => state.getThumbPercent(i))}\n disabled={disabled}\n >\n {state.values.map((_v, i) => (\n <SliderThumb\n key={`${trackProps.id}_thumb${i}`}\n index={i}\n state={state}\n trackRef={trackRef}\n hideTooltips={hideTooltips}\n outputProps={outputProps}\n />\n ))}\n </SliderTrack>\n {showLabels && <SliderLabel $disabled={disabled}>{maxLabel ?? max}</SliderLabel>}\n </SliderContainer>\n );\n};\n\nexport default Slider;\n","import type { ComponentPropsWithoutRef } from 'react';\nimport { type Control, type FieldValues, useController } from 'react-hook-form';\n\nimport Slider from './Slider';\n\ninterface SliderRHFProps extends ComponentPropsWithoutRef<typeof Slider> {\n control: Control<FieldValues, object>;\n name: string;\n}\n\nconst SliderRHF = ({ control, name: nameProp, defaultValue, ...elemProps }: SliderRHFProps) => {\n const {\n field: { onChange, onBlur, name, value },\n } = useController({\n name: nameProp,\n control,\n rules: { required: true },\n defaultValue,\n });\n\n return <Slider {...elemProps} onBlur={onBlur} onChange={onChange} value={value} name={name} />;\n};\n\nexport default SliderRHF;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../src/components/Slider/SliderThumb.tsx","../../../src/components/Slider/Slider.tsx","../../../src/components/Slider/SliderRHF.tsx"],"sourcesContent":["import {\n autoUpdate,\n type ElementProps,\n flip,\n type FloatingContext,\n offset,\n shift,\n useDismiss,\n useFloating,\n useInteractions,\n useRole,\n} from '@floating-ui/react';\nimport { useFocusRing } from '@react-aria/focus';\nimport { useSliderThumb } from '@react-aria/slider';\nimport { mergeProps } from '@react-aria/utils';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\nimport type { SliderState } from '@react-stately/slider';\nimport { debounce } from 'lodash-es';\nimport {\n type OutputHTMLAttributes,\n type RefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport styled from 'styled-components';\n\nimport { Color } from '@persona/design-tokens';\n\nimport { FloatingTooltip } from '#src/components/Tooltip';\nimport { semanticColor } from '#src/lib/semanticColor';\nimport { focusStyle } from '#src/mixins/focus';\nimport { paragraphMixins } from '#src/mixins/text';\n\nconst Tooltip = styled(FloatingTooltip)`\n ${paragraphMixins.sm};\n`;\n\nconst Thumb = styled('div')<{ disabled?: boolean }>`\n /* Note this will break if the element is not on a white background. Variable is provided to be able to override. */\n --background-color-behind-thumb: ${({ theme }) => semanticColor(theme, 'SurfacePrimary', Color.PrimaryWhite)};\n box-sizing: border-box;\n width: 16px;\n height: 16px;\n background: ${({ theme, disabled }) =>\n disabled\n ? semanticColor(theme, 'InputSurfaceDisabled', Color.BackgroundInputDisabled)\n : semanticColor(theme, 'InputSurfaceInverseStatic', Color.BackgroundInputDefault)};\n cursor: ${(props) => (props.disabled ? 'inherit' : 'pointer')};\n border-radius: 50%;\n border: 1px solid\n ${({ theme, disabled }) =>\n disabled\n ? semanticColor(theme, 'InputBorderDisabled', Color.BorderInputDisabled)\n : semanticColor(theme, 'BorderDefault', Color.BorderInputDisabled)};\n /* Enable clicks on thumb */\n pointer-events: auto;\n\n &[data-focused] {\n ${focusStyle}\n /* Extra pixel of size to overlap into the outline, fixing a small visual bug */\n box-shadow: 0 0 0 2px var(--background-color-behind-thumb);\n }\n`;\n\ninterface SliderThumbProps {\n state: SliderState;\n trackRef: RefObject<HTMLElement>;\n index: number;\n outputProps: OutputHTMLAttributes<HTMLOutputElement>;\n hideTooltips?: boolean;\n}\n\ninterface UsePressedOptions {\n delay?: number;\n}\n\nconst usePressed = (context: FloatingContext, options?: UsePressedOptions): ElementProps => {\n const closeHandler = useMemo(\n () => debounce(() => context.onOpenChange(false), options?.delay ?? 500),\n [],\n );\n return {\n reference: {\n onPointerDown: () => {\n context.onOpenChange(true);\n },\n onPointerUp: () => {\n closeHandler();\n },\n },\n };\n};\n\nconst SliderThumb = ({ state, trackRef, index, outputProps, hideTooltips }: SliderThumbProps) => {\n const inputRef = useRef(null);\n const { thumbProps, inputProps } = useSliderThumb(\n {\n index,\n trackRef,\n inputRef,\n },\n state,\n );\n\n const { focusProps, isFocused } = useFocusRing();\n\n const [open, setOpen] = useState(false);\n\n const { x, y, refs, strategy, context } = useFloating({\n placement: 'top',\n open,\n onOpenChange: setOpen,\n whileElementsMounted: autoUpdate,\n middleware: [offset(4), flip(), shift({ padding: 4 })],\n });\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useRole(context, { role: 'tooltip' }),\n useDismiss(context),\n usePressed(context),\n ]);\n\n useEffect(() => {\n setOpen(isFocused);\n }, [isFocused]);\n\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n transform: 'translateX(-50%) translateY(-50%)',\n left: `${state.getThumbPercent(index) * 100}%`,\n }}\n >\n {open && !hideTooltips && (\n <Tooltip\n {...mergeProps(\n getFloatingProps({\n ref: refs.setFloating,\n style: {\n position: strategy,\n top: y ?? '',\n left: x ?? '',\n },\n }),\n outputProps,\n )}\n >\n {state.getThumbValueLabel(index)}\n </Tooltip>\n )}\n <Thumb\n {...mergeProps(\n thumbProps,\n getReferenceProps({\n ref: refs.setReference,\n }),\n isFocused ? { 'data-focused': true } : undefined,\n )}\n >\n <VisuallyHidden>\n <input ref={inputRef} {...mergeProps(inputProps, focusProps)} />\n </VisuallyHidden>\n </Thumb>\n </div>\n );\n};\n\nexport default SliderThumb;\n","import type { NumberFormatOptions } from '@internationalized/number';\nimport { useNumberFormatter } from '@react-aria/i18n';\nimport { useSlider } from '@react-aria/slider';\nimport { useSliderState } from '@react-stately/slider';\nimport type { SliderProps as SliderPropsType } from '@react-types/slider';\nimport { type FocusEventHandler, type ReactNode, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\n\nimport SliderThumb from '#src/components/Slider/SliderThumb';\nimport { semanticColor, semanticOnly } from '#src/lib/semanticColor';\nimport { paragraphMixins } from '#src/mixins/text';\n\nconst SliderContainer = styled.div`\n display: flex;\n align-items: center;\n touch-action: none;\n position: relative;\n`;\n\nconst SliderLabel = styled.div<{ $disabled?: boolean }>`\n ${paragraphMixins.md};\n ${({ $disabled }) =>\n semanticOnly((tokens) => `color: ${$disabled ? tokens.FgDisabled : tokens.FgPrimary};`)}\n &:first-of-type {\n padding-right: ${Spacing[2]};\n }\n\n &:last-of-type {\n padding-left: ${Spacing[2]};\n }\n`;\n\ntype SliderTrackProps = {\n track?: boolean;\n percents: number[];\n disabled?: boolean;\n};\nconst SliderTrack = styled.div<SliderTrackProps>`\n position: relative;\n width: 100%;\n height: 4px;\n border-radius: 4px;\n outline: none;\n transition: background 0.2s;\n\n /* Disable clicks on slide bar */\n pointer-events: none;\n\n ${({ theme, percents, track, disabled }) => {\n const activeColor = disabled\n ? semanticColor(theme, 'InputBorderDisabled', Color.BorderInputDisabled)\n : semanticColor(theme, 'InputBorderAccent', Color.CoreBlue700);\n const trackColor = semanticColor(theme, 'BorderSubtle', Color.BorderDivider);\n\n if (track === false) {\n return css`\n background: ${trackColor};\n `;\n }\n\n if (percents.length === 2) {\n return css`\n background: linear-gradient(\n to right,\n ${trackColor} 0%,\n ${trackColor} ${percents[0] * 100}%,\n ${activeColor} ${percents[0] * 100}%,\n ${activeColor} ${percents[1] * 100}%,\n ${trackColor} ${percents[1] * 100}%,\n ${trackColor} 100%\n );\n `;\n }\n\n const leftColor = activeColor;\n const rightColor = trackColor;\n\n return css`\n background: linear-gradient(\n to right,\n ${leftColor} 0%,\n ${leftColor} ${percents[0] * 100}%,\n ${rightColor} ${percents[0] * 100}%,\n ${rightColor} 100%\n );\n `;\n }}\n`;\n\nexport interface SliderProps<T = number | number[]> {\n min?: number;\n minLabel?: ReactNode;\n max?: number;\n maxLabel?: ReactNode;\n onChange?: (value: T) => void;\n value?: T;\n defaultValue?: T;\n step?: number;\n\n /**\n * Show labels on ends of track\n */\n showLabels?: boolean;\n\n /**\n * Track style\n */\n track?: boolean;\n\n /**\n * Hide tooltips on slider thumbs\n */\n hideTooltips?: boolean;\n width?: number | 'auto';\n disabled?: boolean;\n formatOptions?: NumberFormatOptions;\n\n id?: string;\n className?: string;\n name?: string;\n onBlur?: FocusEventHandler<HTMLDivElement>;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n}\n\nexport const Slider = ({\n minLabel,\n maxLabel,\n showLabels,\n track,\n width,\n hideTooltips,\n className,\n id,\n onBlur,\n ...elemProps\n}: SliderProps) => {\n const { min, max, value, defaultValue, disabled } = elemProps;\n const trackRef = useRef(null);\n const numberFormatter = useNumberFormatter(elemProps.formatOptions);\n\n const ariaElemProps: SliderPropsType = {\n ...elemProps,\n isDisabled: disabled,\n minValue: min,\n maxValue: max,\n value: typeof value === 'number' ? [value] : value,\n defaultValue: typeof defaultValue === 'number' ? [defaultValue] : defaultValue,\n onChange:\n typeof elemProps.onChange !== 'undefined'\n ? (v) => {\n if (Array.isArray(v) && v.length === 1) {\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return elemProps.onChange(v[0]);\n }\n\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return elemProps.onChange(v);\n }\n : undefined,\n };\n\n const state = useSliderState({ ...ariaElemProps, numberFormatter });\n const { groupProps, trackProps, outputProps } = useSlider(ariaElemProps, state, trackRef);\n\n return (\n <SliderContainer\n {...groupProps}\n style={{\n position: 'relative',\n alignItems: 'center',\n width: width ?? 300,\n touchAction: 'none',\n }}\n className={className}\n id={id}\n onBlur={onBlur}\n >\n {showLabels && <SliderLabel $disabled={disabled}>{minLabel ?? min}</SliderLabel>}\n <SliderTrack\n {...trackProps}\n track={track}\n ref={trackRef}\n percents={state.values.map((_v, i) => state.getThumbPercent(i))}\n disabled={disabled}\n >\n {state.values.map((_v, i) => (\n <SliderThumb\n key={`${trackProps.id}_thumb${i}`}\n index={i}\n state={state}\n trackRef={trackRef}\n hideTooltips={hideTooltips}\n outputProps={outputProps}\n />\n ))}\n </SliderTrack>\n {showLabels && <SliderLabel $disabled={disabled}>{maxLabel ?? max}</SliderLabel>}\n </SliderContainer>\n );\n};\n\nexport default Slider;\n","import type { ComponentPropsWithoutRef } from 'react';\nimport { type Control, type FieldValues, useController } from 'react-hook-form';\n\nimport Slider from './Slider';\n\ninterface SliderRHFProps extends ComponentPropsWithoutRef<typeof Slider> {\n control: Control<FieldValues, object>;\n name: string;\n}\n\nconst SliderRHF = ({ control, name: nameProp, defaultValue, ...elemProps }: SliderRHFProps) => {\n const {\n field: { onChange, onBlur, name, value },\n } = useController({\n name: nameProp,\n control,\n rules: { required: true },\n defaultValue,\n });\n\n return <Slider {...elemProps} onBlur={onBlur} onChange={onChange} value={value} name={name} />;\n};\n\nexport default SliderRHF;\n"],"mappings":"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"}
@@ -16,7 +16,7 @@ import { n as Button } from "../../IconButton-DftINsp7.mjs";
16
16
  import { n as useFormField } from "../../useFormField-pOVkb5BK.mjs";
17
17
  import Input_default from "../Input/index.mjs";
18
18
  import { n as ErrorText } from "../../FormControl-BztNXLn6.mjs";
19
- import { m as FormField, n as TableBoxField, p as splitOutFormFieldProps } from "../../FormField-g1zQFM9T.mjs";
19
+ import { m as FormField, n as TableBoxField, p as splitOutFormFieldProps } from "../../FormField-BStxmlZT.mjs";
20
20
  import PillType from "./PillType.mjs";
21
21
  import { ErrorMessageByKind, NodeType, isASTChainNode, isASTContainerNode, isMethodChainNode } from "./parser/smart-text/types.mjs";
22
22
  import { parse as peg$parse } from "./parser/smart-text/parser.mjs";