@servicetitan/anvil2 1.50.0 → 1.50.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/dist/{Calendar-CAYitkfM.js → Calendar-BeFARXwq.js} +2 -2
- package/dist/{Calendar-CAYitkfM.js.map → Calendar-BeFARXwq.js.map} +1 -1
- package/dist/{Calendar-C9oxHTGG.js → Calendar-M9v994mm.js} +2 -2
- package/dist/{Calendar-C9oxHTGG.js.map → Calendar-M9v994mm.js.map} +1 -1
- package/dist/Calendar.js +2 -2
- package/dist/{Checkbox-DbBeuNdW.js → Checkbox-BwFY38z1.js} +3 -2
- package/dist/Checkbox-BwFY38z1.js.map +1 -0
- package/dist/{Checkbox-zAKOGEBl.js → Checkbox-Chck2V5C.js} +2 -2
- package/dist/{Checkbox-zAKOGEBl.js.map → Checkbox-Chck2V5C.js.map} +1 -1
- package/dist/Checkbox.js +2 -2
- package/dist/{Combobox-hxGMMb8x.js → Combobox-BTTWNSW1.js} +290 -192
- package/dist/Combobox-BTTWNSW1.js.map +1 -0
- package/dist/Combobox.js +1 -1
- package/dist/{DataTable-DSySFGWC.js → DataTable-hXWouflx.js} +114 -60
- package/dist/DataTable-hXWouflx.js.map +1 -0
- package/dist/DataTable.css +68 -26
- package/dist/{DateField-BT9jJRp5.js → DateField-B8JdMu94.js} +6 -6
- package/dist/{DateField-BT9jJRp5.js.map → DateField-B8JdMu94.js.map} +1 -1
- package/dist/DateField.js +1 -1
- package/dist/{DateFieldRange-ZAic_9mt.js → DateFieldRange-DWAgi_T9.js} +7 -7
- package/dist/{DateFieldRange-ZAic_9mt.js.map → DateFieldRange-DWAgi_T9.js.map} +1 -1
- package/dist/DateFieldRange.js +1 -1
- package/dist/{DateFieldSingle-DAtR8ImE.js → DateFieldSingle-CQ6X-bVX.js} +7 -7
- package/dist/{DateFieldSingle-DAtR8ImE.js.map → DateFieldSingle-CQ6X-bVX.js.map} +1 -1
- package/dist/DateFieldSingle.js +1 -1
- package/dist/{DateFieldYearless-DXO_MPwA.js → DateFieldYearless-D6-NfIHu.js} +4 -4
- package/dist/{DateFieldYearless-DXO_MPwA.js.map → DateFieldYearless-D6-NfIHu.js.map} +1 -1
- package/dist/DateFieldYearless.js +1 -1
- package/dist/{DateFieldYearlessRange-Cg6bbPIi.js → DateFieldYearlessRange-CQM0vibm.js} +4 -4
- package/dist/{DateFieldYearlessRange-Cg6bbPIi.js.map → DateFieldYearlessRange-CQM0vibm.js.map} +1 -1
- package/dist/DateFieldYearlessRange.js +1 -1
- package/dist/{DaysOfTheWeek-9B9d7-hF.js → DaysOfTheWeek-BR-mg77X.js} +3 -3
- package/dist/{DaysOfTheWeek-9B9d7-hF.js.map → DaysOfTheWeek-BR-mg77X.js.map} +1 -1
- package/dist/DaysOfTheWeek.js +1 -1
- package/dist/{Dialog-BwabBKoZ.js → Dialog-Ba2oIATn.js} +8 -8
- package/dist/Dialog-Ba2oIATn.js.map +1 -0
- package/dist/Dialog.js +2 -2
- package/dist/{DialogCancelButton-sTEfx5kf.js → DialogCancelButton-CBHyI0CI.js} +2 -2
- package/dist/{DialogCancelButton-sTEfx5kf.js.map → DialogCancelButton-CBHyI0CI.js.map} +1 -1
- package/dist/{Drawer-GXeoK-r9.js → Drawer-CWogbC68.js} +7 -7
- package/dist/{Drawer-GXeoK-r9.js.map → Drawer-CWogbC68.js.map} +1 -1
- package/dist/Drawer.js +1 -1
- package/dist/{DrawerContext-Cs3k160L.js → DrawerContext-rJvgnn3O.js} +2 -2
- package/dist/{DrawerContext-Cs3k160L.js.map → DrawerContext-rJvgnn3O.js.map} +1 -1
- package/dist/FieldDialog-BHgkQOhh.js +519 -0
- package/dist/FieldDialog-BHgkQOhh.js.map +1 -0
- package/dist/{SelectFieldSync.css → FieldDialog.css} +6 -5
- package/dist/{FieldLabel-jqlQ1Ldh.js → FieldLabel-BWOIFXgt.js} +7 -4
- package/dist/FieldLabel-BWOIFXgt.js.map +1 -0
- package/dist/FieldLabel.js +1 -1
- package/dist/{InputMask-CJC9xZHG.js → InputMask-BzY1DJoV.js} +3 -3
- package/dist/{InputMask-CJC9xZHG.js.map → InputMask-BzY1DJoV.js.map} +1 -1
- package/dist/InputMask.js +1 -1
- package/dist/{ListView-D8mfK8Lu.js → ListView-C5OBwbHe.js} +6 -4
- package/dist/ListView-C5OBwbHe.js.map +1 -0
- package/dist/ListView.js +1 -1
- package/dist/{Menu-Cn2JJe1Y.js → Menu-69JwGxYh.js} +2 -2
- package/dist/{Menu-Cn2JJe1Y.js.map → Menu-69JwGxYh.js.map} +1 -1
- package/dist/Menu.js +1 -1
- package/dist/MultiSelectField.d.ts +2 -0
- package/dist/MultiSelectField.js +2 -0
- package/dist/MultiSelectField.js.map +1 -0
- package/dist/MultiSelectFieldSync-B3HNQf7R.js +873 -0
- package/dist/MultiSelectFieldSync-B3HNQf7R.js.map +1 -0
- package/dist/MultiSelectFieldSync.css +259 -0
- package/dist/{NumberField-CjWLnD9X.js → NumberField-CcH25bnO.js} +3 -3
- package/dist/{NumberField-CjWLnD9X.js.map → NumberField-CcH25bnO.js.map} +1 -1
- package/dist/NumberField.js +1 -1
- package/dist/{Page-DEbpjQw0.js → Page-B5HZSjSl.js} +5 -5
- package/dist/{Page-DEbpjQw0.js.map → Page-B5HZSjSl.js.map} +1 -1
- package/dist/Page.js +1 -1
- package/dist/{Pagination-BR8MiRaA.js → Pagination-CkdBaQx6.js} +2 -2
- package/dist/{Pagination-BR8MiRaA.js.map → Pagination-CkdBaQx6.js.map} +1 -1
- package/dist/Pagination.js +1 -1
- package/dist/{Popover-CCXrzBul.js → Popover-D9SmGQTh.js} +6 -5
- package/dist/{Popover-CCXrzBul.js.map → Popover-D9SmGQTh.js.map} +1 -1
- package/dist/Popover.js +1 -1
- package/dist/{ProgressBar-BpKEr6cO.js → ProgressBar-BABkqVmW.js} +2 -2
- package/dist/{ProgressBar-BpKEr6cO.js.map → ProgressBar-BABkqVmW.js.map} +1 -1
- package/dist/ProgressBar.js +1 -1
- package/dist/{Radio-jj0-1dOg.js → Radio-Cds2laHA.js} +2 -2
- package/dist/{Radio-jj0-1dOg.js.map → Radio-Cds2laHA.js.map} +1 -1
- package/dist/Radio.js +2 -2
- package/dist/{RadioGroup-Bxy415eu.js → RadioGroup-COVlUmwy.js} +3 -3
- package/dist/{RadioGroup-Bxy415eu.js.map → RadioGroup-COVlUmwy.js.map} +1 -1
- package/dist/{SelectCard-CjbsPKZ4.js → SelectCard-C-Kjk5eS.js} +3 -3
- package/dist/{SelectCard-CjbsPKZ4.js.map → SelectCard-C-Kjk5eS.js.map} +1 -1
- package/dist/SelectCard.js +1 -1
- package/dist/SelectField.js +1 -1
- package/dist/SelectFieldSync-0CL0RTpg.js +679 -0
- package/dist/SelectFieldSync-0CL0RTpg.js.map +1 -0
- package/dist/{SelectTrigger-DfVnPiNf.js → SelectTrigger-C1U-PlLz.js} +6 -3
- package/dist/SelectTrigger-C1U-PlLz.js.map +1 -0
- package/dist/SelectTrigger.js +1 -1
- package/dist/{SelectTriggerBase-D8scKtBr.js → SelectTriggerBase-RHD4FTQE.js} +5 -17
- package/dist/SelectTriggerBase-RHD4FTQE.js.map +1 -0
- package/dist/SelectTriggerBase.css +65 -59
- package/dist/SelectTriggerBase.module-B0NFRlQP.js +36 -0
- package/dist/SelectTriggerBase.module-B0NFRlQP.js.map +1 -0
- package/dist/Table.js +1 -1
- package/dist/{TextField-Qv6OqiKQ.js → TextField-BYGSTwkL.js} +2 -2
- package/dist/{TextField-Qv6OqiKQ.js.map → TextField-BYGSTwkL.js.map} +1 -1
- package/dist/{TextField-DNuEXKyN.js → TextField-BZ3h2mqU.js} +3 -3
- package/dist/{TextField-DNuEXKyN.js.map → TextField-BZ3h2mqU.js.map} +1 -1
- package/dist/TextField.js +1 -1
- package/dist/{Textarea-DdLD4imO.js → Textarea-Cb0Qs2FH.js} +8 -3
- package/dist/Textarea-Cb0Qs2FH.js.map +1 -0
- package/dist/Textarea.js +1 -1
- package/dist/{TimeField-C39hYluo.js → TimeField-DBtJYC7t.js} +4 -4
- package/dist/{TimeField-C39hYluo.js.map → TimeField-DBtJYC7t.js.map} +1 -1
- package/dist/TimeField.js +1 -1
- package/dist/Toast.js +2 -2
- package/dist/{Toaster-DJ4tNy-0.js → Toaster-Cerf91qp.js} +2 -2
- package/dist/{Toaster-DJ4tNy-0.js.map → Toaster-Cerf91qp.js.map} +1 -1
- package/dist/{Toaster-DyDVYq4x.js → Toaster-DDrGllhh.js} +3 -3
- package/dist/{Toaster-DyDVYq4x.js.map → Toaster-DDrGllhh.js.map} +1 -1
- package/dist/{Toolbar-DEwvVf35.js → Toolbar-K9UFfyvX.js} +326 -171
- package/dist/Toolbar-K9UFfyvX.js.map +1 -0
- package/dist/Toolbar.css +62 -30
- package/dist/Toolbar.js +1 -1
- package/dist/{Tooltip-CBy7srE2.js → Tooltip-CkfkiQPz.js} +2 -2
- package/dist/{Tooltip-CBy7srE2.js.map → Tooltip-CkfkiQPz.js.map} +1 -1
- package/dist/Tooltip.js +1 -1
- package/dist/{YearlessDateInputWithPicker-DMGx3gE2.js → YearlessDateInputWithPicker-BIkxKxPi.js} +4 -4
- package/dist/{YearlessDateInputWithPicker-DMGx3gE2.js.map → YearlessDateInputWithPicker-BIkxKxPi.js.map} +1 -1
- package/dist/beta/components/MultiSelectField/MultiSelectField.d.ts +27 -0
- package/dist/beta/components/MultiSelectField/MultiSelectFieldSync.d.ts +63 -0
- package/dist/beta/components/MultiSelectField/index.d.ts +3 -0
- package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldInput.d.ts +79 -0
- package/dist/beta/components/MultiSelectField/internal/MultiSelectFieldList.d.ts +26 -0
- package/dist/beta/components/MultiSelectField/internal/useComboMultiple.d.ts +44 -0
- package/dist/beta/components/MultiSelectField/stories/MultiSelectField.stories.data.d.ts +19 -0
- package/dist/beta/components/MultiSelectField/types.d.ts +311 -0
- package/dist/beta/components/SelectField/internal/FieldDialog/FieldDialog.d.ts +3 -1
- package/dist/beta/components/SelectField/internal/FieldPopover/FieldPopover.d.ts +1 -0
- package/dist/beta/components/SelectField/internal/SelectFieldInput.d.ts +3 -1
- package/dist/beta/components/SelectField/internal/SelectFieldLabel.d.ts +11 -3
- package/dist/beta/components/SelectField/internal/SelectFieldListItem.d.ts +2 -1
- package/dist/beta/components/SelectField/internal/useCombo.d.ts +1 -0
- package/dist/beta/components/SelectField/types.d.ts +19 -1
- package/dist/beta/components/Table/DataTable/internal/cells/DataTableHeaderCell.d.ts +9 -1
- package/dist/beta/components/Table/DataTable/stories/DataTable.story-data.d.ts +1 -0
- package/dist/beta/components/Table/internal/ResizeHandle.d.ts +5 -2
- package/dist/beta/components/Table/internal/getCommonPinningStyles.d.ts +2 -1
- package/dist/beta/components/Toolbar/Filters/internal/utils/filter-state.d.ts +28 -0
- package/dist/beta/components/index.d.ts +1 -0
- package/dist/beta.js +7 -5
- package/dist/beta.js.map +1 -1
- package/dist/components/Button/Button.figma.d.ts +1 -0
- package/dist/components/Combobox/ComboboxTypes.d.ts +1 -1
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyTrigger.d.ts +2 -2
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyUtils.d.ts +0 -36
- package/dist/components/Combobox/internal/ComboboxUtils.d.ts +0 -57
- package/dist/components/FieldLabel/FieldLabel.d.ts +5 -1
- package/dist/components/FieldLabel/internal/FieldLabelMoreInfoIcon.d.ts +3 -1
- package/dist/components/Icon/Icons.figma.d.ts +11 -0
- package/dist/components/ListView/ListView.d.ts +2 -9
- package/dist/components/ListView/internal/types.d.ts +12 -0
- package/dist/components/SelectTrigger/SelectTrigger.d.ts +1 -1
- package/dist/components/Switch/Switch.figma.d.ts +1 -0
- package/dist/components/Textarea/Textarea.d.ts +1 -1
- package/dist/index.js +34 -34
- package/dist/internal/components/Label/Label.d.ts +13 -3
- package/dist/internal/hooks/index.d.ts +1 -0
- package/dist/internal/hooks/useDownshiftEnvironment/index.d.ts +1 -0
- package/dist/internal/hooks/useDownshiftEnvironment/useDownshiftEnvironment.d.ts +36 -0
- package/dist/internal/hooks/useOnClickOutside/useOnClickOutside.d.ts +8 -7
- package/dist/{match-sorter.esm-CtBw0MrM.js → match-sorter.esm-NrKOPPde.js} +16 -3
- package/dist/match-sorter.esm-NrKOPPde.js.map +1 -0
- package/dist/types/props.d.ts +5 -0
- package/dist/{useInitialFocus-BpmW7pDB.js → useInitialFocus-D_ESGka7.js} +3 -3
- package/dist/{useInitialFocus-BpmW7pDB.js.map → useInitialFocus-D_ESGka7.js.map} +1 -1
- package/dist/useOnClickOutside-Zw5vzxSq.js +71 -0
- package/dist/useOnClickOutside-Zw5vzxSq.js.map +1 -0
- package/dist/useOpenCloseTransitionStates-CiTYrLGi.js +68 -0
- package/dist/useOpenCloseTransitionStates-CiTYrLGi.js.map +1 -0
- package/dist/{usePopoverSupport-CCSCHnit.js → usePopoverSupport-CldZmxFl.js} +2 -2
- package/dist/{usePopoverSupport-CCSCHnit.js.map → usePopoverSupport-CldZmxFl.js.map} +1 -1
- package/dist/{utils-Bkbn9cyk.js → utils-u8cyv323.js} +2 -2
- package/dist/{utils-Bkbn9cyk.js.map → utils-u8cyv323.js.map} +1 -1
- package/package.json +4 -3
- package/dist/Checkbox-DbBeuNdW.js.map +0 -1
- package/dist/Combobox-hxGMMb8x.js.map +0 -1
- package/dist/DataTable-DSySFGWC.js.map +0 -1
- package/dist/Dialog-BwabBKoZ.js.map +0 -1
- package/dist/FieldLabel-jqlQ1Ldh.js.map +0 -1
- package/dist/ListView-D8mfK8Lu.js.map +0 -1
- package/dist/SelectFieldSync-BOzavAtv.js +0 -1122
- package/dist/SelectFieldSync-BOzavAtv.js.map +0 -1
- package/dist/SelectTrigger-DfVnPiNf.js.map +0 -1
- package/dist/SelectTriggerBase-D8scKtBr.js.map +0 -1
- package/dist/SelectTriggerBase.module-Ce49lamD.js +0 -35
- package/dist/SelectTriggerBase.module-Ce49lamD.js.map +0 -1
- package/dist/Textarea-DdLD4imO.js.map +0 -1
- package/dist/Toolbar-DEwvVf35.js.map +0 -1
- package/dist/match-sorter.esm-CtBw0MrM.js.map +0 -1
- package/dist/useOnClickOutside-BDzuUjmY.js +0 -147
- package/dist/useOnClickOutside-BDzuUjmY.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectFieldSync-0CL0RTpg.js","sources":["../src/beta/components/SelectField/internal/SelectFieldList.tsx","../src/beta/components/SelectField/internal/SelectFieldInput.tsx","../src/beta/components/SelectField/internal/useCombo.tsx","../src/beta/components/SelectField/SelectField.tsx","../src/beta/components/SelectField/SelectFieldSync.tsx"],"sourcesContent":["import { SelectFieldDownshiftItem, SelectFieldOption } from \"../types\";\nimport { UseComboboxPropGetters } from \"downshift\";\nimport Spinner from \"../../../../components/Spinner\";\nimport Button from \"../../../../components/Button\";\nimport styles from \"./SelectFieldList.module.scss\";\nimport cx from \"classnames\";\nimport { CSSProperties } from \"react\";\nimport { SelectFieldListItem } from \"./SelectFieldListItem\";\nimport { InView } from \"./InView\";\nimport { Text } from \"../../../../components/Text\";\nimport { SrOnly } from \"../../../../components\";\n\ntype GetMenuProps =\n UseComboboxPropGetters<SelectFieldDownshiftItem>[\"getMenuProps\"];\ntype GetItemProps =\n UseComboboxPropGetters<SelectFieldDownshiftItem>[\"getItemProps\"];\n\nexport type SelectFieldListProps = {\n isOpen: boolean;\n items: SelectFieldDownshiftItem[];\n getMenuProps: GetMenuProps;\n getItemProps: GetItemProps;\n highlightedIndex: number;\n selectedOption: SelectFieldOption | null;\n hasMore: boolean;\n onLoadMore: () => void;\n loading: boolean;\n loadingMore: boolean;\n disableAutoLoadMore?: boolean;\n disabled?: boolean;\n className?: string;\n style?: CSSProperties;\n};\nexport const SelectFieldList = ({\n isOpen,\n items,\n getMenuProps,\n getItemProps,\n highlightedIndex,\n selectedOption,\n hasMore,\n onLoadMore,\n loading,\n loadingMore,\n disableAutoLoadMore,\n disabled,\n className,\n style,\n}: SelectFieldListProps) => {\n const handleLoaderVisibilityChange = (visible: boolean) => {\n if (visible && !disableAutoLoadMore) {\n onLoadMore();\n }\n };\n\n return (\n <div\n {...getMenuProps({\n className: cx(styles[\"scroller\"], className),\n style,\n })}\n >\n <ul className={cx(styles[\"select-field-list\"])}>\n {isOpen && (\n <>\n {loading ? (\n <div className={styles[\"empty\"]}>\n <Spinner size=\"medium\" />\n </div>\n ) : items.length > 0 ? (\n items.map((item, index) => (\n <SelectFieldListItem\n key={item.id}\n item={item}\n index={index}\n getItemProps={getItemProps}\n selectionType=\"single\"\n checked={\n selectedOption?.id === item.original.id\n ? \"checked\"\n : \"unchecked\"\n }\n highlighted={highlightedIndex === index}\n disabled={(disabled || item.disabled) ?? false}\n />\n ))\n ) : (\n <div className={styles[\"empty\"]}>\n <Text subdued size=\"small\">\n No match found\n </Text>\n </div>\n )}\n </>\n )}\n </ul>\n {loadingMore ? (\n <div className={styles[\"load-more\"]}>\n <Spinner size=\"small\" />\n <SrOnly>Loading more...</SrOnly>\n </div>\n ) : hasMore && !loading ? (\n <InView\n onVisibilityChange={handleLoaderVisibilityChange}\n rootMargin=\"0px 0px -100px 0px\"\n >\n <div className={styles[\"load-more\"]}>\n <Button appearance=\"secondary\" size=\"small\" onClick={onLoadMore}>\n Load more\n </Button>\n </div>\n </InView>\n ) : null}\n </div>\n );\n};\n\nSelectFieldList.displayName = \"SelectFieldList\";\n","import styles from \"../../../../components/SelectTrigger/internal/SelectTriggerBase.module.scss\";\nimport cx from \"classnames\";\nimport { PassThroughProps, Size } from \"../../../../types\";\nimport { Button } from \"../../../../components/Button\";\nimport Chevron_Right from \"@servicetitan/hammer-icon/mdi/round/chevron_right.svg\";\nimport Close from \"@servicetitan/hammer-icon/mdi/round/close.svg\";\nimport { ReactElement, RefObject } from \"react\";\n\n/**\n * Props for the SelectFieldInput component\n * @property {string} [placeholder] - Placeholder text displayed when input is empty\n * @property {Extract<Size, \"small\" | \"medium\" | \"large\">} [size] - Size variant of the input\n * @property {boolean} [disableClearButton] - Hides the clear button when true\n * @property {boolean} [disableToggleButton] - Hides the toggle button when true\n * @property {boolean} [disabled] - Disables the input entirely\n * @property {boolean} [readOnly] - Cannot be modified but remains interactive\n * @property {boolean} [required] - Marks the input as required for form validation\n * @property {boolean} [error] - Shows error styling on the input when true\n * @property {() => void} [onClear] - Callback fired when the clear button is clicked\n * @property {string} [id] - HTML id attribute for the input element\n * @property {string} [popoverTarget] - Target identifier for popover association\n * @property {RefObject<HTMLDivElement>} [inputWrapperRef] - Ref for the input wrapper div element\n * @property {PassThroughProps<\"div\">} [htmlInputWrapperProps] - Additional props passed to the wrapper div\n * @property {PassThroughProps<\"input\">} [inputProps] - Additional props passed to the input element\n * @property {PassThroughProps<\"button\">} [toggleButtonProps] - Additional props passed to the toggle button\n * @property {string | ReactElement} [prefix] - Content to display before the input\n * @property {string | ReactElement} [suffix] - Content to display after the input\n */\nexport type SelectFieldInputProps = {\n placeholder?: string;\n size?: Extract<Size, \"small\" | \"medium\" | \"large\">;\n disableClearButton?: boolean;\n disableToggleButton?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n required?: boolean;\n error?: boolean;\n onClear?: () => void;\n id?: string;\n popoverTarget?: string;\n inputWrapperRef?: RefObject<HTMLDivElement>;\n htmlInputWrapperProps?: PassThroughProps<\"div\">;\n inputProps?: PassThroughProps<\"input\">;\n toggleButtonProps?: PassThroughProps<\"button\">;\n prefix?: string | ReactElement;\n suffix?: string | ReactElement;\n};\n\n/**\n * Internal input component for the SelectField that provides the text input and action buttons.\n *\n * Features:\n * - Text input for filtering and displaying selected values\n * - Optional clear button for removing the current selection\n * - Optional toggle button for opening/closing the dropdown menu\n * - Supports multiple size variants (small, medium, large)\n * - Fully accessible with proper ARIA labels on buttons\n * - Supports pass-through props for customization of internal elements\n * - Optional prefix and suffix content\n * - Error state styling\n *\n * @example\n * <SelectFieldInput\n * placeholder=\"Search...\"\n * size=\"medium\"\n * onClear={() => handleClear()}\n * prefix=\"$\"\n * />\n */\nexport const SelectFieldInput = ({\n placeholder,\n size,\n disableClearButton,\n disableToggleButton,\n disabled,\n readOnly,\n required,\n error,\n onClear,\n id,\n inputWrapperRef,\n htmlInputWrapperProps,\n inputProps,\n toggleButtonProps,\n prefix,\n suffix,\n}: SelectFieldInputProps) => {\n const inputWrapperClassNames = cx(styles[\"input-wrapper\"], {\n [styles[\"small\"]]: size === \"small\",\n [styles[\"large\"]]: size === \"large\",\n [styles[\"no-clear-button\"]]: disableClearButton,\n [styles[\"no-toggle-button\"]]: disableToggleButton,\n [styles[\"disabled\"]]: disabled || readOnly,\n });\n\n return (\n <div\n ref={inputWrapperRef}\n {...htmlInputWrapperProps}\n className={cx(inputWrapperClassNames, htmlInputWrapperProps?.className)}\n >\n {prefix ? <div className={styles[\"prefix\"]}>{prefix}</div> : null}\n <input\n id={id}\n placeholder={placeholder}\n disabled={disabled}\n readOnly={readOnly}\n required={required}\n {...inputProps}\n className={cx(styles[\"input\"], inputProps?.className, {\n [styles[\"error\"]]: error,\n })}\n />\n {suffix ? <div className={styles[\"suffix\"]}>{suffix}</div> : null}\n <div className={styles[\"buttons-wrapper\"]}>\n {disableClearButton ? null : (\n <div className={styles[\"close-button-wrapper\"]}>\n <Button\n icon={Close}\n aria-label=\"clear selection\"\n appearance=\"ghost\"\n size=\"small\"\n className={styles[\"close-button\"]}\n onClick={() => {\n onClear?.();\n }}\n />\n </div>\n )}\n {disableToggleButton ? null : (\n <div className={styles[\"toggle-button-wrapper\"]}>\n <Button\n icon={Chevron_Right}\n aria-label=\"toggle menu\"\n appearance=\"ghost\"\n size=\"small\"\n disabled={disabled}\n {...toggleButtonProps}\n className={cx(\n styles[\"toggle-button\"],\n toggleButtonProps?.className,\n )}\n />\n </div>\n )}\n </div>\n </div>\n );\n};\n\nSelectFieldInput.displayName = \"SelectFieldInput\";\n","import {\n useCombobox,\n UseComboboxProps,\n UseComboboxState,\n UseComboboxStateChangeOptions,\n} from \"downshift\";\nimport { SelectFieldDownshiftItem, SelectFieldOption } from \"../types\";\nimport { useMemo } from \"react\";\nimport { useDownshiftEnvironment } from \"../../../../internal/hooks\";\n\nexport type UseComboOptions = {\n // An array of currently loaded options\n options: SelectFieldOption[];\n pinnedOptions?: unknown;\n selectAll?: {\n label: string;\n onClick: () => void;\n };\n selectedOption: SelectFieldOption | null;\n onSelectedOptionChange: (option: SelectFieldOption | null) => void;\n displayAs: \"popover\" | \"dialog\";\n disableHighlightOnOpen?: boolean;\n disabled: boolean;\n} & Pick<\n UseComboboxProps<SelectFieldDownshiftItem>,\n \"onInputValueChange\" | \"onIsOpenChange\"\n>;\n\n/**\n * The purpose of useCombo is to provide an abstraction over the downshift combobox hook.\n */\nexport const useCombo = ({\n options,\n pinnedOptions,\n selectAll,\n selectedOption,\n onSelectedOptionChange,\n onInputValueChange,\n onIsOpenChange,\n displayAs = \"popover\",\n disableHighlightOnOpen = false,\n disabled,\n}: UseComboOptions) => {\n // Options are not 1:1 with the items we pass to downshift.\n // We may choose to insert, remove, or modify them before passing them down.\n // Anything which can be accessed via arrow keys should be included here.\n const downshiftItems = useMemo(() => {\n const items: SelectFieldDownshiftItem[] = options.map(\n mapOptionToDownshiftItem,\n );\n\n // Add the pinned options to the top of the list if they are provided\n if (pinnedOptions) {\n // TODO: Implement pinned options\n }\n\n // Add the select all option to the top of the list if it is provided\n if (selectAll) {\n items.unshift({\n id: \"select-all\",\n type: \"select-all\",\n original: { id: \"select-all\", label: selectAll.label ?? \"Select All\" },\n });\n }\n\n return items;\n }, [options, pinnedOptions, selectAll]);\n\n const selectedDownshiftItem = useMemo(() => {\n return selectedOption ? mapOptionToDownshiftItem(selectedOption) : null;\n }, [selectedOption]);\n\n const { ref: wrapperDivRef, environment } = useDownshiftEnvironment();\n\n const {\n isOpen,\n highlightedIndex,\n getToggleButtonProps,\n getLabelProps,\n getMenuProps,\n getInputProps,\n getItemProps,\n inputValue,\n closeMenu,\n openMenu,\n setHighlightedIndex,\n } = useCombobox({\n isItemDisabled: (item, _index) => {\n if (!item) {\n return false; // Downshift passes -1 index with an undefined item. Ignore it.\n }\n return (disabled || item.disabled) ?? false;\n },\n environment: environment,\n selectedItem: selectedDownshiftItem,\n onSelectedItemChange: ({\n selectedItem: si,\n }: {\n selectedItem: SelectFieldDownshiftItem;\n }) => {\n if (si && si.type === \"option\") {\n onSelectedOptionChange(si.original);\n } else {\n onSelectedOptionChange(null);\n }\n },\n onInputValueChange,\n onIsOpenChange: (changes) => {\n onIsOpenChange?.(changes);\n if (changes.isOpen && !disableHighlightOnOpen) {\n const selectedItemIndex = downshiftItems.findIndex(\n (item) => item.id === selectedDownshiftItem?.id,\n );\n setHighlightedIndex(selectedItemIndex);\n }\n },\n items: downshiftItems,\n itemToString(item: SelectFieldDownshiftItem | null) {\n return item?.original.label ?? \"\";\n },\n stateReducer: (state, actionAndChanges) =>\n stateReducer(state, actionAndChanges, displayAs),\n });\n\n return {\n inputValue,\n wrapperDivRef,\n getToggleButtonProps,\n getLabelProps,\n getMenuProps,\n getInputProps,\n getItemProps,\n highlightedIndex,\n isOpen,\n downshiftItems,\n closeMenu,\n openMenu,\n };\n};\n\nfunction mapOptionToDownshiftItem(\n option: SelectFieldOption,\n): SelectFieldDownshiftItem {\n return {\n id: option.id,\n type: \"option\",\n disabled: option.disabled ?? false,\n original: option,\n };\n}\n\nfunction stateReducer(\n state: UseComboboxState<SelectFieldDownshiftItem>,\n actionAndChanges: UseComboboxStateChangeOptions<SelectFieldDownshiftItem>,\n displayAs: \"popover\" | \"dialog\",\n) {\n const { type, changes } = actionAndChanges;\n // this prevents the menu from being closed when the user selects an item with 'Enter' or mouse\n switch (type) {\n case useCombobox.stateChangeTypes.InputBlur:\n // keep the dialog open if the user blurs the input while the dialog is open\n if (displayAs === \"dialog\" && state.isOpen) {\n return {\n ...changes,\n isOpen: state.isOpen,\n };\n }\n return {\n ...changes,\n inputValue: state.selectedItem?.original.label ?? state.inputValue,\n };\n case useCombobox.stateChangeTypes.InputKeyDownEscape:\n case useCombobox.stateChangeTypes.FunctionCloseMenu:\n return {\n ...changes,\n inputValue: state.selectedItem?.original.label ?? state.inputValue,\n };\n case useCombobox.stateChangeTypes.InputClick:\n if (displayAs === \"dialog\" && state.isOpen) {\n // keep the dialog open if the user clicks the input while the dialog is open\n return {\n ...changes,\n isOpen: state.isOpen,\n };\n }\n return changes;\n case useCombobox.stateChangeTypes.InputKeyDownEnter:\n case useCombobox.stateChangeTypes.ItemClick:\n return changes;\n default:\n return changes; // otherwise business as usual.\n }\n}\n","import { SelectFieldHandle, SelectFieldProps } from \"./types\";\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n useId,\n useRef,\n} from \"react\";\nimport { SelectFieldList } from \"./internal/SelectFieldList\";\nimport { SelectFieldInput } from \"./internal/SelectFieldInput\";\nimport { SelectFieldLabel } from \"./internal/SelectFieldLabel\";\nimport { useLayoutPropsUtil } from \"../../../internal/hooks/useLayoutPropsUtil\";\nimport { useDebouncedCallback } from \"../../../internal/hooks/useDebouncedCallback\";\nimport {\n useSelectFieldLoading,\n DEFAULT_PAGE_SIZE,\n} from \"../../../internal/hooks/useSelectFieldLoading\";\nimport styles from \"../../../components/SelectTrigger/internal/SelectTriggerBase.module.scss\";\nimport { useCombo } from \"./internal/useCombo\";\nimport { FieldPopover } from \"./internal/FieldPopover/FieldPopover\";\nimport { useAdaptiveView } from \"../../hooks/useAdaptiveView\";\nimport { FieldDialog } from \"./internal/FieldDialog/FieldDialog\";\nimport { FieldMessage } from \"../../../components\";\n\nexport const SelectField = forwardRef<SelectFieldHandle, SelectFieldProps>(\n (propsWithLayout, ref) => {\n const { layoutStyles, componentProps: componentProps } =\n useLayoutPropsUtil(propsWithLayout);\n const [initialLoadPerformed, setInitialLoadPerformed] = useState(false);\n\n const inputWrapperRef = useRef<HTMLDivElement>(null);\n\n const {\n id: idProp,\n value: selectedOption,\n initialLoad: initialLoadProp = \"auto\",\n displayMenuAs: displayMenuAsProp = \"auto\",\n lazy,\n loadOptions: loadOptionsProp,\n label,\n labelNode,\n hideLabel,\n placeholder,\n disableClearButton: disableClearButtonProp = false,\n debounceMs = 200,\n onSelectedOptionChange,\n cache,\n size,\n error,\n hint,\n description,\n errorAriaLive: errorAriaLiveProp = \"assertive\",\n required,\n disabled,\n readOnly,\n prefix,\n suffix,\n className,\n style,\n } = componentProps;\n const autoId = useId();\n const id = idProp ?? autoId;\n const helperUid = useId();\n\n const [shouldAriaLive, setShouldAriaLive] = useState(false);\n\n const handleFocus = () => {\n setShouldAriaLive(true);\n };\n const handleBlur = () => {\n // console.log(\"handleBlur\");\n setShouldAriaLive(false);\n };\n\n const errorMessage = typeof error !== \"boolean\" ? error : undefined;\n const hasHelperText = hint || errorMessage || description;\n const isDisabledOrReadOnly = (disabled || readOnly) ?? false;\n\n const { isMobile } = useAdaptiveView();\n const displayAs =\n displayMenuAsProp === \"auto\"\n ? isMobile\n ? \"dialog\"\n : \"popover\"\n : displayMenuAsProp;\n\n const initialLoad =\n initialLoadProp === \"auto\" ? \"immediate\" : initialLoadProp;\n\n const pageSize =\n lazy === \"page\" && \"lazyOptions\" in componentProps\n ? (componentProps.lazyOptions?.pageSize ?? DEFAULT_PAGE_SIZE)\n : DEFAULT_PAGE_SIZE;\n const limit =\n lazy === \"offset\" && \"lazyOptions\" in componentProps\n ? (componentProps.lazyOptions?.limit ?? DEFAULT_PAGE_SIZE)\n : DEFAULT_PAGE_SIZE;\n\n const loadingHookConfig = useMemo(() => {\n const cacheConfig = {\n enabled: cache?.enabled,\n maxSize: cache?.maxSize,\n };\n if (lazy === \"page\")\n return {\n lazy: \"page\" as const,\n loadOptions: loadOptionsProp,\n pageSize,\n cache: cacheConfig,\n };\n if (lazy === \"offset\")\n return {\n lazy: \"offset\" as const,\n loadOptions: loadOptionsProp,\n limit,\n cache: cacheConfig,\n };\n if (lazy === \"group\")\n return {\n lazy: \"group\" as const,\n loadOptions: loadOptionsProp,\n cache: cacheConfig,\n };\n return {\n lazy: false as const,\n loadOptions: loadOptionsProp,\n cache: cacheConfig,\n };\n }, [\n lazy,\n loadOptionsProp,\n pageSize,\n limit,\n cache?.enabled,\n cache?.maxSize,\n ]);\n\n const {\n options,\n loading,\n loadingMore,\n hasMore,\n loadOptions,\n loadMore,\n clearCache,\n } = useSelectFieldLoading(loadingHookConfig);\n\n useImperativeHandle(ref, () => ({ clearCache }), [clearCache]);\n\n const debouncedOptionLoader = useDebouncedCallback((inputValue: string) => {\n loadOptions(selectedOption?.label === inputValue ? \"\" : inputValue, {\n initial: true,\n });\n }, debounceMs);\n\n const adjustInputValueForSelectedOption = useCallback(\n (inputValue: string) => {\n if (selectedOption?.label === inputValue) {\n return \"\";\n } else {\n return inputValue;\n }\n },\n [selectedOption?.label],\n );\n\n const {\n isOpen,\n getToggleButtonProps,\n getLabelProps,\n getMenuProps,\n getInputProps,\n wrapperDivRef,\n highlightedIndex,\n getItemProps,\n inputValue,\n downshiftItems,\n closeMenu,\n } = useCombo({\n displayAs,\n disabled: isDisabledOrReadOnly,\n options,\n pinnedOptions: [],\n selectedOption,\n onSelectedOptionChange: (selectedOption) => {\n onSelectedOptionChange(selectedOption);\n },\n async onIsOpenChange(changes) {\n if (initialLoad === \"open\" && !initialLoadPerformed && changes.isOpen) {\n await loadOptions(adjustInputValueForSelectedOption(inputValue), {\n initial: true,\n });\n setInitialLoadPerformed(true);\n }\n },\n onInputValueChange: ({ inputValue: iv }) => {\n debouncedOptionLoader(iv);\n },\n });\n\n useEffect(() => {\n const performInitialLoad = async () => {\n if (initialLoad === \"immediate\" && !initialLoadPerformed) {\n await loadOptions(adjustInputValueForSelectedOption(inputValue), {\n initial: true,\n });\n setInitialLoadPerformed(true);\n }\n };\n performInitialLoad();\n }, [\n loadOptions,\n initialLoadPerformed,\n initialLoad,\n inputValue,\n adjustInputValueForSelectedOption,\n ]);\n\n const handleLoadMore = async () => {\n await loadMore(adjustInputValueForSelectedOption(inputValue));\n };\n\n const disableClearButton =\n disableClearButtonProp || !selectedOption || isDisabledOrReadOnly;\n\n if (displayAs === \"dialog\") {\n return (\n <div\n className={\n className\n ? `${styles[\"search-field\"]} ${className}`\n : styles[\"search-field\"]\n }\n style={{ ...layoutStyles, ...style }}\n ref={wrapperDivRef}\n >\n <SelectFieldLabel\n label={label}\n labelNode={labelNode}\n hideLabel={hideLabel}\n getLabelProps={getLabelProps}\n required={required}\n />\n <SelectFieldInput\n disabled={disabled}\n readOnly={readOnly}\n required={required}\n disableToggleButton={false}\n placeholder={placeholder}\n disableClearButton={disableClearButton}\n toggleButtonProps={getToggleButtonProps()}\n onClear={() => onSelectedOptionChange(null)}\n id={`${id}-input`}\n inputProps={getInputProps({\n \"aria-describedby\": hasHelperText ? helperUid : undefined,\n \"aria-invalid\": error ? true : undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n })}\n size={size}\n error={!!error}\n prefix={prefix}\n suffix={suffix}\n />\n {hasHelperText ? (\n <FieldMessage\n id={helperUid}\n hint={hint}\n errorMessage={errorMessage}\n errorAriaLive={\n isOpen || shouldAriaLive ? errorAriaLiveProp : \"off\"\n }\n description={description}\n />\n ) : null}\n <FieldDialog\n id={`${id}-dialog`}\n isOpen={isOpen}\n onClose={closeMenu}\n title={label}\n field={\n <SelectFieldInput\n disabled={disabled}\n readOnly={readOnly}\n inputProps={getInputProps()}\n disableToggleButton\n placeholder={placeholder}\n disableClearButton={disableClearButton}\n onClear={() => onSelectedOptionChange(null)}\n id={`${id}-dialog-input`}\n inputWrapperRef={inputWrapperRef}\n size=\"medium\" // always \"medium\" for the dialog\n error={!!error}\n prefix={prefix}\n suffix={suffix}\n />\n }\n initialFocusResolver={(elements) => {\n return (\n elements.find((element) => element.tagName === \"INPUT\") ||\n elements[0]\n );\n }}\n >\n <SelectFieldList\n isOpen // always \"open\" = always show the list in the dialog\n items={downshiftItems}\n getMenuProps={getMenuProps}\n getItemProps={getItemProps}\n highlightedIndex={highlightedIndex}\n selectedOption={selectedOption}\n hasMore={hasMore}\n onLoadMore={handleLoadMore}\n loading={loading}\n loadingMore={loadingMore}\n disabled={isDisabledOrReadOnly}\n style={{\n paddingInline: 24,\n paddingBlockEnd: 24,\n }}\n />\n </FieldDialog>\n </div>\n );\n }\n\n return (\n <div\n className={\n className\n ? `${styles[\"search-field\"]} ${className}`\n : styles[\"search-field\"]\n }\n style={{ ...layoutStyles, ...style }}\n >\n <SelectFieldLabel\n label={label}\n labelNode={labelNode}\n hideLabel={hideLabel}\n getLabelProps={getLabelProps}\n required={required}\n />\n <SelectFieldInput\n disabled={disabled}\n readOnly={readOnly}\n required={required}\n inputProps={getInputProps({\n popovertarget: `${id}-popover`,\n \"aria-describedby\": hasHelperText ? helperUid : undefined,\n \"aria-invalid\": error ? true : undefined,\n onFocus: handleFocus,\n onBlur: handleBlur,\n })}\n toggleButtonProps={getToggleButtonProps()}\n disableToggleButton={false}\n placeholder={placeholder}\n disableClearButton={disableClearButton}\n onClear={() => onSelectedOptionChange(null)}\n id={`${id}-input`}\n popoverTarget={`${id}-popover`}\n inputWrapperRef={inputWrapperRef}\n size={size}\n error={!!error}\n prefix={prefix}\n suffix={suffix}\n />\n {hasHelperText ? (\n <FieldMessage\n id={helperUid}\n hint={hint}\n errorMessage={errorMessage}\n errorAriaLive={isOpen || shouldAriaLive ? errorAriaLiveProp : \"off\"}\n description={description}\n />\n ) : null}\n\n <FieldPopover\n id={`${id}-popover`}\n referenceElement={inputWrapperRef}\n open={isOpen && displayAs === \"popover\"}\n onClickOutside={closeMenu}\n >\n <SelectFieldList\n isOpen={isOpen}\n items={downshiftItems}\n getMenuProps={getMenuProps}\n getItemProps={getItemProps}\n highlightedIndex={highlightedIndex}\n selectedOption={selectedOption}\n hasMore={hasMore}\n onLoadMore={handleLoadMore}\n loading={loading}\n loadingMore={loadingMore}\n disabled={isDisabledOrReadOnly}\n style={{\n padding: 8,\n }}\n />\n </FieldPopover>\n </div>\n );\n },\n);\n\nSelectField.displayName = \"SelectField\";\n","import { matchSorter, MatchSorterOptions } from \"match-sorter\";\nimport { SelectField } from \"./SelectField\";\nimport { SelectFieldProps, SelectFieldOption } from \"./types\";\n\nexport type SelectFieldSyncProps = Omit<\n SelectFieldProps,\n \"loadOptions\" | \"lazy\" | \"debounceMs\" | \"cache\" | \"initialLoad\"\n> & {\n /**\n * The options to display in the select field.\n */\n options: SelectFieldOption[];\n /**\n * The filter to use to filter the options.\n * Can be a function to filter the options, or a MatchSorterOptions object to customize the default filtering.\n *\n * @example\n * <SelectFieldSync\n * options={options}\n * filter={(options, searchValue) => {\n * return options.filter((option) => {\n * return option.label?.toLowerCase().includes(searchValue.toLowerCase());\n * });\n * }}\n * />\n *\n * @example\n * <SelectFieldSync\n * options={options}\n * filter={{ keys: [\"label\"] }}\n * />\n */\n filter?:\n | ((\n options: SelectFieldOption[],\n searchValue: string,\n ) => SelectFieldOption[])\n | MatchSorterOptions;\n};\n\nconst defaultFilter = (options: SelectFieldOption[], searchValue: string) => {\n return matchSorter(options, searchValue, {\n keys: [\"label\", \"searchText\"],\n });\n};\n\n/**\n * SelectFieldSync is a simplified version of SelectField that is used to display a list of options in a select field.\n *\n * Features:\n * - Accepts `options` instead of `loadOptions` and `lazy`.\n * - Performs client-side filtering of the options.\n * - Optionally accepts a function to filter the options, or a MatchSorterOptions object to customize the default filtering.\n * - Supports all the other props of SelectField.\n */\nexport const SelectFieldSync = (props: SelectFieldSyncProps) => {\n const { options, filter: filterProp = defaultFilter, ...rest } = props;\n\n const filter =\n typeof filterProp === \"function\"\n ? filterProp\n : (options: SelectFieldOption[], searchValue: string) =>\n matchSorter<SelectFieldOption>(\n options,\n searchValue,\n filterProp as MatchSorterOptions<SelectFieldOption>,\n );\n\n return (\n <SelectField\n lazy={false}\n loadOptions={(searchValue) => filter(options, searchValue)}\n debounceMs={0}\n {...rest}\n />\n );\n};\n"],"names":["styles","Close","Chevron_Right","inputValue","selectedOption","options"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { A as Avatar } from './Avatar-DeEV-v-b.js';
|
|
3
3
|
import { I as Icon } from './Icon-BSuTVNaa.js';
|
|
4
|
-
import { S as SelectTriggerBase, d as defaultItemToString, a as defaultItemToKey } from './SelectTriggerBase-
|
|
4
|
+
import { S as SelectTriggerBase, d as defaultItemToString, a as defaultItemToKey } from './SelectTriggerBase-RHD4FTQE.js';
|
|
5
5
|
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-BlIWftBb.js';
|
|
6
6
|
import { c as childrenToString } from './childrenToString-Bz9MqbHb.js';
|
|
7
7
|
import { useTrackingId } from './useTrackingId.js';
|
|
@@ -19,6 +19,7 @@ const SelectTrigger = function(props) {
|
|
|
19
19
|
required,
|
|
20
20
|
moreInfo,
|
|
21
21
|
openMoreInfo,
|
|
22
|
+
moreInfoOpen,
|
|
22
23
|
prefix: prefixProp,
|
|
23
24
|
suffix,
|
|
24
25
|
maxRows,
|
|
@@ -68,6 +69,7 @@ const SelectTrigger = function(props) {
|
|
|
68
69
|
required: props.required,
|
|
69
70
|
moreInfo: props.moreInfo,
|
|
70
71
|
openMoreInfo: props.openMoreInfo,
|
|
72
|
+
moreInfoOpen: props.moreInfoOpen,
|
|
71
73
|
description: childrenToString(props.description),
|
|
72
74
|
hint: props.hint,
|
|
73
75
|
labelProps: props.labelProps
|
|
@@ -99,7 +101,8 @@ const SelectTrigger = function(props) {
|
|
|
99
101
|
labelProps: {
|
|
100
102
|
required,
|
|
101
103
|
moreInfo,
|
|
102
|
-
openMoreInfo
|
|
104
|
+
openMoreInfo,
|
|
105
|
+
moreInfoOpen
|
|
103
106
|
},
|
|
104
107
|
prefix,
|
|
105
108
|
suffix,
|
|
@@ -122,4 +125,4 @@ const SelectTrigger = function(props) {
|
|
|
122
125
|
};
|
|
123
126
|
|
|
124
127
|
export { SelectTrigger as S };
|
|
125
|
-
//# sourceMappingURL=SelectTrigger-
|
|
128
|
+
//# sourceMappingURL=SelectTrigger-C1U-PlLz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectTrigger-C1U-PlLz.js","sources":["../src/components/SelectTrigger/SelectTrigger.tsx"],"sourcesContent":["import { Dispatch, SetStateAction } from \"react\";\nimport {\n UseComboboxProps as UseDownshiftComboboxProps,\n UseMultipleSelectionProps as UseDownshiftMultipleSelectionProps,\n} from \"downshift\";\n\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DataTrackingId, DistributiveOmit } from \"../../types\";\nimport { FieldLabelProps } from \"../FieldLabel\";\nimport { Icon, IconProps } from \"../Icon\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\nimport { useTrackingId } from \"../../hooks\";\n\nimport {\n SelectTriggerBase,\n SelectTriggerBaseProps,\n} from \"./internal/SelectTriggerBase\";\nimport {\n defaultItemToKey,\n defaultItemToString,\n} from \"../Combobox/internal/ComboboxUtils\";\n\nexport type SelectTriggerProps<Item> = DistributiveOmit<\n SelectTriggerBaseProps<Item>,\n \"prefix\" | \"selectedItem\" | \"selectedItems\" | \"onChange\"\n> &\n Pick<\n FieldLabelProps,\n \"required\" | \"moreInfo\" | \"openMoreInfo\" | \"moreInfoOpen\"\n > &\n Pick<UseDownshiftComboboxProps<Item>, \"itemToString\" | \"itemToKey\"> &\n DataTrackingId & {\n prefix?:\n | string\n | { icon: DistributiveOmit<IconProps, \"size\"> }\n | { avatar: DistributiveOmit<AvatarProps, \"size\"> };\n } & (\n | {\n multiple?: never;\n onChange?:\n | Dispatch<SetStateAction<Item | null>>\n | ((arg: Item | null) => void);\n selectedItem: UseDownshiftComboboxProps<Item>[\"selectedItem\"];\n selectedItems?: never;\n }\n | {\n multiple: true;\n onChange?:\n | Dispatch<SetStateAction<Item[] | null>>\n | ((arg: Item[] | null) => void);\n selectedItem?: never;\n selectedItems: UseDownshiftMultipleSelectionProps<Item>[\"selectedItems\"];\n }\n );\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any -- TODO: look into unknown\nexport const SelectTrigger = function <Item = any>(\n props: SelectTriggerProps<Item>,\n) {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n\n const {\n className,\n style,\n label,\n size,\n error,\n hint,\n description,\n required,\n moreInfo,\n openMoreInfo,\n moreInfoOpen,\n prefix: prefixProp,\n suffix,\n maxRows,\n selectedItemProps = () => ({}),\n id,\n placeholder,\n disabled: isDisabled,\n readOnly: isReadOnly,\n onClick,\n multiple,\n onChange,\n disableClearSelection,\n itemToString: itemToStringProp,\n itemToKey: itemToKeyProp,\n selectedItem = null,\n selectedItems = [],\n ...rest\n } = componentProps;\n\n const itemToString = itemToStringProp ?? defaultItemToString<Item>;\n const itemToKey = itemToKeyProp ?? defaultItemToKey<Item>;\n\n function removeSelectedItem(item: Item) {\n if (multiple) {\n onChange?.(\n selectedItems.filter(\n (selectedItem: Item) => itemToKey(selectedItem) !== itemToKey(item),\n ),\n );\n } else if (itemToKey(selectedItem) === itemToKey(item)) {\n onChange?.(null);\n }\n }\n\n function reset() {\n if (multiple) {\n onChange?.([]);\n } else {\n onChange?.(null);\n }\n }\n\n const noClearButton = isDisabled || isReadOnly || disableClearSelection;\n\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n const data = {\n label: childrenToString(props.label),\n size: props.size,\n required: props.required,\n moreInfo: props.moreInfo,\n openMoreInfo: props.openMoreInfo,\n moreInfoOpen: props.moreInfoOpen,\n description: childrenToString(props.description),\n hint: props.hint,\n labelProps: props.labelProps,\n };\n\n const trackingId = useTrackingId({\n name: \"ComboboxSearchField\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const prefix =\n prefixProp == null || typeof prefixProp === \"string\" ? (\n prefixProp\n ) : \"icon\" in prefixProp ? (\n <Icon {...prefixProp.icon} />\n ) : \"avatar\" in prefixProp ? (\n <Avatar\n {...prefixProp.avatar}\n size={props.size === \"small\" ? \"small\" : \"medium\"}\n />\n ) : (\n prefixProp\n );\n\n return (\n <SelectTriggerBase\n data-anv=\"select-trigger\"\n data-tracking-id={trackingId}\n className={className}\n style={styleCombined}\n label={label}\n size={size}\n error={error}\n hint={hint}\n description={description}\n labelProps={{\n required,\n moreInfo,\n openMoreInfo,\n moreInfoOpen,\n }}\n prefix={prefix}\n suffix={suffix}\n maxRows={maxRows}\n selectedItemProps={selectedItemProps}\n id={id}\n placeholder={placeholder}\n disabled={isDisabled}\n readOnly={isReadOnly}\n itemToString={itemToString}\n removeSelectedItem={removeSelectedItem}\n disableClearSelection={noClearButton}\n selectedItem={selectedItem}\n selectedItems={selectedItems}\n onClearButtonClick={reset}\n inputWrapperProps={{ onClick }}\n inputProps={rest}\n />\n );\n};\n"],"names":["selectedItem"],"mappings":"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"}
|
package/dist/SelectTrigger.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { S as SelectTrigger, S as default } from './SelectTrigger-
|
|
1
|
+
export { S as SelectTrigger, S as default } from './SelectTrigger-C1U-PlLz.js';
|
|
2
2
|
//# sourceMappingURL=SelectTrigger.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { useId, useRef, useState, useLayoutEffect } from 'react';
|
|
3
3
|
import { c as cx } from './index-tZvMCc77.js';
|
|
4
4
|
import { S as SvgClose } from './close-DZj38AEh.js';
|
|
5
5
|
import { S as SvgChevronRight } from './chevron_right-BdpsxX7x.js';
|
|
6
6
|
import { B as Button } from './Button-92_FKAyV.js';
|
|
7
7
|
import { C as Chip } from './Chip-UqdorCE2.js';
|
|
8
8
|
import { F as Flex } from './Flex-CjPHUTeq.js';
|
|
9
|
-
import { F as FieldLabel } from './FieldLabel-
|
|
10
|
-
import { s as styles } from './SelectTriggerBase.module-
|
|
9
|
+
import { F as FieldLabel } from './FieldLabel-BWOIFXgt.js';
|
|
10
|
+
import { s as styles } from './SelectTriggerBase.module-B0NFRlQP.js';
|
|
11
11
|
import { H as Helper } from './Helper-DzVUQgUJ.js';
|
|
12
12
|
|
|
13
13
|
const ADD_NEW = Symbol.for("add-new");
|
|
@@ -18,18 +18,6 @@ const defaultItemToString = function(item) {
|
|
|
18
18
|
const defaultItemToKey = function(item) {
|
|
19
19
|
return item;
|
|
20
20
|
};
|
|
21
|
-
const useDownshiftEnvironment = () => {
|
|
22
|
-
const wrapperDivRef = useRef(null);
|
|
23
|
-
const shadowRoot = wrapperDivRef.current ? wrapperDivRef.current.getRootNode() : null;
|
|
24
|
-
const shadowDocument = wrapperDivRef.current && shadowRoot ? shadowRoot.ownerDocument : null;
|
|
25
|
-
const environment = shadowDocument ? {
|
|
26
|
-
document: shadowDocument,
|
|
27
|
-
addEventListener: shadowDocument.addEventListener.bind(shadowRoot),
|
|
28
|
-
removeEventListener: shadowDocument.removeEventListener.bind(shadowRoot),
|
|
29
|
-
Node
|
|
30
|
-
} : void 0;
|
|
31
|
-
return { ref: wrapperDivRef, environment };
|
|
32
|
-
};
|
|
33
21
|
function isMultiple(props) {
|
|
34
22
|
return Object.hasOwn(props, "multiple") && props.multiple === true;
|
|
35
23
|
}
|
|
@@ -304,5 +292,5 @@ const SelectTriggerBase = function({
|
|
|
304
292
|
] });
|
|
305
293
|
};
|
|
306
294
|
|
|
307
|
-
export { ADD_NEW as A, SelectTriggerBase as S, defaultItemToKey as a, SELECT_ALL as b, defaultItemToString as d, getScrollParent as g, isMultiple as i
|
|
308
|
-
//# sourceMappingURL=SelectTriggerBase-
|
|
295
|
+
export { ADD_NEW as A, SelectTriggerBase as S, defaultItemToKey as a, SELECT_ALL as b, defaultItemToString as d, getScrollParent as g, isMultiple as i };
|
|
296
|
+
//# sourceMappingURL=SelectTriggerBase-RHD4FTQE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectTriggerBase-RHD4FTQE.js","sources":["../src/components/Combobox/internal/ComboboxUtils.ts","../src/components/SelectTrigger/internal/SelectTriggerBase.tsx"],"sourcesContent":["import {\n ComboboxMultipleProps,\n ComboboxProps,\n ComboboxSelectProps,\n SelectMultipleProps,\n} from \"../ComboboxTypes\";\n\nexport const ADD_NEW = Symbol.for(\"add-new\");\nexport const SELECT_ALL = Symbol.for(\"select-all\");\n\n/**\n * Default function to convert an item to a string representation\n * @template Item - The type of the item\n * @param item - The item to convert to string\n * @returns String representation of the item or empty string if null/undefined\n */\nexport const defaultItemToString = function <Item>(item: Item | null) {\n return item != null ? String(item) : \"\";\n};\n\n/**\n * Default function to generate a unique key for an item\n * @template Item - The type of the item\n * @param item - The item to generate a key for\n * @returns The item itself as the key\n */\nexport const defaultItemToKey = function <Item>(item: Item | null) {\n return item;\n};\n\nexport function isMultiple<Item>(\n props: ComboboxProps<Item> | ComboboxSelectProps<Item>,\n): props is ComboboxMultipleProps<Item> | SelectMultipleProps<Item> {\n return Object.hasOwn(props, \"multiple\") && props.multiple === true;\n}\n\nexport function getScrollParent(node: HTMLElement | null) {\n if (node == null) {\n return null;\n }\n\n if (node.scrollHeight > node.clientHeight) {\n return node;\n } else {\n if (node.parentNode instanceof HTMLElement) {\n return getScrollParent(node.parentNode);\n }\n return null;\n }\n}\n","import {\n useState,\n useId,\n useRef,\n useLayoutEffect,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type MutableRefObject,\n type MouseEventHandler,\n ReactNode,\n} from \"react\";\nimport cx from \"classnames\";\nimport Close from \"@servicetitan/hammer-icon/mdi/round/close.svg\";\nimport Chevron_Right from \"@servicetitan/hammer-icon/mdi/round/chevron_right.svg\";\n\nimport { Button } from \"../../Button\";\nimport { Chip, ChipProps } from \"../../Chip\";\nimport { Flex } from \"../../Flex\";\nimport { FieldLabel, FieldLabelProps } from \"../../FieldLabel\";\nimport { Helper } from \"../../../internal/components\";\nimport { TextFieldProps } from \"../../TextField\";\n\nimport styles from \"./SelectTriggerBase.module.scss\";\nimport { DistributiveOmit } from \"../../../types\";\nimport { defaultItemToString } from \"../../Combobox/internal/ComboboxUtils\";\n\ntype PartialChipProps = Partial<Omit<ChipProps, \"icon\" | \"avatar\">> &\n (\n | { icon?: ChipProps[\"icon\"]; avatar?: never }\n | { icon?: never; avatar?: ChipProps[\"avatar\"] }\n );\n\nfunction mergeChipProps(\n ...propSets: (PartialChipProps | Partial<ChipProps>)[]\n): ChipProps {\n const merged = propSets.reduce(\n (acc, props) => ({ ...acc, ...props }),\n {} as Record<string, unknown>,\n );\n\n return merged as ChipProps;\n}\n\nexport type SelectTriggerBaseProps<Item = unknown> = DistributiveOmit<\n TextFieldProps,\n \"showCounter\" | \"prefix\"\n> & {\n /**\n * Should be a positive integer.\n */\n maxRows?: number;\n\n /** Allows Combobox/Select to display custom-colored Chips */\n selectedItemProps?: (item: Item, index: number) => PartialChipProps;\n} & {\n itemToString?: (item: Item) => string;\n removeSelectedItem?: (item: Item) => void;\n disableClearSelection?: boolean;\n selectedItem: Item | null;\n selectedItems: Item[];\n\n inputValue?: string;\n referenceRef?: MutableRefObject<HTMLDivElement | null>;\n} & {\n variant?: \"select\" | \"combobox\";\n onClearButtonClick?: MouseEventHandler<HTMLButtonElement>;\n labelProps?: Partial<FieldLabelProps>;\n inputWrapperProps?: ComponentPropsWithoutRef<\"div\">;\n toggleButtonProps?: ComponentPropsWithoutRef<\"button\">;\n chipProps?: (item: Item, index: number) => PartialChipProps;\n inputProps?: ComponentPropsWithoutRef<\"input\" | \"div\">;\n} & {\n prefix?: string | ReactNode;\n};\n\nexport const SelectTriggerBase = function <Item>({\n className,\n label,\n size,\n error,\n hint,\n description,\n prefix,\n suffix,\n maxRows,\n selectedItemProps = (_item: Item, _index: number): PartialChipProps => ({}),\n disabled,\n readOnly,\n /** ======== */\n disableClearSelection,\n itemToString: itemToStringProp,\n selectedItem,\n selectedItems,\n removeSelectedItem,\n inputValue,\n referenceRef,\n /** ======== */\n variant = \"select\",\n onClearButtonClick,\n labelProps,\n inputWrapperProps = {},\n toggleButtonProps = {},\n inputProps = {},\n chipProps = (_item: Item, _index: number): PartialChipProps => ({}),\n placeholder,\n ...rest\n}: SelectTriggerBaseProps<Item>) {\n const itemToString = itemToStringProp ?? defaultItemToString<Item>;\n\n const ComboboxTriggerClassNames = cx(styles[\"search-field\"], {\n [styles[\"select\"]]: variant === \"select\",\n });\n\n const noClearButton = disabled || readOnly || disableClearSelection;\n\n const ComboboxInputWrapperClassNames = cx(\n styles[\"input-wrapper\"],\n className\n ? {\n [className]: variant === \"select\",\n }\n : {},\n {\n [styles[\"small\"]]: size === \"small\",\n [styles[\"large\"]]: size === \"large\",\n [styles[\"no-clear-button\"]]: noClearButton,\n },\n );\n\n const ComboboxInputClassNames = cx(\n styles[\"input\"],\n className\n ? {\n [className]: variant === \"combobox\",\n }\n : {},\n {\n [styles[\"error\"]]: error,\n },\n );\n\n const helperUid = \"helper\" + useId();\n const placeholderUid = \"placeholder\" + useId();\n const ariaDescribedBy = `${helperUid} ${placeholderUid}`;\n\n const errorMessage = typeof error !== \"boolean\" ? error : undefined;\n\n const rowsRef = useRef<HTMLDivElement>(null);\n const [stillCalculating, setStillCalculating] = useState<boolean>(false);\n const [collapsedChips, setCollapsedChips] = useState<boolean>(false);\n const [visibleChipsCount, setVisibleChipsCount] = useState<number | null>(\n null,\n );\n const [forceRenderCount, setForceRenderCount] = useState<number>(0);\n\n useLayoutEffect(() => {\n // we only need to do this nonsense if maxRows is set\n if (maxRows === undefined) return;\n\n // 1) Render with no chips collapsed, if it's already just one row, we're done\n // 2) If there is a second row, then render again with best guess at how we should collapse\n // 3) If there is still a second row while collapsed, then render again with one less item\n // 4) Keep going until there is only one row, then /actually/ render\n\n // start calculation loop, set intiial values and force re-render\n if (stillCalculating === false) {\n setStillCalculating(true);\n setCollapsedChips(false);\n setVisibleChipsCount(null);\n setForceRenderCount((x) => x + 1);\n\n // otherwise, calculate the number of rows\n } else if (rowsRef?.current?.children) {\n const children = rowsRef?.current?.children;\n\n const rowData = Array.from(children).reduce(\n (acc, child) => {\n const top = child.getBoundingClientRect().top;\n\n if (!acc.length) {\n return [{ count: 1, top }];\n } else if (acc[acc.length - 1].top === top) {\n return [\n ...acc.slice(0, -1),\n { count: acc[acc.length - 1].count + 1, top },\n ];\n } else if (acc[acc.length - 1].top !== top) {\n return [...acc, { count: 1, top }];\n } else {\n return acc;\n }\n },\n [] as { count: number; top: number }[],\n );\n\n // Call it a day if:\n // We don't have a second row OR\n // We're already hiding everything OR\n // There's only one item selected\n if (\n !rowData[maxRows] ||\n visibleChipsCount === 0 ||\n selectedItems.length === 1\n ) {\n setStillCalculating(false);\n } else {\n setCollapsedChips(true);\n\n // otherwise, either guess how many visible chips we have\n if (visibleChipsCount == null) {\n if (rowData[maxRows]) {\n const quickGuess = Math.max(\n rowData\n .slice(0, maxRows)\n .reduce((sum, row) => sum + row.count, -1),\n 0,\n );\n\n setVisibleChipsCount(quickGuess);\n } else {\n const naiveGuess = Math.max(\n rowData.reduce((sum, row) => sum + row.count, -2),\n 0,\n );\n setVisibleChipsCount(naiveGuess);\n }\n\n // or decrease our last guess by 1 and try again\n } else {\n setVisibleChipsCount(visibleChipsCount - 1);\n }\n\n setForceRenderCount((x) => x + 1);\n }\n }\n }, [selectedItems.length, maxRows, forceRenderCount]); // eslint-disable-line react-hooks/exhaustive-deps\n\n const selectedItemsDisplayCount =\n collapsedChips && maxRows != null && visibleChipsCount !== null\n ? visibleChipsCount\n : selectedItems.length;\n\n // TODO: Update this to use a TextField component once we can pass props\n // directly to both the label and the text input\n return (\n <div {...rest} className={ComboboxTriggerClassNames} ref={referenceRef}>\n {label ? (\n <FieldLabel\n {...labelProps}\n className={cx(styles[\"label\"], labelProps?.className)}\n >\n {label}\n </FieldLabel>\n ) : null}\n\n <div\n {...inputWrapperProps}\n className={ComboboxInputWrapperClassNames}\n {...(variant === \"select\"\n ? {\n \"aria-describedby\": ariaDescribedBy,\n \"aria-labelledby\": labelProps?.id,\n }\n : {})}\n >\n <div className={styles[\"buttons-wrapper\"]}>\n {(inputValue || selectedItem || selectedItems.length) &&\n !noClearButton ? (\n <div className={styles[\"close-button-wrapper\"]}>\n <Button\n aria-label=\"clear selection\"\n appearance=\"ghost\"\n size=\"small\"\n icon={Close}\n className={styles[\"close-button\"]}\n onClick={(e: MouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n onClearButtonClick?.(e);\n }}\n tabIndex={-1}\n />\n </div>\n ) : null}\n\n <div className={styles[\"toggle-button-wrapper\"]}>\n <Button\n {...toggleButtonProps}\n {...(variant === \"select\" ? { tabIndex: -1, inert: \"true\" } : {})}\n className={styles[\"toggle-button\"]}\n aria-label=\"toggle menu\"\n icon={Chevron_Right}\n appearance=\"ghost\"\n size=\"small\"\n disabled={disabled}\n />\n </div>\n </div>\n\n <div className={styles[\"prefix-wrapper\"]}>\n {prefix ? <div className={styles[\"prefix\"]}>{prefix}</div> : null}\n </div>\n\n <div className={styles[\"rows-wrapper\"]} ref={rowsRef}>\n {selectedItems.length && removeSelectedItem != null\n ? selectedItems\n .slice(0, selectedItemsDisplayCount)\n .map((item, index) => {\n return (\n <div\n key={`selected-item-${index}`}\n className={styles[\"chip-wrapper\"]}\n >\n <Chip\n {...mergeChipProps(\n chipProps(item, index),\n selectedItemProps(item, index),\n {\n label: itemToString(item),\n onClose:\n disabled || readOnly\n ? undefined\n : (_e) => {\n removeSelectedItem(item);\n },\n className: styles[\"chip\"],\n title: itemToString(item),\n },\n )}\n />\n </div>\n );\n })\n : null}\n\n {collapsedChips && maxRows != null ? (\n <div className={styles[\"chip-wrapper\"]}>\n <Chip\n label={`+${selectedItems.length - selectedItemsDisplayCount}`}\n className={styles[\"chip\"]}\n title={selectedItems\n .slice(selectedItemsDisplayCount)\n .map((item) => itemToString(item))\n .join(\", \")}\n />\n </div>\n ) : null}\n\n <Flex className={styles[\"input-flex\"]} alignItems=\"center\">\n {variant === \"select\" ? (\n <div\n {...inputProps}\n className={cx(ComboboxInputClassNames, inputProps.className)}\n >\n {selectedItems.length ? null : selectedItem ? (\n itemToString(selectedItem)\n ) : (\n <span\n className={styles[\"fake-placeholder\"]}\n id={placeholderUid}\n >\n {placeholder}\n </span>\n )}\n </div>\n ) : (\n <input\n {...inputProps}\n placeholder={placeholder}\n className={cx(ComboboxInputClassNames, inputProps.className)}\n {...(inputProps[\"aria-expanded\"] != null &&\n inputProps[\"aria-controls\"] != null\n ? {\n role: \"combobox\",\n }\n : {})}\n />\n )}\n\n {suffix ? <div className={styles[\"suffix\"]}>{suffix}</div> : null}\n </Flex>\n </div>\n </div>\n\n {hint || errorMessage || description ? (\n <Helper\n id={helperUid}\n errorMessage={errorMessage}\n hint={hint}\n description={description}\n />\n ) : null}\n </div>\n );\n};\n"],"names":["Close","Chevron_Right"],"mappings":"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"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
@layer starter, reset, base, state, application;
|
|
2
2
|
/* REVERT LAYER BUGFIX START */
|
|
3
|
-
._search-
|
|
3
|
+
._search-field_ff5ti_2 input::-moz-placeholder {
|
|
4
4
|
all: revert-layer;
|
|
5
5
|
-webkit-font-smoothing: auto;
|
|
6
6
|
}
|
|
7
|
-
._search-
|
|
8
|
-
._search-
|
|
9
|
-
._search-
|
|
10
|
-
._search-
|
|
11
|
-
._search-
|
|
7
|
+
._search-field_ff5ti_2 > label,
|
|
8
|
+
._search-field_ff5ti_2 input,
|
|
9
|
+
._search-field_ff5ti_2 button,
|
|
10
|
+
._search-field_ff5ti_2 div[class*=input-wrapper],
|
|
11
|
+
._search-field_ff5ti_2 input::placeholder {
|
|
12
12
|
all: revert-layer;
|
|
13
13
|
-webkit-font-smoothing: auto;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
/* REVERT LAYER BUGFIX END */
|
|
17
17
|
@layer reset {
|
|
18
|
-
._buttons-
|
|
19
|
-
._search-
|
|
18
|
+
._buttons-wrapper_ff5ti_13,
|
|
19
|
+
._search-field_ff5ti_2 {
|
|
20
20
|
all: unset;
|
|
21
21
|
font-family: var(--font-family-base, "Nunito Sans", sans-serif);
|
|
22
22
|
font-size: 100%;
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
box-sizing: border-box;
|
|
30
30
|
display: flex;
|
|
31
31
|
}
|
|
32
|
-
.
|
|
33
|
-
._input-
|
|
32
|
+
._input_ff5ti_27,
|
|
33
|
+
._input-wrapper_ff5ti_28 {
|
|
34
34
|
all: unset;
|
|
35
35
|
font-family: var(--font-family-base, "Nunito Sans", sans-serif);
|
|
36
36
|
font-size: 100%;
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
box-sizing: border-box;
|
|
44
44
|
display: block;
|
|
45
45
|
}
|
|
46
|
-
._toggle-button-
|
|
47
|
-
._close-button-
|
|
46
|
+
._toggle-button-wrapper_ff5ti_41,
|
|
47
|
+
._close-button-wrapper_ff5ti_42 {
|
|
48
48
|
all: unset;
|
|
49
49
|
font-family: var(--font-family-base, "Nunito Sans", sans-serif);
|
|
50
50
|
font-size: 100%;
|
|
@@ -57,8 +57,8 @@
|
|
|
57
57
|
box-sizing: border-box;
|
|
58
58
|
display: revert-layer;
|
|
59
59
|
}
|
|
60
|
-
.
|
|
61
|
-
.
|
|
60
|
+
._prefix_ff5ti_55,
|
|
61
|
+
._suffix_ff5ti_56 {
|
|
62
62
|
all: unset;
|
|
63
63
|
font-family: var(--font-family-base, "Nunito Sans", sans-serif);
|
|
64
64
|
font-size: 100%;
|
|
@@ -73,15 +73,15 @@
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
@layer base {
|
|
76
|
-
._search-
|
|
76
|
+
._search-field_ff5ti_2 {
|
|
77
77
|
flex-direction: column;
|
|
78
78
|
gap: 0.5rem;
|
|
79
79
|
font-size: 1rem;
|
|
80
80
|
}
|
|
81
|
-
._search-
|
|
81
|
+
._search-field_ff5ti_2._select_ff5ti_76 {
|
|
82
82
|
cursor: pointer;
|
|
83
83
|
}
|
|
84
|
-
._input-
|
|
84
|
+
._input-wrapper_ff5ti_28 {
|
|
85
85
|
display: flex;
|
|
86
86
|
position: relative;
|
|
87
87
|
border: 0.0625rem solid var(--border-color, #949596);
|
|
@@ -92,10 +92,16 @@
|
|
|
92
92
|
padding-inline-end: 4.5rem;
|
|
93
93
|
background-color: var(--background-color, #ffffff);
|
|
94
94
|
}
|
|
95
|
-
._input-
|
|
95
|
+
._input-wrapper_ff5ti_28._no-clear-button_ff5ti_90 {
|
|
96
96
|
padding-inline-end: 2rem;
|
|
97
97
|
}
|
|
98
|
-
._input-
|
|
98
|
+
._input-wrapper_ff5ti_28._no-toggle-button_ff5ti_93 {
|
|
99
|
+
padding-inline-end: 2rem;
|
|
100
|
+
}
|
|
101
|
+
._input-wrapper_ff5ti_28._no-clear-button_ff5ti_90._no-toggle-button_ff5ti_93 {
|
|
102
|
+
padding-inline-end: 0.75rem;
|
|
103
|
+
}
|
|
104
|
+
._input-wrapper_ff5ti_28 ._input-flex_ff5ti_99 {
|
|
99
105
|
flex: 1 1 100px;
|
|
100
106
|
width: 0px;
|
|
101
107
|
min-width: 100px;
|
|
@@ -103,7 +109,7 @@
|
|
|
103
109
|
overflow: hidden;
|
|
104
110
|
text-overflow: ellipsis;
|
|
105
111
|
}
|
|
106
|
-
._input-
|
|
112
|
+
._input-wrapper_ff5ti_28 ._input_ff5ti_27 {
|
|
107
113
|
display: flex;
|
|
108
114
|
align-items: center;
|
|
109
115
|
flex: 1 0 100px;
|
|
@@ -115,53 +121,53 @@
|
|
|
115
121
|
transition: outline 200ms cubic-bezier(0, 0, 0.4, 1);
|
|
116
122
|
}
|
|
117
123
|
@media (prefers-reduced-motion: reduce) {
|
|
118
|
-
._input-
|
|
124
|
+
._input-wrapper_ff5ti_28 ._input_ff5ti_27 {
|
|
119
125
|
transition-duration: 0.01ms !important;
|
|
120
126
|
transition-property: outline;
|
|
121
127
|
}
|
|
122
128
|
}
|
|
123
|
-
._input-
|
|
129
|
+
._input-wrapper_ff5ti_28 ._input_ff5ti_27::-moz-placeholder {
|
|
124
130
|
color: var(--foreground-color-subdued, #737475);
|
|
125
131
|
}
|
|
126
|
-
._input-
|
|
132
|
+
._input-wrapper_ff5ti_28 ._input_ff5ti_27::placeholder {
|
|
127
133
|
color: var(--foreground-color-subdued, #737475);
|
|
128
134
|
}
|
|
129
|
-
._input-
|
|
135
|
+
._input-wrapper_ff5ti_28 ._fake-placeholder_ff5ti_127 {
|
|
130
136
|
color: var(--foreground-color-subdued, #737475);
|
|
131
137
|
-webkit-user-select: none;
|
|
132
138
|
-moz-user-select: none;
|
|
133
139
|
user-select: none;
|
|
134
140
|
}
|
|
135
|
-
._buttons-
|
|
141
|
+
._buttons-wrapper_ff5ti_13 {
|
|
136
142
|
position: absolute;
|
|
137
143
|
inset-block-start: 0;
|
|
138
144
|
inset-inline-end: 0;
|
|
139
145
|
height: 2.375rem;
|
|
140
146
|
}
|
|
141
|
-
._close-button-
|
|
147
|
+
._close-button-wrapper_ff5ti_42 {
|
|
142
148
|
display: flex;
|
|
143
149
|
align-items: center;
|
|
144
150
|
cursor: pointer;
|
|
145
151
|
}
|
|
146
|
-
._close-button-
|
|
152
|
+
._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42 {
|
|
147
153
|
color: var(--foreground-color, #141414);
|
|
148
154
|
}
|
|
149
|
-
._toggle-button-
|
|
155
|
+
._toggle-button-wrapper_ff5ti_41 {
|
|
150
156
|
display: flex;
|
|
151
157
|
align-items: center;
|
|
152
158
|
cursor: pointer;
|
|
153
159
|
}
|
|
154
|
-
._toggle-
|
|
160
|
+
._toggle-button_ff5ti_41 {
|
|
155
161
|
color: var(--foreground-color, #141414);
|
|
156
162
|
transform: rotate(90deg);
|
|
157
163
|
transition: transform 200ms cubic-bezier(0, 0, 0.4, 1);
|
|
158
164
|
}
|
|
159
165
|
@media (prefers-reduced-motion: reduce) {
|
|
160
|
-
._toggle-
|
|
166
|
+
._toggle-button_ff5ti_41 {
|
|
161
167
|
transition-duration: 0.01ms !important;
|
|
162
168
|
}
|
|
163
169
|
}
|
|
164
|
-
._prefix-
|
|
170
|
+
._prefix-wrapper_ff5ti_160 {
|
|
165
171
|
display: flex;
|
|
166
172
|
flex-direction: row;
|
|
167
173
|
flex-wrap: wrap;
|
|
@@ -169,7 +175,7 @@
|
|
|
169
175
|
pointer-events: none;
|
|
170
176
|
height: 2.375rem;
|
|
171
177
|
}
|
|
172
|
-
._rows-
|
|
178
|
+
._rows-wrapper_ff5ti_168 {
|
|
173
179
|
display: flex;
|
|
174
180
|
flex-direction: row;
|
|
175
181
|
flex-wrap: wrap;
|
|
@@ -179,18 +185,18 @@
|
|
|
179
185
|
width: 100%;
|
|
180
186
|
max-width: 100%;
|
|
181
187
|
}
|
|
182
|
-
._chip-
|
|
188
|
+
._chip-wrapper_ff5ti_178 {
|
|
183
189
|
display: flex;
|
|
184
190
|
justify-content: center;
|
|
185
191
|
align-items: center;
|
|
186
192
|
max-width: 100%;
|
|
187
193
|
height: 2.375rem;
|
|
188
194
|
}
|
|
189
|
-
._chip-
|
|
195
|
+
._chip-wrapper_ff5ti_178 ._chip_ff5ti_178 {
|
|
190
196
|
max-width: 100%;
|
|
191
197
|
}
|
|
192
|
-
.
|
|
193
|
-
.
|
|
198
|
+
._prefix_ff5ti_55,
|
|
199
|
+
._suffix_ff5ti_56 {
|
|
194
200
|
all: unset;
|
|
195
201
|
font-family: var(--font-family-base, "Nunito Sans", sans-serif);
|
|
196
202
|
font-size: 100%;
|
|
@@ -208,77 +214,77 @@
|
|
|
208
214
|
font-weight: 600;
|
|
209
215
|
min-width: 2rem;
|
|
210
216
|
}
|
|
211
|
-
.
|
|
217
|
+
._prefix_ff5ti_55 {
|
|
212
218
|
padding-inline-end: 0.5rem;
|
|
213
219
|
}
|
|
214
|
-
.
|
|
220
|
+
._suffix_ff5ti_56 {
|
|
215
221
|
padding-inline-start: 0.5rem;
|
|
216
222
|
padding-inline-end: 0.5rem;
|
|
217
223
|
}
|
|
218
224
|
}
|
|
219
225
|
@layer state {
|
|
220
|
-
._input-
|
|
226
|
+
._input-wrapper_ff5ti_28._small_ff5ti_216 ._input_ff5ti_27 {
|
|
221
227
|
height: 1.875rem;
|
|
222
228
|
}
|
|
223
|
-
._input-
|
|
229
|
+
._input-wrapper_ff5ti_28._large_ff5ti_219 ._input_ff5ti_27 {
|
|
224
230
|
height: 2.875rem;
|
|
225
231
|
}
|
|
226
|
-
._input-
|
|
232
|
+
._input-wrapper_ff5ti_28 input._input_ff5ti_27:-moz-read-only {
|
|
227
233
|
background-color: var(--background-color-strong, #f7f7f7);
|
|
228
234
|
}
|
|
229
|
-
._input-
|
|
235
|
+
._input-wrapper_ff5ti_28 input._input_ff5ti_27:read-only {
|
|
230
236
|
background-color: var(--background-color-strong, #f7f7f7);
|
|
231
237
|
}
|
|
232
|
-
._input-
|
|
238
|
+
._input-wrapper_ff5ti_28._disabled_ff5ti_225, ._input-wrapper_ff5ti_28[disabled], ._input-wrapper_ff5ti_28:has(._input_ff5ti_27:disabled) {
|
|
233
239
|
opacity: 0.4;
|
|
234
240
|
}
|
|
235
|
-
._input-
|
|
241
|
+
._input-wrapper_ff5ti_28._disabled_ff5ti_225 *, ._input-wrapper_ff5ti_28[disabled] *, ._input-wrapper_ff5ti_28:has(._input_ff5ti_27:disabled) * {
|
|
236
242
|
cursor: not-allowed;
|
|
237
243
|
}
|
|
238
|
-
._input-
|
|
244
|
+
._input-wrapper_ff5ti_28:has(input._input_ff5ti_27:-moz-read-only) {
|
|
239
245
|
background-color: var(--background-color-strong, #f7f7f7);
|
|
240
246
|
}
|
|
241
|
-
._input-
|
|
247
|
+
._input-wrapper_ff5ti_28[disabled], ._input-wrapper_ff5ti_28[readonly], ._input-wrapper_ff5ti_28._disabled_ff5ti_225, ._input-wrapper_ff5ti_28:has(input._input_ff5ti_27:read-only) {
|
|
242
248
|
background-color: var(--background-color-strong, #f7f7f7);
|
|
243
249
|
}
|
|
244
|
-
._input-
|
|
250
|
+
._input-wrapper_ff5ti_28:focus:not([disabled]), ._input-wrapper_ff5ti_28:focus-visible, ._input-wrapper_ff5ti_28:has(._input_ff5ti_27:focus-visible) {
|
|
245
251
|
outline-width: 0.125rem;
|
|
246
252
|
}
|
|
247
|
-
._input-
|
|
253
|
+
._input-wrapper_ff5ti_28:has(._input_ff5ti_27._error_ff5ti_237) {
|
|
248
254
|
border-color: var(--border-color-danger, #e13212);
|
|
249
255
|
}
|
|
250
|
-
._input-
|
|
256
|
+
._input-wrapper_ff5ti_28:focus:has(._input_ff5ti_27._error_ff5ti_237):not([disabled]), ._input-wrapper_ff5ti_28:focus-visible:has(._input_ff5ti_27._error_ff5ti_237), ._input-wrapper_ff5ti_28:has(._input_ff5ti_27._error_ff5ti_237:focus-visible) {
|
|
251
257
|
outline-color: var(--focus-ring-color-danger, #e13212);
|
|
252
258
|
outline-width: 0.125rem;
|
|
253
259
|
}
|
|
254
|
-
.
|
|
260
|
+
._small_ff5ti_216 ._buttons-wrapper_ff5ti_13 {
|
|
255
261
|
height: 1.875rem;
|
|
256
262
|
}
|
|
257
|
-
.
|
|
263
|
+
._large_ff5ti_219 ._buttons-wrapper_ff5ti_13 {
|
|
258
264
|
height: 2.875rem;
|
|
259
265
|
}
|
|
260
|
-
._close-button-
|
|
266
|
+
._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42[data-interactive=hover]::before, ._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42:hover::before, ._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42:disabled:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250), ._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42._disabled_ff5ti_225:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250), ._close-button-wrapper_ff5ti_42 ._close-button_ff5ti_42[aria-disabled=true]:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250) {
|
|
261
267
|
background-color: inherit;
|
|
262
268
|
}
|
|
263
|
-
._toggle-button-
|
|
269
|
+
._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41[aria-expanded=true] {
|
|
264
270
|
transform: rotate(270deg);
|
|
265
271
|
}
|
|
266
|
-
._toggle-button-
|
|
272
|
+
._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41[data-interactive=hover]::before, ._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41:hover::before, ._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41:disabled:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250), ._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41._disabled_ff5ti_225:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250), ._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41[aria-disabled=true]:not(._loading-infinite_ff5ti_250, ._loading-progress_ff5ti_250) {
|
|
267
273
|
background-color: inherit;
|
|
268
274
|
}
|
|
269
|
-
[aria-expanded=true] ._toggle-button-
|
|
275
|
+
[aria-expanded=true] ._toggle-button-wrapper_ff5ti_41 ._toggle-button_ff5ti_41 {
|
|
270
276
|
transform: rotate(270deg);
|
|
271
277
|
}
|
|
272
|
-
.
|
|
278
|
+
._small_ff5ti_216 ._prefix-wrapper_ff5ti_160 {
|
|
273
279
|
height: 1.875rem;
|
|
274
280
|
}
|
|
275
|
-
.
|
|
281
|
+
._large_ff5ti_219 ._prefix-wrapper_ff5ti_160 {
|
|
276
282
|
height: 2.875rem;
|
|
277
283
|
}
|
|
278
|
-
.
|
|
284
|
+
._small_ff5ti_216 ._chip-wrapper_ff5ti_178 {
|
|
279
285
|
height: 1.875rem;
|
|
280
286
|
}
|
|
281
|
-
.
|
|
287
|
+
._large_ff5ti_219 ._chip-wrapper_ff5ti_178 {
|
|
282
288
|
height: 2.875rem;
|
|
283
289
|
}
|
|
284
290
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import './SelectTriggerBase.css';const input = "_input_ff5ti_27";
|
|
2
|
+
const prefix = "_prefix_ff5ti_55";
|
|
3
|
+
const suffix = "_suffix_ff5ti_56";
|
|
4
|
+
const select = "_select_ff5ti_76";
|
|
5
|
+
const chip = "_chip_ff5ti_178";
|
|
6
|
+
const small = "_small_ff5ti_216";
|
|
7
|
+
const large = "_large_ff5ti_219";
|
|
8
|
+
const disabled = "_disabled_ff5ti_225";
|
|
9
|
+
const error = "_error_ff5ti_237";
|
|
10
|
+
const styles = {
|
|
11
|
+
"search-field": "_search-field_ff5ti_2",
|
|
12
|
+
"buttons-wrapper": "_buttons-wrapper_ff5ti_13",
|
|
13
|
+
input: input,
|
|
14
|
+
"input-wrapper": "_input-wrapper_ff5ti_28",
|
|
15
|
+
"toggle-button-wrapper": "_toggle-button-wrapper_ff5ti_41",
|
|
16
|
+
"close-button-wrapper": "_close-button-wrapper_ff5ti_42",
|
|
17
|
+
prefix: prefix,
|
|
18
|
+
suffix: suffix,
|
|
19
|
+
select: select,
|
|
20
|
+
"no-clear-button": "_no-clear-button_ff5ti_90",
|
|
21
|
+
"no-toggle-button": "_no-toggle-button_ff5ti_93",
|
|
22
|
+
"input-flex": "_input-flex_ff5ti_99",
|
|
23
|
+
"fake-placeholder": "_fake-placeholder_ff5ti_127",
|
|
24
|
+
"close-button": "_close-button_ff5ti_42",
|
|
25
|
+
"toggle-button": "_toggle-button_ff5ti_41",
|
|
26
|
+
"prefix-wrapper": "_prefix-wrapper_ff5ti_160",
|
|
27
|
+
"rows-wrapper": "_rows-wrapper_ff5ti_168",
|
|
28
|
+
"chip-wrapper": "_chip-wrapper_ff5ti_178",
|
|
29
|
+
chip: chip,
|
|
30
|
+
small: small,
|
|
31
|
+
large: large,
|
|
32
|
+
disabled: disabled,
|
|
33
|
+
error: error};
|
|
34
|
+
|
|
35
|
+
export { styles as s };
|
|
36
|
+
//# sourceMappingURL=SelectTriggerBase.module-B0NFRlQP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectTriggerBase.module-B0NFRlQP.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|