@plasmicpkgs/react-aria 0.0.71 → 0.0.72

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 (128) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/react-aria.esm.js +53 -48
  3. package/dist/react-aria.esm.js.map +1 -1
  4. package/dist/react-aria.js +52 -47
  5. package/dist/react-aria.js.map +1 -1
  6. package/dist/utils.d.ts +5 -0
  7. package/package.json +2 -2
  8. package/skinny/{common-0c4336fe.esm.js → common-70efdf8a.esm.js} +2 -2
  9. package/skinny/{common-0c4336fe.esm.js.map → common-70efdf8a.esm.js.map} +1 -1
  10. package/skinny/{common-2e984ab4.cjs.js → common-f6de262a.cjs.js} +2 -2
  11. package/skinny/{common-2e984ab4.cjs.js.map → common-f6de262a.cjs.js.map} +1 -1
  12. package/skinny/registerButton.cjs.js +3 -2
  13. package/skinny/registerButton.cjs.js.map +1 -1
  14. package/skinny/registerButton.esm.js +3 -2
  15. package/skinny/registerButton.esm.js.map +1 -1
  16. package/skinny/registerCheckbox.cjs.js +3 -2
  17. package/skinny/registerCheckbox.cjs.js.map +1 -1
  18. package/skinny/registerCheckbox.esm.js +3 -2
  19. package/skinny/registerCheckbox.esm.js.map +1 -1
  20. package/skinny/registerCheckboxGroup.cjs.js +3 -2
  21. package/skinny/registerCheckboxGroup.cjs.js.map +1 -1
  22. package/skinny/registerCheckboxGroup.esm.js +3 -2
  23. package/skinny/registerCheckboxGroup.esm.js.map +1 -1
  24. package/skinny/registerComboBox.cjs.js +17 -20
  25. package/skinny/registerComboBox.cjs.js.map +1 -1
  26. package/skinny/registerComboBox.esm.js +17 -20
  27. package/skinny/registerComboBox.esm.js.map +1 -1
  28. package/skinny/registerDescription.cjs.js +2 -1
  29. package/skinny/registerDescription.cjs.js.map +1 -1
  30. package/skinny/registerDescription.esm.js +2 -1
  31. package/skinny/registerDescription.esm.js.map +1 -1
  32. package/skinny/registerDialogTrigger.cjs.js +2 -2
  33. package/skinny/registerDialogTrigger.esm.js +2 -2
  34. package/skinny/registerFieldError.cjs.js +2 -1
  35. package/skinny/registerFieldError.cjs.js.map +1 -1
  36. package/skinny/registerFieldError.esm.js +2 -1
  37. package/skinny/registerFieldError.esm.js.map +1 -1
  38. package/skinny/registerForm.cjs.js +2 -1
  39. package/skinny/registerForm.cjs.js.map +1 -1
  40. package/skinny/registerForm.esm.js +2 -1
  41. package/skinny/registerForm.esm.js.map +1 -1
  42. package/skinny/registerHeading.cjs.js +2 -1
  43. package/skinny/registerHeading.cjs.js.map +1 -1
  44. package/skinny/registerHeading.esm.js +2 -1
  45. package/skinny/registerHeading.esm.js.map +1 -1
  46. package/skinny/registerInput.cjs.js +3 -2
  47. package/skinny/registerInput.cjs.js.map +1 -1
  48. package/skinny/registerInput.esm.js +3 -2
  49. package/skinny/registerInput.esm.js.map +1 -1
  50. package/skinny/registerLabel.cjs.js +2 -1
  51. package/skinny/registerLabel.cjs.js.map +1 -1
  52. package/skinny/registerLabel.esm.js +2 -1
  53. package/skinny/registerLabel.esm.js.map +1 -1
  54. package/skinny/{registerListBox-5d740ec8.esm.js → registerListBox-3beb3a9f.esm.js} +2 -2
  55. package/skinny/{registerListBox-5d740ec8.esm.js.map → registerListBox-3beb3a9f.esm.js.map} +1 -1
  56. package/skinny/{registerListBox-44b5ecda.cjs.js → registerListBox-3f613b40.cjs.js} +2 -2
  57. package/skinny/{registerListBox-44b5ecda.cjs.js.map → registerListBox-3f613b40.cjs.js.map} +1 -1
  58. package/skinny/registerListBox.cjs.js +3 -2
  59. package/skinny/registerListBox.cjs.js.map +1 -1
  60. package/skinny/registerListBox.esm.js +3 -2
  61. package/skinny/registerListBox.esm.js.map +1 -1
  62. package/skinny/registerListBoxItem.cjs.js +2 -1
  63. package/skinny/registerListBoxItem.cjs.js.map +1 -1
  64. package/skinny/registerListBoxItem.esm.js +2 -1
  65. package/skinny/registerListBoxItem.esm.js.map +1 -1
  66. package/skinny/registerModal.cjs.js +2 -2
  67. package/skinny/registerModal.esm.js +2 -2
  68. package/skinny/registerPopover.cjs.js +8 -13
  69. package/skinny/registerPopover.cjs.js.map +1 -1
  70. package/skinny/registerPopover.esm.js +8 -13
  71. package/skinny/registerPopover.esm.js.map +1 -1
  72. package/skinny/registerRadio.cjs.js +3 -2
  73. package/skinny/registerRadio.cjs.js.map +1 -1
  74. package/skinny/registerRadio.esm.js +3 -2
  75. package/skinny/registerRadio.esm.js.map +1 -1
  76. package/skinny/registerRadioGroup.cjs.js +3 -2
  77. package/skinny/registerRadioGroup.cjs.js.map +1 -1
  78. package/skinny/registerRadioGroup.esm.js +3 -2
  79. package/skinny/registerRadioGroup.esm.js.map +1 -1
  80. package/skinny/registerSection.cjs.js +2 -1
  81. package/skinny/registerSection.cjs.js.map +1 -1
  82. package/skinny/registerSection.esm.js +2 -1
  83. package/skinny/registerSection.esm.js.map +1 -1
  84. package/skinny/registerSelect.cjs.js +16 -22
  85. package/skinny/registerSelect.cjs.js.map +1 -1
  86. package/skinny/registerSelect.esm.js +17 -23
  87. package/skinny/registerSelect.esm.js.map +1 -1
  88. package/skinny/registerSlider.cjs.js +3 -2
  89. package/skinny/registerSlider.cjs.js.map +1 -1
  90. package/skinny/registerSlider.esm.js +3 -2
  91. package/skinny/registerSlider.esm.js.map +1 -1
  92. package/skinny/registerSliderOutput.cjs.js +2 -1
  93. package/skinny/registerSliderOutput.cjs.js.map +1 -1
  94. package/skinny/registerSliderOutput.esm.js +2 -1
  95. package/skinny/registerSliderOutput.esm.js.map +1 -1
  96. package/skinny/registerSliderThumb.cjs.js +3 -2
  97. package/skinny/registerSliderThumb.cjs.js.map +1 -1
  98. package/skinny/registerSliderThumb.esm.js +3 -2
  99. package/skinny/registerSliderThumb.esm.js.map +1 -1
  100. package/skinny/registerSliderTrack.cjs.js +2 -1
  101. package/skinny/registerSliderTrack.cjs.js.map +1 -1
  102. package/skinny/registerSliderTrack.esm.js +2 -1
  103. package/skinny/registerSliderTrack.esm.js.map +1 -1
  104. package/skinny/registerSwitch.cjs.js +3 -2
  105. package/skinny/registerSwitch.cjs.js.map +1 -1
  106. package/skinny/registerSwitch.esm.js +3 -2
  107. package/skinny/registerSwitch.esm.js.map +1 -1
  108. package/skinny/registerText.cjs.js +2 -1
  109. package/skinny/registerText.cjs.js.map +1 -1
  110. package/skinny/registerText.esm.js +2 -1
  111. package/skinny/registerText.esm.js.map +1 -1
  112. package/skinny/registerTextArea.cjs.js +3 -2
  113. package/skinny/registerTextArea.cjs.js.map +1 -1
  114. package/skinny/registerTextArea.esm.js +3 -2
  115. package/skinny/registerTextArea.esm.js.map +1 -1
  116. package/skinny/registerTextField.cjs.js +3 -2
  117. package/skinny/registerTextField.cjs.js.map +1 -1
  118. package/skinny/registerTextField.esm.js +3 -2
  119. package/skinny/registerTextField.esm.js.map +1 -1
  120. package/skinny/registerTooltip.cjs.js +1 -1
  121. package/skinny/registerTooltip.esm.js +1 -1
  122. package/skinny/{utils-c7662a47.esm.js → utils-25448fbd.esm.js} +23 -2
  123. package/skinny/utils-25448fbd.esm.js.map +1 -0
  124. package/skinny/{utils-8dbb4d1f.cjs.js → utils-3e796b18.cjs.js} +23 -1
  125. package/skinny/utils-3e796b18.cjs.js.map +1 -0
  126. package/skinny/utils.d.ts +5 -0
  127. package/skinny/utils-8dbb4d1f.cjs.js.map +0 -1
  128. package/skinny/utils-c7662a47.esm.js.map +0 -1
@@ -2,8 +2,8 @@
2
2
 
3
3
  var React = require('react');
4
4
  var reactAriaComponents = require('react-aria-components');
5
- var registerComponent = require('@plasmicapp/host/registerComponent');
6
5
  var host = require('@plasmicapp/host');
6
+ var registerComponent = require('@plasmicapp/host/registerComponent');
7
7
  var reactAria = require('react-aria');
8
8
  var utils = require('@react-aria/utils');
9
9
  var flattenChildren = require('react-keyed-flatten-children');
@@ -33,6 +33,25 @@ var __spreadValues$r = (a, b) => {
33
33
  return a;
34
34
  };
35
35
  var __spreadProps$h = (a, b) => __defProps$h(a, __getOwnPropDescs$h(b));
36
+ function useAutoOpen({
37
+ props,
38
+ open,
39
+ close
40
+ }) {
41
+ var _a, _b;
42
+ const inPlasmicCanvas = !!host.usePlasmicCanvasContext();
43
+ const isSelected = (_b = (_a = host.usePlasmicCanvasComponentInfo(props)) == null ? void 0 : _a.isSelected) != null ? _b : false;
44
+ React.useEffect(() => {
45
+ if (!inPlasmicCanvas) {
46
+ return;
47
+ }
48
+ if (isSelected) {
49
+ open == null ? void 0 : open();
50
+ } else {
51
+ close == null ? void 0 : close();
52
+ }
53
+ }, [isSelected, inPlasmicCanvas]);
54
+ }
36
55
  function registerComponentHelper(loader, component, meta, overrides) {
37
56
  var _a;
38
57
  meta = __spreadProps$h(__spreadValues$r({}, meta), {
@@ -2096,27 +2115,22 @@ function BasePopover(props) {
2096
2115
  const isStandalone = !React__default.default.useContext(reactAriaComponents.PopoverContext);
2097
2116
  const context = React__default.default.useContext(PlasmicPopoverContext);
2098
2117
  const triggerRef = React__default.default.useRef(null);
2099
- const isEditMode = !!host.usePlasmicCanvasContext();
2118
+ const canvasContext = host.usePlasmicCanvasContext();
2100
2119
  const _b = utils.mergeProps(
2101
2120
  {
2102
- isOpen: context == null ? void 0 : context.isOpen
2121
+ isOpen: context == null ? void 0 : context.isOpen,
2122
+ // isNonModal: Whether the popover is non-modal, i.e. elements outside the popover may be interacted with by assistive technologies.
2123
+ // Setting isNonModal to true in edit mode (canvas) means that the popover will not prevent the user from interacting with the canvas while the popover is open.
2124
+ isNonModal: canvasContext && !canvasContext.interactive
2103
2125
  },
2104
- /**
2105
- * isNonModal: Whether the popover is non-modal, i.e. elements outside the popover may be interacted with by assistive technologies. *
2106
- *
2107
- * Setting isNonModal to true in edit mode (canvas) means that the popover will not prevent the user from interacting with the canvas while the popover is open.
2108
- */
2109
- isEditMode ? { isNonModal: true } : null,
2110
2126
  restProps,
2111
2127
  { className: `${resetClassName}` },
2112
2128
  // Override some props if the popover is standalone
2113
2129
  isStandalone ? {
2114
2130
  triggerRef,
2115
2131
  isNonModal: true,
2116
- /**
2117
- * Always true, because we assume that popover is always going to be controlled by a parent like Select, Combobox, DialogTrigger, etc, and its only really standalone in component view
2118
- * In component view, we never want to start with an empty artboard, so isOpen has to be true
2119
- * */
2132
+ // Always true, because we assume that popover is always going to be controlled by a parent like Select, Combobox, DialogTrigger, etc, and its only really standalone in component view
2133
+ // In component view, we never want to start with an empty artboard, so isOpen has to be true
2120
2134
  isOpen: true
2121
2135
  } : null
2122
2136
  ), { children } = _b, mergedProps = __objRest$d(_b, ["children"]);
@@ -2263,24 +2277,21 @@ var __objRest$c = (source, exclude) => {
2263
2277
  };
2264
2278
  const COMBOBOX_NAME = makeComponentName("combobox");
2265
2279
  function ComboboxAutoOpen(props) {
2266
- var _a, _b;
2267
- const isEditMode = !!host.usePlasmicCanvasContext();
2268
- const { isSelected } = (_a = host.usePlasmicCanvasComponentInfo(props)) != null ? _a : {};
2269
- const { open, close } = (_b = React__default.default.useContext(reactAriaComponents.ComboBoxStateContext)) != null ? _b : {};
2270
- React.useEffect(() => {
2271
- if (!isEditMode) {
2272
- return;
2273
- }
2274
- if (isSelected) {
2275
- open == null ? void 0 : open(void 0, "manual");
2276
- } else {
2277
- close == null ? void 0 : close();
2278
- }
2279
- }, [isSelected, isEditMode]);
2280
+ var _a;
2281
+ const { open, close } = (_a = React__default.default.useContext(reactAriaComponents.ComboBoxStateContext)) != null ? _a : {};
2282
+ useAutoOpen({ props, open, close });
2280
2283
  return null;
2281
2284
  }
2282
2285
  function BaseComboBox(props) {
2283
- const _a = props, { children, setControlContextData, isOpen } = _a, rest = __objRest$c(_a, ["children", "setControlContextData", "isOpen"]);
2286
+ const _a = props, {
2287
+ children,
2288
+ setControlContextData,
2289
+ isOpen: _isOpen
2290
+ } = _a, rest = __objRest$c(_a, [
2291
+ "children",
2292
+ "setControlContextData",
2293
+ "isOpen"
2294
+ ]);
2284
2295
  const idManager = React.useMemo(() => new ListBoxItemIdManager(), []);
2285
2296
  React.useEffect(() => {
2286
2297
  idManager.subscribe((ids) => {
@@ -2289,7 +2300,7 @@ function BaseComboBox(props) {
2289
2300
  });
2290
2301
  });
2291
2302
  }, []);
2292
- return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.ComboBox, __spreadValues$e({}, rest), /* @__PURE__ */ React__default.default.createElement(PlasmicPopoverContext.Provider, { value: { isOpen } }, /* @__PURE__ */ React__default.default.createElement(
2303
+ return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.ComboBox, __spreadValues$e({}, rest), /* @__PURE__ */ React__default.default.createElement(PlasmicPopoverContext.Provider, { value: {} }, /* @__PURE__ */ React__default.default.createElement(
2293
2304
  PlasmicListBoxContext.Provider,
2294
2305
  {
2295
2306
  value: {
@@ -3139,13 +3150,19 @@ var __spreadValues$8 = (a, b) => {
3139
3150
  return a;
3140
3151
  };
3141
3152
  var __spreadProps$5 = (a, b) => __defProps$5(a, __getOwnPropDescs$5(b));
3153
+ function SelectAutoOpen(props) {
3154
+ var _a;
3155
+ const { open, close } = (_a = React__default.default.useContext(reactAriaComponents.SelectStateContext)) != null ? _a : {};
3156
+ useAutoOpen({ props, open, close });
3157
+ return null;
3158
+ }
3142
3159
  const BaseSelectValue = (props) => {
3143
- const { children, customize } = props;
3144
- return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.SelectValue, null, ({ isPlaceholder, selectedText }) => /* @__PURE__ */ React__default.default.createElement(React__default.default.Fragment, null, isPlaceholder ? /* @__PURE__ */ React__default.default.createElement("span", null, "Select an item") : /* @__PURE__ */ React__default.default.createElement(React__default.default.Fragment, null, /* @__PURE__ */ React__default.default.createElement("span", null, customize ? children : selectedText))));
3160
+ const { children, customize, className } = props;
3161
+ const placeholder = customize ? children : "Select an item";
3162
+ return /* @__PURE__ */ React__default.default.createElement(reactAriaComponents.SelectValue, { className }, ({ isPlaceholder, selectedText }) => /* @__PURE__ */ React__default.default.createElement(React__default.default.Fragment, null, isPlaceholder ? placeholder : selectedText));
3145
3163
  };
3146
3164
  const SELECT_NAME = makeComponentName("select");
3147
3165
  function BaseSelect(props) {
3148
- var _a, _b;
3149
3166
  const {
3150
3167
  selectedKey,
3151
3168
  onSelectionChange,
@@ -3157,12 +3174,9 @@ function BaseSelect(props) {
3157
3174
  children,
3158
3175
  disabledKeys,
3159
3176
  name,
3160
- isOpen,
3161
3177
  setControlContextData,
3162
3178
  "aria-label": ariaLabel
3163
3179
  } = props;
3164
- const { isSelected } = (_a = host.usePlasmicCanvasComponentInfo(props)) != null ? _a : {};
3165
- const _isOpen = (_b = isSelected || isOpen) != null ? _b : false;
3166
3180
  let idManager = React.useMemo(() => new ListBoxItemIdManager(), []);
3167
3181
  React.useEffect(() => {
3168
3182
  idManager.subscribe((ids) => {
@@ -3183,10 +3197,10 @@ function BaseSelect(props) {
3183
3197
  style,
3184
3198
  name,
3185
3199
  disabledKeys,
3186
- "aria-label": ariaLabel,
3187
- isOpen: _isOpen
3200
+ "aria-label": ariaLabel
3188
3201
  }, extractPlasmicDataProps(props)),
3189
- /* @__PURE__ */ React__default.default.createElement(PlasmicPopoverContext.Provider, { value: { isOpen: _isOpen } }, /* @__PURE__ */ React__default.default.createElement(
3202
+ /* @__PURE__ */ React__default.default.createElement(SelectAutoOpen, __spreadValues$8({}, props)),
3203
+ /* @__PURE__ */ React__default.default.createElement(PlasmicPopoverContext.Provider, { value: {} }, /* @__PURE__ */ React__default.default.createElement(
3190
3204
  PlasmicListBoxContext.Provider,
3191
3205
  {
3192
3206
  value: {
@@ -3218,15 +3232,6 @@ function registerSelect(loader) {
3218
3232
  }
3219
3233
  ],
3220
3234
  hidden: (props) => !props.customize
3221
- },
3222
- className: {
3223
- type: "class",
3224
- selectors: [
3225
- {
3226
- selector: ":self[data-placeholder]",
3227
- label: "Placeholder"
3228
- }
3229
- ]
3230
3235
  }
3231
3236
  },
3232
3237
  trapsFocus: true