@plasmicpkgs/react-aria 0.0.117 → 0.0.119

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 (122) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/contexts.d.ts +2 -1
  3. package/dist/react-aria.esm.js +128 -87
  4. package/dist/react-aria.esm.js.map +1 -1
  5. package/dist/react-aria.js +127 -86
  6. package/dist/react-aria.js.map +1 -1
  7. package/dist/utils.d.ts +5 -4
  8. package/package.json +2 -2
  9. package/skinny/contexts-5cb81c2f.esm.js.map +1 -1
  10. package/skinny/contexts-6d0cb2b1.cjs.js.map +1 -1
  11. package/skinny/contexts.d.ts +2 -1
  12. package/skinny/registerCheckboxGroup.cjs.js +11 -8
  13. package/skinny/registerCheckboxGroup.cjs.js.map +1 -1
  14. package/skinny/registerCheckboxGroup.esm.js +11 -8
  15. package/skinny/registerCheckboxGroup.esm.js.map +1 -1
  16. package/skinny/registerComboBox.cjs.js.map +1 -1
  17. package/skinny/registerComboBox.esm.js +1 -1
  18. package/skinny/registerComboBox.esm.js.map +1 -1
  19. package/skinny/registerDialogTrigger.cjs.js +17 -2
  20. package/skinny/registerDialogTrigger.cjs.js.map +1 -1
  21. package/skinny/registerDialogTrigger.esm.js +17 -2
  22. package/skinny/registerDialogTrigger.esm.js.map +1 -1
  23. package/skinny/registerInput.cjs.js +1 -1
  24. package/skinny/registerInput.cjs.js.map +1 -1
  25. package/skinny/registerInput.esm.js +2 -2
  26. package/skinny/registerInput.esm.js.map +1 -1
  27. package/skinny/{registerListBox-21dc99fa.esm.js → registerListBox-0f6ebcf0.esm.js} +2 -2
  28. package/skinny/{registerListBox-21dc99fa.esm.js.map → registerListBox-0f6ebcf0.esm.js.map} +1 -1
  29. package/skinny/registerListBox.esm.js +1 -1
  30. package/skinny/registerOverlayArrow.cjs.js +1 -1
  31. package/skinny/registerOverlayArrow.cjs.js.map +1 -1
  32. package/skinny/registerOverlayArrow.esm.js +2 -2
  33. package/skinny/registerOverlayArrow.esm.js.map +1 -1
  34. package/skinny/registerPopover.cjs.js.map +1 -1
  35. package/skinny/registerPopover.esm.js.map +1 -1
  36. package/skinny/registerRadioGroup.cjs.js +11 -8
  37. package/skinny/registerRadioGroup.cjs.js.map +1 -1
  38. package/skinny/registerRadioGroup.esm.js +11 -8
  39. package/skinny/registerRadioGroup.esm.js.map +1 -1
  40. package/skinny/registerSection.esm.js +1 -1
  41. package/skinny/registerSelect.cjs.js.map +1 -1
  42. package/skinny/registerSelect.esm.js +1 -1
  43. package/skinny/registerSelect.esm.js.map +1 -1
  44. package/skinny/registerSlider.cjs.js +17 -14
  45. package/skinny/registerSlider.cjs.js.map +1 -1
  46. package/skinny/registerSlider.esm.js +17 -14
  47. package/skinny/registerSlider.esm.js.map +1 -1
  48. package/skinny/registerTextArea.cjs.js +5 -2
  49. package/skinny/registerTextArea.cjs.js.map +1 -1
  50. package/skinny/registerTextArea.esm.js +6 -3
  51. package/skinny/registerTextArea.esm.js.map +1 -1
  52. package/skinny/registerTextField.cjs.js +28 -17
  53. package/skinny/registerTextField.cjs.js.map +1 -1
  54. package/skinny/registerTextField.esm.js +28 -17
  55. package/skinny/registerTextField.esm.js.map +1 -1
  56. package/skinny/registerTooltip.cjs.js +37 -34
  57. package/skinny/registerTooltip.cjs.js.map +1 -1
  58. package/skinny/registerTooltip.esm.js +37 -34
  59. package/skinny/registerTooltip.esm.js.map +1 -1
  60. package/skinny/utils-fc1ddd7c.cjs.js.map +1 -1
  61. package/skinny/utils-fd88ad47.esm.js.map +1 -1
  62. package/skinny/utils.d.ts +5 -4
  63. package/skinny/registerButton.stories.cjs.js +0 -163
  64. package/skinny/registerButton.stories.cjs.js.map +0 -1
  65. package/skinny/registerButton.stories.esm.js +0 -149
  66. package/skinny/registerButton.stories.esm.js.map +0 -1
  67. package/skinny/registerCheckboxGroup.stories.cjs.js +0 -121
  68. package/skinny/registerCheckboxGroup.stories.cjs.js.map +0 -1
  69. package/skinny/registerCheckboxGroup.stories.esm.js +0 -109
  70. package/skinny/registerCheckboxGroup.stories.esm.js.map +0 -1
  71. package/skinny/registerComboBox.stories.cjs.js +0 -244
  72. package/skinny/registerComboBox.stories.cjs.js.map +0 -1
  73. package/skinny/registerComboBox.stories.esm.js +0 -230
  74. package/skinny/registerComboBox.stories.esm.js.map +0 -1
  75. package/skinny/registerDialogTrigger.stories.cjs.js +0 -458
  76. package/skinny/registerDialogTrigger.stories.cjs.js.map +0 -1
  77. package/skinny/registerDialogTrigger.stories.esm.js +0 -441
  78. package/skinny/registerDialogTrigger.stories.esm.js.map +0 -1
  79. package/skinny/registerListbox.stories.cjs.js +0 -219
  80. package/skinny/registerListbox.stories.cjs.js.map +0 -1
  81. package/skinny/registerListbox.stories.esm.js +0 -206
  82. package/skinny/registerListbox.stories.esm.js.map +0 -1
  83. package/skinny/registerModal.stories.cjs.js +0 -194
  84. package/skinny/registerModal.stories.cjs.js.map +0 -1
  85. package/skinny/registerModal.stories.esm.js +0 -181
  86. package/skinny/registerModal.stories.esm.js.map +0 -1
  87. package/skinny/registerPopover.stories.cjs.js +0 -102
  88. package/skinny/registerPopover.stories.cjs.js.map +0 -1
  89. package/skinny/registerPopover.stories.esm.js +0 -92
  90. package/skinny/registerPopover.stories.esm.js.map +0 -1
  91. package/skinny/registerRadioGroup.stories.cjs.js +0 -120
  92. package/skinny/registerRadioGroup.stories.cjs.js.map +0 -1
  93. package/skinny/registerRadioGroup.stories.esm.js +0 -108
  94. package/skinny/registerRadioGroup.stories.esm.js.map +0 -1
  95. package/skinny/registerSelect.stories.cjs.js +0 -215
  96. package/skinny/registerSelect.stories.cjs.js.map +0 -1
  97. package/skinny/registerSelect.stories.esm.js +0 -202
  98. package/skinny/registerSelect.stories.esm.js.map +0 -1
  99. package/skinny/registerSlider.stories.cjs.js +0 -165
  100. package/skinny/registerSlider.stories.cjs.js.map +0 -1
  101. package/skinny/registerSlider.stories.esm.js +0 -151
  102. package/skinny/registerSlider.stories.esm.js.map +0 -1
  103. package/skinny/registerSwitch.stories.cjs.js +0 -162
  104. package/skinny/registerSwitch.stories.cjs.js.map +0 -1
  105. package/skinny/registerSwitch.stories.esm.js +0 -148
  106. package/skinny/registerSwitch.stories.esm.js.map +0 -1
  107. package/skinny/registerTextField-common-stories.cjs.js +0 -199
  108. package/skinny/registerTextField-common-stories.cjs.js.map +0 -1
  109. package/skinny/registerTextField-common-stories.esm.js +0 -185
  110. package/skinny/registerTextField-common-stories.esm.js.map +0 -1
  111. package/skinny/registerTextField-input.stories.cjs.js +0 -54
  112. package/skinny/registerTextField-input.stories.cjs.js.map +0 -1
  113. package/skinny/registerTextField-input.stories.esm.js +0 -37
  114. package/skinny/registerTextField-input.stories.esm.js.map +0 -1
  115. package/skinny/registerTextField-textarea.stories.cjs.js +0 -55
  116. package/skinny/registerTextField-textarea.stories.cjs.js.map +0 -1
  117. package/skinny/registerTextField-textarea.stories.esm.js +0 -39
  118. package/skinny/registerTextField-textarea.stories.esm.js.map +0 -1
  119. package/skinny/registerTooltip.stories.cjs.js +0 -616
  120. package/skinny/registerTooltip.stories.cjs.js.map +0 -1
  121. package/skinny/registerTooltip.stories.esm.js +0 -596
  122. package/skinny/registerTooltip.stories.esm.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"registerRadioGroup.esm.js","sources":["../src/registerRadioGroup.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport type { RadioGroupProps } from \"react-aria-components\";\nimport { RadioGroup } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicRadioGroupContext } from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { DESCRIPTION_COMPONENT_NAME } from \"./registerDescription\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { makeDefaultRadioChildren, registerRadio } from \"./registerRadio\";\nimport {\n CodeComponentMetaOverrides,\n HasControlContextData,\n Registerable,\n makeChildComponentName,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nexport interface BaseRadioGroupControlContextData {\n values: string[];\n}\n\nconst RADIO_GROUP_VARIANTS = [\"disabled\" as const, \"readonly\" as const];\n\nexport interface BaseRadioGroupProps\n extends RadioGroupProps,\n HasControlContextData<BaseRadioGroupControlContextData>,\n WithVariants<typeof RADIO_GROUP_VARIANTS> {\n children: React.ReactNode;\n}\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(RADIO_GROUP_VARIANTS);\n\nexport function BaseRadioGroup(props: BaseRadioGroupProps) {\n const { children, plasmicUpdateVariant, setControlContextData, ...rest } =\n props;\n\n const [ids, setIds] = useState<string[]>([]);\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n setControlContextData?.({\n values: ids,\n });\n }, [ids, setControlContextData]);\n\n useEffect(() => {\n idManager.subscribe((_ids: string[]) => {\n setIds(_ids);\n });\n }, [idManager]);\n\n return (\n <PlasmicRadioGroupContext.Provider value={{ ...props, idManager }}>\n <RadioGroup {...rest} style={COMMON_STYLES}>\n {({ isDisabled, isReadOnly }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n readonly: isReadOnly,\n },\n plasmicUpdateVariant\n )\n }\n </RadioGroup>\n </PlasmicRadioGroupContext.Provider>\n );\n}\n\nconst RADIO_GROUP_COMPONENT_NAME = makeComponentName(\"radioGroup\");\n\nexport function registerRadioGroup(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseRadioGroup>\n) {\n const thisName = makeChildComponentName(\n overrides?.parentComponentName,\n RADIO_GROUP_COMPONENT_NAME\n );\n\n const radioMeta = registerRadio(loader, { parentComponentName: thisName });\n\n registerComponentHelper(\n loader,\n BaseRadioGroup,\n {\n name: RADIO_GROUP_COMPONENT_NAME,\n displayName: \"Aria RadioGroup\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerRadioGroup\",\n importName: \"BaseRadioGroup\",\n variants,\n props: {\n ...getCommonProps<BaseRadioGroupProps>(\"radio group\", [\n \"name\",\n \"isDisabled\",\n \"isReadOnly\",\n \"aria-label\",\n \"isRequired\",\n ]),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n display: \"flex\",\n gap: \"5px\",\n padding: 0,\n alignItems: \"flex-start\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Radio Group\",\n },\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 1\"),\n value: \"radio1\",\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 2\"),\n value: \"radio2\",\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 3\"),\n value: \"radio3\",\n },\n },\n {\n type: \"component\",\n name: DESCRIPTION_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value:\n \"Use the registered variants to see it in action...\",\n },\n },\n },\n ],\n },\n ],\n },\n value: {\n type: \"choice\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The current value\",\n options: (_props, ctx) => (ctx?.values ? Array.from(ctx.values) : []),\n multiSelect: false,\n },\n isInvalid: {\n displayName: \"Invalid\",\n type: \"boolean\",\n description: \"Whether the input value is invalid\",\n defaultValueHint: false,\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 },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registerRadioGroup.esm.js","sources":["../src/registerRadioGroup.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport type { RadioGroupProps } from \"react-aria-components\";\nimport { RadioGroup } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicRadioGroupContext } from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { DESCRIPTION_COMPONENT_NAME } from \"./registerDescription\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { makeDefaultRadioChildren, registerRadio } from \"./registerRadio\";\nimport {\n CodeComponentMetaOverrides,\n HasControlContextData,\n Registerable,\n makeChildComponentName,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nexport interface BaseRadioGroupControlContextData {\n values: string[];\n}\n\nconst RADIO_GROUP_VARIANTS = [\"disabled\" as const, \"readonly\" as const];\n\nexport interface BaseRadioGroupProps\n extends RadioGroupProps,\n HasControlContextData<BaseRadioGroupControlContextData>,\n WithVariants<typeof RADIO_GROUP_VARIANTS> {\n children: React.ReactNode;\n}\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(RADIO_GROUP_VARIANTS);\n\nexport function BaseRadioGroup(props: BaseRadioGroupProps) {\n const { children, plasmicUpdateVariant, setControlContextData, ...rest } =\n props;\n\n const [ids, setIds] = useState<string[]>([]);\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n setControlContextData?.({\n values: ids,\n });\n }, [ids, setControlContextData]);\n\n useEffect(() => {\n idManager.subscribe((_ids: string[]) => {\n setIds(_ids);\n });\n }, [idManager]);\n\n return (\n // PlasmicRadioGroupContext is used by BaseRadio\n <PlasmicRadioGroupContext.Provider value={{ ...props, idManager }}>\n <RadioGroup {...rest} style={COMMON_STYLES}>\n {({ isDisabled, isReadOnly }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n readonly: isReadOnly,\n },\n plasmicUpdateVariant\n )\n }\n </RadioGroup>\n </PlasmicRadioGroupContext.Provider>\n );\n}\n\nconst RADIO_GROUP_COMPONENT_NAME = makeComponentName(\"radioGroup\");\n\nexport function registerRadioGroup(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseRadioGroup>\n) {\n const thisName = makeChildComponentName(\n overrides?.parentComponentName,\n RADIO_GROUP_COMPONENT_NAME\n );\n\n const radioMeta = registerRadio(loader, { parentComponentName: thisName });\n\n registerComponentHelper(\n loader,\n BaseRadioGroup,\n {\n name: RADIO_GROUP_COMPONENT_NAME,\n displayName: \"Aria RadioGroup\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerRadioGroup\",\n importName: \"BaseRadioGroup\",\n variants,\n props: {\n ...getCommonProps<BaseRadioGroupProps>(\"radio group\", [\n \"name\",\n \"isDisabled\",\n \"isReadOnly\",\n \"aria-label\",\n \"isRequired\",\n ]),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n display: \"flex\",\n gap: \"5px\",\n padding: 0,\n alignItems: \"flex-start\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Radio Group\",\n },\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 1\"),\n value: \"radio1\",\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 2\"),\n value: \"radio2\",\n },\n },\n {\n type: \"component\",\n name: radioMeta.name,\n props: {\n children: makeDefaultRadioChildren(\"Radio 3\"),\n value: \"radio3\",\n },\n },\n {\n type: \"component\",\n name: DESCRIPTION_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value:\n \"Use the registered variants to see it in action...\",\n },\n },\n },\n ],\n },\n ],\n },\n value: {\n type: \"choice\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The current value\",\n options: (_props, ctx) => (ctx?.values ? Array.from(ctx.values) : []),\n multiSelect: false,\n },\n isInvalid: {\n displayName: \"Invalid\",\n type: \"boolean\",\n description: \"Whether the input value is invalid\",\n defaultValueHint: false,\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 },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import 'react';
2
2
  import 'react-aria-components';
3
3
  import './common-616eb178.esm.js';
4
4
  import './contexts-5cb81c2f.esm.js';
5
- export { a as BaseSection, r as registerSection } from './registerListBox-21dc99fa.esm.js';
5
+ export { B as BaseSection, r as registerSection } from './registerListBox-0f6ebcf0.esm.js';
6
6
  import './utils-fd88ad47.esm.js';
7
7
  import './OptionsItemIdManager-832b8cfe.esm.js';
8
8
  import './registerListBoxItem.esm.js';
@@ -1 +1 @@
1
- {"version":3,"file":"registerSelect.cjs.js","sources":["../src/registerSelect.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from \"react\";\nimport {\n Select,\n SelectProps,\n SelectRenderProps,\n SelectStateContext,\n SelectValue,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, arrowDown, getCommonProps } from \"./common\";\nimport {\n PlasmicListBoxContext,\n PlasmicPopoverTriggerContext,\n} from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { LIST_BOX_COMPONENT_NAME } from \"./registerListBox\";\nimport { POPOVER_COMPONENT_NAME } from \"./registerPopover\";\nimport {\n HasControlContextData,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n extractPlasmicDataProps,\n makeComponentName,\n registerComponentHelper,\n useAutoOpen,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\n// It cannot be used as a hook like useAutoOpen() within the BaseSelect component\n// because it needs access to SelectStateContext, which is only created in the BaseSelect component's render function.\nfunction SelectAutoOpen(props: any) {\n const { open, close } = React.useContext(SelectStateContext) ?? {};\n useAutoOpen({\n props,\n open: () => {\n open?.();\n // using settimeout because the focus is not immediately available\n setTimeout(() => {\n /*\n When the select's popover is opened in the canvas, the listbox gains focus, trapping the keyboard focus within it. Pressing the up or down arrow keys navigates through the listbox items.\n However, there are three issues with this behavior:\n\n 1. Focus should not be triggered in canvas (non-interactive mode)\n 2. Canvas (non-interactive mode) should remain non-interactive: Navigation between listbox items or selection using the space key should not be possible.\n 3. Keyboard hotkeys (e.g., backspace, undo) stop working: Key presses are absorbed by the listbox, breaking the expected behavior for shortcuts like backspace or undo (reference).\n\n To resolve this, we need to call document.activeElement.blur() to remove focus from the listbox.\n\n However, since the select component is a code component embedded within the artboard iframe, the keyboard hotkeys (e.g., backspace, undo) will not work,\n because they only function in the parent iframe (__wab_studio-frame).\n To ensure hotkeys work properly, we need to shift focus from the active element in the child iframe (artboard iframe) to the parent iframe (__wab_studio-frame) by using window.parent.\n */\n (window.parent.document.activeElement as HTMLElement)?.blur?.();\n }, 1);\n },\n close,\n });\n\n return null;\n}\n\nexport interface BaseSelectValueProps\n extends React.ComponentProps<typeof SelectValue> {\n children: React.ReactNode;\n}\n\nexport const BaseSelectValue = (props: BaseSelectValueProps) => {\n const { children: placeholder, className } = props;\n return (\n <SelectValue className={className} style={COMMON_STYLES}>\n {({ isPlaceholder, selectedText }) => (\n <>{isPlaceholder ? placeholder : selectedText}</>\n )}\n </SelectValue>\n );\n};\n\nconst SELECT_NAME = makeComponentName(\"select\");\n\nexport interface BaseSelectControlContextData {\n itemIds: string[];\n}\n\nconst SELECT_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants: SELECT_VARIANTS_DATA } =\n pickAriaComponentVariants(SELECT_VARIANTS);\n\nexport interface BaseSelectProps\n 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\n WithVariants<typeof SELECT_VARIANTS>,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData<BaseSelectControlContextData> {\n children?: React.ReactNode;\n className?: string;\n}\n\nexport function BaseSelect(props: BaseSelectProps) {\n const {\n selectedKey,\n onSelectionChange,\n onOpenChange,\n isDisabled,\n className,\n children,\n disabledKeys,\n name,\n setControlContextData,\n plasmicUpdateVariant,\n defaultSelectedKey,\n \"aria-label\": ariaLabel,\n } = props;\n\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n idManager.subscribe((ids: string[]) => {\n setControlContextData?.({\n itemIds: ids,\n });\n });\n }, []);\n\n const classNameProp = useCallback(\n ({\n isDisabled: isDisabled2,\n isFocusVisible,\n isFocused,\n }: SelectRenderProps) => {\n plasmicUpdateVariant?.({\n disabled: isDisabled2,\n focused: isFocused,\n focusVisible: isFocusVisible,\n });\n return className ?? \"\";\n },\n [className, plasmicUpdateVariant]\n );\n\n return (\n <Select\n defaultSelectedKey={defaultSelectedKey}\n selectedKey={selectedKey}\n onSelectionChange={onSelectionChange}\n onOpenChange={onOpenChange}\n isDisabled={isDisabled}\n className={classNameProp}\n style={COMMON_STYLES}\n name={name}\n disabledKeys={disabledKeys}\n aria-label={ariaLabel}\n {...extractPlasmicDataProps(props)}\n >\n <SelectAutoOpen {...props} />\n <PlasmicPopoverTriggerContext.Provider value={true}>\n <PlasmicListBoxContext.Provider\n value={{\n idManager,\n }}\n >\n {children}\n </PlasmicListBoxContext.Provider>\n </PlasmicPopoverTriggerContext.Provider>\n </Select>\n );\n}\n\nexport function registerSelect(loader?: Registerable) {\n const selectValueMeta = registerComponentHelper(loader, BaseSelectValue, {\n name: makeComponentName(\"select-value\"),\n displayName: \"Aria Selected Value\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelectValue\",\n parentComponentName: SELECT_NAME,\n props: {\n /** @deprecated use children (Placeholder) directly */\n customize: {\n type: \"boolean\",\n displayName: \"Customize placeholder\",\n defaultValue: true,\n description: \"Customize the placeholder text and styles\",\n /** Obsolete, but retained (permanently hidden) for backward compatibility. */\n hidden: () => true,\n },\n children: {\n type: \"slot\",\n displayName: \"Placeholder\",\n defaultValue: [\n {\n type: \"text\",\n value: \"Select an item\",\n },\n ],\n },\n },\n trapsFocus: true,\n });\n\n registerComponentHelper(loader, BaseSelect, {\n name: SELECT_NAME,\n displayName: \"Aria Select\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelect\",\n variants: SELECT_VARIANTS_DATA,\n props: {\n ...getCommonProps<BaseSelectProps>(\"Select\", [\n \"name\",\n \"aria-label\",\n \"isDisabled\",\n \"autoFocus\",\n ]),\n selectedKey: {\n type: \"choice\",\n editOnly: true,\n uncontrolledProp: \"defaultSelectedKey\",\n displayName: \"Initial selected item\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n // React Aria Select do not support multiple selections yet\n multiSelect: false,\n },\n onSelectionChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectedValue\", type: \"string\" }],\n },\n disabledKeys: {\n type: \"choice\",\n displayName: \"Disabled values\",\n description:\n \"The items that are disabled. These items cannot be selected, focused, or otherwise interacted with.\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n multiSelect: true,\n advanced: true,\n },\n isOpen: {\n type: \"boolean\",\n defaultValue: false,\n // It doesn't make sense to make isOpen prop editable (it's controlled by user interaction and always closed by default), so we keep this prop hidden. We have listed the prop here in the meta only so we can expose a writeable state for it.\n hidden: () => true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n width: \"300px\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n styles: {\n width: \"100%\",\n padding: \"4px 10px\",\n background: \"white\",\n },\n props: {\n children: {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: selectValueMeta.name,\n },\n arrowDown,\n ],\n },\n },\n },\n {\n type: \"component\",\n name: POPOVER_COMPONENT_NAME,\n styles: {\n backgroundColor: \"white\",\n padding: \"10px\",\n overflow: \"scroll\",\n width: \"unset\",\n },\n props: {\n children: [\n {\n type: \"component\",\n name: LIST_BOX_COMPONENT_NAME,\n props: {\n selectionMode: \"single\",\n },\n styles: {\n borderWidth: 0,\n width: \"stretch\",\n },\n },\n ],\n },\n },\n ],\n },\n ],\n },\n },\n states: {\n selectedValue: {\n type: \"writable\",\n valueProp: \"selectedKey\",\n onChangeProp: \"onSelectionChange\",\n variableType: \"text\",\n },\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n });\n}\n"],"names":["SelectStateContext","useAutoOpen","_a","React","SelectValue","COMMON_STYLES","makeComponentName","pickAriaComponentVariants","useMemo","OptionsItemIdManager","useEffect","useCallback","Select","extractPlasmicDataProps","PlasmicPopoverTriggerContext","PlasmicListBoxContext","registerComponentHelper","getCommonProps","LABEL_COMPONENT_NAME","BUTTON_COMPONENT_NAME","arrowDown","POPOVER_COMPONENT_NAME","LIST_BOX_COMPONENT_NAME"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAS,eAAe,KAAY,EAAA;AA/BpC,EAAA,IAAA,EAAA,CAAA;AAgCE,EAAM,MAAA,EAAE,MAAM,KAAM,EAAA,GAAA,CAAI,4BAAM,UAAW,CAAAA,sCAAkB,CAAnC,KAAA,IAAA,GAAA,EAAA,GAAwC,EAAC,CAAA;AACjE,EAAYC,iBAAA,CAAA;AAAA,IACV,KAAA;AAAA,IACA,MAAM,MAAM;AACV,MAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CAAA;AAEA,MAAA,UAAA,CAAW,MAAM;AAtCvB,QAAA,IAAAC,GAAA,EAAA,EAAA,CAAA;AAqDQ,QAAC,CAAA,EAAA,GAAA,CAAAA,MAAA,MAAO,CAAA,MAAA,CAAO,SAAS,aAAvB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,GAAsD,CAAA,IAAA,KAAtD,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAAA,SACA,CAAC,CAAA,CAAA;AAAA,KACN;AAAA,IACA,KAAA;AAAA,GACD,CAAA,CAAA;AAED,EAAO,OAAA,IAAA,CAAA;AACT,CAAA;AAOa,MAAA,eAAA,GAAkB,CAAC,KAAgC,KAAA;AAC9D,EAAA,MAAM,EAAE,QAAA,EAAU,WAAa,EAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AAC7C,EAAA,uBACGC,sBAAA,CAAA,aAAA,CAAAC,+BAAA,EAAA,EAAY,SAAsB,EAAA,KAAA,EAAOC,wBACvC,CAAC,EAAE,aAAe,EAAA,YAAA,EACjB,qBAAAF,sBAAA,CAAA,aAAA,CAAAA,sBAAA,CAAA,QAAA,EAAA,IAAA,EAAG,aAAgB,GAAA,WAAA,GAAc,YAAa,CAElD,CAAA,CAAA;AAEJ,EAAA;AAEA,MAAM,WAAA,GAAcG,wBAAkB,QAAQ,CAAA,CAAA;AAM9C,MAAM,eAAkB,GAAA;AAAA,EACtB,SAAA;AAAA,EACA,cAAA;AAAA,EACA,UAAA;AACF,CAAA,CAAA;AAEA,MAAM,EAAE,QAAA,EAAU,oBAAqB,EAAA,GACrCC,uCAA0B,eAAe,CAAA,CAAA;AAWpC,SAAS,WAAW,KAAwB,EAAA;AACjD,EAAM,MAAA;AAAA,IACJ,WAAA;AAAA,IACA,iBAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA;AAAA,IACA,QAAA;AAAA,IACA,YAAA;AAAA,IACA,IAAA;AAAA,IACA,qBAAA;AAAA,IACA,oBAAA;AAAA,IACA,kBAAA;AAAA,IACA,YAAc,EAAA,SAAA;AAAA,GACZ,GAAA,KAAA,CAAA;AAEJ,EAAA,MAAM,YAAYC,aAAQ,CAAA,MAAM,IAAIC,yCAAqB,EAAA,EAAG,EAAE,CAAA,CAAA;AAE9D,EAAAC,eAAA,CAAU,MAAM;AACd,IAAU,SAAA,CAAA,SAAA,CAAU,CAAC,GAAkB,KAAA;AACrC,MAAwB,qBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAAA;AAAA,QACtB,OAAS,EAAA,GAAA;AAAA,OACX,CAAA,CAAA;AAAA,KACD,CAAA,CAAA;AAAA,GACH,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,MAAM,aAAgB,GAAAC,iBAAA;AAAA,IACpB,CAAC;AAAA,MACC,UAAY,EAAA,WAAA;AAAA,MACZ,cAAA;AAAA,MACA,SAAA;AAAA,KACuB,KAAA;AACvB,MAAuB,oBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAA;AAAA,QACrB,QAAU,EAAA,WAAA;AAAA,QACV,OAAS,EAAA,SAAA;AAAA,QACT,YAAc,EAAA,cAAA;AAAA,OAChB,CAAA,CAAA;AACA,MAAA,OAAO,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAA;AAAA,KACtB;AAAA,IACA,CAAC,WAAW,oBAAoB,CAAA;AAAA,GAClC,CAAA;AAEA,EACE,uBAAAR,sBAAA,CAAA,aAAA;AAAA,IAACS,0BAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,kBAAA;AAAA,MACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,YAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAW,EAAA,aAAA;AAAA,MACX,KAAO,EAAAP,oBAAA;AAAA,MACP,IAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAY,EAAA,SAAA;AAAA,KAAA,EACRQ,8BAAwB,KAAK,CAAA,CAAA;AAAA,oBAEjCV,sBAAA,CAAA,aAAA,CAAC,mCAAmB,KAAO,CAAA,CAAA;AAAA,oBAC1BA,sBAAA,CAAA,aAAA,CAAAW,qCAAA,CAA6B,QAA7B,EAAA,EAAsC,OAAO,IAC5C,EAAA,kBAAAX,sBAAA,CAAA,aAAA;AAAA,MAACY,8BAAsB,CAAA,QAAA;AAAA,MAAtB;AAAA,QACC,KAAO,EAAA;AAAA,UACL,SAAA;AAAA,SACF;AAAA,OAAA;AAAA,MAEC,QAAA;AAAA,KAEL,CAAA;AAAA,GACF,CAAA;AAEJ,CAAA;AAEO,SAAS,eAAe,MAAuB,EAAA;AACpD,EAAM,MAAA,eAAA,GAAkBC,6BAAwB,CAAA,MAAA,EAAQ,eAAiB,EAAA;AAAA,IACvE,IAAA,EAAMV,wBAAkB,cAAc,CAAA;AAAA,IACtC,WAAa,EAAA,qBAAA;AAAA,IACb,UAAY,EAAA,+CAAA;AAAA,IACZ,UAAY,EAAA,iBAAA;AAAA,IACZ,mBAAqB,EAAA,WAAA;AAAA,IACrB,KAAO,EAAA;AAAA;AAAA,MAEL,SAAW,EAAA;AAAA,QACT,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,uBAAA;AAAA,QACb,YAAc,EAAA,IAAA;AAAA,QACd,WAAa,EAAA,2CAAA;AAAA;AAAA,QAEb,QAAQ,MAAM,IAAA;AAAA,OAChB;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,WAAa,EAAA,aAAA;AAAA,QACb,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,MAAA;AAAA,YACN,KAAO,EAAA,gBAAA;AAAA,WACT;AAAA,SACF;AAAA,OACF;AAAA,KACF;AAAA,IACA,UAAY,EAAA,IAAA;AAAA,GACb,CAAA,CAAA;AAED,EAAAU,6BAAA,CAAwB,QAAQ,UAAY,EAAA;AAAA,IAC1C,IAAM,EAAA,WAAA;AAAA,IACN,WAAa,EAAA,aAAA;AAAA,IACb,UAAY,EAAA,+CAAA;AAAA,IACZ,UAAY,EAAA,YAAA;AAAA,IACZ,QAAU,EAAA,oBAAA;AAAA,IACV,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,EAAA,EAAAC,qBAAA,CAAgC,QAAU,EAAA;AAAA,MAC3C,MAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,KACD,CANI,CAAA,EAAA;AAAA,MAOL,WAAa,EAAA;AAAA,QACX,IAAM,EAAA,QAAA;AAAA,QACN,QAAU,EAAA,IAAA;AAAA,QACV,gBAAkB,EAAA,oBAAA;AAAA,QAClB,WAAa,EAAA,uBAAA;AAAA,QACb,OAAA,EAAS,CAAC,MAAA,EAAQ,GAAS,KAAA,CAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,OAAU,IAAA,KAAA,CAAM,IAAK,CAAA,GAAA,CAAI,OAAO,CAAA,GAAI,EAAC;AAAA;AAAA,QAErE,WAAa,EAAA,KAAA;AAAA,OACf;AAAA,MACA,iBAAmB,EAAA;AAAA,QACjB,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,OACtD;AAAA,MACA,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,QAAA;AAAA,QACN,WAAa,EAAA,iBAAA;AAAA,QACb,WACE,EAAA,qGAAA;AAAA,QACF,OAAA,EAAS,CAAC,MAAA,EAAQ,GAAS,KAAA,CAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,OAAU,IAAA,KAAA,CAAM,IAAK,CAAA,GAAA,CAAI,OAAO,CAAA,GAAI,EAAC;AAAA,QACrE,WAAa,EAAA,IAAA;AAAA,QACb,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,SAAA;AAAA,QACN,YAAc,EAAA,KAAA;AAAA;AAAA,QAEd,QAAQ,MAAM,IAAA;AAAA,OAChB;AAAA,MACA,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,QAAU,EAAA,IAAA,EAAM,WAAW,CAAA;AAAA,OAChD;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,eAAiB,EAAA,IAAA;AAAA,QACjB,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,MAAA;AAAA,YACN,MAAQ,EAAA;AAAA,cACN,cAAgB,EAAA,YAAA;AAAA,cAChB,UAAY,EAAA,YAAA;AAAA,cACZ,KAAO,EAAA,OAAA;AAAA,cACP,OAAS,EAAA,CAAA;AAAA,aACX;AAAA,YACA,QAAU,EAAA;AAAA,cACR;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,kCAAA;AAAA,gBACN,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR,IAAM,EAAA,MAAA;AAAA,oBACN,KAAO,EAAA,OAAA;AAAA,mBACT;AAAA,iBACF;AAAA,eACF;AAAA,cACA;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,oCAAA;AAAA,gBACN,MAAQ,EAAA;AAAA,kBACN,KAAO,EAAA,MAAA;AAAA,kBACP,OAAS,EAAA,UAAA;AAAA,kBACT,UAAY,EAAA,OAAA;AAAA,iBACd;AAAA,gBACA,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR,IAAM,EAAA,MAAA;AAAA,oBACN,MAAQ,EAAA;AAAA,sBACN,KAAO,EAAA,SAAA;AAAA,sBACP,cAAgB,EAAA,eAAA;AAAA,sBAChB,UAAY,EAAA,QAAA;AAAA,sBACZ,OAAS,EAAA,CAAA;AAAA,qBACX;AAAA,oBACA,QAAU,EAAA;AAAA,sBACR;AAAA,wBACE,IAAM,EAAA,WAAA;AAAA,wBACN,MAAM,eAAgB,CAAA,IAAA;AAAA,uBACxB;AAAA,sBACAC,gBAAA;AAAA,qBACF;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,cACA;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,sCAAA;AAAA,gBACN,MAAQ,EAAA;AAAA,kBACN,eAAiB,EAAA,OAAA;AAAA,kBACjB,OAAS,EAAA,MAAA;AAAA,kBACT,QAAU,EAAA,QAAA;AAAA,kBACV,KAAO,EAAA,OAAA;AAAA,iBACT;AAAA,gBACA,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR;AAAA,sBACE,IAAM,EAAA,WAAA;AAAA,sBACN,IAAM,EAAAC,uCAAA;AAAA,sBACN,KAAO,EAAA;AAAA,wBACL,aAAe,EAAA,QAAA;AAAA,uBACjB;AAAA,sBACA,MAAQ,EAAA;AAAA,wBACN,WAAa,EAAA,CAAA;AAAA,wBACb,KAAO,EAAA,SAAA;AAAA,uBACT;AAAA,qBACF;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,aACF;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,KACF,CAAA;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,aAAe,EAAA;AAAA,QACb,IAAM,EAAA,UAAA;AAAA,QACN,SAAW,EAAA,aAAA;AAAA,QACX,YAAc,EAAA,mBAAA;AAAA,QACd,YAAc,EAAA,MAAA;AAAA,OAChB;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,UAAA;AAAA,QACN,SAAW,EAAA,QAAA;AAAA,QACX,YAAc,EAAA,cAAA;AAAA,QACd,YAAc,EAAA,SAAA;AAAA,OAChB;AAAA,KACF;AAAA,IACA,UAAY,EAAA,IAAA;AAAA,GACb,CAAA,CAAA;AACH;;;;;;"}
1
+ {"version":3,"file":"registerSelect.cjs.js","sources":["../src/registerSelect.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from \"react\";\nimport {\n Select,\n SelectProps,\n SelectRenderProps,\n SelectStateContext,\n SelectValue,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, arrowDown, getCommonProps } from \"./common\";\nimport {\n PlasmicListBoxContext,\n PlasmicPopoverTriggerContext,\n} from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { LIST_BOX_COMPONENT_NAME } from \"./registerListBox\";\nimport { POPOVER_COMPONENT_NAME } from \"./registerPopover\";\nimport {\n HasControlContextData,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n extractPlasmicDataProps,\n makeComponentName,\n registerComponentHelper,\n useAutoOpen,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\n// It cannot be used as a hook like useAutoOpen() within the BaseSelect component\n// because it needs access to SelectStateContext, which is only created in the BaseSelect component's render function.\nfunction SelectAutoOpen(props: any) {\n const { open, close } = React.useContext(SelectStateContext) ?? {};\n useAutoOpen({\n props,\n open: () => {\n open?.();\n // using settimeout because the focus is not immediately available\n setTimeout(() => {\n /*\n When the select's popover is opened in the canvas, the listbox gains focus, trapping the keyboard focus within it. Pressing the up or down arrow keys navigates through the listbox items.\n However, there are three issues with this behavior:\n\n 1. Focus should not be triggered in canvas (non-interactive mode)\n 2. Canvas (non-interactive mode) should remain non-interactive: Navigation between listbox items or selection using the space key should not be possible.\n 3. Keyboard hotkeys (e.g., backspace, undo) stop working: Key presses are absorbed by the listbox, breaking the expected behavior for shortcuts like backspace or undo (reference).\n\n To resolve this, we need to call document.activeElement.blur() to remove focus from the listbox.\n\n However, since the select component is a code component embedded within the artboard iframe, the keyboard hotkeys (e.g., backspace, undo) will not work,\n because they only function in the parent iframe (__wab_studio-frame).\n To ensure hotkeys work properly, we need to shift focus from the active element in the child iframe (artboard iframe) to the parent iframe (__wab_studio-frame) by using window.parent.\n */\n (window.parent.document.activeElement as HTMLElement)?.blur?.();\n }, 1);\n },\n close,\n });\n\n return null;\n}\n\nexport interface BaseSelectValueProps\n extends React.ComponentProps<typeof SelectValue> {\n children: React.ReactNode;\n}\n\nexport const BaseSelectValue = (props: BaseSelectValueProps) => {\n const { children: placeholder, className } = props;\n return (\n <SelectValue className={className} style={COMMON_STYLES}>\n {({ isPlaceholder, selectedText }) => (\n <>{isPlaceholder ? placeholder : selectedText}</>\n )}\n </SelectValue>\n );\n};\n\nconst SELECT_NAME = makeComponentName(\"select\");\n\nexport interface BaseSelectControlContextData {\n itemIds: string[];\n}\n\nconst SELECT_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants: SELECT_VARIANTS_DATA } =\n pickAriaComponentVariants(SELECT_VARIANTS);\n\nexport interface BaseSelectProps\n 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\n WithVariants<typeof SELECT_VARIANTS>,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData<BaseSelectControlContextData> {\n children?: React.ReactNode;\n className?: string;\n}\n\nexport function BaseSelect(props: BaseSelectProps) {\n const {\n selectedKey,\n onSelectionChange,\n onOpenChange,\n isDisabled,\n className,\n children,\n disabledKeys,\n name,\n setControlContextData,\n plasmicUpdateVariant,\n defaultSelectedKey,\n \"aria-label\": ariaLabel,\n } = props;\n\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n idManager.subscribe((ids: string[]) => {\n setControlContextData?.({\n itemIds: ids,\n });\n });\n }, []);\n\n const classNameProp = useCallback(\n ({\n isDisabled: isDisabled2,\n isFocusVisible,\n isFocused,\n }: SelectRenderProps) => {\n plasmicUpdateVariant?.({\n disabled: isDisabled2,\n focused: isFocused,\n focusVisible: isFocusVisible,\n });\n return className ?? \"\";\n },\n [className, plasmicUpdateVariant]\n );\n\n return (\n <Select\n defaultSelectedKey={defaultSelectedKey}\n selectedKey={selectedKey}\n onSelectionChange={onSelectionChange}\n onOpenChange={onOpenChange}\n isDisabled={isDisabled}\n className={classNameProp}\n style={COMMON_STYLES}\n name={name}\n disabledKeys={disabledKeys}\n aria-label={ariaLabel}\n {...extractPlasmicDataProps(props)}\n >\n <SelectAutoOpen {...props} />\n {/* PlasmicPopoverTriggerContext is used by BasePopover */}\n <PlasmicPopoverTriggerContext.Provider value={true}>\n {/* PlasmicListBoxContext is used by\n - BaseListBox\n - BaseListBoxItem\n - BaseSection\n */}\n <PlasmicListBoxContext.Provider\n value={{\n idManager,\n }}\n >\n {children}\n </PlasmicListBoxContext.Provider>\n </PlasmicPopoverTriggerContext.Provider>\n </Select>\n );\n}\n\nexport function registerSelect(loader?: Registerable) {\n const selectValueMeta = registerComponentHelper(loader, BaseSelectValue, {\n name: makeComponentName(\"select-value\"),\n displayName: \"Aria Selected Value\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelectValue\",\n parentComponentName: SELECT_NAME,\n props: {\n /** @deprecated use children (Placeholder) directly */\n customize: {\n type: \"boolean\",\n displayName: \"Customize placeholder\",\n defaultValue: true,\n description: \"Customize the placeholder text and styles\",\n /** Obsolete, but retained (permanently hidden) for backward compatibility. */\n hidden: () => true,\n },\n children: {\n type: \"slot\",\n displayName: \"Placeholder\",\n defaultValue: [\n {\n type: \"text\",\n value: \"Select an item\",\n },\n ],\n },\n },\n trapsFocus: true,\n });\n\n registerComponentHelper(loader, BaseSelect, {\n name: SELECT_NAME,\n displayName: \"Aria Select\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelect\",\n variants: SELECT_VARIANTS_DATA,\n props: {\n ...getCommonProps<BaseSelectProps>(\"Select\", [\n \"name\",\n \"aria-label\",\n \"isDisabled\",\n \"autoFocus\",\n ]),\n selectedKey: {\n type: \"choice\",\n editOnly: true,\n uncontrolledProp: \"defaultSelectedKey\",\n displayName: \"Initial selected item\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n // React Aria Select do not support multiple selections yet\n multiSelect: false,\n },\n onSelectionChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectedValue\", type: \"string\" }],\n },\n disabledKeys: {\n type: \"choice\",\n displayName: \"Disabled values\",\n description:\n \"The items that are disabled. These items cannot be selected, focused, or otherwise interacted with.\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n multiSelect: true,\n advanced: true,\n },\n isOpen: {\n type: \"boolean\",\n defaultValue: false,\n // It doesn't make sense to make isOpen prop editable (it's controlled by user interaction and always closed by default), so we keep this prop hidden. We have listed the prop here in the meta only so we can expose a writeable state for it.\n hidden: () => true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n width: \"300px\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n styles: {\n width: \"100%\",\n padding: \"4px 10px\",\n background: \"white\",\n },\n props: {\n children: {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: selectValueMeta.name,\n },\n arrowDown,\n ],\n },\n },\n },\n {\n type: \"component\",\n name: POPOVER_COMPONENT_NAME,\n styles: {\n backgroundColor: \"white\",\n padding: \"10px\",\n overflow: \"scroll\",\n width: \"unset\",\n },\n props: {\n children: [\n {\n type: \"component\",\n name: LIST_BOX_COMPONENT_NAME,\n props: {\n selectionMode: \"single\",\n },\n styles: {\n borderWidth: 0,\n width: \"stretch\",\n },\n },\n ],\n },\n },\n ],\n },\n ],\n },\n },\n states: {\n selectedValue: {\n type: \"writable\",\n valueProp: \"selectedKey\",\n onChangeProp: \"onSelectionChange\",\n variableType: \"text\",\n },\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n });\n}\n"],"names":["SelectStateContext","useAutoOpen","_a","React","SelectValue","COMMON_STYLES","makeComponentName","pickAriaComponentVariants","useMemo","OptionsItemIdManager","useEffect","useCallback","Select","extractPlasmicDataProps","PlasmicPopoverTriggerContext","PlasmicListBoxContext","registerComponentHelper","getCommonProps","LABEL_COMPONENT_NAME","BUTTON_COMPONENT_NAME","arrowDown","POPOVER_COMPONENT_NAME","LIST_BOX_COMPONENT_NAME"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAS,eAAe,KAAY,EAAA;AA/BpC,EAAA,IAAA,EAAA,CAAA;AAgCE,EAAM,MAAA,EAAE,MAAM,KAAM,EAAA,GAAA,CAAI,4BAAM,UAAW,CAAAA,sCAAkB,CAAnC,KAAA,IAAA,GAAA,EAAA,GAAwC,EAAC,CAAA;AACjE,EAAYC,iBAAA,CAAA;AAAA,IACV,KAAA;AAAA,IACA,MAAM,MAAM;AACV,MAAA,IAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CAAA;AAEA,MAAA,UAAA,CAAW,MAAM;AAtCvB,QAAA,IAAAC,GAAA,EAAA,EAAA,CAAA;AAqDQ,QAAC,CAAA,EAAA,GAAA,CAAAA,MAAA,MAAO,CAAA,MAAA,CAAO,SAAS,aAAvB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,GAAsD,CAAA,IAAA,KAAtD,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,GAAAA,CAAAA,CAAAA;AAAA,SACA,CAAC,CAAA,CAAA;AAAA,KACN;AAAA,IACA,KAAA;AAAA,GACD,CAAA,CAAA;AAED,EAAO,OAAA,IAAA,CAAA;AACT,CAAA;AAOa,MAAA,eAAA,GAAkB,CAAC,KAAgC,KAAA;AAC9D,EAAA,MAAM,EAAE,QAAA,EAAU,WAAa,EAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AAC7C,EAAA,uBACGC,sBAAA,CAAA,aAAA,CAAAC,+BAAA,EAAA,EAAY,SAAsB,EAAA,KAAA,EAAOC,wBACvC,CAAC,EAAE,aAAe,EAAA,YAAA,EACjB,qBAAAF,sBAAA,CAAA,aAAA,CAAAA,sBAAA,CAAA,QAAA,EAAA,IAAA,EAAG,aAAgB,GAAA,WAAA,GAAc,YAAa,CAElD,CAAA,CAAA;AAEJ,EAAA;AAEA,MAAM,WAAA,GAAcG,wBAAkB,QAAQ,CAAA,CAAA;AAM9C,MAAM,eAAkB,GAAA;AAAA,EACtB,SAAA;AAAA,EACA,cAAA;AAAA,EACA,UAAA;AACF,CAAA,CAAA;AAEA,MAAM,EAAE,QAAA,EAAU,oBAAqB,EAAA,GACrCC,uCAA0B,eAAe,CAAA,CAAA;AAWpC,SAAS,WAAW,KAAwB,EAAA;AACjD,EAAM,MAAA;AAAA,IACJ,WAAA;AAAA,IACA,iBAAA;AAAA,IACA,YAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA;AAAA,IACA,QAAA;AAAA,IACA,YAAA;AAAA,IACA,IAAA;AAAA,IACA,qBAAA;AAAA,IACA,oBAAA;AAAA,IACA,kBAAA;AAAA,IACA,YAAc,EAAA,SAAA;AAAA,GACZ,GAAA,KAAA,CAAA;AAEJ,EAAA,MAAM,YAAYC,aAAQ,CAAA,MAAM,IAAIC,yCAAqB,EAAA,EAAG,EAAE,CAAA,CAAA;AAE9D,EAAAC,eAAA,CAAU,MAAM;AACd,IAAU,SAAA,CAAA,SAAA,CAAU,CAAC,GAAkB,KAAA;AACrC,MAAwB,qBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAAA;AAAA,QACtB,OAAS,EAAA,GAAA;AAAA,OACX,CAAA,CAAA;AAAA,KACD,CAAA,CAAA;AAAA,GACH,EAAG,EAAE,CAAA,CAAA;AAEL,EAAA,MAAM,aAAgB,GAAAC,iBAAA;AAAA,IACpB,CAAC;AAAA,MACC,UAAY,EAAA,WAAA;AAAA,MACZ,cAAA;AAAA,MACA,SAAA;AAAA,KACuB,KAAA;AACvB,MAAuB,oBAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAA;AAAA,QACrB,QAAU,EAAA,WAAA;AAAA,QACV,OAAS,EAAA,SAAA;AAAA,QACT,YAAc,EAAA,cAAA;AAAA,OAChB,CAAA,CAAA;AACA,MAAA,OAAO,SAAa,IAAA,IAAA,GAAA,SAAA,GAAA,EAAA,CAAA;AAAA,KACtB;AAAA,IACA,CAAC,WAAW,oBAAoB,CAAA;AAAA,GAClC,CAAA;AAEA,EACE,uBAAAR,sBAAA,CAAA,aAAA;AAAA,IAACS,0BAAA;AAAA,IAAA,cAAA,CAAA;AAAA,MACC,kBAAA;AAAA,MACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,YAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAW,EAAA,aAAA;AAAA,MACX,KAAO,EAAAP,oBAAA;AAAA,MACP,IAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAY,EAAA,SAAA;AAAA,KAAA,EACRQ,8BAAwB,KAAK,CAAA,CAAA;AAAA,oBAEjCV,sBAAA,CAAA,aAAA,CAAC,mCAAmB,KAAO,CAAA,CAAA;AAAA,oBAE1BA,sBAAA,CAAA,aAAA,CAAAW,qCAAA,CAA6B,QAA7B,EAAA,EAAsC,OAAO,IAM5C,EAAA,kBAAAX,sBAAA,CAAA,aAAA;AAAA,MAACY,8BAAsB,CAAA,QAAA;AAAA,MAAtB;AAAA,QACC,KAAO,EAAA;AAAA,UACL,SAAA;AAAA,SACF;AAAA,OAAA;AAAA,MAEC,QAAA;AAAA,KAEL,CAAA;AAAA,GACF,CAAA;AAEJ,CAAA;AAEO,SAAS,eAAe,MAAuB,EAAA;AACpD,EAAM,MAAA,eAAA,GAAkBC,6BAAwB,CAAA,MAAA,EAAQ,eAAiB,EAAA;AAAA,IACvE,IAAA,EAAMV,wBAAkB,cAAc,CAAA;AAAA,IACtC,WAAa,EAAA,qBAAA;AAAA,IACb,UAAY,EAAA,+CAAA;AAAA,IACZ,UAAY,EAAA,iBAAA;AAAA,IACZ,mBAAqB,EAAA,WAAA;AAAA,IACrB,KAAO,EAAA;AAAA;AAAA,MAEL,SAAW,EAAA;AAAA,QACT,IAAM,EAAA,SAAA;AAAA,QACN,WAAa,EAAA,uBAAA;AAAA,QACb,YAAc,EAAA,IAAA;AAAA,QACd,WAAa,EAAA,2CAAA;AAAA;AAAA,QAEb,QAAQ,MAAM,IAAA;AAAA,OAChB;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,WAAa,EAAA,aAAA;AAAA,QACb,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,MAAA;AAAA,YACN,KAAO,EAAA,gBAAA;AAAA,WACT;AAAA,SACF;AAAA,OACF;AAAA,KACF;AAAA,IACA,UAAY,EAAA,IAAA;AAAA,GACb,CAAA,CAAA;AAED,EAAAU,6BAAA,CAAwB,QAAQ,UAAY,EAAA;AAAA,IAC1C,IAAM,EAAA,WAAA;AAAA,IACN,WAAa,EAAA,aAAA;AAAA,IACb,UAAY,EAAA,+CAAA;AAAA,IACZ,UAAY,EAAA,YAAA;AAAA,IACZ,QAAU,EAAA,oBAAA;AAAA,IACV,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,EAAA,EAAAC,qBAAA,CAAgC,QAAU,EAAA;AAAA,MAC3C,MAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,KACD,CANI,CAAA,EAAA;AAAA,MAOL,WAAa,EAAA;AAAA,QACX,IAAM,EAAA,QAAA;AAAA,QACN,QAAU,EAAA,IAAA;AAAA,QACV,gBAAkB,EAAA,oBAAA;AAAA,QAClB,WAAa,EAAA,uBAAA;AAAA,QACb,OAAA,EAAS,CAAC,MAAA,EAAQ,GAAS,KAAA,CAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,OAAU,IAAA,KAAA,CAAM,IAAK,CAAA,GAAA,CAAI,OAAO,CAAA,GAAI,EAAC;AAAA;AAAA,QAErE,WAAa,EAAA,KAAA;AAAA,OACf;AAAA,MACA,iBAAmB,EAAA;AAAA,QACjB,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,eAAiB,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,OACtD;AAAA,MACA,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,QAAA;AAAA,QACN,WAAa,EAAA,iBAAA;AAAA,QACb,WACE,EAAA,qGAAA;AAAA,QACF,OAAA,EAAS,CAAC,MAAA,EAAQ,GAAS,KAAA,CAAA,GAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAK,OAAU,IAAA,KAAA,CAAM,IAAK,CAAA,GAAA,CAAI,OAAO,CAAA,GAAI,EAAC;AAAA,QACrE,WAAa,EAAA,IAAA;AAAA,QACb,QAAU,EAAA,IAAA;AAAA,OACZ;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,SAAA;AAAA,QACN,YAAc,EAAA,KAAA;AAAA;AAAA,QAEd,QAAQ,MAAM,IAAA;AAAA,OAChB;AAAA,MACA,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,cAAA;AAAA,QACN,UAAU,CAAC,EAAE,MAAM,QAAU,EAAA,IAAA,EAAM,WAAW,CAAA;AAAA,OAChD;AAAA,MACA,QAAU,EAAA;AAAA,QACR,IAAM,EAAA,MAAA;AAAA,QACN,eAAiB,EAAA,IAAA;AAAA,QACjB,YAAc,EAAA;AAAA,UACZ;AAAA,YACE,IAAM,EAAA,MAAA;AAAA,YACN,MAAQ,EAAA;AAAA,cACN,cAAgB,EAAA,YAAA;AAAA,cAChB,UAAY,EAAA,YAAA;AAAA,cACZ,KAAO,EAAA,OAAA;AAAA,cACP,OAAS,EAAA,CAAA;AAAA,aACX;AAAA,YACA,QAAU,EAAA;AAAA,cACR;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,kCAAA;AAAA,gBACN,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR,IAAM,EAAA,MAAA;AAAA,oBACN,KAAO,EAAA,OAAA;AAAA,mBACT;AAAA,iBACF;AAAA,eACF;AAAA,cACA;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,oCAAA;AAAA,gBACN,MAAQ,EAAA;AAAA,kBACN,KAAO,EAAA,MAAA;AAAA,kBACP,OAAS,EAAA,UAAA;AAAA,kBACT,UAAY,EAAA,OAAA;AAAA,iBACd;AAAA,gBACA,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR,IAAM,EAAA,MAAA;AAAA,oBACN,MAAQ,EAAA;AAAA,sBACN,KAAO,EAAA,SAAA;AAAA,sBACP,cAAgB,EAAA,eAAA;AAAA,sBAChB,UAAY,EAAA,QAAA;AAAA,sBACZ,OAAS,EAAA,CAAA;AAAA,qBACX;AAAA,oBACA,QAAU,EAAA;AAAA,sBACR;AAAA,wBACE,IAAM,EAAA,WAAA;AAAA,wBACN,MAAM,eAAgB,CAAA,IAAA;AAAA,uBACxB;AAAA,sBACAC,gBAAA;AAAA,qBACF;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,cACA;AAAA,gBACE,IAAM,EAAA,WAAA;AAAA,gBACN,IAAM,EAAAC,sCAAA;AAAA,gBACN,MAAQ,EAAA;AAAA,kBACN,eAAiB,EAAA,OAAA;AAAA,kBACjB,OAAS,EAAA,MAAA;AAAA,kBACT,QAAU,EAAA,QAAA;AAAA,kBACV,KAAO,EAAA,OAAA;AAAA,iBACT;AAAA,gBACA,KAAO,EAAA;AAAA,kBACL,QAAU,EAAA;AAAA,oBACR;AAAA,sBACE,IAAM,EAAA,WAAA;AAAA,sBACN,IAAM,EAAAC,uCAAA;AAAA,sBACN,KAAO,EAAA;AAAA,wBACL,aAAe,EAAA,QAAA;AAAA,uBACjB;AAAA,sBACA,MAAQ,EAAA;AAAA,wBACN,WAAa,EAAA,CAAA;AAAA,wBACb,KAAO,EAAA,SAAA;AAAA,uBACT;AAAA,qBACF;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,aACF;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,KACF,CAAA;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,aAAe,EAAA;AAAA,QACb,IAAM,EAAA,UAAA;AAAA,QACN,SAAW,EAAA,aAAA;AAAA,QACX,YAAc,EAAA,mBAAA;AAAA,QACd,YAAc,EAAA,MAAA;AAAA,OAChB;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,IAAM,EAAA,UAAA;AAAA,QACN,SAAW,EAAA,QAAA;AAAA,QACX,YAAc,EAAA,cAAA;AAAA,QACd,YAAc,EAAA,SAAA;AAAA,OAChB;AAAA,KACF;AAAA,IACA,UAAY,EAAA,IAAA;AAAA,GACb,CAAA,CAAA;AACH;;;;;;"}
@@ -5,7 +5,7 @@ import { a as PlasmicPopoverTriggerContext, b as PlasmicListBoxContext } from '.
5
5
  import { O as OptionsItemIdManager } from './OptionsItemIdManager-832b8cfe.esm.js';
6
6
  import { BUTTON_COMPONENT_NAME } from './registerButton.esm.js';
7
7
  import { LABEL_COMPONENT_NAME } from './registerLabel.esm.js';
8
- import { L as LIST_BOX_COMPONENT_NAME } from './registerListBox-21dc99fa.esm.js';
8
+ import { L as LIST_BOX_COMPONENT_NAME } from './registerListBox-0f6ebcf0.esm.js';
9
9
  import { POPOVER_COMPONENT_NAME } from './registerPopover.esm.js';
10
10
  import { e as extractPlasmicDataProps, r as registerComponentHelper, u as useAutoOpen, m as makeComponentName } from './utils-fd88ad47.esm.js';
11
11
  import { p as pickAriaComponentVariants } from './variant-utils-4405ebb0.esm.js';
@@ -1 +1 @@
1
- {"version":3,"file":"registerSelect.esm.js","sources":["../src/registerSelect.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from \"react\";\nimport {\n Select,\n SelectProps,\n SelectRenderProps,\n SelectStateContext,\n SelectValue,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, arrowDown, getCommonProps } from \"./common\";\nimport {\n PlasmicListBoxContext,\n PlasmicPopoverTriggerContext,\n} from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { LIST_BOX_COMPONENT_NAME } from \"./registerListBox\";\nimport { POPOVER_COMPONENT_NAME } from \"./registerPopover\";\nimport {\n HasControlContextData,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n extractPlasmicDataProps,\n makeComponentName,\n registerComponentHelper,\n useAutoOpen,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\n// It cannot be used as a hook like useAutoOpen() within the BaseSelect component\n// because it needs access to SelectStateContext, which is only created in the BaseSelect component's render function.\nfunction SelectAutoOpen(props: any) {\n const { open, close } = React.useContext(SelectStateContext) ?? {};\n useAutoOpen({\n props,\n open: () => {\n open?.();\n // using settimeout because the focus is not immediately available\n setTimeout(() => {\n /*\n When the select's popover is opened in the canvas, the listbox gains focus, trapping the keyboard focus within it. Pressing the up or down arrow keys navigates through the listbox items.\n However, there are three issues with this behavior:\n\n 1. Focus should not be triggered in canvas (non-interactive mode)\n 2. Canvas (non-interactive mode) should remain non-interactive: Navigation between listbox items or selection using the space key should not be possible.\n 3. Keyboard hotkeys (e.g., backspace, undo) stop working: Key presses are absorbed by the listbox, breaking the expected behavior for shortcuts like backspace or undo (reference).\n\n To resolve this, we need to call document.activeElement.blur() to remove focus from the listbox.\n\n However, since the select component is a code component embedded within the artboard iframe, the keyboard hotkeys (e.g., backspace, undo) will not work,\n because they only function in the parent iframe (__wab_studio-frame).\n To ensure hotkeys work properly, we need to shift focus from the active element in the child iframe (artboard iframe) to the parent iframe (__wab_studio-frame) by using window.parent.\n */\n (window.parent.document.activeElement as HTMLElement)?.blur?.();\n }, 1);\n },\n close,\n });\n\n return null;\n}\n\nexport interface BaseSelectValueProps\n extends React.ComponentProps<typeof SelectValue> {\n children: React.ReactNode;\n}\n\nexport const BaseSelectValue = (props: BaseSelectValueProps) => {\n const { children: placeholder, className } = props;\n return (\n <SelectValue className={className} style={COMMON_STYLES}>\n {({ isPlaceholder, selectedText }) => (\n <>{isPlaceholder ? placeholder : selectedText}</>\n )}\n </SelectValue>\n );\n};\n\nconst SELECT_NAME = makeComponentName(\"select\");\n\nexport interface BaseSelectControlContextData {\n itemIds: string[];\n}\n\nconst SELECT_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants: SELECT_VARIANTS_DATA } =\n pickAriaComponentVariants(SELECT_VARIANTS);\n\nexport interface BaseSelectProps\n 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\n WithVariants<typeof SELECT_VARIANTS>,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData<BaseSelectControlContextData> {\n children?: React.ReactNode;\n className?: string;\n}\n\nexport function BaseSelect(props: BaseSelectProps) {\n const {\n selectedKey,\n onSelectionChange,\n onOpenChange,\n isDisabled,\n className,\n children,\n disabledKeys,\n name,\n setControlContextData,\n plasmicUpdateVariant,\n defaultSelectedKey,\n \"aria-label\": ariaLabel,\n } = props;\n\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n idManager.subscribe((ids: string[]) => {\n setControlContextData?.({\n itemIds: ids,\n });\n });\n }, []);\n\n const classNameProp = useCallback(\n ({\n isDisabled: isDisabled2,\n isFocusVisible,\n isFocused,\n }: SelectRenderProps) => {\n plasmicUpdateVariant?.({\n disabled: isDisabled2,\n focused: isFocused,\n focusVisible: isFocusVisible,\n });\n return className ?? \"\";\n },\n [className, plasmicUpdateVariant]\n );\n\n return (\n <Select\n defaultSelectedKey={defaultSelectedKey}\n selectedKey={selectedKey}\n onSelectionChange={onSelectionChange}\n onOpenChange={onOpenChange}\n isDisabled={isDisabled}\n className={classNameProp}\n style={COMMON_STYLES}\n name={name}\n disabledKeys={disabledKeys}\n aria-label={ariaLabel}\n {...extractPlasmicDataProps(props)}\n >\n <SelectAutoOpen {...props} />\n <PlasmicPopoverTriggerContext.Provider value={true}>\n <PlasmicListBoxContext.Provider\n value={{\n idManager,\n }}\n >\n {children}\n </PlasmicListBoxContext.Provider>\n </PlasmicPopoverTriggerContext.Provider>\n </Select>\n );\n}\n\nexport function registerSelect(loader?: Registerable) {\n const selectValueMeta = registerComponentHelper(loader, BaseSelectValue, {\n name: makeComponentName(\"select-value\"),\n displayName: \"Aria Selected Value\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelectValue\",\n parentComponentName: SELECT_NAME,\n props: {\n /** @deprecated use children (Placeholder) directly */\n customize: {\n type: \"boolean\",\n displayName: \"Customize placeholder\",\n defaultValue: true,\n description: \"Customize the placeholder text and styles\",\n /** Obsolete, but retained (permanently hidden) for backward compatibility. */\n hidden: () => true,\n },\n children: {\n type: \"slot\",\n displayName: \"Placeholder\",\n defaultValue: [\n {\n type: \"text\",\n value: \"Select an item\",\n },\n ],\n },\n },\n trapsFocus: true,\n });\n\n registerComponentHelper(loader, BaseSelect, {\n name: SELECT_NAME,\n displayName: \"Aria Select\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelect\",\n variants: SELECT_VARIANTS_DATA,\n props: {\n ...getCommonProps<BaseSelectProps>(\"Select\", [\n \"name\",\n \"aria-label\",\n \"isDisabled\",\n \"autoFocus\",\n ]),\n selectedKey: {\n type: \"choice\",\n editOnly: true,\n uncontrolledProp: \"defaultSelectedKey\",\n displayName: \"Initial selected item\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n // React Aria Select do not support multiple selections yet\n multiSelect: false,\n },\n onSelectionChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectedValue\", type: \"string\" }],\n },\n disabledKeys: {\n type: \"choice\",\n displayName: \"Disabled values\",\n description:\n \"The items that are disabled. These items cannot be selected, focused, or otherwise interacted with.\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n multiSelect: true,\n advanced: true,\n },\n isOpen: {\n type: \"boolean\",\n defaultValue: false,\n // It doesn't make sense to make isOpen prop editable (it's controlled by user interaction and always closed by default), so we keep this prop hidden. We have listed the prop here in the meta only so we can expose a writeable state for it.\n hidden: () => true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n width: \"300px\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n styles: {\n width: \"100%\",\n padding: \"4px 10px\",\n background: \"white\",\n },\n props: {\n children: {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: selectValueMeta.name,\n },\n arrowDown,\n ],\n },\n },\n },\n {\n type: \"component\",\n name: POPOVER_COMPONENT_NAME,\n styles: {\n backgroundColor: \"white\",\n padding: \"10px\",\n overflow: \"scroll\",\n width: \"unset\",\n },\n props: {\n children: [\n {\n type: \"component\",\n name: LIST_BOX_COMPONENT_NAME,\n props: {\n selectionMode: \"single\",\n },\n styles: {\n borderWidth: 0,\n width: \"stretch\",\n },\n },\n ],\n },\n },\n ],\n },\n ],\n },\n },\n states: {\n selectedValue: {\n type: \"writable\",\n valueProp: \"selectedKey\",\n onChangeProp: \"onSelectionChange\",\n variableType: \"text\",\n },\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n });\n}\n"],"names":["_a"],"mappings":"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"}
1
+ {"version":3,"file":"registerSelect.esm.js","sources":["../src/registerSelect.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo } from \"react\";\nimport {\n Select,\n SelectProps,\n SelectRenderProps,\n SelectStateContext,\n SelectValue,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, arrowDown, getCommonProps } from \"./common\";\nimport {\n PlasmicListBoxContext,\n PlasmicPopoverTriggerContext,\n} from \"./contexts\";\nimport { OptionsItemIdManager } from \"./OptionsItemIdManager\";\nimport { BUTTON_COMPONENT_NAME } from \"./registerButton\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { LIST_BOX_COMPONENT_NAME } from \"./registerListBox\";\nimport { POPOVER_COMPONENT_NAME } from \"./registerPopover\";\nimport {\n HasControlContextData,\n Registerable,\n WithPlasmicCanvasComponentInfo,\n extractPlasmicDataProps,\n makeComponentName,\n registerComponentHelper,\n useAutoOpen,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\n// It cannot be used as a hook like useAutoOpen() within the BaseSelect component\n// because it needs access to SelectStateContext, which is only created in the BaseSelect component's render function.\nfunction SelectAutoOpen(props: any) {\n const { open, close } = React.useContext(SelectStateContext) ?? {};\n useAutoOpen({\n props,\n open: () => {\n open?.();\n // using settimeout because the focus is not immediately available\n setTimeout(() => {\n /*\n When the select's popover is opened in the canvas, the listbox gains focus, trapping the keyboard focus within it. Pressing the up or down arrow keys navigates through the listbox items.\n However, there are three issues with this behavior:\n\n 1. Focus should not be triggered in canvas (non-interactive mode)\n 2. Canvas (non-interactive mode) should remain non-interactive: Navigation between listbox items or selection using the space key should not be possible.\n 3. Keyboard hotkeys (e.g., backspace, undo) stop working: Key presses are absorbed by the listbox, breaking the expected behavior for shortcuts like backspace or undo (reference).\n\n To resolve this, we need to call document.activeElement.blur() to remove focus from the listbox.\n\n However, since the select component is a code component embedded within the artboard iframe, the keyboard hotkeys (e.g., backspace, undo) will not work,\n because they only function in the parent iframe (__wab_studio-frame).\n To ensure hotkeys work properly, we need to shift focus from the active element in the child iframe (artboard iframe) to the parent iframe (__wab_studio-frame) by using window.parent.\n */\n (window.parent.document.activeElement as HTMLElement)?.blur?.();\n }, 1);\n },\n close,\n });\n\n return null;\n}\n\nexport interface BaseSelectValueProps\n extends React.ComponentProps<typeof SelectValue> {\n children: React.ReactNode;\n}\n\nexport const BaseSelectValue = (props: BaseSelectValueProps) => {\n const { children: placeholder, className } = props;\n return (\n <SelectValue className={className} style={COMMON_STYLES}>\n {({ isPlaceholder, selectedText }) => (\n <>{isPlaceholder ? placeholder : selectedText}</>\n )}\n </SelectValue>\n );\n};\n\nconst SELECT_NAME = makeComponentName(\"select\");\n\nexport interface BaseSelectControlContextData {\n itemIds: string[];\n}\n\nconst SELECT_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"disabled\" as const,\n];\n\nconst { variants: SELECT_VARIANTS_DATA } =\n pickAriaComponentVariants(SELECT_VARIANTS);\n\nexport interface BaseSelectProps\n 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\n WithVariants<typeof SELECT_VARIANTS>,\n WithPlasmicCanvasComponentInfo,\n HasControlContextData<BaseSelectControlContextData> {\n children?: React.ReactNode;\n className?: string;\n}\n\nexport function BaseSelect(props: BaseSelectProps) {\n const {\n selectedKey,\n onSelectionChange,\n onOpenChange,\n isDisabled,\n className,\n children,\n disabledKeys,\n name,\n setControlContextData,\n plasmicUpdateVariant,\n defaultSelectedKey,\n \"aria-label\": ariaLabel,\n } = props;\n\n const idManager = useMemo(() => new OptionsItemIdManager(), []);\n\n useEffect(() => {\n idManager.subscribe((ids: string[]) => {\n setControlContextData?.({\n itemIds: ids,\n });\n });\n }, []);\n\n const classNameProp = useCallback(\n ({\n isDisabled: isDisabled2,\n isFocusVisible,\n isFocused,\n }: SelectRenderProps) => {\n plasmicUpdateVariant?.({\n disabled: isDisabled2,\n focused: isFocused,\n focusVisible: isFocusVisible,\n });\n return className ?? \"\";\n },\n [className, plasmicUpdateVariant]\n );\n\n return (\n <Select\n defaultSelectedKey={defaultSelectedKey}\n selectedKey={selectedKey}\n onSelectionChange={onSelectionChange}\n onOpenChange={onOpenChange}\n isDisabled={isDisabled}\n className={classNameProp}\n style={COMMON_STYLES}\n name={name}\n disabledKeys={disabledKeys}\n aria-label={ariaLabel}\n {...extractPlasmicDataProps(props)}\n >\n <SelectAutoOpen {...props} />\n {/* PlasmicPopoverTriggerContext is used by BasePopover */}\n <PlasmicPopoverTriggerContext.Provider value={true}>\n {/* PlasmicListBoxContext is used by\n - BaseListBox\n - BaseListBoxItem\n - BaseSection\n */}\n <PlasmicListBoxContext.Provider\n value={{\n idManager,\n }}\n >\n {children}\n </PlasmicListBoxContext.Provider>\n </PlasmicPopoverTriggerContext.Provider>\n </Select>\n );\n}\n\nexport function registerSelect(loader?: Registerable) {\n const selectValueMeta = registerComponentHelper(loader, BaseSelectValue, {\n name: makeComponentName(\"select-value\"),\n displayName: \"Aria Selected Value\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelectValue\",\n parentComponentName: SELECT_NAME,\n props: {\n /** @deprecated use children (Placeholder) directly */\n customize: {\n type: \"boolean\",\n displayName: \"Customize placeholder\",\n defaultValue: true,\n description: \"Customize the placeholder text and styles\",\n /** Obsolete, but retained (permanently hidden) for backward compatibility. */\n hidden: () => true,\n },\n children: {\n type: \"slot\",\n displayName: \"Placeholder\",\n defaultValue: [\n {\n type: \"text\",\n value: \"Select an item\",\n },\n ],\n },\n },\n trapsFocus: true,\n });\n\n registerComponentHelper(loader, BaseSelect, {\n name: SELECT_NAME,\n displayName: \"Aria Select\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSelect\",\n importName: \"BaseSelect\",\n variants: SELECT_VARIANTS_DATA,\n props: {\n ...getCommonProps<BaseSelectProps>(\"Select\", [\n \"name\",\n \"aria-label\",\n \"isDisabled\",\n \"autoFocus\",\n ]),\n selectedKey: {\n type: \"choice\",\n editOnly: true,\n uncontrolledProp: \"defaultSelectedKey\",\n displayName: \"Initial selected item\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n // React Aria Select do not support multiple selections yet\n multiSelect: false,\n },\n onSelectionChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"selectedValue\", type: \"string\" }],\n },\n disabledKeys: {\n type: \"choice\",\n displayName: \"Disabled values\",\n description:\n \"The items that are disabled. These items cannot be selected, focused, or otherwise interacted with.\",\n options: (_props, ctx) => (ctx?.itemIds ? Array.from(ctx.itemIds) : []),\n multiSelect: true,\n advanced: true,\n },\n isOpen: {\n type: \"boolean\",\n defaultValue: false,\n // It doesn't make sense to make isOpen prop editable (it's controlled by user interaction and always closed by default), so we keep this prop hidden. We have listed the prop here in the meta only so we can expose a writeable state for it.\n hidden: () => true,\n },\n onOpenChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"isOpen\", type: \"boolean\" }],\n },\n children: {\n type: \"slot\",\n mergeWithParent: true,\n defaultValue: [\n {\n type: \"vbox\",\n styles: {\n justifyContent: \"flex-start\",\n alignItems: \"flex-start\",\n width: \"300px\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: BUTTON_COMPONENT_NAME,\n styles: {\n width: \"100%\",\n padding: \"4px 10px\",\n background: \"white\",\n },\n props: {\n children: {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: 0,\n },\n children: [\n {\n type: \"component\",\n name: selectValueMeta.name,\n },\n arrowDown,\n ],\n },\n },\n },\n {\n type: \"component\",\n name: POPOVER_COMPONENT_NAME,\n styles: {\n backgroundColor: \"white\",\n padding: \"10px\",\n overflow: \"scroll\",\n width: \"unset\",\n },\n props: {\n children: [\n {\n type: \"component\",\n name: LIST_BOX_COMPONENT_NAME,\n props: {\n selectionMode: \"single\",\n },\n styles: {\n borderWidth: 0,\n width: \"stretch\",\n },\n },\n ],\n },\n },\n ],\n },\n ],\n },\n },\n states: {\n selectedValue: {\n type: \"writable\",\n valueProp: \"selectedKey\",\n onChangeProp: \"onSelectionChange\",\n variableType: \"text\",\n },\n isOpen: {\n type: \"writable\",\n valueProp: \"isOpen\",\n onChangeProp: \"onOpenChange\",\n variableType: \"boolean\",\n },\n },\n trapsFocus: true,\n });\n}\n"],"names":["_a"],"mappings":"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"}
@@ -55,22 +55,25 @@ const SLIDER_VARIANTS = ["disabled"];
55
55
  const { variants, withObservedValues } = variantUtils.pickAriaComponentVariants(SLIDER_VARIANTS);
56
56
  function BaseSlider(props) {
57
57
  const _a = props, { children, plasmicUpdateVariant } = _a, rest = __objRest(_a, ["children", "plasmicUpdateVariant"]);
58
- return /* @__PURE__ */ React__default.default.createElement(
59
- contexts.PlasmicSliderContext.Provider,
60
- {
61
- value: __spreadProps(__spreadValues({}, rest), {
62
- // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410
63
- onChange: rest.onChange,
64
- onChangeEnd: rest.onChangeEnd
65
- })
66
- },
67
- /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.Slider, __spreadProps(__spreadValues({}, rest), { style: common.COMMON_STYLES }), ({ isDisabled }) => withObservedValues(
68
- children,
58
+ return (
59
+ // PlasmicSliderContext is used by BaseSliderTrack
60
+ /* @__PURE__ */ React__default.default.createElement(
61
+ contexts.PlasmicSliderContext.Provider,
69
62
  {
70
- disabled: isDisabled
63
+ value: __spreadProps(__spreadValues({}, rest), {
64
+ // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410
65
+ onChange: rest.onChange,
66
+ onChangeEnd: rest.onChangeEnd
67
+ })
71
68
  },
72
- plasmicUpdateVariant
73
- ))
69
+ /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.Slider, __spreadProps(__spreadValues({}, rest), { style: common.COMMON_STYLES }), ({ isDisabled }) => withObservedValues(
70
+ children,
71
+ {
72
+ disabled: isDisabled
73
+ },
74
+ plasmicUpdateVariant
75
+ ))
76
+ )
74
77
  );
75
78
  }
76
79
  function getCommonSliderProps() {
@@ -1 +1 @@
1
- {"version":3,"file":"registerSlider.cjs.js","sources":["../src/registerSlider.tsx"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { Slider, type SliderProps } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicSliderContext } from \"./contexts\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { registerSliderOutput } from \"./registerSliderOutput\";\nimport { registerSliderThumb } from \"./registerSliderThumb\";\nimport { registerSliderTrack } from \"./registerSliderTrack\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nconst SLIDER_COMPONENT_NAME = makeComponentName(\"slider\");\nconst RANGE_SLIDER_COMPONENT_NAME = makeComponentName(\"range-slider\");\nconst SLIDER_VARIANTS = [\"disabled\" as const];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(SLIDER_VARIANTS);\n\nexport interface BaseSliderProps<T extends number | number[]>\n extends SliderProps<T>,\n WithVariants<typeof SLIDER_VARIANTS> {\n children?: React.ReactNode;\n}\n\nexport function BaseSlider<T extends number | number[]>(\n props: BaseSliderProps<T>\n) {\n const { children, plasmicUpdateVariant, ...rest } = props;\n return (\n <PlasmicSliderContext.Provider\n value={{\n ...rest,\n // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410\n onChange: rest.onChange as (value: number | number[]) => void,\n onChangeEnd: rest.onChangeEnd as (value: number | number[]) => void,\n }}\n >\n <Slider<T> {...rest} style={COMMON_STYLES}>\n {({ isDisabled }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Slider>\n </PlasmicSliderContext.Provider>\n );\n}\n\nfunction getCommonSliderProps<T extends number | number[]>(): CodeComponentMeta<\n BaseSliderProps<T>\n>[\"props\"] {\n return {\n orientation: {\n type: \"choice\",\n options: [\"horizontal\", \"vertical\"],\n defaultValueHint: \"horizontal\",\n defaultValue: \"horizontal\",\n },\n minValue: {\n type: \"number\",\n description: \"The minimum value of the slider\",\n defaultValueHint: 0,\n },\n maxValue: {\n type: \"number\",\n description: \"The maximum value of the slider\",\n defaultValueHint: 100,\n },\n step: {\n type: \"number\",\n description: \"The step value of the slider\",\n defaultValueHint: 1,\n },\n };\n}\n\nexport function registerSlider(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseSlider<number>>\n) {\n const sliderOutputMeta = registerSliderOutput(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n const sliderThumbMeta = registerSliderThumb(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n const sliderTrackMeta = registerSliderTrack(sliderThumbMeta, loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n // Register the range slider\n registerComponentHelper(\n loader,\n BaseSlider<number[]>,\n {\n name: RANGE_SLIDER_COMPONENT_NAME,\n displayName: \"Aria Range Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number[]>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number[]>(),\n value: {\n type: \"array\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The intial value of the slider\",\n defaultValue: [20, 50],\n validator: (value) => {\n if (!Array.isArray(value)) {\n return \"Input must be an array.\";\n }\n\n for (let i = 1; i < value.length; i++) {\n if (value[i] < value[i - 1]) {\n return \"Array elements are not in ascending order.\";\n }\n }\n\n return true;\n },\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n props: {\n children: [\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n },\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n styles: {\n backgroundColor: \"blue\",\n },\n },\n ],\n },\n },\n ],\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n {\n parentComponentName: SLIDER_COMPONENT_NAME,\n }\n );\n\n registerComponentHelper(\n loader,\n BaseSlider<number>,\n {\n name: SLIDER_COMPONENT_NAME,\n displayName: \"Aria Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number>(),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n },\n ],\n },\n value: {\n type: \"number\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The initial value of the slider\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"number\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["makeComponentName","pickAriaComponentVariants","React","PlasmicSliderContext","Slider","COMMON_STYLES","registerSliderOutput","registerSliderThumb","registerSliderTrack","registerComponentHelper","getCommonProps","LABEL_COMPONENT_NAME"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,MAAM,qBAAA,GAAwBA,wBAAkB,QAAQ,CAAA,CAAA;AACxD,MAAM,2BAAA,GAA8BA,wBAAkB,cAAc,CAAA,CAAA;AACpE,MAAM,eAAA,GAAkB,CAAC,UAAmB,CAAA,CAAA;AAE5C,MAAM,EAAE,QAAA,EAAU,kBAAmB,EAAA,GACnCC,uCAA0B,eAAe,CAAA,CAAA;AAQpC,SAAS,WACd,KACA,EAAA;AACA,EAAoD,MAAA,EAAA,GAAA,KAAA,EAA5C,YAAU,oBAjCpB,EAAA,GAiCsD,IAAT,IAAS,GAAA,SAAA,CAAA,EAAA,EAAT,CAAnC,UAAU,EAAA,sBAAA,CAAA,CAAA,CAAA;AAClB,EACE,uBAAAC,sBAAA,CAAA,aAAA;AAAA,IAACC,6BAAqB,CAAA,QAAA;AAAA,IAArB;AAAA,MACC,KAAA,EAAO,iCACF,IADE,CAAA,EAAA;AAAA;AAAA,QAGL,UAAU,IAAK,CAAA,QAAA;AAAA,QACf,aAAa,IAAK,CAAA,WAAA;AAAA,OACpB,CAAA;AAAA,KAAA;AAAA,oBAEAD,sBAAA,CAAA,aAAA,CAACE,6DAAc,IAAd,CAAA,EAAA,EAAoB,OAAOC,oBACzB,EAAA,CAAA,EAAA,CAAC,EAAE,UAAA,EACF,KAAA,kBAAA;AAAA,MACE,QAAA;AAAA,MACA;AAAA,QACE,QAAU,EAAA,UAAA;AAAA,OACZ;AAAA,MACA,oBAAA;AAAA,KAGN,CAAA;AAAA,GACF,CAAA;AAEJ,CAAA;AAEA,SAAS,oBAEE,GAAA;AACT,EAAO,OAAA;AAAA,IACL,WAAa,EAAA;AAAA,MACX,IAAM,EAAA,QAAA;AAAA,MACN,OAAA,EAAS,CAAC,YAAA,EAAc,UAAU,CAAA;AAAA,MAClC,gBAAkB,EAAA,YAAA;AAAA,MAClB,YAAc,EAAA,YAAA;AAAA,KAChB;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,QAAA;AAAA,MACN,WAAa,EAAA,iCAAA;AAAA,MACb,gBAAkB,EAAA,CAAA;AAAA,KACpB;AAAA,IACA,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,QAAA;AAAA,MACN,WAAa,EAAA,iCAAA;AAAA,MACb,gBAAkB,EAAA,GAAA;AAAA,KACpB;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,IAAM,EAAA,QAAA;AAAA,MACN,WAAa,EAAA,8BAAA;AAAA,MACb,gBAAkB,EAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AACF,CAAA;AAEgB,SAAA,cAAA,CACd,QACA,SACA,EAAA;AACA,EAAM,MAAA,gBAAA,GAAmBC,0CAAqB,MAAQ,EAAA;AAAA,IACpD,mBAAqB,EAAA,qBAAA;AAAA,GACtB,CAAA,CAAA;AAED,EAAM,MAAA,eAAA,GAAkBC,wCAAoB,MAAQ,EAAA;AAAA,IAClD,mBAAqB,EAAA,qBAAA;AAAA,GACtB,CAAA,CAAA;AACD,EAAM,MAAA,eAAA,GAAkBC,uCAAoB,CAAA,eAAA,EAAiB,MAAQ,EAAA;AAAA,IACnE,mBAAqB,EAAA,qBAAA;AAAA,GACtB,CAAA,CAAA;AAGD,EAAAC,6BAAA;AAAA,IACE,MAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,MACE,IAAM,EAAA,2BAAA;AAAA,MACN,WAAa,EAAA,mBAAA;AAAA,MACb,UAAY,EAAA,+CAAA;AAAA,MACZ,UAAY,EAAA,YAAA;AAAA,MACZ,QAAA;AAAA,MACA,aAAe,EAAA;AAAA,QACb,KAAO,EAAA,OAAA;AAAA,OACT;AAAA,MACA,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EAAAC,qBAAA,CAA0C,QAAU,EAAA;AAAA,QACrD,YAAA;AAAA,QACA,YAAA;AAAA,OACD,CACE,CAAA,EAAA,oBAAA,EALE,CAAA,EAAA;AAAA,QAML,KAAO,EAAA;AAAA,UACL,IAAM,EAAA,OAAA;AAAA,UACN,QAAU,EAAA,IAAA;AAAA,UACV,WAAa,EAAA,eAAA;AAAA,UACb,gBAAkB,EAAA,cAAA;AAAA,UAClB,WAAa,EAAA,gCAAA;AAAA,UACb,YAAA,EAAc,CAAC,EAAA,EAAI,EAAE,CAAA;AAAA,UACrB,SAAA,EAAW,CAAC,KAAU,KAAA;AACpB,YAAA,IAAI,CAAC,KAAA,CAAM,OAAQ,CAAA,KAAK,CAAG,EAAA;AACzB,cAAO,OAAA,yBAAA,CAAA;AAAA,aACT;AAEA,YAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,KAAA,CAAM,QAAQ,CAAK,EAAA,EAAA;AACrC,cAAA,IAAI,MAAM,CAAC,CAAA,GAAI,KAAM,CAAA,CAAA,GAAI,CAAC,CAAG,EAAA;AAC3B,gBAAO,OAAA,4CAAA,CAAA;AAAA,eACT;AAAA,aACF;AAEA,YAAO,OAAA,IAAA,CAAA;AAAA,WACT;AAAA,SACF;AAAA,QACA,QAAU,EAAA;AAAA,UACR,IAAM,EAAA,MAAA;AAAA,UACN,YAAc,EAAA;AAAA,YACZ;AAAA,cACE,IAAM,EAAA,MAAA;AAAA,cACN,MAAQ,EAAA;AAAA,gBACN,KAAO,EAAA,SAAA;AAAA,gBACP,cAAgB,EAAA,eAAA;AAAA,gBAChB,OAAS,EAAA,SAAA;AAAA,eACX;AAAA,cACA,QAAU,EAAA;AAAA,gBACR;AAAA,kBACE,IAAM,EAAA,WAAA;AAAA,kBACN,IAAM,EAAAC,kCAAA;AAAA,kBACN,KAAO,EAAA;AAAA,oBACL,QAAU,EAAA;AAAA,sBACR,IAAM,EAAA,MAAA;AAAA,sBACN,KAAO,EAAA,OAAA;AAAA,qBACT;AAAA,mBACF;AAAA,iBACF;AAAA,gBACA;AAAA,kBACE,IAAM,EAAA,WAAA;AAAA,kBACN,MAAM,gBAAiB,CAAA,IAAA;AAAA,kBACvB,KAAO,EAAA;AAAA,oBACL,QAAU,EAAA;AAAA,sBACR,IAAM,EAAA,MAAA;AAAA,sBACN,KAAO,EAAA,QAAA;AAAA,qBACT;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,aACF;AAAA,YACA;AAAA,cACE,IAAM,EAAA,WAAA;AAAA,cACN,MAAM,eAAgB,CAAA,IAAA;AAAA,cACtB,KAAO,EAAA;AAAA,gBACL,QAAU,EAAA;AAAA,kBACR;AAAA,oBACE,IAAM,EAAA,WAAA;AAAA,oBACN,MAAM,eAAgB,CAAA,IAAA;AAAA,mBACxB;AAAA,kBACA;AAAA,oBACE,IAAM,EAAA,WAAA;AAAA,oBACN,MAAM,eAAgB,CAAA,IAAA;AAAA,oBACtB,MAAQ,EAAA;AAAA,sBACN,eAAiB,EAAA,MAAA;AAAA,qBACnB;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,aACF;AAAA,WACF;AAAA,SACF;AAAA,QACA,QAAU,EAAA;AAAA,UACR,IAAM,EAAA,cAAA;AAAA,UACN,UAAU,CAAC,EAAE,MAAM,OAAS,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,SAC9C;AAAA,QACA,WAAa,EAAA;AAAA,UACX,IAAM,EAAA,cAAA;AAAA,UACN,UAAU,CAAC,EAAE,MAAM,OAAS,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,SAC9C;AAAA,OACF,CAAA;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,KAAO,EAAA;AAAA,UACL,IAAM,EAAA,UAAA;AAAA,UACN,SAAW,EAAA,OAAA;AAAA,UACX,YAAc,EAAA,UAAA;AAAA,UACd,YAAc,EAAA,OAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,UAAY,EAAA,IAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,mBAAqB,EAAA,qBAAA;AAAA,KACvB;AAAA,GACF,CAAA;AAEA,EAAAF,6BAAA;AAAA,IACE,MAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,MACE,IAAM,EAAA,qBAAA;AAAA,MACN,WAAa,EAAA,aAAA;AAAA,MACb,UAAY,EAAA,+CAAA;AAAA,MACZ,UAAY,EAAA,YAAA;AAAA,MACZ,QAAA;AAAA,MACA,aAAe,EAAA;AAAA,QACb,KAAO,EAAA,OAAA;AAAA,OACT;AAAA,MACA,KAAA,EAAO,aACF,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EAAAC,qBAAA,CAAwC,QAAU,EAAA;AAAA,QACnD,YAAA;AAAA,QACA,YAAA;AAAA,OACD,CACE,CAAA,EAAA,oBAAA,EALE,CAAA,EAAA;AAAA,QAML,QAAU,EAAA;AAAA,UACR,IAAM,EAAA,MAAA;AAAA,UACN,YAAc,EAAA;AAAA,YACZ;AAAA,cACE,IAAM,EAAA,MAAA;AAAA,cACN,MAAQ,EAAA;AAAA,gBACN,KAAO,EAAA,SAAA;AAAA,gBACP,cAAgB,EAAA,eAAA;AAAA,gBAChB,OAAS,EAAA,SAAA;AAAA,eACX;AAAA,cACA,QAAU,EAAA;AAAA,gBACR;AAAA,kBACE,IAAM,EAAA,WAAA;AAAA,kBACN,IAAM,EAAAC,kCAAA;AAAA,kBACN,KAAO,EAAA;AAAA,oBACL,QAAU,EAAA;AAAA,sBACR,IAAM,EAAA,MAAA;AAAA,sBACN,KAAO,EAAA,OAAA;AAAA,qBACT;AAAA,mBACF;AAAA,iBACF;AAAA,gBACA;AAAA,kBACE,IAAM,EAAA,WAAA;AAAA,kBACN,MAAM,gBAAiB,CAAA,IAAA;AAAA,kBACvB,KAAO,EAAA;AAAA,oBACL,QAAU,EAAA;AAAA,sBACR,IAAM,EAAA,MAAA;AAAA,sBACN,KAAO,EAAA,QAAA;AAAA,qBACT;AAAA,mBACF;AAAA,iBACF;AAAA,eACF;AAAA,aACF;AAAA,YACA;AAAA,cACE,IAAM,EAAA,WAAA;AAAA,cACN,MAAM,eAAgB,CAAA,IAAA;AAAA,aACxB;AAAA,WACF;AAAA,SACF;AAAA,QACA,KAAO,EAAA;AAAA,UACL,IAAM,EAAA,QAAA;AAAA,UACN,QAAU,EAAA,IAAA;AAAA,UACV,WAAa,EAAA,eAAA;AAAA,UACb,gBAAkB,EAAA,cAAA;AAAA,UAClB,WAAa,EAAA,iCAAA;AAAA,UACb,gBAAkB,EAAA,CAAA;AAAA,UAClB,YAAc,EAAA,CAAA;AAAA,SAChB;AAAA,QACA,QAAU,EAAA;AAAA,UACR,IAAM,EAAA,cAAA;AAAA,UACN,UAAU,CAAC,EAAE,MAAM,OAAS,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,SAC9C;AAAA,QACA,WAAa,EAAA;AAAA,UACX,IAAM,EAAA,cAAA;AAAA,UACN,UAAU,CAAC,EAAE,MAAM,OAAS,EAAA,IAAA,EAAM,UAAU,CAAA;AAAA,SAC9C;AAAA,OACF,CAAA;AAAA,MACA,MAAQ,EAAA;AAAA,QACN,KAAO,EAAA;AAAA,UACL,IAAM,EAAA,UAAA;AAAA,UACN,SAAW,EAAA,OAAA;AAAA,UACX,YAAc,EAAA,UAAA;AAAA,UACd,YAAc,EAAA,QAAA;AAAA,SAChB;AAAA,OACF;AAAA,MACA,UAAY,EAAA,IAAA;AAAA,KACd;AAAA,IACA,SAAA;AAAA,GACF,CAAA;AACF;;;;;"}
1
+ {"version":3,"file":"registerSlider.cjs.js","sources":["../src/registerSlider.tsx"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { Slider, type SliderProps } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicSliderContext } from \"./contexts\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { registerSliderOutput } from \"./registerSliderOutput\";\nimport { registerSliderThumb } from \"./registerSliderThumb\";\nimport { registerSliderTrack } from \"./registerSliderTrack\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nconst SLIDER_COMPONENT_NAME = makeComponentName(\"slider\");\nconst RANGE_SLIDER_COMPONENT_NAME = makeComponentName(\"range-slider\");\nconst SLIDER_VARIANTS = [\"disabled\" as const];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(SLIDER_VARIANTS);\n\nexport interface BaseSliderProps<T extends number | number[]>\n extends SliderProps<T>,\n WithVariants<typeof SLIDER_VARIANTS> {\n children?: React.ReactNode;\n}\n\nexport function BaseSlider<T extends number | number[]>(\n props: BaseSliderProps<T>\n) {\n const { children, plasmicUpdateVariant, ...rest } = props;\n return (\n // PlasmicSliderContext is used by BaseSliderTrack\n <PlasmicSliderContext.Provider\n value={{\n ...rest,\n // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410\n onChange: rest.onChange as (value: number | number[]) => void,\n onChangeEnd: rest.onChangeEnd as (value: number | number[]) => void,\n }}\n >\n <Slider<T> {...rest} style={COMMON_STYLES}>\n {({ isDisabled }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Slider>\n </PlasmicSliderContext.Provider>\n );\n}\n\nfunction getCommonSliderProps<T extends number | number[]>(): CodeComponentMeta<\n BaseSliderProps<T>\n>[\"props\"] {\n return {\n orientation: {\n type: \"choice\",\n options: [\"horizontal\", \"vertical\"],\n defaultValueHint: \"horizontal\",\n defaultValue: \"horizontal\",\n },\n minValue: {\n type: \"number\",\n description: \"The minimum value of the slider\",\n defaultValueHint: 0,\n },\n maxValue: {\n type: \"number\",\n description: \"The maximum value of the slider\",\n defaultValueHint: 100,\n },\n step: {\n type: \"number\",\n description: \"The step value of the slider\",\n defaultValueHint: 1,\n },\n };\n}\n\nexport function registerSlider(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseSlider<number>>\n) {\n const sliderOutputMeta = registerSliderOutput(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n const sliderThumbMeta = registerSliderThumb(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n const sliderTrackMeta = registerSliderTrack(sliderThumbMeta, loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n // Register the range slider\n registerComponentHelper(\n loader,\n BaseSlider<number[]>,\n {\n name: RANGE_SLIDER_COMPONENT_NAME,\n displayName: \"Aria Range Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number[]>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number[]>(),\n value: {\n type: \"array\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The intial value of the slider\",\n defaultValue: [20, 50],\n validator: (value) => {\n if (!Array.isArray(value)) {\n return \"Input must be an array.\";\n }\n\n for (let i = 1; i < value.length; i++) {\n if (value[i] < value[i - 1]) {\n return \"Array elements are not in ascending order.\";\n }\n }\n\n return true;\n },\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n props: {\n children: [\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n },\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n styles: {\n backgroundColor: \"blue\",\n },\n },\n ],\n },\n },\n ],\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n {\n parentComponentName: SLIDER_COMPONENT_NAME,\n }\n );\n\n registerComponentHelper(\n loader,\n BaseSlider<number>,\n {\n name: SLIDER_COMPONENT_NAME,\n displayName: \"Aria Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number>(),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n },\n ],\n },\n value: {\n type: \"number\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The initial value of the slider\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"number\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":["makeComponentName","pickAriaComponentVariants","React","PlasmicSliderContext","Slider","COMMON_STYLES","registerSliderOutput","registerSliderThumb","registerSliderTrack","registerComponentHelper","getCommonProps","LABEL_COMPONENT_NAME"],"mappings":"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"}
@@ -49,22 +49,25 @@ const SLIDER_VARIANTS = ["disabled"];
49
49
  const { variants, withObservedValues } = pickAriaComponentVariants(SLIDER_VARIANTS);
50
50
  function BaseSlider(props) {
51
51
  const _a = props, { children, plasmicUpdateVariant } = _a, rest = __objRest(_a, ["children", "plasmicUpdateVariant"]);
52
- return /* @__PURE__ */ React.createElement(
53
- PlasmicSliderContext.Provider,
54
- {
55
- value: __spreadProps(__spreadValues({}, rest), {
56
- // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410
57
- onChange: rest.onChange,
58
- onChangeEnd: rest.onChangeEnd
59
- })
60
- },
61
- /* @__PURE__ */ React.createElement(Slider, __spreadProps(__spreadValues({}, rest), { style: COMMON_STYLES }), ({ isDisabled }) => withObservedValues(
62
- children,
52
+ return (
53
+ // PlasmicSliderContext is used by BaseSliderTrack
54
+ /* @__PURE__ */ React.createElement(
55
+ PlasmicSliderContext.Provider,
63
56
  {
64
- disabled: isDisabled
57
+ value: __spreadProps(__spreadValues({}, rest), {
58
+ // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410
59
+ onChange: rest.onChange,
60
+ onChangeEnd: rest.onChangeEnd
61
+ })
65
62
  },
66
- plasmicUpdateVariant
67
- ))
63
+ /* @__PURE__ */ React.createElement(Slider, __spreadProps(__spreadValues({}, rest), { style: COMMON_STYLES }), ({ isDisabled }) => withObservedValues(
64
+ children,
65
+ {
66
+ disabled: isDisabled
67
+ },
68
+ plasmicUpdateVariant
69
+ ))
70
+ )
68
71
  );
69
72
  }
70
73
  function getCommonSliderProps() {
@@ -1 +1 @@
1
- {"version":3,"file":"registerSlider.esm.js","sources":["../src/registerSlider.tsx"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { Slider, type SliderProps } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicSliderContext } from \"./contexts\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { registerSliderOutput } from \"./registerSliderOutput\";\nimport { registerSliderThumb } from \"./registerSliderThumb\";\nimport { registerSliderTrack } from \"./registerSliderTrack\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nconst SLIDER_COMPONENT_NAME = makeComponentName(\"slider\");\nconst RANGE_SLIDER_COMPONENT_NAME = makeComponentName(\"range-slider\");\nconst SLIDER_VARIANTS = [\"disabled\" as const];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(SLIDER_VARIANTS);\n\nexport interface BaseSliderProps<T extends number | number[]>\n extends SliderProps<T>,\n WithVariants<typeof SLIDER_VARIANTS> {\n children?: React.ReactNode;\n}\n\nexport function BaseSlider<T extends number | number[]>(\n props: BaseSliderProps<T>\n) {\n const { children, plasmicUpdateVariant, ...rest } = props;\n return (\n <PlasmicSliderContext.Provider\n value={{\n ...rest,\n // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410\n onChange: rest.onChange as (value: number | number[]) => void,\n onChangeEnd: rest.onChangeEnd as (value: number | number[]) => void,\n }}\n >\n <Slider<T> {...rest} style={COMMON_STYLES}>\n {({ isDisabled }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Slider>\n </PlasmicSliderContext.Provider>\n );\n}\n\nfunction getCommonSliderProps<T extends number | number[]>(): CodeComponentMeta<\n BaseSliderProps<T>\n>[\"props\"] {\n return {\n orientation: {\n type: \"choice\",\n options: [\"horizontal\", \"vertical\"],\n defaultValueHint: \"horizontal\",\n defaultValue: \"horizontal\",\n },\n minValue: {\n type: \"number\",\n description: \"The minimum value of the slider\",\n defaultValueHint: 0,\n },\n maxValue: {\n type: \"number\",\n description: \"The maximum value of the slider\",\n defaultValueHint: 100,\n },\n step: {\n type: \"number\",\n description: \"The step value of the slider\",\n defaultValueHint: 1,\n },\n };\n}\n\nexport function registerSlider(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseSlider<number>>\n) {\n const sliderOutputMeta = registerSliderOutput(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n const sliderThumbMeta = registerSliderThumb(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n const sliderTrackMeta = registerSliderTrack(sliderThumbMeta, loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n // Register the range slider\n registerComponentHelper(\n loader,\n BaseSlider<number[]>,\n {\n name: RANGE_SLIDER_COMPONENT_NAME,\n displayName: \"Aria Range Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number[]>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number[]>(),\n value: {\n type: \"array\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The intial value of the slider\",\n defaultValue: [20, 50],\n validator: (value) => {\n if (!Array.isArray(value)) {\n return \"Input must be an array.\";\n }\n\n for (let i = 1; i < value.length; i++) {\n if (value[i] < value[i - 1]) {\n return \"Array elements are not in ascending order.\";\n }\n }\n\n return true;\n },\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n props: {\n children: [\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n },\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n styles: {\n backgroundColor: \"blue\",\n },\n },\n ],\n },\n },\n ],\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n {\n parentComponentName: SLIDER_COMPONENT_NAME,\n }\n );\n\n registerComponentHelper(\n loader,\n BaseSlider<number>,\n {\n name: SLIDER_COMPONENT_NAME,\n displayName: \"Aria Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number>(),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n },\n ],\n },\n value: {\n type: \"number\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The initial value of the slider\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"number\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registerSlider.esm.js","sources":["../src/registerSlider.tsx"],"sourcesContent":["import { CodeComponentMeta } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { Slider, type SliderProps } from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicSliderContext } from \"./contexts\";\nimport { LABEL_COMPONENT_NAME } from \"./registerLabel\";\nimport { registerSliderOutput } from \"./registerSliderOutput\";\nimport { registerSliderThumb } from \"./registerSliderThumb\";\nimport { registerSliderTrack } from \"./registerSliderTrack\";\nimport {\n CodeComponentMetaOverrides,\n Registerable,\n makeComponentName,\n registerComponentHelper,\n} from \"./utils\";\nimport { WithVariants, pickAriaComponentVariants } from \"./variant-utils\";\n\nconst SLIDER_COMPONENT_NAME = makeComponentName(\"slider\");\nconst RANGE_SLIDER_COMPONENT_NAME = makeComponentName(\"range-slider\");\nconst SLIDER_VARIANTS = [\"disabled\" as const];\n\nconst { variants, withObservedValues } =\n pickAriaComponentVariants(SLIDER_VARIANTS);\n\nexport interface BaseSliderProps<T extends number | number[]>\n extends SliderProps<T>,\n WithVariants<typeof SLIDER_VARIANTS> {\n children?: React.ReactNode;\n}\n\nexport function BaseSlider<T extends number | number[]>(\n props: BaseSliderProps<T>\n) {\n const { children, plasmicUpdateVariant, ...rest } = props;\n return (\n // PlasmicSliderContext is used by BaseSliderTrack\n <PlasmicSliderContext.Provider\n value={{\n ...rest,\n // Here's why the type casting is needed here: https://github.com/Microsoft/TypeScript/issues/3410\n onChange: rest.onChange as (value: number | number[]) => void,\n onChangeEnd: rest.onChangeEnd as (value: number | number[]) => void,\n }}\n >\n <Slider<T> {...rest} style={COMMON_STYLES}>\n {({ isDisabled }) =>\n withObservedValues(\n children,\n {\n disabled: isDisabled,\n },\n plasmicUpdateVariant\n )\n }\n </Slider>\n </PlasmicSliderContext.Provider>\n );\n}\n\nfunction getCommonSliderProps<T extends number | number[]>(): CodeComponentMeta<\n BaseSliderProps<T>\n>[\"props\"] {\n return {\n orientation: {\n type: \"choice\",\n options: [\"horizontal\", \"vertical\"],\n defaultValueHint: \"horizontal\",\n defaultValue: \"horizontal\",\n },\n minValue: {\n type: \"number\",\n description: \"The minimum value of the slider\",\n defaultValueHint: 0,\n },\n maxValue: {\n type: \"number\",\n description: \"The maximum value of the slider\",\n defaultValueHint: 100,\n },\n step: {\n type: \"number\",\n description: \"The step value of the slider\",\n defaultValueHint: 1,\n },\n };\n}\n\nexport function registerSlider(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseSlider<number>>\n) {\n const sliderOutputMeta = registerSliderOutput(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n const sliderThumbMeta = registerSliderThumb(loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n const sliderTrackMeta = registerSliderTrack(sliderThumbMeta, loader, {\n parentComponentName: SLIDER_COMPONENT_NAME,\n });\n\n // Register the range slider\n registerComponentHelper(\n loader,\n BaseSlider<number[]>,\n {\n name: RANGE_SLIDER_COMPONENT_NAME,\n displayName: \"Aria Range Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number[]>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number[]>(),\n value: {\n type: \"array\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The intial value of the slider\",\n defaultValue: [20, 50],\n validator: (value) => {\n if (!Array.isArray(value)) {\n return \"Input must be an array.\";\n }\n\n for (let i = 1; i < value.length; i++) {\n if (value[i] < value[i - 1]) {\n return \"Array elements are not in ascending order.\";\n }\n }\n\n return true;\n },\n },\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n props: {\n children: [\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n },\n {\n type: \"component\",\n name: sliderThumbMeta.name,\n styles: {\n backgroundColor: \"blue\",\n },\n },\n ],\n },\n },\n ],\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"object\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"array\",\n },\n },\n trapsFocus: true,\n },\n {\n parentComponentName: SLIDER_COMPONENT_NAME,\n }\n );\n\n registerComponentHelper(\n loader,\n BaseSlider<number>,\n {\n name: SLIDER_COMPONENT_NAME,\n displayName: \"Aria Slider\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerSlider\",\n importName: \"BaseSlider\",\n variants,\n defaultStyles: {\n width: \"300px\",\n },\n props: {\n ...getCommonProps<BaseSliderProps<number>>(\"slider\", [\n \"isDisabled\",\n \"aria-label\",\n ]),\n ...getCommonSliderProps<number>(),\n children: {\n type: \"slot\",\n defaultValue: [\n {\n type: \"hbox\",\n styles: {\n width: \"stretch\",\n justifyContent: \"space-between\",\n padding: \"8px 0px\",\n },\n children: [\n {\n type: \"component\",\n name: LABEL_COMPONENT_NAME,\n props: {\n children: {\n type: \"text\",\n value: \"Label\",\n },\n },\n },\n {\n type: \"component\",\n name: sliderOutputMeta.name,\n props: {\n children: {\n type: \"text\",\n value: \"Output\",\n },\n },\n },\n ],\n },\n {\n type: \"component\",\n name: sliderTrackMeta.name,\n },\n ],\n },\n value: {\n type: \"number\",\n editOnly: true,\n displayName: \"Initial value\",\n uncontrolledProp: \"defaultValue\",\n description: \"The initial value of the slider\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n onChangeEnd: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"number\" }],\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"number\",\n },\n },\n trapsFocus: true,\n },\n overrides\n );\n}\n"],"names":[],"mappings":"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"}
@@ -65,11 +65,13 @@ function BaseTextArea_(props, ref) {
65
65
  const _a = props, {
66
66
  className,
67
67
  plasmicUpdateVariant,
68
- setControlContextData
68
+ setControlContextData,
69
+ value
69
70
  } = _a, restProps = __objRest(_a, [
70
71
  "className",
71
72
  "plasmicUpdateVariant",
72
- "setControlContextData"
73
+ "setControlContextData",
74
+ "value"
73
75
  ]);
74
76
  const textFieldContext = React__default.default.useContext(contexts.PlasmicTextFieldContext);
75
77
  const [textAreaContextProps, textAreaRef] = reactAriaComponents.useContextProps(
@@ -87,6 +89,7 @@ function BaseTextArea_(props, ref) {
87
89
  focusProps,
88
90
  hoverProps,
89
91
  {
92
+ value: utils.isDefined(textFieldContext) ? void 0 : value,
90
93
  style: common.COMMON_STYLES,
91
94
  className
92
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registerTextArea.cjs.js","sources":["../src/registerTextArea.tsx"],"sourcesContent":["import React, { ChangeEvent, ForwardedRef, useEffect } from \"react\";\nimport { mergeProps, useFocusRing, useHover } from \"react-aria\";\nimport {\n TextAreaContext,\n TextAreaProps,\n useContextProps,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicTextFieldContext } from \"./contexts\";\nimport {\n CodeComponentMetaOverrides,\n filterHoverProps,\n HasControlContextData,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst TEXTAREA_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"hovered\" as const,\n \"disabled\" as const,\n];\n\nconst { variants } = pickAriaComponentVariants(TEXTAREA_VARIANTS);\n\nexport interface BaseTextAreaProps\n extends Omit<TextAreaProps, \"className\">,\n HasControlContextData,\n WithVariants<typeof TEXTAREA_VARIANTS> {\n className?: string;\n}\n\nexport const inputHelpers = {\n states: {\n value: {\n onChangeArgsToValue: (e: ChangeEvent<HTMLInputElement>) => {\n return e.target.value;\n },\n },\n },\n};\n\nfunction BaseTextArea_(\n props: BaseTextAreaProps,\n ref: ForwardedRef<HTMLTextAreaElement>\n) {\n const {\n className,\n plasmicUpdateVariant,\n setControlContextData,\n ...restProps\n } = props;\n\n const textFieldContext = React.useContext(PlasmicTextFieldContext);\n const [textAreaContextProps, textAreaRef] = useContextProps(\n restProps,\n ref,\n TextAreaContext\n );\n\n const { hoverProps, isHovered } = useHover(textAreaContextProps);\n const { isFocused, isFocusVisible, focusProps } = useFocusRing({\n isTextInput: true,\n autoFocus: textAreaContextProps.autoFocus,\n });\n\n const mergedProps = mergeProps(\n filterHoverProps(textAreaContextProps),\n focusProps,\n hoverProps,\n {\n style: COMMON_STYLES,\n className,\n }\n );\n\n const isDisabled = mergedProps.disabled || false;\n const isInvalid =\n !!mergedProps[\"aria-invalid\"] && mergedProps[\"aria-invalid\"] !== \"false\";\n\n setControlContextData?.({\n parent: textFieldContext,\n });\n\n useEffect(() => {\n if (plasmicUpdateVariant) {\n plasmicUpdateVariant({\n disabled: isDisabled,\n focused: isFocused,\n focusVisible: isFocusVisible,\n hovered: isHovered,\n });\n }\n }, [isFocused, isFocusVisible, isHovered, isDisabled, plasmicUpdateVariant]);\n\n return (\n <textarea\n {...mergedProps}\n ref={textAreaRef}\n data-focused={isFocused || undefined}\n data-disabled={isDisabled || undefined}\n data-hovered={isHovered || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-invalid={isInvalid || undefined}\n />\n );\n}\n\nexport const BaseTextArea = React.forwardRef(BaseTextArea_);\n\nexport function registerTextArea(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseTextArea>\n) {\n registerComponentHelper(\n loader,\n BaseTextArea,\n {\n name: makeComponentName(\"textarea\"),\n displayName: \"Aria TextArea\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerTextArea\",\n importName: \"BaseTextArea\",\n variants,\n props: {\n ...getCommonProps<BaseTextAreaProps>(\"Text Area\", [\n \"name\",\n \"disabled\",\n \"readOnly\",\n \"autoFocus\",\n \"aria-label\",\n \"required\",\n \"placeholder\",\n \"value\",\n \"maxLength\",\n \"minLength\",\n \"inputMode\",\n \"onChange\",\n \"onFocus\",\n \"onBlur\",\n \"onKeyDown\",\n \"onKeyUp\",\n \"onCopy\",\n \"onCut\",\n \"onPaste\",\n \"onCompositionStart\",\n \"onCompositionEnd\",\n \"onCompositionUpdate\",\n \"onSelect\",\n \"onBeforeInput\",\n \"onInput\",\n ]),\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"text\",\n ...inputHelpers.states.value,\n },\n },\n componentHelpers: {\n helpers: inputHelpers,\n importName: \"inputHelpers\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerTextArea\",\n },\n },\n overrides\n );\n}\n"],"names":["pickAriaComponentVariants","React","PlasmicTextFieldContext","useContextProps","TextAreaContext","useHover","useFocusRing","mergeProps","filterHoverProps","COMMON_STYLES","useEffect","registerComponentHelper","makeComponentName","getCommonProps"],"mappings":"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"}
1
+ {"version":3,"file":"registerTextArea.cjs.js","sources":["../src/registerTextArea.tsx"],"sourcesContent":["import React, { ChangeEvent, ForwardedRef, useEffect } from \"react\";\nimport { mergeProps, useFocusRing, useHover } from \"react-aria\";\nimport {\n TextAreaContext,\n TextAreaProps,\n useContextProps,\n} from \"react-aria-components\";\nimport { COMMON_STYLES, getCommonProps } from \"./common\";\nimport { PlasmicTextFieldContext } from \"./contexts\";\nimport {\n CodeComponentMetaOverrides,\n filterHoverProps,\n HasControlContextData,\n isDefined,\n makeComponentName,\n Registerable,\n registerComponentHelper,\n} from \"./utils\";\nimport { pickAriaComponentVariants, WithVariants } from \"./variant-utils\";\n\nconst TEXTAREA_VARIANTS = [\n \"focused\" as const,\n \"focusVisible\" as const,\n \"hovered\" as const,\n \"disabled\" as const,\n];\n\nconst { variants } = pickAriaComponentVariants(TEXTAREA_VARIANTS);\n\nexport interface BaseTextAreaProps\n extends Omit<TextAreaProps, \"className\">,\n HasControlContextData,\n WithVariants<typeof TEXTAREA_VARIANTS> {\n className?: string;\n}\n\nexport const inputHelpers = {\n states: {\n value: {\n onChangeArgsToValue: (e: ChangeEvent<HTMLInputElement>) => {\n return e.target.value;\n },\n },\n },\n};\n\nfunction BaseTextArea_(\n props: BaseTextAreaProps,\n ref: ForwardedRef<HTMLTextAreaElement>\n) {\n const {\n className,\n plasmicUpdateVariant,\n setControlContextData,\n value,\n ...restProps\n } = props;\n\n const textFieldContext = React.useContext(PlasmicTextFieldContext);\n const [textAreaContextProps, textAreaRef] = useContextProps(\n restProps,\n ref,\n TextAreaContext\n );\n\n const { hoverProps, isHovered } = useHover(textAreaContextProps);\n const { isFocused, isFocusVisible, focusProps } = useFocusRing({\n isTextInput: true,\n autoFocus: textAreaContextProps.autoFocus,\n });\n\n const mergedProps = mergeProps(\n filterHoverProps(textAreaContextProps),\n focusProps,\n hoverProps,\n {\n value: isDefined(textFieldContext) ? undefined : value,\n style: COMMON_STYLES,\n className,\n }\n );\n\n const isDisabled = mergedProps.disabled || false;\n const isInvalid =\n !!mergedProps[\"aria-invalid\"] && mergedProps[\"aria-invalid\"] !== \"false\";\n\n setControlContextData?.({\n parent: textFieldContext,\n });\n\n useEffect(() => {\n if (plasmicUpdateVariant) {\n plasmicUpdateVariant({\n disabled: isDisabled,\n focused: isFocused,\n focusVisible: isFocusVisible,\n hovered: isHovered,\n });\n }\n }, [isFocused, isFocusVisible, isHovered, isDisabled, plasmicUpdateVariant]);\n\n return (\n <textarea\n {...mergedProps}\n ref={textAreaRef}\n data-focused={isFocused || undefined}\n data-disabled={isDisabled || undefined}\n data-hovered={isHovered || undefined}\n data-focus-visible={isFocusVisible || undefined}\n data-invalid={isInvalid || undefined}\n />\n );\n}\n\nexport const BaseTextArea = React.forwardRef(BaseTextArea_);\n\nexport function registerTextArea(\n loader?: Registerable,\n overrides?: CodeComponentMetaOverrides<typeof BaseTextArea>\n) {\n registerComponentHelper(\n loader,\n BaseTextArea,\n {\n name: makeComponentName(\"textarea\"),\n displayName: \"Aria TextArea\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerTextArea\",\n importName: \"BaseTextArea\",\n variants,\n props: {\n ...getCommonProps<BaseTextAreaProps>(\"Text Area\", [\n \"name\",\n \"disabled\",\n \"readOnly\",\n \"autoFocus\",\n \"aria-label\",\n \"required\",\n \"placeholder\",\n \"value\",\n \"maxLength\",\n \"minLength\",\n \"inputMode\",\n \"onChange\",\n \"onFocus\",\n \"onBlur\",\n \"onKeyDown\",\n \"onKeyUp\",\n \"onCopy\",\n \"onCut\",\n \"onPaste\",\n \"onCompositionStart\",\n \"onCompositionEnd\",\n \"onCompositionUpdate\",\n \"onSelect\",\n \"onBeforeInput\",\n \"onInput\",\n ]),\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"text\",\n ...inputHelpers.states.value,\n },\n },\n componentHelpers: {\n helpers: inputHelpers,\n importName: \"inputHelpers\",\n importPath: \"@plasmicpkgs/react-aria/skinny/registerTextArea\",\n },\n },\n overrides\n );\n}\n"],"names":["pickAriaComponentVariants","React","PlasmicTextFieldContext","useContextProps","TextAreaContext","useHover","useFocusRing","mergeProps","filterHoverProps","isDefined","COMMON_STYLES","useEffect","registerComponentHelper","makeComponentName","getCommonProps"],"mappings":"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"}