@plasmicpkgs/react-aria 0.0.120 → 0.0.122

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 (118) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/OptionsItemIdManager.d.ts +18 -0
  3. package/dist/react-aria.esm.js +151 -184
  4. package/dist/react-aria.esm.js.map +1 -1
  5. package/dist/react-aria.js +150 -183
  6. package/dist/react-aria.js.map +1 -1
  7. package/dist/registerCheckboxGroup.d.ts +2 -5
  8. package/dist/registerComboBox.d.ts +2 -5
  9. package/dist/registerListBox.d.ts +2 -3
  10. package/dist/registerRadioGroup.d.ts +2 -5
  11. package/dist/registerSelect.d.ts +2 -5
  12. package/dist/utils.d.ts +3 -0
  13. package/package.json +2 -2
  14. package/skinny/OptionsItemIdManager-904d6cea.esm.js +105 -0
  15. package/skinny/OptionsItemIdManager-904d6cea.esm.js.map +1 -0
  16. package/skinny/OptionsItemIdManager-ab379c9b.cjs.js +108 -0
  17. package/skinny/OptionsItemIdManager-ab379c9b.cjs.js.map +1 -0
  18. package/skinny/OptionsItemIdManager.d.ts +18 -0
  19. package/skinny/{common-616eb178.esm.js → common-a8047588.esm.js} +2 -2
  20. package/skinny/{common-616eb178.esm.js.map → common-a8047588.esm.js.map} +1 -1
  21. package/skinny/{common-45acb83c.cjs.js → common-abd18d7f.cjs.js} +2 -2
  22. package/skinny/{common-45acb83c.cjs.js.map → common-abd18d7f.cjs.js.map} +1 -1
  23. package/skinny/registerButton.cjs.js +2 -2
  24. package/skinny/registerButton.esm.js +2 -2
  25. package/skinny/registerCheckbox.cjs.js +8 -30
  26. package/skinny/registerCheckbox.cjs.js.map +1 -1
  27. package/skinny/registerCheckbox.esm.js +9 -31
  28. package/skinny/registerCheckbox.esm.js.map +1 -1
  29. package/skinny/registerCheckboxGroup.cjs.js +13 -16
  30. package/skinny/registerCheckboxGroup.cjs.js.map +1 -1
  31. package/skinny/registerCheckboxGroup.d.ts +2 -5
  32. package/skinny/registerCheckboxGroup.esm.js +14 -17
  33. package/skinny/registerCheckboxGroup.esm.js.map +1 -1
  34. package/skinny/registerComboBox.cjs.js +10 -9
  35. package/skinny/registerComboBox.cjs.js.map +1 -1
  36. package/skinny/registerComboBox.d.ts +2 -5
  37. package/skinny/registerComboBox.esm.js +11 -10
  38. package/skinny/registerComboBox.esm.js.map +1 -1
  39. package/skinny/registerDescription.cjs.js +2 -2
  40. package/skinny/registerDescription.esm.js +2 -2
  41. package/skinny/registerDialog.cjs.js +2 -2
  42. package/skinny/registerDialog.esm.js +2 -2
  43. package/skinny/registerDialogTrigger.cjs.js +2 -2
  44. package/skinny/registerDialogTrigger.esm.js +2 -2
  45. package/skinny/registerFieldError.cjs.js +1 -1
  46. package/skinny/registerFieldError.esm.js +1 -1
  47. package/skinny/registerForm.cjs.js +1 -1
  48. package/skinny/registerForm.esm.js +1 -1
  49. package/skinny/registerHeading.cjs.js +2 -2
  50. package/skinny/registerHeading.esm.js +2 -2
  51. package/skinny/registerInput.cjs.js +2 -2
  52. package/skinny/registerInput.esm.js +2 -2
  53. package/skinny/registerLabel.cjs.js +2 -2
  54. package/skinny/registerLabel.esm.js +2 -2
  55. package/skinny/{registerListBox-0f6ebcf0.esm.js → registerListBox-5f3e4b36.esm.js} +6 -17
  56. package/skinny/registerListBox-5f3e4b36.esm.js.map +1 -0
  57. package/skinny/{registerListBox-040b0374.cjs.js → registerListBox-c33bc9d2.cjs.js} +5 -16
  58. package/skinny/registerListBox-c33bc9d2.cjs.js.map +1 -0
  59. package/skinny/registerListBox.cjs.js +4 -4
  60. package/skinny/registerListBox.d.ts +2 -3
  61. package/skinny/registerListBox.esm.js +4 -4
  62. package/skinny/registerListBoxItem.cjs.js +8 -29
  63. package/skinny/registerListBoxItem.cjs.js.map +1 -1
  64. package/skinny/registerListBoxItem.esm.js +9 -30
  65. package/skinny/registerListBoxItem.esm.js.map +1 -1
  66. package/skinny/registerModal.cjs.js +2 -2
  67. package/skinny/registerModal.esm.js +2 -2
  68. package/skinny/registerOverlayArrow.cjs.js +2 -2
  69. package/skinny/registerOverlayArrow.esm.js +2 -2
  70. package/skinny/registerPopover.cjs.js +2 -2
  71. package/skinny/registerPopover.esm.js +2 -2
  72. package/skinny/registerRadio.cjs.js +8 -29
  73. package/skinny/registerRadio.cjs.js.map +1 -1
  74. package/skinny/registerRadio.esm.js +9 -30
  75. package/skinny/registerRadio.esm.js.map +1 -1
  76. package/skinny/registerRadioGroup.cjs.js +13 -16
  77. package/skinny/registerRadioGroup.cjs.js.map +1 -1
  78. package/skinny/registerRadioGroup.d.ts +2 -5
  79. package/skinny/registerRadioGroup.esm.js +14 -17
  80. package/skinny/registerRadioGroup.esm.js.map +1 -1
  81. package/skinny/registerSection.cjs.js +4 -4
  82. package/skinny/registerSection.esm.js +4 -4
  83. package/skinny/registerSelect.cjs.js +10 -9
  84. package/skinny/registerSelect.cjs.js.map +1 -1
  85. package/skinny/registerSelect.d.ts +2 -5
  86. package/skinny/registerSelect.esm.js +11 -10
  87. package/skinny/registerSelect.esm.js.map +1 -1
  88. package/skinny/registerSlider.cjs.js +2 -2
  89. package/skinny/registerSlider.esm.js +2 -2
  90. package/skinny/registerSliderOutput.cjs.js +2 -2
  91. package/skinny/registerSliderOutput.esm.js +2 -2
  92. package/skinny/registerSliderThumb.cjs.js +2 -2
  93. package/skinny/registerSliderThumb.esm.js +2 -2
  94. package/skinny/registerSliderTrack.cjs.js +2 -2
  95. package/skinny/registerSliderTrack.esm.js +2 -2
  96. package/skinny/registerSwitch.cjs.js +2 -2
  97. package/skinny/registerSwitch.esm.js +2 -2
  98. package/skinny/registerText.cjs.js +2 -2
  99. package/skinny/registerText.esm.js +2 -2
  100. package/skinny/registerTextArea.cjs.js +2 -2
  101. package/skinny/registerTextArea.esm.js +2 -2
  102. package/skinny/registerTextField.cjs.js +2 -2
  103. package/skinny/registerTextField.esm.js +2 -2
  104. package/skinny/registerTooltip.cjs.js +2 -2
  105. package/skinny/registerTooltip.esm.js +2 -2
  106. package/skinny/{utils-fc1ddd7c.cjs.js → utils-2e03b499.cjs.js} +2 -2
  107. package/skinny/utils-2e03b499.cjs.js.map +1 -0
  108. package/skinny/{utils-fd88ad47.esm.js → utils-d0ca1a25.esm.js} +2 -2
  109. package/skinny/utils-d0ca1a25.esm.js.map +1 -0
  110. package/skinny/utils.d.ts +3 -0
  111. package/skinny/OptionsItemIdManager-832b8cfe.esm.js +0 -54
  112. package/skinny/OptionsItemIdManager-832b8cfe.esm.js.map +0 -1
  113. package/skinny/OptionsItemIdManager-a89a28b9.cjs.js +0 -56
  114. package/skinny/OptionsItemIdManager-a89a28b9.cjs.js.map +0 -1
  115. package/skinny/registerListBox-040b0374.cjs.js.map +0 -1
  116. package/skinny/registerListBox-0f6ebcf0.esm.js.map +0 -1
  117. package/skinny/utils-fc1ddd7c.cjs.js.map +0 -1
  118. package/skinny/utils-fd88ad47.esm.js.map +0 -1
@@ -1,12 +1,9 @@
1
1
  import React from "react";
2
2
  import type { CheckboxGroupProps } from "react-aria-components";
3
- import { CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
3
+ import { BaseControlContextDataForLists, CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
4
4
  import { WithVariants } from "./variant-utils";
5
- export interface BaseCheckboxControlContextData {
6
- values: string[];
7
- }
8
5
  declare const CHECKBOX_GROUP_VARIANTS: ("disabled" | "readonly")[];
9
- export interface BaseCheckboxGroupProps extends CheckboxGroupProps, HasControlContextData<BaseCheckboxControlContextData>, WithVariants<typeof CHECKBOX_GROUP_VARIANTS> {
6
+ export interface BaseCheckboxGroupProps extends CheckboxGroupProps, HasControlContextData<BaseControlContextDataForLists>, WithVariants<typeof CHECKBOX_GROUP_VARIANTS> {
10
7
  children?: React.ReactNode;
11
8
  }
12
9
  export declare function BaseCheckboxGroup(props: BaseCheckboxGroupProps): React.JSX.Element;
@@ -1,12 +1,9 @@
1
1
  import React from "react";
2
2
  import { ComboBoxProps } from "react-aria-components";
3
- import { HasControlContextData, Registerable, WithPlasmicCanvasComponentInfo } from "./utils";
3
+ import { BaseControlContextDataForLists, HasControlContextData, Registerable, WithPlasmicCanvasComponentInfo } from "./utils";
4
4
  import { WithVariants } from "./variant-utils";
5
- export interface BaseComboboxControlContextData {
6
- itemIds: string[];
7
- }
8
5
  declare const COMBOBOX_VARIANTS: "disabled"[];
9
- export interface BaseComboboxProps extends ComboBoxProps<{}>, WithPlasmicCanvasComponentInfo, WithVariants<typeof COMBOBOX_VARIANTS>, HasControlContextData<BaseComboboxControlContextData> {
6
+ export interface BaseComboboxProps extends ComboBoxProps<{}>, WithPlasmicCanvasComponentInfo, WithVariants<typeof COMBOBOX_VARIANTS>, HasControlContextData<BaseControlContextDataForLists> {
10
7
  children?: React.ReactNode;
11
8
  isOpen?: boolean;
12
9
  className?: string;
@@ -1,9 +1,8 @@
1
1
  import React from "react";
2
2
  import { Key, ListBox } from "react-aria-components";
3
- import { CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
3
+ import { BaseControlContextDataForLists, CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
4
4
  import { WithVariants } from "./variant-utils";
5
- export interface BaseListBoxControlContextData {
6
- itemIds: string[];
5
+ export interface BaseListBoxControlContextData extends BaseControlContextDataForLists {
7
6
  isStandalone: boolean;
8
7
  }
9
8
  declare const LISTBOX_VARIANTS: ("focused" | "focusVisible")[];
@@ -1,12 +1,9 @@
1
1
  import React from "react";
2
2
  import type { RadioGroupProps } from "react-aria-components";
3
- import { CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
3
+ import { BaseControlContextDataForLists, CodeComponentMetaOverrides, HasControlContextData, Registerable } from "./utils";
4
4
  import { WithVariants } from "./variant-utils";
5
- export interface BaseRadioGroupControlContextData {
6
- values: string[];
7
- }
8
5
  declare const RADIO_GROUP_VARIANTS: ("disabled" | "readonly")[];
9
- export interface BaseRadioGroupProps extends RadioGroupProps, HasControlContextData<BaseRadioGroupControlContextData>, WithVariants<typeof RADIO_GROUP_VARIANTS> {
6
+ export interface BaseRadioGroupProps extends RadioGroupProps, HasControlContextData<BaseControlContextDataForLists>, WithVariants<typeof RADIO_GROUP_VARIANTS> {
10
7
  children: React.ReactNode;
11
8
  }
12
9
  export declare function BaseRadioGroup(props: BaseRadioGroupProps): React.JSX.Element;
@@ -1,17 +1,14 @@
1
1
  import React from "react";
2
2
  import { SelectProps, SelectValue } from "react-aria-components";
3
- import { HasControlContextData, Registerable, WithPlasmicCanvasComponentInfo } from "./utils";
3
+ import { BaseControlContextDataForLists, HasControlContextData, Registerable, WithPlasmicCanvasComponentInfo } from "./utils";
4
4
  import { WithVariants } from "./variant-utils";
5
5
  export interface BaseSelectValueProps extends React.ComponentProps<typeof SelectValue> {
6
6
  children: React.ReactNode;
7
7
  }
8
8
  export declare const BaseSelectValue: (props: BaseSelectValueProps) => React.JSX.Element;
9
- export interface BaseSelectControlContextData {
10
- itemIds: string[];
11
- }
12
9
  declare const SELECT_VARIANTS: ("disabled" | "focused" | "focusVisible")[];
13
10
  export interface BaseSelectProps extends SelectProps<{}>, // NOTE: We don't need generic type here since we don't use items prop (that needs it). We just need to make the type checker happy
14
- WithVariants<typeof SELECT_VARIANTS>, WithPlasmicCanvasComponentInfo, HasControlContextData<BaseSelectControlContextData> {
11
+ WithVariants<typeof SELECT_VARIANTS>, WithPlasmicCanvasComponentInfo, HasControlContextData<BaseControlContextDataForLists> {
15
12
  children?: React.ReactNode;
16
13
  className?: string;
17
14
  }
package/dist/utils.d.ts CHANGED
@@ -18,6 +18,9 @@ export type ControlContextData = {
18
18
  export type BaseControlContextData = {
19
19
  parent?: ControlContextData;
20
20
  };
21
+ export type BaseControlContextDataForLists = {
22
+ itemIds: string[];
23
+ };
21
24
  export type Registerable = {
22
25
  registerComponent: typeof registerComponent;
23
26
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicpkgs/react-aria",
3
- "version": "0.0.120",
3
+ "version": "0.0.122",
4
4
  "description": "Plasmic registration calls for react-aria based components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -74,5 +74,5 @@
74
74
  "publishConfig": {
75
75
  "access": "public"
76
76
  },
77
- "gitHead": "0169716ae5b4073db6f8bd9e887e95041a644299"
77
+ "gitHead": "0b81d1ce3951a2844cf96ff89f0bfab2bcdcd94b"
78
78
  }
@@ -0,0 +1,105 @@
1
+ import { useState, useLayoutEffect, useMemo, useEffect } from 'react';
2
+
3
+ class OptionsItemIdManager {
4
+ constructor() {
5
+ this._ids = /* @__PURE__ */ new Set();
6
+ this._observers = /* @__PURE__ */ new Set();
7
+ }
8
+ generateDuplicateId(id, count = 1) {
9
+ const dupId = `${id} duplicate(${count})`;
10
+ if (this._ids.has(dupId)) {
11
+ return this.generateDuplicateId(id, count + 1);
12
+ } else {
13
+ return dupId;
14
+ }
15
+ }
16
+ generateMissingId(count = 1) {
17
+ const missingId = `missing(${count})`;
18
+ if (this._ids.has(missingId)) {
19
+ return this.generateMissingId(count + 1);
20
+ } else {
21
+ return missingId;
22
+ }
23
+ }
24
+ register(id) {
25
+ const idStr = id === void 0 ? void 0 : String(id).trim();
26
+ let newId;
27
+ if (!idStr) {
28
+ newId = this.generateMissingId();
29
+ } else if (this._ids.has(idStr)) {
30
+ newId = this.generateDuplicateId(idStr);
31
+ } else {
32
+ newId = idStr;
33
+ }
34
+ this._ids.add(newId);
35
+ this.notify();
36
+ return newId;
37
+ }
38
+ unregister(id) {
39
+ this._ids.delete(id);
40
+ this.notify();
41
+ }
42
+ subscribe(observer) {
43
+ this._observers.add(observer);
44
+ observer(this.ids);
45
+ }
46
+ unsubscribe(observer) {
47
+ this._observers.delete(observer);
48
+ }
49
+ // Notify all observers about an event.
50
+ notify() {
51
+ this._observers.forEach((observer) => observer(this.ids));
52
+ }
53
+ get ids() {
54
+ return Array.from(this._ids);
55
+ }
56
+ }
57
+ const useOptionsItemId = (requestedId, idManager) => {
58
+ const [registeredId, setRegisteredId] = useState("");
59
+ useLayoutEffect(() => {
60
+ if (!idManager) {
61
+ return;
62
+ }
63
+ const localId = idManager.register(requestedId);
64
+ setRegisteredId(localId);
65
+ return () => {
66
+ if (localId) {
67
+ idManager.unregister(localId);
68
+ }
69
+ };
70
+ }, [requestedId, idManager]);
71
+ return {
72
+ registeredId,
73
+ idError: (() => {
74
+ if (requestedId === void 0) {
75
+ return "Value must be defined";
76
+ }
77
+ if (typeof requestedId !== "string") {
78
+ return "Value must be a string";
79
+ }
80
+ if (!requestedId.trim()) {
81
+ return "Value must be defined";
82
+ }
83
+ if (idManager && requestedId != registeredId) {
84
+ return "Value must be unique";
85
+ }
86
+ return void 0;
87
+ })()
88
+ };
89
+ };
90
+ function useIdManager(callback, existing) {
91
+ const idManager = useMemo(
92
+ () => existing != null ? existing : new OptionsItemIdManager(),
93
+ [existing]
94
+ );
95
+ useEffect(() => {
96
+ idManager.subscribe(callback);
97
+ return () => {
98
+ idManager.unsubscribe(callback);
99
+ };
100
+ }, [idManager, callback]);
101
+ return idManager;
102
+ }
103
+
104
+ export { useOptionsItemId as a, useIdManager as u };
105
+ //# sourceMappingURL=OptionsItemIdManager-904d6cea.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionsItemIdManager-904d6cea.esm.js","sources":["../src/OptionsItemIdManager.ts"],"sourcesContent":["import { useEffect, useLayoutEffect, useMemo, useState } from \"react\";\n\ntype Observer = (ids: string[]) => void;\n\n/** Ensures option item IDs are unique. */\nexport class OptionsItemIdManager {\n private readonly _ids: Set<string> = new Set();\n private readonly _observers: Set<Observer> = new Set();\n\n private generateDuplicateId(id: string, count = 1): string {\n const dupId = `${id} duplicate(${count})`;\n if (this._ids.has(dupId)) {\n return this.generateDuplicateId(id, count + 1);\n } else {\n return dupId;\n }\n }\n\n private generateMissingId(count = 1): string {\n const missingId = `missing(${count})`;\n if (this._ids.has(missingId)) {\n return this.generateMissingId(count + 1);\n } else {\n return missingId;\n }\n }\n\n register(id?: unknown): string {\n const idStr = id === undefined ? undefined : String(id).trim();\n let newId: string;\n\n if (!idStr) {\n // No id is provided, so generate one\n newId = this.generateMissingId();\n } else if (this._ids.has(idStr)) {\n // The provided id is already registered with another uuid (i.e. it's not unique), so just generate a new one\n newId = this.generateDuplicateId(idStr);\n } else {\n // The provided id is not already registered, so use it\n newId = idStr;\n }\n\n this._ids.add(newId);\n this.notify();\n return newId;\n }\n\n unregister(id: string) {\n this._ids.delete(id);\n this.notify();\n }\n\n subscribe(observer: Observer) {\n this._observers.add(observer);\n observer(this.ids);\n }\n\n unsubscribe(observer: Observer) {\n this._observers.delete(observer);\n }\n\n // Notify all observers about an event.\n notify() {\n this._observers.forEach((observer) => observer(this.ids));\n }\n\n get ids(): string[] {\n return Array.from(this._ids);\n }\n}\n\n/** Gets a unique option item ID. If the requested ID is already taken, returns a unique ID based on the requested ID. */\nexport const useOptionsItemId = (\n requestedId?: string,\n idManager?: OptionsItemIdManager\n) => {\n const [registeredId, setRegisteredId] = useState(\"\");\n\n useLayoutEffect(() => {\n if (!idManager) {\n return;\n }\n\n const localId = idManager.register(requestedId);\n setRegisteredId(localId);\n return () => {\n if (localId) {\n idManager.unregister(localId);\n }\n };\n }, [requestedId, idManager]);\n\n return {\n registeredId,\n idError: (() => {\n if (requestedId === undefined) {\n return \"Value must be defined\";\n }\n if (typeof requestedId !== \"string\") {\n return \"Value must be a string\";\n }\n if (!requestedId.trim()) {\n return \"Value must be defined\";\n }\n if (idManager && requestedId != registeredId) {\n return \"Value must be unique\";\n }\n return undefined;\n })(),\n };\n};\n\n/**\n * Hook that creates and returns an OptionsItemIdManager instance to manage unique IDs.\n *\n * This hook is useful for components that need to track and manage a collection of unique IDs,\n * such as select options, radio groups, checkbox groups, etc. It handles the registration and\n * unregistration of IDs, ensuring uniqueness and providing notifications when the collection changes.\n *\n * @param callback - A function that will be called with the current IDs when they change.\n * @param existing - An existing OptionsItemIdManager instance to use. If not provided, a new instance will be created.\n */\nexport function useIdManager(\n callback: (ids: string[]) => void,\n existing?: OptionsItemIdManager\n) {\n const idManager = useMemo(\n () => existing ?? new OptionsItemIdManager(),\n [existing]\n );\n\n useEffect(() => {\n idManager.subscribe(callback);\n\n return () => {\n idManager.unsubscribe(callback);\n };\n }, [idManager, callback]);\n\n return idManager;\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+
5
+ class OptionsItemIdManager {
6
+ constructor() {
7
+ this._ids = /* @__PURE__ */ new Set();
8
+ this._observers = /* @__PURE__ */ new Set();
9
+ }
10
+ generateDuplicateId(id, count = 1) {
11
+ const dupId = `${id} duplicate(${count})`;
12
+ if (this._ids.has(dupId)) {
13
+ return this.generateDuplicateId(id, count + 1);
14
+ } else {
15
+ return dupId;
16
+ }
17
+ }
18
+ generateMissingId(count = 1) {
19
+ const missingId = `missing(${count})`;
20
+ if (this._ids.has(missingId)) {
21
+ return this.generateMissingId(count + 1);
22
+ } else {
23
+ return missingId;
24
+ }
25
+ }
26
+ register(id) {
27
+ const idStr = id === void 0 ? void 0 : String(id).trim();
28
+ let newId;
29
+ if (!idStr) {
30
+ newId = this.generateMissingId();
31
+ } else if (this._ids.has(idStr)) {
32
+ newId = this.generateDuplicateId(idStr);
33
+ } else {
34
+ newId = idStr;
35
+ }
36
+ this._ids.add(newId);
37
+ this.notify();
38
+ return newId;
39
+ }
40
+ unregister(id) {
41
+ this._ids.delete(id);
42
+ this.notify();
43
+ }
44
+ subscribe(observer) {
45
+ this._observers.add(observer);
46
+ observer(this.ids);
47
+ }
48
+ unsubscribe(observer) {
49
+ this._observers.delete(observer);
50
+ }
51
+ // Notify all observers about an event.
52
+ notify() {
53
+ this._observers.forEach((observer) => observer(this.ids));
54
+ }
55
+ get ids() {
56
+ return Array.from(this._ids);
57
+ }
58
+ }
59
+ const useOptionsItemId = (requestedId, idManager) => {
60
+ const [registeredId, setRegisteredId] = React.useState("");
61
+ React.useLayoutEffect(() => {
62
+ if (!idManager) {
63
+ return;
64
+ }
65
+ const localId = idManager.register(requestedId);
66
+ setRegisteredId(localId);
67
+ return () => {
68
+ if (localId) {
69
+ idManager.unregister(localId);
70
+ }
71
+ };
72
+ }, [requestedId, idManager]);
73
+ return {
74
+ registeredId,
75
+ idError: (() => {
76
+ if (requestedId === void 0) {
77
+ return "Value must be defined";
78
+ }
79
+ if (typeof requestedId !== "string") {
80
+ return "Value must be a string";
81
+ }
82
+ if (!requestedId.trim()) {
83
+ return "Value must be defined";
84
+ }
85
+ if (idManager && requestedId != registeredId) {
86
+ return "Value must be unique";
87
+ }
88
+ return void 0;
89
+ })()
90
+ };
91
+ };
92
+ function useIdManager(callback, existing) {
93
+ const idManager = React.useMemo(
94
+ () => existing != null ? existing : new OptionsItemIdManager(),
95
+ [existing]
96
+ );
97
+ React.useEffect(() => {
98
+ idManager.subscribe(callback);
99
+ return () => {
100
+ idManager.unsubscribe(callback);
101
+ };
102
+ }, [idManager, callback]);
103
+ return idManager;
104
+ }
105
+
106
+ exports.useIdManager = useIdManager;
107
+ exports.useOptionsItemId = useOptionsItemId;
108
+ //# sourceMappingURL=OptionsItemIdManager-ab379c9b.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionsItemIdManager-ab379c9b.cjs.js","sources":["../src/OptionsItemIdManager.ts"],"sourcesContent":["import { useEffect, useLayoutEffect, useMemo, useState } from \"react\";\n\ntype Observer = (ids: string[]) => void;\n\n/** Ensures option item IDs are unique. */\nexport class OptionsItemIdManager {\n private readonly _ids: Set<string> = new Set();\n private readonly _observers: Set<Observer> = new Set();\n\n private generateDuplicateId(id: string, count = 1): string {\n const dupId = `${id} duplicate(${count})`;\n if (this._ids.has(dupId)) {\n return this.generateDuplicateId(id, count + 1);\n } else {\n return dupId;\n }\n }\n\n private generateMissingId(count = 1): string {\n const missingId = `missing(${count})`;\n if (this._ids.has(missingId)) {\n return this.generateMissingId(count + 1);\n } else {\n return missingId;\n }\n }\n\n register(id?: unknown): string {\n const idStr = id === undefined ? undefined : String(id).trim();\n let newId: string;\n\n if (!idStr) {\n // No id is provided, so generate one\n newId = this.generateMissingId();\n } else if (this._ids.has(idStr)) {\n // The provided id is already registered with another uuid (i.e. it's not unique), so just generate a new one\n newId = this.generateDuplicateId(idStr);\n } else {\n // The provided id is not already registered, so use it\n newId = idStr;\n }\n\n this._ids.add(newId);\n this.notify();\n return newId;\n }\n\n unregister(id: string) {\n this._ids.delete(id);\n this.notify();\n }\n\n subscribe(observer: Observer) {\n this._observers.add(observer);\n observer(this.ids);\n }\n\n unsubscribe(observer: Observer) {\n this._observers.delete(observer);\n }\n\n // Notify all observers about an event.\n notify() {\n this._observers.forEach((observer) => observer(this.ids));\n }\n\n get ids(): string[] {\n return Array.from(this._ids);\n }\n}\n\n/** Gets a unique option item ID. If the requested ID is already taken, returns a unique ID based on the requested ID. */\nexport const useOptionsItemId = (\n requestedId?: string,\n idManager?: OptionsItemIdManager\n) => {\n const [registeredId, setRegisteredId] = useState(\"\");\n\n useLayoutEffect(() => {\n if (!idManager) {\n return;\n }\n\n const localId = idManager.register(requestedId);\n setRegisteredId(localId);\n return () => {\n if (localId) {\n idManager.unregister(localId);\n }\n };\n }, [requestedId, idManager]);\n\n return {\n registeredId,\n idError: (() => {\n if (requestedId === undefined) {\n return \"Value must be defined\";\n }\n if (typeof requestedId !== \"string\") {\n return \"Value must be a string\";\n }\n if (!requestedId.trim()) {\n return \"Value must be defined\";\n }\n if (idManager && requestedId != registeredId) {\n return \"Value must be unique\";\n }\n return undefined;\n })(),\n };\n};\n\n/**\n * Hook that creates and returns an OptionsItemIdManager instance to manage unique IDs.\n *\n * This hook is useful for components that need to track and manage a collection of unique IDs,\n * such as select options, radio groups, checkbox groups, etc. It handles the registration and\n * unregistration of IDs, ensuring uniqueness and providing notifications when the collection changes.\n *\n * @param callback - A function that will be called with the current IDs when they change.\n * @param existing - An existing OptionsItemIdManager instance to use. If not provided, a new instance will be created.\n */\nexport function useIdManager(\n callback: (ids: string[]) => void,\n existing?: OptionsItemIdManager\n) {\n const idManager = useMemo(\n () => existing ?? new OptionsItemIdManager(),\n [existing]\n );\n\n useEffect(() => {\n idManager.subscribe(callback);\n\n return () => {\n idManager.unsubscribe(callback);\n };\n }, [idManager, callback]);\n\n return idManager;\n}\n"],"names":["useState","useLayoutEffect","useMemo","useEffect"],"mappings":";;;;AAKO,MAAM,oBAAqB,CAAA;AAAA,EAA3B,WAAA,GAAA;AACL,IAAiB,IAAA,CAAA,IAAA,uBAAwB,GAAI,EAAA,CAAA;AAC7C,IAAiB,IAAA,CAAA,UAAA,uBAAgC,GAAI,EAAA,CAAA;AAAA,GAAA;AAAA,EAE7C,mBAAA,CAAoB,EAAY,EAAA,KAAA,GAAQ,CAAW,EAAA;AACzD,IAAM,MAAA,KAAA,GAAQ,GAAG,EAAgB,CAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA,CAAA;AACjC,IAAA,IAAI,IAAK,CAAA,IAAA,CAAK,GAAI,CAAA,KAAK,CAAG,EAAA;AACxB,MAAA,OAAO,IAAK,CAAA,mBAAA,CAAoB,EAAI,EAAA,KAAA,GAAQ,CAAC,CAAA,CAAA;AAAA,KACxC,MAAA;AACL,MAAO,OAAA,KAAA,CAAA;AAAA,KACT;AAAA,GACF;AAAA,EAEQ,iBAAA,CAAkB,QAAQ,CAAW,EAAA;AAC3C,IAAA,MAAM,YAAY,CAAW,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA,CAAA;AAC7B,IAAA,IAAI,IAAK,CAAA,IAAA,CAAK,GAAI,CAAA,SAAS,CAAG,EAAA;AAC5B,MAAO,OAAA,IAAA,CAAK,iBAAkB,CAAA,KAAA,GAAQ,CAAC,CAAA,CAAA;AAAA,KAClC,MAAA;AACL,MAAO,OAAA,SAAA,CAAA;AAAA,KACT;AAAA,GACF;AAAA,EAEA,SAAS,EAAsB,EAAA;AAC7B,IAAA,MAAM,QAAQ,EAAO,KAAA,KAAA,CAAA,GAAY,SAAY,MAAO,CAAA,EAAE,EAAE,IAAK,EAAA,CAAA;AAC7D,IAAI,IAAA,KAAA,CAAA;AAEJ,IAAA,IAAI,CAAC,KAAO,EAAA;AAEV,MAAA,KAAA,GAAQ,KAAK,iBAAkB,EAAA,CAAA;AAAA,KACtB,MAAA,IAAA,IAAA,CAAK,IAAK,CAAA,GAAA,CAAI,KAAK,CAAG,EAAA;AAE/B,MAAQ,KAAA,GAAA,IAAA,CAAK,oBAAoB,KAAK,CAAA,CAAA;AAAA,KACjC,MAAA;AAEL,MAAQ,KAAA,GAAA,KAAA,CAAA;AAAA,KACV;AAEA,IAAK,IAAA,CAAA,IAAA,CAAK,IAAI,KAAK,CAAA,CAAA;AACnB,IAAA,IAAA,CAAK,MAAO,EAAA,CAAA;AACZ,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AAAA,EAEA,WAAW,EAAY,EAAA;AACrB,IAAK,IAAA,CAAA,IAAA,CAAK,OAAO,EAAE,CAAA,CAAA;AACnB,IAAA,IAAA,CAAK,MAAO,EAAA,CAAA;AAAA,GACd;AAAA,EAEA,UAAU,QAAoB,EAAA;AAC5B,IAAK,IAAA,CAAA,UAAA,CAAW,IAAI,QAAQ,CAAA,CAAA;AAC5B,IAAA,QAAA,CAAS,KAAK,GAAG,CAAA,CAAA;AAAA,GACnB;AAAA,EAEA,YAAY,QAAoB,EAAA;AAC9B,IAAK,IAAA,CAAA,UAAA,CAAW,OAAO,QAAQ,CAAA,CAAA;AAAA,GACjC;AAAA;AAAA,EAGA,MAAS,GAAA;AACP,IAAA,IAAA,CAAK,WAAW,OAAQ,CAAA,CAAC,aAAa,QAAS,CAAA,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,GAC1D;AAAA,EAEA,IAAI,GAAgB,GAAA;AAClB,IAAO,OAAA,KAAA,CAAM,IAAK,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAAA,GAC7B;AACF,CAAA;AAGa,MAAA,gBAAA,GAAmB,CAC9B,WAAA,EACA,SACG,KAAA;AACH,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAIA,eAAS,EAAE,CAAA,CAAA;AAEnD,EAAAC,qBAAA,CAAgB,MAAM;AACpB,IAAA,IAAI,CAAC,SAAW,EAAA;AACd,MAAA,OAAA;AAAA,KACF;AAEA,IAAM,MAAA,OAAA,GAAU,SAAU,CAAA,QAAA,CAAS,WAAW,CAAA,CAAA;AAC9C,IAAA,eAAA,CAAgB,OAAO,CAAA,CAAA;AACvB,IAAA,OAAO,MAAM;AACX,MAAA,IAAI,OAAS,EAAA;AACX,QAAA,SAAA,CAAU,WAAW,OAAO,CAAA,CAAA;AAAA,OAC9B;AAAA,KACF,CAAA;AAAA,GACC,EAAA,CAAC,WAAa,EAAA,SAAS,CAAC,CAAA,CAAA;AAE3B,EAAO,OAAA;AAAA,IACL,YAAA;AAAA,IACA,UAAU,MAAM;AACd,MAAA,IAAI,gBAAgB,KAAW,CAAA,EAAA;AAC7B,QAAO,OAAA,uBAAA,CAAA;AAAA,OACT;AACA,MAAI,IAAA,OAAO,gBAAgB,QAAU,EAAA;AACnC,QAAO,OAAA,wBAAA,CAAA;AAAA,OACT;AACA,MAAI,IAAA,CAAC,WAAY,CAAA,IAAA,EAAQ,EAAA;AACvB,QAAO,OAAA,uBAAA,CAAA;AAAA,OACT;AACA,MAAI,IAAA,SAAA,IAAa,eAAe,YAAc,EAAA;AAC5C,QAAO,OAAA,sBAAA,CAAA;AAAA,OACT;AACA,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,KACN,GAAA;AAAA,GACL,CAAA;AACF,EAAA;AAYgB,SAAA,YAAA,CACd,UACA,QACA,EAAA;AACA,EAAA,MAAM,SAAY,GAAAC,aAAA;AAAA,IAChB,MAAM,QAAY,IAAA,IAAA,GAAA,QAAA,GAAA,IAAI,oBAAqB,EAAA;AAAA,IAC3C,CAAC,QAAQ,CAAA;AAAA,GACX,CAAA;AAEA,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,SAAA,CAAU,UAAU,QAAQ,CAAA,CAAA;AAE5B,IAAA,OAAO,MAAM;AACX,MAAA,SAAA,CAAU,YAAY,QAAQ,CAAA,CAAA;AAAA,KAChC,CAAA;AAAA,GACC,EAAA,CAAC,SAAW,EAAA,QAAQ,CAAC,CAAA,CAAA;AAExB,EAAO,OAAA,SAAA,CAAA;AACT;;;;;"}
@@ -1,4 +1,5 @@
1
1
  type Observer = (ids: string[]) => void;
2
+ /** Ensures option item IDs are unique. */
2
3
  export declare class OptionsItemIdManager {
3
4
  private readonly _ids;
4
5
  private readonly _observers;
@@ -7,7 +8,24 @@ export declare class OptionsItemIdManager {
7
8
  register(id?: unknown): string;
8
9
  unregister(id: string): void;
9
10
  subscribe(observer: Observer): void;
11
+ unsubscribe(observer: Observer): void;
10
12
  notify(): void;
11
13
  get ids(): string[];
12
14
  }
15
+ /** Gets a unique option item ID. If the requested ID is already taken, returns a unique ID based on the requested ID. */
16
+ export declare const useOptionsItemId: (requestedId?: string, idManager?: OptionsItemIdManager) => {
17
+ registeredId: string;
18
+ idError: string | undefined;
19
+ };
20
+ /**
21
+ * Hook that creates and returns an OptionsItemIdManager instance to manage unique IDs.
22
+ *
23
+ * This hook is useful for components that need to track and manage a collection of unique IDs,
24
+ * such as select options, radio groups, checkbox groups, etc. It handles the registration and
25
+ * unregistration of IDs, ensuring uniqueness and providing notifications when the collection changes.
26
+ *
27
+ * @param callback - A function that will be called with the current IDs when they change.
28
+ * @param existing - An existing OptionsItemIdManager instance to use. If not provided, a new instance will be created.
29
+ */
30
+ export declare function useIdManager(callback: (ids: string[]) => void, existing?: OptionsItemIdManager): OptionsItemIdManager;
13
31
  export {};
@@ -1,4 +1,4 @@
1
- import { i as isDefined } from './utils-fd88ad47.esm.js';
1
+ import { i as isDefined } from './utils-d0ca1a25.esm.js';
2
2
 
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -445,4 +445,4 @@ const arrowDown = {
445
445
  const COMMON_STYLES = { boxSizing: "border-box" };
446
446
 
447
447
  export { COMMON_STYLES as C, arrowDown as a, getCommonOverlayProps as b, getCommonProps as g, hasParent as h, resolveAutoComplete as r };
448
- //# sourceMappingURL=common-616eb178.esm.js.map
448
+ //# sourceMappingURL=common-a8047588.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-616eb178.esm.js","sources":["../src/common.ts"],"sourcesContent":["import { PlasmicElement, PropType } from \"@plasmicapp/host\";\nimport { CSSProperties } from \"react\";\nimport {\n BaseControlContextData,\n HasControlContextData,\n isDefined,\n} from \"./utils\";\n\nexport function hasParent<T>(_props: T, ctx: ConditionalContext<T>): boolean {\n return isDefined(ctx?.parent) === true;\n}\n\nexport function isParentReadOnly<T>(_props: T, ctx: ConditionalContext<T>) {\n return ctx?.parent?.isReadOnly === true;\n}\n\nexport function isParentDisabled<T>(_props: T, ctx: ConditionalContext<T>) {\n return ctx?.parent?.isDisabled === true;\n}\n\nexport function resolveAutoComplete(autoCompleteProp?: string | string[]) {\n if (typeof autoCompleteProp === \"string\") {\n return autoCompleteProp;\n }\n if (\n !autoCompleteProp ||\n !Array.isArray(autoCompleteProp) ||\n autoCompleteProp.includes(\"off\")\n ) {\n return undefined;\n }\n if (autoCompleteProp.includes(\"off\")) {\n return \"off\";\n }\n if (autoCompleteProp.includes(\"on\") && autoCompleteProp.length === 1) {\n return \"on\";\n }\n return autoCompleteProp.filter((x) => x !== \"on\").join(\" \");\n}\n\ntype ConditionalContext<T> = T extends HasControlContextData\n ? BaseControlContextData | null\n : null;\n\nfunction createNameProp<T>(): PropType<T> {\n return {\n type: \"string\",\n description: \"Name for this field if it is part of a form\",\n displayName: \"Form field key\",\n // hidden: hasParent,\n hidden: () => true, // hiding required prop until the release of Aria Forms\n advanced: true,\n };\n}\n\nfunction createDisabledProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Disabled\",\n type: \"boolean\",\n description: `Whether the ${componentName} is read-only and unfocusable`,\n defaultValueHint: false,\n hidden: isParentDisabled,\n };\n}\n\nfunction createReadOnlyProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Read only\",\n type: \"boolean\",\n description: `Whether the value of this ${componentName} can be changed by the user. Unlike disabled, read-only does not prevent the user from interacting with the component (such as focus).`,\n defaultValueHint: false,\n advanced: true,\n hidden: isParentReadOnly,\n };\n}\n\nfunction createRequiredProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Required\",\n type: \"boolean\",\n description: `Whether user input is required on the ${componentName} before form submission.`,\n defaultValueHint: false,\n advanced: true,\n // hidden: hasParent,\n hidden: () => true, // hiding required prop until the release of Aria Forms\n };\n}\n\nfunction createAutoFocusProp<T>(componentName: string): PropType<T> {\n return {\n type: \"boolean\",\n description: `Whether the ${componentName} should be focused when rendered`,\n defaultValueHint: false,\n advanced: true,\n hidden: hasParent,\n };\n}\n\nfunction createAriaLabelProp<T>(componentName: string): PropType<T> {\n return {\n type: \"string\",\n displayName: \"ARIA label\",\n description: `Assistive technology uses this if there is no visible label for this ${componentName}`,\n advanced: true,\n hidden: hasParent,\n };\n}\n\nfunction createChildrenProp<T>(): PropType<T> {\n return {\n type: \"slot\",\n mergeWithParent: true,\n };\n}\n\nexport function getCommonProps<T>(\n componentName: string,\n propNames: (keyof T)[]\n) {\n const commonProps: Record<string, PropType<T>> = {\n name: createNameProp<T>(),\n disabled: createDisabledProp(componentName),\n isDisabled: createDisabledProp(componentName),\n readOnly: createReadOnlyProp(componentName),\n isReadOnly: createReadOnlyProp(componentName),\n autoFocus: createAutoFocusProp(componentName),\n \"aria-label\": createAriaLabelProp(componentName),\n required: createRequiredProp(componentName),\n isRequired: createRequiredProp(componentName),\n children: createChildrenProp(),\n // NOTE: The following props are only applicable to inputs, textareas, and text fields\n value: {\n type: \"string\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: `The default value of the ${componentName}`,\n hidden: hasParent,\n },\n maxLength: {\n type: \"number\",\n description: \"The maximum number of characters supported by the input\",\n advanced: true,\n hidden: hasParent,\n },\n minLength: {\n type: \"number\",\n description: \"The minimum number of characters supported by the input\",\n advanced: true,\n hidden: hasParent,\n },\n pattern: {\n type: \"string\",\n description:\n \"Regex pattern that the value of the input must match to be valid\",\n helpText:\n \"For more information about writing Regular Expressions (regex), visit [Regexr](https://regexr.com/)\",\n validator: (value: string) => {\n try {\n new RegExp(value);\n return true;\n } catch (error) {\n return \"Invalid Regex\";\n }\n },\n advanced: true,\n hidden: hasParent,\n },\n type: {\n type: \"choice\",\n defaultValueHint: \"text\",\n options: [\"text\", \"search\", \"url\", \"tel\", \"email\", \"password\"],\n description:\n \"The type of data that an input field is expected to handle. It influences the input's behavior, validation, and the kind of interface provided to the user.\",\n advanced: true,\n hidden: hasParent,\n },\n inputMode: {\n type: \"choice\",\n description:\n \"hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents.\",\n options: [\n \"none\",\n \"text\",\n \"tel\",\n \"url\",\n \"email\",\n \"numeric\",\n \"decimal\",\n \"search\",\n ],\n hidden: hasParent,\n },\n autoComplete: {\n type: \"choice\",\n advanced: true,\n multiSelect: true,\n hidden: hasParent,\n description: \"Guidance as to the type of data expected in the field\",\n helpText:\n \"Learn more about the available options on the [MDN guide](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values)\",\n options: [\n \"on\",\n \"off\",\n \"name\",\n \"honorific-prefix\",\n \"given-name\",\n \"additional-name\",\n \"family-name\",\n \"honorific-suffix\",\n \"nickname\",\n \"email\",\n \"username\",\n \"new-password\",\n \"current-password\",\n \"one-time-code\",\n \"organization-title\",\n \"organization\",\n \"street-address\",\n \"shipping\",\n \"billing\",\n \"address-line1\",\n \"address-line2\",\n \"address-line3\",\n \"address-level4\",\n \"address-level3\",\n \"address-level2\",\n \"address-level1\",\n \"country\",\n \"country-name\",\n \"postal-code\",\n \"cc-name\",\n \"cc-given-name\",\n \"cc-additional-name\",\n \"cc-family-name\",\n \"cc-number\",\n \"cc-exp\",\n \"cc-exp-month\",\n \"cc-exp-year\",\n \"cc-csc\",\n \"cc-type\",\n \"transaction-currency\",\n \"transaction-amount\",\n \"language\",\n \"bday\",\n \"bday-day\",\n \"bday-month\",\n \"bday-year\",\n \"sex\",\n \"tel\",\n \"tel-country-code\",\n \"tel-national\",\n \"tel-area-code\",\n \"tel-local\",\n \"tel-local-suffix\",\n \"tel-local-prefix\",\n \"tel-extension\",\n \"impp\",\n \"url\",\n \"photo\",\n \"webauthn\",\n ],\n },\n validationBehavior: {\n type: \"choice\",\n options: [\"native\", \"aria\"],\n description:\n \"Whether to use native HTML form validation to prevent form submission when the value is missing or invalid, or mark the field as required or invalid via ARIA.\",\n defaultValueHint: \"native\",\n advanced: true,\n hidden: hasParent,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n hidden: hasParent,\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"focusEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onBlur: {\n type: \"eventHandler\",\n argTypes: [{ name: \"focusEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onFocusChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isFocused\", type: \"boolean\" }],\n advanced: true,\n hidden: hasParent,\n },\n onKeyDown: {\n type: \"eventHandler\",\n argTypes: [{ name: \"keyboardEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onKeyUp: {\n type: \"eventHandler\",\n argTypes: [{ name: \"keyboardEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCopy: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCut: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onPaste: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionStart: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionUpdate: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onSelect: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onBeforeInput: {\n type: \"eventHandler\",\n argTypes: [{ name: \"inputEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onInput: {\n type: \"eventHandler\",\n argTypes: [{ name: \"inputEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n placeholder: {\n type: \"string\",\n },\n };\n\n // Filter the properties based on the provided fields array\n const filteredProps: Partial<Record<keyof T, PropType<T>>> = {};\n propNames.forEach((propName) => {\n if (Object.prototype.hasOwnProperty.call(commonProps, propName)) {\n filteredProps[propName] = commonProps[propName as string];\n }\n });\n\n return filteredProps;\n}\n\ntype Overrides = {\n defaultValueHint?: any;\n};\n\nexport function createPlacementProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"choice\",\n description: `Default placement of the ${componentName} relative to the trigger, if there is enough space`,\n options: [\n \"bottom\",\n \"bottom left\",\n \"bottom right\",\n \"bottom start\",\n \"bottom end\",\n \"top\",\n \"top left\",\n \"top right\",\n \"top start\",\n \"top end\",\n \"left\",\n \"left top\",\n \"left bottom\",\n \"start\",\n \"start top\",\n \"start bottom\",\n \"right\",\n \"right top\",\n \"right bottom\",\n \"end\",\n \"end top\",\n \"end bottom\",\n ],\n ...(overrides ?? {}),\n };\n}\n\nexport function createOffsetProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n displayName: \"Offset\",\n description: `Additional offset applied along the main axis between the ${componentName} and its trigger`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function createContainerPaddingProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n description: `The padding that should be applied between the ${componentName} and its surrounding container. This affects the positioning breakpoints that determine when it will attempt to flip.`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function createCrossOffsetProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n description: `The additional offset applied along the cross axis between the ${componentName} and its anchor element.`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function getCommonOverlayProps<T>(\n componentName: string,\n overrides: Record<string, Overrides>\n) {\n const commonProps: Record<string, PropType<T>> = {\n placement: createPlacementProp<T>(componentName, overrides[\"placement\"]),\n offset: createOffsetProp<T>(componentName, overrides[\"offset\"]),\n containerPadding: createContainerPaddingProp<T>(\n componentName,\n overrides[\"containerPadding\"]\n ),\n crossOffset: createCrossOffsetProp<T>(\n componentName,\n overrides[\"crossOffset\"]\n ),\n };\n return commonProps;\n}\n\nexport const arrowDown: PlasmicElement = {\n type: \"hbox\",\n children: [],\n styles: {\n width: 0,\n height: 0,\n padding: 0,\n borderLeftWidth: \"5px\",\n borderRightWidth: \"5px\",\n borderTopWidth: \"5px\",\n borderLeftStyle: \"solid\",\n borderRightStyle: \"solid\",\n borderTopStyle: \"solid\",\n borderLeftColor: \"transparent\",\n borderRightColor: \"transparent\",\n borderTopColor: \"black\",\n },\n};\n// Set border-box to the root element of the aria code component to align with Plasmic's default of using border-box for all root elements.\nexport const COMMON_STYLES: CSSProperties = { boxSizing: \"border-box\" };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAQgB,SAAA,SAAA,CAAa,QAAW,GAAqC,EAAA;AAC3E,EAAO,OAAA,SAAA,CAAU,GAAK,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA,MAAM,CAAM,KAAA,IAAA,CAAA;AACpC,CAAA;AAEgB,SAAA,gBAAA,CAAoB,QAAW,GAA4B,EAAA;AAZ3E,EAAA,IAAA,EAAA,CAAA;AAaE,EAAO,OAAA,CAAA,CAAA,EAAA,GAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,MAAL,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAa,UAAe,MAAA,IAAA,CAAA;AACrC,CAAA;AAEgB,SAAA,gBAAA,CAAoB,QAAW,GAA4B,EAAA;AAhB3E,EAAA,IAAA,EAAA,CAAA;AAiBE,EAAO,OAAA,CAAA,CAAA,EAAA,GAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,MAAL,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAa,UAAe,MAAA,IAAA,CAAA;AACrC,CAAA;AAEO,SAAS,oBAAoB,gBAAsC,EAAA;AACxE,EAAI,IAAA,OAAO,qBAAqB,QAAU,EAAA;AACxC,IAAO,OAAA,gBAAA,CAAA;AAAA,GACT;AACA,EACE,IAAA,CAAC,gBACD,IAAA,CAAC,KAAM,CAAA,OAAA,CAAQ,gBAAgB,CAC/B,IAAA,gBAAA,CAAiB,QAAS,CAAA,KAAK,CAC/B,EAAA;AACA,IAAO,OAAA,KAAA,CAAA,CAAA;AAAA,GACT;AACA,EAAI,IAAA,gBAAA,CAAiB,QAAS,CAAA,KAAK,CAAG,EAAA;AACpC,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AACA,EAAA,IAAI,iBAAiB,QAAS,CAAA,IAAI,CAAK,IAAA,gBAAA,CAAiB,WAAW,CAAG,EAAA;AACpE,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AACA,EAAO,OAAA,gBAAA,CAAiB,OAAO,CAAC,CAAA,KAAM,MAAM,IAAI,CAAA,CAAE,KAAK,GAAG,CAAA,CAAA;AAC5D,CAAA;AAMA,SAAS,cAAiC,GAAA;AACxC,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,WAAa,EAAA,6CAAA;AAAA,IACb,WAAa,EAAA,gBAAA;AAAA;AAAA,IAEb,QAAQ,MAAM,IAAA;AAAA;AAAA,IACd,QAAU,EAAA,IAAA;AAAA,GACZ,CAAA;AACF,CAAA;AAEA,SAAS,mBAAsB,aAAoC,EAAA;AACjE,EAAO,OAAA;AAAA,IACL,WAAa,EAAA,UAAA;AAAA,IACb,IAAM,EAAA,SAAA;AAAA,IACN,aAAa,CAAe,YAAA,EAAA,aAAA,CAAA,6BAAA,CAAA;AAAA,IAC5B,gBAAkB,EAAA,KAAA;AAAA,IAClB,MAAQ,EAAA,gBAAA;AAAA,GACV,CAAA;AACF,CAAA;AAEA,SAAS,mBAAsB,aAAoC,EAAA;AACjE,EAAO,OAAA;AAAA,IACL,WAAa,EAAA,WAAA;AAAA,IACb,IAAM,EAAA,SAAA;AAAA,IACN,aAAa,CAA6B,0BAAA,EAAA,aAAA,CAAA,sIAAA,CAAA;AAAA,IAC1C,gBAAkB,EAAA,KAAA;AAAA,IAClB,QAAU,EAAA,IAAA;AAAA,IACV,MAAQ,EAAA,gBAAA;AAAA,GACV,CAAA;AACF,CAAA;AAEA,SAAS,mBAAsB,aAAoC,EAAA;AACjE,EAAO,OAAA;AAAA,IACL,WAAa,EAAA,UAAA;AAAA,IACb,IAAM,EAAA,SAAA;AAAA,IACN,aAAa,CAAyC,sCAAA,EAAA,aAAA,CAAA,wBAAA,CAAA;AAAA,IACtD,gBAAkB,EAAA,KAAA;AAAA,IAClB,QAAU,EAAA,IAAA;AAAA;AAAA,IAEV,QAAQ,MAAM,IAAA;AAAA;AAAA,GAChB,CAAA;AACF,CAAA;AAEA,SAAS,oBAAuB,aAAoC,EAAA;AAClE,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,SAAA;AAAA,IACN,aAAa,CAAe,YAAA,EAAA,aAAA,CAAA,gCAAA,CAAA;AAAA,IAC5B,gBAAkB,EAAA,KAAA;AAAA,IAClB,QAAU,EAAA,IAAA;AAAA,IACV,MAAQ,EAAA,SAAA;AAAA,GACV,CAAA;AACF,CAAA;AAEA,SAAS,oBAAuB,aAAoC,EAAA;AAClE,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,WAAa,EAAA,YAAA;AAAA,IACb,aAAa,CAAwE,qEAAA,EAAA,aAAA,CAAA,CAAA;AAAA,IACrF,QAAU,EAAA,IAAA;AAAA,IACV,MAAQ,EAAA,SAAA;AAAA,GACV,CAAA;AACF,CAAA;AAEA,SAAS,kBAAqC,GAAA;AAC5C,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,eAAiB,EAAA,IAAA;AAAA,GACnB,CAAA;AACF,CAAA;AAEgB,SAAA,cAAA,CACd,eACA,SACA,EAAA;AACA,EAAA,MAAM,WAA2C,GAAA;AAAA,IAC/C,MAAM,cAAkB,EAAA;AAAA,IACxB,QAAA,EAAU,mBAAmB,aAAa,CAAA;AAAA,IAC1C,UAAA,EAAY,mBAAmB,aAAa,CAAA;AAAA,IAC5C,QAAA,EAAU,mBAAmB,aAAa,CAAA;AAAA,IAC1C,UAAA,EAAY,mBAAmB,aAAa,CAAA;AAAA,IAC5C,SAAA,EAAW,oBAAoB,aAAa,CAAA;AAAA,IAC5C,YAAA,EAAc,oBAAoB,aAAa,CAAA;AAAA,IAC/C,QAAA,EAAU,mBAAmB,aAAa,CAAA;AAAA,IAC1C,UAAA,EAAY,mBAAmB,aAAa,CAAA;AAAA,IAC5C,UAAU,kBAAmB,EAAA;AAAA;AAAA,IAE7B,KAAO,EAAA;AAAA,MACL,IAAM,EAAA,QAAA;AAAA,MACN,QAAU,EAAA,IAAA;AAAA,MACV,WAAa,EAAA,eAAA;AAAA,MACb,gBAAkB,EAAA,cAAA;AAAA,MAClB,aAAa,CAA4B,yBAAA,EAAA,aAAA,CAAA,CAAA;AAAA,MACzC,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,QAAA;AAAA,MACN,WAAa,EAAA,yDAAA;AAAA,MACb,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,QAAA;AAAA,MACN,WAAa,EAAA,yDAAA;AAAA,MACb,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,QAAA;AAAA,MACN,WACE,EAAA,kEAAA;AAAA,MACF,QACE,EAAA,qGAAA;AAAA,MACF,SAAA,EAAW,CAAC,KAAkB,KAAA;AAC5B,QAAI,IAAA;AACF,UAAA,IAAI,OAAO,KAAK,CAAA,CAAA;AAChB,UAAO,OAAA,IAAA,CAAA;AAAA,iBACA,KAAP,EAAA;AACA,UAAO,OAAA,eAAA,CAAA;AAAA,SACT;AAAA,OACF;AAAA,MACA,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,IAAM,EAAA,QAAA;AAAA,MACN,gBAAkB,EAAA,MAAA;AAAA,MAClB,SAAS,CAAC,MAAA,EAAQ,UAAU,KAAO,EAAA,KAAA,EAAO,SAAS,UAAU,CAAA;AAAA,MAC7D,WACE,EAAA,6JAAA;AAAA,MACF,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,QAAA;AAAA,MACN,WACE,EAAA,qHAAA;AAAA,MACF,OAAS,EAAA;AAAA,QACP,MAAA;AAAA,QACA,MAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,QACA,OAAA;AAAA,QACA,SAAA;AAAA,QACA,SAAA;AAAA,QACA,QAAA;AAAA,OACF;AAAA,MACA,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,YAAc,EAAA;AAAA,MACZ,IAAM,EAAA,QAAA;AAAA,MACN,QAAU,EAAA,IAAA;AAAA,MACV,WAAa,EAAA,IAAA;AAAA,MACb,MAAQ,EAAA,SAAA;AAAA,MACR,WAAa,EAAA,uDAAA;AAAA,MACb,QACE,EAAA,6IAAA;AAAA,MACF,OAAS,EAAA;AAAA,QACP,IAAA;AAAA,QACA,KAAA;AAAA,QACA,MAAA;AAAA,QACA,kBAAA;AAAA,QACA,YAAA;AAAA,QACA,iBAAA;AAAA,QACA,aAAA;AAAA,QACA,kBAAA;AAAA,QACA,UAAA;AAAA,QACA,OAAA;AAAA,QACA,UAAA;AAAA,QACA,cAAA;AAAA,QACA,kBAAA;AAAA,QACA,eAAA;AAAA,QACA,oBAAA;AAAA,QACA,cAAA;AAAA,QACA,gBAAA;AAAA,QACA,UAAA;AAAA,QACA,SAAA;AAAA,QACA,eAAA;AAAA,QACA,eAAA;AAAA,QACA,eAAA;AAAA,QACA,gBAAA;AAAA,QACA,gBAAA;AAAA,QACA,gBAAA;AAAA,QACA,gBAAA;AAAA,QACA,SAAA;AAAA,QACA,cAAA;AAAA,QACA,aAAA;AAAA,QACA,SAAA;AAAA,QACA,eAAA;AAAA,QACA,oBAAA;AAAA,QACA,gBAAA;AAAA,QACA,WAAA;AAAA,QACA,QAAA;AAAA,QACA,cAAA;AAAA,QACA,aAAA;AAAA,QACA,QAAA;AAAA,QACA,SAAA;AAAA,QACA,sBAAA;AAAA,QACA,oBAAA;AAAA,QACA,UAAA;AAAA,QACA,MAAA;AAAA,QACA,UAAA;AAAA,QACA,YAAA;AAAA,QACA,WAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,QACA,kBAAA;AAAA,QACA,cAAA;AAAA,QACA,eAAA;AAAA,QACA,WAAA;AAAA,QACA,kBAAA;AAAA,QACA,kBAAA;AAAA,QACA,eAAA;AAAA,QACA,MAAA;AAAA,QACA,KAAA;AAAA,QACA,OAAA;AAAA,QACA,UAAA;AAAA,OACF;AAAA,KACF;AAAA,IACA,kBAAoB,EAAA;AAAA,MAClB,IAAM,EAAA,QAAA;AAAA,MACN,OAAA,EAAS,CAAC,QAAA,EAAU,MAAM,CAAA;AAAA,MAC1B,WACE,EAAA,gKAAA;AAAA,MACF,gBAAkB,EAAA,QAAA;AAAA,MAClB,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,OAAS,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MAC5C,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,YAAc,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACjD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,YAAc,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACjD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,aAAe,EAAA;AAAA,MACb,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,WAAa,EAAA,IAAA,EAAM,WAAW,CAAA;AAAA,MACjD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACpD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACpD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACpD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,KAAO,EAAA;AAAA,MACL,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACpD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACpD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,kBAAoB,EAAA;AAAA,MAClB,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,kBAAoB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACvD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,gBAAkB,EAAA;AAAA,MAChB,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,kBAAoB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACvD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,mBAAqB,EAAA;AAAA,MACnB,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,kBAAoB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACvD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,gBAAkB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACrD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,aAAe,EAAA;AAAA,MACb,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,YAAc,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACjD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,OAAS,EAAA;AAAA,MACP,IAAM,EAAA,cAAA;AAAA,MACN,UAAU,CAAC,EAAE,MAAM,YAAc,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,MACjD,QAAU,EAAA,IAAA;AAAA,MACV,MAAQ,EAAA,SAAA;AAAA,KACV;AAAA,IACA,WAAa,EAAA;AAAA,MACX,IAAM,EAAA,QAAA;AAAA,KACR;AAAA,GACF,CAAA;AAGA,EAAA,MAAM,gBAAuD,EAAC,CAAA;AAC9D,EAAU,SAAA,CAAA,OAAA,CAAQ,CAAC,QAAa,KAAA;AAC9B,IAAA,IAAI,OAAO,SAAU,CAAA,cAAA,CAAe,IAAK,CAAA,WAAA,EAAa,QAAQ,CAAG,EAAA;AAC/D,MAAc,aAAA,CAAA,QAAQ,CAAI,GAAA,WAAA,CAAY,QAAkB,CAAA,CAAA;AAAA,KAC1D;AAAA,GACD,CAAA,CAAA;AAED,EAAO,OAAA,aAAA,CAAA;AACT,CAAA;AAMgB,SAAA,mBAAA,CACd,eACA,SACa,EAAA;AACb,EAAO,OAAA,cAAA,CAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,aAAa,CAA4B,yBAAA,EAAA,aAAA,CAAA,kDAAA,CAAA;AAAA,IACzC,OAAS,EAAA;AAAA,MACP,QAAA;AAAA,MACA,aAAA;AAAA,MACA,cAAA;AAAA,MACA,cAAA;AAAA,MACA,YAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,aAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAA;AAAA,MACA,cAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAA;AAAA,MACA,cAAA;AAAA,MACA,KAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,KACF;AAAA,GAAA,EACI,gCAAa,EAAC,CAAA,CAAA;AAEtB,CAAA;AAEgB,SAAA,gBAAA,CACd,eACA,SACa,EAAA;AACb,EAAO,OAAA,cAAA,CAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,WAAa,EAAA,QAAA;AAAA,IACb,aAAa,CAA6D,0DAAA,EAAA,aAAA,CAAA,gBAAA,CAAA;AAAA,IAC1E,QAAU,EAAA,IAAA;AAAA,GAAA,EACN,gCAAa,EAAC,CAAA,CAAA;AAEtB,CAAA;AAEgB,SAAA,0BAAA,CACd,eACA,SACa,EAAA;AACb,EAAO,OAAA,cAAA,CAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,aAAa,CAAkD,+CAAA,EAAA,aAAA,CAAA,qHAAA,CAAA;AAAA,IAC/D,QAAU,EAAA,IAAA;AAAA,GAAA,EACN,gCAAa,EAAC,CAAA,CAAA;AAEtB,CAAA;AAEgB,SAAA,qBAAA,CACd,eACA,SACa,EAAA;AACb,EAAO,OAAA,cAAA,CAAA;AAAA,IACL,IAAM,EAAA,QAAA;AAAA,IACN,aAAa,CAAkE,+DAAA,EAAA,aAAA,CAAA,wBAAA,CAAA;AAAA,IAC/E,QAAU,EAAA,IAAA;AAAA,GAAA,EACN,gCAAa,EAAC,CAAA,CAAA;AAEtB,CAAA;AAEgB,SAAA,qBAAA,CACd,eACA,SACA,EAAA;AACA,EAAA,MAAM,WAA2C,GAAA;AAAA,IAC/C,SAAW,EAAA,mBAAA,CAAuB,aAAe,EAAA,SAAA,CAAU,WAAW,CAAC,CAAA;AAAA,IACvE,MAAQ,EAAA,gBAAA,CAAoB,aAAe,EAAA,SAAA,CAAU,QAAQ,CAAC,CAAA;AAAA,IAC9D,gBAAkB,EAAA,0BAAA;AAAA,MAChB,aAAA;AAAA,MACA,UAAU,kBAAkB,CAAA;AAAA,KAC9B;AAAA,IACA,WAAa,EAAA,qBAAA;AAAA,MACX,aAAA;AAAA,MACA,UAAU,aAAa,CAAA;AAAA,KACzB;AAAA,GACF,CAAA;AACA,EAAO,OAAA,WAAA,CAAA;AACT,CAAA;AAEO,MAAM,SAA4B,GAAA;AAAA,EACvC,IAAM,EAAA,MAAA;AAAA,EACN,UAAU,EAAC;AAAA,EACX,MAAQ,EAAA;AAAA,IACN,KAAO,EAAA,CAAA;AAAA,IACP,MAAQ,EAAA,CAAA;AAAA,IACR,OAAS,EAAA,CAAA;AAAA,IACT,eAAiB,EAAA,KAAA;AAAA,IACjB,gBAAkB,EAAA,KAAA;AAAA,IAClB,cAAgB,EAAA,KAAA;AAAA,IAChB,eAAiB,EAAA,OAAA;AAAA,IACjB,gBAAkB,EAAA,OAAA;AAAA,IAClB,cAAgB,EAAA,OAAA;AAAA,IAChB,eAAiB,EAAA,aAAA;AAAA,IACjB,gBAAkB,EAAA,aAAA;AAAA,IAClB,cAAgB,EAAA,OAAA;AAAA,GAClB;AACF,EAAA;AAEa,MAAA,aAAA,GAA+B,EAAE,SAAA,EAAW,YAAa;;;;"}
1
+ {"version":3,"file":"common-a8047588.esm.js","sources":["../src/common.ts"],"sourcesContent":["import { PlasmicElement, PropType } from \"@plasmicapp/host\";\nimport { CSSProperties } from \"react\";\nimport {\n BaseControlContextData,\n HasControlContextData,\n isDefined,\n} from \"./utils\";\n\nexport function hasParent<T>(_props: T, ctx: ConditionalContext<T>): boolean {\n return isDefined(ctx?.parent) === true;\n}\n\nexport function isParentReadOnly<T>(_props: T, ctx: ConditionalContext<T>) {\n return ctx?.parent?.isReadOnly === true;\n}\n\nexport function isParentDisabled<T>(_props: T, ctx: ConditionalContext<T>) {\n return ctx?.parent?.isDisabled === true;\n}\n\nexport function resolveAutoComplete(autoCompleteProp?: string | string[]) {\n if (typeof autoCompleteProp === \"string\") {\n return autoCompleteProp;\n }\n if (\n !autoCompleteProp ||\n !Array.isArray(autoCompleteProp) ||\n autoCompleteProp.includes(\"off\")\n ) {\n return undefined;\n }\n if (autoCompleteProp.includes(\"off\")) {\n return \"off\";\n }\n if (autoCompleteProp.includes(\"on\") && autoCompleteProp.length === 1) {\n return \"on\";\n }\n return autoCompleteProp.filter((x) => x !== \"on\").join(\" \");\n}\n\ntype ConditionalContext<T> = T extends HasControlContextData\n ? BaseControlContextData | null\n : null;\n\nfunction createNameProp<T>(): PropType<T> {\n return {\n type: \"string\",\n description: \"Name for this field if it is part of a form\",\n displayName: \"Form field key\",\n // hidden: hasParent,\n hidden: () => true, // hiding required prop until the release of Aria Forms\n advanced: true,\n };\n}\n\nfunction createDisabledProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Disabled\",\n type: \"boolean\",\n description: `Whether the ${componentName} is read-only and unfocusable`,\n defaultValueHint: false,\n hidden: isParentDisabled,\n };\n}\n\nfunction createReadOnlyProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Read only\",\n type: \"boolean\",\n description: `Whether the value of this ${componentName} can be changed by the user. Unlike disabled, read-only does not prevent the user from interacting with the component (such as focus).`,\n defaultValueHint: false,\n advanced: true,\n hidden: isParentReadOnly,\n };\n}\n\nfunction createRequiredProp<T>(componentName: string): PropType<T> {\n return {\n displayName: \"Required\",\n type: \"boolean\",\n description: `Whether user input is required on the ${componentName} before form submission.`,\n defaultValueHint: false,\n advanced: true,\n // hidden: hasParent,\n hidden: () => true, // hiding required prop until the release of Aria Forms\n };\n}\n\nfunction createAutoFocusProp<T>(componentName: string): PropType<T> {\n return {\n type: \"boolean\",\n description: `Whether the ${componentName} should be focused when rendered`,\n defaultValueHint: false,\n advanced: true,\n hidden: hasParent,\n };\n}\n\nfunction createAriaLabelProp<T>(componentName: string): PropType<T> {\n return {\n type: \"string\",\n displayName: \"ARIA label\",\n description: `Assistive technology uses this if there is no visible label for this ${componentName}`,\n advanced: true,\n hidden: hasParent,\n };\n}\n\nfunction createChildrenProp<T>(): PropType<T> {\n return {\n type: \"slot\",\n mergeWithParent: true,\n };\n}\n\nexport function getCommonProps<T>(\n componentName: string,\n propNames: (keyof T)[]\n) {\n const commonProps: Record<string, PropType<T>> = {\n name: createNameProp<T>(),\n disabled: createDisabledProp(componentName),\n isDisabled: createDisabledProp(componentName),\n readOnly: createReadOnlyProp(componentName),\n isReadOnly: createReadOnlyProp(componentName),\n autoFocus: createAutoFocusProp(componentName),\n \"aria-label\": createAriaLabelProp(componentName),\n required: createRequiredProp(componentName),\n isRequired: createRequiredProp(componentName),\n children: createChildrenProp(),\n // NOTE: The following props are only applicable to inputs, textareas, and text fields\n value: {\n type: \"string\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: `The default value of the ${componentName}`,\n hidden: hasParent,\n },\n maxLength: {\n type: \"number\",\n description: \"The maximum number of characters supported by the input\",\n advanced: true,\n hidden: hasParent,\n },\n minLength: {\n type: \"number\",\n description: \"The minimum number of characters supported by the input\",\n advanced: true,\n hidden: hasParent,\n },\n pattern: {\n type: \"string\",\n description:\n \"Regex pattern that the value of the input must match to be valid\",\n helpText:\n \"For more information about writing Regular Expressions (regex), visit [Regexr](https://regexr.com/)\",\n validator: (value: string) => {\n try {\n new RegExp(value);\n return true;\n } catch (error) {\n return \"Invalid Regex\";\n }\n },\n advanced: true,\n hidden: hasParent,\n },\n type: {\n type: \"choice\",\n defaultValueHint: \"text\",\n options: [\"text\", \"search\", \"url\", \"tel\", \"email\", \"password\"],\n description:\n \"The type of data that an input field is expected to handle. It influences the input's behavior, validation, and the kind of interface provided to the user.\",\n advanced: true,\n hidden: hasParent,\n },\n inputMode: {\n type: \"choice\",\n description:\n \"hint to browsers as to the type of virtual keyboard configuration to use when editing this element or its contents.\",\n options: [\n \"none\",\n \"text\",\n \"tel\",\n \"url\",\n \"email\",\n \"numeric\",\n \"decimal\",\n \"search\",\n ],\n hidden: hasParent,\n },\n autoComplete: {\n type: \"choice\",\n advanced: true,\n multiSelect: true,\n hidden: hasParent,\n description: \"Guidance as to the type of data expected in the field\",\n helpText:\n \"Learn more about the available options on the [MDN guide](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values)\",\n options: [\n \"on\",\n \"off\",\n \"name\",\n \"honorific-prefix\",\n \"given-name\",\n \"additional-name\",\n \"family-name\",\n \"honorific-suffix\",\n \"nickname\",\n \"email\",\n \"username\",\n \"new-password\",\n \"current-password\",\n \"one-time-code\",\n \"organization-title\",\n \"organization\",\n \"street-address\",\n \"shipping\",\n \"billing\",\n \"address-line1\",\n \"address-line2\",\n \"address-line3\",\n \"address-level4\",\n \"address-level3\",\n \"address-level2\",\n \"address-level1\",\n \"country\",\n \"country-name\",\n \"postal-code\",\n \"cc-name\",\n \"cc-given-name\",\n \"cc-additional-name\",\n \"cc-family-name\",\n \"cc-number\",\n \"cc-exp\",\n \"cc-exp-month\",\n \"cc-exp-year\",\n \"cc-csc\",\n \"cc-type\",\n \"transaction-currency\",\n \"transaction-amount\",\n \"language\",\n \"bday\",\n \"bday-day\",\n \"bday-month\",\n \"bday-year\",\n \"sex\",\n \"tel\",\n \"tel-country-code\",\n \"tel-national\",\n \"tel-area-code\",\n \"tel-local\",\n \"tel-local-suffix\",\n \"tel-local-prefix\",\n \"tel-extension\",\n \"impp\",\n \"url\",\n \"photo\",\n \"webauthn\",\n ],\n },\n validationBehavior: {\n type: \"choice\",\n options: [\"native\", \"aria\"],\n description:\n \"Whether to use native HTML form validation to prevent form submission when the value is missing or invalid, or mark the field as required or invalid via ARIA.\",\n defaultValueHint: \"native\",\n advanced: true,\n hidden: hasParent,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n hidden: hasParent,\n },\n onFocus: {\n type: \"eventHandler\",\n argTypes: [{ name: \"focusEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onBlur: {\n type: \"eventHandler\",\n argTypes: [{ name: \"focusEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onFocusChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isFocused\", type: \"boolean\" }],\n advanced: true,\n hidden: hasParent,\n },\n onKeyDown: {\n type: \"eventHandler\",\n argTypes: [{ name: \"keyboardEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onKeyUp: {\n type: \"eventHandler\",\n argTypes: [{ name: \"keyboardEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCopy: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCut: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onPaste: {\n type: \"eventHandler\",\n argTypes: [{ name: \"clipbordEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionStart: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onCompositionUpdate: {\n type: \"eventHandler\",\n argTypes: [{ name: \"compositionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onSelect: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectionEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onBeforeInput: {\n type: \"eventHandler\",\n argTypes: [{ name: \"inputEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n onInput: {\n type: \"eventHandler\",\n argTypes: [{ name: \"inputEvent\", type: \"object\" }],\n advanced: true,\n hidden: hasParent,\n },\n placeholder: {\n type: \"string\",\n },\n };\n\n // Filter the properties based on the provided fields array\n const filteredProps: Partial<Record<keyof T, PropType<T>>> = {};\n propNames.forEach((propName) => {\n if (Object.prototype.hasOwnProperty.call(commonProps, propName)) {\n filteredProps[propName] = commonProps[propName as string];\n }\n });\n\n return filteredProps;\n}\n\ntype Overrides = {\n defaultValueHint?: any;\n};\n\nexport function createPlacementProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"choice\",\n description: `Default placement of the ${componentName} relative to the trigger, if there is enough space`,\n options: [\n \"bottom\",\n \"bottom left\",\n \"bottom right\",\n \"bottom start\",\n \"bottom end\",\n \"top\",\n \"top left\",\n \"top right\",\n \"top start\",\n \"top end\",\n \"left\",\n \"left top\",\n \"left bottom\",\n \"start\",\n \"start top\",\n \"start bottom\",\n \"right\",\n \"right top\",\n \"right bottom\",\n \"end\",\n \"end top\",\n \"end bottom\",\n ],\n ...(overrides ?? {}),\n };\n}\n\nexport function createOffsetProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n displayName: \"Offset\",\n description: `Additional offset applied along the main axis between the ${componentName} and its trigger`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function createContainerPaddingProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n description: `The padding that should be applied between the ${componentName} and its surrounding container. This affects the positioning breakpoints that determine when it will attempt to flip.`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function createCrossOffsetProp<T>(\n componentName: string,\n overrides: Overrides\n): PropType<T> {\n return {\n type: \"number\",\n description: `The additional offset applied along the cross axis between the ${componentName} and its anchor element.`,\n advanced: true,\n ...(overrides ?? {}),\n };\n}\n\nexport function getCommonOverlayProps<T>(\n componentName: string,\n overrides: Record<string, Overrides>\n) {\n const commonProps: Record<string, PropType<T>> = {\n placement: createPlacementProp<T>(componentName, overrides[\"placement\"]),\n offset: createOffsetProp<T>(componentName, overrides[\"offset\"]),\n containerPadding: createContainerPaddingProp<T>(\n componentName,\n overrides[\"containerPadding\"]\n ),\n crossOffset: createCrossOffsetProp<T>(\n componentName,\n overrides[\"crossOffset\"]\n ),\n };\n return commonProps;\n}\n\nexport const arrowDown: PlasmicElement = {\n type: \"hbox\",\n children: [],\n styles: {\n width: 0,\n height: 0,\n padding: 0,\n borderLeftWidth: \"5px\",\n borderRightWidth: \"5px\",\n borderTopWidth: \"5px\",\n borderLeftStyle: \"solid\",\n borderRightStyle: \"solid\",\n borderTopStyle: \"solid\",\n borderLeftColor: \"transparent\",\n borderRightColor: \"transparent\",\n borderTopColor: \"black\",\n },\n};\n// Set border-box to the root element of the aria code component to align with Plasmic's default of using border-box for all root elements.\nexport const COMMON_STYLES: CSSProperties = { boxSizing: \"border-box\" };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var utils = require('./utils-fc1ddd7c.cjs.js');
3
+ var utils = require('./utils-2e03b499.cjs.js');
4
4
 
5
5
  var __defProp = Object.defineProperty;
6
6
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -452,4 +452,4 @@ exports.getCommonOverlayProps = getCommonOverlayProps;
452
452
  exports.getCommonProps = getCommonProps;
453
453
  exports.hasParent = hasParent;
454
454
  exports.resolveAutoComplete = resolveAutoComplete;
455
- //# sourceMappingURL=common-45acb83c.cjs.js.map
455
+ //# sourceMappingURL=common-abd18d7f.cjs.js.map