@accelint/design-system 1.2.2 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/aria/index.js.map +1 -1
- package/dist/components/button/button.css.d.ts +25 -24
- package/dist/components/button/index.d.ts +9 -40
- package/dist/components/button/index.js +23 -17
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/types.d.ts +3 -2
- package/dist/components/checkbox/checkbox.css.d.ts +23 -23
- package/dist/components/checkbox/index.js.map +1 -1
- package/dist/components/chip/chip.css.d.ts +18 -18
- package/dist/components/chip/index.js.map +1 -1
- package/dist/components/collection/index.d.ts +3 -3
- package/dist/components/collection/index.js.map +1 -1
- package/dist/components/combo-box/combo-box.css.d.ts +9 -9
- package/dist/components/combo-box/index.js +9 -5
- package/dist/components/combo-box/index.js.map +1 -1
- package/dist/components/date-field/date-field.css.d.ts +17 -17
- package/dist/components/date-field/index.js +8 -4
- package/dist/components/date-field/index.js.map +1 -1
- package/dist/components/date-input/date-input.css.d.ts +25 -25
- package/dist/components/date-input/index.js +19 -8
- package/dist/components/date-input/index.js.map +1 -1
- package/dist/components/dialog/dialog.css.d.ts +16 -15
- package/dist/components/dialog/index.d.ts +1 -0
- package/dist/components/dialog/index.js +7 -5
- package/dist/components/dialog/index.js.map +1 -1
- package/dist/components/dialog/types.d.ts +1 -0
- package/dist/components/drawer/drawer.css.d.ts +17 -17
- package/dist/components/drawer/index.d.ts +1 -1
- package/dist/components/drawer/index.js +21 -8
- package/dist/components/drawer/index.js.map +1 -1
- package/dist/components/drawer/types.d.ts +1 -1
- package/dist/components/element/index.d.ts +1 -1
- package/dist/components/element/index.js +7 -3
- package/dist/components/element/index.js.map +1 -1
- package/dist/components/element/types.d.ts +2 -0
- package/dist/components/group/group.css.d.ts +7 -7
- package/dist/components/group/index.js +6 -6
- package/dist/components/group/index.js.map +1 -1
- package/dist/components/icon/icon.css.d.ts +9 -9
- package/dist/components/icon/index.js +4 -4
- package/dist/components/icon/index.js.map +1 -1
- package/dist/components/index.d.ts +35 -35
- package/dist/components/input/index.js +17 -8
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/input/input.css.d.ts +20 -20
- package/dist/components/menu/index.d.ts +2 -2
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/index.js.map +1 -1
- package/dist/components/menu/menu.css.d.ts +42 -42
- package/dist/components/merge-provider/index.js +15 -7
- package/dist/components/merge-provider/index.js.map +1 -1
- package/dist/components/merge-provider/types.d.ts +2 -0
- package/dist/components/number-field/index.d.ts +1 -1
- package/dist/components/number-field/index.js +8 -4
- package/dist/components/number-field/index.js.map +1 -1
- package/dist/components/number-field/number-field.css.d.ts +12 -12
- package/dist/components/number-field/types.d.ts +1 -1
- package/dist/components/options/index.js +1 -1
- package/dist/components/options/index.js.map +1 -1
- package/dist/components/options/options.css.d.ts +44 -44
- package/dist/components/picker/index.js.map +1 -1
- package/dist/components/picker/picker.css.d.ts +18 -18
- package/dist/components/popover/index.js +8 -4
- package/dist/components/popover/index.js.map +1 -1
- package/dist/components/popover/popover.css.d.ts +12 -12
- package/dist/components/query-builder/action-element.js.map +1 -1
- package/dist/components/query-builder/dataset-sample.js.map +1 -1
- package/dist/components/query-builder/group.js.map +1 -1
- package/dist/components/query-builder/index.js.map +1 -1
- package/dist/components/query-builder/query-builder.css.d.ts +53 -53
- package/dist/components/query-builder/value-editor.js.map +1 -1
- package/dist/components/query-builder/value-selector.js.map +1 -1
- package/dist/components/radio/index.js +12 -8
- package/dist/components/radio/index.js.map +1 -1
- package/dist/components/radio/radio.css.d.ts +22 -22
- package/dist/components/search-field/index.js +9 -5
- package/dist/components/search-field/index.js.map +1 -1
- package/dist/components/search-field/search-field.css.d.ts +9 -9
- package/dist/components/select/index.js +5 -5
- package/dist/components/select/index.js.map +1 -1
- package/dist/components/select/select.css.d.ts +12 -12
- package/dist/components/slider/index.js +48 -20
- package/dist/components/slider/index.js.map +1 -1
- package/dist/components/slider/slider.css.d.ts +27 -27
- package/dist/components/switch/index.js +4 -4
- package/dist/components/switch/index.js.map +1 -1
- package/dist/components/switch/switch.css.d.ts +16 -16
- package/dist/components/tabs/index.js +32 -20
- package/dist/components/tabs/index.js.map +1 -1
- package/dist/components/tabs/tabs.css.d.ts +25 -25
- package/dist/components/text-field/index.d.ts +3 -128
- package/dist/components/text-field/index.js +11 -7
- package/dist/components/text-field/index.js.map +1 -1
- package/dist/components/text-field/text-field.css.d.ts +8 -8
- package/dist/components/textarea/index.js +16 -7
- package/dist/components/textarea/index.js.map +1 -1
- package/dist/components/textarea/textarea.css.d.ts +22 -22
- package/dist/components/time-field/index.js +8 -4
- package/dist/components/time-field/index.js.map +1 -1
- package/dist/components/time-field/time-field.css.d.ts +17 -17
- package/dist/components/tooltip/index.js +17 -9
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/tooltip/tooltip.css.d.ts +11 -11
- package/dist/components/tree/index.js +5 -2
- package/dist/components/tree/index.js.map +1 -1
- package/dist/components/tree/tree.css.d.ts +45 -45
- package/dist/hooks/index.d.ts +13 -13
- package/dist/hooks/use-collection-render/index.d.ts +1 -1
- package/dist/hooks/use-collection-render/index.js +2 -3
- package/dist/hooks/use-collection-render/index.js.map +1 -1
- package/dist/hooks/use-context-props/index.js.map +1 -1
- package/dist/hooks/use-defaults/index.d.ts +32 -80
- package/dist/hooks/use-defaults/index.js +1 -4
- package/dist/hooks/use-defaults/index.js.map +1 -1
- package/dist/hooks/use-defaults/types.d.ts +1 -1
- package/dist/hooks/use-theme/index.d.ts +2 -2
- package/dist/hooks/use-theme/index.js.map +1 -1
- package/dist/hooks/use-theme/types.d.ts +1 -1
- package/dist/hooks/use-tree/index.js +3 -2
- package/dist/hooks/use-tree/index.js.map +1 -1
- package/dist/hooks/use-tree/utils.js +6 -9
- package/dist/hooks/use-tree/utils.js.map +1 -1
- package/dist/hooks/use-update-effect/index.js.map +1 -1
- package/dist/index.css +32 -32
- package/dist/index.d.ts +39 -39
- package/dist/ladle/actions.js.map +1 -1
- package/dist/styles/theme.css.d.ts +200 -200
- package/dist/test/setup.js +778 -1276
- package/dist/test/setup.js.map +1 -1
- package/dist/utils/css/index.d.ts +1 -1
- package/dist/utils/css/index.js.map +1 -1
- package/dist/utils/props/index.d.ts +1 -2
- package/dist/utils/props/index.js +1 -2
- package/dist/utils/props/index.js.map +1 -1
- package/dist/vanilla.d.ts +29 -29
- package/package.json +49 -48
|
@@ -3,10 +3,10 @@ import { PartialDeep } from 'type-fest';
|
|
|
3
3
|
import { OmitProtectedProps } from '../../types/props.js';
|
|
4
4
|
import { ButtonClassNames, ButtonProps } from '../button/types.js';
|
|
5
5
|
import { InputClassNames } from '../input/types.js';
|
|
6
|
+
import '../../types/generic.js';
|
|
6
7
|
import '../../types/react-aria.js';
|
|
7
8
|
import 'react';
|
|
8
9
|
import '../icon/types.js';
|
|
9
|
-
import '../../types/generic.js';
|
|
10
10
|
|
|
11
11
|
type NumberFieldClassNames = PartialDeep<{
|
|
12
12
|
container: string;
|
|
@@ -152,7 +152,7 @@ var OptionsList = forwardRef(function OptionList(props, ref) {
|
|
|
152
152
|
return /* @__PURE__ */ jsx(AriaListBoxSection, { className: classNames?.list?.list, children: typeof childrenProp === "function" ? /* @__PURE__ */ jsx(Collection, { items, children: childrenProp }) : childrenProp });
|
|
153
153
|
}, [classNames?.list?.list, childrenProp, items]);
|
|
154
154
|
const renderer = useMemo(
|
|
155
|
-
// @ts-expect-error
|
|
155
|
+
// @ts-expect-error Type '{ readonly collection: Collection<Node<object>>; }' is missing the following properties from type 'ListState<any>': disabledKeys, selectionManager
|
|
156
156
|
() => createCollectionRenderer(ListStateContext, values),
|
|
157
157
|
[values]
|
|
158
158
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/options/index.tsx"],"names":["Options"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n type ForwardedRef,\n type HTMLAttributes,\n type Ref,\n createContext,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n Collection,\n type CollectionRenderer,\n CollectionRendererContext,\n type ContextValue,\n ListBox,\n ListBoxItem,\n type ListBoxItemRenderProps,\n type ListBoxRenderProps,\n ListStateContext,\n Popover,\n type PopoverRenderProps,\n Provider,\n type SectionProps,\n type SeparatorProps,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useSlot } from '../../hooks/use-slot';\nimport { useTheme } from '../../hooks/use-theme';\nimport { bodies, headings } from '../../styles/typography.css';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport {\n AriaHeaderContext,\n AriaKeyboardContext,\n AriaListBoxSection,\n AriaListBoxSectionContext,\n AriaSeparatorContext,\n AriaText,\n AriaTextContext,\n} from '../aria';\nimport { createCollectionRenderer } from '../collection';\nimport { IconContext } from '../icon';\nimport type { IconProps } from '../icon/types';\nimport {\n optionsClassNames,\n optionsItemStateVars,\n optionsStateVars,\n} from './options.css';\nimport type {\n OptionsItemProps,\n OptionsListProps,\n OptionsMapping,\n OptionsProps,\n} from './types';\n\nconst defaultMapping: OptionsMapping = {\n description: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n header: {\n sm: headings.v4,\n lg: headings.v5,\n },\n label: {\n sm: bodies.sm,\n lg: bodies.sm,\n },\n shortcut: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n};\n\nconst defaultSize = 'lg';\n\nexport const OptionsContext =\n createContext<ContextValue<OptionsProps, HTMLElement>>(null);\n\nexport const Options = forwardRef(function Options(\n props: OptionsProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'Options');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = defaultSize,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, theme.Options, classNamesProp, {\n options: {\n container: theme.className, // required to consume global theme within Popover\n },\n }),\n [theme.className, theme.Options, classNamesProp],\n );\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const style = useCallback(\n ({ ...renderProps }: PopoverRenderProps) => ({\n ...theme.style, // required to consume global styles within Popover\n ...inlineVars(optionsStateVars, {\n ...renderProps,\n size,\n }),\n }),\n [theme.style, size],\n );\n\n const values = useMemo<\n [\n [\n typeof OptionsListContext,\n ContextValue<OptionsListProps<object>, HTMLDivElement>,\n ],\n ]\n >(\n () => [[OptionsListContext, { classNames, mapping, size }]],\n [classNames, mapping, size],\n );\n\n const children = useCallback(\n (renderProps: PopoverRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.options?.options}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n size,\n defaultChildren: null,\n })}\n </div>\n </Provider>\n ),\n [childrenProp, classNames?.options?.options, size, values],\n );\n\n return (\n <Popover\n {...rest}\n ref={resolvedRef}\n className={classNames?.options?.container}\n style={style}\n >\n {children}\n </Popover>\n );\n});\n\nexport const OptionsListContext =\n createContext<ContextValue<OptionsListProps<object>, HTMLDivElement>>(null);\n\ntype OptionsListContexts = [\n [\n typeof OptionsItemContext,\n ContextValue<OptionsItemProps<object>, HTMLDivElement>,\n ],\n [\n typeof AriaListBoxSectionContext,\n ContextValue<SectionProps<object>, HTMLElement>,\n ],\n [\n typeof AriaHeaderContext,\n ContextValue<HTMLAttributes<HTMLElement>, HTMLElement>,\n ],\n [typeof AriaSeparatorContext, ContextValue<SeparatorProps, HTMLElement>],\n];\n\nexport const OptionsList = forwardRef(function OptionList<T extends object>(\n props: OptionsListProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsListContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'OptionsList');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n items,\n mapping: mappingProp,\n selectionMode = 'single',\n size = defaultSize,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, theme.Options, classNamesProp, {\n list: { header: mapping.header[size] },\n }),\n [theme.Options, classNamesProp, mapping, size],\n );\n\n const values = useMemo<OptionsListContexts>(\n () => [\n [OptionsItemContext, { classNames, size, mapping }],\n [AriaListBoxSectionContext, { className: classNames?.list?.section }],\n [AriaHeaderContext, { className: classNames?.list?.header }],\n [AriaSeparatorContext, { className: classNames?.list?.separator }],\n ],\n [classNames, size, mapping],\n );\n\n const style = useCallback(\n (renderProps: ListBoxRenderProps) =>\n inlineVars(optionsItemStateVars, { ...renderProps, size }),\n [size],\n );\n\n const children = useMemo(() => {\n if (!(childrenProp || items)) {\n return null;\n }\n\n return (\n <AriaListBoxSection className={classNames?.list?.list}>\n {typeof childrenProp === 'function' ? (\n <Collection items={items}>{childrenProp}</Collection>\n ) : (\n childrenProp\n )}\n </AriaListBoxSection>\n );\n }, [classNames?.list?.list, childrenProp, items]);\n\n const renderer = useMemo<CollectionRenderer>(\n // @ts-expect-error ts unnecessarily guarding against null state\n () => createCollectionRenderer(ListStateContext, values),\n [values],\n );\n\n return (\n <CollectionRendererContext.Provider value={renderer}>\n <Provider values={values}>\n <ListBox<T>\n {...rest}\n ref={resolvedRef}\n className={classNames?.list?.container}\n items={items}\n selectionMode={selectionMode}\n style={style}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n >\n {children}\n </ListBox>\n </Provider>\n </CollectionRendererContext.Provider>\n );\n});\n\nexport const OptionsItemContext =\n createContext<ContextValue<OptionsItemProps<object>, HTMLDivElement>>(null);\n\nexport const OptionsItem = forwardRef(function OptionItem<T extends object>(\n props: OptionsItemProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsItemContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'OptionsItem');\n\n const {\n id,\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = defaultSize,\n textValue = typeof childrenProp === 'string' ? childrenProp : undefined,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, classNamesProp, theme.Options, {\n item: {\n description: mapping.description[size],\n label: mapping.label[size],\n shortcut: mapping.shortcut[size],\n },\n }),\n [theme.Options, classNamesProp, mapping, size],\n );\n\n const [descriptionRef, hasDescription] = useSlot();\n\n const style = useCallback(\n (renderProps: ListBoxItemRenderProps) =>\n inlineVars(optionsItemStateVars, {\n ...renderProps,\n size,\n hasDescription,\n }),\n [hasDescription, size],\n );\n\n const values = useMemo<\n [\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [typeof IconContext, ContextValue<IconProps, HTMLDivElement>],\n [\n typeof AriaKeyboardContext,\n ContextValue<HTMLAttributes<HTMLElement>, HTMLElement>,\n ],\n ]\n >(\n () => [\n [\n AriaTextContext,\n {\n slots: {\n label: { className: classNames?.item?.label },\n description: {\n ref: descriptionRef,\n className: classNames?.item?.description,\n },\n },\n },\n ],\n [IconContext, { classNames: classNames?.item?.icon }],\n [AriaKeyboardContext, { className: classNames?.item?.shortcut }],\n ],\n [\n classNames?.item?.label,\n descriptionRef,\n classNames?.item?.description,\n classNames?.item?.icon,\n classNames?.item?.shortcut,\n ],\n );\n\n const children = useCallback(\n (renderProps: ListBoxItemRenderProps) => {\n const content = callRenderProps(childrenProp, {\n ...renderProps,\n size,\n defaultChildren: null,\n });\n\n return (\n <Provider values={values}>\n <div className={classNames?.item?.item}>\n {typeof content === 'string' ? (\n <AriaText slot='label'>{content}</AriaText>\n ) : (\n content\n )}\n </div>\n </Provider>\n );\n },\n [childrenProp, classNames?.item?.item, size, values],\n );\n\n return (\n <ListBoxItem<T>\n {...rest}\n id={id ?? textValue}\n ref={resolvedRef as unknown as Ref<T>}\n className={classNames?.item?.container}\n style={style}\n textValue={textValue}\n >\n {children}\n </ListBoxItem>\n );\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/options/index.tsx"],"names":["Options"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n type HTMLAttributes,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n Collection,\n type CollectionRenderer,\n CollectionRendererContext,\n type ContextValue,\n ListBox,\n ListBoxItem,\n type ListBoxItemRenderProps,\n type ListBoxRenderProps,\n ListStateContext,\n Popover,\n type PopoverRenderProps,\n Provider,\n type SectionProps,\n type SeparatorProps,\n type TextProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useSlot } from '../../hooks/use-slot';\nimport { useTheme } from '../../hooks/use-theme';\nimport { bodies, headings } from '../../styles/typography.css';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport {\n AriaHeaderContext,\n AriaKeyboardContext,\n AriaListBoxSection,\n AriaListBoxSectionContext,\n AriaSeparatorContext,\n AriaText,\n AriaTextContext,\n} from '../aria';\nimport { createCollectionRenderer } from '../collection';\nimport { IconContext } from '../icon';\nimport {\n optionsClassNames,\n optionsItemStateVars,\n optionsStateVars,\n} from './options.css';\nimport type { IconProps } from '../icon/types';\nimport type {\n OptionsItemProps,\n OptionsListProps,\n OptionsMapping,\n OptionsProps,\n} from './types';\n\nconst defaultMapping: OptionsMapping = {\n description: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n header: {\n sm: headings.v4,\n lg: headings.v5,\n },\n label: {\n sm: bodies.sm,\n lg: bodies.sm,\n },\n shortcut: {\n sm: bodies.xs,\n lg: bodies.xs,\n },\n};\n\nconst defaultSize = 'lg';\n\nexport const OptionsContext =\n createContext<ContextValue<OptionsProps, HTMLElement>>(null);\n\nexport const Options = forwardRef(function Options(\n props: OptionsProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'Options');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = defaultSize,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, theme.Options, classNamesProp, {\n options: {\n container: theme.className, // required to consume global theme within Popover\n },\n }),\n [theme.className, theme.Options, classNamesProp],\n );\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const style = useCallback(\n ({ ...renderProps }: PopoverRenderProps) => ({\n ...theme.style, // required to consume global styles within Popover\n ...inlineVars(optionsStateVars, {\n ...renderProps,\n size,\n }),\n }),\n [theme.style, size],\n );\n\n const values = useMemo<\n [\n [\n typeof OptionsListContext,\n ContextValue<OptionsListProps<object>, HTMLDivElement>,\n ],\n ]\n >(\n () => [[OptionsListContext, { classNames, mapping, size }]],\n [classNames, mapping, size],\n );\n\n const children = useCallback(\n (renderProps: PopoverRenderProps) => (\n <Provider values={values}>\n <div className={classNames?.options?.options}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n size,\n defaultChildren: null,\n })}\n </div>\n </Provider>\n ),\n [childrenProp, classNames?.options?.options, size, values],\n );\n\n return (\n <Popover\n {...rest}\n ref={resolvedRef}\n className={classNames?.options?.container}\n style={style}\n >\n {children}\n </Popover>\n );\n});\n\nexport const OptionsListContext =\n createContext<ContextValue<OptionsListProps<object>, HTMLDivElement>>(null);\n\ntype OptionsListContexts = [\n [\n typeof OptionsItemContext,\n ContextValue<OptionsItemProps<object>, HTMLDivElement>,\n ],\n [\n typeof AriaListBoxSectionContext,\n ContextValue<SectionProps<object>, HTMLElement>,\n ],\n [\n typeof AriaHeaderContext,\n ContextValue<HTMLAttributes<HTMLElement>, HTMLElement>,\n ],\n [typeof AriaSeparatorContext, ContextValue<SeparatorProps, HTMLElement>],\n];\n\nexport const OptionsList = forwardRef(function OptionList<T extends object>(\n props: OptionsListProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsListContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'OptionsList');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n items,\n mapping: mappingProp,\n selectionMode = 'single',\n size = defaultSize,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, theme.Options, classNamesProp, {\n list: { header: mapping.header[size] },\n }),\n [theme.Options, classNamesProp, mapping, size],\n );\n\n const values = useMemo<OptionsListContexts>(\n () => [\n [OptionsItemContext, { classNames, size, mapping }],\n [AriaListBoxSectionContext, { className: classNames?.list?.section }],\n [AriaHeaderContext, { className: classNames?.list?.header }],\n [AriaSeparatorContext, { className: classNames?.list?.separator }],\n ],\n [classNames, size, mapping],\n );\n\n const style = useCallback(\n (renderProps: ListBoxRenderProps) =>\n inlineVars(optionsItemStateVars, { ...renderProps, size }),\n [size],\n );\n\n const children = useMemo(() => {\n if (!(childrenProp || items)) {\n return null;\n }\n\n return (\n <AriaListBoxSection className={classNames?.list?.list}>\n {typeof childrenProp === 'function' ? (\n <Collection items={items}>{childrenProp}</Collection>\n ) : (\n childrenProp\n )}\n </AriaListBoxSection>\n );\n }, [classNames?.list?.list, childrenProp, items]);\n\n const renderer = useMemo<CollectionRenderer>(\n // @ts-expect-error Type '{ readonly collection: Collection<Node<object>>; }' is missing the following properties from type 'ListState<any>': disabledKeys, selectionManager\n () => createCollectionRenderer(ListStateContext, values),\n [values],\n );\n\n return (\n <CollectionRendererContext.Provider value={renderer}>\n <Provider values={values}>\n <ListBox<T>\n {...rest}\n ref={resolvedRef}\n className={classNames?.list?.container}\n items={items}\n selectionMode={selectionMode}\n style={style}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n >\n {children}\n </ListBox>\n </Provider>\n </CollectionRendererContext.Provider>\n );\n});\n\nexport const OptionsItemContext =\n createContext<ContextValue<OptionsItemProps<object>, HTMLDivElement>>(null);\n\nexport const OptionsItem = forwardRef(function OptionItem<T extends object>(\n props: OptionsItemProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n OptionsItemContext,\n );\n const finalProps = useDefaultProps(resolvedProps, 'OptionsItem');\n\n const {\n id,\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n size = defaultSize,\n textValue = typeof childrenProp === 'string' ? childrenProp : undefined,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(optionsClassNames, classNamesProp, theme.Options, {\n item: {\n description: mapping.description[size],\n label: mapping.label[size],\n shortcut: mapping.shortcut[size],\n },\n }),\n [theme.Options, classNamesProp, mapping, size],\n );\n\n const [descriptionRef, hasDescription] = useSlot();\n\n const style = useCallback(\n (renderProps: ListBoxItemRenderProps) =>\n inlineVars(optionsItemStateVars, {\n ...renderProps,\n size,\n hasDescription,\n }),\n [hasDescription, size],\n );\n\n const values = useMemo<\n [\n [typeof AriaTextContext, ContextValue<TextProps, HTMLElement>],\n [typeof IconContext, ContextValue<IconProps, HTMLDivElement>],\n [\n typeof AriaKeyboardContext,\n ContextValue<HTMLAttributes<HTMLElement>, HTMLElement>,\n ],\n ]\n >(\n () => [\n [\n AriaTextContext,\n {\n slots: {\n label: { className: classNames?.item?.label },\n description: {\n ref: descriptionRef,\n className: classNames?.item?.description,\n },\n },\n },\n ],\n [IconContext, { classNames: classNames?.item?.icon }],\n [AriaKeyboardContext, { className: classNames?.item?.shortcut }],\n ],\n [\n classNames?.item?.label,\n descriptionRef,\n classNames?.item?.description,\n classNames?.item?.icon,\n classNames?.item?.shortcut,\n ],\n );\n\n const children = useCallback(\n (renderProps: ListBoxItemRenderProps) => {\n const content = callRenderProps(childrenProp, {\n ...renderProps,\n size,\n defaultChildren: null,\n });\n\n return (\n <Provider values={values}>\n <div className={classNames?.item?.item}>\n {typeof content === 'string' ? (\n <AriaText slot='label'>{content}</AriaText>\n ) : (\n content\n )}\n </div>\n </Provider>\n );\n },\n [childrenProp, classNames?.item?.item, size, values],\n );\n\n return (\n <ListBoxItem<T>\n {...rest}\n id={id ?? textValue}\n ref={resolvedRef as unknown as React.Ref<T>}\n className={classNames?.item?.container}\n style={style}\n textValue={textValue}\n >\n {children}\n </ListBoxItem>\n );\n});\n"]}
|
|
@@ -11,75 +11,75 @@ declare const optionsContainers: {
|
|
|
11
11
|
item: string;
|
|
12
12
|
};
|
|
13
13
|
declare const optionsStateVars: {
|
|
14
|
-
size: `var(--${string})
|
|
15
|
-
isEntering: `var(--${string})
|
|
16
|
-
isExiting: `var(--${string})
|
|
17
|
-
placement: `var(--${string})
|
|
14
|
+
size: `var(--${string})`;
|
|
15
|
+
isEntering: `var(--${string})`;
|
|
16
|
+
isExiting: `var(--${string})`;
|
|
17
|
+
placement: `var(--${string})`;
|
|
18
18
|
};
|
|
19
19
|
declare const optionsListStateVars: {
|
|
20
|
-
size: `var(--${string})
|
|
21
|
-
isEmpty: `var(--${string})
|
|
22
|
-
isFocused: `var(--${string})
|
|
23
|
-
isFocusVisible: `var(--${string})
|
|
20
|
+
size: `var(--${string})`;
|
|
21
|
+
isEmpty: `var(--${string})`;
|
|
22
|
+
isFocused: `var(--${string})`;
|
|
23
|
+
isFocusVisible: `var(--${string})`;
|
|
24
24
|
};
|
|
25
25
|
declare const optionsItemStateVars: {
|
|
26
|
-
selectionBehavior: `var(--${string})
|
|
27
|
-
selectionMode: `var(--${string})
|
|
28
|
-
size: `var(--${string})
|
|
29
|
-
hasDescription: `var(--${string})
|
|
30
|
-
isDisabled: `var(--${string})
|
|
31
|
-
isHovered: `var(--${string})
|
|
32
|
-
isPressed: `var(--${string})
|
|
33
|
-
isSelected: `var(--${string})
|
|
34
|
-
isFocused: `var(--${string})
|
|
35
|
-
isFocusVisible: `var(--${string})
|
|
26
|
+
selectionBehavior: `var(--${string})`;
|
|
27
|
+
selectionMode: `var(--${string})`;
|
|
28
|
+
size: `var(--${string})`;
|
|
29
|
+
hasDescription: `var(--${string})`;
|
|
30
|
+
isDisabled: `var(--${string})`;
|
|
31
|
+
isHovered: `var(--${string})`;
|
|
32
|
+
isPressed: `var(--${string})`;
|
|
33
|
+
isSelected: `var(--${string})`;
|
|
34
|
+
isFocused: `var(--${string})`;
|
|
35
|
+
isFocusVisible: `var(--${string})`;
|
|
36
36
|
};
|
|
37
37
|
declare const optionsColorVars: {
|
|
38
38
|
list: {
|
|
39
|
-
background: `var(--${string})
|
|
40
|
-
border: `var(--${string})
|
|
41
|
-
color: `var(--${string})
|
|
39
|
+
background: `var(--${string})`;
|
|
40
|
+
border: `var(--${string})`;
|
|
41
|
+
color: `var(--${string})`;
|
|
42
42
|
};
|
|
43
43
|
header: {
|
|
44
|
-
background: `var(--${string})
|
|
45
|
-
border: `var(--${string})
|
|
46
|
-
color: `var(--${string})
|
|
44
|
+
background: `var(--${string})`;
|
|
45
|
+
border: `var(--${string})`;
|
|
46
|
+
color: `var(--${string})`;
|
|
47
47
|
};
|
|
48
|
-
separator: `var(--${string})
|
|
48
|
+
separator: `var(--${string})`;
|
|
49
49
|
item: {
|
|
50
|
-
background: `var(--${string})
|
|
51
|
-
border: `var(--${string})
|
|
52
|
-
color: `var(--${string})
|
|
50
|
+
background: `var(--${string})`;
|
|
51
|
+
border: `var(--${string})`;
|
|
52
|
+
color: `var(--${string})`;
|
|
53
53
|
};
|
|
54
|
-
label: `var(--${string})
|
|
55
|
-
description: `var(--${string})
|
|
54
|
+
label: `var(--${string})`;
|
|
55
|
+
description: `var(--${string})`;
|
|
56
56
|
};
|
|
57
57
|
declare const optionsSpaceVars: {
|
|
58
58
|
options: {
|
|
59
|
-
minWidth: `var(--${string})
|
|
60
|
-
x: `var(--${string})
|
|
61
|
-
y: `var(--${string})
|
|
59
|
+
minWidth: `var(--${string})`;
|
|
60
|
+
x: `var(--${string})`;
|
|
61
|
+
y: `var(--${string})`;
|
|
62
62
|
};
|
|
63
63
|
list: {
|
|
64
|
-
x: `var(--${string})
|
|
65
|
-
y: `var(--${string})
|
|
64
|
+
x: `var(--${string})`;
|
|
65
|
+
y: `var(--${string})`;
|
|
66
66
|
};
|
|
67
67
|
section: {
|
|
68
|
-
x: `var(--${string})
|
|
69
|
-
y: `var(--${string})
|
|
68
|
+
x: `var(--${string})`;
|
|
69
|
+
y: `var(--${string})`;
|
|
70
70
|
};
|
|
71
71
|
header: {
|
|
72
|
-
x: `var(--${string})
|
|
73
|
-
y: `var(--${string})
|
|
72
|
+
x: `var(--${string})`;
|
|
73
|
+
y: `var(--${string})`;
|
|
74
74
|
};
|
|
75
75
|
separator: {
|
|
76
|
-
x: `var(--${string})
|
|
77
|
-
y: `var(--${string})
|
|
76
|
+
x: `var(--${string})`;
|
|
77
|
+
y: `var(--${string})`;
|
|
78
78
|
};
|
|
79
79
|
item: {
|
|
80
|
-
x: `var(--${string})
|
|
81
|
-
y: `var(--${string})
|
|
82
|
-
gap: `var(--${string})
|
|
80
|
+
x: `var(--${string})`;
|
|
81
|
+
y: `var(--${string})`;
|
|
82
|
+
gap: `var(--${string})`;
|
|
83
83
|
};
|
|
84
84
|
};
|
|
85
85
|
declare const optionsClassNames: OptionsClassNames;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/picker/index.tsx"],"names":["Picker","PickerItem"],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/picker/index.tsx"],"names":["Picker","PickerItem"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n Collection,\n type ContextValue,\n ListBox,\n ListBoxItem,\n type ListBoxItemRenderProps,\n type ListBoxRenderProps,\n ListBoxSection,\n Provider,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useTheme } from '../../hooks/use-theme';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport {\n pickerClassNames,\n pickerItemStateVars,\n pickerStateVars,\n} from './picker.css';\nimport type { PickerItemProps, PickerProps } from './types';\n\nexport const PickerContext =\n createContext<ContextValue<PickerProps<unknown>, HTMLDivElement>>(null);\n\nexport const PickerItemContext =\n createContext<ContextValue<PickerItemProps<unknown>, HTMLDivElement>>(null);\n\n/**\n * Generic stylable picker that supports the functionality (sans drag and drop) of\n * React Aria's ListBox: https://react-spectrum.adobe.com/react-aria/ListBox.html\n *\n * NOTE: The picker items does not support sections or separators\n */\nexport const Picker = forwardRef(function Picker<T extends object>(\n props: PickerProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n PickerContext,\n );\n\n const finalProps = useDefaultProps(resolvedProps, 'Picker');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n columns,\n items,\n layout = 'stack',\n orientation = 'horizontal',\n selectionMode = 'single',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(pickerClassNames, theme.Picker, classNamesProp),\n [theme.Picker, classNamesProp],\n );\n\n const values = useMemo<\n [\n [\n typeof PickerItemContext,\n ContextValue<PickerItemProps<unknown>, HTMLDivElement>,\n ],\n ]\n >(() => [[PickerItemContext, { classNames }]], [classNames]);\n\n const style = useCallback(\n ({ state, ...renderProps }: ListBoxRenderProps) =>\n inlineVars(pickerStateVars, {\n ...renderProps,\n columns,\n layout,\n orientation,\n }),\n [columns, layout, orientation],\n );\n\n const children = useMemo(() => {\n if (!(childrenProp || items)) {\n return null;\n }\n\n return (\n <ListBoxSection\n className={classNames?.list?.list}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n >\n {typeof childrenProp === 'function' ? (\n <Collection items={items}>{childrenProp}</Collection>\n ) : (\n childrenProp\n )}\n </ListBoxSection>\n );\n }, [childrenProp, items, classNames?.list?.list, ariaLabel, ariaLabelledBy]);\n\n return (\n <Provider values={values}>\n <ListBox<T>\n {...rest}\n ref={resolvedRef}\n className={classNames?.list?.container}\n items={items}\n layout={layout}\n orientation={orientation}\n selectionMode={selectionMode}\n style={style}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n >\n {children}\n </ListBox>\n </Provider>\n );\n});\n\nexport const PickerItem = forwardRef(function PickerItem<T extends object>(\n props: PickerItemProps<T>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const [resolvedProps, resolvedRef] = useContextProps(\n props,\n ref,\n PickerItemContext,\n );\n\n const {\n children: childrenProp,\n id,\n classNames: classNamesProp,\n textValue = typeof childrenProp === 'string' ? childrenProp : undefined,\n ...rest\n } = resolvedProps;\n\n const theme = useTheme();\n\n const classNames = useMemo(\n () => mergeClassNames(pickerClassNames, theme.Picker, classNamesProp),\n [theme.Picker, classNamesProp],\n );\n\n const style = useCallback(\n (renderProps: ListBoxItemRenderProps) =>\n inlineVars(pickerItemStateVars, renderProps),\n [],\n );\n\n const children = useCallback(\n (renderProps: ListBoxItemRenderProps) => (\n <div className={classNames?.item?.item}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n defaultChildren: null,\n })}\n </div>\n ),\n [childrenProp, classNames?.item?.item],\n );\n\n return (\n <ListBoxItem<T>\n {...rest}\n ref={resolvedRef as unknown as React.Ref<T>}\n id={id ?? textValue}\n className={classNames?.item?.container}\n style={style}\n textValue={textValue}\n >\n {children}\n </ListBoxItem>\n );\n});\n"]}
|
|
@@ -7,30 +7,30 @@ declare const pickerContainers: {
|
|
|
7
7
|
item: string;
|
|
8
8
|
};
|
|
9
9
|
declare const pickerSpaceVars: {
|
|
10
|
-
gap: `var(--${string})
|
|
10
|
+
gap: `var(--${string})`;
|
|
11
11
|
};
|
|
12
12
|
declare const pickerStateVars: {
|
|
13
|
-
columns: `var(--${string})
|
|
14
|
-
layout: `var(--${string})
|
|
15
|
-
orientation: `var(--${string})
|
|
16
|
-
isEmpty: `var(--${string})
|
|
17
|
-
isFocused: `var(--${string})
|
|
18
|
-
isFocusVisible: `var(--${string})
|
|
13
|
+
columns: `var(--${string})`;
|
|
14
|
+
layout: `var(--${string})`;
|
|
15
|
+
orientation: `var(--${string})`;
|
|
16
|
+
isEmpty: `var(--${string})`;
|
|
17
|
+
isFocused: `var(--${string})`;
|
|
18
|
+
isFocusVisible: `var(--${string})`;
|
|
19
19
|
};
|
|
20
20
|
declare const pickerItemColorVars: {
|
|
21
|
-
background: `var(--${string})
|
|
22
|
-
border: `var(--${string})
|
|
23
|
-
color: `var(--${string})
|
|
21
|
+
background: `var(--${string})`;
|
|
22
|
+
border: `var(--${string})`;
|
|
23
|
+
color: `var(--${string})`;
|
|
24
24
|
};
|
|
25
25
|
declare const pickerItemStateVars: {
|
|
26
|
-
selectionMode: `var(--${string})
|
|
27
|
-
selectionBehavior: `var(--${string})
|
|
28
|
-
isDisabled: `var(--${string})
|
|
29
|
-
isFocused: `var(--${string})
|
|
30
|
-
isFocusVisible: `var(--${string})
|
|
31
|
-
isHovered: `var(--${string})
|
|
32
|
-
isPressed: `var(--${string})
|
|
33
|
-
isSelected: `var(--${string})
|
|
26
|
+
selectionMode: `var(--${string})`;
|
|
27
|
+
selectionBehavior: `var(--${string})`;
|
|
28
|
+
isDisabled: `var(--${string})`;
|
|
29
|
+
isFocused: `var(--${string})`;
|
|
30
|
+
isFocusVisible: `var(--${string})`;
|
|
31
|
+
isHovered: `var(--${string})`;
|
|
32
|
+
isPressed: `var(--${string})`;
|
|
33
|
+
isSelected: `var(--${string})`;
|
|
34
34
|
};
|
|
35
35
|
declare const pickerClassNames: PickerClassNames;
|
|
36
36
|
|
|
@@ -29,14 +29,18 @@ var defaultMapping = {
|
|
|
29
29
|
};
|
|
30
30
|
var PopoverContext = createContext(null);
|
|
31
31
|
var Popover = forwardRef(function Popover2(props, ref) {
|
|
32
|
-
[
|
|
33
|
-
|
|
32
|
+
const [contextProps, contextRef] = useContextProps(
|
|
33
|
+
props,
|
|
34
|
+
ref,
|
|
35
|
+
PopoverContext
|
|
36
|
+
);
|
|
37
|
+
const finalProps = useDefaultProps(contextProps, "Popover");
|
|
34
38
|
const {
|
|
35
39
|
children: childrenProp,
|
|
36
40
|
classNames: classNamesProp,
|
|
37
41
|
mapping: mappingProp,
|
|
38
42
|
...rest
|
|
39
|
-
} =
|
|
43
|
+
} = finalProps;
|
|
40
44
|
const theme = useTheme();
|
|
41
45
|
const mapping = useMemo(
|
|
42
46
|
() => ({ ...defaultMapping, ...mappingProp }),
|
|
@@ -130,7 +134,7 @@ var Popover = forwardRef(function Popover2(props, ref) {
|
|
|
130
134
|
Popover$1,
|
|
131
135
|
{
|
|
132
136
|
...rest,
|
|
133
|
-
ref,
|
|
137
|
+
ref: contextRef,
|
|
134
138
|
className: classNames?.popover?.container,
|
|
135
139
|
style,
|
|
136
140
|
children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/popover/index.tsx"],"names":["Popover","RACDialog","RACPopover"],"mappings":";;;;;;;;;;;;;;;;;AA6CA,IAAM,cAAA,GAAiC;AAAA,EACrC,SAAS,QAAA,CAAS,EAAA;AAAA,EAClB,OAAA,EAAS;AAAA,IACP,OAAA,EAAS,aAAA;AAAA,IACT,WAAA,EAAa,YAAA;AAAA,IACb,OAAA,EAAS;AAAA,GACX;AAAA,EACA,OAAA,EAAS;AAAA,IACP,IAAA,EAAM;AAAA,GACR;AAAA,EACA,KAAA,EAAO,EAAE,IAAA,EAAM,IAAA,EAAM,SAAS,MAAA;AAChC,CAAA;AAEO,IAAM,cAAA,GACX,cAAuD,IAAI;AAEtD,IAAM,OAAA,GAAU,UAAA,CAAW,SAASA,QAAAA,CACzC,OACA,GAAA,EACA;AACA,EAAA,CAAC,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/popover/index.tsx"],"names":["Popover","RACDialog","RACPopover"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n createContext,\n type ForwardedRef,\n forwardRef,\n type HTMLAttributes,\n useCallback,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n DEFAULT_SLOT,\n Provider,\n Dialog as RACDialog,\n Popover as RACPopover,\n type PopoverRenderProps as RACPopoverRenderProps,\n} from 'react-aria-components';\nimport { useContextProps } from '../../hooks/use-context-props';\nimport { useDefaultProps } from '../../hooks/use-defaults';\nimport { useSlot } from '../../hooks/use-slot';\nimport { useTheme } from '../../hooks/use-theme';\nimport { headings } from '../../styles/typography.css';\nimport { inlineVars } from '../../utils/css';\nimport { callRenderProps, mergeClassNames } from '../../utils/props';\nimport { AriaHeadingContext } from '../aria';\nimport { ButtonContext } from '../button';\nimport { ElementContext } from '../element';\nimport { GroupContext } from '../group';\nimport { popoverClassNames, popoverStateVars } from './popover.css';\nimport type { ButtonProps } from '../button/types';\nimport type { ElementProps } from '../element/types';\nimport type { GroupProps } from '../group/types';\nimport type { PopoverMapping, PopoverProps } from './types';\n\nconst defaultMapping: PopoverMapping = {\n heading: headings.v4,\n actions: {\n context: ButtonContext,\n orientation: 'horizontal',\n reverse: true,\n },\n primary: {\n size: 'sm',\n },\n close: { size: 'sm', variant: 'bare' },\n};\n\nexport const PopoverContext =\n createContext<ContextValue<PopoverProps, HTMLElement>>(null);\n\nexport const Popover = forwardRef(function Popover(\n props: PopoverProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const [contextProps, contextRef] = useContextProps(\n props,\n ref,\n PopoverContext,\n );\n const finalProps = useDefaultProps(contextProps, 'Popover');\n\n const {\n children: childrenProp,\n classNames: classNamesProp,\n mapping: mappingProp,\n ...rest\n } = finalProps;\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({ ...defaultMapping, ...mappingProp }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(popoverClassNames, theme.Popover, classNamesProp, {\n popover: {\n container: theme.className, // required to consume global theme within Popover\n },\n }),\n [theme.className, theme.Popover, classNamesProp],\n );\n\n const [headerRef, hasHeader] = useSlot();\n\n const style = useCallback(\n (renderProps: RACPopoverRenderProps) =>\n inlineVars(popoverStateVars, {\n ...theme.style, // required to consume global styles within Popover\n ...renderProps,\n hasHeader,\n }),\n [theme.style, hasHeader],\n );\n\n const values = useMemo<\n [\n [\n typeof ElementContext,\n ContextValue<\n ElementProps<\n ContextValue<HTMLAttributes<HTMLElement>, HTMLHeadingElement>,\n ContextValue<\n GroupProps<ButtonProps, HTMLButtonElement>,\n HTMLDivElement\n >\n >,\n HTMLElement\n >,\n ],\n ]\n >(\n () => [\n [\n ElementContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n header: {\n as: 'header',\n className: classNames?.header,\n ref: headerRef,\n values: [\n [\n AriaHeadingContext,\n {\n className: mapping.heading,\n slot: 'title',\n },\n ],\n [GroupContext, null],\n ],\n },\n content: { className: classNames?.content },\n footer: {\n as: 'footer',\n className: classNames?.footer,\n values: [\n [AriaHeadingContext, null],\n [\n GroupContext,\n {\n values: {\n slots: {\n [DEFAULT_SLOT]: mapping.primary ?? {},\n close: mapping.close ?? {},\n },\n },\n ...mapping.actions,\n },\n ],\n ],\n },\n },\n },\n ],\n ],\n [\n classNames?.header,\n classNames?.content,\n classNames?.footer,\n headerRef,\n mapping.actions,\n mapping.heading,\n mapping.primary,\n mapping.close,\n ],\n );\n\n const children = useCallback(\n (renderProps: RACPopoverRenderProps) => (\n <Provider values={values}>\n <RACDialog className={classNames?.popover?.popover}>\n {({ close }) =>\n callRenderProps(childrenProp, {\n ...renderProps,\n close,\n defaultChildren: null,\n })\n }\n </RACDialog>\n </Provider>\n ),\n [childrenProp, classNames?.popover?.popover, values],\n );\n\n return (\n <RACPopover\n {...rest}\n ref={contextRef}\n className={classNames?.popover?.container}\n style={style}\n >\n {children}\n </RACPopover>\n );\n});\n"]}
|
|
@@ -14,31 +14,31 @@ import '@react-types/shared';
|
|
|
14
14
|
declare const popoverContainer: string;
|
|
15
15
|
declare const popoverColorVars: {
|
|
16
16
|
content: {
|
|
17
|
-
color: `var(--${string})
|
|
17
|
+
color: `var(--${string})`;
|
|
18
18
|
};
|
|
19
19
|
};
|
|
20
20
|
declare const popoverSpaceVars: {
|
|
21
|
-
width: `var(--${string})
|
|
22
|
-
x: `var(--${string})
|
|
23
|
-
y: `var(--${string})
|
|
21
|
+
width: `var(--${string})`;
|
|
22
|
+
x: `var(--${string})`;
|
|
23
|
+
y: `var(--${string})`;
|
|
24
24
|
gap: {
|
|
25
|
-
default: `var(--${string})
|
|
25
|
+
default: `var(--${string})`;
|
|
26
26
|
header: {
|
|
27
|
-
after: `var(--${string})
|
|
27
|
+
after: `var(--${string})`;
|
|
28
28
|
};
|
|
29
29
|
content: {
|
|
30
|
-
before: `var(--${string})
|
|
30
|
+
before: `var(--${string})`;
|
|
31
31
|
};
|
|
32
32
|
footer: {
|
|
33
|
-
before: `var(--${string})
|
|
33
|
+
before: `var(--${string})`;
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
36
|
};
|
|
37
37
|
declare const popoverStateVars: {
|
|
38
|
-
hasHeader: `var(--${string})
|
|
39
|
-
placement: `var(--${string})
|
|
40
|
-
isEntering: `var(--${string})
|
|
41
|
-
isExiting: `var(--${string})
|
|
38
|
+
hasHeader: `var(--${string})`;
|
|
39
|
+
placement: `var(--${string})`;
|
|
40
|
+
isEntering: `var(--${string})`;
|
|
41
|
+
isExiting: `var(--${string})`;
|
|
42
42
|
};
|
|
43
43
|
declare const popoverClassNames: PopoverClassNames;
|
|
44
44
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/query-builder/action-element.tsx"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/action-element.tsx"],"names":[],"mappings":";;;;;;AAkBO,SAAS,aAAA,CAAc;AAAA,EAC5B,QAAA;AAAA,EACA,mBAAA;AAAA,EACA,KAAA,EAAO,SAAA;AAAA,EACP;AACF,CAAA,EAAgB;AACd,EAAA,MAAM,WAAA,GAAc,WAAA;AAAA,IAClB,CAAC,KAAA,KAAsB,aAAA,CAAc,iBAAA,CAAkB,KAAK,CAAC,CAAA;AAAA,IAC7D,CAAC,aAAa;AAAA,GAChB;AAEA,EAAA,MAAM,KAAA,GAAQ,OAAA;AAAA,IACZ,MACE,mBAAA,EAAqB,KAAA,IAAS,QAAA,GAC1B,oBAAoB,KAAA,GACpB,SAAA;AAAA,IACN,CAAC,mBAAA,EAAqB,KAAA,EAAO,QAAA,EAAU,SAAS;AAAA,GAClD;AAEA,EAAA,uBACE,GAAA,CAAC,UAAO,UAAA,EAAY,QAAA,IAAY,CAAC,mBAAA,EAAqB,OAAA,EAAS,aAC5D,QAAA,EAAA,KAAA,EACH,CAAA;AAEJ","file":"action-element.js","sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { useCallback, useMemo } from 'react';\nimport { Button } from '../button';\nimport { pressToMouseEvent } from './utils';\nimport type { PressEvent } from '@react-types/shared';\nimport type { ActionProps } from './types';\n\nexport function ActionElement({\n disabled,\n disabledTranslation,\n title: titleProp,\n handleOnClick,\n}: ActionProps) {\n const handlePress = useCallback(\n (event: PressEvent) => handleOnClick(pressToMouseEvent(event)),\n [handleOnClick],\n );\n\n const title = useMemo(\n () =>\n disabledTranslation?.title && disabled\n ? disabledTranslation.title\n : titleProp,\n [disabledTranslation?.title, disabled, titleProp],\n );\n\n return (\n <Button isDisabled={disabled && !disabledTranslation} onPress={handlePress}>\n {title}\n </Button>\n );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/query-builder/dataset-sample.ts"],"names":[],"mappings":"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","file":"dataset-sample.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport type {\n Field,\n Option,\n OptionGroup,\n RuleType,\n ValidationResult,\n ValueEditorType,\n} from 'react-querybuilder';\nimport { z } from 'zod';\n\n// Example of an options with grouping\nexport const serviceCityOptions: OptionGroup[] = [\n {\n label: 'Alaska',\n options: [\n { name: 'Anchorage', label: 'Anchorage', value: 'Anchorage' },\n { name: 'Juneau', label: 'Juneau', value: 'Juneau' },\n {\n name: 'Fairbanks',\n label: 'Fairbanks',\n value: 'Fairbanks',\n },\n { name: 'Sitka', label: 'Sitka', value: 'Sitka' },\n ],\n },\n {\n label: 'Alabama',\n options: [\n { name: 'Montgomery', label: 'Montgomery', value: 'Montgomery' },\n { name: 'Birmingham', label: 'Birmingham', value: 'Birmingham' },\n {\n name: 'Huntsville',\n label: 'Huntsville',\n value: 'Huntsville',\n },\n { name: 'Mobile', label: 'Mobile', value: 'Mobile' },\n ],\n },\n];\n\n// Example of options\nexport const airportUseOptions: Option[] = [\n { name: 'Private', label: 'Private', value: 'Private' },\n { name: 'Public', label: 'Public', value: 'Public' },\n { name: 'Mixed', label: 'Mixed', value: 'Mixed' },\n { name: 'Unknown', label: 'Unknown', value: 'Unknown' },\n];\n\n// Example of radio options\nexport const airportTypeOptions: Option[] = [\n { name: 'Heliport', label: 'Heliport', value: 'Heliport' },\n { name: 'Aerodrome', label: 'Aerodrome', value: 'Aerodrome' },\n { name: 'Unknown', label: 'Unknown', value: 'Unknown' },\n];\n\ntype FieldTypes = 'bool' | 'i32' | 'str' | 'f64' | 'date' | 'datetime' | 'time';\ntype FieldConfig = Partial<{\n inputType: 'text' | 'number' | 'date' | 'datetime-local' | 'time';\n operators: Option[];\n validator: (rule: RuleType) => ValidationResult;\n valueEditorType: ValueEditorType;\n}>;\n\nconst typeMap: Record<FieldTypes, FieldConfig> = {\n i32: {\n inputType: 'number', // as in HTML input type <input type=\"number\">\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: '<', value: '<', label: 'less than' } as const,\n { name: '>', value: '>', label: 'greater than' } as const,\n { name: '<=', value: '<=', label: 'less than equal' } as const,\n { name: '>=', value: '>=', label: 'greater than equal' } as const,\n { name: 'between', value: 'between', label: 'between' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n ],\n validator: (rule) => ({\n valid: z\n .union([\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n z.tuple([\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n ]),\n ])\n .safeParse(rule.value).success,\n reasons: ['Number must be in range.'],\n }),\n },\n f64: {\n inputType: 'number',\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: '<', value: '<', label: 'less than' } as const,\n { name: '>', value: '>', label: 'greater than' } as const,\n { name: '<=', value: '<=', label: 'less than equal' } as const,\n { name: '>=', value: '>=', label: 'greater than equal' } as const,\n { name: 'between', value: 'BETWEEN', label: 'between' } as const,\n { name: 'in', value: 'IN', label: 'in' } as const,\n ],\n validator: (rule) => ({\n valid: z.coerce\n .number()\n .int()\n .gte(-9_007_199_254_740_991)\n .lte(9_007_199_254_740_991)\n .safeParse(rule.value).success,\n reasons: ['Number must be in range.'],\n }),\n },\n bool: {\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n validator: (rule) => ({\n valid: z.coerce.boolean().safeParse(rule.value).success,\n reasons: ['Value is required'],\n }),\n valueEditorType: 'checkbox',\n },\n str: {\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: 'like', value: 'like', label: 'like' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n ],\n inputType: 'text',\n validator: (rule) => ({\n valid: z.string().min(1).safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n date: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'date',\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n datetime: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'datetime-local', // mm/dd/yyyy hh:mm a\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n time: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'time', // hh:mm a\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n};\n\nexport const fields = [\n {\n id: 'AK_HIGH',\n name: 'AK_HIGH',\n label: 'AK High',\n type: 'i32',\n ...typeMap.i32,\n },\n {\n id: 'AK_LOW',\n name: 'AK_LOW',\n label: 'AK Low',\n type: 'i32',\n ...typeMap.i32,\n },\n {\n id: 'COUNTRY',\n name: 'COUNTRY',\n label: 'Country',\n type: 'str',\n ...typeMap.str,\n },\n {\n id: 'ELEVATION',\n name: 'ELEVATION',\n label: 'Elevation',\n type: 'f64',\n },\n {\n id: 'OPERSTATUS',\n name: 'OPERSTATUS',\n label: 'Is Operational',\n type: 'str',\n defaultValue: false,\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n ...typeMap.bool,\n },\n {\n id: 'PRIVATEUSE',\n name: 'PRIVATEUSE',\n label: 'Private Use',\n type: 'str',\n valueEditorType: 'multiselect',\n values: airportUseOptions,\n operators: [{ name: 'in', value: 'in', label: 'in' } as const],\n },\n {\n id: 'DONUTS',\n name: 'DONUTS',\n label: 'Has Donuts',\n type: 'bool',\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n valueEditorType: 'switch',\n },\n {\n id: 'SERVCITY',\n name: 'SERVCITY',\n valueEditorType: 'select',\n values: serviceCityOptions,\n label: 'Service City',\n type: 'str',\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: 'like', value: 'like', label: 'like' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n { name: 'between', value: 'between', label: 'between' } as const,\n ],\n },\n {\n id: 'TYPE_CODE',\n name: 'TYPE_CODE',\n label: 'Type Code',\n type: 'str',\n valueEditorType: 'radio',\n values: airportTypeOptions,\n defaultValue: 'Aerodrome',\n },\n {\n id: 'NOTES',\n name: 'NOTES',\n label: 'Operator Notes',\n type: 'str',\n valueEditorType: 'textarea',\n },\n {\n id: 'NICKNAME',\n name: 'NICKNAME',\n label: 'Airport Nickname',\n type: 'str',\n ...typeMap.str,\n },\n {\n id: 'ESTABLISHED',\n name: 'ESTABLISHED',\n label: 'Established',\n type: 'date',\n ...typeMap.date,\n },\n {\n id: 'MAINTENANCE',\n name: 'MAINTENANCE',\n label: 'Maintenance',\n type: 'datetime',\n ...typeMap.datetime,\n },\n {\n id: 'PEAK_TRAFFIC',\n name: 'PEAK_TRAFFIC',\n label: 'Peak Traffic',\n type: 'time',\n ...typeMap.time,\n },\n] satisfies Field[];\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/dataset-sample.ts"],"names":[],"mappings":"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","file":"dataset-sample.js","sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { z } from 'zod';\nimport type {\n Field,\n Option,\n OptionGroup,\n RuleType,\n ValidationResult,\n ValueEditorType,\n} from 'react-querybuilder';\n\n// Example of an options with grouping\nexport const serviceCityOptions: OptionGroup[] = [\n {\n label: 'Alaska',\n options: [\n { name: 'Anchorage', label: 'Anchorage', value: 'Anchorage' },\n { name: 'Juneau', label: 'Juneau', value: 'Juneau' },\n {\n name: 'Fairbanks',\n label: 'Fairbanks',\n value: 'Fairbanks',\n },\n { name: 'Sitka', label: 'Sitka', value: 'Sitka' },\n ],\n },\n {\n label: 'Alabama',\n options: [\n { name: 'Montgomery', label: 'Montgomery', value: 'Montgomery' },\n { name: 'Birmingham', label: 'Birmingham', value: 'Birmingham' },\n {\n name: 'Huntsville',\n label: 'Huntsville',\n value: 'Huntsville',\n },\n { name: 'Mobile', label: 'Mobile', value: 'Mobile' },\n ],\n },\n];\n\n// Example of options\nexport const airportUseOptions: Option[] = [\n { name: 'Private', label: 'Private', value: 'Private' },\n { name: 'Public', label: 'Public', value: 'Public' },\n { name: 'Mixed', label: 'Mixed', value: 'Mixed' },\n { name: 'Unknown', label: 'Unknown', value: 'Unknown' },\n];\n\n// Example of radio options\nexport const airportTypeOptions: Option[] = [\n { name: 'Heliport', label: 'Heliport', value: 'Heliport' },\n { name: 'Aerodrome', label: 'Aerodrome', value: 'Aerodrome' },\n { name: 'Unknown', label: 'Unknown', value: 'Unknown' },\n];\n\ntype FieldTypes = 'bool' | 'i32' | 'str' | 'f64' | 'date' | 'datetime' | 'time';\ntype FieldConfig = Partial<{\n inputType: 'text' | 'number' | 'date' | 'datetime-local' | 'time';\n operators: Option[];\n validator: (rule: RuleType) => ValidationResult;\n valueEditorType: ValueEditorType;\n}>;\n\nconst typeMap: Record<FieldTypes, FieldConfig> = {\n i32: {\n inputType: 'number', // as in HTML input type <input type=\"number\">\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: '<', value: '<', label: 'less than' } as const,\n { name: '>', value: '>', label: 'greater than' } as const,\n { name: '<=', value: '<=', label: 'less than equal' } as const,\n { name: '>=', value: '>=', label: 'greater than equal' } as const,\n { name: 'between', value: 'between', label: 'between' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n ],\n validator: (rule) => ({\n valid: z\n .union([\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n z.tuple([\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n z.coerce.number().int().gte(-2_147_483_648).lte(2_147_483_647),\n ]),\n ])\n .safeParse(rule.value).success,\n reasons: ['Number must be in range.'],\n }),\n },\n f64: {\n inputType: 'number',\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: '<', value: '<', label: 'less than' } as const,\n { name: '>', value: '>', label: 'greater than' } as const,\n { name: '<=', value: '<=', label: 'less than equal' } as const,\n { name: '>=', value: '>=', label: 'greater than equal' } as const,\n { name: 'between', value: 'BETWEEN', label: 'between' } as const,\n { name: 'in', value: 'IN', label: 'in' } as const,\n ],\n validator: (rule) => ({\n valid: z.coerce\n .number()\n .int()\n .gte(-9_007_199_254_740_991)\n .lte(9_007_199_254_740_991)\n .safeParse(rule.value).success,\n reasons: ['Number must be in range.'],\n }),\n },\n bool: {\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n validator: (rule) => ({\n valid: z.coerce.boolean().safeParse(rule.value).success,\n reasons: ['Value is required'],\n }),\n valueEditorType: 'checkbox',\n },\n str: {\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: 'like', value: 'like', label: 'like' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n ],\n inputType: 'text',\n validator: (rule) => ({\n valid: z.string().min(1).safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n date: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'date',\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n datetime: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'datetime-local', // mm/dd/yyyy hh:mm a\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n time: {\n operators: [\n { name: 'equals', value: 'tequals', label: 'is' } as const,\n { name: 'during', value: 'during', label: 'occurs between' } as const,\n { name: 'before', value: 'before', label: 'ends before' } as const,\n { name: 'after', value: 'after', label: 'starts after' } as const,\n {\n name: 'overlapped',\n value: 'overlappedby',\n label: 'starts during',\n } as const,\n { name: 'overlaps', value: 'toverlaps', label: 'ends during' } as const,\n ],\n inputType: 'time', // hh:mm a\n validator: (rule) => ({\n valid: z\n .union([\n z.string().min(1),\n z.tuple([z.string().min(1), z.string().min(1)]),\n ])\n .safeParse(rule.value).success,\n reasons: ['At least one character is required.'],\n }),\n },\n};\n\nexport const fields = [\n {\n id: 'AK_HIGH',\n name: 'AK_HIGH',\n label: 'AK High',\n type: 'i32',\n ...typeMap.i32,\n },\n {\n id: 'AK_LOW',\n name: 'AK_LOW',\n label: 'AK Low',\n type: 'i32',\n ...typeMap.i32,\n },\n {\n id: 'COUNTRY',\n name: 'COUNTRY',\n label: 'Country',\n type: 'str',\n ...typeMap.str,\n },\n {\n id: 'ELEVATION',\n name: 'ELEVATION',\n label: 'Elevation',\n type: 'f64',\n },\n {\n id: 'OPERSTATUS',\n name: 'OPERSTATUS',\n label: 'Is Operational',\n type: 'str',\n defaultValue: false,\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n ...typeMap.bool,\n },\n {\n id: 'PRIVATEUSE',\n name: 'PRIVATEUSE',\n label: 'Private Use',\n type: 'str',\n valueEditorType: 'multiselect',\n values: airportUseOptions,\n operators: [{ name: 'in', value: 'in', label: 'in' } as const],\n },\n {\n id: 'DONUTS',\n name: 'DONUTS',\n label: 'Has Donuts',\n type: 'bool',\n operators: [{ name: '=', value: '=', label: 'is' } as const],\n valueEditorType: 'switch',\n },\n {\n id: 'SERVCITY',\n name: 'SERVCITY',\n valueEditorType: 'select',\n values: serviceCityOptions,\n label: 'Service City',\n type: 'str',\n operators: [\n { name: '=', value: '=', label: 'is' } as const,\n { name: 'like', value: 'like', label: 'like' } as const,\n { name: 'in', value: 'in', label: 'in' } as const,\n { name: 'between', value: 'between', label: 'between' } as const,\n ],\n },\n {\n id: 'TYPE_CODE',\n name: 'TYPE_CODE',\n label: 'Type Code',\n type: 'str',\n valueEditorType: 'radio',\n values: airportTypeOptions,\n defaultValue: 'Aerodrome',\n },\n {\n id: 'NOTES',\n name: 'NOTES',\n label: 'Operator Notes',\n type: 'str',\n valueEditorType: 'textarea',\n },\n {\n id: 'NICKNAME',\n name: 'NICKNAME',\n label: 'Airport Nickname',\n type: 'str',\n ...typeMap.str,\n },\n {\n id: 'ESTABLISHED',\n name: 'ESTABLISHED',\n label: 'Established',\n type: 'date',\n ...typeMap.date,\n },\n {\n id: 'MAINTENANCE',\n name: 'MAINTENANCE',\n label: 'Maintenance',\n type: 'datetime',\n ...typeMap.datetime,\n },\n {\n id: 'PEAK_TRAFFIC',\n name: 'PEAK_TRAFFIC',\n label: 'Peak Traffic',\n type: 'time',\n ...typeMap.time,\n },\n] satisfies Field[];\n"]}
|