@frontify/fondue-components 29.2.0 → 30.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/dist/fondue-components10.js +89 -84
  2. package/dist/fondue-components10.js.map +1 -1
  3. package/dist/fondue-components100.js +1 -1
  4. package/dist/fondue-components112.js +14 -14
  5. package/dist/fondue-components114.js +1 -1
  6. package/dist/fondue-components118.js +216 -16
  7. package/dist/fondue-components118.js.map +1 -1
  8. package/dist/fondue-components119.js +19 -14
  9. package/dist/fondue-components119.js.map +1 -1
  10. package/dist/fondue-components120.js +16 -16
  11. package/dist/fondue-components120.js.map +1 -1
  12. package/dist/fondue-components121.js +147 -107
  13. package/dist/fondue-components121.js.map +1 -1
  14. package/dist/fondue-components122.js +44 -12
  15. package/dist/fondue-components122.js.map +1 -1
  16. package/dist/fondue-components123.js +17 -17
  17. package/dist/fondue-components123.js.map +1 -1
  18. package/dist/fondue-components124.js +14 -13
  19. package/dist/fondue-components124.js.map +1 -1
  20. package/dist/fondue-components125.js +16 -32
  21. package/dist/fondue-components125.js.map +1 -1
  22. package/dist/fondue-components126.js +111 -6
  23. package/dist/fondue-components126.js.map +1 -1
  24. package/dist/fondue-components127.js +12 -126
  25. package/dist/fondue-components127.js.map +1 -1
  26. package/dist/fondue-components128.js +16 -10
  27. package/dist/fondue-components128.js.map +1 -1
  28. package/dist/fondue-components129.js +12 -35
  29. package/dist/fondue-components129.js.map +1 -1
  30. package/dist/fondue-components130.js +122 -212
  31. package/dist/fondue-components130.js.map +1 -1
  32. package/dist/fondue-components131.js +11 -19
  33. package/dist/fondue-components131.js.map +1 -1
  34. package/dist/fondue-components132.js +35 -16
  35. package/dist/fondue-components132.js.map +1 -1
  36. package/dist/fondue-components133.js +32 -150
  37. package/dist/fondue-components133.js.map +1 -1
  38. package/dist/fondue-components134.js +6 -45
  39. package/dist/fondue-components134.js.map +1 -1
  40. package/dist/fondue-components135.js +6 -170
  41. package/dist/fondue-components135.js.map +1 -1
  42. package/dist/fondue-components136.js +12 -60
  43. package/dist/fondue-components136.js.map +1 -1
  44. package/dist/fondue-components137.js +71 -9
  45. package/dist/fondue-components137.js.map +1 -1
  46. package/dist/fondue-components138.js +14 -255
  47. package/dist/fondue-components138.js.map +1 -1
  48. package/dist/fondue-components139.js +10 -0
  49. package/dist/fondue-components139.js.map +1 -0
  50. package/dist/fondue-components140.js +87 -40
  51. package/dist/fondue-components140.js.map +1 -1
  52. package/dist/fondue-components141.js +80 -40
  53. package/dist/fondue-components141.js.map +1 -1
  54. package/dist/fondue-components142.js +31 -6
  55. package/dist/fondue-components142.js.map +1 -1
  56. package/dist/fondue-components143.js +169 -11
  57. package/dist/fondue-components143.js.map +1 -1
  58. package/dist/fondue-components144.js +59 -70
  59. package/dist/fondue-components144.js.map +1 -1
  60. package/dist/fondue-components145.js +9 -15
  61. package/dist/fondue-components145.js.map +1 -1
  62. package/dist/fondue-components146.js +256 -7
  63. package/dist/fondue-components146.js.map +1 -1
  64. package/dist/fondue-components147.js +17 -87
  65. package/dist/fondue-components147.js.map +1 -1
  66. package/dist/fondue-components149.js +41 -30
  67. package/dist/fondue-components149.js.map +1 -1
  68. package/dist/fondue-components150.js +40 -18
  69. package/dist/fondue-components150.js.map +1 -1
  70. package/dist/fondue-components151.js +20 -69
  71. package/dist/fondue-components151.js.map +1 -1
  72. package/dist/fondue-components152.js +37 -1349
  73. package/dist/fondue-components152.js.map +1 -1
  74. package/dist/fondue-components153.js +59 -930
  75. package/dist/fondue-components153.js.map +1 -1
  76. package/dist/fondue-components154.js +1322 -168
  77. package/dist/fondue-components154.js.map +1 -1
  78. package/dist/fondue-components155.js +937 -17
  79. package/dist/fondue-components155.js.map +1 -1
  80. package/dist/fondue-components156.js +197 -39
  81. package/dist/fondue-components156.js.map +1 -1
  82. package/dist/fondue-components158.js +1 -1
  83. package/dist/fondue-components165.js +17 -8
  84. package/dist/fondue-components165.js.map +1 -1
  85. package/dist/fondue-components166.js +8 -17
  86. package/dist/fondue-components166.js.map +1 -1
  87. package/dist/fondue-components48.js +1 -1
  88. package/dist/fondue-components49.js +1 -1
  89. package/dist/fondue-components50.js +1 -1
  90. package/dist/fondue-components51.js +2 -2
  91. package/dist/fondue-components52.js +2 -2
  92. package/dist/fondue-components55.js +1 -1
  93. package/dist/fondue-components65.js +2 -2
  94. package/dist/fondue-components66.js +3 -3
  95. package/dist/fondue-components67.js +2 -2
  96. package/dist/fondue-components79.js +2 -2
  97. package/dist/fondue-components82.js +1 -1
  98. package/dist/fondue-components83.js +1 -1
  99. package/dist/fondue-components84.js +1 -1
  100. package/dist/fondue-components87.js +1 -1
  101. package/dist/fondue-components89.js +6 -6
  102. package/dist/fondue-components95.js +2 -2
  103. package/dist/fondue-components96.js +2 -2
  104. package/dist/fondue-components97.js +2 -2
  105. package/dist/fondue-components98.js +2 -2
  106. package/dist/fondue-components99.js +1 -1
  107. package/dist/index.d.ts +7 -1
  108. package/dist/style.css +1 -1
  109. package/package.json +3 -3
  110. package/dist/fondue-components148.js +0 -84
  111. package/dist/fondue-components148.js.map +0 -1
@@ -1,44 +1,84 @@
1
- const e = "_wrapper_1iuqu_4", t = "_root_1iuqu_8", o = "_toggleMonthButtonContainer_1iuqu_8", n = "_nextMonthButtonContainer_1iuqu_22", _ = "_weekday_1iuqu_27", u = "_weekdays_1iuqu_39", d = "_week_1iuqu_27", s = "_day_1iuqu_49", c = "_disabled_1iuqu_70", i = "_dayContent_1iuqu_73", r = "_outside_1iuqu_77", a = "_dayButton_1iuqu_90", l = "_selected_1iuqu_124", q = "_selectedMiddle_1iuqu_134", y = "_selectedStart_1iuqu_147", h = "_selectedEnd_1iuqu_147", w = "_hoverAfter_1iuqu_180", B = "_hoverSelected_1iuqu_193", k = "_hoverBefore_1iuqu_254", v = {
2
- wrapper: e,
3
- root: t,
4
- toggleMonthButtonContainer: o,
5
- nextMonthButtonContainer: n,
6
- weekday: _,
7
- weekdays: u,
8
- week: d,
9
- day: s,
10
- disabled: c,
11
- dayContent: i,
12
- outside: r,
13
- dayButton: a,
14
- selected: l,
15
- selectedMiddle: q,
16
- selectedStart: y,
17
- selectedEnd: h,
18
- hoverAfter: w,
19
- hoverSelected: B,
20
- hoverBefore: k
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import * as p from "@radix-ui/react-popover";
3
+ import { Slot as M } from "@radix-ui/react-slot";
4
+ import { isValidElement as T } from "react";
5
+ import { useFondueTheme as E, ThemeProvider as F } from "./fondue-components40.js";
6
+ import a from "./fondue-components122.js";
7
+ import { recursiveMap as R, getSelectOptionValue as _ } from "./fondue-components152.js";
8
+ const j = ({
9
+ highlightedIndex: l,
10
+ getMenuProps: u,
11
+ getItemProps: m,
12
+ children: f,
13
+ filterText: d,
14
+ align: h,
15
+ side: P,
16
+ selectedItemValues: o,
17
+ hasInteractedSinceOpening: S,
18
+ viewportCollisionPadding: g = "compact",
19
+ onEscapeKeyDown: v
20
+ }) => {
21
+ const O = (e) => {
22
+ e.preventDefault();
23
+ }, N = {
24
+ compact: 8,
25
+ spacious: 24
26
+ }, { theme: A, dir: n } = E(), C = (e) => n === "ltr" ? e : e === "left" ? "right" : e === "right" ? "left" : e;
27
+ return /* @__PURE__ */ r(p.Portal, { children: /* @__PURE__ */ r(F, { theme: A, dir: n, children: /* @__PURE__ */ r(
28
+ p.Content,
29
+ {
30
+ dir: n,
31
+ align: h,
32
+ side: C(P),
33
+ collisionPadding: N[g] + 8,
34
+ onOpenAutoFocus: O,
35
+ onEscapeKeyDown: v,
36
+ className: a.portal,
37
+ children: /* @__PURE__ */ r(
38
+ "ul",
39
+ {
40
+ className: a.menu,
41
+ ...u({}, { suppressRefError: !0 }),
42
+ "data-has-interacted": S ? "true" : "false",
43
+ "data-test-id": "fondue-select-menu",
44
+ children: R(
45
+ f,
46
+ (e, s) => {
47
+ if (((t) => (
48
+ // @ts-expect-error - We are explicitly checking for ref
49
+ T(t) && t.ref !== void 0
50
+ ))(e)) {
51
+ const t = _(e.props), i = m({
52
+ item: t,
53
+ index: s,
54
+ ...e.ref ? { ref: e.ref } : {}
55
+ }), c = o == null ? void 0 : o.includes(t.value);
56
+ return /* @__PURE__ */ r(
57
+ M,
58
+ {
59
+ className: a.item,
60
+ "data-highlighted": l === s,
61
+ "data-selected": c,
62
+ onTouchStart: (D) => {
63
+ i.onClick && i.onClick(D);
64
+ },
65
+ ...i,
66
+ "aria-selected": c,
67
+ children: e
68
+ },
69
+ e.props.value
70
+ );
71
+ }
72
+ },
73
+ d
74
+ ).parsedChildren
75
+ }
76
+ )
77
+ }
78
+ ) }) });
21
79
  };
80
+ j.displayName = "Select.Menu";
22
81
  export {
23
- s as day,
24
- a as dayButton,
25
- i as dayContent,
26
- v as default,
27
- c as disabled,
28
- w as hoverAfter,
29
- k as hoverBefore,
30
- B as hoverSelected,
31
- n as nextMonthButtonContainer,
32
- r as outside,
33
- t as root,
34
- l as selected,
35
- h as selectedEnd,
36
- q as selectedMiddle,
37
- y as selectedStart,
38
- o as toggleMonthButtonContainer,
39
- d as week,
40
- _ as weekday,
41
- u as weekdays,
42
- e as wrapper
82
+ j as SelectMenu
43
83
  };
44
84
  //# sourceMappingURL=fondue-components141.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components141.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"fondue-components141.js","sources":["../src/components/Select/components/SelectMenu.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { Slot as RadixSlot } from '@radix-ui/react-slot';\nimport { type UseComboboxPropGetters, type UseSelectPropGetters } from 'downshift';\nimport { isValidElement, type ForwardedRef, type MouseEvent, type ReactElement, type ReactNode } from 'react';\n\nimport { ThemeProvider, useFondueTheme } from '#/components/ThemeProvider/ThemeProvider';\n\nimport styles from '../styles/select.module.scss';\nimport { getSelectOptionValue, recursiveMap } from '../utils';\n\nimport { type SelectItemProps } from './SelectItem';\n\nexport type SelectMenuViewportCollisionPadding = 'compact' | 'spacious';\n\nexport type SelectMenuProps = {\n /**\n * @internal\n * The index of the highlighted item in the menu.\n */\n highlightedIndex: number;\n /**\n * @internal\n * Callback function to retrieve the props for a menu element.\n */\n getMenuProps: UseSelectPropGetters<unknown>['getMenuProps'] | UseComboboxPropGetters<unknown>['getMenuProps'];\n /**\n * @internal\n * Callback function to retrieve the props for a item element.\n */\n getItemProps: UseSelectPropGetters<unknown>['getItemProps'] | UseComboboxPropGetters<unknown>['getItemProps'];\n /**\n * @internal\n * The children of the menu component. This can contain multiple `Select.Item` or `Select.Group` components.\n */\n children: ReactNode;\n /**\n * @internal\n * The filter text shown in the combobox input element.\n */\n filterText?: string;\n /**\n * @internal\n * The alignment of the menu.\n */\n align: 'start' | 'center' | 'end';\n /**\n * @internal\n * Defines the preferred side of the select. It will not be respected if there are collisions with the viewport.\n * @default \"bottom\"\n */\n side: 'left' | 'right' | 'bottom' | 'top';\n /**\n * @internal\n * The type of the menu.\n */\n selectedItemValues?: string[];\n /**\n * @internal\n * A boolean to indicate if highlighted item was changed since opening the menu.\n * This is used to determine the style of the selected/highlighted item.\n */\n hasInteractedSinceOpening?: boolean;\n /**\n * Define the minimum distance between the select menu and the viewport edge\n * @default 'compact'\n */\n viewportCollisionPadding?: SelectMenuViewportCollisionPadding;\n /**\n * @internal\n * Event handler called when the escape key is pressed.\n */\n onEscapeKeyDown?: (event: KeyboardEvent) => void;\n};\n\nexport const SelectMenu = ({\n highlightedIndex,\n getMenuProps,\n getItemProps,\n children,\n filterText,\n align,\n side,\n selectedItemValues,\n hasInteractedSinceOpening,\n viewportCollisionPadding = 'compact',\n onEscapeKeyDown,\n}: SelectMenuProps) => {\n const handleOnOpenAutoFocus = (event: Event) => {\n event.preventDefault();\n };\n\n const VIEWPORT_COLLISION_PADDING_MAP: Record<SelectMenuViewportCollisionPadding, number> = {\n compact: 8,\n spacious: 24,\n };\n\n const { theme, dir } = useFondueTheme();\n\n const getAdjustedSide = (side: 'left' | 'right' | 'bottom' | 'top') => {\n if (dir === 'ltr') {\n return side;\n }\n\n if (side === 'left') {\n return 'right';\n }\n if (side === 'right') {\n return 'left';\n }\n\n return side;\n };\n\n return (\n <RadixPopover.Portal>\n <ThemeProvider theme={theme} dir={dir}>\n <RadixPopover.Content\n dir={dir}\n align={align}\n side={getAdjustedSide(side)}\n collisionPadding={VIEWPORT_COLLISION_PADDING_MAP[viewportCollisionPadding] + 8}\n onOpenAutoFocus={handleOnOpenAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n className={styles.portal}\n >\n <ul\n className={styles.menu}\n // TODO: fix this accessibility issue\n // We are mounting/unmounting the menu on open/close\n // We should instead toggle its visibility for accessibility reasons\n // https://github.com/downshift-js/downshift?tab=readme-ov-file#getmenuprops\n {...getMenuProps({}, { suppressRefError: true })}\n data-has-interacted={hasInteractedSinceOpening ? 'true' : 'false'}\n data-test-id=\"fondue-select-menu\"\n >\n {\n recursiveMap(\n children,\n (child, index) => {\n const isValid = <TProps,>(\n child: ReactNode,\n ): child is ReactElement<TProps> & { ref: ForwardedRef<HTMLElement> } =>\n // @ts-expect-error - We are explicitly checking for ref\n isValidElement<TProps>(child) && child.ref !== undefined;\n\n if (isValid<SelectItemProps>(child)) {\n const optionData = getSelectOptionValue(child.props);\n const itemProps = getItemProps({\n item: optionData,\n index,\n ...(child.ref ? { ref: child.ref } : {}),\n });\n\n const isSelected = selectedItemValues?.includes(optionData.value);\n\n return (\n <RadixSlot\n className={styles.item}\n data-highlighted={highlightedIndex === index}\n data-selected={isSelected}\n key={child.props.value}\n // Workaround for the issue where the onClick event is not fired on touch devices because of portal usage\n onTouchStart={(event) => {\n if (itemProps.onClick) {\n itemProps.onClick(event as unknown as MouseEvent<HTMLElement>);\n }\n }}\n {...itemProps}\n aria-selected={isSelected}\n >\n {child}\n </RadixSlot>\n );\n }\n },\n filterText,\n ).parsedChildren\n }\n </ul>\n </RadixPopover.Content>\n </ThemeProvider>\n </RadixPopover.Portal>\n );\n};\nSelectMenu.displayName = 'Select.Menu';\n"],"names":["SelectMenu","highlightedIndex","getMenuProps","getItemProps","children","filterText","align","side","selectedItemValues","hasInteractedSinceOpening","viewportCollisionPadding","onEscapeKeyDown","handleOnOpenAutoFocus","event","VIEWPORT_COLLISION_PADDING_MAP","theme","dir","useFondueTheme","getAdjustedSide","RadixPopover","jsx","ThemeProvider","styles","recursiveMap","child","index","isValidElement","optionData","getSelectOptionValue","itemProps","isSelected","RadixSlot"],"mappings":";;;;;;;AA4EO,MAAMA,IAAa,CAAC;AAAA,EACvB,kBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,0BAAAC,IAA2B;AAAA,EAC3B,iBAAAC;AACJ,MAAuB;AACnB,QAAMC,IAAwB,CAACC,MAAiB;AAC5C,IAAAA,EAAM,eAAA;AAAA,EACV,GAEMC,IAAqF;AAAA,IACvF,SAAS;AAAA,IACT,UAAU;AAAA,EAAA,GAGR,EAAE,OAAAC,GAAO,KAAAC,EAAA,IAAQC,EAAA,GAEjBC,IAAkB,CAACX,MACjBS,MAAQ,QACDT,IAGPA,MAAS,SACF,UAEPA,MAAS,UACF,SAGJA;AAGX,2BACKY,EAAa,QAAb,EACG,UAAA,gBAAAC,EAACC,GAAA,EAAc,OAAAN,GAAc,KAAAC,GACzB,UAAA,gBAAAI;AAAA,IAACD,EAAa;AAAA,IAAb;AAAA,MACG,KAAAH;AAAA,MACA,OAAAV;AAAA,MACA,MAAMY,EAAgBX,CAAI;AAAA,MAC1B,kBAAkBO,EAA+BJ,CAAwB,IAAI;AAAA,MAC7E,iBAAiBE;AAAA,MACjB,iBAAAD;AAAA,MACA,WAAWW,EAAO;AAAA,MAElB,UAAA,gBAAAF;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAWE,EAAO;AAAA,UAKjB,GAAGpB,EAAa,CAAA,GAAI,EAAE,kBAAkB,IAAM;AAAA,UAC/C,uBAAqBO,IAA4B,SAAS;AAAA,UAC1D,gBAAa;AAAA,UAGT,UAAAc;AAAA,YACInB;AAAA,YACA,CAACoB,GAAOC,MAAU;AAOd,mBANgB,CACZD;AAAAA;AAAAA,gBAGAE,EAAuBF,CAAK,KAAKA,EAAM,QAAQ;AAAA,iBAEtBA,CAAK,GAAG;AACjC,sBAAMG,IAAaC,EAAqBJ,EAAM,KAAK,GAC7CK,IAAY1B,EAAa;AAAA,kBAC3B,MAAMwB;AAAA,kBACN,OAAAF;AAAA,kBACA,GAAID,EAAM,MAAM,EAAE,KAAKA,EAAM,IAAA,IAAQ,CAAA;AAAA,gBAAC,CACzC,GAEKM,IAAatB,KAAA,gBAAAA,EAAoB,SAASmB,EAAW;AAE3D,uBACI,gBAAAP;AAAA,kBAACW;AAAAA,kBAAA;AAAA,oBACG,WAAWT,EAAO;AAAA,oBAClB,oBAAkBrB,MAAqBwB;AAAA,oBACvC,iBAAeK;AAAA,oBAGf,cAAc,CAACjB,MAAU;AACrB,sBAAIgB,EAAU,WACVA,EAAU,QAAQhB,CAA2C;AAAA,oBAErE;AAAA,oBACC,GAAGgB;AAAA,oBACJ,iBAAeC;AAAA,oBAEd,UAAAN;AAAA,kBAAA;AAAA,kBAVIA,EAAM,MAAM;AAAA,gBAAA;AAAA,cAa7B;AAAA,YACJ;AAAA,YACAnB;AAAA,UAAA,EACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAEV;AAAA,EAAA,GAER,EAAA,CACJ;AAER;AACAL,EAAW,cAAc;"}
@@ -1,9 +1,34 @@
1
- import { useMemo as t } from "react";
2
- const m = (n, s) => t(() => n.map((r) => {
3
- const o = s(r), p = (o == null ? void 0 : o.label) ?? r;
4
- return { value: r, displayValue: p };
5
- }), [n, s]);
1
+ import { jsxs as c, Fragment as n, jsx as r } from "react/jsx-runtime";
2
+ import { IconCheckMark as i, IconExclamationMarkTriangle as l } from "@frontify/fondue-icons";
3
+ import { useTranslation as m } from "./fondue-components43.js";
4
+ import s from "./fondue-components122.js";
5
+ const f = ({ status: o, hasError: a, dataTestId: e }) => {
6
+ const { t } = m();
7
+ return /* @__PURE__ */ c(n, { children: [
8
+ o === "success" ? /* @__PURE__ */ r(
9
+ i,
10
+ {
11
+ size: 16,
12
+ className: s.iconSuccess,
13
+ "data-test-id": `${e}-success-icon`,
14
+ "aria-hidden": "true"
15
+ }
16
+ ) : null,
17
+ a ? /* @__PURE__ */ c(n, { children: [
18
+ /* @__PURE__ */ r(
19
+ l,
20
+ {
21
+ size: 16,
22
+ className: s.iconError,
23
+ "data-test-id": `${e}-error-icon`,
24
+ "aria-hidden": "true"
25
+ }
26
+ ),
27
+ /* @__PURE__ */ r("span", { className: s.srOnly, role: "alert", children: t("Select_error") })
28
+ ] }) : null
29
+ ] });
30
+ };
6
31
  export {
7
- m as useBadgeItems
32
+ f as StatusIcons
8
33
  };
9
34
  //# sourceMappingURL=fondue-components142.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components142.js","sources":["../src/components/Select/hooks/useBadgeItems.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useMemo } from 'react';\n\ntype SelectItemLike = {\n value: string;\n label: string;\n};\n\ntype BadgeItem = {\n value: string;\n displayValue: string;\n};\n\nexport const useBadgeItems = (\n selectedItemValues: string[],\n getItemByValue: (value?: string) => SelectItemLike | undefined,\n): BadgeItem[] => {\n return useMemo(() => {\n return selectedItemValues.map((value) => {\n const item = getItemByValue(value);\n const displayValue = item?.label ?? value;\n return { value, displayValue };\n });\n }, [selectedItemValues, getItemByValue]);\n};\n"],"names":["useBadgeItems","selectedItemValues","getItemByValue","useMemo","value","item","displayValue"],"mappings":";AAcO,MAAMA,IAAgB,CACzBC,GACAC,MAEOC,EAAQ,MACJF,EAAmB,IAAI,CAACG,MAAU;AACrC,QAAMC,IAAOH,EAAeE,CAAK,GAC3BE,KAAeD,KAAA,gBAAAA,EAAM,UAASD;AACpC,SAAO,EAAE,OAAAA,GAAO,cAAAE,EAAA;AACpB,CAAC,GACF,CAACL,GAAoBC,CAAc,CAAC;"}
1
+ {"version":3,"file":"fondue-components142.js","sources":["../src/components/Select/components/StatusIcons.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCheckMark, IconExclamationMarkTriangle } from '@frontify/fondue-icons';\nimport { type ReactNode } from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport styles from '../styles/select.module.scss';\n\ntype StatusIconsProps = {\n /** The current status of the component. */\n status: 'neutral' | 'success' | 'error';\n /** Whether the component is in an error state (may differ from status when validation is involved). */\n hasError: boolean;\n /** The data-test-id prefix for the icons. */\n dataTestId: string;\n};\n\nexport const StatusIcons = ({ status, hasError, dataTestId }: StatusIconsProps): ReactNode => {\n const { t } = useTranslation();\n return (\n <>\n {status === 'success' ? (\n <IconCheckMark\n size={16}\n className={styles.iconSuccess}\n data-test-id={`${dataTestId}-success-icon`}\n aria-hidden=\"true\"\n />\n ) : null}\n {hasError ? (\n <>\n <IconExclamationMarkTriangle\n size={16}\n className={styles.iconError}\n data-test-id={`${dataTestId}-error-icon`}\n aria-hidden=\"true\"\n />\n <span className={styles.srOnly} role=\"alert\">\n {t('Select_error')}\n </span>\n </>\n ) : null}\n </>\n );\n};\n"],"names":["StatusIcons","status","hasError","dataTestId","useTranslation","jsxs","Fragment","jsx","IconCheckMark","styles","IconExclamationMarkTriangle"],"mappings":";;;;AAkBO,MAAMA,IAAc,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,YAAAC,QAA8C;AAC1F,QAAM,EAAE,EAAA,IAAMC,EAAA;AACd,SACI,gBAAAC,EAAAC,GAAA,EACK,UAAA;AAAA,IAAAL,MAAW,YACR,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,MAAM;AAAA,QACN,WAAWC,EAAO;AAAA,QAClB,gBAAc,GAAGN,CAAU;AAAA,QAC3B,eAAY;AAAA,MAAA;AAAA,IAAA,IAEhB;AAAA,IACHD,IACG,gBAAAG,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACG;AAAA,QAAA;AAAA,UACG,MAAM;AAAA,UACN,WAAWD,EAAO;AAAA,UAClB,gBAAc,GAAGN,CAAU;AAAA,UAC3B,eAAY;AAAA,QAAA;AAAA,MAAA;AAAA,MAEhB,gBAAAI,EAAC,UAAK,WAAWE,EAAO,QAAQ,MAAK,SAChC,UAAA,EAAE,cAAc,EAAA,CACrB;AAAA,IAAA,EAAA,CACJ,IACA;AAAA,EAAA,GACR;AAER;"}
@@ -1,15 +1,173 @@
1
- import { useRef as u, useCallback as t } from "react";
2
- const c = () => {
3
- const s = u(!1), o = t((e) => {
4
- s.current = !0, e.currentTarget.dataset.showFocusRing = "false";
5
- }, []), r = t((e) => {
6
- s.current || (e.target.dataset.showFocusRing = "true");
7
- }, []), n = t((e) => {
8
- e.target.dataset.showFocusRing = "false", s.current = !1;
9
- }, []);
10
- return { wasClickedRef: s, onMouseDown: o, onFocus: r, onBlur: n };
1
+ import { computed as U, untracked as ue, batch as X, effect as le, signal as fe } from "./fondue-components146.js";
2
+ import { Signal as Ee } from "./fondue-components146.js";
3
+ var _e = Object.create, G = Object.defineProperty, he = Object.defineProperties, pe = Object.getOwnPropertyDescriptor, ve = Object.getOwnPropertyDescriptors, Y = Object.getOwnPropertySymbols, de = Object.prototype.hasOwnProperty, ge = Object.prototype.propertyIsEnumerable, Oe = (e, t) => (t = Symbol[e]) ? t : Symbol.for("Symbol." + e), O = (e) => {
4
+ throw TypeError(e);
5
+ }, A = (e, t, r) => t in e ? G(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, ye = (e, t) => {
6
+ for (var r in t || (t = {}))
7
+ de.call(t, r) && A(e, r, t[r]);
8
+ if (Y)
9
+ for (var r of Y(t))
10
+ ge.call(t, r) && A(e, r, t[r]);
11
+ return e;
12
+ }, we = (e, t) => he(e, ve(t)), Z = (e, t) => G(e, "name", { value: t, configurable: !0 }), Pe = (e) => {
13
+ var t;
14
+ return [, , , _e((t = void 0) != null ? t : null)];
15
+ }, x = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"], P = (e) => e !== void 0 && typeof e != "function" ? O("Function expected") : e, Se = (e, t, r, i, n) => ({ kind: x[e], name: t, metadata: i, addInitializer: (a) => r._ ? O("Already initialized") : n.push(P(a || null)) }), ee = (e, t) => A(t, Oe("metadata"), e[3]), d = (e, t, r, i) => {
16
+ for (var n = 0, a = e[t >> 1], p = a && a.length; n < p; n++) t & 1 ? a[n].call(r) : i = a[n].call(r, i);
17
+ return i;
18
+ }, y = (e, t, r, i, n, a) => {
19
+ var p, l, L, w, m, s = t & 7, j = !!(t & 8), h = !!(t & 16), D = s > 3 ? e.length + 1 : s ? j ? 1 : 2 : 0, Q = x[s + 5], R = s > 3 && (e[D - 1] = []), ce = e[D] || (e[D] = []), _ = s && (!h && !j && (n = n.prototype), s < 5 && (s > 3 || !h) && pe(s < 4 ? n : { get [r]() {
20
+ return f(this, a);
21
+ }, set [r](u) {
22
+ return v(this, a, u);
23
+ } }, r));
24
+ s ? h && s < 4 && Z(a, (s > 2 ? "set " : s > 1 ? "get " : "") + r) : Z(n, r);
25
+ for (var M = i.length - 1; M >= 0; M--)
26
+ w = Se(s, r, L = {}, e[3], ce), s && (w.static = j, w.private = h, m = w.access = { has: h ? (u) => ke(n, u) : (u) => r in u }, s ^ 3 && (m.get = h ? (u) => (s ^ 1 ? f : me)(u, n, s ^ 4 ? a : _.get) : (u) => u[r]), s > 2 && (m.set = h ? (u, V) => v(u, n, V, s ^ 4 ? a : _.set) : (u, V) => u[r] = V)), l = (0, i[M])(s ? s < 4 ? h ? a : _[Q] : s > 4 ? void 0 : { get: _.get, set: _.set } : n, w), L._ = 1, s ^ 4 || l === void 0 ? P(l) && (s > 4 ? R.unshift(l) : s ? h ? a = l : _[Q] = l : n = l) : typeof l != "object" || l === null ? O("Object expected") : (P(p = l.get) && (_.get = p), P(p = l.set) && (_.set = p), P(p = l.init) && R.unshift(p));
27
+ return s || ee(e, n), _ && G(n, r, _), h ? s ^ 4 ? a : _ : n;
28
+ }, N = (e, t, r) => t.has(e) || O("Cannot " + r), ke = (e, t) => Object(t) !== t ? O('Cannot use the "in" operator on this value') : e.has(t), f = (e, t, r) => (N(e, t, "read from private field"), r ? r.call(e) : t.get(e)), S = (e, t, r) => t.has(e) ? O("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), v = (e, t, r, i) => (N(e, t, "write to private field"), i ? i.call(e, r) : t.set(e, r), r), me = (e, t, r) => (N(e, t, "access private method"), r);
29
+ function je(e, t) {
30
+ if (t) {
31
+ let r;
32
+ return U(() => {
33
+ const i = e();
34
+ return i && r && t(r, i) ? r : (r = i, i);
35
+ });
36
+ }
37
+ return U(e);
38
+ }
39
+ function $(e, t) {
40
+ if (Object.is(e, t))
41
+ return !0;
42
+ if (e === null || t === null) return !1;
43
+ if (typeof e == "function" && typeof t == "function")
44
+ return e === t;
45
+ if (e instanceof Set && t instanceof Set) {
46
+ if (e.size !== t.size)
47
+ return !1;
48
+ for (const r of e)
49
+ if (!t.has(r))
50
+ return !1;
51
+ return !0;
52
+ }
53
+ if (Array.isArray(e))
54
+ return !Array.isArray(t) || e.length !== t.length ? !1 : !e.some(
55
+ (i, n) => !$(i, t[n])
56
+ );
57
+ if (typeof e == "object" && typeof t == "object") {
58
+ const r = Object.keys(e), i = Object.keys(t);
59
+ return r.length !== i.length ? !1 : !r.some(
60
+ (a) => !$(e[a], t[a])
61
+ );
62
+ }
63
+ return !1;
64
+ }
65
+ function W({ get: e }, t) {
66
+ return {
67
+ init(r) {
68
+ return fe(r);
69
+ },
70
+ get() {
71
+ return e.call(this).value;
72
+ },
73
+ set(r) {
74
+ const i = e.call(this);
75
+ i.peek() !== r && (i.value = r);
76
+ }
77
+ };
78
+ }
79
+ function Me(e, t) {
80
+ const r = /* @__PURE__ */ new WeakMap();
81
+ return function() {
82
+ let i = r.get(this);
83
+ return i || (i = je(e.bind(this)), r.set(this, i)), i.value;
84
+ };
85
+ }
86
+ function b(e = !0) {
87
+ return function(t, r) {
88
+ r.addInitializer(function() {
89
+ const i = r.kind === "field" ? this : r.static ? this : Object.getPrototypeOf(this), n = Object.getOwnPropertyDescriptor(i, r.name);
90
+ n && Object.defineProperty(i, r.name, we(ye({}, n), { enumerable: e }));
91
+ });
92
+ };
93
+ }
94
+ function Ve(...e) {
95
+ const t = e.map((r) => le(r));
96
+ return () => t.forEach((r) => r());
97
+ }
98
+ var te, re, ie, se, ne, ae, c, T, z, C, q, o, B, E, oe, F, J, I, H, K;
99
+ ae = [W], ne = [W], se = [W], ie = [b()], re = [b()], te = [b()];
100
+ var k = class {
101
+ constructor(e, t = Object.is) {
102
+ this.defaultValue = e, this.equals = t, d(c, 5, this), S(this, o), S(this, T, d(c, 8, this)), d(c, 11, this), S(this, B, d(c, 12, this)), d(c, 15, this), S(this, J, d(c, 16, this)), d(c, 19, this), this.reset = this.reset.bind(this), this.reset();
103
+ }
104
+ get current() {
105
+ return f(this, o, H);
106
+ }
107
+ get initial() {
108
+ return f(this, o, C);
109
+ }
110
+ get previous() {
111
+ return f(this, o, oe);
112
+ }
113
+ /** Set the current value */
114
+ set current(e) {
115
+ const t = ue(() => f(this, o, H));
116
+ e && t && this.equals(t, e) || X(() => {
117
+ f(this, o, C) || v(this, o, e, q), v(this, o, t, F), v(this, o, e, K);
118
+ });
119
+ }
120
+ /** Reset the state to the initial value */
121
+ reset(e = this.defaultValue) {
122
+ X(() => {
123
+ v(this, o, void 0, F), v(this, o, e, q), v(this, o, e, K);
124
+ });
125
+ }
11
126
  };
127
+ c = Pe();
128
+ T = /* @__PURE__ */ new WeakMap();
129
+ o = /* @__PURE__ */ new WeakSet();
130
+ B = /* @__PURE__ */ new WeakMap();
131
+ J = /* @__PURE__ */ new WeakMap();
132
+ z = y(c, 20, "#initial", ae, o, T), C = z.get, q = z.set;
133
+ E = y(c, 20, "#previous", ne, o, B), oe = E.get, F = E.set;
134
+ I = y(c, 20, "#current", se, o, J), H = I.get, K = I.set;
135
+ y(c, 2, "current", ie, k);
136
+ y(c, 2, "initial", re, k);
137
+ y(c, 2, "previous", te, k);
138
+ ee(c, k);
139
+ var g, We = class {
140
+ constructor() {
141
+ S(this, g, /* @__PURE__ */ new WeakMap());
142
+ }
143
+ get(e, t) {
144
+ var r;
145
+ return e ? (r = f(this, g).get(e)) == null ? void 0 : r.get(t) : void 0;
146
+ }
147
+ set(e, t, r) {
148
+ var i;
149
+ if (e)
150
+ return f(this, g).has(e) || f(this, g).set(e, /* @__PURE__ */ new Map()), (i = f(this, g).get(e)) == null ? void 0 : i.set(t, r);
151
+ }
152
+ clear(e) {
153
+ var t;
154
+ return e ? (t = f(this, g).get(e)) == null ? void 0 : t.clear() : void 0;
155
+ }
156
+ };
157
+ g = /* @__PURE__ */ new WeakMap();
12
158
  export {
13
- c as useFocusRing
159
+ Ee as Signal,
160
+ k as ValueHistory,
161
+ We as WeakStore,
162
+ X as batch,
163
+ je as computed,
164
+ $ as deepEqual,
165
+ Me as derived,
166
+ le as effect,
167
+ Ve as effects,
168
+ b as enumerable,
169
+ W as reactive,
170
+ fe as signal,
171
+ ue as untracked
14
172
  };
15
173
  //# sourceMappingURL=fondue-components143.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components143.js","sources":["../src/components/Select/hooks/useFocusRing.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useCallback, useRef, type FocusEvent, type MouseEvent, type MutableRefObject } from 'react';\n\ntype FocusRingHandlers = {\n /** Ref tracking whether the element was activated via mouse click. */\n wasClickedRef: MutableRefObject<boolean>;\n /** Handler for mousedown events — marks the interaction as click-based. */\n onMouseDown: (event: MouseEvent<HTMLElement>) => void;\n /** Handler for focus events — shows the focus ring only for keyboard navigation. */\n onFocus: (event: FocusEvent<HTMLElement>) => void;\n /** Handler for blur events — hides the focus ring and resets click tracking. */\n onBlur: (event: FocusEvent<HTMLElement>) => void;\n};\n\nexport const useFocusRing = (): FocusRingHandlers => {\n const wasClickedRef = useRef(false);\n\n const onMouseDown = useCallback((event: MouseEvent<HTMLElement>): void => {\n wasClickedRef.current = true;\n event.currentTarget.dataset.showFocusRing = 'false';\n }, []);\n\n const onFocus = useCallback((event: FocusEvent<HTMLElement>): void => {\n if (!wasClickedRef.current) {\n event.target.dataset.showFocusRing = 'true';\n }\n }, []);\n\n const onBlur = useCallback((event: FocusEvent<HTMLElement>): void => {\n event.target.dataset.showFocusRing = 'false';\n wasClickedRef.current = false;\n }, []);\n\n return { wasClickedRef, onMouseDown, onFocus, onBlur };\n};\n"],"names":["useFocusRing","wasClickedRef","useRef","onMouseDown","useCallback","event","onFocus","onBlur"],"mappings":";AAeO,MAAMA,IAAe,MAAyB;AACjD,QAAMC,IAAgBC,EAAO,EAAK,GAE5BC,IAAcC,EAAY,CAACC,MAAyC;AACtE,IAAAJ,EAAc,UAAU,IACxBI,EAAM,cAAc,QAAQ,gBAAgB;AAAA,EAChD,GAAG,CAAA,CAAE,GAECC,IAAUF,EAAY,CAACC,MAAyC;AAClE,IAAKJ,EAAc,YACfI,EAAM,OAAO,QAAQ,gBAAgB;AAAA,EAE7C,GAAG,CAAA,CAAE,GAECE,IAASH,EAAY,CAACC,MAAyC;AACjE,IAAAA,EAAM,OAAO,QAAQ,gBAAgB,SACrCJ,EAAc,UAAU;AAAA,EAC5B,GAAG,CAAA,CAAE;AAEL,SAAO,EAAE,eAAAA,GAAe,aAAAE,GAAa,SAAAG,GAAS,QAAAC,EAAA;AAClD;"}
1
+ {"version":3,"file":"fondue-components143.js","sources":["../../../node_modules/.pnpm/@dnd-kit+state@0.3.2/node_modules/@dnd-kit/state/dist/index.mjs"],"sourcesContent":["var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for(\"Symbol.\" + name);\nvar __typeError = (msg) => {\n throw TypeError(msg);\n};\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __decoratorStart = (base) => {\n var _a2;\n return [, , , __create((_a2 = base == null ? void 0 : base[__knownSymbol(\"metadata\")]) != null ? _a2 : null)];\n};\nvar __decoratorStrings = [\"class\", \"method\", \"getter\", \"setter\", \"accessor\", \"field\", \"value\", \"get\", \"set\"];\nvar __expectFn = (fn) => fn !== void 0 && typeof fn !== \"function\" ? __typeError(\"Function expected\") : fn;\nvar __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError(\"Already initialized\") : fns.push(__expectFn(fn || null)) });\nvar __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol(\"metadata\"), array[3]);\nvar __runInitializers = (array, flags, self, value) => {\n for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value = fns[i].call(self, value);\n return value;\n};\nvar __decorateElement = (array, flags, name, decorators, target, extra) => {\n var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);\n var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];\n var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);\n var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {\n return __privateGet(this, extra);\n }, set [name](x) {\n return __privateSet(this, extra, x);\n } }, name));\n k ? p && k < 4 && __name(extra, (k > 2 ? \"set \" : k > 1 ? \"get \" : \"\") + name) : __name(target, name);\n for (var i = decorators.length - 1; i >= 0; i--) {\n ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);\n if (k) {\n ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };\n if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];\n if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;\n }\n it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;\n if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);\n else if (typeof it !== \"object\" || it === null) __typeError(\"Object expected\");\n else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);\n }\n return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the \"in\" operator on this value') : member.has(obj);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), getter ? getter.call(obj) : member.get(obj));\nvar __privateAdd = (obj, member, value) => member.has(obj) ? __typeError(\"Cannot add the same private member more than once\") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), setter ? setter.call(obj, value) : member.set(obj, value), value);\nvar __privateMethod = (obj, member, method) => (__accessCheck(obj, member, \"access private method\"), method);\n\n// src/index.ts\nimport {\n batch as batch2,\n effect as effect2,\n untracked as untracked3,\n signal as signal2,\n Signal\n} from \"@preact/signals-core\";\n\n// src/computed.ts\nimport {\n computed as computedSignal\n} from \"@preact/signals-core\";\nfunction computed(compute, comparator) {\n if (comparator) {\n let previousValue;\n return computedSignal(() => {\n const value = compute();\n if (value && previousValue && comparator(previousValue, value)) {\n return previousValue;\n }\n previousValue = value;\n return value;\n });\n }\n return computedSignal(compute);\n}\n\n// src/comparators.ts\nfunction deepEqual(a, b) {\n if (Object.is(a, b)) {\n return true;\n }\n if (a === null || b === null) return false;\n if (typeof a === \"function\" && typeof b === \"function\") {\n return a === b;\n }\n if (a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) {\n return false;\n }\n for (const value of a) {\n if (!b.has(value)) {\n return false;\n }\n }\n return true;\n }\n if (Array.isArray(a)) {\n if (!Array.isArray(b) || a.length !== b.length) {\n return false;\n }\n const hasDifferentValues = a.some(\n (value, index) => !deepEqual(value, b[index])\n );\n return !hasDifferentValues;\n }\n if (typeof a === \"object\" && typeof b === \"object\") {\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) return false;\n const hasDifferentValues = aKeys.some(\n (key) => !deepEqual(a[key], b[key])\n );\n return !hasDifferentValues;\n }\n return false;\n}\n\n// src/decorators.ts\nimport { signal } from \"@preact/signals-core\";\nfunction reactive({ get }, _) {\n return {\n init(value) {\n return signal(value);\n },\n get() {\n const current = get.call(this);\n return current.value;\n },\n set(newValue) {\n const current = get.call(this);\n if (current.peek() === newValue) {\n return;\n }\n current.value = newValue;\n }\n };\n}\nfunction derived(target, _) {\n const map = /* @__PURE__ */ new WeakMap();\n return function() {\n let result = map.get(this);\n if (!result) {\n result = computed(target.bind(this));\n map.set(this, result);\n }\n return result.value;\n };\n}\nfunction enumerable(enumerable2 = true) {\n return function(_value, context) {\n context.addInitializer(function() {\n const host = context.kind === \"field\" ? this : context.static ? this : Object.getPrototypeOf(this);\n const descriptor = Object.getOwnPropertyDescriptor(host, context.name);\n if (descriptor) {\n Object.defineProperty(host, context.name, __spreadProps(__spreadValues({}, descriptor), { enumerable: enumerable2 }));\n }\n });\n };\n}\n\n// src/effects.ts\nimport { effect } from \"@preact/signals-core\";\nfunction effects(...entries) {\n const effects2 = entries.map((fn) => effect(fn));\n return () => effects2.forEach((cleanup) => cleanup());\n}\n\n// src/history.ts\nimport { batch, untracked } from \"@preact/signals-core\";\nvar _previous_dec, _initial_dec, _current_dec, _current_dec2, _previous_dec2, _initial_dec2, _init, _initial, _a, initial_get, initial_set, _ValueHistory_instances, _previous, _b, previous_get, previous_set, _current, _c, current_get, current_set;\n_initial_dec2 = [reactive], _previous_dec2 = [reactive], _current_dec2 = [reactive], _current_dec = [enumerable()], _initial_dec = [enumerable()], _previous_dec = [enumerable()];\nvar ValueHistory = class {\n constructor(defaultValue, equals = Object.is) {\n this.defaultValue = defaultValue;\n this.equals = equals;\n __runInitializers(_init, 5, this);\n __privateAdd(this, _ValueHistory_instances);\n // @ts-ignore\n __privateAdd(this, _initial, __runInitializers(_init, 8, this)), __runInitializers(_init, 11, this);\n // @ts-ignore\n __privateAdd(this, _previous, __runInitializers(_init, 12, this)), __runInitializers(_init, 15, this);\n // @ts-ignore\n __privateAdd(this, _current, __runInitializers(_init, 16, this)), __runInitializers(_init, 19, this);\n this.reset = this.reset.bind(this);\n this.reset();\n }\n get current() {\n return __privateGet(this, _ValueHistory_instances, current_get);\n }\n get initial() {\n return __privateGet(this, _ValueHistory_instances, initial_get);\n }\n get previous() {\n return __privateGet(this, _ValueHistory_instances, previous_get);\n }\n /** Set the current value */\n set current(value) {\n const current = untracked(() => __privateGet(this, _ValueHistory_instances, current_get));\n if (value && current && this.equals(current, value)) {\n return;\n }\n batch(() => {\n if (!__privateGet(this, _ValueHistory_instances, initial_get)) {\n __privateSet(this, _ValueHistory_instances, value, initial_set);\n }\n __privateSet(this, _ValueHistory_instances, current, previous_set);\n __privateSet(this, _ValueHistory_instances, value, current_set);\n });\n }\n /** Reset the state to the initial value */\n reset(value = this.defaultValue) {\n batch(() => {\n __privateSet(this, _ValueHistory_instances, void 0, previous_set);\n __privateSet(this, _ValueHistory_instances, value, initial_set);\n __privateSet(this, _ValueHistory_instances, value, current_set);\n });\n }\n};\n_init = __decoratorStart(null);\n_initial = new WeakMap();\n_ValueHistory_instances = new WeakSet();\n_previous = new WeakMap();\n_current = new WeakMap();\n_a = __decorateElement(_init, 20, \"#initial\", _initial_dec2, _ValueHistory_instances, _initial), initial_get = _a.get, initial_set = _a.set;\n_b = __decorateElement(_init, 20, \"#previous\", _previous_dec2, _ValueHistory_instances, _previous), previous_get = _b.get, previous_set = _b.set;\n_c = __decorateElement(_init, 20, \"#current\", _current_dec2, _ValueHistory_instances, _current), current_get = _c.get, current_set = _c.set;\n__decorateElement(_init, 2, \"current\", _current_dec, ValueHistory);\n__decorateElement(_init, 2, \"initial\", _initial_dec, ValueHistory);\n__decorateElement(_init, 2, \"previous\", _previous_dec, ValueHistory);\n__decoratorMetadata(_init, ValueHistory);\n\n// src/snapshot.ts\nimport { untracked as untracked2 } from \"@preact/signals-core\";\nfunction snapshot(value) {\n return untracked2(() => {\n const output = {};\n for (const key in value) {\n output[key] = value[key];\n }\n return output;\n });\n}\n\n// src/store.ts\nvar _store;\nvar WeakStore = class {\n constructor() {\n __privateAdd(this, _store, /* @__PURE__ */ new WeakMap());\n }\n get(key, id) {\n var _a2;\n return key ? (_a2 = __privateGet(this, _store).get(key)) == null ? void 0 : _a2.get(id) : void 0;\n }\n set(key, id, value) {\n var _a2;\n if (!key) return;\n if (!__privateGet(this, _store).has(key)) __privateGet(this, _store).set(key, /* @__PURE__ */ new Map());\n return (_a2 = __privateGet(this, _store).get(key)) == null ? void 0 : _a2.set(id, value);\n }\n clear(key) {\n var _a2;\n return key ? (_a2 = __privateGet(this, _store).get(key)) == null ? void 0 : _a2.clear() : void 0;\n }\n};\n_store = new WeakMap();\nexport {\n Signal,\n ValueHistory,\n WeakStore,\n batch2 as batch,\n computed,\n deepEqual,\n derived,\n effect2 as effect,\n effects,\n enumerable,\n reactive,\n signal2 as signal,\n snapshot,\n untracked3 as untracked\n};\n"],"names":["__create","__defProp","__defProps","__getOwnPropDesc","__getOwnPropDescs","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__knownSymbol","name","symbol","__typeError","msg","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","__spreadProps","__name","target","__decoratorStart","base","_a2","__decoratorStrings","__expectFn","fn","__decoratorContext","kind","done","metadata","fns","__decoratorMetadata","array","__runInitializers","flags","self","i","n","__decorateElement","decorators","extra","it","ctx","access","k","s","p","j","initializers","extraInitializers","desc","__privateGet","x","__privateSet","__privateIn","__privateMethod","y","__accessCheck","member","getter","__privateAdd","setter","method","computed","compute","comparator","previousValue","computedSignal","deepEqual","index","aKeys","bKeys","reactive","get","_","signal","newValue","current","derived","map","result","enumerable","enumerable2","_value","context","host","descriptor","effects","entries","effects2","effect","cleanup","_previous_dec","_initial_dec","_current_dec","_current_dec2","_previous_dec2","_initial_dec2","_init","_initial","_a","initial_get","initial_set","_ValueHistory_instances","_previous","_b","previous_get","previous_set","_current","_c","current_get","current_set","ValueHistory","defaultValue","equals","untracked","batch","_store","WeakStore","id"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,74 +1,63 @@
1
- import { jsx as E } from "react/jsx-runtime";
2
- import { useState as S, useMemo as b, Children as V, isValidElement as C, cloneElement as w, useCallback as B, useEffect as x } from "react";
3
- import { SelectClear as F } from "./fondue-components155.js";
4
- import { ForwardedRefSelectItem as L } from "./fondue-components99.js";
5
- import { ForwardedRefSelectSlot as y } from "./fondue-components100.js";
6
- import { getSelectOptionValue as I } from "./fondue-components156.js";
7
- const d = (n, s) => {
8
- const [e, r] = S(!1), [m, i] = S(null), [l, f] = S({
9
- menuComponents: [],
10
- items: []
11
- });
12
- return x(() => {
13
- i(null), s || f({
14
- menuComponents: [],
15
- items: []
16
- }), s && (r(!0), s(n).then((u) => {
17
- f({
18
- menuComponents: u.map((o) => /* @__PURE__ */ E(L, { label: o.label, value: o.value, children: o.content ? o.content : o.label }, o.value)),
19
- items: u.map((o) => ({ value: o.value, label: o.label, children: o.content }))
20
- }), r(!1);
21
- }).catch((u) => {
22
- i(u), r(!1);
23
- }));
24
- }, [n, s]), { isLoading: e, error: m, menuComponents: l.menuComponents, items: l.items };
25
- }, g = (n) => {
26
- const s = [];
27
- return V.forEach(n, (e) => {
28
- if (C(e) && e.type === L)
29
- s.push(I(e.props));
30
- else if (C(e) && e.props.children) {
31
- const r = g(e.props.children);
32
- for (const m of r)
33
- s.push(m);
34
- }
35
- }), s;
36
- }, q = (n, s) => {
37
- const [e, r] = S(""), { inputSlots: m, menuSlots: i, itemValues: l, clearButton: f } = b(() => {
38
- const a = [], p = [];
39
- let v;
40
- V.toArray(n).some(
41
- (t) => C(t) && t.type === y
42
- ) ? V.forEach(n, (t) => {
43
- C(t) && t.type === y && (t.props.name === "menu" ? p.push(t.props.children) : t.props.name === "left" || t.props.name === "right" ? a.push(t) : t.props.name === "clear" && (t.props.children ? v = t : v = w(t, { children: /* @__PURE__ */ E(F, {}) })));
44
- }) : p.push(n);
45
- const R = g(p);
46
- return { inputSlots: a, menuSlots: p, itemValues: R, clearButton: v };
47
- }, [n]), u = b(
48
- () => l.filter(
49
- (a) => e === "" || a.label.toLowerCase().includes(e.toLowerCase())
50
- ),
51
- [l, e]
52
- ), o = B(
53
- (a) => a !== void 0 ? l.find((p) => p.value === a) : void 0,
54
- [l]
55
- ), c = d(e, s);
56
- return {
57
- items: [...u, ...c.items],
58
- menuSlots: [...i, ...c.menuComponents],
59
- filterText: e,
60
- inputSlots: m,
61
- clearButton: f,
62
- setFilterText: r,
63
- getItemByValue: o,
64
- asyncItemStatus: {
65
- isLoading: c.isLoading,
66
- error: c.error
1
+ import { useEffect as m, useLayoutEffect as w, useRef as i, useMemo as y, useState as E, useCallback as k } from "react";
2
+ import "./fondue-components143.js";
3
+ import { flushSync as O } from "react-dom";
4
+ import { currentValue as d } from "./fondue-components145.js";
5
+ import { effect as S, untracked as V } from "./fondue-components146.js";
6
+ var M = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", p = M ? w : m;
7
+ function U() {
8
+ const e = E(0)[1];
9
+ return k(() => {
10
+ e((t) => t + 1);
11
+ }, [e]);
12
+ }
13
+ function D(e, t) {
14
+ const n = i(/* @__PURE__ */ new Map()), r = U();
15
+ return p(() => {
16
+ if (!e) {
17
+ n.current.clear();
18
+ return;
67
19
  }
68
- };
69
- };
20
+ return S(() => {
21
+ var o;
22
+ let c = !1, u = !1;
23
+ for (const a of n.current) {
24
+ const [f] = a, l = V(() => a[1]), s = e[f];
25
+ l !== s && (c = !0, n.current.set(f, s), u = (o = t == null ? void 0 : t(f, l, s)) != null ? o : !1);
26
+ }
27
+ c && (u ? O(r) : r());
28
+ });
29
+ }, [e]), y(
30
+ () => e && new Proxy(e, {
31
+ get(o, c) {
32
+ const u = o[c];
33
+ return n.current.set(c, u), u;
34
+ }
35
+ }),
36
+ [e]
37
+ );
38
+ }
39
+ function I(e, t) {
40
+ e();
41
+ }
42
+ function L(e, t, n = m, r = Object.is) {
43
+ const o = i(e);
44
+ n(() => {
45
+ const c = o.current;
46
+ r(e, c) || (o.current = e, t(e, c));
47
+ }, [t, e]);
48
+ }
49
+ function _(e, t) {
50
+ const n = i(d(e));
51
+ p(() => {
52
+ const r = d(e);
53
+ r !== n.current && (n.current = r, t(r));
54
+ });
55
+ }
70
56
  export {
71
- g as getRecursiveOptionValues,
72
- q as useSelectData
57
+ D as useDeepSignal,
58
+ I as useImmediateEffect,
59
+ p as useIsomorphicLayoutEffect,
60
+ _ as useOnElementChange,
61
+ L as useOnValueChange
73
62
  };
74
63
  //# sourceMappingURL=fondue-components144.js.map