@mittwald/flow-react-components 1.5.15 → 1.5.16

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.
@@ -12,9 +12,36 @@ import { createElement } from "react";
12
12
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
13
13
  import * as Aria from "react-aria-components";
14
14
  //#region src/components/MenuItem/MenuItem.tsx
15
+ var isMuted = (props) => !!(props.isPending || props.isSucceeded || props.isFailed || props["aria-disabled"]);
16
+ var renderElement = (domProps) => "href" in domProps ? /* @__PURE__ */ jsx("a", { ...domProps }) : /* @__PURE__ */ jsx("div", { ...domProps });
17
+ /**
18
+ * React Aria drops `aria-disabled` from the props it forwards to the DOM, so it
19
+ * is added to the rendered element. React Aria's `onClick` runs the menu's
20
+ * `onAction`, follows the link and toggles the selection. A mouse release that
21
+ * started outside the item toggles it on pointer up, Enter and Space toggle it
22
+ * on key down. All three handlers are replaced, and like React Aria they stop
23
+ * the event. A muted submenu trigger still opens its submenu on hover and
24
+ * ArrowRight, only Enter and Space are swallowed.
25
+ */
26
+ var renderMuted = (render = renderElement) => (domProps, renderProps) => render({
27
+ ...domProps,
28
+ "aria-disabled": true,
29
+ onClick: (e) => {
30
+ e.preventDefault();
31
+ e.stopPropagation();
32
+ },
33
+ onPointerUp: void 0,
34
+ onKeyDown: (e) => {
35
+ if (e.key === "Enter" || e.key === " ") {
36
+ e.preventDefault();
37
+ e.stopPropagation();
38
+ } else domProps.onKeyDown?.(e);
39
+ }
40
+ }, renderProps);
15
41
  var disablePendingProps = (props) => {
16
- if (props.isPending || props.isSucceeded || props.isFailed || props["aria-disabled"]) {
42
+ if (isMuted(props)) {
17
43
  props = { ...props };
44
+ props.onAction = void 0;
18
45
  props.onPress = void 0;
19
46
  props.onPressStart = void 0;
20
47
  props.onPressEnd = void 0;
@@ -25,8 +52,9 @@ var disablePendingProps = (props) => {
25
52
  };
26
53
  /** @flr-generate all */
27
54
  var MenuItem = flowComponent("MenuItem", (props) => {
55
+ const muted = isMuted(props);
28
56
  props = disablePendingProps(props);
29
- const { children, className, selectionVariant, isIndeterminate, id, ref, "aria-disabled": ariaDisabled, "aria-current": ariaCurrent, isPending, isSucceeded, isFailed, ...rest } = props;
57
+ const { children, className, selectionVariant, isIndeterminate, id, ref, "aria-disabled": ignoredAriaDisabled, "aria-current": ariaCurrent, render, isPending, isSucceeded, isFailed, ...rest } = props;
30
58
  /**
31
59
  * React Aria drops `aria-current` from the props it forwards to the DOM, so
32
60
  * the current state is exposed as a data attribute (`data-*` passes the
@@ -35,7 +63,7 @@ var MenuItem = flowComponent("MenuItem", (props) => {
35
63
  * "false".
36
64
  */
37
65
  const currentProps = ariaCurrent && ariaCurrent !== "false" ? { "data-current": true } : {};
38
- const rootClassName = clsx(MenuItem_module_default.menuItem, (ariaDisabled || isFailed || isSucceeded || isPending) && MenuItem_module_default.ariaDisabled, className);
66
+ const rootClassName = clsx(MenuItem_module_default.menuItem, className);
39
67
  useAriaAnnounceActionState(isPending ? "isPending" : isSucceeded ? "isSucceeded" : isFailed ? "isFailed" : "isIdle");
40
68
  const stateIconElement = isSucceeded ? /* @__PURE__ */ jsx(IconSucceeded, { color: "success" }) : isFailed ? /* @__PURE__ */ jsx(IconFailed, { color: "danger" }) : isPending ? /* @__PURE__ */ jsx(LoadingSpinner, {}) : void 0;
41
69
  const stateIcon = stateIconElement && /* @__PURE__ */ jsx("div", {
@@ -45,6 +73,7 @@ var MenuItem = flowComponent("MenuItem", (props) => {
45
73
  return /* @__PURE__ */ createElement(Aria.MenuItem, {
46
74
  ...rest,
47
75
  ...currentProps,
76
+ render: muted ? renderMuted(render) : render,
48
77
  key: id,
49
78
  id,
50
79
  className: rootClassName,
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.mjs","names":["styles","_Fragment"],"sources":["../../../../../../../src/components/MenuItem/MenuItem.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./MenuItem.module.scss\";\nimport clsx from \"clsx\";\nimport { MenuItemContent } from \"@/components/MenuItem/components/MenuItemContent/MenuItemContent\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useAriaAnnounceActionState } from \"@/components/Action/lib/ariaLive\";\nimport { IconFailed, IconSucceeded } from \"@/components/Icon/components/icons\";\nimport LoadingSpinner from \"@/components/LoadingSpinner\";\n\nexport interface MenuItemProps\n extends\n Omit<Aria.MenuItemProps, \"children\">,\n PropsWithChildren,\n FlowComponentProps {\n selectionVariant?: \"control\" | \"navigation\" | \"switch\";\n /**\n * Shows the checkbox of a multiple-selection item as partially checked,\n * unless the item is selected.\n */\n isIndeterminate?: boolean;\n /** Whether the button is in a pending state. */\n isPending?: boolean;\n /** Whether the button is in a succeeded state. */\n isSucceeded?: boolean;\n /** Whether the button is in a failed state. */\n isFailed?: boolean;\n /** Disables button but keeps it focusable. */\n \"aria-disabled\"?: boolean;\n /** Marks the menu item as referring to the currently active page. */\n \"aria-current\"?: string;\n}\n\nconst disablePendingProps = (props: MenuItemProps) => {\n if (\n props.isPending ||\n props.isSucceeded ||\n props.isFailed ||\n props[\"aria-disabled\"]\n ) {\n props = { ...props };\n props.onPress = undefined;\n props.onPressStart = undefined;\n props.onPressEnd = undefined;\n props.onPressChange = undefined;\n props.onPressUp = undefined;\n }\n\n return props;\n};\n\n/** @flr-generate all */\nexport const MenuItem = flowComponent(\"MenuItem\", (props) => {\n props = disablePendingProps(props);\n\n const {\n children,\n className,\n selectionVariant,\n isIndeterminate,\n id,\n ref,\n \"aria-disabled\": ariaDisabled,\n \"aria-current\": ariaCurrent,\n isPending,\n isSucceeded,\n isFailed,\n ...rest\n } = props;\n\n /**\n * React Aria drops `aria-current` from the props it forwards to the DOM, so\n * the current state is exposed as a data attribute (`data-*` passes the\n * filter) — that is what the `menuItem` styling matches on. Every\n * `aria-current` value marks the item as current, except an explicit\n * \"false\".\n */\n const currentProps =\n ariaCurrent && ariaCurrent !== \"false\" ? { \"data-current\": true } : {};\n\n const rootClassName = clsx(\n styles.menuItem /**\n * Workaround warning: The Aria.MenuItem does not support \"aria-disabled\" by\n * now, so this MenuItem will be visually disabled via CSS.\n */,\n (ariaDisabled || isFailed || isSucceeded || isPending) &&\n styles.ariaDisabled,\n className,\n );\n\n useAriaAnnounceActionState(\n isPending\n ? \"isPending\"\n : isSucceeded\n ? \"isSucceeded\"\n : isFailed\n ? \"isFailed\"\n : \"isIdle\",\n );\n\n const stateIconElement = isSucceeded ? (\n <IconSucceeded color=\"success\" />\n ) : isFailed ? (\n <IconFailed color=\"danger\" />\n ) : isPending ? (\n <LoadingSpinner />\n ) : undefined;\n\n const stateIcon = stateIconElement && (\n <div className={styles.stateIcon}>{stateIconElement}</div>\n );\n\n return (\n <Aria.MenuItem\n {...rest}\n {...currentProps}\n key={id}\n id={id}\n className={rootClassName}\n ref={ref}\n >\n {(props) => (\n <>\n <MenuItemContent\n {...props}\n selectionVariant={selectionVariant}\n isIndeterminate={isIndeterminate}\n >\n {children}\n </MenuItemContent>\n {stateIcon}\n </>\n )}\n </Aria.MenuItem>\n );\n});\n\nexport default MenuItem;\n"],"mappings":";;;;;;;;;;;;;;AAkCA,IAAM,uBAAuB,UAAyB;CACpD,IACE,MAAM,aACN,MAAM,eACN,MAAM,YACN,MAAM,kBACN;EACA,QAAQ,EAAE,GAAG,MAAM;EACnB,MAAM,UAAU,KAAA;EAChB,MAAM,eAAe,KAAA;EACrB,MAAM,aAAa,KAAA;EACnB,MAAM,gBAAgB,KAAA;EACtB,MAAM,YAAY,KAAA;CACpB;CAEA,OAAO;AACT;;AAGA,IAAa,WAAW,cAAc,aAAa,UAAU;CAC3D,QAAQ,oBAAoB,KAAK;CAEjC,MAAM,EACJ,UACA,WACA,kBACA,iBACA,IACA,KACA,iBAAiB,cACjB,gBAAgB,aAChB,WACA,aACA,UACA,GAAG,SACD;;;;;;;;CASJ,MAAM,eACJ,eAAe,gBAAgB,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAEvE,MAAM,gBAAgB,KACpBA,wBAAO,WAIN,gBAAgB,YAAY,eAAe,cAC1CA,wBAAO,cACT,SACF;CAEA,2BACE,YACI,cACA,cACE,gBACA,WACE,aACA,QACV;CAEA,MAAM,mBAAmB,cACvB,oBAAC,eAAD,EAAe,OAAM,UAAW,CAAA,IAC9B,WACF,oBAAC,YAAD,EAAY,OAAM,SAAU,CAAA,IAC1B,YACF,oBAAC,gBAAD,CAAiB,CAAA,IACf,KAAA;CAEJ,MAAM,YAAY,oBAChB,oBAAC,OAAD;EAAK,WAAWA,wBAAO;EAAY,UAAA;CAAsB,CAAA;CAG3D,OACE,8BAAC,KAAK,UAAN;EACE,GAAI;EACJ,GAAI;EACJ,KAAK;EACD;EACJ,WAAW;EACN;CAcQ,IAZX,UACA,qBAAAC,YAAA,EAAA,UAAA,CACE,oBAAC,iBAAD;EACE,GAAI;EACc;EACD;EAEhB;CACc,CAAA,GAChB,SACD,EAAA,CAAA,CAES;AAEnB,CAAC"}
1
+ {"version":3,"file":"MenuItem.mjs","names":["styles","_Fragment"],"sources":["../../../../../../../src/components/MenuItem/MenuItem.tsx"],"sourcesContent":["import type { KeyboardEvent, MouseEvent, PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./MenuItem.module.scss\";\nimport clsx from \"clsx\";\nimport { MenuItemContent } from \"@/components/MenuItem/components/MenuItemContent/MenuItemContent\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useAriaAnnounceActionState } from \"@/components/Action/lib/ariaLive\";\nimport { IconFailed, IconSucceeded } from \"@/components/Icon/components/icons\";\nimport LoadingSpinner from \"@/components/LoadingSpinner\";\n\nexport interface MenuItemProps\n extends\n Omit<Aria.MenuItemProps, \"children\">,\n PropsWithChildren,\n FlowComponentProps {\n selectionVariant?: \"control\" | \"navigation\" | \"switch\";\n /**\n * Shows the checkbox of a multiple-selection item as partially checked,\n * unless the item is selected.\n */\n isIndeterminate?: boolean;\n /** Whether the button is in a pending state. */\n isPending?: boolean;\n /** Whether the button is in a succeeded state. */\n isSucceeded?: boolean;\n /** Whether the button is in a failed state. */\n isFailed?: boolean;\n /** Disables button but keeps it focusable. */\n \"aria-disabled\"?: boolean;\n /** Marks the menu item as referring to the currently active page. */\n \"aria-current\"?: string;\n}\n\nconst isMuted = (props: MenuItemProps) =>\n !!(\n props.isPending ||\n props.isSucceeded ||\n props.isFailed ||\n props[\"aria-disabled\"]\n );\n\ntype RenderFunction = NonNullable<MenuItemProps[\"render\"]>;\n\nconst renderElement: RenderFunction = (domProps) =>\n \"href\" in domProps ? <a {...domProps} /> : <div {...domProps} />;\n\n/**\n * React Aria drops `aria-disabled` from the props it forwards to the DOM, so it\n * is added to the rendered element. React Aria's `onClick` runs the menu's\n * `onAction`, follows the link and toggles the selection. A mouse release that\n * started outside the item toggles it on pointer up, Enter and Space toggle it\n * on key down. All three handlers are replaced, and like React Aria they stop\n * the event. A muted submenu trigger still opens its submenu on hover and\n * ArrowRight, only Enter and Space are swallowed.\n */\nconst renderMuted =\n (render: RenderFunction = renderElement): RenderFunction =>\n (domProps, renderProps) =>\n render(\n {\n ...domProps,\n \"aria-disabled\": true,\n onClick: (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n },\n onPointerUp: undefined,\n onKeyDown: (e: KeyboardEvent<HTMLDivElement & HTMLAnchorElement>) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n e.stopPropagation();\n } else {\n domProps.onKeyDown?.(e);\n }\n },\n },\n renderProps,\n );\n\nconst disablePendingProps = (props: MenuItemProps) => {\n if (isMuted(props)) {\n props = { ...props };\n props.onAction = undefined;\n props.onPress = undefined;\n props.onPressStart = undefined;\n props.onPressEnd = undefined;\n props.onPressChange = undefined;\n props.onPressUp = undefined;\n }\n\n return props;\n};\n\n/** @flr-generate all */\nexport const MenuItem = flowComponent(\"MenuItem\", (props) => {\n const muted = isMuted(props);\n props = disablePendingProps(props);\n\n const {\n children,\n className,\n selectionVariant,\n isIndeterminate,\n id,\n ref,\n \"aria-disabled\": ignoredAriaDisabled,\n \"aria-current\": ariaCurrent,\n render,\n isPending,\n isSucceeded,\n isFailed,\n ...rest\n } = props;\n\n /**\n * React Aria drops `aria-current` from the props it forwards to the DOM, so\n * the current state is exposed as a data attribute (`data-*` passes the\n * filter) — that is what the `menuItem` styling matches on. Every\n * `aria-current` value marks the item as current, except an explicit\n * \"false\".\n */\n const currentProps =\n ariaCurrent && ariaCurrent !== \"false\" ? { \"data-current\": true } : {};\n\n const rootClassName = clsx(styles.menuItem, className);\n\n useAriaAnnounceActionState(\n isPending\n ? \"isPending\"\n : isSucceeded\n ? \"isSucceeded\"\n : isFailed\n ? \"isFailed\"\n : \"isIdle\",\n );\n\n const stateIconElement = isSucceeded ? (\n <IconSucceeded color=\"success\" />\n ) : isFailed ? (\n <IconFailed color=\"danger\" />\n ) : isPending ? (\n <LoadingSpinner />\n ) : undefined;\n\n const stateIcon = stateIconElement && (\n <div className={styles.stateIcon}>{stateIconElement}</div>\n );\n\n return (\n <Aria.MenuItem\n {...rest}\n {...currentProps}\n render={muted ? renderMuted(render) : render}\n key={id}\n id={id}\n className={rootClassName}\n ref={ref}\n >\n {(props) => (\n <>\n <MenuItemContent\n {...props}\n selectionVariant={selectionVariant}\n isIndeterminate={isIndeterminate}\n >\n {children}\n </MenuItemContent>\n {stateIcon}\n </>\n )}\n </Aria.MenuItem>\n );\n});\n\nexport default MenuItem;\n"],"mappings":";;;;;;;;;;;;;;AAkCA,IAAM,WAAW,UACf,CAAC,EACC,MAAM,aACN,MAAM,eACN,MAAM,YACN,MAAM;AAKV,IAAM,iBAAiC,aACrC,UAAU,WAAW,oBAAC,KAAD,EAAG,GAAI,SAAW,CAAA,IAAI,oBAAC,OAAD,EAAK,GAAI,SAAW,CAAA;;;;;;;;;;AAWjE,IAAM,eACH,SAAyB,mBACzB,UAAU,gBACT,OACE;CACE,GAAG;CACH,iBAAiB;CACjB,UAAU,MAAkB;EAC1B,EAAE,eAAe;EACjB,EAAE,gBAAgB;CACpB;CACA,aAAa,KAAA;CACb,YAAY,MAAyD;EACnE,IAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;GACtC,EAAE,eAAe;GACjB,EAAE,gBAAgB;EACpB,OACE,SAAS,YAAY,CAAC;CAE1B;AACF,GACA,WACF;AAEJ,IAAM,uBAAuB,UAAyB;CACpD,IAAI,QAAQ,KAAK,GAAG;EAClB,QAAQ,EAAE,GAAG,MAAM;EACnB,MAAM,WAAW,KAAA;EACjB,MAAM,UAAU,KAAA;EAChB,MAAM,eAAe,KAAA;EACrB,MAAM,aAAa,KAAA;EACnB,MAAM,gBAAgB,KAAA;EACtB,MAAM,YAAY,KAAA;CACpB;CAEA,OAAO;AACT;;AAGA,IAAa,WAAW,cAAc,aAAa,UAAU;CAC3D,MAAM,QAAQ,QAAQ,KAAK;CAC3B,QAAQ,oBAAoB,KAAK;CAEjC,MAAM,EACJ,UACA,WACA,kBACA,iBACA,IACA,KACA,iBAAiB,qBACjB,gBAAgB,aAChB,QACA,WACA,aACA,UACA,GAAG,SACD;;;;;;;;CASJ,MAAM,eACJ,eAAe,gBAAgB,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAEvE,MAAM,gBAAgB,KAAKA,wBAAO,UAAU,SAAS;CAErD,2BACE,YACI,cACA,cACE,gBACA,WACE,aACA,QACV;CAEA,MAAM,mBAAmB,cACvB,oBAAC,eAAD,EAAe,OAAM,UAAW,CAAA,IAC9B,WACF,oBAAC,YAAD,EAAY,OAAM,SAAU,CAAA,IAC1B,YACF,oBAAC,gBAAD,CAAiB,CAAA,IACf,KAAA;CAEJ,MAAM,YAAY,oBAChB,oBAAC,OAAD;EAAK,WAAWA,wBAAO;EAAY,UAAA;CAAsB,CAAA;CAG3D,OACE,8BAAC,KAAK,UAAN;EACE,GAAI;EACJ,GAAI;EACJ,QAAQ,QAAQ,YAAY,MAAM,IAAI;EACtC,KAAK;EACD;EACJ,WAAW;EACN;CAcQ,IAZX,UACA,qBAAAC,YAAA,EAAA,UAAA,CACE,oBAAC,iBAAD;EACE,GAAI;EACc;EACD;EAEhB;CACc,CAAA,GAChB,SACD,EAAA,CAAA,CAES;AAEnB,CAAC"}
@@ -5,7 +5,6 @@ var menuItem = "flow--menu-item";
5
5
  var icon = "flow--menu-item--icon";
6
6
  var checkMark = "flow--menu-item--check-mark";
7
7
  var controlIcon = "flow--menu-item--control-icon";
8
- var ariaDisabled = "flow--menu-item--aria-disabled";
9
8
  var avatar = "flow--menu-item--avatar";
10
9
  var stateIcon = "flow--menu-item--state-icon";
11
10
  var controlIconActive = "flow--menu-item--control-icon-active";
@@ -17,7 +16,6 @@ var MenuItem_module_default = {
17
16
  icon,
18
17
  checkMark,
19
18
  controlIcon,
20
- ariaDisabled,
21
19
  avatar,
22
20
  stateIcon,
23
21
  controlIconActive,
@@ -25,6 +23,6 @@ var MenuItem_module_default = {
25
23
  badge
26
24
  };
27
25
  //#endregion
28
- export { ariaDisabled, avatar, badge, checkMark, controlIcon, controlIconActive, MenuItem_module_default as default, icon, kbd, menuItem, stateIcon };
26
+ export { avatar, badge, checkMark, controlIcon, controlIconActive, MenuItem_module_default as default, icon, kbd, menuItem, stateIcon };
29
27
 
30
28
  //# sourceMappingURL=MenuItem.module.mjs.map
@@ -7,7 +7,6 @@ var item = "flow--navigation--item";
7
7
  var icon = "flow--navigation--icon";
8
8
  var checkMark = "flow--navigation--check-mark";
9
9
  var controlIcon = "flow--navigation--control-icon";
10
- var ariaDisabled = "flow--navigation--aria-disabled";
11
10
  var avatar = "flow--navigation--avatar";
12
11
  var badge = "flow--navigation--badge";
13
12
  var Navigation_module_default = {
@@ -18,11 +17,10 @@ var Navigation_module_default = {
18
17
  icon,
19
18
  checkMark,
20
19
  controlIcon,
21
- ariaDisabled,
22
20
  avatar,
23
21
  badge
24
22
  };
25
23
  //#endregion
26
- export { ariaDisabled, avatar, badge, checkMark, controlIcon, Navigation_module_default as default, icon, item, linkList, navigation };
24
+ export { avatar, badge, checkMark, controlIcon, Navigation_module_default as default, icon, item, linkList, navigation };
27
25
 
28
26
  //# sourceMappingURL=Navigation.module.mjs.map
@@ -5,7 +5,6 @@ var option = "flow--option";
5
5
  var icon = "flow--option--icon";
6
6
  var checkMark = "flow--option--check-mark";
7
7
  var controlIcon = "flow--option--control-icon";
8
- var ariaDisabled = "flow--option--aria-disabled";
9
8
  var avatar = "flow--option--avatar";
10
9
  var content = "flow--option--content";
11
10
  var Option_module_default = {
@@ -14,11 +13,10 @@ var Option_module_default = {
14
13
  icon,
15
14
  checkMark,
16
15
  controlIcon,
17
- ariaDisabled,
18
16
  avatar,
19
17
  content
20
18
  };
21
19
  //#endregion
22
- export { ariaDisabled, avatar, checkMark, content, controlIcon, Option_module_default as default, icon, option };
20
+ export { avatar, checkMark, content, controlIcon, Option_module_default as default, icon, option };
23
21
 
24
22
  //# sourceMappingURL=Option.module.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mittwald/flow-react-components",
3
- "version": "1.5.15",
3
+ "version": "1.5.16",
4
4
  "type": "module",
5
5
  "description": "A React implementation of Flow, mittwald’s design system",
6
6
  "homepage": "https://flow.mittwald.de",
@@ -84,9 +84,9 @@
84
84
  "@internationalized/string-compiler": "^3.4.1",
85
85
  "@lezer/common": "^1.5.2",
86
86
  "@lezer/highlight": "^1.2.3",
87
- "@mittwald/flow-icons": "^1.5.15",
87
+ "@mittwald/flow-icons": "^1.5.16",
88
88
  "@mittwald/password-tools-js": "^3.0.0",
89
- "@mittwald/react-tunnel": "^1.5.15",
89
+ "@mittwald/react-tunnel": "^1.5.16",
90
90
  "@mittwald/react-use-promise": "^4.2.2",
91
91
  "@react-aria/form": "^3.2.1",
92
92
  "@react-aria/i18n": "^3.13.1",
@@ -139,13 +139,13 @@
139
139
  "@internationalized/date": "^3.12.3",
140
140
  "@lezer/generator": "^1.8.0",
141
141
  "@lezer/lr": "^1.4.10",
142
- "@mittwald/flow-components-base": "1.5.15",
143
- "@mittwald/flow-core": "1.5.15",
144
- "@mittwald/flow-design-tokens": "1.5.15",
145
- "@mittwald/flow-icons-base": "1.5.15",
142
+ "@mittwald/flow-components-base": "1.5.16",
143
+ "@mittwald/flow-core": "1.5.16",
144
+ "@mittwald/flow-design-tokens": "1.5.16",
145
+ "@mittwald/flow-icons-base": "1.5.16",
146
146
  "@mittwald/react-use-promise": "^4.2.2",
147
147
  "@mittwald/remote-dom-react": "1.2.2-mittwald.10",
148
- "@mittwald/typescript-config": "1.5.15",
148
+ "@mittwald/typescript-config": "1.5.16",
149
149
  "@nx/storybook": "^22.7.6",
150
150
  "@storybook/addon-a11y": "^10.5.10",
151
151
  "@storybook/addon-actions": "^9.0.8",
@@ -199,7 +199,7 @@
199
199
  },
200
200
  "peerDependencies": {
201
201
  "@internationalized/date": "^3.12.2",
202
- "@mittwald/flow-icons-pro": "1.5.15",
202
+ "@mittwald/flow-icons-pro": "1.5.16",
203
203
  "@mittwald/react-use-promise": "^4.2.2",
204
204
  "next": "^16.2.3",
205
205
  "react": "^19.2.0",
@@ -223,5 +223,5 @@
223
223
  "browserslist": [
224
224
  "baseline widely available"
225
225
  ],
226
- "gitHead": "7ce0a249dc843dc558cff6cbb93ed45714cfaa6d"
226
+ "gitHead": "d1bc9af39685c830d052fc726f36ad2d7d3e204a"
227
227
  }