react-aria-components 1.0.0-alpha.2 → 1.0.0-alpha.4

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.
package/dist/import.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import {DIRECTORY_DRAG_TYPE as $67da31f5140672c4$re_export$DIRECTORY_DRAG_TYPE, isDirectoryDropItem as $67da31f5140672c4$re_export$isDirectoryDropItem, isFileDropItem as $67da31f5140672c4$re_export$isFileDropItem, isTextDropItem as $67da31f5140672c4$re_export$isTextDropItem, SSRProvider as $67da31f5140672c4$re_export$SSRProvider, useBreadcrumbs as $dGqE5$useBreadcrumbs, useIsSSR as $dGqE5$useIsSSR, mergeProps as $dGqE5$mergeProps, useLink as $dGqE5$useLink, useHover as $dGqE5$useHover, useFocusRing as $dGqE5$useFocusRing, useButton as $dGqE5$useButton, useLocale as $dGqE5$useLocale, useCalendar as $dGqE5$useCalendar, VisuallyHidden as $dGqE5$VisuallyHidden, useRangeCalendar as $dGqE5$useRangeCalendar, useCalendarGrid as $dGqE5$useCalendarGrid, useCalendarCell as $dGqE5$useCalendarCell, useCheckboxGroup as $dGqE5$useCheckboxGroup, useCheckboxGroupItem as $dGqE5$useCheckboxGroupItem, useCheckbox as $dGqE5$useCheckbox, usePress as $dGqE5$usePress, useFilter as $dGqE5$useFilter, useComboBox as $dGqE5$useComboBox, useListBox as $dGqE5$useListBox, ListKeyboardDelegate as $dGqE5$ListKeyboardDelegate, FocusScope as $dGqE5$FocusScope, useListBoxSection as $dGqE5$useListBoxSection, useOption as $dGqE5$useOption, useDraggableCollection as $dGqE5$useDraggableCollection, useDraggableItem as $dGqE5$useDraggableItem, DragPreview as $dGqE5$DragPreview, useDroppableItem as $dGqE5$useDroppableItem, useDroppableCollection as $dGqE5$useDroppableCollection, useDropIndicator as $dGqE5$useDropIndicator, ListDropTargetDelegate as $dGqE5$ListDropTargetDelegate, useSeparator as $dGqE5$useSeparator, usePopover as $dGqE5$usePopover, Overlay as $dGqE5$Overlay, DismissButton as $dGqE5$DismissButton, useDateField as $dGqE5$useDateField, useTimeField as $dGqE5$useTimeField, useDateSegment as $dGqE5$useDateSegment, useDatePicker as $dGqE5$useDatePicker, useDateRangePicker as $dGqE5$useDateRangePicker, useOverlayTrigger as $dGqE5$useOverlayTrigger, useDialog as $dGqE5$useDialog, useModalOverlay as $dGqE5$useModalOverlay, useGridList as $dGqE5$useGridList, useGridListItem as $dGqE5$useGridListItem, useGridListSelectionCheckbox as $dGqE5$useGridListSelectionCheckbox, useVisuallyHidden as $dGqE5$useVisuallyHidden, useMenuTrigger as $dGqE5$useMenuTrigger, useMenu as $dGqE5$useMenu, useMenuSection as $dGqE5$useMenuSection, useMenuItem as $dGqE5$useMenuItem, useMeter as $dGqE5$useMeter, useNumberField as $dGqE5$useNumberField, useProgressBar as $dGqE5$useProgressBar, useRadioGroup as $dGqE5$useRadioGroup, useRadio as $dGqE5$useRadio, useSearchField as $dGqE5$useSearchField, useSelect as $dGqE5$useSelect, HiddenSelect as $dGqE5$HiddenSelect, useNumberFormatter as $dGqE5$useNumberFormatter, useSlider as $dGqE5$useSlider, useSliderThumb as $dGqE5$useSliderThumb, useSwitch as $dGqE5$useSwitch, useTable as $dGqE5$useTable, useTableRowGroup as $dGqE5$useTableRowGroup, useTableHeaderRow as $dGqE5$useTableHeaderRow, useTableSelectAllCheckbox as $dGqE5$useTableSelectAllCheckbox, useTableColumnHeader as $dGqE5$useTableColumnHeader, useTableRow as $dGqE5$useTableRow, useTableSelectionCheckbox as $dGqE5$useTableSelectionCheckbox, useTableCell as $dGqE5$useTableCell, useTabList as $dGqE5$useTabList, useTab as $dGqE5$useTab, useTabPanel as $dGqE5$useTabPanel, useTextField as $dGqE5$useTextField, useToggleButton as $dGqE5$useToggleButton, useTooltipTrigger as $dGqE5$useTooltipTrigger, OverlayContainer as $dGqE5$OverlayContainer, useOverlayPosition as $dGqE5$useOverlayPosition, useTooltip as $dGqE5$useTooltip} from "react-aria";
2
- import {filterDOMProps as $dGqE5$filterDOMProps, useLayoutEffect as $dGqE5$useLayoutEffect, useObjectRef as $dGqE5$useObjectRef, mergeRefs as $dGqE5$mergeRefs, mergeProps as $dGqE5$mergeProps1, useResizeObserver as $dGqE5$useResizeObserver, useViewportSize as $dGqE5$useViewportSize, isWebKit as $dGqE5$isWebKit, isIOS as $dGqE5$isIOS} from "@react-aria/utils";
2
+ import {filterDOMProps as $dGqE5$filterDOMProps, useObjectRef as $dGqE5$useObjectRef, mergeRefs as $dGqE5$mergeRefs, mergeProps as $dGqE5$mergeProps1, useLayoutEffect as $dGqE5$useLayoutEffect, useResizeObserver as $dGqE5$useResizeObserver, useViewportSize as $dGqE5$useViewportSize, isWebKit as $dGqE5$isWebKit, isIOS as $dGqE5$isIOS} from "@react-aria/utils";
3
3
  import $dGqE5$react, {createContext as $dGqE5$createContext, forwardRef as $dGqE5$forwardRef, useMemo as $dGqE5$useMemo, cloneElement as $dGqE5$cloneElement, useCallback as $dGqE5$useCallback, useContext as $dGqE5$useContext, useEffect as $dGqE5$useEffect, useState as $dGqE5$useState, useRef as $dGqE5$useRef} from "react";
4
4
  import $dGqE5$swchelperssrc_define_propertymjs from "@swc/helpers/src/_define_property.mjs";
5
- import {createPortal as $dGqE5$createPortal} from "react-dom";
5
+ import $dGqE5$reactdom, {createPortal as $dGqE5$createPortal} from "react-dom";
6
6
  import {useSyncExternalStore as $dGqE5$useSyncExternalStore} from "use-sync-external-store/shim/index.js";
7
7
  import {createCalendar as $dGqE5$createCalendar, endOfMonth as $dGqE5$endOfMonth, getWeeksInMonth as $dGqE5$getWeeksInMonth, isSameMonth as $dGqE5$isSameMonth, isSameDay as $dGqE5$isSameDay} from "@internationalized/date";
8
8
  import {useCalendarState as $dGqE5$useCalendarState, useRangeCalendarState as $dGqE5$useRangeCalendarState, useCheckboxGroupState as $dGqE5$useCheckboxGroupState, useToggleState as $dGqE5$useToggleState, useComboBoxState as $dGqE5$useComboBoxState, useListState as $dGqE5$useListState, useDraggableCollectionState as $dGqE5$useDraggableCollectionState, useDroppableCollectionState as $dGqE5$useDroppableCollectionState, useDateFieldState as $dGqE5$useDateFieldState, useTimeFieldState as $dGqE5$useTimeFieldState, useDatePickerState as $dGqE5$useDatePickerState, useDateRangePickerState as $dGqE5$useDateRangePickerState, useOverlayTriggerState as $dGqE5$useOverlayTriggerState, useMenuTriggerState as $dGqE5$useMenuTriggerState, useTreeState as $dGqE5$useTreeState, useNumberFieldState as $dGqE5$useNumberFieldState, useRadioGroupState as $dGqE5$useRadioGroupState, useSearchFieldState as $dGqE5$useSearchFieldState, useSelectState as $dGqE5$useSelectState, useSliderState as $dGqE5$useSliderState, useTableState as $dGqE5$useTableState, useTabListState as $dGqE5$useTabListState, useTooltipTriggerState as $dGqE5$useTooltipTriggerState} from "react-stately";
@@ -45,7 +45,6 @@ import {FocusableProvider as $dGqE5$FocusableProvider} from "@react-aria/focus";
45
45
 
46
46
 
47
47
 
48
-
49
48
  class $7135fc7d473fd974$export$f5d856d854e74713 {
50
49
  get childNodes() {
51
50
  throw new Error("childNodes is not supported");
@@ -102,37 +101,38 @@ let $7135fc7d473fd974$var$_Symbol_iterator = Symbol.iterator;
102
101
  }
103
102
  set firstChild(firstChild) {
104
103
  this._firstChild = firstChild;
105
- this.ownerDocument.dirtyNodes.add(this);
104
+ this.ownerDocument.markDirty(this);
106
105
  }
107
106
  get lastChild() {
108
107
  return this._lastChild;
109
108
  }
110
109
  set lastChild(lastChild) {
111
110
  this._lastChild = lastChild;
112
- this.ownerDocument.dirtyNodes.add(this);
111
+ this.ownerDocument.markDirty(this);
113
112
  }
114
113
  get previousSibling() {
115
114
  return this._previousSibling;
116
115
  }
117
116
  set previousSibling(previousSibling) {
118
117
  this._previousSibling = previousSibling;
119
- this.ownerDocument.dirtyNodes.add(this);
118
+ this.ownerDocument.markDirty(this);
120
119
  }
121
120
  get nextSibling() {
122
121
  return this._nextSibling;
123
122
  }
124
123
  set nextSibling(nextSibling) {
125
124
  this._nextSibling = nextSibling;
126
- this.ownerDocument.dirtyNodes.add(this);
125
+ this.ownerDocument.markDirty(this);
127
126
  }
128
127
  get parentNode() {
129
128
  return this._parentNode;
130
129
  }
131
130
  set parentNode(parentNode) {
132
131
  this._parentNode = parentNode;
133
- this.ownerDocument.dirtyNodes.add(this);
132
+ this.ownerDocument.markDirty(this);
134
133
  }
135
134
  appendChild(child) {
135
+ this.ownerDocument.startTransaction();
136
136
  if (child.parentNode) child.parentNode.removeChild(child);
137
137
  if (this.firstChild == null) this.firstChild = child;
138
138
  if (this.lastChild) {
@@ -146,11 +146,16 @@ let $7135fc7d473fd974$var$_Symbol_iterator = Symbol.iterator;
146
146
  child.parentNode = this;
147
147
  child.nextSibling = null;
148
148
  this.lastChild = child;
149
- this.ownerDocument.dirtyNodes.add(this);
149
+ this.ownerDocument.markDirty(this);
150
+ if (child.hasSetProps) // Only add the node to the collection if we already received props for it.
151
+ // Otherwise wait until then so we have the correct id for the node.
150
152
  this.ownerDocument.addNode(child);
153
+ this.ownerDocument.endTransaction();
154
+ this.ownerDocument.queueUpdate();
151
155
  }
152
156
  insertBefore(newNode, referenceNode) {
153
157
  if (referenceNode == null) return this.appendChild(newNode);
158
+ this.ownerDocument.startTransaction();
154
159
  if (newNode.parentNode) newNode.parentNode.removeChild(newNode);
155
160
  newNode.nextSibling = referenceNode;
156
161
  newNode.previousSibling = referenceNode.previousSibling;
@@ -164,10 +169,13 @@ let $7135fc7d473fd974$var$_Symbol_iterator = Symbol.iterator;
164
169
  node.index++;
165
170
  node = node.nextSibling;
166
171
  }
167
- this.ownerDocument.addNode(newNode);
172
+ if (newNode.hasSetProps) this.ownerDocument.addNode(newNode);
173
+ this.ownerDocument.endTransaction();
174
+ this.ownerDocument.queueUpdate();
168
175
  }
169
176
  removeChild(child) {
170
177
  if (child.parentNode !== this) return;
178
+ this.ownerDocument.startTransaction();
171
179
  let node = child.nextSibling;
172
180
  while(node){
173
181
  node.index--;
@@ -182,6 +190,8 @@ let $7135fc7d473fd974$var$_Symbol_iterator = Symbol.iterator;
182
190
  child.previousSibling = null;
183
191
  child.index = 0;
184
192
  this.ownerDocument.removeNode(child);
193
+ this.ownerDocument.endTransaction();
194
+ this.ownerDocument.queueUpdate();
185
195
  }
186
196
  addEventListener() {}
187
197
  removeEventListener() {}
@@ -195,18 +205,13 @@ let $7135fc7d473fd974$var$_Symbol_iterator = Symbol.iterator;
195
205
  }
196
206
  }
197
207
  let $7135fc7d473fd974$var$id = 0;
198
- const $7135fc7d473fd974$var$TYPE_MAP = {
199
- hr: "separator",
200
- optgroup: "section",
201
- option: "item"
202
- };
203
208
  class $7135fc7d473fd974$export$dc064fe9e59310fd extends $7135fc7d473fd974$var$BaseNode {
204
209
  get index() {
205
210
  return this._index;
206
211
  }
207
212
  set index(index) {
208
213
  this._index = index;
209
- this.ownerDocument.dirtyNodes.add(this);
214
+ this.ownerDocument.markDirty(this);
210
215
  }
211
216
  get level() {
212
217
  if (this.parentNode instanceof $7135fc7d473fd974$export$dc064fe9e59310fd) return this.parentNode.level + (this.node.type === "item" ? 1 : 0);
@@ -228,30 +233,32 @@ class $7135fc7d473fd974$export$dc064fe9e59310fd extends $7135fc7d473fd974$var$Ba
228
233
  var _this_lastChild_node_key;
229
234
  node.lastChildKey = (_this_lastChild_node_key = (_this_lastChild = this.lastChild) === null || _this_lastChild === void 0 ? void 0 : _this_lastChild.node.key) !== null && _this_lastChild_node_key !== void 0 ? _this_lastChild_node_key : null;
230
235
  }
231
- // Special property that React passes through as an object rather than a string via setAttribute.
232
- // See below for details.
233
- set multiple(obj) {
236
+ setProps(obj, ref, rendered) {
234
237
  let node = this.ownerDocument.getMutableNode(this);
235
- let { rendered: rendered , value: value , textValue: textValue , id: id , ...props } = obj;
238
+ let { value: value , textValue: textValue , id: id , ...props } = obj;
239
+ props.ref = ref;
236
240
  node.props = props;
237
241
  node.rendered = rendered;
238
242
  node.value = value;
239
243
  node.textValue = textValue || (typeof rendered === "string" ? rendered : "") || obj["aria-label"] || "";
240
244
  if (id != null && id !== node.key) {
241
- if (this.parentNode) throw new Error("Cannot change the id of an item");
245
+ if (this.hasSetProps) throw new Error("Cannot change the id of an item");
242
246
  node.key = id;
243
247
  }
248
+ // If this is the first time props have been set, end the transaction started in the constructor
249
+ // so this node can be emitted.
250
+ if (!this.hasSetProps) {
251
+ this.ownerDocument.addNode(this);
252
+ this.ownerDocument.endTransaction();
253
+ this.hasSetProps = true;
254
+ }
255
+ this.ownerDocument.queueUpdate();
244
256
  }
245
257
  get style() {
246
- let node = this.ownerDocument.getMutableNode(this);
247
- if (!node.props.style) node.props.style = {};
248
- return node.props.style;
258
+ return {};
249
259
  }
250
260
  hasAttribute() {}
251
- setAttribute(key, value) {
252
- let node = this.ownerDocument.getMutableNode(this);
253
- if (key in node) node[key] = value;
254
- }
261
+ setAttribute() {}
255
262
  setAttributeNS() {}
256
263
  removeAttribute() {}
257
264
  constructor(type, ownerDocument){
@@ -259,7 +266,12 @@ class $7135fc7d473fd974$export$dc064fe9e59310fd extends $7135fc7d473fd974$var$Ba
259
266
  (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "nodeType", 8) // COMMENT_NODE (we'd use ELEMENT_NODE but React DevTools will fail to get its dimensions)
260
267
  ;
261
268
  (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "_index", 0);
262
- this.node = new $7135fc7d473fd974$export$f5d856d854e74713($7135fc7d473fd974$var$TYPE_MAP[type] || type, `react-aria-${++$7135fc7d473fd974$var$id}`);
269
+ (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "hasSetProps", false);
270
+ this.node = new $7135fc7d473fd974$export$f5d856d854e74713(type, `react-aria-${++$7135fc7d473fd974$var$id}`);
271
+ // Start a transaction so that no updates are emitted from the collection
272
+ // until the props for this node are set. We don't know the real id for the
273
+ // node until then, so we need to avoid emitting collections in an inconsistent state.
274
+ this.ownerDocument.startTransaction();
263
275
  }
264
276
  }
265
277
  let $7135fc7d473fd974$var$_Symbol_iterator1 = Symbol.iterator;
@@ -374,7 +386,7 @@ class $7135fc7d473fd974$export$b34a105447964f9f extends $7135fc7d473fd974$var$Ba
374
386
  this.mutatedNodes.add(element);
375
387
  element.node = node;
376
388
  }
377
- this.dirtyNodes.add(element);
389
+ this.markDirty(element);
378
390
  return node;
379
391
  }
380
392
  getMutableCollection() {
@@ -384,13 +396,22 @@ class $7135fc7d473fd974$export$b34a105447964f9f extends $7135fc7d473fd974$var$Ba
384
396
  }
385
397
  return this.collection;
386
398
  }
399
+ markDirty(node) {
400
+ this.dirtyNodes.add(node);
401
+ }
402
+ startTransaction() {
403
+ this.transactionCount++;
404
+ }
405
+ endTransaction() {
406
+ this.transactionCount--;
407
+ }
387
408
  addNode(element) {
388
409
  let collection = this.getMutableCollection();
389
410
  if (!collection.getItem(element.node.key)) {
390
411
  collection.addNode(element.node);
391
412
  for (let child of element)this.addNode(child);
392
413
  }
393
- this.dirtyNodes.add(element);
414
+ this.markDirty(element);
394
415
  }
395
416
  removeNode(node) {
396
417
  for (let child of node){
@@ -399,9 +420,10 @@ class $7135fc7d473fd974$export$b34a105447964f9f extends $7135fc7d473fd974$var$Ba
399
420
  }
400
421
  let collection = this.getMutableCollection();
401
422
  collection.removeNode(node.node.key);
402
- this.dirtyNodes.add(node);
423
+ this.markDirty(node);
403
424
  }
404
425
  /** Finalizes the collection update, updating all nodes and freezing the collection. */ getCollection() {
426
+ if (this.transactionCount > 0) return this.collection;
405
427
  for (let element of this.dirtyNodes)if (element instanceof $7135fc7d473fd974$export$dc064fe9e59310fd && element.parentNode) element.updateNode();
406
428
  this.dirtyNodes.clear();
407
429
  if (this.mutatedNodes.size) {
@@ -416,6 +438,9 @@ class $7135fc7d473fd974$export$b34a105447964f9f extends $7135fc7d473fd974$var$Ba
416
438
  return this.collection;
417
439
  }
418
440
  queueUpdate() {
441
+ // Don't emit any updates if there is a transaction in progress.
442
+ // queueUpdate should be called again after the transaction.
443
+ if (this.dirtyNodes.size === 0 || this.transactionCount > 0) return;
419
444
  for (let fn of this.subscriptions)fn();
420
445
  }
421
446
  subscribe(fn) {
@@ -431,6 +456,7 @@ class $7135fc7d473fd974$export$b34a105447964f9f extends $7135fc7d473fd974$var$Ba
431
456
  (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "dirtyNodes", new Set());
432
457
  (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "mutatedNodes", new Set());
433
458
  (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "subscriptions", new Set());
459
+ (0, $dGqE5$swchelperssrc_define_propertymjs)(this, "transactionCount", 0);
434
460
  this.collection = collection;
435
461
  this.collectionMutated = true;
436
462
  }
@@ -503,9 +529,6 @@ function $7135fc7d473fd974$export$6cd28814d92fa9c9(props, initialCollection) {
503
529
  children
504
530
  ]);
505
531
  let portal = (0, $dGqE5$useIsSSR)() ? null : /*#__PURE__*/ (0, $dGqE5$createPortal)(wrappedChildren, document);
506
- (0, $dGqE5$useLayoutEffect)(()=>{
507
- if (document.dirtyNodes.size > 0) document.queueUpdate();
508
- });
509
532
  return {
510
533
  portal: portal,
511
534
  collection: collection
@@ -513,40 +536,38 @@ function $7135fc7d473fd974$export$6cd28814d92fa9c9(props, initialCollection) {
513
536
  }
514
537
  function $7135fc7d473fd974$export$aeba0b1fb3dcd8b8(Element, props, ref) {
515
538
  let isShallow = (0, $dGqE5$useContext)($7135fc7d473fd974$var$ShallowRenderContext);
539
+ ref = $7135fc7d473fd974$export$636783d3732b5559(props, ref, props.children);
516
540
  if (isShallow) // @ts-ignore
517
541
  return /*#__PURE__*/ (0, $dGqE5$react).createElement(Element, {
518
- multiple: {
519
- ...props,
520
- ref: ref,
521
- rendered: props.children
522
- }
542
+ ref: ref
523
543
  });
524
544
  return null;
525
545
  }
526
- function $7135fc7d473fd974$export$6d08773d2e66f8f2(props) {
527
- // HACK: the `multiple` prop is special in that React will pass it through as a property rather
528
- // than converting to a string and using setAttribute. This allows our custom fake DOM to receive
529
- // the props as an object. Once React supports custom elements, we can switch to that instead.
530
- // https://github.com/facebook/react/issues/11347
531
- // https://github.com/facebook/react/blob/82c64e1a49239158c0daa7f0d603d2ad2ee667a9/packages/react-dom/src/shared/DOMProperty.js#L386
546
+ function $7135fc7d473fd974$export$636783d3732b5559(props, ref, rendered) {
547
+ // Return a callback ref that sets the props object on the fake DOM node.
548
+ return (0, $dGqE5$useCallback)((element)=>{
549
+ element === null || element === void 0 ? void 0 : element.setProps(props, ref, rendered);
550
+ }, [
551
+ props,
552
+ ref,
553
+ rendered
554
+ ]);
555
+ }
556
+ function $7135fc7d473fd974$var$Item(props, ref) {
532
557
  // @ts-ignore
533
558
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("item", {
534
- multiple: {
535
- ...props,
536
- rendered: props.children
537
- }
559
+ ref: $7135fc7d473fd974$export$636783d3732b5559(props, ref, props.children)
538
560
  });
539
561
  }
540
- function $7135fc7d473fd974$export$6e2c8f0811a474ce(props) {
562
+ const $7135fc7d473fd974$export$6d08773d2e66f8f2 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($7135fc7d473fd974$var$Item);
563
+ function $7135fc7d473fd974$var$Section(props, ref) {
541
564
  let children = $7135fc7d473fd974$export$901dbff4e54a6dd0(props);
542
565
  // @ts-ignore
543
566
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("section", {
544
- multiple: {
545
- ...props,
546
- rendered: props.title
547
- }
567
+ ref: $7135fc7d473fd974$export$636783d3732b5559(props, ref)
548
568
  }, children);
549
569
  }
570
+ const $7135fc7d473fd974$export$6e2c8f0811a474ce = /*#__PURE__*/ (0, $dGqE5$forwardRef)($7135fc7d473fd974$var$Section);
550
571
  const $7135fc7d473fd974$export$db36075d98ba73d3 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
551
572
  const $7135fc7d473fd974$export$4feb769f8ddf26c5 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
552
573
  function $7135fc7d473fd974$export$fb8073518f34e6ec(props) {
@@ -571,6 +592,7 @@ function $7135fc7d473fd974$export$fb8073518f34e6ec(props) {
571
592
  * governing permissions and limitations under the License.
572
593
  */
573
594
 
595
+
574
596
  const $64fa3d84918910a7$export$91172ebb93c441a2 = Symbol("callback");
575
597
  const $64fa3d84918910a7$export$8e0ef2c5844bfb6b = Symbol("default");
576
598
  function $64fa3d84918910a7$export$2881499e37b75b9a({ values: values , children: children }) {
@@ -580,18 +602,32 @@ function $64fa3d84918910a7$export$2881499e37b75b9a({ values: values , children:
580
602
  }, children);
581
603
  return children;
582
604
  }
583
- function $64fa3d84918910a7$export$4d86445c2cf5e3({ className: className , style: style , children: children , defaultClassName: defaultClassName , defaultChildren: defaultChildren , values: values , ...otherProps }) {
584
- if (typeof className === "function") className = className(values);
585
- if (typeof style === "function") style = style(values);
586
- if (typeof children === "function") children = children(values);
587
- else if (children == null) children = defaultChildren;
588
- delete otherProps.id;
589
- return {
590
- ...(0, $dGqE5$filterDOMProps)(otherProps),
591
- className: className !== null && className !== void 0 ? className : defaultClassName,
592
- style: style,
593
- children: children
594
- };
605
+ function $64fa3d84918910a7$export$4d86445c2cf5e3(props) {
606
+ let { className: className , style: style , children: children , defaultClassName: defaultClassName , defaultChildren: defaultChildren , values: values } = props;
607
+ return (0, $dGqE5$useMemo)(()=>{
608
+ let computedClassName;
609
+ let computedStyle;
610
+ let computedChildren;
611
+ if (typeof className === "function") computedClassName = className(values);
612
+ else computedClassName = className;
613
+ if (typeof style === "function") computedStyle = style(values);
614
+ else computedStyle = style;
615
+ if (typeof children === "function") computedChildren = children(values);
616
+ else if (children == null) computedChildren = defaultChildren;
617
+ else computedChildren = children;
618
+ return {
619
+ className: computedClassName !== null && computedClassName !== void 0 ? computedClassName : defaultClassName,
620
+ style: computedStyle,
621
+ children: computedChildren
622
+ };
623
+ }, [
624
+ className,
625
+ style,
626
+ children,
627
+ defaultClassName,
628
+ defaultChildren,
629
+ values
630
+ ]);
595
631
  }
596
632
  function $64fa3d84918910a7$export$29f1550f4b0d4415(props, ref, context) {
597
633
  let ctx = (0, $dGqE5$useContext)(context) || {};
@@ -672,7 +708,9 @@ function $64fa3d84918910a7$var$useAnimation(ref, isActive, onEnd) {
672
708
  let onAnimationEnd = (e)=>{
673
709
  if (e.target === ref.current) {
674
710
  element.removeEventListener("animationend", onAnimationEnd);
675
- onEnd();
711
+ (0, $dGqE5$reactdom).flushSync(()=>{
712
+ onEnd();
713
+ });
676
714
  }
677
715
  };
678
716
  let element = ref.current;
@@ -734,7 +772,7 @@ const $5cb03073d3f54797$export$a8a3e93435678ff9 = /*#__PURE__*/ (0, $dGqE5$forwa
734
772
  const $4f118338184dc1d9$export$e2509388b49734e7 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
735
773
  function $4f118338184dc1d9$var$Link(props, ref) {
736
774
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $4f118338184dc1d9$export$e2509388b49734e7);
737
- let elementType = typeof props.children === "string" ? "span" : "a";
775
+ let elementType = typeof props.children === "string" || typeof props.children === "function" ? "span" : "a";
738
776
  let { linkProps: linkProps , isPressed: isPressed } = (0, $dGqE5$useLink)({
739
777
  ...props,
740
778
  elementType: elementType
@@ -753,6 +791,8 @@ function $4f118338184dc1d9$var$Link(props, ref) {
753
791
  isFocusVisible: isFocusVisible
754
792
  }
755
793
  });
794
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
795
+ delete DOMProps.id;
756
796
  let element = typeof renderProps.children === "string" ? /*#__PURE__*/ (0, $dGqE5$react).createElement("span", null, renderProps.children) : (0, $dGqE5$react).Children.only(renderProps.children);
757
797
  return /*#__PURE__*/ (0, $dGqE5$react).cloneElement(element, {
758
798
  ref: (0, $dGqE5$useMemo)(()=>element.ref ? (0, $dGqE5$mergeRefs)(element.ref, ref) : ref, [
@@ -760,7 +800,7 @@ function $4f118338184dc1d9$var$Link(props, ref) {
760
800
  ref
761
801
  ]),
762
802
  slot: props.slot,
763
- ...(0, $dGqE5$mergeProps)(renderProps, linkProps, hoverProps, focusProps, {
803
+ ...(0, $dGqE5$mergeProps)(DOMProps, renderProps, linkProps, hoverProps, focusProps, {
764
804
  children: element.props.children,
765
805
  "data-hovered": isHovered || undefined,
766
806
  "data-pressed": isPressed || undefined,
@@ -799,7 +839,7 @@ function $778035c5624f61e7$var$Breadcrumbs(props, ref) {
799
839
  }
800
840
  /**
801
841
  * Breadcrumbs display a heirarchy of links to the current page or resource in an application.
802
- */ const $778035c5624f61e7$export$2dc68d50d56fbbd = (0, $dGqE5$forwardRef)($778035c5624f61e7$var$Breadcrumbs);
842
+ */ const $778035c5624f61e7$export$2dc68d50d56fbbd = /*#__PURE__*/ (0, $dGqE5$forwardRef)($778035c5624f61e7$var$Breadcrumbs);
803
843
  function $778035c5624f61e7$var$BreadcrumbItem({ node: node , isCurrent: isCurrent , isDisabled: isDisabled }) {
804
844
  // Recreating useBreadcrumbItem because we want to use composition instead of having the link builtin.
805
845
  let headingProps = isCurrent ? {
@@ -842,6 +882,17 @@ function $778035c5624f61e7$var$BreadcrumbItem({ node: node , isCurrent: isCurren
842
882
  */
843
883
 
844
884
 
885
+
886
+ const $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes = new Set([
887
+ "form",
888
+ "formAction",
889
+ "formEncType",
890
+ "formMethod",
891
+ "formNoValidate",
892
+ "formTarget",
893
+ "name",
894
+ "value"
895
+ ]);
845
896
  const $d2b4bc8c273e7be6$export$24d547caef80ccd1 = /*#__PURE__*/ (0, $dGqE5$createContext)({});
846
897
  function $d2b4bc8c273e7be6$var$Button(props, ref) {
847
898
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $d2b4bc8c273e7be6$export$24d547caef80ccd1);
@@ -861,6 +912,9 @@ function $d2b4bc8c273e7be6$var$Button(props, ref) {
861
912
  defaultClassName: "react-aria-Button"
862
913
  });
863
914
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("button", {
915
+ ...(0, $dGqE5$filterDOMProps)(props, {
916
+ propNames: $d2b4bc8c273e7be6$var$additionalButtonHTMLAttributes
917
+ }),
864
918
  ...(0, $dGqE5$mergeProps)(buttonProps, focusProps, hoverProps),
865
919
  ...renderProps,
866
920
  ref: ref,
@@ -982,7 +1036,7 @@ function $dfd62f934fc76fed$var$Calendar(props, ref) {
982
1036
  }
983
1037
  /**
984
1038
  * A calendar displays one or more date grids and allows users to select a single date.
985
- */ const $dfd62f934fc76fed$export$e1aef45b828286de = (0, $dGqE5$forwardRef)($dfd62f934fc76fed$var$Calendar);
1039
+ */ const $dfd62f934fc76fed$export$e1aef45b828286de = /*#__PURE__*/ (0, $dGqE5$forwardRef)($dfd62f934fc76fed$var$Calendar);
986
1040
  function $dfd62f934fc76fed$var$RangeCalendar(props, ref) {
987
1041
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $dfd62f934fc76fed$export$233dd9682e1ad64b);
988
1042
  let { locale: locale } = (0, $dGqE5$useLocale)();
@@ -1043,7 +1097,7 @@ function $dfd62f934fc76fed$var$RangeCalendar(props, ref) {
1043
1097
  }
1044
1098
  /**
1045
1099
  * A range calendar displays one or more date grids and allows users to select a contiguous range of dates.
1046
- */ const $dfd62f934fc76fed$export$a4f5c8b89d277a8d = (0, $dGqE5$forwardRef)($dfd62f934fc76fed$var$RangeCalendar);
1100
+ */ const $dfd62f934fc76fed$export$a4f5c8b89d277a8d = /*#__PURE__*/ (0, $dGqE5$forwardRef)($dfd62f934fc76fed$var$RangeCalendar);
1047
1101
  const $dfd62f934fc76fed$var$InternalCalendarGridContext = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
1048
1102
  function $dfd62f934fc76fed$var$CalendarGrid(props, ref) {
1049
1103
  let state = (0, $dGqE5$useContext)($dfd62f934fc76fed$var$InternalCalendarContext);
@@ -1051,7 +1105,8 @@ function $dfd62f934fc76fed$var$CalendarGrid(props, ref) {
1051
1105
  if (props.offset) startDate = startDate.add(props.offset);
1052
1106
  let { gridProps: gridProps , headerProps: headerProps , weekDays: weekDays } = (0, $dGqE5$useCalendarGrid)({
1053
1107
  startDate: startDate,
1054
- endDate: (0, $dGqE5$endOfMonth)(startDate)
1108
+ endDate: (0, $dGqE5$endOfMonth)(startDate),
1109
+ weekdayStyle: props.weekdayStyle
1055
1110
  }, state);
1056
1111
  var _props_className;
1057
1112
  return /*#__PURE__*/ (0, $dGqE5$react).createElement($dfd62f934fc76fed$var$InternalCalendarGridContext.Provider, {
@@ -1169,7 +1224,7 @@ function $dfd62f934fc76fed$var$CalendarCell({ date: date , ...otherProps }, ref)
1169
1224
  "data-selection-end": isSelectionEnd || undefined
1170
1225
  };
1171
1226
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("td", cellProps, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
1172
- ...(0, $dGqE5$mergeProps)(buttonProps, focusProps, hoverProps, dataAttrs, renderProps),
1227
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(otherProps), buttonProps, focusProps, hoverProps, dataAttrs, renderProps),
1173
1228
  ref: objectRef
1174
1229
  }));
1175
1230
  }
@@ -1191,6 +1246,7 @@ function $dfd62f934fc76fed$var$CalendarCell({ date: date , ...otherProps }, ref)
1191
1246
  */
1192
1247
 
1193
1248
 
1249
+
1194
1250
  /*
1195
1251
  * Copyright 2022 Adobe. All rights reserved.
1196
1252
  * This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -1318,8 +1374,10 @@ function $bc237834342dbd75$var$Checkbox(props, ref) {
1318
1374
  isRequired: props.isRequired || false
1319
1375
  }
1320
1376
  });
1377
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
1378
+ delete DOMProps.id;
1321
1379
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("label", {
1322
- ...(0, $dGqE5$mergeProps)(pressProps, hoverProps, renderProps),
1380
+ ...(0, $dGqE5$mergeProps)(DOMProps, pressProps, hoverProps, renderProps),
1323
1381
  slot: props.slot,
1324
1382
  "data-selected": isSelected || undefined,
1325
1383
  "data-indeterminate": props.isIndeterminate || undefined,
@@ -1588,7 +1646,7 @@ function $eed445e0843c11d0$var$ListBoxPortal({ props: props , listBoxRef: listBo
1588
1646
  }
1589
1647
  /**
1590
1648
  * A listbox displays a list of options and allows a user to select one or more of them.
1591
- */ const $eed445e0843c11d0$export$41f133550aa26f48 = (0, $dGqE5$forwardRef)($eed445e0843c11d0$var$ListBox);
1649
+ */ const $eed445e0843c11d0$export$41f133550aa26f48 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($eed445e0843c11d0$var$ListBox);
1592
1650
  function $eed445e0843c11d0$var$ListBoxInner({ state: state , props: props , listBoxRef: listBoxRef }) {
1593
1651
  let { dragAndDropHooks: dragAndDropHooks } = props;
1594
1652
  let { collection: collection , selectionManager: selectionManager } = state;
@@ -1705,7 +1763,7 @@ function $eed445e0843c11d0$var$ListBoxInner({ state: state , props: props , list
1705
1763
  [
1706
1764
  (0, $d8f176866e6dc039$export$f55761759794cf55),
1707
1765
  {
1708
- render: $eed445e0843c11d0$var$ListBoxDropIndicator
1766
+ render: $eed445e0843c11d0$var$ListBoxDropIndicatorWrapper
1709
1767
  }
1710
1768
  ]
1711
1769
  ]
@@ -1746,11 +1804,12 @@ function $eed445e0843c11d0$var$ListBoxSection({ section: section , className: cl
1746
1804
  ...(0, $dGqE5$filterDOMProps)(otherProps),
1747
1805
  ...groupProps,
1748
1806
  className: className || ((_section_props = section.props) === null || _section_props === void 0 ? void 0 : _section_props.className) || "react-aria-Section",
1749
- style: style || ((_section_props1 = section.props) === null || _section_props1 === void 0 ? void 0 : _section_props1.style)
1807
+ style: style || ((_section_props1 = section.props) === null || _section_props1 === void 0 ? void 0 : _section_props1.style),
1808
+ ref: section.props.ref
1750
1809
  }, children);
1751
1810
  }
1752
1811
  function $eed445e0843c11d0$var$Option({ item: item }) {
1753
- let ref = (0, $dGqE5$useRef)(null);
1812
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
1754
1813
  let { state: state , shouldFocusOnHover: shouldFocusOnHover , dragAndDropHooks: dragAndDropHooks , dragState: dragState , dropState: dropState } = (0, $dGqE5$useContext)($eed445e0843c11d0$var$InternalListBoxContext);
1755
1814
  let { optionProps: optionProps , labelProps: labelProps , descriptionProps: descriptionProps , ...states } = (0, $dGqE5$useOption)({
1756
1815
  key: item.key
@@ -1804,7 +1863,7 @@ function $eed445e0843c11d0$var$Option({ item: item }) {
1804
1863
  key: item.key,
1805
1864
  dropPosition: "before"
1806
1865
  }), /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
1807
- ...(0, $dGqE5$mergeProps)(optionProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps, droppableItem === null || droppableItem === void 0 ? void 0 : droppableItem.dropProps),
1866
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), optionProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps, droppableItem === null || droppableItem === void 0 ? void 0 : droppableItem.dropProps),
1808
1867
  ...renderProps,
1809
1868
  ref: ref,
1810
1869
  "data-hovered": isHovered || undefined,
@@ -1831,14 +1890,22 @@ function $eed445e0843c11d0$var$Option({ item: item }) {
1831
1890
  dropPosition: "after"
1832
1891
  }));
1833
1892
  }
1834
- function $eed445e0843c11d0$var$ListBoxDropIndicator(props, ref) {
1893
+ function $eed445e0843c11d0$var$ListBoxDropIndicatorWrapper(props, ref) {
1835
1894
  ref = (0, $dGqE5$useObjectRef)(ref);
1836
1895
  let { dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($eed445e0843c11d0$var$InternalListBoxContext);
1837
1896
  let { dropIndicatorProps: dropIndicatorProps , isHidden: isHidden , isDropTarget: isDropTarget } = dragAndDropHooks.useDropIndicator(props, dropState, ref);
1838
1897
  if (isHidden) return null;
1839
- // eslint-disable-next-line react-hooks/rules-of-hooks
1840
- let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
1898
+ return /*#__PURE__*/ (0, $dGqE5$react).createElement($eed445e0843c11d0$var$ListBoxtDropIndicatorForwardRef, {
1841
1899
  ...props,
1900
+ dropIndicatorProps: dropIndicatorProps,
1901
+ isDropTarget: isDropTarget,
1902
+ ref: ref
1903
+ });
1904
+ }
1905
+ function $eed445e0843c11d0$var$ListBoxtDropIndicator(props, ref) {
1906
+ let { dropIndicatorProps: dropIndicatorProps , isDropTarget: isDropTarget , ...otherProps } = props;
1907
+ let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
1908
+ ...otherProps,
1842
1909
  defaultClassName: "react-aria-DropIndicator",
1843
1910
  values: {
1844
1911
  isDropTarget: isDropTarget
@@ -1853,6 +1920,7 @@ function $eed445e0843c11d0$var$ListBoxDropIndicator(props, ref) {
1853
1920
  "data-drop-target": isDropTarget || undefined
1854
1921
  });
1855
1922
  }
1923
+ const $eed445e0843c11d0$var$ListBoxtDropIndicatorForwardRef = /*#__PURE__*/ (0, $dGqE5$forwardRef)($eed445e0843c11d0$var$ListBoxtDropIndicator);
1856
1924
 
1857
1925
 
1858
1926
  /*
@@ -1867,6 +1935,7 @@ function $eed445e0843c11d0$var$ListBoxDropIndicator(props, ref) {
1867
1935
  * governing permissions and limitations under the License.
1868
1936
  */
1869
1937
 
1938
+
1870
1939
  /*
1871
1940
  * Copyright 2022 Adobe. All rights reserved.
1872
1941
  * This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -1933,7 +2002,7 @@ function $07b14b47974efb58$var$Popover(props, ref) {
1933
2002
  /**
1934
2003
  * A popover is an overlay element positioned relative to a trigger.
1935
2004
  */ const $07b14b47974efb58$export$5b6b19405a83ff9d = /*#__PURE__*/ (0, $dGqE5$forwardRef)($07b14b47974efb58$var$Popover);
1936
- function $07b14b47974efb58$var$PopoverInner({ children: children , state: state , isExiting: isExiting , ...props }) {
2005
+ function $07b14b47974efb58$var$PopoverInner({ state: state , isExiting: isExiting , ...props }) {
1937
2006
  var _props_offset;
1938
2007
  let { popoverProps: popoverProps , underlayProps: underlayProps , arrowProps: arrowProps , placement: placement } = (0, $dGqE5$usePopover)({
1939
2008
  ...props,
@@ -1961,7 +2030,7 @@ function $07b14b47974efb58$var$PopoverInner({ children: children , state: state
1961
2030
  inset: 0
1962
2031
  }
1963
2032
  }), /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
1964
- ...popoverProps,
2033
+ ...(0, $dGqE5$mergeProps1)((0, $dGqE5$filterDOMProps)(props), popoverProps),
1965
2034
  ...renderProps,
1966
2035
  ref: ref,
1967
2036
  slot: props.slot,
@@ -1976,7 +2045,7 @@ function $07b14b47974efb58$var$PopoverInner({ children: children , state: state
1976
2045
  arrowProps: arrowProps,
1977
2046
  placement: placement
1978
2047
  }
1979
- }, children), /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$DismissButton), {
2048
+ }, renderProps.children), /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$DismissButton), {
1980
2049
  onDismiss: state.close
1981
2050
  })));
1982
2051
  }
@@ -2000,14 +2069,22 @@ function $d01f2c01039c0eec$var$ComboBox(props, ref) {
2000
2069
  items: (_ref = (_props_items = props.items) !== null && _props_items !== void 0 ? _props_items : props.defaultItems) !== null && _ref !== void 0 ? _ref : propsFromListBox.items,
2001
2070
  children: propsFromListBox.children
2002
2071
  });
2003
- var _props_items1;
2004
2072
  let state = (0, $dGqE5$useComboBoxState)({
2005
2073
  defaultFilter: props.defaultFilter || contains,
2006
2074
  ...props,
2007
- items: propsFromListBox ? (_props_items1 = props.items) !== null && _props_items1 !== void 0 ? _props_items1 : propsFromListBox.items : [],
2075
+ // If props.items isn't provided, rely on collection filtering (aka listbox.items is provided or defaultItems provided to Combobox)
2076
+ items: props.items,
2008
2077
  children: undefined,
2009
2078
  collection: collection
2010
2079
  });
2080
+ // Only expose a subset of state to renderProps function to avoid infinite render loop
2081
+ let renderPropsState = (0, $dGqE5$useMemo)(()=>({
2082
+ isOpen: state.isOpen,
2083
+ isFocused: state.isFocused
2084
+ }), [
2085
+ state.isOpen,
2086
+ state.isFocused
2087
+ ]);
2011
2088
  let buttonRef = (0, $dGqE5$useRef)(null);
2012
2089
  let inputRef = (0, $dGqE5$useRef)(null);
2013
2090
  let listBoxRef = (0, $dGqE5$useRef)(null);
@@ -2043,9 +2120,11 @@ function $d01f2c01039c0eec$var$ComboBox(props, ref) {
2043
2120
  });
2044
2121
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
2045
2122
  ...props,
2046
- values: state,
2123
+ values: renderPropsState,
2047
2124
  defaultClassName: "react-aria-ComboBox"
2048
2125
  });
2126
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
2127
+ delete DOMProps.id;
2049
2128
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
2050
2129
  values: [
2051
2130
  [
@@ -2104,14 +2183,17 @@ function $d01f2c01039c0eec$var$ComboBox(props, ref) {
2104
2183
  ]
2105
2184
  ]
2106
2185
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2186
+ ...DOMProps,
2107
2187
  ...renderProps,
2108
2188
  ref: ref,
2109
- slot: props.slot
2110
- }, props.children), portal);
2189
+ slot: props.slot,
2190
+ "data-focused": state.isFocused || undefined,
2191
+ "data-open": state.isOpen || undefined
2192
+ }), portal);
2111
2193
  }
2112
2194
  /**
2113
2195
  * A combo box combines a text input with a listbox, allowing users to filter a list of options to items matching a query.
2114
- */ const $d01f2c01039c0eec$export$72b9695b8216309a = (0, $dGqE5$forwardRef)($d01f2c01039c0eec$var$ComboBox);
2196
+ */ const $d01f2c01039c0eec$export$72b9695b8216309a = /*#__PURE__*/ (0, $dGqE5$forwardRef)($d01f2c01039c0eec$var$ComboBox);
2115
2197
 
2116
2198
 
2117
2199
  /*
@@ -2154,6 +2236,8 @@ function $40825cdb76e74f70$var$DateField(props, ref) {
2154
2236
  values: state,
2155
2237
  defaultClassName: "react-aria-DateField"
2156
2238
  });
2239
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
2240
+ delete DOMProps.id;
2157
2241
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
2158
2242
  values: [
2159
2243
  [
@@ -2182,15 +2266,16 @@ function $40825cdb76e74f70$var$DateField(props, ref) {
2182
2266
  ]
2183
2267
  ]
2184
2268
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2269
+ ...DOMProps,
2185
2270
  ...renderProps,
2186
2271
  ref: ref,
2187
2272
  slot: props.slot
2188
- }, props.children));
2273
+ }));
2189
2274
  }
2190
2275
  /**
2191
2276
  * A date field allows users to enter and edit date and time values using a keyboard.
2192
2277
  * Each part of a date value is displayed in an individually editable segment.
2193
- */ const $40825cdb76e74f70$export$d9781c7894a82487 = (0, $dGqE5$forwardRef)($40825cdb76e74f70$var$DateField);
2278
+ */ const $40825cdb76e74f70$export$d9781c7894a82487 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($40825cdb76e74f70$var$DateField);
2194
2279
  function $40825cdb76e74f70$var$TimeField(props, ref) {
2195
2280
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $40825cdb76e74f70$export$8e17ddc448e87c1e);
2196
2281
  let { locale: locale } = (0, $dGqE5$useLocale)();
@@ -2209,6 +2294,8 @@ function $40825cdb76e74f70$var$TimeField(props, ref) {
2209
2294
  values: state,
2210
2295
  defaultClassName: "react-aria-TimeField"
2211
2296
  });
2297
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
2298
+ delete DOMProps.id;
2212
2299
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
2213
2300
  values: [
2214
2301
  [
@@ -2238,15 +2325,16 @@ function $40825cdb76e74f70$var$TimeField(props, ref) {
2238
2325
  ]
2239
2326
  ]
2240
2327
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2328
+ ...DOMProps,
2241
2329
  ...renderProps,
2242
2330
  ref: ref,
2243
2331
  slot: props.slot
2244
- }, props.children));
2332
+ }));
2245
2333
  }
2246
2334
  /**
2247
2335
  * A time field allows users to enter and edit time values using a keyboard.
2248
2336
  * Each part of a time value is displayed in an individually editable segment.
2249
- */ const $40825cdb76e74f70$export$5eaee2322dd727eb = (0, $dGqE5$forwardRef)($40825cdb76e74f70$var$TimeField);
2337
+ */ const $40825cdb76e74f70$export$5eaee2322dd727eb = /*#__PURE__*/ (0, $dGqE5$forwardRef)($40825cdb76e74f70$var$TimeField);
2250
2338
  const $40825cdb76e74f70$var$InternalDateInputContext = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
2251
2339
  function $40825cdb76e74f70$var$DateInput({ children: children , slot: slot , ...otherProps }, ref) {
2252
2340
  let [{ state: state , fieldProps: fieldProps }, fieldRef] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)({
@@ -2270,7 +2358,7 @@ function $40825cdb76e74f70$var$DateInput({ children: children , slot: slot , ...
2270
2358
  return /*#__PURE__*/ (0, $dGqE5$react).createElement($40825cdb76e74f70$var$InternalDateInputContext.Provider, {
2271
2359
  value: state
2272
2360
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2273
- ...(0, $dGqE5$mergeProps)(fieldProps, focusProps, hoverProps),
2361
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(otherProps), fieldProps, focusProps, hoverProps),
2274
2362
  ...renderProps,
2275
2363
  ref: fieldRef,
2276
2364
  slot: slot,
@@ -2299,7 +2387,7 @@ function $40825cdb76e74f70$var$DateSegment({ segment: segment , ...otherProps },
2299
2387
  defaultClassName: "react-aria-DateSegment"
2300
2388
  });
2301
2389
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2302
- ...segmentProps,
2390
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(otherProps), segmentProps),
2303
2391
  ...renderProps,
2304
2392
  ref: domRef,
2305
2393
  "data-type": segment.type
@@ -2358,6 +2446,7 @@ function $40825cdb76e74f70$var$DateSegment({ segment: segment , ...otherProps },
2358
2446
 
2359
2447
 
2360
2448
 
2449
+
2361
2450
  const $f3f84453ead64de5$export$ab57792b9b6974a6 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
2362
2451
  const $f3f84453ead64de5$var$InternalModalContext = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
2363
2452
  function $f3f84453ead64de5$var$Modal(props, ref) {
@@ -2419,7 +2508,7 @@ function $f3f84453ead64de5$var$ModalOverlayInner(props) {
2419
2508
  "--visual-viewport-height": viewport.height + "px"
2420
2509
  };
2421
2510
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$Overlay), null, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2422
- ...underlayProps,
2511
+ ...(0, $dGqE5$mergeProps1)((0, $dGqE5$filterDOMProps)(props), underlayProps),
2423
2512
  ...renderProps,
2424
2513
  style: style,
2425
2514
  ref: props.overlayRef,
@@ -2452,7 +2541,7 @@ function $f3f84453ead64de5$var$ModalContent(props) {
2452
2541
  }
2453
2542
  });
2454
2543
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2455
- ...modalProps,
2544
+ ...(0, $dGqE5$mergeProps1)((0, $dGqE5$filterDOMProps)(props), modalProps),
2456
2545
  ...renderProps,
2457
2546
  ref: ref,
2458
2547
  "data-entering": entering || undefined,
@@ -2543,6 +2632,7 @@ function $de32f1b87079253c$var$Dialog(props, ref) {
2543
2632
  */ const $de32f1b87079253c$export$3ddf2d174ce01153 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($de32f1b87079253c$var$Dialog);
2544
2633
 
2545
2634
 
2635
+
2546
2636
  /*
2547
2637
  * Copyright 2022 Adobe. All rights reserved.
2548
2638
  * This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -2616,6 +2706,8 @@ function $06d5b8ec9ee5d538$var$DatePicker(props, ref) {
2616
2706
  values: state,
2617
2707
  defaultClassName: "react-aria-DatePicker"
2618
2708
  });
2709
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
2710
+ delete DOMProps.id;
2619
2711
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
2620
2712
  values: [
2621
2713
  [
@@ -2675,14 +2767,15 @@ function $06d5b8ec9ee5d538$var$DatePicker(props, ref) {
2675
2767
  ]
2676
2768
  ]
2677
2769
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2770
+ ...DOMProps,
2678
2771
  ...renderProps,
2679
2772
  ref: ref,
2680
2773
  slot: props.slot
2681
- }, props.children));
2774
+ }));
2682
2775
  }
2683
2776
  /**
2684
2777
  * A date picker combines a DateField and a Calendar popover to allow users to enter or select a date and time value.
2685
- */ const $06d5b8ec9ee5d538$export$5109c6dd95d8fb00 = (0, $dGqE5$forwardRef)($06d5b8ec9ee5d538$var$DatePicker);
2778
+ */ const $06d5b8ec9ee5d538$export$5109c6dd95d8fb00 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($06d5b8ec9ee5d538$var$DatePicker);
2686
2779
  function $06d5b8ec9ee5d538$var$DateRangePicker(props, ref) {
2687
2780
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $06d5b8ec9ee5d538$export$8282edba42ee28a);
2688
2781
  let state = (0, $dGqE5$useDateRangePickerState)(props);
@@ -2718,6 +2811,8 @@ function $06d5b8ec9ee5d538$var$DateRangePicker(props, ref) {
2718
2811
  values: state,
2719
2812
  defaultClassName: "react-aria-DateRangePicker"
2720
2813
  });
2814
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
2815
+ delete DOMProps.id;
2721
2816
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
2722
2817
  values: [
2723
2818
  [
@@ -2786,15 +2881,16 @@ function $06d5b8ec9ee5d538$var$DateRangePicker(props, ref) {
2786
2881
  ]
2787
2882
  ]
2788
2883
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
2884
+ ...DOMProps,
2789
2885
  ...renderProps,
2790
2886
  ref: ref,
2791
2887
  slot: props.slot
2792
- }, props.children));
2888
+ }));
2793
2889
  }
2794
2890
  /**
2795
2891
  * A date range picker combines two DateFields and a RangeCalendar popover to allow
2796
2892
  * users to enter or select a date and time range.
2797
- */ const $06d5b8ec9ee5d538$export$17334619f3ac2224 = (0, $dGqE5$forwardRef)($06d5b8ec9ee5d538$var$DateRangePicker);
2893
+ */ const $06d5b8ec9ee5d538$export$17334619f3ac2224 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($06d5b8ec9ee5d538$var$DateRangePicker);
2798
2894
 
2799
2895
 
2800
2896
 
@@ -2949,7 +3045,7 @@ function $72e60046c03fbe42$var$GridList(props, ref) {
2949
3045
  [
2950
3046
  (0, $d8f176866e6dc039$export$f55761759794cf55),
2951
3047
  {
2952
- render: $72e60046c03fbe42$var$GridListDropIndicator
3048
+ render: $72e60046c03fbe42$var$GridListDropIndicatorWrapper
2953
3049
  }
2954
3050
  ]
2955
3051
  ]
@@ -2958,10 +3054,10 @@ function $72e60046c03fbe42$var$GridList(props, ref) {
2958
3054
  /**
2959
3055
  * A grid list displays a list of interactive items, with support for keyboard navigation,
2960
3056
  * single or multiple selection, and row actions.
2961
- */ const $72e60046c03fbe42$export$a7bfbda1311ca015 = (0, $dGqE5$forwardRef)($72e60046c03fbe42$var$GridList);
3057
+ */ const $72e60046c03fbe42$export$a7bfbda1311ca015 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($72e60046c03fbe42$var$GridList);
2962
3058
  function $72e60046c03fbe42$var$GridListItem({ item: item }) {
2963
3059
  let { state: state , dragAndDropHooks: dragAndDropHooks , dragState: dragState , dropState: dropState } = (0, $dGqE5$useContext)($72e60046c03fbe42$var$InternalGridListContext);
2964
- let ref = (0, $dGqE5$react).useRef(null);
3060
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
2965
3061
  let { rowProps: rowProps , gridCellProps: gridCellProps , descriptionProps: descriptionProps , ...states } = (0, $dGqE5$useGridListItem)({
2966
3062
  node: item,
2967
3063
  shouldSelectOnPressUp: !!dragState
@@ -3036,7 +3132,7 @@ function $72e60046c03fbe42$var$GridListItem({ item: item }) {
3036
3132
  ...dropIndicator === null || dropIndicator === void 0 ? void 0 : dropIndicator.dropIndicatorProps,
3037
3133
  ref: dropIndicatorRef
3038
3134
  }))), /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
3039
- ...(0, $dGqE5$mergeProps)(rowProps, focusProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps),
3135
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), rowProps, focusProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps),
3040
3136
  ...renderProps,
3041
3137
  ref: ref,
3042
3138
  "data-hovered": isHovered || undefined,
@@ -3081,16 +3177,25 @@ function $72e60046c03fbe42$var$GridListItem({ item: item }) {
3081
3177
  dropPosition: "after"
3082
3178
  }));
3083
3179
  }
3084
- function $72e60046c03fbe42$var$GridListDropIndicator(props, ref) {
3180
+ function $72e60046c03fbe42$var$GridListDropIndicatorWrapper(props, ref) {
3085
3181
  ref = (0, $dGqE5$useObjectRef)(ref);
3086
3182
  let { dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($72e60046c03fbe42$var$InternalGridListContext);
3087
3183
  let buttonRef = (0, $dGqE5$useRef)(null);
3088
3184
  let { dropIndicatorProps: dropIndicatorProps , isHidden: isHidden , isDropTarget: isDropTarget } = dragAndDropHooks.useDropIndicator(props, dropState, buttonRef);
3089
- let { visuallyHiddenProps: visuallyHiddenProps } = (0, $dGqE5$useVisuallyHidden)();
3090
3185
  if (isHidden) return null;
3091
- // eslint-disable-next-line react-hooks/rules-of-hooks
3092
- let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
3186
+ return /*#__PURE__*/ (0, $dGqE5$react).createElement($72e60046c03fbe42$var$GridListDropIndicatorForwardRef, {
3093
3187
  ...props,
3188
+ dropIndicatorProps: dropIndicatorProps,
3189
+ isDropTarget: isDropTarget,
3190
+ buttonRef: buttonRef,
3191
+ ref: ref
3192
+ });
3193
+ }
3194
+ function $72e60046c03fbe42$var$GridListDropIndicator(props, ref) {
3195
+ let { dropIndicatorProps: dropIndicatorProps , isDropTarget: isDropTarget , buttonRef: buttonRef , ...otherProps } = props;
3196
+ let { visuallyHiddenProps: visuallyHiddenProps } = (0, $dGqE5$useVisuallyHidden)();
3197
+ let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
3198
+ ...otherProps,
3094
3199
  defaultClassName: "react-aria-DropIndicator",
3095
3200
  values: {
3096
3201
  isDropTarget: isDropTarget
@@ -3110,6 +3215,7 @@ function $72e60046c03fbe42$var$GridListDropIndicator(props, ref) {
3110
3215
  ref: buttonRef
3111
3216
  })));
3112
3217
  }
3218
+ const $72e60046c03fbe42$var$GridListDropIndicatorForwardRef = /*#__PURE__*/ (0, $dGqE5$forwardRef)($72e60046c03fbe42$var$GridListDropIndicator);
3113
3219
  function $72e60046c03fbe42$var$RootDropIndicator() {
3114
3220
  let { dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($72e60046c03fbe42$var$InternalGridListContext);
3115
3221
  let ref = (0, $dGqE5$useRef)(null);
@@ -3289,7 +3395,7 @@ function $3674c52c6b3c5bce$var$MenuInner({ props: props , collection: collection
3289
3395
  }
3290
3396
  /**
3291
3397
  * A menu displays a list of actions or options that a user can choose.
3292
- */ const $3674c52c6b3c5bce$export$d9b273488cd8ce6f = (0, $dGqE5$forwardRef)($3674c52c6b3c5bce$var$Menu);
3398
+ */ const $3674c52c6b3c5bce$export$d9b273488cd8ce6f = /*#__PURE__*/ (0, $dGqE5$forwardRef)($3674c52c6b3c5bce$var$Menu);
3293
3399
  function $3674c52c6b3c5bce$var$MenuSection({ section: section , className: className , style: style , ...otherProps }) {
3294
3400
  var _section_props, _section_props1;
3295
3401
  let state = (0, $dGqE5$useContext)($3674c52c6b3c5bce$var$InternalMenuContext);
@@ -3325,12 +3431,13 @@ function $3674c52c6b3c5bce$var$MenuSection({ section: section , className: class
3325
3431
  ...(0, $dGqE5$filterDOMProps)(otherProps),
3326
3432
  ...groupProps,
3327
3433
  className: className || ((_section_props = section.props) === null || _section_props === void 0 ? void 0 : _section_props.className) || "react-aria-Section",
3328
- style: style || ((_section_props1 = section.props) === null || _section_props1 === void 0 ? void 0 : _section_props1.style)
3434
+ style: style || ((_section_props1 = section.props) === null || _section_props1 === void 0 ? void 0 : _section_props1.style),
3435
+ ref: section.props.ref
3329
3436
  }, children);
3330
3437
  }
3331
3438
  function $3674c52c6b3c5bce$var$MenuItem({ item: item }) {
3332
3439
  let state = (0, $dGqE5$useContext)($3674c52c6b3c5bce$var$InternalMenuContext);
3333
- let ref = (0, $dGqE5$useRef)(null);
3440
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
3334
3441
  let { menuItemProps: menuItemProps , labelProps: labelProps , descriptionProps: descriptionProps , keyboardShortcutProps: keyboardShortcutProps , ...states } = (0, $dGqE5$useMenuItem)({
3335
3442
  key: item.key
3336
3443
  }, state, ref);
@@ -3349,8 +3456,10 @@ function $3674c52c6b3c5bce$var$MenuItem({ item: item }) {
3349
3456
  selectionBehavior: state.selectionManager.selectionBehavior
3350
3457
  }
3351
3458
  });
3459
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
3460
+ delete DOMProps.id;
3352
3461
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
3353
- ...(0, $dGqE5$mergeProps)(menuItemProps, focusProps),
3462
+ ...(0, $dGqE5$mergeProps)(DOMProps, menuItemProps, focusProps),
3354
3463
  ...renderProps,
3355
3464
  ref: ref,
3356
3465
  "data-hovered": states.isFocused || undefined,
@@ -3448,6 +3557,7 @@ function $c0c9ced265f3594c$var$Meter(props, ref) {
3448
3557
 
3449
3558
 
3450
3559
 
3560
+
3451
3561
  const $b91743d66a0ed188$export$b414a48cf5dcbc11 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
3452
3562
  function $b91743d66a0ed188$var$NumberField(props, ref) {
3453
3563
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $b91743d66a0ed188$export$b414a48cf5dcbc11);
@@ -3467,6 +3577,8 @@ function $b91743d66a0ed188$var$NumberField(props, ref) {
3467
3577
  values: state,
3468
3578
  defaultClassName: "react-aria-NumberField"
3469
3579
  });
3580
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
3581
+ delete DOMProps.id;
3470
3582
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
3471
3583
  values: [
3472
3584
  [
@@ -3507,10 +3619,11 @@ function $b91743d66a0ed188$var$NumberField(props, ref) {
3507
3619
  ]
3508
3620
  ]
3509
3621
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
3622
+ ...DOMProps,
3510
3623
  ...renderProps,
3511
3624
  ref: ref,
3512
3625
  slot: props.slot
3513
- }, props.children));
3626
+ }));
3514
3627
  }
3515
3628
  /**
3516
3629
  * A number field allows a user to enter a number, and increment or decrement the value using stepper buttons.
@@ -3678,8 +3791,10 @@ function $b6c3ddc6086f204d$var$Radio(props, ref) {
3678
3791
  isRequired: state.isRequired
3679
3792
  }
3680
3793
  });
3794
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
3795
+ delete DOMProps.id;
3681
3796
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("label", {
3682
- ...(0, $dGqE5$mergeProps1)(pressProps, hoverProps, renderProps),
3797
+ ...(0, $dGqE5$mergeProps1)(DOMProps, pressProps, hoverProps, renderProps),
3683
3798
  "data-selected": isSelected || undefined,
3684
3799
  "data-pressed": pressed || undefined,
3685
3800
  "data-hovered": isHovered || undefined,
@@ -3721,6 +3836,7 @@ function $b6c3ddc6086f204d$var$Radio(props, ref) {
3721
3836
 
3722
3837
 
3723
3838
 
3839
+
3724
3840
  const $440f4836bcb56932$export$d1c4e4c63cb03a11 = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
3725
3841
  function $440f4836bcb56932$var$SearchField(props, ref) {
3726
3842
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $440f4836bcb56932$export$d1c4e4c63cb03a11);
@@ -3736,7 +3852,10 @@ function $440f4836bcb56932$var$SearchField(props, ref) {
3736
3852
  values: state,
3737
3853
  defaultClassName: "react-aria-SearchField"
3738
3854
  });
3855
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
3856
+ delete DOMProps.id;
3739
3857
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
3858
+ ...DOMProps,
3740
3859
  ...renderProps,
3741
3860
  ref: ref,
3742
3861
  slot: props.slot,
@@ -3817,6 +3936,14 @@ function $82d7e5349645de74$var$Select(props, ref) {
3817
3936
  collection: collection,
3818
3937
  children: undefined
3819
3938
  });
3939
+ // Only expose a subset of state to renderProps function to avoid infinite render loop
3940
+ let renderPropsState = (0, $dGqE5$useMemo)(()=>({
3941
+ isOpen: state.isOpen,
3942
+ isFocused: state.isFocused
3943
+ }), [
3944
+ state.isOpen,
3945
+ state.isFocused
3946
+ ]);
3820
3947
  // Get props for child elements from useSelect
3821
3948
  let buttonRef = (0, $dGqE5$useRef)(null);
3822
3949
  let [labelRef, label] = (0, $64fa3d84918910a7$export$9d4c57ee4c6ffdd8)();
@@ -3837,16 +3964,19 @@ function $82d7e5349645de74$var$Select(props, ref) {
3837
3964
  });
3838
3965
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
3839
3966
  ...props,
3840
- values: state,
3967
+ values: renderPropsState,
3841
3968
  defaultClassName: "react-aria-Select"
3842
3969
  });
3970
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
3971
+ delete DOMProps.id;
3843
3972
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
3844
3973
  values: [
3845
3974
  [
3846
3975
  $82d7e5349645de74$var$InternalSelectContext,
3847
3976
  {
3848
3977
  state: state,
3849
- valueProps: valueProps
3978
+ valueProps: valueProps,
3979
+ placeholder: props.placeholder
3850
3980
  }
3851
3981
  ],
3852
3982
  [
@@ -3896,10 +4026,13 @@ function $82d7e5349645de74$var$Select(props, ref) {
3896
4026
  ]
3897
4027
  ]
3898
4028
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
4029
+ ...DOMProps,
3899
4030
  ...renderProps,
3900
4031
  ref: ref,
3901
- slot: props.slot
3902
- }, props.children), portal, /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$HiddenSelect), {
4032
+ slot: props.slot,
4033
+ "data-focused": state.isFocused || undefined,
4034
+ "data-open": state.isOpen || undefined
4035
+ }), portal, /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$HiddenSelect), {
3903
4036
  state: state,
3904
4037
  triggerRef: buttonRef,
3905
4038
  label: label,
@@ -3908,10 +4041,10 @@ function $82d7e5349645de74$var$Select(props, ref) {
3908
4041
  }
3909
4042
  /**
3910
4043
  * A select displays a collapsible list of options and allows a user to select one of them.
3911
- */ const $82d7e5349645de74$export$ef9b1a59e592288f = (0, $dGqE5$forwardRef)($82d7e5349645de74$var$Select);
4044
+ */ const $82d7e5349645de74$export$ef9b1a59e592288f = /*#__PURE__*/ (0, $dGqE5$forwardRef)($82d7e5349645de74$var$Select);
3912
4045
  function $82d7e5349645de74$var$SelectValue(props, ref) {
3913
4046
  var _state_selectedItem, _state_selectedItem1, _state_selectedItem2;
3914
- let { state: state , valueProps: valueProps } = (0, $dGqE5$useContext)($82d7e5349645de74$var$InternalSelectContext);
4047
+ let { state: state , valueProps: valueProps , placeholder: placeholder } = (0, $dGqE5$useContext)($82d7e5349645de74$var$InternalSelectContext);
3915
4048
  let rendered = (_state_selectedItem = state.selectedItem) === null || _state_selectedItem === void 0 ? void 0 : _state_selectedItem.rendered;
3916
4049
  if (typeof rendered === "function") {
3917
4050
  // If the selected item has a function as a child, we need to call it to render to JSX.
@@ -3931,7 +4064,7 @@ function $82d7e5349645de74$var$SelectValue(props, ref) {
3931
4064
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
3932
4065
  ...props,
3933
4066
  // TODO: localize this.
3934
- defaultChildren: rendered || "Select an item",
4067
+ defaultChildren: rendered || placeholder || "Select an item",
3935
4068
  defaultClassName: "react-aria-SelectValue",
3936
4069
  values: {
3937
4070
  selectedItem: (_state_selectedItem_value = (_state_selectedItem1 = state.selectedItem) === null || _state_selectedItem1 === void 0 ? void 0 : _state_selectedItem1.value) !== null && _state_selectedItem_value !== void 0 ? _state_selectedItem_value : null,
@@ -3939,8 +4072,11 @@ function $82d7e5349645de74$var$SelectValue(props, ref) {
3939
4072
  isPlaceholder: !state.selectedItem
3940
4073
  }
3941
4074
  });
4075
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
4076
+ delete DOMProps.id;
3942
4077
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("span", {
3943
4078
  ref: ref,
4079
+ ...DOMProps,
3944
4080
  ...valueProps,
3945
4081
  ...renderProps,
3946
4082
  "data-placeholder": !state.selectedItem || undefined
@@ -3951,7 +4087,7 @@ function $82d7e5349645de74$var$SelectValue(props, ref) {
3951
4087
  /**
3952
4088
  * SelectValue renders the current value of a Select, or a placeholder if no value is selected.
3953
4089
  * It is usually placed within the button element.
3954
- */ const $82d7e5349645de74$export$e288731fd71264f0 = (0, $dGqE5$forwardRef)($82d7e5349645de74$var$SelectValue);
4090
+ */ const $82d7e5349645de74$export$e288731fd71264f0 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($82d7e5349645de74$var$SelectValue);
3955
4091
 
3956
4092
 
3957
4093
 
@@ -3991,6 +4127,8 @@ function $6f909507e6374d18$var$Slider(props, ref) {
3991
4127
  values: state,
3992
4128
  defaultClassName: "react-aria-Slider"
3993
4129
  });
4130
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
4131
+ delete DOMProps.id;
3994
4132
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {
3995
4133
  values: [
3996
4134
  [
@@ -4011,6 +4149,7 @@ function $6f909507e6374d18$var$Slider(props, ref) {
4011
4149
  ]
4012
4150
  ]
4013
4151
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
4152
+ ...DOMProps,
4014
4153
  ...groupProps,
4015
4154
  ...renderProps,
4016
4155
  ref: ref,
@@ -4021,8 +4160,8 @@ function $6f909507e6374d18$var$Slider(props, ref) {
4021
4160
  }
4022
4161
  /**
4023
4162
  * A slider allows a user to select one or more values within a range.
4024
- */ const $6f909507e6374d18$export$472062a354075cee = (0, $dGqE5$forwardRef)($6f909507e6374d18$var$Slider);
4025
- function $6f909507e6374d18$var$SliderOutput({ children: children , style: style , className: className }, ref) {
4163
+ */ const $6f909507e6374d18$export$472062a354075cee = /*#__PURE__*/ (0, $dGqE5$forwardRef)($6f909507e6374d18$var$Slider);
4164
+ function $6f909507e6374d18$var$SliderOutput({ children: children , style: style , className: className , ...otherProps }, ref) {
4026
4165
  let { state: state , outputProps: outputProps } = (0, $dGqE5$useContext)($6f909507e6374d18$var$InternalSliderContext);
4027
4166
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
4028
4167
  className: className,
@@ -4033,7 +4172,7 @@ function $6f909507e6374d18$var$SliderOutput({ children: children , style: style
4033
4172
  values: state
4034
4173
  });
4035
4174
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("output", {
4036
- ...outputProps,
4175
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(otherProps), outputProps),
4037
4176
  ...renderProps,
4038
4177
  ref: ref
4039
4178
  });
@@ -4050,7 +4189,7 @@ function $6f909507e6374d18$var$SliderTrack(props, ref) {
4050
4189
  values: state
4051
4190
  });
4052
4191
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
4053
- ...trackProps,
4192
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), trackProps),
4054
4193
  ...renderProps,
4055
4194
  ref: domRef
4056
4195
  });
@@ -4084,8 +4223,10 @@ function $6f909507e6374d18$var$SliderThumb(props, ref) {
4084
4223
  isDisabled: isDisabled
4085
4224
  }
4086
4225
  });
4226
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
4227
+ delete DOMProps.id;
4087
4228
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
4088
- ...(0, $dGqE5$mergeProps)(thumbProps, hoverProps),
4229
+ ...(0, $dGqE5$mergeProps)(DOMProps, thumbProps, hoverProps),
4089
4230
  ...renderProps,
4090
4231
  ref: ref,
4091
4232
  style: {
@@ -4131,6 +4272,7 @@ function $6f909507e6374d18$var$SliderThumb(props, ref) {
4131
4272
 
4132
4273
 
4133
4274
 
4275
+
4134
4276
  const $8e59e948500a8fe1$export$8699e3b644d5a28a = /*#__PURE__*/ (0, $dGqE5$createContext)(null);
4135
4277
  function $8e59e948500a8fe1$var$Switch(props, ref) {
4136
4278
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $8e59e948500a8fe1$export$8699e3b644d5a28a);
@@ -4167,8 +4309,10 @@ function $8e59e948500a8fe1$var$Switch(props, ref) {
4167
4309
  isReadOnly: isReadOnly
4168
4310
  }
4169
4311
  });
4312
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
4313
+ delete DOMProps.id;
4170
4314
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("label", {
4171
- ...(0, $dGqE5$mergeProps)(pressProps, hoverProps, renderProps),
4315
+ ...(0, $dGqE5$mergeProps)(DOMProps, pressProps, hoverProps, renderProps),
4172
4316
  slot: props.slot,
4173
4317
  "data-selected": isSelected || undefined,
4174
4318
  "data-pressed": pressed || undefined,
@@ -4408,7 +4552,7 @@ function $1910c06f0ca9905e$var$Table(props, ref) {
4408
4552
  [
4409
4553
  (0, $d8f176866e6dc039$export$f55761759794cf55),
4410
4554
  {
4411
- render: $1910c06f0ca9905e$var$TableDropIndicator
4555
+ render: $1910c06f0ca9905e$var$TableDropIndicatorWrapper
4412
4556
  }
4413
4557
  ]
4414
4558
  ]
@@ -4438,7 +4582,7 @@ const $1910c06f0ca9905e$var$TableOptionsContext = /*#__PURE__*/ (0, $dGqE5$creat
4438
4582
  function $1910c06f0ca9905e$export$fddc468cd8cb4db9() {
4439
4583
  return (0, $dGqE5$useContext)($1910c06f0ca9905e$var$TableOptionsContext);
4440
4584
  }
4441
- function $1910c06f0ca9905e$export$f850895b287ef28e(props) {
4585
+ function $1910c06f0ca9905e$var$TableHeader(props, ref) {
4442
4586
  let children = (0, $7135fc7d473fd974$export$901dbff4e54a6dd0)({
4443
4587
  children: props.children,
4444
4588
  items: props.columns
@@ -4447,10 +4591,13 @@ function $1910c06f0ca9905e$export$f850895b287ef28e(props) {
4447
4591
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $7135fc7d473fd974$export$4feb769f8ddf26c5).Provider, {
4448
4592
  value: renderer
4449
4593
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement("tableheader", {
4450
- multiple: props
4594
+ ref: (0, $7135fc7d473fd974$export$636783d3732b5559)(props, ref)
4451
4595
  }, children));
4452
4596
  }
4453
- function $1910c06f0ca9905e$export$816b5d811295e6bc(props) {
4597
+ /**
4598
+ * A header within a `<Table>`, containing the table columns.
4599
+ */ const $1910c06f0ca9905e$export$f850895b287ef28e = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$TableHeader);
4600
+ function $1910c06f0ca9905e$var$Column(props, ref) {
4454
4601
  let render = (0, $dGqE5$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));
4455
4602
  let childColumns = typeof render === "function" ? render : props.children;
4456
4603
  let children = (0, $7135fc7d473fd974$export$901dbff4e54a6dd0)({
@@ -4460,20 +4607,23 @@ function $1910c06f0ca9905e$export$816b5d811295e6bc(props) {
4460
4607
  var _props_title;
4461
4608
  // @ts-ignore
4462
4609
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("column", {
4463
- multiple: {
4464
- ...props,
4465
- rendered: (_props_title = props.title) !== null && _props_title !== void 0 ? _props_title : props.children
4466
- }
4610
+ ref: (0, $7135fc7d473fd974$export$636783d3732b5559)(props, ref, (_props_title = props.title) !== null && _props_title !== void 0 ? _props_title : props.children)
4467
4611
  }, children);
4468
4612
  }
4469
- function $1910c06f0ca9905e$export$76ccd210b9029917(props) {
4613
+ /**
4614
+ * A column within a `<Table>`.
4615
+ */ const $1910c06f0ca9905e$export$816b5d811295e6bc = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$Column);
4616
+ function $1910c06f0ca9905e$var$TableBody(props, ref) {
4470
4617
  let children = (0, $7135fc7d473fd974$export$901dbff4e54a6dd0)(props);
4471
4618
  // @ts-ignore
4472
4619
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("tablebody", {
4473
- multiple: props
4620
+ ref: (0, $7135fc7d473fd974$export$636783d3732b5559)(props, ref)
4474
4621
  }, children);
4475
4622
  }
4476
- function $1910c06f0ca9905e$export$b59bdbef9ce70de2(props) {
4623
+ /**
4624
+ * The body of a `<Table>`, containing the table rows.
4625
+ */ const $1910c06f0ca9905e$export$76ccd210b9029917 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$TableBody);
4626
+ function $1910c06f0ca9905e$var$Row(props, ref) {
4477
4627
  let children = (0, $7135fc7d473fd974$export$901dbff4e54a6dd0)({
4478
4628
  children: props.children,
4479
4629
  items: props.columns,
@@ -4486,20 +4636,23 @@ function $1910c06f0ca9905e$export$b59bdbef9ce70de2(props) {
4486
4636
  ]);
4487
4637
  return(// @ts-ignore
4488
4638
  /*#__PURE__*/ (0, $dGqE5$react).createElement("item", {
4489
- multiple: props
4639
+ ref: (0, $7135fc7d473fd974$export$636783d3732b5559)(props, ref)
4490
4640
  }, /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $7135fc7d473fd974$export$db36075d98ba73d3).Provider, {
4491
4641
  value: ctx
4492
4642
  }, children)));
4493
4643
  }
4494
- function $1910c06f0ca9905e$export$f6f0c3fe4ec306ea(props) {
4644
+ /**
4645
+ * A row within a `<Table>`.
4646
+ */ const $1910c06f0ca9905e$export$b59bdbef9ce70de2 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$Row);
4647
+ function $1910c06f0ca9905e$var$Cell(props, ref) {
4495
4648
  // @ts-ignore
4496
4649
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("cell", {
4497
- multiple: {
4498
- ...props,
4499
- rendered: props.children
4500
- }
4650
+ ref: (0, $7135fc7d473fd974$export$636783d3732b5559)(props, ref, props.children)
4501
4651
  });
4502
4652
  }
4653
+ /**
4654
+ * A cell within a table row.
4655
+ */ const $1910c06f0ca9905e$export$f6f0c3fe4ec306ea = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$Cell);
4503
4656
  function $1910c06f0ca9905e$var$TableHeaderRowGroup({ collection: collection }) {
4504
4657
  let headerRows = (0, $7135fc7d473fd974$export$727c8fc270210f13)({
4505
4658
  items: collection.headerRows,
@@ -4519,6 +4672,7 @@ function $1910c06f0ca9905e$var$TableHeaderRowGroup({ collection: collection })
4519
4672
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("thead", {
4520
4673
  ...(0, $dGqE5$filterDOMProps)(collection.head.props),
4521
4674
  ...rowGroupProps,
4675
+ ref: collection.head.props.ref,
4522
4676
  className: (_collection_head_props_className = collection.head.props.className) !== null && _collection_head_props_className !== void 0 ? _collection_head_props_className : "react-aria-TableHeader",
4523
4677
  style: collection.head.props.style
4524
4678
  }, headerRows);
@@ -4556,8 +4710,9 @@ function $1910c06f0ca9905e$var$TableBodyRowGroup({ collection: collection , isDr
4556
4710
  }, props.renderEmptyState()));
4557
4711
  let { rowGroupProps: rowGroupProps } = (0, $dGqE5$useTableRowGroup)();
4558
4712
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("tbody", {
4713
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), rowGroupProps),
4559
4714
  ...renderProps,
4560
- ...rowGroupProps,
4715
+ ref: collection.body.props.ref,
4561
4716
  "data-empty": collection.size === 0 || undefined
4562
4717
  }, isDroppable && /*#__PURE__*/ (0, $dGqE5$react).createElement($1910c06f0ca9905e$var$RootDropIndicator, null), bodyRows, emptyState);
4563
4718
  }
@@ -4599,7 +4754,7 @@ function $1910c06f0ca9905e$var$TableHeaderRow({ item: item }) {
4599
4754
  }
4600
4755
  function $1910c06f0ca9905e$var$TableColumnHeader({ column: column }) {
4601
4756
  var _state_sortDescriptor;
4602
- let ref = (0, $dGqE5$useRef)(null);
4757
+ let ref = (0, $dGqE5$useObjectRef)(column.props.ref);
4603
4758
  let { state: state } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4604
4759
  let { columnHeaderProps: columnHeaderProps } = (0, $dGqE5$useTableColumnHeader)({
4605
4760
  node: column
@@ -4619,7 +4774,7 @@ function $1910c06f0ca9905e$var$TableColumnHeader({ column: column }) {
4619
4774
  }
4620
4775
  });
4621
4776
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("th", {
4622
- ...(0, $dGqE5$mergeProps)(columnHeaderProps, focusProps),
4777
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), columnHeaderProps, focusProps),
4623
4778
  ...renderProps,
4624
4779
  colSpan: column.colspan,
4625
4780
  ref: ref,
@@ -4628,7 +4783,7 @@ function $1910c06f0ca9905e$var$TableColumnHeader({ column: column }) {
4628
4783
  }, renderProps.children);
4629
4784
  }
4630
4785
  function $1910c06f0ca9905e$var$TableRow({ item: item }) {
4631
- let ref = (0, $dGqE5$useRef)(null);
4786
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
4632
4787
  let { state: state , dragAndDropHooks: dragAndDropHooks , dragState: dragState , dropState: dropState } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4633
4788
  let { rowProps: rowProps , ...states } = (0, $dGqE5$useTableRow)({
4634
4789
  node: item,
@@ -4715,7 +4870,7 @@ function $1910c06f0ca9905e$var$TableRow({ item: item }) {
4715
4870
  ...dropIndicator.dropIndicatorProps,
4716
4871
  ref: dropIndicatorRef
4717
4872
  }))), /*#__PURE__*/ (0, $dGqE5$react).createElement("tr", {
4718
- ...(0, $dGqE5$mergeProps)(rowProps, focusProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps),
4873
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), rowProps, focusProps, hoverProps, draggableItem === null || draggableItem === void 0 ? void 0 : draggableItem.dragProps),
4719
4874
  ...renderProps,
4720
4875
  ref: ref,
4721
4876
  "data-hovered": isHovered || undefined,
@@ -4757,7 +4912,7 @@ function $1910c06f0ca9905e$var$TableRow({ item: item }) {
4757
4912
  }));
4758
4913
  }
4759
4914
  function $1910c06f0ca9905e$var$TableCell({ cell: cell }) {
4760
- let ref = (0, $dGqE5$useRef)(null);
4915
+ let ref = (0, $dGqE5$useObjectRef)(cell.props.ref);
4761
4916
  let { state: state , dragState: dragState } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4762
4917
  // @ts-ignore
4763
4918
  cell.column = state.collection.columns[cell.index];
@@ -4778,30 +4933,41 @@ function $1910c06f0ca9905e$var$TableCell({ cell: cell }) {
4778
4933
  }
4779
4934
  });
4780
4935
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("td", {
4781
- ...(0, $dGqE5$mergeProps)(gridCellProps, focusProps),
4936
+ ...(0, $dGqE5$mergeProps)((0, $dGqE5$filterDOMProps)(props), gridCellProps, focusProps),
4782
4937
  ...renderProps,
4783
4938
  ref: ref,
4784
4939
  "data-focused": isFocused || undefined,
4785
4940
  "data-focus-visible": isFocusVisible || undefined,
4786
4941
  "data-pressed": isPressed || undefined
4787
- }, cell.rendered);
4942
+ }, renderProps.children);
4788
4943
  }
4789
- function $1910c06f0ca9905e$var$TableDropIndicator(props, ref) {
4944
+ function $1910c06f0ca9905e$var$TableDropIndicatorWrapper(props, ref) {
4790
4945
  ref = (0, $dGqE5$useObjectRef)(ref);
4791
- let { state: state , dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4946
+ let { dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4792
4947
  let buttonRef = (0, $dGqE5$useRef)(null);
4793
4948
  let { dropIndicatorProps: dropIndicatorProps , isHidden: isHidden , isDropTarget: isDropTarget } = dragAndDropHooks.useDropIndicator(props, dropState, buttonRef);
4794
- let { visuallyHiddenProps: visuallyHiddenProps } = (0, $dGqE5$useVisuallyHidden)();
4795
4949
  if (isHidden) return null;
4796
- // eslint-disable-next-line react-hooks/rules-of-hooks
4797
- let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
4950
+ return /*#__PURE__*/ (0, $dGqE5$react).createElement($1910c06f0ca9905e$var$TableDropIndicatorForwardRef, {
4798
4951
  ...props,
4952
+ dropIndicatorProps: dropIndicatorProps,
4953
+ isDropTarget: isDropTarget,
4954
+ buttonRef: buttonRef,
4955
+ ref: ref
4956
+ });
4957
+ }
4958
+ function $1910c06f0ca9905e$var$TableDropIndicator(props, ref) {
4959
+ let { dropIndicatorProps: dropIndicatorProps , isDropTarget: isDropTarget , buttonRef: buttonRef , ...otherProps } = props;
4960
+ let { state: state } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4961
+ let { visuallyHiddenProps: visuallyHiddenProps } = (0, $dGqE5$useVisuallyHidden)();
4962
+ let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
4963
+ ...otherProps,
4799
4964
  defaultClassName: "react-aria-DropIndicator",
4800
4965
  values: {
4801
4966
  isDropTarget: isDropTarget
4802
4967
  }
4803
4968
  });
4804
4969
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("tr", {
4970
+ ...(0, $dGqE5$filterDOMProps)(props),
4805
4971
  ...renderProps,
4806
4972
  role: "row",
4807
4973
  ref: ref,
@@ -4819,6 +4985,7 @@ function $1910c06f0ca9905e$var$TableDropIndicator(props, ref) {
4819
4985
  ref: buttonRef
4820
4986
  })));
4821
4987
  }
4988
+ const $1910c06f0ca9905e$var$TableDropIndicatorForwardRef = /*#__PURE__*/ (0, $dGqE5$forwardRef)($1910c06f0ca9905e$var$TableDropIndicator);
4822
4989
  function $1910c06f0ca9905e$var$RootDropIndicator() {
4823
4990
  let { state: state , dragAndDropHooks: dragAndDropHooks , dropState: dropState } = (0, $dGqE5$useContext)($1910c06f0ca9905e$var$InternalTableContext);
4824
4991
  let ref = (0, $dGqE5$useRef)(null);
@@ -4874,15 +5041,19 @@ const $5e8ad37a45e1c704$var$InternalTabsContext = /*#__PURE__*/ (0, $dGqE5$creat
4874
5041
  function $5e8ad37a45e1c704$var$Tabs(props, ref) {
4875
5042
  [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f);
4876
5043
  let { orientation: orientation = "horizontal" } = props;
5044
+ let values = (0, $dGqE5$useMemo)(()=>({
5045
+ orientation: orientation
5046
+ }), [
5047
+ orientation
5048
+ ]);
4877
5049
  let [state, setState] = (0, $dGqE5$useState)(null);
4878
5050
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
4879
5051
  ...props,
4880
5052
  defaultClassName: "react-aria-Tabs",
4881
- values: {
4882
- orientation: orientation
4883
- }
5053
+ values: values
4884
5054
  });
4885
5055
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
5056
+ ...(0, $dGqE5$filterDOMProps)(props),
4886
5057
  ...renderProps,
4887
5058
  ref: ref,
4888
5059
  slot: props.slot,
@@ -4893,7 +5064,7 @@ function $5e8ad37a45e1c704$var$Tabs(props, ref) {
4893
5064
  setState: setState,
4894
5065
  orientation: orientation
4895
5066
  }
4896
- }, props.children));
5067
+ }, renderProps.children));
4897
5068
  }
4898
5069
  /**
4899
5070
  * Tabs organize content into multiple sections and allow users to navigate between them.
@@ -4926,7 +5097,10 @@ function $5e8ad37a45e1c704$var$TabList(props, ref) {
4926
5097
  orientation: orientation
4927
5098
  }
4928
5099
  });
5100
+ let DOMProps = (0, $dGqE5$filterDOMProps)(props);
5101
+ delete DOMProps.id;
4929
5102
  return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $dGqE5$react).Fragment, null, /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
5103
+ ...DOMProps,
4930
5104
  ...tabListProps,
4931
5105
  ref: objectRef,
4932
5106
  ...renderProps
@@ -4941,14 +5115,20 @@ function $5e8ad37a45e1c704$var$TabList(props, ref) {
4941
5115
  /**
4942
5116
  * A TabList is used within Tabs to group tabs that a user can switch between.
4943
5117
  * The ids of the items within the <TabList> must match up with a corresponding item inside the <TabPanels>.
4944
- */ const $5e8ad37a45e1c704$export$e51a686c67fdaa2d = (0, $dGqE5$forwardRef)($5e8ad37a45e1c704$var$TabList);
4945
- function $5e8ad37a45e1c704$export$3e41faf802a29e71(props) {
5118
+ */ const $5e8ad37a45e1c704$export$e51a686c67fdaa2d = /*#__PURE__*/ (0, $dGqE5$forwardRef)($5e8ad37a45e1c704$var$TabList);
5119
+ function $5e8ad37a45e1c704$var$Tab(props, ref) {
4946
5120
  // @ts-ignore
4947
- return (0, $7135fc7d473fd974$export$6d08773d2e66f8f2)(props);
5121
+ return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $7135fc7d473fd974$export$6d08773d2e66f8f2), {
5122
+ ...props,
5123
+ ref: ref
5124
+ });
4948
5125
  }
5126
+ /**
5127
+ * A Tab provides a title for an individual item within a TabList.
5128
+ */ const $5e8ad37a45e1c704$export$3e41faf802a29e71 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($5e8ad37a45e1c704$var$Tab);
4949
5129
  function $5e8ad37a45e1c704$var$TabInner({ item: item , state: state }) {
4950
5130
  let { key: key } = item;
4951
- let ref = (0, $dGqE5$react).useRef(null);
5131
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
4952
5132
  let { tabProps: tabProps , isSelected: isSelected , isDisabled: isDisabled , isPressed: isPressed } = (0, $dGqE5$useTab)({
4953
5133
  key: key
4954
5134
  }, state, ref);
@@ -4969,8 +5149,10 @@ function $5e8ad37a45e1c704$var$TabInner({ item: item , state: state }) {
4969
5149
  isHovered: isHovered
4970
5150
  }
4971
5151
  });
5152
+ let DOMProps = (0, $dGqE5$filterDOMProps)(item.props);
5153
+ delete DOMProps.id;
4972
5154
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
4973
- ...(0, $dGqE5$mergeProps)(tabProps, focusProps, hoverProps, renderProps),
5155
+ ...(0, $dGqE5$mergeProps)(DOMProps, tabProps, focusProps, hoverProps, renderProps),
4974
5156
  ref: ref,
4975
5157
  "data-focus-visible": isFocusVisible || undefined,
4976
5158
  "data-pressed": isPressed || undefined,
@@ -4985,12 +5167,18 @@ function $5e8ad37a45e1c704$export$5dae8d435677f210(props) {
4985
5167
  item: selectedItem
4986
5168
  }), portal);
4987
5169
  }
4988
- function $5e8ad37a45e1c704$export$3d96ec278d3efce4(props) {
4989
- return (0, $7135fc7d473fd974$export$6d08773d2e66f8f2)(props);
5170
+ function $5e8ad37a45e1c704$var$TabPanel(props, ref) {
5171
+ return /*#__PURE__*/ (0, $dGqE5$react).createElement((0, $7135fc7d473fd974$export$6d08773d2e66f8f2), {
5172
+ ...props,
5173
+ ref: ref
5174
+ });
4990
5175
  }
5176
+ /**
5177
+ * A TabPanel provides the content for a tab.
5178
+ */ const $5e8ad37a45e1c704$export$3d96ec278d3efce4 = /*#__PURE__*/ (0, $dGqE5$forwardRef)($5e8ad37a45e1c704$var$TabPanel);
4991
5179
  function $5e8ad37a45e1c704$var$SelectedTabPanel({ item: item }) {
4992
5180
  const { state: state } = (0, $dGqE5$useContext)($5e8ad37a45e1c704$var$InternalTabsContext);
4993
- let ref = (0, $dGqE5$react).useRef(null);
5181
+ let ref = (0, $dGqE5$useObjectRef)(item.props.ref);
4994
5182
  let { tabPanelProps: tabPanelProps } = (0, $dGqE5$useTabPanel)(item.props, state, ref);
4995
5183
  let { focusProps: focusProps , isFocused: isFocused , isFocusVisible: isFocusVisible } = (0, $dGqE5$useFocusRing)();
4996
5184
  let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({
@@ -5002,8 +5190,10 @@ function $5e8ad37a45e1c704$var$SelectedTabPanel({ item: item }) {
5002
5190
  isFocusVisible: isFocusVisible
5003
5191
  }
5004
5192
  });
5193
+ let DOMProps = (0, $dGqE5$filterDOMProps)(item.props);
5194
+ delete DOMProps.id;
5005
5195
  return /*#__PURE__*/ (0, $dGqE5$react).createElement("div", {
5006
- ...(0, $dGqE5$mergeProps)(tabPanelProps, focusProps, renderProps),
5196
+ ...(0, $dGqE5$mergeProps)(DOMProps, tabPanelProps, focusProps, renderProps),
5007
5197
  ref: ref,
5008
5198
  "data-focus-visible": isFocusVisible || undefined
5009
5199
  });