@mittwald/flow-react-components 0.2.0-alpha.555 → 0.2.0-alpha.557
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 +10 -0
- package/dist/assets/doc-properties.json +23696 -23660
- package/dist/css/all.css +1 -1
- package/dist/js/components/src/components/Autocomplete/Autocomplete.mjs +7 -3
- package/dist/js/components/src/components/Autocomplete/Autocomplete.mjs.map +1 -1
- package/dist/js/components/src/components/CartesianChart/CartesianChart.mjs +0 -1
- package/dist/js/components/src/components/CartesianChart/CartesianChart.mjs.map +1 -1
- package/dist/js/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs +98 -1
- package/dist/js/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs.map +1 -1
- package/dist/js/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs +0 -1
- package/dist/js/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs.map +1 -1
- package/dist/js/components/src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.mjs +0 -1
- package/dist/js/components/src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.mjs.map +1 -1
- package/dist/js/components/src/components/Overlay/Overlay.mjs +103 -2
- package/dist/js/components/src/components/Overlay/Overlay.mjs.map +1 -1
- package/dist/js/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs +0 -1
- package/dist/js/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs.map +1 -1
- package/dist/js/components/src/components/Popover/Popover.mjs +103 -2
- package/dist/js/components/src/components/Popover/Popover.mjs.map +1 -1
- package/dist/js/components/src/components/TextFieldBase/TextFieldBase.mjs +1 -1
- package/dist/js/components/src/components/TextFieldBase/TextFieldBase.mjs.map +1 -1
- package/dist/js/components/src/components/Tooltip/Tooltip.mjs +106 -2
- package/dist/js/components/src/components/Tooltip/Tooltip.mjs.map +1 -1
- package/dist/js/components/src/integrations/react-hook-form/components/Field/Field.mjs +1 -2
- package/dist/js/components/src/integrations/react-hook-form/components/Field/Field.mjs.map +1 -1
- package/dist/js/components/src/lib/hooks/useFieldError.mjs +0 -1
- package/dist/js/components/src/lib/hooks/useFieldError.mjs.map +1 -1
- package/dist/js/components/src/lib/propsContext/components/ClearPropsContext.mjs.map +1 -1
- package/dist/js/components/src/lib/propsContext/inherit/types.mjs +1 -4
- package/dist/js/components/src/lib/propsContext/inherit/types.mjs.map +1 -1
- package/dist/js/flr-universal.mjs +1 -2
- package/dist/js/flr-universal.mjs.map +1 -1
- package/dist/types/components/Autocomplete/Autocomplete.d.ts +4 -1
- package/dist/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/types/components/ClearPropsContext/index.d.ts +0 -1
- package/dist/types/components/ClearPropsContext/index.d.ts.map +1 -1
- package/dist/types/integrations/react-hook-form/components/Field/Field.d.ts.map +1 -1
- package/dist/types/lib/propsContext/components/ClearPropsContext.d.ts +0 -1
- package/dist/types/lib/propsContext/components/ClearPropsContext.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/js/components/src/views/ClearPropsContextView.mjs +0 -15
- package/dist/js/components/src/views/ClearPropsContextView.mjs.map +0 -1
- package/dist/types/components/ClearPropsContext/view.d.ts +0 -8
- package/dist/types/components/ClearPropsContext/view.d.ts.map +0 -1
- package/dist/types/views/ClearPropsContextView.d.ts +0 -5
- package/dist/types/views/ClearPropsContextView.d.ts.map +0 -1
|
@@ -16,9 +16,11 @@ import styles from './Autocomplete.module.scss.mjs';
|
|
|
16
16
|
import { useLocalizedStringFormatter, useFocusWithin, UNSAFE_PortalProvider } from 'react-aria';
|
|
17
17
|
import { emitElementValueChange } from '../../lib/react/emitElementValueChange.mjs';
|
|
18
18
|
import { useFieldComponent } from '../../lib/hooks/useFieldComponent.mjs';
|
|
19
|
+
import { useManagedValue } from '../../lib/hooks/useManagedValue.mjs';
|
|
19
20
|
|
|
20
21
|
const Autocomplete = flowComponent("Autocomplete", (props) => {
|
|
21
22
|
const { children, isInvalid, ...rest } = props;
|
|
23
|
+
const { value, handleOnChange } = useManagedValue(props);
|
|
22
24
|
const { contains } = Aria.useFilter({ sensitivity: "base" });
|
|
23
25
|
const stringFormatter = useLocalizedStringFormatter(locales);
|
|
24
26
|
const container = useRef(null);
|
|
@@ -39,12 +41,13 @@ const Autocomplete = flowComponent("Autocomplete", (props) => {
|
|
|
39
41
|
ref: triggerRef
|
|
40
42
|
};
|
|
41
43
|
const renderEmptyState = () => /* @__PURE__ */ jsx(Text, { className: styles.empty, children: stringFormatter.format("autocomplete.empty") });
|
|
42
|
-
const handleOnInputChange = (
|
|
43
|
-
if (!
|
|
44
|
+
const handleOnInputChange = (value2) => {
|
|
45
|
+
if (!value2) {
|
|
44
46
|
controller.close();
|
|
45
47
|
} else if (!controller.isOpen) {
|
|
46
48
|
controller.open();
|
|
47
49
|
}
|
|
50
|
+
handleOnChange?.(value2);
|
|
48
51
|
};
|
|
49
52
|
const handleOptionAction = (key) => {
|
|
50
53
|
const inputElement = triggerRef.current;
|
|
@@ -71,12 +74,13 @@ const Autocomplete = flowComponent("Autocomplete", (props) => {
|
|
|
71
74
|
...fieldPropsContext
|
|
72
75
|
};
|
|
73
76
|
return /* @__PURE__ */ jsxs("div", { ...fieldProps, children: [
|
|
74
|
-
/* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children: /* @__PURE__ */ jsx("div", { ...focusWithin.focusWithinProps, ref: container, children: /* @__PURE__ */ jsx(UNSAFE_PortalProvider, { getContainer: () => container.current, children: /* @__PURE__ */ jsxs(
|
|
77
|
+
/* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, clear: true, children: /* @__PURE__ */ jsx("div", { ...focusWithin.focusWithinProps, ref: container, children: /* @__PURE__ */ jsx(UNSAFE_PortalProvider, { getContainer: () => container.current, children: /* @__PURE__ */ jsxs(
|
|
75
78
|
Aria.Autocomplete,
|
|
76
79
|
{
|
|
77
80
|
onInputChange: handleOnInputChange,
|
|
78
81
|
filter: contains,
|
|
79
82
|
disableAutoFocusFirst: true,
|
|
83
|
+
inputValue: value,
|
|
80
84
|
...rest,
|
|
81
85
|
children: [
|
|
82
86
|
children,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.mjs","sources":["../../../../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import { useRef, type PropsWithChildren } from \"react\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { SearchFieldProps } from \"@/components/SearchField\";\nimport type { TextFieldProps } from \"@/components/TextField\";\nimport Options from \"@/components/Options\";\nimport { TunnelExit } from \"@mittwald/react-tunnel\";\nimport locales from \"./locales/*.locale.json\";\nimport Text from \"@/components/Text\";\nimport styles from \"./Autocomplete.module.scss\";\nimport {\n UNSAFE_PortalProvider,\n useFocusWithin,\n useLocalizedStringFormatter,\n} from \"react-aria\";\nimport { emitElementValueChange } from \"@/lib/react/emitElementValueChange\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nexport interface AutocompleteProps\n extends PropsWithChildren,\n PropsWithClassName,\n FlowComponentProps,\n Omit
|
|
1
|
+
{"version":3,"file":"Autocomplete.mjs","sources":["../../../../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import { useRef, type PropsWithChildren } from \"react\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { SearchFieldProps } from \"@/components/SearchField\";\nimport type { TextFieldProps } from \"@/components/TextField\";\nimport Options from \"@/components/Options\";\nimport { TunnelExit } from \"@mittwald/react-tunnel\";\nimport locales from \"./locales/*.locale.json\";\nimport Text from \"@/components/Text\";\nimport styles from \"./Autocomplete.module.scss\";\nimport {\n UNSAFE_PortalProvider,\n useFocusWithin,\n useLocalizedStringFormatter,\n} from \"react-aria\";\nimport { emitElementValueChange } from \"@/lib/react/emitElementValueChange\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { useManagedValue } from \"@/lib/hooks/useManagedValue\";\n\nexport interface AutocompleteProps\n extends PropsWithChildren,\n PropsWithClassName,\n FlowComponentProps,\n Omit<\n Aria.AutocompleteProps,\n \"children\" | \"onInputChange\" | \"inputValue\" | \"defaultInputValue\"\n > {\n isInvalid?: boolean;\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n}\n\n/** @flr-generate all */\nexport const Autocomplete = flowComponent(\"Autocomplete\", (props) => {\n const { children, isInvalid, ...rest } = props;\n\n const { value, handleOnChange } = useManagedValue(props);\n\n const { contains } = Aria.useFilter({ sensitivity: \"base\" });\n const stringFormatter = useLocalizedStringFormatter(locales);\n const container = useRef(null);\n const triggerRef = useRef<HTMLInputElement>(null);\n\n const controller = useOverlayController(\"Popover\", {\n reuseControllerFromContext: false,\n });\n\n const focusWithin = useFocusWithin({\n onBlurWithin: controller.close,\n });\n\n const inputProps: SearchFieldProps & TextFieldProps = {\n onKeyDown: (e) => {\n if (e.key === \"Enter\" && controller.isOpen) {\n e.preventDefault();\n }\n },\n isInvalid,\n ref: triggerRef,\n };\n\n const renderEmptyState = () => (\n <Text className={styles.empty}>\n {stringFormatter.format(\"autocomplete.empty\")}\n </Text>\n );\n\n const handleOnInputChange = (value: string) => {\n if (!value) {\n controller.close();\n } else if (!controller.isOpen) {\n controller.open();\n }\n\n handleOnChange?.(value);\n };\n\n const handleOptionAction = (key: Aria.Key) => {\n const inputElement = triggerRef.current;\n if (inputElement) {\n // Set value on input element and trigger change event\n emitElementValueChange(inputElement, String(key));\n }\n controller.close();\n };\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldPropsContext,\n fieldProps,\n } = useFieldComponent(props);\n\n const propsContext: PropsContext = {\n SearchField: inputProps,\n TextField: { ...inputProps, inputContext: Aria.AutocompleteContext },\n Option: {\n tunnelId: \"options\",\n },\n Popover: {\n className: styles.popover,\n },\n ...fieldPropsContext,\n };\n\n return (\n <div {...fieldProps}>\n <FieldErrorCaptureContext>\n <PropsContextProvider props={propsContext} clear>\n <div {...focusWithin.focusWithinProps} ref={container}>\n <UNSAFE_PortalProvider getContainer={() => container.current}>\n <Aria.Autocomplete\n onInputChange={handleOnInputChange}\n filter={contains}\n disableAutoFocusFirst\n inputValue={value}\n {...rest}\n >\n {children}\n <Options\n onAction={handleOptionAction}\n triggerRef={triggerRef}\n controller={controller}\n renderEmptyState={renderEmptyState}\n isNonModal\n placement=\"bottom start\"\n >\n <TunnelExit id=\"options\" />\n </Options>\n </Aria.Autocomplete>\n </UNSAFE_PortalProvider>\n </div>\n </PropsContextProvider>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </div>\n );\n});\n\nexport default Autocomplete;\n"],"names":["value"],"mappings":";;;;;;;;;;;;;;;;;;AAwCO,MAAM,YAAA,GAAe,aAAA,CAAc,cAAA,EAAgB,CAAC,KAAA,KAAU;AACnE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,GAAG,MAAK,GAAI,KAAA;AAEzC,EAAA,MAAM,EAAE,KAAA,EAAO,cAAA,EAAe,GAAI,gBAAgB,KAAK,CAAA;AAEvD,EAAA,MAAM,EAAE,UAAS,GAAI,IAAA,CAAK,UAAU,EAAE,WAAA,EAAa,QAAQ,CAAA;AAC3D,EAAA,MAAM,eAAA,GAAkB,4BAA4B,OAAO,CAAA;AAC3D,EAAA,MAAM,SAAA,GAAY,OAAO,IAAI,CAAA;AAC7B,EAAA,MAAM,UAAA,GAAa,OAAyB,IAAI,CAAA;AAEhD,EAAA,MAAM,UAAA,GAAa,qBAAqB,SAAA,EAAW;AAAA,IACjD,0BAAA,EAA4B;AAAA,GAC7B,CAAA;AAED,EAAA,MAAM,cAAc,cAAA,CAAe;AAAA,IACjC,cAAc,UAAA,CAAW;AAAA,GAC1B,CAAA;AAED,EAAA,MAAM,UAAA,GAAgD;AAAA,IACpD,SAAA,EAAW,CAAC,CAAA,KAAM;AAChB,MAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,UAAA,CAAW,MAAA,EAAQ;AAC1C,QAAA,CAAA,CAAE,cAAA,EAAe;AAAA,MACnB;AAAA,IACF,CAAA;AAAA,IACA,SAAA;AAAA,IACA,GAAA,EAAK;AAAA,GACP;AAEA,EAAA,MAAM,gBAAA,GAAmB,sBACvB,GAAA,CAAC,IAAA,EAAA,EAAK,SAAA,EAAW,OAAO,KAAA,EACrB,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,oBAAoB,CAAA,EAC9C,CAAA;AAGF,EAAA,MAAM,mBAAA,GAAsB,CAACA,MAAAA,KAAkB;AAC7C,IAAA,IAAI,CAACA,MAAAA,EAAO;AACV,MAAA,UAAA,CAAW,KAAA,EAAM;AAAA,IACnB,CAAA,MAAA,IAAW,CAAC,UAAA,CAAW,MAAA,EAAQ;AAC7B,MAAA,UAAA,CAAW,IAAA,EAAK;AAAA,IAClB;AAEA,IAAA,cAAA,GAAiBA,MAAK,CAAA;AAAA,EACxB,CAAA;AAEA,EAAA,MAAM,kBAAA,GAAqB,CAAC,GAAA,KAAkB;AAC5C,IAAA,MAAM,eAAe,UAAA,CAAW,OAAA;AAChC,IAAA,IAAI,YAAA,EAAc;AAEhB,MAAA,sBAAA,CAAuB,YAAA,EAAc,MAAA,CAAO,GAAG,CAAC,CAAA;AAAA,IAClD;AACA,IAAA,UAAA,CAAW,KAAA,EAAM;AAAA,EACnB,CAAA;AAEA,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,iBAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,WAAA,EAAa,UAAA;AAAA,IACb,WAAW,EAAE,GAAG,UAAA,EAAY,YAAA,EAAc,KAAK,mBAAA,EAAoB;AAAA,IACnE,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAK,GAAG,UAAA,EACP,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,4BACC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,OAAO,YAAA,EAAc,KAAA,EAAK,MAC9C,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAK,GAAG,WAAA,CAAY,gBAAA,EAAkB,KAAK,SAAA,EAC1C,QAAA,kBAAA,GAAA,CAAC,yBAAsB,YAAA,EAAc,MAAM,UAAU,OAAA,EACnD,QAAA,kBAAA,IAAA;AAAA,MAAC,IAAA,CAAK,YAAA;AAAA,MAAL;AAAA,QACC,aAAA,EAAe,mBAAA;AAAA,QACf,MAAA,EAAQ,QAAA;AAAA,QACR,qBAAA,EAAqB,IAAA;AAAA,QACrB,UAAA,EAAY,KAAA;AAAA,QACX,GAAG,IAAA;AAAA,QAEH,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,0BACD,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,QAAA,EAAU,kBAAA;AAAA,cACV,UAAA;AAAA,cACA,UAAA;AAAA,cACA,gBAAA;AAAA,cACA,UAAA,EAAU,IAAA;AAAA,cACV,SAAA,EAAU,cAAA;AAAA,cAEV,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,SAAA,EAAU;AAAA;AAAA;AAC3B;AAAA;AAAA,KACF,EACF,CAAA,EACF,CAAA,EACF,CAAA,EACF,CAAA;AAAA,wBACC,cAAA,EAAA,EAAe;AAAA,GAAA,EAClB,CAAA;AAEJ,CAAC;;;;"}
|
|
@@ -89,7 +89,6 @@ import 'luxon';
|
|
|
89
89
|
import '../NumberField/NumberField.mjs';
|
|
90
90
|
import '../Option/Option.mjs';
|
|
91
91
|
import '../../views/OverlayContentView.mjs';
|
|
92
|
-
import '../../views/ClearPropsContextView.mjs';
|
|
93
92
|
import '../../views/LoadingSpinnerView.mjs';
|
|
94
93
|
import '../PasswordCreationField/PasswordCreationField.mjs';
|
|
95
94
|
import '../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CartesianChart.mjs","sources":["../../../../../../src/components/CartesianChart/CartesianChart.tsx"],"sourcesContent":["import * as Recharts from \"recharts\";\nimport React, {\n Children,\n useEffect,\n useRef,\n useState,\n type ComponentProps,\n type FC,\n type PropsWithChildren,\n type ReactElement,\n type SVGProps,\n} from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./CartesianChart.module.scss\";\nimport Wrap from \"../Wrap\";\nimport { CartesianGrid } from \"../public\";\n\nexport interface CartesianChartEmptyViewProps {\n data?: ComponentProps<typeof Recharts.ComposedChart>[\"data\"];\n}\n\nexport interface CartesianChartProps\n extends Pick<\n ComponentProps<typeof Recharts.ComposedChart>,\n \"data\" | \"className\" | \"syncId\" | \"syncMethod\"\n >,\n PropsWithChildren {\n height?: string;\n /** View that is provided when data is empty/undefined */\n emptyView?: React.ComponentType<CartesianChartEmptyViewProps>;\n /**\n * Allow the height controlling container to set flex-grow: 1. Can only be\n * used in combination with `height`\n */\n flexGrow?: boolean;\n}\n\n/** @flr-generate all */\nexport const CartesianChart: FC<CartesianChartProps> = (props) => {\n const {\n children,\n data,\n className,\n height,\n flexGrow,\n emptyView: EmptyView,\n ...rest\n } = props;\n const rootClassName = clsx(styles.cartesianChart, className);\n\n const otherChildren: ReactElement[] = [];\n const gridChildren: ReactElement[] = [];\n\n Children.forEach(children, (child) => {\n if (!child) return;\n const element = child as ReactElement;\n\n if (element.type === CartesianGrid) {\n gridChildren.push(element);\n } else {\n otherChildren.push(element);\n }\n });\n\n const showEmptyView = (!data || data.length === 0) && EmptyView;\n\n const chartContainerRef = useRef<HTMLDivElement>(null);\n const [viewDimensions, setViewDimensions] = useState<Partial<\n SVGProps<SVGForeignObjectElement>\n > | null>(null);\n\n // resizing the foreignObject for the EmptyView on size changes\n useEffect(() => {\n if (showEmptyView) {\n const updateDimensions = () => {\n const svg = chartContainerRef.current?.querySelector(\n \"svg\",\n ) as SVGSVGElement | null;\n if (!svg) return;\n\n const clip = svg.querySelector(\"clipPath rect\");\n if (clip) {\n const x = parseFloat(clip.getAttribute(\"x\") ?? \"0\");\n const y = parseFloat(clip.getAttribute(\"y\") ?? \"0\");\n const width = parseFloat(clip.getAttribute(\"width\") ?? \"0\");\n const height = parseFloat(clip.getAttribute(\"height\") ?? \"0\");\n setViewDimensions({ x, y, width, height });\n }\n };\n\n updateDimensions();\n\n const container = chartContainerRef.current;\n const observer = new ResizeObserver(updateDimensions);\n if (container) observer.observe(container);\n\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n return (\n <Wrap if={height}>\n <div\n style={{ height, flex: flexGrow ? 1 : undefined }}\n ref={chartContainerRef}\n >\n <Recharts.ResponsiveContainer>\n <Recharts.ComposedChart\n data={data}\n className={rootClassName}\n {...rest}\n >\n {!showEmptyView && gridChildren}\n {otherChildren}\n {showEmptyView && viewDimensions && (\n <foreignObject {...viewDimensions}>\n <div className={styles.emptyViewContainer}>\n <EmptyView data={data} />\n </div>\n </foreignObject>\n )}\n </Recharts.ComposedChart>\n </Recharts.ResponsiveContainer>\n </div>\n </Wrap>\n );\n};\n\nexport default CartesianChart;\n"],"names":["height"],"mappings":"
|
|
1
|
+
{"version":3,"file":"CartesianChart.mjs","sources":["../../../../../../src/components/CartesianChart/CartesianChart.tsx"],"sourcesContent":["import * as Recharts from \"recharts\";\nimport React, {\n Children,\n useEffect,\n useRef,\n useState,\n type ComponentProps,\n type FC,\n type PropsWithChildren,\n type ReactElement,\n type SVGProps,\n} from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./CartesianChart.module.scss\";\nimport Wrap from \"../Wrap\";\nimport { CartesianGrid } from \"../public\";\n\nexport interface CartesianChartEmptyViewProps {\n data?: ComponentProps<typeof Recharts.ComposedChart>[\"data\"];\n}\n\nexport interface CartesianChartProps\n extends Pick<\n ComponentProps<typeof Recharts.ComposedChart>,\n \"data\" | \"className\" | \"syncId\" | \"syncMethod\"\n >,\n PropsWithChildren {\n height?: string;\n /** View that is provided when data is empty/undefined */\n emptyView?: React.ComponentType<CartesianChartEmptyViewProps>;\n /**\n * Allow the height controlling container to set flex-grow: 1. Can only be\n * used in combination with `height`\n */\n flexGrow?: boolean;\n}\n\n/** @flr-generate all */\nexport const CartesianChart: FC<CartesianChartProps> = (props) => {\n const {\n children,\n data,\n className,\n height,\n flexGrow,\n emptyView: EmptyView,\n ...rest\n } = props;\n const rootClassName = clsx(styles.cartesianChart, className);\n\n const otherChildren: ReactElement[] = [];\n const gridChildren: ReactElement[] = [];\n\n Children.forEach(children, (child) => {\n if (!child) return;\n const element = child as ReactElement;\n\n if (element.type === CartesianGrid) {\n gridChildren.push(element);\n } else {\n otherChildren.push(element);\n }\n });\n\n const showEmptyView = (!data || data.length === 0) && EmptyView;\n\n const chartContainerRef = useRef<HTMLDivElement>(null);\n const [viewDimensions, setViewDimensions] = useState<Partial<\n SVGProps<SVGForeignObjectElement>\n > | null>(null);\n\n // resizing the foreignObject for the EmptyView on size changes\n useEffect(() => {\n if (showEmptyView) {\n const updateDimensions = () => {\n const svg = chartContainerRef.current?.querySelector(\n \"svg\",\n ) as SVGSVGElement | null;\n if (!svg) return;\n\n const clip = svg.querySelector(\"clipPath rect\");\n if (clip) {\n const x = parseFloat(clip.getAttribute(\"x\") ?? \"0\");\n const y = parseFloat(clip.getAttribute(\"y\") ?? \"0\");\n const width = parseFloat(clip.getAttribute(\"width\") ?? \"0\");\n const height = parseFloat(clip.getAttribute(\"height\") ?? \"0\");\n setViewDimensions({ x, y, width, height });\n }\n };\n\n updateDimensions();\n\n const container = chartContainerRef.current;\n const observer = new ResizeObserver(updateDimensions);\n if (container) observer.observe(container);\n\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n return (\n <Wrap if={height}>\n <div\n style={{ height, flex: flexGrow ? 1 : undefined }}\n ref={chartContainerRef}\n >\n <Recharts.ResponsiveContainer>\n <Recharts.ComposedChart\n data={data}\n className={rootClassName}\n {...rest}\n >\n {!showEmptyView && gridChildren}\n {otherChildren}\n {showEmptyView && viewDimensions && (\n <foreignObject {...viewDimensions}>\n <div className={styles.emptyViewContainer}>\n <EmptyView data={data} />\n </div>\n </foreignObject>\n )}\n </Recharts.ComposedChart>\n </Recharts.ResponsiveContainer>\n </div>\n </Wrap>\n );\n};\n\nexport default CartesianChart;\n"],"names":["height"],"mappings":"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"}
|
|
@@ -11,14 +11,111 @@ import { useLocalizedStringFormatter } from 'react-aria';
|
|
|
11
11
|
import { TooltipTrigger } from '../../../../../Tooltip/components/TooltipTrigger/TooltipTrigger.mjs';
|
|
12
12
|
import 'react-aria-components';
|
|
13
13
|
import 'clsx';
|
|
14
|
-
import '
|
|
14
|
+
import '../../../../../AccentBox/AccentBox.mjs';
|
|
15
|
+
import '../../../../../../lib/propsContext/propsContext.mjs';
|
|
16
|
+
import '../../../../../../lib/propsContext/components/PropsContextProvider.mjs';
|
|
17
|
+
import '../../../../../Button/Button.mjs';
|
|
15
18
|
import '@tabler/icons-react';
|
|
16
19
|
import '../../../../../Icon/Icon.mjs';
|
|
17
20
|
import '../../../../../../views/IconView.mjs';
|
|
18
21
|
import { IconClose } from '../../../../../Icon/components/icons/IconClose.mjs';
|
|
19
22
|
import { IconSave } from '../../../../../Icon/components/icons/IconSave.mjs';
|
|
20
23
|
import { IconUndo } from '../../../../../Icon/components/icons/IconUndo.mjs';
|
|
24
|
+
import '@mittwald/react-tunnel';
|
|
25
|
+
import '../../../../../SuspenseTrigger/SuspenseTrigger.mjs';
|
|
26
|
+
import '../../../../../Action/Action.mjs';
|
|
27
|
+
import '@react-aria/live-announcer';
|
|
28
|
+
import '../../../../../ActionGroup/ActionGroup.mjs';
|
|
29
|
+
import '../../../../../Alert/Alert.mjs';
|
|
30
|
+
import '../../../../../AlertBadge/AlertBadge.mjs';
|
|
31
|
+
import '../../../../../Align/Align.mjs';
|
|
32
|
+
import '../../../../../Autocomplete/Autocomplete.mjs';
|
|
33
|
+
import '../../../../../Avatar/Avatar.mjs';
|
|
34
|
+
import '../../../../../Badge/Badge.mjs';
|
|
35
|
+
import 'mobx';
|
|
36
|
+
import '../../../../../../lib/controller/overlay/context.mjs';
|
|
37
|
+
import 'remeda';
|
|
38
|
+
import '@react-aria/utils';
|
|
39
|
+
import 'dot-prop';
|
|
40
|
+
import 'recharts';
|
|
41
|
+
import '../../../../../Heading/Heading.mjs';
|
|
42
|
+
import '../../../../../Text/Text.mjs';
|
|
43
|
+
import '../../../../../Checkbox/Checkbox.mjs';
|
|
44
|
+
import '../../../../../CheckboxButton/CheckboxButton.mjs';
|
|
45
|
+
import '../../../../../CheckboxGroup/CheckboxGroup.mjs';
|
|
46
|
+
import '../../../../../../lib/propsContext/inherit/PropsContextLevelProvider.mjs';
|
|
47
|
+
import 'react-syntax-highlighter';
|
|
48
|
+
import '../../../../../CopyButton/CopyButton.mjs';
|
|
49
|
+
import '../../../../../ColumnLayout/ColumnLayout.mjs';
|
|
50
|
+
import '../../../../../ComboBox/ComboBox.mjs';
|
|
51
|
+
import '../../../../../../lib/propsContext/components/ComponentPropsContextProvider.mjs';
|
|
52
|
+
import '../../../../../Content/Content.mjs';
|
|
53
|
+
import '../../../../../ContextMenu/ContextMenu.mjs';
|
|
54
|
+
import '../../../../../MenuItem/MenuItem.mjs';
|
|
55
|
+
import '../../../../../ContextMenu/components/ContextMenuTrigger/ContextMenuTrigger.mjs';
|
|
56
|
+
import '../../../../../ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs';
|
|
57
|
+
import '../../../../../ContextualHelp/ContextualHelp.mjs';
|
|
58
|
+
import '../../../../../ContextualHelp/components/ContextualHelpTrigger/ContextualHelpTrigger.mjs';
|
|
59
|
+
import '../../../../../CounterBadge/CounterBadge.mjs';
|
|
60
|
+
import '../../../../../CountryOptions/CountryOptions.mjs';
|
|
61
|
+
import '../../../../../DatePicker/DatePicker.mjs';
|
|
62
|
+
import '../../../../../DateRangePicker/DateRangePicker.mjs';
|
|
63
|
+
import '../../../../../FieldDescription/FieldDescription.mjs';
|
|
64
|
+
import '../../../../../FieldError/FieldError.mjs';
|
|
65
|
+
import '../../../../../FileCard/FileCard.mjs';
|
|
66
|
+
import '../../../../../FileCardList/FileCardList.mjs';
|
|
67
|
+
import '../../../../../FileDropZone/FileDropZone.mjs';
|
|
68
|
+
import '../../../../../FileField/FileField.mjs';
|
|
69
|
+
import '../../../../../Header/Header.mjs';
|
|
70
|
+
import '../../../../../Image/Image.mjs';
|
|
71
|
+
import '../../../../../Initials/Initials.mjs';
|
|
72
|
+
import '../../../../../Label/Label.mjs';
|
|
73
|
+
import '../../../../../LayoutCard/LayoutCard.mjs';
|
|
74
|
+
import '../../../../../OverlayTrigger/components/MenuTrigger/MenuTrigger.mjs';
|
|
75
|
+
import '../../../../../../views/DialogTriggerView.mjs';
|
|
76
|
+
import '../../../../../LightBox/LightBox.mjs';
|
|
77
|
+
import '../../../../../Link/Link.mjs';
|
|
78
|
+
import 'invariant';
|
|
79
|
+
import '../../../../../../views/ListItemViewContentView.mjs';
|
|
21
80
|
import ButtonView from '../../../../../../views/ButtonView.mjs';
|
|
81
|
+
import '../../../../../../views/ContextMenuTriggerView.mjs';
|
|
82
|
+
import '../../../ListSummary/ListSummary.mjs';
|
|
83
|
+
import '../../../../List.mjs';
|
|
84
|
+
import 'react-markdown';
|
|
85
|
+
import 'remark-gfm';
|
|
86
|
+
import '../../../../../MarkdownEditor/MarkdownEditor.mjs';
|
|
87
|
+
import '../../../../../Message/Message.mjs';
|
|
88
|
+
import '../../../../../MessageThread/MessageThread.mjs';
|
|
89
|
+
import '../../../../../Modal/Modal.mjs';
|
|
90
|
+
import '../../../../../Navigation/Navigation.mjs';
|
|
91
|
+
import '../../../../../Navigation/components/NavigationGroup/NavigationGroup.mjs';
|
|
92
|
+
import '../../../../../NotificationProvider/NotificationProvider.mjs';
|
|
93
|
+
import 'luxon';
|
|
94
|
+
import '../../../../../NumberField/NumberField.mjs';
|
|
95
|
+
import '../../../../../Option/Option.mjs';
|
|
96
|
+
import '../../../../../../views/OverlayContentView.mjs';
|
|
97
|
+
import '../../../../../../views/LoadingSpinnerView.mjs';
|
|
98
|
+
import '../../../../../PasswordCreationField/PasswordCreationField.mjs';
|
|
99
|
+
import '../../../../../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
100
|
+
import '../../../../../Popover/Popover.mjs';
|
|
101
|
+
import '../../../../../ProgressBar/ProgressBar.mjs';
|
|
102
|
+
import '../../../../../RadioGroup/RadioGroup.mjs';
|
|
103
|
+
import '../../../../../RadioGroup/components/Radio/Radio.mjs';
|
|
104
|
+
import '../../../../../RadioGroup/components/RadioButton/RadioButton.mjs';
|
|
105
|
+
import '../../../../../SearchField/SearchField.mjs';
|
|
106
|
+
import '../../../../../Section/Section.mjs';
|
|
107
|
+
import '../../../../../SegmentedControl/SegmentedControl.mjs';
|
|
108
|
+
import '../../../../../SegmentedControl/components/Segment/Segment.mjs';
|
|
109
|
+
import '../../../../../Select/Select.mjs';
|
|
110
|
+
import '../../../../../SettingsProvider/SettingsProvider.mjs';
|
|
111
|
+
import '../../../../../Slider/Slider.mjs';
|
|
112
|
+
import '../../../../../Switch/Switch.mjs';
|
|
113
|
+
import '../../../../../Tabs/Tabs.mjs';
|
|
114
|
+
import '../../../../../Tabs/components/Tab/context.mjs';
|
|
115
|
+
import '../../../../../TextArea/TextArea.mjs';
|
|
116
|
+
import '../../../../../TextField/TextField.mjs';
|
|
117
|
+
import '../../../../../TimeField/TimeField.mjs';
|
|
118
|
+
import '../../../../../TranslationProvider/TranslationProvider.mjs';
|
|
22
119
|
import TooltipView from '../../../../../../views/TooltipView.mjs';
|
|
23
120
|
import DivView from '../../../../../../views/DivView.mjs';
|
|
24
121
|
import BadgeView from '../../../../../../views/BadgeView.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActiveFilters.mjs","sources":["../../../../../../../../../../src/components/List/components/Header/components/ActiveFilters/ActiveFilters.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport React from \"react\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport styles from \"./ActiveFilters.module.scss\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport { Translate } from \"@/lib/react/components/Translate\";\nimport { observer } from \"mobx-react-lite\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport { TooltipTrigger } from \"@/components/Tooltip\";\nimport {\n IconClose,\n IconSave,\n IconUndo,\n} from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport TooltipView from \"@/views/TooltipView\";\nimport DivView from \"@/views/DivView\";\nimport BadgeView from \"@/views/BadgeView\";\nimport TooltipTriggerView from \"@/views/TooltipTriggerView\";\nimport TextView from \"@/views/TextView\";\n\nexport const ActiveFilters: FC = observer(() => {\n const list = useList();\n const formatter = useLocalizedStringFormatter(locales);\n\n const activeFilterValues = list.filters\n .flatMap((f) => f.values)\n .filter((v) => v.isActive);\n\n const activeFilters = activeFilterValues.map((v) => (\n <BadgeView key={v.id} onClose={() => v.deactivate()}>\n <TextView>{v.render()}</TextView>\n </BadgeView>\n ));\n\n const someFiltersChanged =\n list.filters.filter((f) => f.hasChanged()).length > 0;\n\n const storeFiltersButton = list.supportsSettingsStorage &&\n someFiltersChanged && (\n <TooltipTriggerView>\n <TooltipView>\n <Translate locales={locales}>list.filters.store</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.storeFilterDefaultSettings()}\n aria-label={formatter.format(\"list.filters.store\")}\n >\n <IconSave />\n </ButtonView>\n </TooltipTriggerView>\n );\n\n const resetFiltersButton = someFiltersChanged ? (\n <TooltipTrigger>\n <TooltipView>\n <Translate locales={locales}>list.filters.reset</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.resetFilters()}\n aria-label={formatter.format(\"list.filters.reset\")}\n >\n <IconUndo />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n const removeAllFiltersButton =\n activeFilters.length > 0 ? (\n <TooltipTrigger>\n <TooltipView>\n <Translate locales={locales}>list.filters.clear</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.clearFilters()}\n >\n <IconClose />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n if (\n activeFilters.length === 0 &&\n !storeFiltersButton &&\n !resetFiltersButton\n ) {\n return null;\n }\n\n return (\n <DivView className={styles.activeFilters}>\n {activeFilters}\n {storeFiltersButton}\n {resetFiltersButton}\n {removeAllFiltersButton}\n </DivView>\n );\n});\n\nexport default ActiveFilters;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ActiveFilters.mjs","sources":["../../../../../../../../../../src/components/List/components/Header/components/ActiveFilters/ActiveFilters.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport React from \"react\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport styles from \"./ActiveFilters.module.scss\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport { Translate } from \"@/lib/react/components/Translate\";\nimport { observer } from \"mobx-react-lite\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport { TooltipTrigger } from \"@/components/Tooltip\";\nimport {\n IconClose,\n IconSave,\n IconUndo,\n} from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport TooltipView from \"@/views/TooltipView\";\nimport DivView from \"@/views/DivView\";\nimport BadgeView from \"@/views/BadgeView\";\nimport TooltipTriggerView from \"@/views/TooltipTriggerView\";\nimport TextView from \"@/views/TextView\";\n\nexport const ActiveFilters: FC = observer(() => {\n const list = useList();\n const formatter = useLocalizedStringFormatter(locales);\n\n const activeFilterValues = list.filters\n .flatMap((f) => f.values)\n .filter((v) => v.isActive);\n\n const activeFilters = activeFilterValues.map((v) => (\n <BadgeView key={v.id} onClose={() => v.deactivate()}>\n <TextView>{v.render()}</TextView>\n </BadgeView>\n ));\n\n const someFiltersChanged =\n list.filters.filter((f) => f.hasChanged()).length > 0;\n\n const storeFiltersButton = list.supportsSettingsStorage &&\n someFiltersChanged && (\n <TooltipTriggerView>\n <TooltipView>\n <Translate locales={locales}>list.filters.store</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.storeFilterDefaultSettings()}\n aria-label={formatter.format(\"list.filters.store\")}\n >\n <IconSave />\n </ButtonView>\n </TooltipTriggerView>\n );\n\n const resetFiltersButton = someFiltersChanged ? (\n <TooltipTrigger>\n <TooltipView>\n <Translate locales={locales}>list.filters.reset</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.resetFilters()}\n aria-label={formatter.format(\"list.filters.reset\")}\n >\n <IconUndo />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n const removeAllFiltersButton =\n activeFilters.length > 0 ? (\n <TooltipTrigger>\n <TooltipView>\n <Translate locales={locales}>list.filters.clear</Translate>\n </TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.clearFilters()}\n >\n <IconClose />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n if (\n activeFilters.length === 0 &&\n !storeFiltersButton &&\n !resetFiltersButton\n ) {\n return null;\n }\n\n return (\n <DivView className={styles.activeFilters}>\n {activeFilters}\n {storeFiltersButton}\n {resetFiltersButton}\n {removeAllFiltersButton}\n </DivView>\n );\n});\n\nexport default ActiveFilters;\n"],"names":[],"mappings":"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"}
|
|
@@ -87,7 +87,6 @@ import 'luxon';
|
|
|
87
87
|
import '../../NumberField/NumberField.mjs';
|
|
88
88
|
import '../../Option/Option.mjs';
|
|
89
89
|
import '../../../views/OverlayContentView.mjs';
|
|
90
|
-
import '../../../views/ClearPropsContextView.mjs';
|
|
91
90
|
import '../../../views/LoadingSpinnerView.mjs';
|
|
92
91
|
import '../../PasswordCreationField/PasswordCreationField.mjs';
|
|
93
92
|
import '../../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAriaAnnounceSearchState.mjs","sources":["../../../../../../../src/components/List/hooks/useAriaAnnounceSearchState.ts"],"sourcesContent":["import { useLocalizedStringFormatter } from \"react-aria\";\nimport locales from \"../locales/*.locale.json\";\nimport { announce } from \"@react-aria/live-announcer\";\nimport { useList } from \"@/index/default\";\nimport { useDebounceCallback } from \"usehooks-ts\";\nimport { useEffect } from \"react\";\n\nconst announceDebounceMs = 600;\n\nexport const useAriaAnnounceSearchState = (): void => {\n const formatter = useLocalizedStringFormatter(locales);\n const list = useList();\n const debouncedAnnounce = useDebounceCallback(announce, announceDebounceMs);\n\n const searchTerm = list.search?.value;\n const resultCount = list.batches.getTotalItemsCount();\n const isLoading = list.loader.loaderState.useIsLoading();\n\n useEffect(() => {\n if (isLoading || !searchTerm) {\n debouncedAnnounce.cancel();\n return;\n }\n\n const text = formatter.format(\n resultCount > 0\n ? \"list.search.announce.result\"\n : \"list.search.announce.noResult\",\n {\n resultCount,\n searchTerm,\n },\n );\n\n debouncedAnnounce(text, \"polite\");\n }, [searchTerm, resultCount, isLoading]);\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useAriaAnnounceSearchState.mjs","sources":["../../../../../../../src/components/List/hooks/useAriaAnnounceSearchState.ts"],"sourcesContent":["import { useLocalizedStringFormatter } from \"react-aria\";\nimport locales from \"../locales/*.locale.json\";\nimport { announce } from \"@react-aria/live-announcer\";\nimport { useList } from \"@/index/default\";\nimport { useDebounceCallback } from \"usehooks-ts\";\nimport { useEffect } from \"react\";\n\nconst announceDebounceMs = 600;\n\nexport const useAriaAnnounceSearchState = (): void => {\n const formatter = useLocalizedStringFormatter(locales);\n const list = useList();\n const debouncedAnnounce = useDebounceCallback(announce, announceDebounceMs);\n\n const searchTerm = list.search?.value;\n const resultCount = list.batches.getTotalItemsCount();\n const isLoading = list.loader.loaderState.useIsLoading();\n\n useEffect(() => {\n if (isLoading || !searchTerm) {\n debouncedAnnounce.cancel();\n return;\n }\n\n const text = formatter.format(\n resultCount > 0\n ? \"list.search.announce.result\"\n : \"list.search.announce.noResult\",\n {\n resultCount,\n searchTerm,\n },\n );\n\n debouncedAnnounce(text, \"polite\");\n }, [searchTerm, resultCount, isLoading]);\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM,kBAAA,GAAqB,GAAA;AAEpB,MAAM,6BAA6B,MAAY;AACpD,EAAA,MAAM,SAAA,GAAY,4BAA4B,OAAO,CAAA;AACrD,EAAA,MAAM,OAAO,OAAA,EAAQ;AACrB,EAAA,MAAM,iBAAA,GAAoB,mBAAA,CAAoB,QAAA,EAAU,kBAAkB,CAAA;AAE1E,EAAA,MAAM,UAAA,GAAa,KAAK,MAAA,EAAQ,KAAA;AAChC,EAAA,MAAM,WAAA,GAAc,IAAA,CAAK,OAAA,CAAQ,kBAAA,EAAmB;AACpD,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,MAAA,CAAO,WAAA,CAAY,YAAA,EAAa;AAEvD,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,SAAA,IAAa,CAAC,UAAA,EAAY;AAC5B,MAAA,iBAAA,CAAkB,MAAA,EAAO;AACzB,MAAA;AAAA,IACF;AAEA,IAAA,MAAM,OAAO,SAAA,CAAU,MAAA;AAAA,MACrB,WAAA,GAAc,IACV,6BAAA,GACA,+BAAA;AAAA,MACJ;AAAA,QACE,WAAA;AAAA,QACA;AAAA;AACF,KACF;AAEA,IAAA,iBAAA,CAAkB,MAAM,QAAQ,CAAA;AAAA,EAClC,CAAA,EAAG,CAAC,UAAA,EAAY,WAAA,EAAa,SAAS,CAAC,CAAA;AACzC;;;;"}
|
|
@@ -86,7 +86,6 @@ import 'luxon';
|
|
|
86
86
|
import '../../../NumberField/NumberField.mjs';
|
|
87
87
|
import '../../../Option/Option.mjs';
|
|
88
88
|
import '../../../../views/OverlayContentView.mjs';
|
|
89
|
-
import '../../../../views/ClearPropsContextView.mjs';
|
|
90
89
|
import LoadingSpinnerView from '../../../../views/LoadingSpinnerView.mjs';
|
|
91
90
|
import '../../../PasswordCreationField/PasswordCreationField.mjs';
|
|
92
91
|
import '../../../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OffCanvasSuspenseFallback.mjs","sources":["../../../../../../../../src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.tsx"],"sourcesContent":["import { useAriaAnnounceSuspense } from \"@/index/default\";\nimport FlexView from \"@/views/FlexView\";\nimport LoadingSpinnerView from \"@/views/LoadingSpinnerView\";\nimport type { FC } from \"react\";\n\nexport const OffCanvasSuspenseFallback: FC = () => {\n useAriaAnnounceSuspense();\n return (\n <FlexView grow align=\"center\" justify=\"center\">\n <LoadingSpinnerView />\n </FlexView>\n );\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OffCanvasSuspenseFallback.mjs","sources":["../../../../../../../../src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.tsx"],"sourcesContent":["import { useAriaAnnounceSuspense } from \"@/index/default\";\nimport FlexView from \"@/views/FlexView\";\nimport LoadingSpinnerView from \"@/views/LoadingSpinnerView\";\nimport type { FC } from \"react\";\n\nexport const OffCanvasSuspenseFallback: FC = () => {\n useAriaAnnounceSuspense();\n return (\n <FlexView grow align=\"center\" justify=\"center\">\n <LoadingSpinnerView />\n </FlexView>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,MAAM,4BAAgC,MAAM;AACjD,EAAA,uBAAA,EAAwB;AACxB,EAAA,uBACE,GAAA,CAAC,QAAA,EAAA,EAAS,IAAA,EAAI,IAAA,EAAC,KAAA,EAAM,UAAS,OAAA,EAAQ,QAAA,EACpC,QAAA,kBAAA,GAAA,CAAC,kBAAA,EAAA,EAAmB,CAAA,EACtB,CAAA;AAEJ;;;;"}
|
|
@@ -8,7 +8,108 @@ import 'react';
|
|
|
8
8
|
import { useOverlayController } from '../../lib/controller/overlay/useOverlayController.mjs';
|
|
9
9
|
import { OverlayContextProvider } from '../../lib/controller/overlay/OverlayContextProvider.mjs';
|
|
10
10
|
import OverlayContentView from '../../views/OverlayContentView.mjs';
|
|
11
|
-
import
|
|
11
|
+
import '../AccentBox/AccentBox.mjs';
|
|
12
|
+
import '../../lib/propsContext/propsContext.mjs';
|
|
13
|
+
import '../../lib/propsContext/components/PropsContextProvider.mjs';
|
|
14
|
+
import '../Button/Button.mjs';
|
|
15
|
+
import '@tabler/icons-react';
|
|
16
|
+
import '../Icon/Icon.mjs';
|
|
17
|
+
import '../../views/IconView.mjs';
|
|
18
|
+
import '@mittwald/react-tunnel';
|
|
19
|
+
import '../SuspenseTrigger/SuspenseTrigger.mjs';
|
|
20
|
+
import 'react-aria';
|
|
21
|
+
import '../Action/Action.mjs';
|
|
22
|
+
import '@react-aria/live-announcer';
|
|
23
|
+
import '../ActionGroup/ActionGroup.mjs';
|
|
24
|
+
import '../Alert/Alert.mjs';
|
|
25
|
+
import '../AlertBadge/AlertBadge.mjs';
|
|
26
|
+
import '../Align/Align.mjs';
|
|
27
|
+
import '../Autocomplete/Autocomplete.mjs';
|
|
28
|
+
import '../Avatar/Avatar.mjs';
|
|
29
|
+
import '../Badge/Badge.mjs';
|
|
30
|
+
import 'react-aria-components';
|
|
31
|
+
import 'remeda';
|
|
32
|
+
import '@react-aria/utils';
|
|
33
|
+
import 'dot-prop';
|
|
34
|
+
import 'recharts';
|
|
35
|
+
import '../Heading/Heading.mjs';
|
|
36
|
+
import '../Text/Text.mjs';
|
|
37
|
+
import '../Checkbox/Checkbox.mjs';
|
|
38
|
+
import '../CheckboxButton/CheckboxButton.mjs';
|
|
39
|
+
import '../CheckboxGroup/CheckboxGroup.mjs';
|
|
40
|
+
import { ClearPropsContext } from '../../lib/propsContext/components/ClearPropsContext.mjs';
|
|
41
|
+
import 'react-syntax-highlighter';
|
|
42
|
+
import '../CopyButton/CopyButton.mjs';
|
|
43
|
+
import '../ColumnLayout/ColumnLayout.mjs';
|
|
44
|
+
import '../ComboBox/ComboBox.mjs';
|
|
45
|
+
import '../../lib/propsContext/components/ComponentPropsContextProvider.mjs';
|
|
46
|
+
import '../Content/Content.mjs';
|
|
47
|
+
import '../ContextMenu/ContextMenu.mjs';
|
|
48
|
+
import '../MenuItem/MenuItem.mjs';
|
|
49
|
+
import '../ContextMenu/components/ContextMenuTrigger/ContextMenuTrigger.mjs';
|
|
50
|
+
import '../ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs';
|
|
51
|
+
import '../ContextualHelp/ContextualHelp.mjs';
|
|
52
|
+
import '../ContextualHelp/components/ContextualHelpTrigger/ContextualHelpTrigger.mjs';
|
|
53
|
+
import '../CounterBadge/CounterBadge.mjs';
|
|
54
|
+
import '../CountryOptions/CountryOptions.mjs';
|
|
55
|
+
import '../DatePicker/DatePicker.mjs';
|
|
56
|
+
import '../DateRangePicker/DateRangePicker.mjs';
|
|
57
|
+
import '../FieldDescription/FieldDescription.mjs';
|
|
58
|
+
import '../FieldError/FieldError.mjs';
|
|
59
|
+
import '../FileCard/FileCard.mjs';
|
|
60
|
+
import '../FileCardList/FileCardList.mjs';
|
|
61
|
+
import '../FileDropZone/FileDropZone.mjs';
|
|
62
|
+
import '../FileField/FileField.mjs';
|
|
63
|
+
import '../Header/Header.mjs';
|
|
64
|
+
import '../Image/Image.mjs';
|
|
65
|
+
import '../Initials/Initials.mjs';
|
|
66
|
+
import '../Label/Label.mjs';
|
|
67
|
+
import '../LayoutCard/LayoutCard.mjs';
|
|
68
|
+
import '../OverlayTrigger/components/MenuTrigger/MenuTrigger.mjs';
|
|
69
|
+
import '../../views/DialogTriggerView.mjs';
|
|
70
|
+
import '../LightBox/LightBox.mjs';
|
|
71
|
+
import '../Link/Link.mjs';
|
|
72
|
+
import 'invariant';
|
|
73
|
+
import '../../views/ListItemViewContentView.mjs';
|
|
74
|
+
import '../../views/ButtonView.mjs';
|
|
75
|
+
import '../../views/ContextMenuTriggerView.mjs';
|
|
76
|
+
import '../List/components/ListSummary/ListSummary.mjs';
|
|
77
|
+
import '../List/listContext.mjs';
|
|
78
|
+
import '../List/List.mjs';
|
|
79
|
+
import 'react-markdown';
|
|
80
|
+
import 'remark-gfm';
|
|
81
|
+
import '../MarkdownEditor/MarkdownEditor.mjs';
|
|
82
|
+
import '../Message/Message.mjs';
|
|
83
|
+
import '../MessageThread/MessageThread.mjs';
|
|
84
|
+
import '../Modal/Modal.mjs';
|
|
85
|
+
import '../Navigation/Navigation.mjs';
|
|
86
|
+
import '../Navigation/components/NavigationGroup/NavigationGroup.mjs';
|
|
87
|
+
import '../NotificationProvider/NotificationProvider.mjs';
|
|
88
|
+
import 'luxon';
|
|
89
|
+
import '../NumberField/NumberField.mjs';
|
|
90
|
+
import '../Option/Option.mjs';
|
|
91
|
+
import '../../views/LoadingSpinnerView.mjs';
|
|
92
|
+
import '../PasswordCreationField/PasswordCreationField.mjs';
|
|
93
|
+
import '../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
94
|
+
import '../Popover/Popover.mjs';
|
|
95
|
+
import '../ProgressBar/ProgressBar.mjs';
|
|
96
|
+
import '../RadioGroup/RadioGroup.mjs';
|
|
97
|
+
import '../RadioGroup/components/Radio/Radio.mjs';
|
|
98
|
+
import '../RadioGroup/components/RadioButton/RadioButton.mjs';
|
|
99
|
+
import '../SearchField/SearchField.mjs';
|
|
100
|
+
import '../Section/Section.mjs';
|
|
101
|
+
import '../SegmentedControl/SegmentedControl.mjs';
|
|
102
|
+
import '../SegmentedControl/components/Segment/Segment.mjs';
|
|
103
|
+
import '../Select/Select.mjs';
|
|
104
|
+
import '../SettingsProvider/SettingsProvider.mjs';
|
|
105
|
+
import '../Slider/Slider.mjs';
|
|
106
|
+
import '../Switch/Switch.mjs';
|
|
107
|
+
import '../Tabs/Tabs.mjs';
|
|
108
|
+
import '../Tabs/components/Tab/context.mjs';
|
|
109
|
+
import '../TextArea/TextArea.mjs';
|
|
110
|
+
import '../TextField/TextField.mjs';
|
|
111
|
+
import '../TimeField/TimeField.mjs';
|
|
112
|
+
import '../TranslationProvider/TranslationProvider.mjs';
|
|
12
113
|
|
|
13
114
|
const Overlay = (props) => {
|
|
14
115
|
const {
|
|
@@ -26,7 +127,7 @@ const Overlay = (props) => {
|
|
|
26
127
|
const controller = controllerFromProps ?? controllerFromContext;
|
|
27
128
|
const isOpen = isOpenFromProps ?? controller.useIsOpen();
|
|
28
129
|
const rootClassName = clsx(styles.overlay, className);
|
|
29
|
-
return /* @__PURE__ */ jsx(
|
|
130
|
+
return /* @__PURE__ */ jsx(ClearPropsContext, { keep: overlayType, children: /* @__PURE__ */ jsx(
|
|
30
131
|
OverlayContentView,
|
|
31
132
|
{
|
|
32
133
|
onOpenChange: (isOpen2) => controller.setOpen(isOpen2),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Overlay.mjs","sources":["../../../../../../src/components/Overlay/Overlay.tsx"],"sourcesContent":["import type { FC, PropsWithChildren, Ref } from \"react\";\nimport styles from \"./Overlay.module.scss\";\nimport clsx from \"clsx\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport OverlayContentView from \"@/views/OverlayContentView\";\nimport
|
|
1
|
+
{"version":3,"file":"Overlay.mjs","sources":["../../../../../../src/components/Overlay/Overlay.tsx"],"sourcesContent":["import type { FC, PropsWithChildren, Ref } from \"react\";\nimport styles from \"./Overlay.module.scss\";\nimport clsx from \"clsx\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport OverlayContentView from \"@/views/OverlayContentView\";\nimport { ClearPropsContext } from \"@/index/default\";\n\nexport interface OverlayProps extends PropsWithChildren, PropsWithClassName {\n ref?: Ref<HTMLDivElement>;\n /** The controller to control the overlay state. */\n controller?: OverlayController;\n /** Whether the overlay can be closed by clicking outside of it. */\n isDismissable?: boolean;\n /** Whether the overlay is a modal or a light box. */\n overlayType?: \"Modal\" | \"LightBox\";\n isOpen?: boolean;\n}\n\nexport const Overlay: FC<OverlayProps> = (props) => {\n const {\n controller: controllerFromProps,\n children,\n isDismissable = true,\n className,\n overlayType = \"Modal\",\n isOpen: isOpenFromProps,\n ref,\n } = props;\n\n const controllerFromContext = useOverlayController(overlayType, {\n reuseControllerFromContext: true,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n\n const isOpen = isOpenFromProps ?? controller.useIsOpen();\n\n const rootClassName = clsx(styles.overlay, className);\n\n return (\n <ClearPropsContext keep={overlayType}>\n <OverlayContentView\n onOpenChange={(isOpen) => controller.setOpen(isOpen)}\n isOpen={isOpen}\n ref={ref}\n isDismissable={isDismissable}\n className={rootClassName}\n >\n <OverlayContextProvider type=\"Modal\" controller={controller}>\n {isOpen && children}\n </OverlayContextProvider>\n </OverlayContentView>\n </ClearPropsContext>\n );\n};\n\nexport default Overlay;\n"],"names":["isOpen"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBO,MAAM,OAAA,GAA4B,CAAC,KAAA,KAAU;AAClD,EAAA,MAAM;AAAA,IACJ,UAAA,EAAY,mBAAA;AAAA,IACZ,QAAA;AAAA,IACA,aAAA,GAAgB,IAAA;AAAA,IAChB,SAAA;AAAA,IACA,WAAA,GAAc,OAAA;AAAA,IACd,MAAA,EAAQ,eAAA;AAAA,IACR;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,qBAAA,GAAwB,qBAAqB,WAAA,EAAa;AAAA,IAC9D,0BAAA,EAA4B;AAAA,GAC7B,CAAA;AAED,EAAA,MAAM,aAAa,mBAAA,IAAuB,qBAAA;AAE1C,EAAA,MAAM,MAAA,GAAS,eAAA,IAAmB,UAAA,CAAW,SAAA,EAAU;AAEvD,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,MAAA,CAAO,OAAA,EAAS,SAAS,CAAA;AAEpD,EAAA,uBACE,GAAA,CAAC,iBAAA,EAAA,EAAkB,IAAA,EAAM,WAAA,EACvB,QAAA,kBAAA,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACC,YAAA,EAAc,CAACA,OAAAA,KAAW,UAAA,CAAW,QAAQA,OAAM,CAAA;AAAA,MACnD,MAAA;AAAA,MACA,GAAA;AAAA,MACA,aAAA;AAAA,MACA,SAAA,EAAW,aAAA;AAAA,MAEX,8BAAC,sBAAA,EAAA,EAAuB,IAAA,EAAK,OAAA,EAAQ,UAAA,EAClC,oBAAU,QAAA,EACb;AAAA;AAAA,GACF,EACF,CAAA;AAEJ;;;;"}
|
|
@@ -87,7 +87,6 @@ import 'luxon';
|
|
|
87
87
|
import '../../NumberField/NumberField.mjs';
|
|
88
88
|
import '../../Option/Option.mjs';
|
|
89
89
|
import '../../../views/OverlayContentView.mjs';
|
|
90
|
-
import '../../../views/ClearPropsContextView.mjs';
|
|
91
90
|
import '../../PasswordCreationField/PasswordCreationField.mjs';
|
|
92
91
|
import '../../Popover/components/PopoverTrigger/PopoverTrigger.mjs';
|
|
93
92
|
import '../../Popover/Popover.mjs';
|
package/dist/js/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverlaySuspenseFallback.mjs","sources":["../../../../../../../src/components/Overlay/components/OverlaySuspenseFallback.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport LoadingSpinnerView from \"@/views/LoadingSpinnerView\";\nimport { useAriaAnnounceSuspense } from \"@/components/Action/lib/ariaLive\";\nimport { type OverlayContentProps } from \"@/index/default\";\n\nexport const OverlaySuspenseFallback: FC<OverlayContentProps> = () => {\n useAriaAnnounceSuspense();\n return <LoadingSpinnerView color=\"dark\" />;\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OverlaySuspenseFallback.mjs","sources":["../../../../../../../src/components/Overlay/components/OverlaySuspenseFallback.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport LoadingSpinnerView from \"@/views/LoadingSpinnerView\";\nimport { useAriaAnnounceSuspense } from \"@/components/Action/lib/ariaLive\";\nimport { type OverlayContentProps } from \"@/index/default\";\n\nexport const OverlaySuspenseFallback: FC<OverlayContentProps> = () => {\n useAriaAnnounceSuspense();\n return <LoadingSpinnerView color=\"dark\" />;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,MAAM,0BAAmD,MAAM;AACpE,EAAA,uBAAA,EAAwB;AACxB,EAAA,uBAAO,GAAA,CAAC,kBAAA,EAAA,EAAmB,KAAA,EAAM,MAAA,EAAO,CAAA;AAC1C;;;;"}
|
|
@@ -9,7 +9,108 @@ import { flowComponent } from '../../lib/componentFactory/flowComponent.mjs';
|
|
|
9
9
|
import { OverlayContextProvider } from '../../lib/controller/overlay/OverlayContextProvider.mjs';
|
|
10
10
|
import styles from './Popover.module.scss.mjs';
|
|
11
11
|
import PopoverContentView from '../../views/PopoverContentView.mjs';
|
|
12
|
-
import
|
|
12
|
+
import '../AccentBox/AccentBox.mjs';
|
|
13
|
+
import '../../lib/propsContext/propsContext.mjs';
|
|
14
|
+
import '../../lib/propsContext/components/PropsContextProvider.mjs';
|
|
15
|
+
import '../Button/Button.mjs';
|
|
16
|
+
import '@tabler/icons-react';
|
|
17
|
+
import '../Icon/Icon.mjs';
|
|
18
|
+
import '../../views/IconView.mjs';
|
|
19
|
+
import '@mittwald/react-tunnel';
|
|
20
|
+
import '../SuspenseTrigger/SuspenseTrigger.mjs';
|
|
21
|
+
import 'react-aria';
|
|
22
|
+
import '../Action/Action.mjs';
|
|
23
|
+
import '@react-aria/live-announcer';
|
|
24
|
+
import '../ActionGroup/ActionGroup.mjs';
|
|
25
|
+
import '../Alert/Alert.mjs';
|
|
26
|
+
import '../AlertBadge/AlertBadge.mjs';
|
|
27
|
+
import '../Align/Align.mjs';
|
|
28
|
+
import '../Autocomplete/Autocomplete.mjs';
|
|
29
|
+
import '../Avatar/Avatar.mjs';
|
|
30
|
+
import '../Badge/Badge.mjs';
|
|
31
|
+
import 'react-aria-components';
|
|
32
|
+
import 'remeda';
|
|
33
|
+
import '@react-aria/utils';
|
|
34
|
+
import 'dot-prop';
|
|
35
|
+
import 'recharts';
|
|
36
|
+
import '../Heading/Heading.mjs';
|
|
37
|
+
import '../Text/Text.mjs';
|
|
38
|
+
import '../Checkbox/Checkbox.mjs';
|
|
39
|
+
import '../CheckboxButton/CheckboxButton.mjs';
|
|
40
|
+
import '../CheckboxGroup/CheckboxGroup.mjs';
|
|
41
|
+
import { ClearPropsContext } from '../../lib/propsContext/components/ClearPropsContext.mjs';
|
|
42
|
+
import 'react-syntax-highlighter';
|
|
43
|
+
import '../CopyButton/CopyButton.mjs';
|
|
44
|
+
import '../ColumnLayout/ColumnLayout.mjs';
|
|
45
|
+
import '../ComboBox/ComboBox.mjs';
|
|
46
|
+
import '../../lib/propsContext/components/ComponentPropsContextProvider.mjs';
|
|
47
|
+
import '../Content/Content.mjs';
|
|
48
|
+
import '../ContextMenu/ContextMenu.mjs';
|
|
49
|
+
import '../MenuItem/MenuItem.mjs';
|
|
50
|
+
import '../ContextMenu/components/ContextMenuTrigger/ContextMenuTrigger.mjs';
|
|
51
|
+
import '../ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs';
|
|
52
|
+
import '../ContextualHelp/ContextualHelp.mjs';
|
|
53
|
+
import '../ContextualHelp/components/ContextualHelpTrigger/ContextualHelpTrigger.mjs';
|
|
54
|
+
import '../CounterBadge/CounterBadge.mjs';
|
|
55
|
+
import '../CountryOptions/CountryOptions.mjs';
|
|
56
|
+
import '../DatePicker/DatePicker.mjs';
|
|
57
|
+
import '../DateRangePicker/DateRangePicker.mjs';
|
|
58
|
+
import '../FieldDescription/FieldDescription.mjs';
|
|
59
|
+
import '../FieldError/FieldError.mjs';
|
|
60
|
+
import '../FileCard/FileCard.mjs';
|
|
61
|
+
import '../FileCardList/FileCardList.mjs';
|
|
62
|
+
import '../FileDropZone/FileDropZone.mjs';
|
|
63
|
+
import '../FileField/FileField.mjs';
|
|
64
|
+
import '../Header/Header.mjs';
|
|
65
|
+
import '../Image/Image.mjs';
|
|
66
|
+
import '../Initials/Initials.mjs';
|
|
67
|
+
import '../Label/Label.mjs';
|
|
68
|
+
import '../LayoutCard/LayoutCard.mjs';
|
|
69
|
+
import '../OverlayTrigger/components/MenuTrigger/MenuTrigger.mjs';
|
|
70
|
+
import '../../views/DialogTriggerView.mjs';
|
|
71
|
+
import '../LightBox/LightBox.mjs';
|
|
72
|
+
import '../Link/Link.mjs';
|
|
73
|
+
import 'invariant';
|
|
74
|
+
import '../../views/ListItemViewContentView.mjs';
|
|
75
|
+
import '../../views/ButtonView.mjs';
|
|
76
|
+
import '../../views/ContextMenuTriggerView.mjs';
|
|
77
|
+
import '../List/components/ListSummary/ListSummary.mjs';
|
|
78
|
+
import '../List/listContext.mjs';
|
|
79
|
+
import '../List/List.mjs';
|
|
80
|
+
import 'react-markdown';
|
|
81
|
+
import 'remark-gfm';
|
|
82
|
+
import '../MarkdownEditor/MarkdownEditor.mjs';
|
|
83
|
+
import '../Message/Message.mjs';
|
|
84
|
+
import '../MessageThread/MessageThread.mjs';
|
|
85
|
+
import '../Modal/Modal.mjs';
|
|
86
|
+
import '../Navigation/Navigation.mjs';
|
|
87
|
+
import '../Navigation/components/NavigationGroup/NavigationGroup.mjs';
|
|
88
|
+
import '../NotificationProvider/NotificationProvider.mjs';
|
|
89
|
+
import 'luxon';
|
|
90
|
+
import '../NumberField/NumberField.mjs';
|
|
91
|
+
import '../Option/Option.mjs';
|
|
92
|
+
import '../../views/OverlayContentView.mjs';
|
|
93
|
+
import '../../views/LoadingSpinnerView.mjs';
|
|
94
|
+
import '../PasswordCreationField/PasswordCreationField.mjs';
|
|
95
|
+
import './components/PopoverTrigger/PopoverTrigger.mjs';
|
|
96
|
+
import '../ProgressBar/ProgressBar.mjs';
|
|
97
|
+
import '../RadioGroup/RadioGroup.mjs';
|
|
98
|
+
import '../RadioGroup/components/Radio/Radio.mjs';
|
|
99
|
+
import '../RadioGroup/components/RadioButton/RadioButton.mjs';
|
|
100
|
+
import '../SearchField/SearchField.mjs';
|
|
101
|
+
import '../Section/Section.mjs';
|
|
102
|
+
import '../SegmentedControl/SegmentedControl.mjs';
|
|
103
|
+
import '../SegmentedControl/components/Segment/Segment.mjs';
|
|
104
|
+
import '../Select/Select.mjs';
|
|
105
|
+
import '../SettingsProvider/SettingsProvider.mjs';
|
|
106
|
+
import '../Slider/Slider.mjs';
|
|
107
|
+
import '../Switch/Switch.mjs';
|
|
108
|
+
import '../Tabs/Tabs.mjs';
|
|
109
|
+
import '../Tabs/components/Tab/context.mjs';
|
|
110
|
+
import '../TextArea/TextArea.mjs';
|
|
111
|
+
import '../TextField/TextField.mjs';
|
|
112
|
+
import '../TimeField/TimeField.mjs';
|
|
113
|
+
import '../TranslationProvider/TranslationProvider.mjs';
|
|
13
114
|
|
|
14
115
|
const Popover = flowComponent("Popover", (props) => {
|
|
15
116
|
const {
|
|
@@ -28,7 +129,7 @@ const Popover = flowComponent("Popover", (props) => {
|
|
|
28
129
|
const controller = controllerFromProps ?? controllerFromContext;
|
|
29
130
|
const isOpen = controller.useIsOpen();
|
|
30
131
|
const rootClassName = clsx(styles.popover, className);
|
|
31
|
-
return /* @__PURE__ */ jsx(
|
|
132
|
+
return /* @__PURE__ */ jsx(ClearPropsContext, { children: /* @__PURE__ */ jsx(
|
|
32
133
|
PopoverContentView,
|
|
33
134
|
{
|
|
34
135
|
...contentProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.mjs","sources":["../../../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport type * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport { type OverlayController, useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport styles from \"./Popover.module.scss\";\nimport PopoverContentView from \"@/views/PopoverContentView\";\nimport
|
|
1
|
+
{"version":3,"file":"Popover.mjs","sources":["../../../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport type * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport { type OverlayController, useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport styles from \"./Popover.module.scss\";\nimport PopoverContentView from \"@/views/PopoverContentView\";\nimport { ClearPropsContext } from \"@/index/default\";\n\nexport interface PopoverProps\n extends PropsWithChildren<Omit<Aria.PopoverProps, \"children\">>,\n FlowComponentProps {\n /**\n * Whether the popover should display a tip, pointing towards the trigger\n * element.\n */\n withTip?: boolean;\n /** Whether the popover contains a dialog. */\n isDialogContent?: boolean;\n /** An overlay controller to control the popover state. */\n controller?: OverlayController;\n /** A fixed width for the popover. */\n width?: string | number;\n}\n\nexport const Popover = flowComponent(\"Popover\", (props) => {\n const {\n children,\n className,\n controller: controllerFromProps,\n onOpenChange: onOpenChangeFromProps,\n defaultOpen = false,\n ref,\n ...contentProps\n } = props;\n\n const controllerFromContext = useOverlayController(\"Popover\", {\n reuseControllerFromContext: true,\n isDefaultOpen: defaultOpen,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n const isOpen = controller.useIsOpen();\n\n const rootClassName = clsx(styles.popover, className);\n\n return (\n <ClearPropsContext>\n <PopoverContentView\n {...contentProps}\n className={rootClassName}\n isOpen={isOpen}\n onOpenChange={(isOpen) => {\n if (!onOpenChangeFromProps) {\n controller.setOpen(isOpen);\n } else {\n onOpenChangeFromProps(isOpen);\n }\n }}\n ref={ref}\n >\n <OverlayContextProvider type=\"Popover\" controller={controller}>\n {children}\n </OverlayContextProvider>\n </PopoverContentView>\n </ClearPropsContext>\n );\n});\n\nexport default Popover;\n"],"names":["isOpen"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BO,MAAM,OAAA,GAAU,aAAA,CAAc,SAAA,EAAW,CAAC,KAAA,KAAU;AACzD,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA,EAAY,mBAAA;AAAA,IACZ,YAAA,EAAc,qBAAA;AAAA,IACd,WAAA,GAAc,KAAA;AAAA,IACd,GAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,qBAAA,GAAwB,qBAAqB,SAAA,EAAW;AAAA,IAC5D,0BAAA,EAA4B,IAAA;AAAA,IAC5B,aAAA,EAAe;AAAA,GAChB,CAAA;AAED,EAAA,MAAM,aAAa,mBAAA,IAAuB,qBAAA;AAC1C,EAAA,MAAM,MAAA,GAAS,WAAW,SAAA,EAAU;AAEpC,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,MAAA,CAAO,OAAA,EAAS,SAAS,CAAA;AAEpD,EAAA,2BACG,iBAAA,EAAA,EACC,QAAA,kBAAA,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACE,GAAG,YAAA;AAAA,MACJ,SAAA,EAAW,aAAA;AAAA,MACX,MAAA;AAAA,MACA,YAAA,EAAc,CAACA,OAAAA,KAAW;AACxB,QAAA,IAAI,CAAC,qBAAA,EAAuB;AAC1B,UAAA,UAAA,CAAW,QAAQA,OAAM,CAAA;AAAA,QAC3B,CAAA,MAAO;AACL,UAAA,qBAAA,CAAsBA,OAAM,CAAA;AAAA,QAC9B;AAAA,MACF,CAAA;AAAA,MACA,GAAA;AAAA,MAEA,QAAA,kBAAA,GAAA,CAAC,sBAAA,EAAA,EAAuB,IAAA,EAAK,SAAA,EAAU,YACpC,QAAA,EACH;AAAA;AAAA,GACF,EACF,CAAA;AAEJ,CAAC;;;;"}
|