@aurodesignsystem-dev/auro-formkit 0.0.0-pr1550.0 → 0.0.0-pr1550.2

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 (54) hide show
  1. package/components/checkbox/demo/accessibility.md +1 -1
  2. package/components/checkbox/demo/customize.min.js +1 -1
  3. package/components/checkbox/demo/getting-started.min.js +1 -1
  4. package/components/checkbox/demo/index.min.js +1 -1
  5. package/components/checkbox/dist/index.js +1 -1
  6. package/components/checkbox/dist/registered.js +1 -1
  7. package/components/combobox/demo/accessibility.md +1 -1
  8. package/components/combobox/demo/customize.md +53 -1
  9. package/components/combobox/demo/customize.min.js +9 -4
  10. package/components/combobox/demo/getting-started.min.js +9 -4
  11. package/components/combobox/demo/index.min.js +9 -4
  12. package/components/combobox/dist/index.js +9 -4
  13. package/components/combobox/dist/registered.js +9 -4
  14. package/components/counter/demo/customize.min.js +2 -2
  15. package/components/counter/demo/index.min.js +2 -2
  16. package/components/counter/dist/index.js +2 -2
  17. package/components/counter/dist/registered.js +2 -2
  18. package/components/datepicker/demo/accessibility.md +1 -1
  19. package/components/datepicker/demo/customize.md +1 -1
  20. package/components/datepicker/demo/customize.min.js +26 -7
  21. package/components/datepicker/demo/getting-started.md +3 -3
  22. package/components/datepicker/demo/index.min.js +26 -7
  23. package/components/datepicker/dist/index.js +26 -7
  24. package/components/datepicker/dist/registered.js +26 -7
  25. package/components/dropdown/demo/customize.min.js +1 -1
  26. package/components/dropdown/demo/getting-started.min.js +1 -1
  27. package/components/dropdown/demo/index.min.js +1 -1
  28. package/components/dropdown/dist/index.js +1 -1
  29. package/components/dropdown/dist/registered.js +1 -1
  30. package/components/form/demo/customize.min.js +42 -18
  31. package/components/form/demo/getting-started.min.js +42 -18
  32. package/components/form/demo/index.min.js +42 -18
  33. package/components/form/demo/registerDemoDeps.min.js +42 -18
  34. package/components/input/demo/accessibility.md +1 -1
  35. package/components/input/demo/customize.min.js +1 -1
  36. package/components/input/demo/getting-started.min.js +1 -1
  37. package/components/input/demo/index.min.js +1 -1
  38. package/components/input/dist/index.js +1 -1
  39. package/components/input/dist/registered.js +1 -1
  40. package/components/radio/demo/accessibility.md +1 -1
  41. package/components/radio/demo/customize.min.js +1 -1
  42. package/components/radio/demo/getting-started.min.js +1 -1
  43. package/components/radio/demo/index.min.js +1 -1
  44. package/components/radio/dist/index.js +1 -1
  45. package/components/radio/dist/registered.js +1 -1
  46. package/components/select/demo/accessibility.md +1 -1
  47. package/components/select/demo/customize.md +1 -1
  48. package/components/select/demo/customize.min.js +2 -2
  49. package/components/select/demo/getting-started.min.js +2 -2
  50. package/components/select/demo/index.min.js +2 -2
  51. package/components/select/dist/index.js +2 -2
  52. package/components/select/dist/registered.js +2 -2
  53. package/custom-elements.json +1389 -1389
  54. package/package.json +1 -1
@@ -9344,168 +9344,174 @@
9344
9344
  },
9345
9345
  {
9346
9346
  "kind": "javascript-module",
9347
- "path": "components/form/src/auro-form.js",
9347
+ "path": "components/dropdown/src/auro-dropdown.js",
9348
9348
  "declarations": [
9349
9349
  {
9350
9350
  "kind": "class",
9351
- "description": "The `auro-form` element provides users a way to create and manage forms in a consistent manner.",
9352
- "name": "AuroForm",
9351
+ "description": "The `auro-dropdown` element provides a way to place content in a bib that can be toggled.",
9352
+ "name": "AuroDropdown",
9353
+ "cssParts": [
9354
+ {
9355
+ "description": "The trigger content container.",
9356
+ "name": "trigger"
9357
+ },
9358
+ {
9359
+ "description": "The collapsed/expanded state icon container.",
9360
+ "name": "chevron"
9361
+ },
9362
+ {
9363
+ "description": "The size of the dropdown bib. (height, width, maxHeight, maxWidth only)",
9364
+ "name": "size"
9365
+ },
9366
+ {
9367
+ "description": "The helpText content container.",
9368
+ "name": "helpText"
9369
+ }
9370
+ ],
9353
9371
  "slots": [
9354
9372
  {
9355
- "description": "The default slot for form elements.",
9356
- "name": "default"
9373
+ "description": "Default slot for the dropdown bib content.",
9374
+ "name": ""
9375
+ },
9376
+ {
9377
+ "description": "Defines the content of the helpText.",
9378
+ "name": "helpText"
9379
+ },
9380
+ {
9381
+ "description": "Defines the content of the trigger.",
9382
+ "name": "trigger"
9357
9383
  }
9358
9384
  ],
9359
9385
  "members": [
9360
9386
  {
9361
9387
  "kind": "field",
9362
- "name": "formElementTags",
9388
+ "name": "shadowRootOptions",
9363
9389
  "static": true,
9364
9390
  "readonly": true
9365
9391
  },
9366
9392
  {
9367
- "kind": "method",
9368
- "name": "_isElementTag",
9369
- "parameters": [
9370
- {
9371
- "name": "elementTag",
9372
- "description": "The HTML tag name like `auro-datepicker`.",
9373
- "type": {
9374
- "text": "string"
9375
- }
9376
- },
9377
- {
9378
- "name": "element",
9379
- "description": "The actual HTML element to compare.",
9380
- "type": {
9381
- "text": "HTMLElement"
9382
- }
9383
- }
9384
- ],
9385
- "description": "Compare tag name with element to identify it (for API purposes).",
9393
+ "kind": "field",
9394
+ "name": "commonWrapperClasses",
9395
+ "privacy": "private",
9386
9396
  "return": {
9387
9397
  "type": {
9388
- "text": "boolean"
9398
+ "text": "object"
9389
9399
  }
9390
9400
  },
9391
- "privacy": "private"
9401
+ "readonly": true
9392
9402
  },
9393
9403
  {
9394
9404
  "kind": "method",
9395
- "name": "_isInElementCollection",
9396
- "parameters": [
9397
- {
9398
- "name": "collection",
9399
- "description": "The array to use for tag name search.",
9400
- "type": {
9401
- "text": "string[]"
9402
- }
9403
- },
9404
- {
9405
- "name": "element",
9406
- "description": "The element to compare against the master list.",
9407
- "type": {
9408
- "text": "HTMLElement"
9409
- }
9410
- }
9411
- ],
9412
- "description": "Shared code for determining if an element is something we care about (submit, form element, etc.).",
9405
+ "name": "_intializeDefaults",
9406
+ "privacy": "private",
9413
9407
  "return": {
9414
9408
  "type": {
9415
- "text": "boolean"
9409
+ "text": "void"
9416
9410
  }
9417
- },
9418
- "privacy": "private"
9411
+ }
9419
9412
  },
9420
9413
  {
9421
9414
  "kind": "method",
9422
- "name": "isFormElement",
9423
- "parameters": [
9424
- {
9425
- "name": "element",
9426
- "description": "The element to check (attr or tag name).",
9427
- "type": {
9428
- "text": "HTMLElement"
9429
- }
9415
+ "name": "hide",
9416
+ "description": "Public method to hide the dropdown.",
9417
+ "return": {
9418
+ "type": {
9419
+ "text": "void"
9430
9420
  }
9431
- ],
9432
- "description": "Check if the tag name is a form element.",
9421
+ }
9422
+ },
9423
+ {
9424
+ "kind": "method",
9425
+ "name": "show",
9426
+ "description": "Public method to show the dropdown.",
9433
9427
  "return": {
9434
9428
  "type": {
9435
- "text": "boolean"
9429
+ "text": "void"
9436
9430
  }
9437
- },
9438
- "privacy": "private"
9431
+ }
9439
9432
  },
9440
9433
  {
9441
9434
  "kind": "method",
9442
- "name": "_isDisabled",
9435
+ "name": "focus",
9436
+ "description": "When bib is open, focus on the first element inside of bib.\nIf not, trigger element will get focus."
9437
+ },
9438
+ {
9439
+ "kind": "method",
9440
+ "name": "setActiveDescendant",
9443
9441
  "parameters": [
9444
9442
  {
9445
9443
  "name": "element",
9446
- "description": "The element to check.",
9444
+ "description": "The element to set as the active descendant, or null to clear.",
9447
9445
  "type": {
9448
- "text": "HTMLElement | undefined | null"
9446
+ "text": "HTMLElement|null"
9449
9447
  }
9450
9448
  }
9451
9449
  ],
9452
- "description": "Whether a given element is currently disabled. Disabled controls are excluded\nfrom submission, validity, and initial-state checks per the HTML spec\n(section 4.10.19.2 \"Enabling and disabling form controls\":\nhttps://www.w3.org/TR/2011/WD-html5-20110113/association-of-controls-and-forms.html).\n\nImplementation note: we deliberately read only the attribute. Every Auro\nform element in `formElementTags` declares `disabled` with `reflect: true`,\nso the attribute and property stay in sync. Reading the attribute also\nlets the MutationObserver in `connectedCallback` (which is filtered to\n`['disabled', 'name']`) be the single source of truth for re-renders.\nIf a future form-element type ships without attribute reflection, expand\nthis helper to also read `element.disabled`.",
9450
+ "description": "Sets the active descendant element for accessibility.\nUses ariaActiveDescendantElement to cross shadow DOM boundaries.\nThis function is used in components that contain `auro-dropdown` to set the active descendant.",
9451
+ "privacy": "private",
9453
9452
  "return": {
9454
9453
  "type": {
9455
- "text": "boolean"
9454
+ "text": "void"
9456
9455
  }
9457
- },
9458
- "privacy": "private"
9456
+ }
9459
9457
  },
9460
9458
  {
9461
9459
  "kind": "method",
9462
- "name": "_isNameDisabled",
9460
+ "name": "register",
9461
+ "static": true,
9463
9462
  "parameters": [
9464
9463
  {
9465
9464
  "name": "name",
9466
- "description": "The `name` attribute used to register the element.",
9465
+ "default": "\"auro-dropdown\"",
9466
+ "description": "The name of the element that you want to register.",
9467
+ "optional": true,
9467
9468
  "type": {
9468
9469
  "text": "string"
9469
9470
  }
9470
9471
  }
9471
9472
  ],
9472
- "description": "Whether the tracked form element registered under `name` is currently disabled.\nSee `_isDisabled` for the HTML-spec rationale behind excluding disabled\ncontrols from form state.\n\nReads a cached flag on `formState[name]` populated by `_addElementToState`\nat registration and refreshed by `_handleAttributeMutations` whenever the\nelement's `disabled` attribute toggles. The cache is fed by the same\n`hasAttribute('disabled')` read as `_isDisabled`, so the \"future form-element\ntype without attribute reflection\" caveat documented there applies here too.",
9473
+ "description": "This will register this element with the browser."
9474
+ },
9475
+ {
9476
+ "kind": "field",
9477
+ "name": "focusableEntityQuery",
9478
+ "description": "Accessor for reusing the focusable entity query string.",
9479
+ "privacy": "private",
9473
9480
  "return": {
9474
9481
  "type": {
9475
- "text": "boolean"
9482
+ "text": "string"
9476
9483
  }
9477
9484
  },
9478
- "privacy": "private"
9485
+ "readonly": true
9479
9486
  },
9480
9487
  {
9481
9488
  "kind": "method",
9482
- "name": "_eventIsValidFormEvent",
9489
+ "name": "handleDropdownToggle",
9483
9490
  "parameters": [
9484
9491
  {
9485
9492
  "name": "event",
9486
- "description": "The event to validate.",
9493
+ "description": "The custom event that contains the dropdown toggle information.",
9487
9494
  "type": {
9488
- "text": "Event"
9495
+ "text": "CustomEvent"
9489
9496
  }
9490
9497
  }
9491
9498
  ],
9492
- "description": "Validates if an event is from a valid form element with a name.",
9493
- "return": {
9494
- "type": {
9495
- "text": "boolean"
9496
- }
9497
- },
9499
+ "description": "Handles the custom event `auroDropdown-toggled` to update the visibility of the dropdown bib.",
9498
9500
  "privacy": "private"
9499
9501
  },
9500
9502
  {
9501
- "kind": "field",
9502
- "name": "buttonElementTags",
9503
- "static": true,
9504
- "readonly": true
9503
+ "kind": "method",
9504
+ "name": "exposeCssParts",
9505
+ "description": "Exposes CSS parts for styling from parent components.",
9506
+ "return": {
9507
+ "type": {
9508
+ "text": "void"
9509
+ }
9510
+ }
9505
9511
  },
9506
9512
  {
9507
9513
  "kind": "method",
9508
- "name": "isButtonElement",
9514
+ "name": "isCustomSlotContent",
9509
9515
  "parameters": [
9510
9516
  {
9511
9517
  "name": "element",
@@ -9515,182 +9521,90 @@
9515
9521
  }
9516
9522
  }
9517
9523
  ],
9518
- "description": "Check if the tag name is a button element.",
9524
+ "description": "Determines if content is within a custom slot.",
9525
+ "privacy": "private",
9519
9526
  "return": {
9520
9527
  "type": {
9521
- "text": "boolean"
9528
+ "text": "Boolean"
9522
9529
  }
9523
- },
9524
- "privacy": "private"
9530
+ }
9525
9531
  },
9526
9532
  {
9527
- "kind": "field",
9528
- "name": "value",
9529
- "description": "Returns the current values of all named, enabled form elements as a key-value object, keyed by each element's `name` attribute. Each value is the child component's own `.value`, so the shape depends on the element type — see that component's documentation for its exact shape (for example, `auro-checkbox-group` yields an array, `auro-counter-group` yields an object keyed by counter name, and `auro-select` with `multiSelect` yields a JSON-encoded string). The one form-specific exception is a `range` `auro-datepicker`, whose `.values` array (`[start, end]`) is stored instead of its single `.value` string.",
9533
+ "kind": "method",
9534
+ "name": "handleFocusin",
9535
+ "description": "Function to support",
9536
+ "privacy": "private",
9530
9537
  "return": {
9531
9538
  "type": {
9532
- "text": "Record<string, string | number | boolean | string[] | Record<string, number> | null>"
9539
+ "text": "void"
9533
9540
  }
9534
- },
9535
- "readonly": true
9541
+ }
9536
9542
  },
9537
9543
  {
9538
- "kind": "field",
9539
- "name": "submitElements",
9540
- "description": "Getter for internal _submitElements.",
9541
- "return": {
9542
- "type": {
9543
- "text": "HTMLButtonElement[]"
9544
- }
9545
- },
9546
- "privacy": "private",
9547
- "readonly": true
9544
+ "kind": "method",
9545
+ "name": "updateFocusTrap",
9546
+ "privacy": "private"
9548
9547
  },
9549
9548
  {
9550
- "kind": "field",
9551
- "name": "resetElements",
9552
- "description": "Returns a collection of elements that will reset the form.",
9549
+ "kind": "method",
9550
+ "name": "_getActiveElements",
9551
+ "description": "Returns the chain of active (focused) elements through shadow roots.",
9552
+ "privacy": "private",
9553
9553
  "return": {
9554
9554
  "type": {
9555
- "text": "HTMLButtonElement[]"
9555
+ "text": "Array<HTMLElement>"
9556
9556
  }
9557
- },
9558
- "privacy": "private",
9559
- "readonly": true
9557
+ }
9560
9558
  },
9561
9559
  {
9562
9560
  "kind": "method",
9563
- "name": "_isFormValid",
9564
- "description": "Raw constraint-validation check. Returns `true` when no enabled field\nhas a validity error. Unlike the public `validity` getter, this does\nNOT gate on `isInitialState` callers that need to make a decision\nbased on the actual constraint state (submit-button enablement, the\ninternal `submit()` gate) read this so a pre-filled valid form is\ncorrectly recognized as submittable at first render.",
9565
- "return": {
9566
- "type": {
9567
- "text": "boolean"
9568
- }
9569
- },
9561
+ "name": "_setPageInert",
9562
+ "description": "Sets `inert` on sibling elements of the dropdown's top-level host\nso that content outside the dropdown is not interactive while the modal is open.\nWalks up through shadow DOM boundaries to find the outermost host element\nin the light DOM, then sets `inert` on siblings at each ancestor level\nto ensure all page content outside the host subtree is inert.",
9570
9563
  "privacy": "private"
9571
9564
  },
9572
9565
  {
9573
9566
  "kind": "method",
9574
- "name": "_hasResetableState",
9575
- "description": "Whether the reset button should be enabled. True when the form has\ndiverged from its initial state (so the user can always return to\ndefaults — even if the dirty value lives behind a now-disabled field),\nOR when any non-disabled field has a current value or captured initial\nvalue (covers pre-filled forms and user-cleared-back-to-empty cases).",
9567
+ "name": "_clearPageInert",
9568
+ "description": "Restores `inert` state on siblings that were tracked by `_setPageInert`.\nUses reference counting so inert is only cleared when the last modal\ndropdown releases a given element. Preserves the original inert state\nso externally-inerted elements are not inadvertently re-enabled.",
9569
+ "privacy": "private"
9570
+ },
9571
+ {
9572
+ "kind": "method",
9573
+ "name": "handleFocusout",
9574
+ "description": "Function to support",
9575
+ "privacy": "private",
9576
9576
  "return": {
9577
9577
  "type": {
9578
- "text": "boolean"
9578
+ "text": "void"
9579
9579
  }
9580
- },
9581
- "privacy": "private"
9580
+ }
9582
9581
  },
9583
9582
  {
9584
9583
  "kind": "method",
9585
- "name": "_normalizeEmpty",
9584
+ "name": "bindFocusEventToTrigger",
9586
9585
  "parameters": [
9587
9586
  {
9588
- "name": "value",
9589
- "description": "Value to normalize.",
9590
- "type": {
9591
- "text": "*"
9592
- }
9593
- }
9594
- ],
9595
- "description": "Collapse empty representations to a single canonical `null`.\n\n`_addElementToState` captures `null` for a field that mounts without a\n`value` attribute (`element.value || element.getAttribute('value')` is\nfalsy → resolves to `null`), but `sharedInputListener` later stores the\nraw `event.target.value` — which is `''` for a user-cleared text input.\nWithout this normalization, backspacing back to empty would taint the\nform forever (`'' !== null`) and Reset would stay enabled with nothing\nto actually reset.\n\n`''`, `undefined`, and `[]` all collapse to `null`. The empty-array case\ncovers checkbox-group, radio-group, and multiselect, where `[]` means\n\"no selection\" — semantically the same as `null`/`''`. Genuine values\n— including `0`, `false`, non-empty strings, and non-empty arrays —\npass through unchanged so number, boolean, and populated multi-value\nfields still compare correctly.",
9596
- "return": {
9597
- "type": {
9598
- "text": "*"
9599
- }
9600
- },
9601
- "privacy": "private"
9602
- },
9603
- {
9604
- "kind": "method",
9605
- "name": "_calculateValidity",
9606
- "description": "Infer validity status based on current formState.\n\nValidity stays `null` while the form is in its initial state — this is\nthe \"stay quiet until the user interacts\" UX contract that consumers\ndepend on to delay error indicators. Code that needs the raw\nconstraint-validation result regardless of interaction (e.g.,\nsubmit-button enablement) should call `_isFormValid()` directly.",
9607
- "privacy": "private"
9608
- },
9609
- {
9610
- "kind": "field",
9611
- "name": "validity",
9612
- "description": "Returns `'valid'` if all required and interacted-with form elements are valid, `'invalid'` if any are not, or `null` if the form has not been interacted with yet.",
9613
- "return": {
9614
- "type": {
9615
- "text": "\"valid\" | \"invalid\" | null"
9616
- }
9617
- },
9618
- "readonly": true
9619
- },
9620
- {
9621
- "kind": "method",
9622
- "name": "_setInitialState",
9623
- "description": "Determines whether the form is in its initial (untouched) state.\n\nA field is tainted if either:\n - its value differs from the value captured on first render, OR\n - its validity is failing (anything other than `null` or `'valid'`).\n\nValidity acts as a backup signal: it catches users who interact with a\nfield without changing its value (e.g., focusing and blurring a required\nfield). We skip `null` (not yet validated) and `'valid'` (the default\nafter Auro's auto-validation on mount) because neither proves the user\ntouched anything.",
9624
- "return": {
9625
- "type": {
9626
- "text": "void"
9627
- }
9628
- },
9629
- "privacy": "private"
9630
- },
9631
- {
9632
- "kind": "field",
9633
- "name": "isInitialState",
9634
- "description": "Returns `true` if no form element has been interacted with or had its value changed since the form was initialized or last reset.",
9635
- "return": {
9636
- "type": {
9637
- "text": "boolean"
9638
- }
9639
- },
9640
- "readonly": true
9641
- },
9642
- {
9643
- "kind": "method",
9644
- "name": "setDisabledStateOnButtons",
9645
- "description": "Enables or disables submit and reset buttons based on the current form state and validity.",
9646
- "return": {
9647
- "type": {
9648
- "text": "void"
9649
- }
9650
- },
9651
- "privacy": "private"
9652
- },
9653
- {
9654
- "kind": "method",
9655
- "name": "queryAuroElements",
9656
- "description": "Construct the query strings from elements, append them together, execute, and return the NodeList.",
9657
- "return": {
9658
- "type": {
9659
- "text": "NodeList"
9660
- }
9661
- },
9662
- "privacy": "private"
9663
- },
9664
- {
9665
- "kind": "method",
9666
- "name": "_addElementToState",
9667
- "parameters": [
9668
- {
9669
- "name": "element",
9670
- "description": "The element to add to our state.",
9587
+ "name": "event",
9588
+ "description": "The original focus event.",
9671
9589
  "type": {
9672
- "text": "HTMLElement"
9590
+ "text": "Event"
9673
9591
  }
9674
9592
  }
9675
9593
  ],
9676
- "description": "Store an element in state and on the _elements array.",
9594
+ "description": "Creates and dispatches a duplicate focus event on the trigger element.",
9677
9595
  "privacy": "private"
9678
9596
  },
9679
9597
  {
9680
9598
  "kind": "method",
9681
- "name": "initializeState",
9682
- "description": "Initialize (or reinitialize) the form state.",
9683
- "return": {
9684
- "type": {
9685
- "text": "void"
9686
- }
9687
- },
9599
+ "name": "setupTriggerFocusEventBinding",
9600
+ "description": "Sets up event listeners to deliver focus and blur events from nested Auro components within the trigger slot to trigger.\nThis ensures that focus/blur events originating from within these components are propagated to the trigger element itself.",
9688
9601
  "privacy": "private"
9689
9602
  },
9690
9603
  {
9691
9604
  "kind": "method",
9692
- "name": "reset",
9693
- "description": "Resets all form elements to their initial state and fires a `reset` event. The event's `detail.previousValue` contains the form values captured immediately before the reset.",
9605
+ "name": "clearTriggerFocusEventBinding",
9606
+ "description": "Clears focus and blur event listeners from nested Auro components within the trigger slot.",
9607
+ "privacy": "private",
9694
9608
  "return": {
9695
9609
  "type": {
9696
9610
  "text": "void"
@@ -9699,1785 +9613,1871 @@
9699
9613
  },
9700
9614
  {
9701
9615
  "kind": "method",
9702
- "name": "submit",
9703
- "description": "Validates all form elements. If all are valid, fires a `submit` event with `detail.value` containing the current form values. If any element is invalid, its error state is surfaced and the `submit` event is not fired.",
9704
- "return": {
9705
- "type": {
9706
- "text": "Promise<void>"
9707
- }
9708
- }
9709
- },
9710
- {
9711
- "kind": "method",
9712
- "name": "register",
9713
- "static": true,
9616
+ "name": "clearTriggerA11yAttributes",
9714
9617
  "parameters": [
9715
9618
  {
9716
- "name": "name",
9717
- "default": "\"auro-form\"",
9718
- "description": "The custom element tag name to register.",
9719
- "optional": true,
9720
- "type": {
9721
- "text": "string"
9722
- }
9619
+ "name": "triggerElement"
9723
9620
  }
9724
- ],
9725
- "description": "Registers the `auro-form` custom element with the browser under a given tag name."
9621
+ ]
9726
9622
  },
9727
9623
  {
9728
9624
  "kind": "method",
9729
- "name": "sharedInputListener",
9625
+ "name": "handleTriggerContentSlotChange",
9730
9626
  "parameters": [
9731
9627
  {
9732
9628
  "name": "event",
9733
- "description": "The event that is fired from the form element.",
9629
+ "description": "Native slotchange event.",
9734
9630
  "type": {
9735
9631
  "text": "Event"
9736
9632
  }
9737
9633
  }
9738
9634
  ],
9739
- "description": "Shared input listener for all form elements.",
9740
- "privacy": "private"
9635
+ "description": "Handles changes to the trigger content slot and updates related properties.\n\nIt first updates the floater settings\nThen, it retrieves the assigned nodes from the event target and checks if any of\nthe nodes contain non-empty text content, updating the `hasTriggerContent` property accordingly.",
9636
+ "privacy": "private",
9637
+ "return": {
9638
+ "type": {
9639
+ "text": "void"
9640
+ }
9641
+ }
9741
9642
  },
9742
9643
  {
9743
9644
  "kind": "method",
9744
- "name": "sharedValidationListener",
9745
- "parameters": [
9746
- {
9747
- "name": "event",
9748
- "description": "The event that is fired from the form element.",
9749
- "type": {
9750
- "text": "Event"
9751
- }
9752
- }
9753
- ],
9754
- "description": "Shared validation listener for all form elements.",
9645
+ "name": "handleDefaultSlot",
9646
+ "description": "Handles the default slot change event and updates the content.\n\nThis method retrieves all nodes assigned to the default slot of the event target and appends them\nto the `bibContent` element. If a callback function `onSlotChange` is defined, it is invoked to\nnotify about the slot change.",
9755
9647
  "privacy": "private"
9756
9648
  },
9757
9649
  {
9758
9650
  "kind": "method",
9759
- "name": "handleKeyDown",
9651
+ "name": "renderBasicHtml",
9760
9652
  "parameters": [
9761
9653
  {
9762
- "name": "event",
9763
- "description": "The keyboard event.",
9654
+ "name": "helpTextClasses",
9655
+ "description": "Classes to apply to the help text container.",
9764
9656
  "type": {
9765
- "text": "KeyboardEvent"
9657
+ "text": "Object"
9766
9658
  }
9767
9659
  }
9768
9660
  ],
9769
- "description": "Handle Enter key press on form elements.",
9770
- "privacy": "private"
9661
+ "description": "Returns HTML for the common portion of the layouts.",
9662
+ "privacy": "private",
9663
+ "return": {
9664
+ "type": {
9665
+ "text": "html"
9666
+ }
9667
+ }
9771
9668
  },
9772
9669
  {
9773
9670
  "kind": "method",
9774
- "name": "_attachEventListeners",
9775
- "description": "Attaches input, validation, and keydown listeners to all tracked form and button elements.\nRemoves existing listeners first to avoid duplicates on re-initialization.",
9671
+ "name": "renderLayoutClassic",
9672
+ "description": "Returns HTML for the classic layout. Does not support type=\"*\".",
9673
+ "privacy": "private",
9776
9674
  "return": {
9777
9675
  "type": {
9778
- "text": "void"
9676
+ "text": "html"
9779
9677
  }
9780
- },
9781
- "privacy": "private"
9678
+ }
9782
9679
  },
9783
9680
  {
9784
9681
  "kind": "method",
9785
- "name": "_handleAttributeMutations",
9786
- "parameters": [
9787
- {
9788
- "name": "mutations",
9789
- "description": "The batched mutation records.",
9790
- "type": {
9791
- "text": "MutationRecord[]"
9792
- }
9793
- }
9794
- ],
9795
- "description": "Handle batched MutationObserver records for `disabled` and `name`\nattribute changes on tracked form elements. A `name` change invalidates\nthe formState keying — we resolve it by re-initializing state. A `disabled`\nchange simply needs a re-render (so `value` / `validity` getters re-evaluate)\nand a refresh of the submit/reset button enablement.",
9682
+ "name": "renderLayoutSnowflake",
9683
+ "description": "Returns HTML for the snowflake layout. Does not support type=\"*\".",
9684
+ "privacy": "private",
9796
9685
  "return": {
9797
9686
  "type": {
9798
- "text": "void"
9687
+ "text": "html"
9799
9688
  }
9800
- },
9801
- "privacy": "private"
9689
+ }
9802
9690
  },
9803
9691
  {
9804
9692
  "kind": "method",
9805
- "name": "mutationEventListener",
9806
- "description": "Mutation observer for form elements. Slot change does not trigger unless\nroot-level elements are added/removed. This is a workaround to ensure\nnested form elements are also observed.",
9693
+ "name": "renderLayoutEmphasized",
9694
+ "description": "Returns HTML for the emphasized layout. Does not support type=\"*\".",
9695
+ "privacy": "private",
9807
9696
  "return": {
9808
9697
  "type": {
9809
- "text": "void"
9698
+ "text": "html"
9810
9699
  }
9811
- },
9812
- "privacy": "private"
9700
+ }
9813
9701
  },
9814
9702
  {
9815
9703
  "kind": "method",
9816
- "name": "onSlotChange",
9704
+ "name": "renderLayout",
9817
9705
  "parameters": [
9818
9706
  {
9819
- "name": "event",
9820
- "description": "The slot change event.",
9707
+ "name": "ForcedLayout",
9708
+ "description": "Used to force a specific layout, pass in the layout name to use.",
9709
+ "optional": true,
9821
9710
  "type": {
9822
- "text": "Event"
9711
+ "text": "string"
9823
9712
  }
9824
9713
  }
9825
9714
  ],
9826
- "description": "Slot change event listener. This is the main entry point for the form element.",
9715
+ "description": "Logic to determine the layout of the component.",
9716
+ "privacy": "private",
9827
9717
  "return": {
9828
9718
  "type": {
9829
- "text": "void"
9719
+ "text": "HTMLCollection"
9830
9720
  }
9831
- },
9832
- "privacy": "private"
9721
+ }
9833
9722
  },
9834
9723
  {
9835
9724
  "kind": "field",
9836
- "name": "formState",
9837
- "privacy": "private",
9725
+ "name": "isPopoverVisible",
9726
+ "privacy": "public",
9838
9727
  "type": {
9839
- "text": "FormState"
9728
+ "text": "boolean"
9840
9729
  },
9841
- "default": "{}"
9730
+ "description": "If true, the dropdown bib is displayed.",
9731
+ "default": "false",
9732
+ "attribute": "open",
9733
+ "reflects": true
9842
9734
  },
9843
9735
  {
9844
9736
  "kind": "field",
9845
- "name": "_validity",
9846
- "privacy": "private",
9737
+ "name": "isBibFullscreen",
9738
+ "privacy": "public",
9847
9739
  "type": {
9848
- "text": "\"valid\" | \"invalid\" | null"
9740
+ "text": "boolean"
9849
9741
  },
9850
- "default": "null"
9742
+ "description": "If true, the dropdown bib is taking the fullscreen when it's open.",
9743
+ "default": "false",
9744
+ "attribute": "isBibFullscreen",
9745
+ "reflects": true
9851
9746
  },
9852
9747
  {
9853
9748
  "kind": "field",
9854
- "name": "_isInitialState",
9855
- "privacy": "private",
9749
+ "name": "matchWidth",
9750
+ "privacy": "public",
9856
9751
  "type": {
9857
9752
  "text": "boolean"
9858
9753
  },
9859
- "default": "true"
9754
+ "description": "If declared, the popover and trigger will be set to the same width.",
9755
+ "default": "false",
9756
+ "attribute": "matchWidth",
9757
+ "reflects": true
9860
9758
  },
9861
9759
  {
9862
9760
  "kind": "field",
9863
- "name": "_elements",
9864
- "privacy": "private",
9761
+ "name": "noHideOnThisFocusLoss",
9762
+ "privacy": "public",
9865
9763
  "type": {
9866
- "text": "(HTMLElement & {reset: () => void})[]"
9764
+ "text": "boolean"
9867
9765
  },
9868
- "default": "[]"
9766
+ "description": "If declared, the dropdown will not hide when moving focus outside the element.",
9767
+ "default": "false",
9768
+ "attribute": "noHideOnThisFocusLoss",
9769
+ "reflects": true
9869
9770
  },
9870
9771
  {
9871
9772
  "kind": "field",
9872
- "name": "_submitElements",
9873
- "privacy": "private",
9773
+ "name": "errorMessage",
9774
+ "privacy": "public",
9874
9775
  "type": {
9875
- "text": "HTMLButtonElement[]"
9776
+ "text": "string"
9876
9777
  },
9877
- "default": "[]"
9778
+ "description": "Contains the help text message for the current validity error.",
9779
+ "default": "undefined",
9780
+ "attribute": "errorMessage"
9878
9781
  },
9879
9782
  {
9880
9783
  "kind": "field",
9881
- "name": "_resetElements",
9882
- "privacy": "private",
9784
+ "name": "layout",
9785
+ "privacy": "public",
9883
9786
  "type": {
9884
- "text": "HTMLButtonElement[]"
9787
+ "text": "string"
9885
9788
  },
9886
- "default": "[]"
9789
+ "description": "Sets the layout of the dropdown.",
9790
+ "default": "undefined",
9791
+ "attribute": "layout",
9792
+ "reflects": true,
9793
+ "inheritedFrom": {
9794
+ "name": "AuroElement",
9795
+ "module": "components/layoutElement/src/auroElement.js"
9796
+ }
9887
9797
  },
9888
9798
  {
9889
9799
  "kind": "field",
9890
- "name": "mutationObservers",
9800
+ "name": "shape",
9801
+ "privacy": "public",
9891
9802
  "type": {
9892
- "text": "MutationObserver[]"
9803
+ "text": "string"
9893
9804
  },
9894
- "privacy": "private",
9895
- "default": "[]"
9805
+ "attribute": "shape",
9806
+ "reflects": true,
9807
+ "default": "undefined",
9808
+ "inheritedFrom": {
9809
+ "name": "AuroElement",
9810
+ "module": "components/layoutElement/src/auroElement.js"
9811
+ }
9896
9812
  },
9897
9813
  {
9898
9814
  "kind": "field",
9899
- "name": "_initialValues",
9815
+ "name": "size",
9816
+ "privacy": "public",
9900
9817
  "type": {
9901
- "text": "Record<string, string | number | boolean | string[] | Record<string, number> | null | undefined>"
9818
+ "text": "string"
9902
9819
  },
9903
- "description": "Captured initial (default) value per field `name`. Populated on first\nsight of each name in `_addElementToState` and preserved across\nsubsequent `initializeState` cycles (slot change, rename, reset) so\n`_setInitialState` can detect user edits as `current !== initial`,\nmatching HTML's `dirtyValueFlag` semantics.",
9904
- "privacy": "private",
9905
- "default": "{}"
9820
+ "attribute": "size",
9821
+ "reflects": true,
9822
+ "default": "undefined",
9823
+ "inheritedFrom": {
9824
+ "name": "AuroElement",
9825
+ "module": "components/layoutElement/src/auroElement.js"
9826
+ }
9906
9827
  },
9907
9828
  {
9908
9829
  "kind": "field",
9909
- "name": "_attributeObserver",
9830
+ "name": "parentBorder",
9831
+ "privacy": "private",
9910
9832
  "type": {
9911
- "text": "MutationObserver | null"
9833
+ "text": "boolean"
9912
9834
  },
9913
- "privacy": "private",
9914
- "default": "null"
9915
- }
9916
- ],
9917
- "events": [
9835
+ "description": "Defines if the trigger should size based on the parent element providing the border UI.",
9836
+ "default": "false",
9837
+ "attribute": "parentBorder",
9838
+ "reflects": true
9839
+ },
9918
9840
  {
9919
- "name": "change",
9841
+ "kind": "field",
9842
+ "name": "bibElement",
9843
+ "privacy": "private"
9844
+ },
9845
+ {
9846
+ "kind": "field",
9847
+ "name": "a11yRole",
9848
+ "privacy": "public",
9920
9849
  "type": {
9921
- "text": "Event"
9850
+ "text": "string"
9922
9851
  },
9923
- "description": "Fires when a child form element's value changes or the form is initialized."
9852
+ "description": "The value for the role attribute of the trigger element."
9924
9853
  },
9925
9854
  {
9926
- "name": "reset",
9855
+ "kind": "field",
9856
+ "name": "appearance",
9857
+ "privacy": "public",
9927
9858
  "type": {
9928
- "text": "CustomEvent"
9859
+ "text": "'default' | 'inverse'"
9929
9860
  },
9930
- "description": "Fires when the form is reset. The event detail contains the previous value of the form before reset."
9861
+ "description": "Defines whether the component will be on lighter or darker backgrounds.",
9862
+ "default": "'default'",
9863
+ "attribute": "appearance",
9864
+ "reflects": true
9931
9865
  },
9932
9866
  {
9933
- "name": "submit",
9867
+ "kind": "field",
9868
+ "name": "autoPlacement",
9869
+ "privacy": "public",
9934
9870
  "type": {
9935
- "text": "CustomEvent"
9871
+ "text": "boolean"
9936
9872
  },
9937
- "description": "Fires when the form is submitted. The event detail contains the current value of the form."
9873
+ "description": "If declared, bib's position will be automatically calculated where to appear.",
9874
+ "attribute": "autoPlacement",
9875
+ "reflects": true
9938
9876
  },
9939
9877
  {
9940
- "description": "Fires when a child form element receives user input.",
9941
- "name": "input"
9942
- }
9943
- ],
9944
- "superclass": {
9945
- "name": "LitElement",
9946
- "package": "lit"
9947
- },
9948
- "tagName": "auro-form",
9949
- "customElement": true
9950
- }
9951
- ],
9952
- "exports": [
9953
- {
9954
- "kind": "js",
9955
- "name": "AuroForm",
9956
- "declaration": {
9957
- "name": "AuroForm",
9958
- "module": "components/form/src/auro-form.js"
9959
- }
9960
- }
9961
- ]
9962
- },
9963
- {
9964
- "kind": "javascript-module",
9965
- "path": "components/form/src/index.js",
9966
- "declarations": [],
9967
- "exports": [
9968
- {
9969
- "kind": "js",
9970
- "name": "AuroForm",
9971
- "declaration": {
9972
- "name": "AuroForm",
9973
- "module": "components/form/src/index.js"
9974
- }
9975
- }
9976
- ]
9977
- },
9978
- {
9979
- "kind": "javascript-module",
9980
- "path": "components/form/src/registered.js",
9981
- "declarations": [],
9982
- "exports": []
9983
- },
9984
- {
9985
- "kind": "javascript-module",
9986
- "path": "components/dropdown/src/auro-dropdown.js",
9987
- "declarations": [
9988
- {
9989
- "kind": "class",
9990
- "description": "The `auro-dropdown` element provides a way to place content in a bib that can be toggled.",
9991
- "name": "AuroDropdown",
9992
- "cssParts": [
9993
- {
9994
- "description": "The trigger content container.",
9995
- "name": "trigger"
9878
+ "kind": "field",
9879
+ "name": "desktopModal",
9880
+ "privacy": "public",
9881
+ "type": {
9882
+ "text": "boolean"
9883
+ },
9884
+ "description": "If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.",
9885
+ "attribute": "desktopModal",
9886
+ "reflects": true
9996
9887
  },
9997
9888
  {
9998
- "description": "The collapsed/expanded state icon container.",
9999
- "name": "chevron"
9889
+ "kind": "field",
9890
+ "name": "disableEventShow",
9891
+ "privacy": "public",
9892
+ "type": {
9893
+ "text": "boolean"
9894
+ },
9895
+ "description": "If declared, the dropdown will only show by calling the API .show() public method.",
9896
+ "attribute": "disableEventShow",
9897
+ "reflects": true
10000
9898
  },
10001
9899
  {
10002
- "description": "The size of the dropdown bib. (height, width, maxHeight, maxWidth only)",
10003
- "name": "size"
9900
+ "kind": "field",
9901
+ "name": "simple",
9902
+ "privacy": "public",
9903
+ "type": {
9904
+ "text": "boolean"
9905
+ },
9906
+ "description": "If declared, applies a border around the trigger slot.",
9907
+ "attribute": "simple",
9908
+ "reflects": true
10004
9909
  },
10005
9910
  {
10006
- "description": "The helpText content container.",
10007
- "name": "helpText"
10008
- }
10009
- ],
10010
- "slots": [
10011
- {
10012
- "description": "Default slot for the dropdown bib content.",
10013
- "name": ""
9911
+ "kind": "field",
9912
+ "name": "chevron",
9913
+ "privacy": "public",
9914
+ "type": {
9915
+ "text": "boolean"
9916
+ },
9917
+ "description": "If declared, the dropdown displays a chevron on the right.",
9918
+ "attribute": "chevron",
9919
+ "reflects": true
10014
9920
  },
10015
9921
  {
10016
- "description": "Defines the content of the helpText.",
10017
- "name": "helpText"
9922
+ "kind": "field",
9923
+ "name": "disabled",
9924
+ "privacy": "public",
9925
+ "type": {
9926
+ "text": "boolean"
9927
+ },
9928
+ "description": "If declared, the dropdown is not interactive.",
9929
+ "attribute": "disabled",
9930
+ "reflects": true
10018
9931
  },
10019
- {
10020
- "description": "Defines the content of the trigger.",
10021
- "name": "trigger"
10022
- }
10023
- ],
10024
- "members": [
10025
9932
  {
10026
9933
  "kind": "field",
10027
- "name": "shadowRootOptions",
10028
- "static": true,
10029
- "readonly": true
9934
+ "name": "disableKeyboardHandling",
9935
+ "privacy": "public",
9936
+ "type": {
9937
+ "text": "boolean"
9938
+ },
9939
+ "description": "If declared, the dropdown will not handle keyboard events and will require the consumer to manage this behavior.",
9940
+ "attribute": "disableKeyboardHandling",
9941
+ "reflects": true
10030
9942
  },
10031
9943
  {
10032
9944
  "kind": "field",
10033
- "name": "commonWrapperClasses",
9945
+ "name": "dropdownWidth",
10034
9946
  "privacy": "private",
10035
- "return": {
10036
- "type": {
10037
- "text": "object"
10038
- }
9947
+ "type": {
9948
+ "text": "number"
10039
9949
  },
10040
- "readonly": true
9950
+ "attribute": "dropdownWidth"
10041
9951
  },
10042
9952
  {
10043
- "kind": "method",
10044
- "name": "_intializeDefaults",
9953
+ "kind": "field",
9954
+ "name": "dropdownId",
10045
9955
  "privacy": "private",
10046
- "return": {
10047
- "type": {
10048
- "text": "void"
10049
- }
10050
- }
9956
+ "type": {
9957
+ "text": "string"
9958
+ },
9959
+ "description": "The unique ID for the dropdown bib element."
10051
9960
  },
10052
9961
  {
10053
- "kind": "method",
10054
- "name": "hide",
10055
- "description": "Public method to hide the dropdown.",
10056
- "return": {
10057
- "type": {
10058
- "text": "void"
10059
- }
10060
- }
9962
+ "kind": "field",
9963
+ "name": "error",
9964
+ "privacy": "public",
9965
+ "type": {
9966
+ "text": "boolean"
9967
+ },
9968
+ "description": "If declared, will apply error UI to the dropdown.",
9969
+ "attribute": "error",
9970
+ "reflects": true
10061
9971
  },
10062
9972
  {
10063
- "kind": "method",
10064
- "name": "show",
10065
- "description": "Public method to show the dropdown.",
10066
- "return": {
10067
- "type": {
10068
- "text": "void"
10069
- }
10070
- }
9973
+ "kind": "field",
9974
+ "name": "focusShow",
9975
+ "privacy": "public",
9976
+ "type": {
9977
+ "text": "boolean"
9978
+ },
9979
+ "description": "If declared, the bib will display when focus is applied to the trigger.",
9980
+ "attribute": "focusShow",
9981
+ "reflects": true
10071
9982
  },
10072
9983
  {
10073
- "kind": "method",
10074
- "name": "focus",
10075
- "description": "When bib is open, focus on the first element inside of bib.\nIf not, trigger element will get focus."
9984
+ "kind": "field",
9985
+ "name": "hoverToggle",
9986
+ "privacy": "public",
9987
+ "type": {
9988
+ "text": "boolean"
9989
+ },
9990
+ "description": "If declared, the trigger will toggle the dropdown on mouseover/mouseout.",
9991
+ "attribute": "hoverToggle",
9992
+ "reflects": true
10076
9993
  },
10077
9994
  {
10078
- "kind": "method",
10079
- "name": "setActiveDescendant",
10080
- "parameters": [
10081
- {
10082
- "name": "element",
10083
- "description": "The element to set as the active descendant, or null to clear.",
10084
- "type": {
10085
- "text": "HTMLElement|null"
10086
- }
10087
- }
10088
- ],
10089
- "description": "Sets the active descendant element for accessibility.\nUses ariaActiveDescendantElement to cross shadow DOM boundaries.\nThis function is used in components that contain `auro-dropdown` to set the active descendant.",
9995
+ "kind": "field",
9996
+ "name": "hasTriggerContent",
10090
9997
  "privacy": "private",
10091
- "return": {
10092
- "type": {
10093
- "text": "void"
10094
- }
10095
- }
9998
+ "type": {
9999
+ "text": "boolean"
10000
+ },
10001
+ "attribute": "hasTriggerContent"
10096
10002
  },
10097
10003
  {
10098
- "kind": "method",
10099
- "name": "register",
10100
- "static": true,
10101
- "parameters": [
10102
- {
10103
- "name": "name",
10104
- "default": "\"auro-dropdown\"",
10105
- "description": "The name of the element that you want to register.",
10106
- "optional": true,
10107
- "type": {
10108
- "text": "string"
10109
- }
10110
- }
10111
- ],
10112
- "description": "This will register this element with the browser."
10004
+ "kind": "field",
10005
+ "name": "fullscreenBreakpoint",
10006
+ "privacy": "public",
10007
+ "type": {
10008
+ "text": "'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'disabled'"
10009
+ },
10010
+ "description": "Defines the screen size breakpoint at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.\n\nWhen expanded, the dropdown will automatically display in fullscreen mode\nif the screen size is equal to or smaller than the selected breakpoint.",
10011
+ "default": "'sm'",
10012
+ "attribute": "fullscreenBreakpoint",
10013
+ "reflects": true
10113
10014
  },
10114
10015
  {
10115
10016
  "kind": "field",
10116
- "name": "focusableEntityQuery",
10117
- "description": "Accessor for reusing the focusable entity query string.",
10118
- "privacy": "private",
10119
- "return": {
10120
- "type": {
10121
- "text": "string"
10122
- }
10017
+ "name": "noFlip",
10018
+ "privacy": "public",
10019
+ "type": {
10020
+ "text": "boolean"
10123
10021
  },
10124
- "readonly": true
10022
+ "description": "If declared, the bib will NOT flip to an alternate position\nwhen there isn't enough space in the specified `placement`.",
10023
+ "attribute": "noFlip",
10024
+ "reflects": true
10125
10025
  },
10126
10026
  {
10127
- "kind": "method",
10128
- "name": "handleDropdownToggle",
10129
- "parameters": [
10130
- {
10131
- "name": "event",
10132
- "description": "The custom event that contains the dropdown toggle information.",
10133
- "type": {
10134
- "text": "CustomEvent"
10135
- }
10136
- }
10137
- ],
10138
- "description": "Handles the custom event `auroDropdown-toggled` to update the visibility of the dropdown bib.",
10139
- "privacy": "private"
10027
+ "kind": "field",
10028
+ "name": "shift",
10029
+ "privacy": "public",
10030
+ "type": {
10031
+ "text": "boolean"
10032
+ },
10033
+ "description": "If declared, the dropdown will shift its position to avoid being cut off by the viewport.",
10034
+ "attribute": "shift",
10035
+ "reflects": true
10140
10036
  },
10141
10037
  {
10142
- "kind": "method",
10143
- "name": "exposeCssParts",
10144
- "description": "Exposes CSS parts for styling from parent components.",
10145
- "return": {
10146
- "type": {
10147
- "text": "void"
10148
- }
10149
- }
10038
+ "kind": "field",
10039
+ "name": "noToggle",
10040
+ "privacy": "public",
10041
+ "type": {
10042
+ "text": "boolean"
10043
+ },
10044
+ "description": "If declared, the trigger will only show the dropdown bib.",
10045
+ "attribute": "noToggle",
10046
+ "reflects": true
10150
10047
  },
10151
10048
  {
10152
- "kind": "method",
10153
- "name": "isCustomSlotContent",
10154
- "parameters": [
10155
- {
10156
- "name": "element",
10157
- "description": "The element to check.",
10158
- "type": {
10159
- "text": "HTMLElement"
10160
- }
10161
- }
10162
- ],
10163
- "description": "Determines if content is within a custom slot.",
10164
- "privacy": "private",
10165
- "return": {
10166
- "type": {
10167
- "text": "Boolean"
10168
- }
10049
+ "kind": "field",
10050
+ "name": "offset",
10051
+ "privacy": "public",
10052
+ "type": {
10053
+ "text": "number"
10054
+ },
10055
+ "description": "Gap between the trigger element and bib.",
10056
+ "default": "0",
10057
+ "attribute": "offset",
10058
+ "reflects": true
10059
+ },
10060
+ {
10061
+ "kind": "field",
10062
+ "name": "onDark",
10063
+ "privacy": "public",
10064
+ "type": {
10065
+ "text": "boolean"
10066
+ },
10067
+ "attribute": "onDark",
10068
+ "reflects": true,
10069
+ "description": "DEPRECATED - use `appearance=\"inverse\"` instead.",
10070
+ "inheritedFrom": {
10071
+ "name": "AuroElement",
10072
+ "module": "components/layoutElement/src/auroElement.js"
10169
10073
  }
10170
10074
  },
10171
10075
  {
10172
- "kind": "method",
10173
- "name": "handleFocusin",
10174
- "description": "Function to support",
10076
+ "kind": "field",
10077
+ "name": "onSlotChange",
10078
+ "privacy": "public",
10079
+ "type": {
10080
+ "text": "function"
10081
+ },
10082
+ "description": "If declared, and a function is set, that function will execute when the slot content is updated.",
10083
+ "attribute": "onSlotChange"
10084
+ },
10085
+ {
10086
+ "kind": "field",
10087
+ "name": "placement",
10088
+ "privacy": "public",
10089
+ "type": {
10090
+ "text": "'top' | 'right' | 'bottom' | 'left' | 'bottom-start' | 'top-start' | 'top-end' | 'right-start' | 'right-end' | 'bottom-end' | 'left-start' | 'left-end'"
10091
+ },
10092
+ "description": "Position where the bib should appear relative to the trigger.",
10093
+ "default": "'bottom-start'",
10094
+ "attribute": "placement",
10095
+ "reflects": true
10096
+ },
10097
+ {
10098
+ "kind": "field",
10099
+ "name": "tabIndex",
10175
10100
  "privacy": "private",
10176
- "return": {
10177
- "type": {
10178
- "text": "void"
10179
- }
10180
- }
10101
+ "type": {
10102
+ "text": "number"
10103
+ },
10104
+ "attribute": "tabIndex"
10181
10105
  },
10182
10106
  {
10183
- "kind": "method",
10184
- "name": "updateFocusTrap",
10185
- "privacy": "private"
10107
+ "kind": "field",
10108
+ "name": "bibDialogLabel",
10109
+ "privacy": "private",
10110
+ "type": {
10111
+ "text": "string"
10112
+ },
10113
+ "description": "Accessible label for the dropdown bib dialog element."
10186
10114
  },
10187
10115
  {
10188
- "kind": "method",
10189
- "name": "_getActiveElements",
10190
- "description": "Returns the chain of active (focused) elements through shadow roots.",
10116
+ "kind": "field",
10117
+ "name": "componentHasFocus",
10118
+ "description": "Returns true if the element has focus.",
10191
10119
  "privacy": "private",
10192
10120
  "return": {
10193
10121
  "type": {
10194
- "text": "Array<HTMLElement>"
10122
+ "text": "boolean"
10195
10123
  }
10124
+ },
10125
+ "readonly": true,
10126
+ "inheritedFrom": {
10127
+ "name": "AuroElement",
10128
+ "module": "components/layoutElement/src/auroElement.js"
10196
10129
  }
10197
10130
  },
10198
10131
  {
10199
10132
  "kind": "method",
10200
- "name": "_setPageInert",
10201
- "description": "Sets `inert` on sibling elements of the dropdown's top-level host\nso that content outside the dropdown is not interactive while the modal is open.\nWalks up through shadow DOM boundaries to find the outermost host element\nin the light DOM, then sets `inert` on siblings at each ancestor level\nto ensure all page content outside the host subtree is inert.",
10202
- "privacy": "private"
10133
+ "name": "resetShapeClasses",
10134
+ "inheritedFrom": {
10135
+ "name": "AuroElement",
10136
+ "module": "components/layoutElement/src/auroElement.js"
10137
+ }
10203
10138
  },
10204
10139
  {
10205
10140
  "kind": "method",
10206
- "name": "_clearPageInert",
10207
- "description": "Restores `inert` state on siblings that were tracked by `_setPageInert`.\nUses reference counting so inert is only cleared when the last modal\ndropdown releases a given element. Preserves the original inert state\nso externally-inerted elements are not inadvertently re-enabled.",
10208
- "privacy": "private"
10141
+ "name": "resetLayoutClasses",
10142
+ "inheritedFrom": {
10143
+ "name": "AuroElement",
10144
+ "module": "components/layoutElement/src/auroElement.js"
10145
+ }
10209
10146
  },
10210
10147
  {
10211
10148
  "kind": "method",
10212
- "name": "handleFocusout",
10213
- "description": "Function to support",
10214
- "privacy": "private",
10215
- "return": {
10216
- "type": {
10217
- "text": "void"
10218
- }
10149
+ "name": "updateComponentArchitecture",
10150
+ "inheritedFrom": {
10151
+ "name": "AuroElement",
10152
+ "module": "components/layoutElement/src/auroElement.js"
10219
10153
  }
10154
+ }
10155
+ ],
10156
+ "events": [
10157
+ {
10158
+ "name": "auroDropdown-idAdded",
10159
+ "type": {
10160
+ "text": "Object<key"
10161
+ },
10162
+ "description": "Notifies consumers that the unique ID for the dropdown bib has been generated."
10220
10163
  },
10221
10164
  {
10222
- "kind": "method",
10223
- "name": "bindFocusEventToTrigger",
10224
- "parameters": [
10225
- {
10226
- "name": "event",
10227
- "description": "The original focus event.",
10228
- "type": {
10229
- "text": "Event"
10230
- }
10231
- }
10232
- ],
10233
- "description": "Creates and dispatches a duplicate focus event on the trigger element.",
10234
- "privacy": "private"
10165
+ "name": "auroDropdown-triggerClick",
10166
+ "type": {
10167
+ "text": "CustomEvent"
10168
+ },
10169
+ "description": "Notifies that the trigger has been clicked."
10235
10170
  },
10236
10171
  {
10237
- "kind": "method",
10238
- "name": "setupTriggerFocusEventBinding",
10239
- "description": "Sets up event listeners to deliver focus and blur events from nested Auro components within the trigger slot to trigger.\nThis ensures that focus/blur events originating from within these components are propagated to the trigger element itself.",
10240
- "privacy": "private"
10172
+ "description": "Notifies that the visibility of the dropdown bib has changed.",
10173
+ "name": "auroDropdown-toggled"
10174
+ }
10175
+ ],
10176
+ "attributes": [
10177
+ {
10178
+ "name": "appearance",
10179
+ "type": {
10180
+ "text": "'default' | 'inverse'"
10181
+ },
10182
+ "description": "Defines whether the component will be on lighter or darker backgrounds.",
10183
+ "default": "'default'",
10184
+ "fieldName": "appearance"
10241
10185
  },
10242
10186
  {
10243
- "kind": "method",
10244
- "name": "clearTriggerFocusEventBinding",
10245
- "description": "Clears focus and blur event listeners from nested Auro components within the trigger slot.",
10246
- "privacy": "private",
10247
- "return": {
10248
- "type": {
10249
- "text": "void"
10250
- }
10251
- }
10187
+ "name": "autoPlacement",
10188
+ "type": {
10189
+ "text": "boolean"
10190
+ },
10191
+ "description": "If declared, bib's position will be automatically calculated where to appear.",
10192
+ "fieldName": "autoPlacement"
10252
10193
  },
10253
10194
  {
10254
- "kind": "method",
10255
- "name": "clearTriggerA11yAttributes",
10256
- "parameters": [
10257
- {
10258
- "name": "triggerElement"
10259
- }
10260
- ]
10195
+ "name": "desktopModal",
10196
+ "type": {
10197
+ "text": "boolean"
10198
+ },
10199
+ "description": "If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.",
10200
+ "fieldName": "desktopModal"
10261
10201
  },
10262
10202
  {
10263
- "kind": "method",
10264
- "name": "handleTriggerContentSlotChange",
10265
- "parameters": [
10266
- {
10267
- "name": "event",
10268
- "description": "Native slotchange event.",
10269
- "type": {
10270
- "text": "Event"
10271
- }
10272
- }
10273
- ],
10274
- "description": "Handles changes to the trigger content slot and updates related properties.\n\nIt first updates the floater settings\nThen, it retrieves the assigned nodes from the event target and checks if any of\nthe nodes contain non-empty text content, updating the `hasTriggerContent` property accordingly.",
10275
- "privacy": "private",
10276
- "return": {
10277
- "type": {
10278
- "text": "void"
10279
- }
10280
- }
10203
+ "name": "disableEventShow",
10204
+ "type": {
10205
+ "text": "boolean"
10206
+ },
10207
+ "description": "If declared, the dropdown will only show by calling the API .show() public method.",
10208
+ "fieldName": "disableEventShow"
10281
10209
  },
10282
10210
  {
10283
- "kind": "method",
10284
- "name": "handleDefaultSlot",
10285
- "description": "Handles the default slot change event and updates the content.\n\nThis method retrieves all nodes assigned to the default slot of the event target and appends them\nto the `bibContent` element. If a callback function `onSlotChange` is defined, it is invoked to\nnotify about the slot change.",
10286
- "privacy": "private"
10211
+ "name": "simple",
10212
+ "type": {
10213
+ "text": "boolean"
10214
+ },
10215
+ "description": "If declared, applies a border around the trigger slot.",
10216
+ "fieldName": "simple"
10287
10217
  },
10288
10218
  {
10289
- "kind": "method",
10290
- "name": "renderBasicHtml",
10291
- "parameters": [
10292
- {
10293
- "name": "helpTextClasses",
10294
- "description": "Classes to apply to the help text container.",
10295
- "type": {
10296
- "text": "Object"
10297
- }
10298
- }
10299
- ],
10300
- "description": "Returns HTML for the common portion of the layouts.",
10301
- "privacy": "private",
10302
- "return": {
10303
- "type": {
10304
- "text": "html"
10305
- }
10306
- }
10219
+ "name": "chevron",
10220
+ "type": {
10221
+ "text": "boolean"
10222
+ },
10223
+ "description": "If declared, the dropdown displays a chevron on the right.",
10224
+ "fieldName": "chevron"
10307
10225
  },
10308
10226
  {
10309
- "kind": "method",
10310
- "name": "renderLayoutClassic",
10311
- "description": "Returns HTML for the classic layout. Does not support type=\"*\".",
10312
- "privacy": "private",
10313
- "return": {
10314
- "type": {
10315
- "text": "html"
10316
- }
10317
- }
10227
+ "name": "disabled",
10228
+ "type": {
10229
+ "text": "boolean"
10230
+ },
10231
+ "description": "If declared, the dropdown is not interactive.",
10232
+ "fieldName": "disabled"
10318
10233
  },
10319
10234
  {
10320
- "kind": "method",
10321
- "name": "renderLayoutSnowflake",
10322
- "description": "Returns HTML for the snowflake layout. Does not support type=\"*\".",
10323
- "privacy": "private",
10324
- "return": {
10325
- "type": {
10326
- "text": "html"
10327
- }
10328
- }
10235
+ "name": "disableKeyboardHandling",
10236
+ "type": {
10237
+ "text": "boolean"
10238
+ },
10239
+ "description": "If declared, the dropdown will not handle keyboard events and will require the consumer to manage this behavior.",
10240
+ "fieldName": "disableKeyboardHandling"
10329
10241
  },
10330
10242
  {
10331
- "kind": "method",
10332
- "name": "renderLayoutEmphasized",
10333
- "description": "Returns HTML for the emphasized layout. Does not support type=\"*\".",
10334
- "privacy": "private",
10335
- "return": {
10336
- "type": {
10337
- "text": "html"
10338
- }
10339
- }
10243
+ "name": "dropdownWidth",
10244
+ "type": {
10245
+ "text": "number"
10246
+ },
10247
+ "fieldName": "dropdownWidth"
10248
+ },
10249
+ {
10250
+ "name": "error",
10251
+ "type": {
10252
+ "text": "boolean"
10253
+ },
10254
+ "description": "If declared, will apply error UI to the dropdown.",
10255
+ "fieldName": "error"
10256
+ },
10257
+ {
10258
+ "name": "errorMessage",
10259
+ "type": {
10260
+ "text": "string"
10261
+ },
10262
+ "description": "Contains the help text message for the current validity error.",
10263
+ "default": "undefined",
10264
+ "fieldName": "errorMessage"
10340
10265
  },
10341
10266
  {
10342
- "kind": "method",
10343
- "name": "renderLayout",
10344
- "parameters": [
10345
- {
10346
- "name": "ForcedLayout",
10347
- "description": "Used to force a specific layout, pass in the layout name to use.",
10348
- "optional": true,
10349
- "type": {
10350
- "text": "string"
10351
- }
10352
- }
10353
- ],
10354
- "description": "Logic to determine the layout of the component.",
10355
- "privacy": "private",
10356
- "return": {
10357
- "type": {
10358
- "text": "HTMLCollection"
10359
- }
10360
- }
10267
+ "name": "focusShow",
10268
+ "type": {
10269
+ "text": "boolean"
10270
+ },
10271
+ "description": "If declared, the bib will display when focus is applied to the trigger.",
10272
+ "fieldName": "focusShow"
10361
10273
  },
10362
10274
  {
10363
- "kind": "field",
10364
- "name": "isPopoverVisible",
10365
- "privacy": "public",
10275
+ "name": "open",
10366
10276
  "type": {
10367
10277
  "text": "boolean"
10368
10278
  },
10369
10279
  "description": "If true, the dropdown bib is displayed.",
10370
10280
  "default": "false",
10371
- "attribute": "open",
10372
- "reflects": true
10281
+ "fieldName": "isPopoverVisible"
10373
10282
  },
10374
10283
  {
10375
- "kind": "field",
10376
10284
  "name": "isBibFullscreen",
10377
- "privacy": "public",
10378
10285
  "type": {
10379
10286
  "text": "boolean"
10380
10287
  },
10381
10288
  "description": "If true, the dropdown bib is taking the fullscreen when it's open.",
10382
10289
  "default": "false",
10383
- "attribute": "isBibFullscreen",
10384
- "reflects": true
10290
+ "fieldName": "isBibFullscreen"
10385
10291
  },
10386
10292
  {
10387
- "kind": "field",
10388
- "name": "matchWidth",
10389
- "privacy": "public",
10293
+ "name": "hoverToggle",
10390
10294
  "type": {
10391
10295
  "text": "boolean"
10392
10296
  },
10393
- "description": "If declared, the popover and trigger will be set to the same width.",
10394
- "default": "false",
10395
- "attribute": "matchWidth",
10396
- "reflects": true
10297
+ "description": "If declared, the trigger will toggle the dropdown on mouseover/mouseout.",
10298
+ "fieldName": "hoverToggle"
10397
10299
  },
10398
10300
  {
10399
- "kind": "field",
10400
- "name": "noHideOnThisFocusLoss",
10401
- "privacy": "public",
10301
+ "name": "hasTriggerContent",
10402
10302
  "type": {
10403
10303
  "text": "boolean"
10404
10304
  },
10405
- "description": "If declared, the dropdown will not hide when moving focus outside the element.",
10406
- "default": "false",
10407
- "attribute": "noHideOnThisFocusLoss",
10408
- "reflects": true
10305
+ "fieldName": "hasTriggerContent"
10409
10306
  },
10410
10307
  {
10411
- "kind": "field",
10412
- "name": "errorMessage",
10413
- "privacy": "public",
10308
+ "name": "fullscreenBreakpoint",
10414
10309
  "type": {
10415
- "text": "string"
10310
+ "text": "'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'disabled'"
10416
10311
  },
10417
- "description": "Contains the help text message for the current validity error.",
10418
- "default": "undefined",
10419
- "attribute": "errorMessage"
10312
+ "description": "Defines the screen size breakpoint at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.\n\nWhen expanded, the dropdown will automatically display in fullscreen mode\nif the screen size is equal to or smaller than the selected breakpoint.",
10313
+ "default": "'sm'",
10314
+ "fieldName": "fullscreenBreakpoint"
10420
10315
  },
10421
10316
  {
10422
- "kind": "field",
10423
10317
  "name": "layout",
10424
- "privacy": "public",
10425
10318
  "type": {
10426
10319
  "text": "string"
10427
10320
  },
10428
10321
  "description": "Sets the layout of the dropdown.",
10429
10322
  "default": "undefined",
10430
- "attribute": "layout",
10431
- "reflects": true,
10323
+ "fieldName": "layout",
10432
10324
  "inheritedFrom": {
10433
10325
  "name": "AuroElement",
10434
10326
  "module": "components/layoutElement/src/auroElement.js"
10435
10327
  }
10436
10328
  },
10437
10329
  {
10438
- "kind": "field",
10439
- "name": "shape",
10440
- "privacy": "public",
10330
+ "name": "parentBorder",
10441
10331
  "type": {
10442
- "text": "string"
10332
+ "text": "boolean"
10443
10333
  },
10444
- "attribute": "shape",
10445
- "reflects": true,
10446
- "default": "undefined",
10447
- "inheritedFrom": {
10448
- "name": "AuroElement",
10449
- "module": "components/layoutElement/src/auroElement.js"
10450
- }
10334
+ "description": "Defines if the trigger should size based on the parent element providing the border UI.",
10335
+ "default": "false",
10336
+ "fieldName": "parentBorder"
10451
10337
  },
10452
10338
  {
10453
- "kind": "field",
10454
- "name": "size",
10455
- "privacy": "public",
10339
+ "name": "matchWidth",
10456
10340
  "type": {
10457
- "text": "string"
10341
+ "text": "boolean"
10458
10342
  },
10459
- "attribute": "size",
10460
- "reflects": true,
10461
- "default": "undefined",
10462
- "inheritedFrom": {
10463
- "name": "AuroElement",
10464
- "module": "components/layoutElement/src/auroElement.js"
10465
- }
10343
+ "description": "If declared, the popover and trigger will be set to the same width.",
10344
+ "default": "false",
10345
+ "fieldName": "matchWidth"
10466
10346
  },
10467
10347
  {
10468
- "kind": "field",
10469
- "name": "parentBorder",
10470
- "privacy": "private",
10348
+ "name": "noFlip",
10471
10349
  "type": {
10472
10350
  "text": "boolean"
10473
10351
  },
10474
- "description": "Defines if the trigger should size based on the parent element providing the border UI.",
10475
- "default": "false",
10476
- "attribute": "parentBorder",
10477
- "reflects": true
10352
+ "description": "If declared, the bib will NOT flip to an alternate position\nwhen there isn't enough space in the specified `placement`.",
10353
+ "fieldName": "noFlip"
10478
10354
  },
10479
10355
  {
10480
- "kind": "field",
10481
- "name": "bibElement",
10482
- "privacy": "private"
10356
+ "name": "shift",
10357
+ "type": {
10358
+ "text": "boolean"
10359
+ },
10360
+ "description": "If declared, the dropdown will shift its position to avoid being cut off by the viewport.",
10361
+ "fieldName": "shift"
10483
10362
  },
10484
10363
  {
10485
- "kind": "field",
10486
- "name": "a11yRole",
10487
- "privacy": "public",
10364
+ "name": "noHideOnThisFocusLoss",
10488
10365
  "type": {
10489
- "text": "string"
10366
+ "text": "boolean"
10490
10367
  },
10491
- "description": "The value for the role attribute of the trigger element."
10368
+ "description": "If declared, the dropdown will not hide when moving focus outside the element.",
10369
+ "default": "false",
10370
+ "fieldName": "noHideOnThisFocusLoss"
10492
10371
  },
10493
10372
  {
10494
- "kind": "field",
10495
- "name": "appearance",
10496
- "privacy": "public",
10373
+ "name": "noToggle",
10497
10374
  "type": {
10498
- "text": "'default' | 'inverse'"
10375
+ "text": "boolean"
10499
10376
  },
10500
- "description": "Defines whether the component will be on lighter or darker backgrounds.",
10501
- "default": "'default'",
10502
- "attribute": "appearance",
10503
- "reflects": true
10377
+ "description": "If declared, the trigger will only show the dropdown bib.",
10378
+ "fieldName": "noToggle"
10504
10379
  },
10505
10380
  {
10506
- "kind": "field",
10507
- "name": "autoPlacement",
10508
- "privacy": "public",
10381
+ "name": "offset",
10509
10382
  "type": {
10510
- "text": "boolean"
10383
+ "text": "number"
10511
10384
  },
10512
- "description": "If declared, bib's position will be automatically calculated where to appear.",
10513
- "attribute": "autoPlacement",
10514
- "reflects": true
10385
+ "description": "Gap between the trigger element and bib.",
10386
+ "default": "0",
10387
+ "fieldName": "offset"
10515
10388
  },
10516
10389
  {
10517
- "kind": "field",
10518
- "name": "desktopModal",
10519
- "privacy": "public",
10390
+ "name": "onDark",
10520
10391
  "type": {
10521
10392
  "text": "boolean"
10522
10393
  },
10523
- "description": "If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.",
10524
- "attribute": "desktopModal",
10525
- "reflects": true
10394
+ "description": "DEPRECATED - use `appearance=\"inverse\"` instead.",
10395
+ "fieldName": "onDark"
10396
+ },
10397
+ {
10398
+ "name": "onSlotChange",
10399
+ "type": {
10400
+ "text": "function"
10401
+ },
10402
+ "description": "If declared, and a function is set, that function will execute when the slot content is updated.",
10403
+ "fieldName": "onSlotChange"
10404
+ },
10405
+ {
10406
+ "name": "placement",
10407
+ "type": {
10408
+ "text": "'top' | 'right' | 'bottom' | 'left' | 'bottom-start' | 'top-start' | 'top-end' | 'right-start' | 'right-end' | 'bottom-end' | 'left-start' | 'left-end'"
10409
+ },
10410
+ "description": "Position where the bib should appear relative to the trigger.",
10411
+ "default": "'bottom-start'",
10412
+ "fieldName": "placement"
10413
+ },
10414
+ {
10415
+ "name": "tabIndex",
10416
+ "type": {
10417
+ "text": "number"
10418
+ },
10419
+ "fieldName": "tabIndex"
10420
+ },
10421
+ {
10422
+ "name": "shape",
10423
+ "type": {
10424
+ "text": "string"
10425
+ },
10426
+ "fieldName": "shape",
10427
+ "inheritedFrom": {
10428
+ "name": "AuroElement",
10429
+ "module": "components/layoutElement/src/auroElement.js"
10430
+ }
10431
+ },
10432
+ {
10433
+ "name": "size",
10434
+ "type": {
10435
+ "text": "string"
10436
+ },
10437
+ "fieldName": "size",
10438
+ "inheritedFrom": {
10439
+ "name": "AuroElement",
10440
+ "module": "components/layoutElement/src/auroElement.js"
10441
+ }
10526
10442
  },
10527
10443
  {
10528
- "kind": "field",
10529
- "name": "disableEventShow",
10530
- "privacy": "public",
10531
- "type": {
10532
- "text": "boolean"
10533
- },
10534
- "description": "If declared, the dropdown will only show by calling the API .show() public method.",
10535
- "attribute": "disableEventShow",
10536
- "reflects": true
10537
- },
10444
+ "name": "ondark",
10445
+ "type": {
10446
+ "text": "boolean"
10447
+ },
10448
+ "fieldName": "onDark",
10449
+ "inheritedFrom": {
10450
+ "name": "AuroElement",
10451
+ "module": "components/layoutElement/src/auroElement.js"
10452
+ }
10453
+ }
10454
+ ],
10455
+ "superclass": {
10456
+ "name": "AuroElement",
10457
+ "module": "/components/layoutElement/src/auroElement.js"
10458
+ },
10459
+ "tagName": "auro-dropdown",
10460
+ "customElement": true
10461
+ }
10462
+ ],
10463
+ "exports": [
10464
+ {
10465
+ "kind": "js",
10466
+ "name": "AuroDropdown",
10467
+ "declaration": {
10468
+ "name": "AuroDropdown",
10469
+ "module": "components/dropdown/src/auro-dropdown.js"
10470
+ }
10471
+ }
10472
+ ]
10473
+ },
10474
+ {
10475
+ "kind": "javascript-module",
10476
+ "path": "components/dropdown/src/auro-dropdownBib.js",
10477
+ "declarations": [
10478
+ {
10479
+ "kind": "class",
10480
+ "description": "",
10481
+ "name": "AuroDropdownBib",
10482
+ "cssParts": [
10483
+ {
10484
+ "description": "Apply css to the bib container.",
10485
+ "name": "bibContainer"
10486
+ }
10487
+ ],
10488
+ "members": [
10538
10489
  {
10539
10490
  "kind": "field",
10540
- "name": "simple",
10541
- "privacy": "public",
10542
- "type": {
10543
- "text": "boolean"
10544
- },
10545
- "description": "If declared, applies a border around the trigger slot.",
10546
- "attribute": "simple",
10547
- "reflects": true
10491
+ "name": "mobileFullscreenBreakpoint"
10548
10492
  },
10549
10493
  {
10550
- "kind": "field",
10551
- "name": "chevron",
10552
- "privacy": "public",
10553
- "type": {
10554
- "text": "boolean"
10555
- },
10556
- "description": "If declared, the dropdown displays a chevron on the right.",
10557
- "attribute": "chevron",
10558
- "reflects": true
10494
+ "kind": "method",
10495
+ "name": "_setupCancelHandler",
10496
+ "parameters": [
10497
+ {
10498
+ "name": "dialog",
10499
+ "description": "The dialog element to attach the cancel listener to.",
10500
+ "type": {
10501
+ "text": "HTMLDialogElement"
10502
+ }
10503
+ }
10504
+ ],
10505
+ "description": "Forwards the dialog's native `cancel` event (fired on ESC) as\nan `auro-bib-cancel` custom event so parent components can close.",
10506
+ "privacy": "private"
10559
10507
  },
10560
10508
  {
10561
- "kind": "field",
10562
- "name": "disabled",
10563
- "privacy": "public",
10564
- "type": {
10565
- "text": "boolean"
10566
- },
10567
- "description": "If declared, the dropdown is not interactive.",
10568
- "attribute": "disabled",
10569
- "reflects": true
10509
+ "kind": "method",
10510
+ "name": "_lockTouchScroll",
10511
+ "description": "Blocks touch-driven page scroll while a fullscreen modal dialog is open.\n\nThe showModal() function places the dialog in the browser's **top layer**,\nwhich is a separate rendering layer above the normal DOM. On mobile, the\ncompositor processes visual-viewport panning before top-layer touch\nhandling. This means the entire viewport — including the top-layer dialog\n— can be panned by a touch gesture, causing the page behind the dialog to\nscroll into view. To prevent this, we add a touchmove listener that cancels\nthe event if the touch started outside the dialog or any scrollable child within it.",
10512
+ "privacy": "private"
10570
10513
  },
10571
10514
  {
10572
- "kind": "field",
10573
- "name": "disableKeyboardHandling",
10574
- "privacy": "public",
10575
- "type": {
10576
- "text": "boolean"
10577
- },
10578
- "description": "If declared, the dropdown will not handle keyboard events and will require the consumer to manage this behavior.",
10579
- "attribute": "disableKeyboardHandling",
10580
- "reflects": true
10515
+ "kind": "method",
10516
+ "name": "_unlockTouchScroll",
10517
+ "description": "Removes the touchmove listener added by _lockTouchScroll().",
10518
+ "privacy": "private"
10581
10519
  },
10582
10520
  {
10583
- "kind": "field",
10584
- "name": "dropdownWidth",
10585
- "privacy": "private",
10586
- "type": {
10587
- "text": "number"
10588
- },
10589
- "attribute": "dropdownWidth"
10521
+ "kind": "method",
10522
+ "name": "open",
10523
+ "parameters": [
10524
+ {
10525
+ "name": "modal",
10526
+ "default": "true"
10527
+ }
10528
+ ]
10590
10529
  },
10591
10530
  {
10592
- "kind": "field",
10593
- "name": "dropdownId",
10594
- "privacy": "private",
10595
- "type": {
10596
- "text": "string"
10597
- },
10598
- "description": "The unique ID for the dropdown bib element."
10531
+ "kind": "method",
10532
+ "name": "close",
10533
+ "description": "Closes the dialog."
10599
10534
  },
10600
10535
  {
10601
10536
  "kind": "field",
10602
- "name": "error",
10603
- "privacy": "public",
10604
- "type": {
10605
- "text": "boolean"
10606
- },
10607
- "description": "If declared, will apply error UI to the dropdown.",
10608
- "attribute": "error",
10609
- "reflects": true
10537
+ "name": "_mobileBreakpointName",
10538
+ "privacy": "private",
10539
+ "default": "undefined"
10610
10540
  },
10611
10541
  {
10612
10542
  "kind": "field",
10613
- "name": "focusShow",
10543
+ "name": "shape",
10614
10544
  "privacy": "public",
10615
10545
  "type": {
10616
- "text": "boolean"
10546
+ "text": "string"
10617
10547
  },
10618
- "description": "If declared, the bib will display when focus is applied to the trigger.",
10619
- "attribute": "focusShow",
10548
+ "default": "\"rounded\"",
10549
+ "attribute": "shape",
10620
10550
  "reflects": true
10621
10551
  },
10622
10552
  {
10623
10553
  "kind": "field",
10624
- "name": "hoverToggle",
10625
- "privacy": "public",
10554
+ "name": "matchWidth",
10555
+ "privacy": "private",
10626
10556
  "type": {
10627
10557
  "text": "boolean"
10628
10558
  },
10629
- "description": "If declared, the trigger will toggle the dropdown on mouseover/mouseout.",
10630
- "attribute": "hoverToggle",
10559
+ "description": "If declared, the bib width will match the trigger width.",
10560
+ "default": "false",
10561
+ "attribute": "matchWidth",
10631
10562
  "reflects": true
10632
10563
  },
10633
10564
  {
10634
10565
  "kind": "field",
10635
- "name": "hasTriggerContent",
10566
+ "name": "hasActiveDescendant",
10636
10567
  "privacy": "private",
10637
10568
  "type": {
10638
10569
  "text": "boolean"
10639
10570
  },
10640
- "attribute": "hasTriggerContent"
10571
+ "description": "Tracks whether a menu option is currently highlighted.",
10572
+ "default": "false",
10573
+ "attribute": "hasActiveDescendant"
10641
10574
  },
10642
10575
  {
10643
- "kind": "field",
10644
- "name": "fullscreenBreakpoint",
10645
- "privacy": "public",
10646
10576
  "type": {
10647
- "text": "'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'disabled'"
10577
+ "text": "String"
10648
10578
  },
10649
- "description": "Defines the screen size breakpoint at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.\n\nWhen expanded, the dropdown will automatically display in fullscreen mode\nif the screen size is equal to or smaller than the selected breakpoint.",
10650
- "default": "'sm'",
10651
- "attribute": "fullscreenBreakpoint",
10652
- "reflects": true
10579
+ "description": "Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile. When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.",
10580
+ "name": "fullscreenBreakpoint",
10581
+ "kind": "field"
10653
10582
  },
10654
10583
  {
10655
10584
  "kind": "field",
10656
- "name": "noFlip",
10585
+ "name": "isFullscreen",
10657
10586
  "privacy": "public",
10658
10587
  "type": {
10659
10588
  "text": "boolean"
10660
10589
  },
10661
- "description": "If declared, the bib will NOT flip to an alternate position\nwhen there isn't enough space in the specified `placement`.",
10662
- "attribute": "noFlip",
10590
+ "description": "If declared, will take the fullscreen when the bib is displayed.",
10591
+ "attribute": "isFullscreen",
10663
10592
  "reflects": true
10664
10593
  },
10665
10594
  {
10666
10595
  "kind": "field",
10667
- "name": "shift",
10596
+ "name": "common",
10668
10597
  "privacy": "public",
10669
10598
  "type": {
10670
10599
  "text": "boolean"
10671
10600
  },
10672
- "description": "If declared, the dropdown will shift its position to avoid being cut off by the viewport.",
10673
- "attribute": "shift",
10601
+ "description": "If declared, will apply all styles for the common theme.",
10602
+ "attribute": "common",
10674
10603
  "reflects": true
10675
10604
  },
10676
10605
  {
10677
10606
  "kind": "field",
10678
- "name": "noToggle",
10607
+ "name": "inset",
10679
10608
  "privacy": "public",
10680
10609
  "type": {
10681
10610
  "text": "boolean"
10682
10611
  },
10683
- "description": "If declared, the trigger will only show the dropdown bib.",
10684
- "attribute": "noToggle",
10685
- "reflects": true
10686
- },
10687
- {
10688
- "kind": "field",
10689
- "name": "offset",
10690
- "privacy": "public",
10691
- "type": {
10692
- "text": "number"
10693
- },
10694
- "description": "Gap between the trigger element and bib.",
10695
- "default": "0",
10696
- "attribute": "offset",
10612
+ "description": "If declared, will apply extra padding to bib content.",
10613
+ "attribute": "inset",
10697
10614
  "reflects": true
10698
10615
  },
10699
10616
  {
10700
10617
  "kind": "field",
10701
- "name": "onDark",
10618
+ "name": "rounded",
10702
10619
  "privacy": "public",
10703
10620
  "type": {
10704
10621
  "text": "boolean"
10705
10622
  },
10706
- "attribute": "onDark",
10707
- "reflects": true,
10708
- "description": "DEPRECATED - use `appearance=\"inverse\"` instead.",
10709
- "inheritedFrom": {
10710
- "name": "AuroElement",
10711
- "module": "components/layoutElement/src/auroElement.js"
10712
- }
10713
- },
10714
- {
10715
- "kind": "field",
10716
- "name": "onSlotChange",
10717
- "privacy": "public",
10718
- "type": {
10719
- "text": "function"
10720
- },
10721
- "description": "If declared, and a function is set, that function will execute when the slot content is updated.",
10722
- "attribute": "onSlotChange"
10623
+ "description": "If declared, will apply border-radius to the bib.",
10624
+ "attribute": "rounded",
10625
+ "reflects": true
10723
10626
  },
10724
10627
  {
10725
10628
  "kind": "field",
10726
- "name": "placement",
10629
+ "name": "bibTemplate",
10727
10630
  "privacy": "public",
10728
10631
  "type": {
10729
- "text": "'top' | 'right' | 'bottom' | 'left' | 'bottom-start' | 'top-start' | 'top-end' | 'right-start' | 'right-end' | 'bottom-end' | 'left-start' | 'left-end'"
10632
+ "text": "object"
10730
10633
  },
10731
- "description": "Position where the bib should appear relative to the trigger.",
10732
- "default": "'bottom-start'",
10733
- "attribute": "placement",
10734
- "reflects": true
10634
+ "description": "A reference to the associated bib template element.",
10635
+ "attribute": "bibTemplate"
10735
10636
  },
10736
10637
  {
10737
10638
  "kind": "field",
10738
- "name": "tabIndex",
10639
+ "name": "dialogLabel",
10739
10640
  "privacy": "private",
10740
10641
  "type": {
10741
- "text": "number"
10642
+ "text": "string"
10742
10643
  },
10743
- "attribute": "tabIndex"
10644
+ "description": "Accessible label for the dialog element, used when displayed as a modal.\nApplied via aria-labelledby on a visually hidden element rather than\naria-label because iOS VoiceOver does not reliably read aria-label\non <dialog> elements.",
10645
+ "attribute": "dialogLabel"
10744
10646
  },
10745
10647
  {
10746
10648
  "kind": "field",
10747
- "name": "bibDialogLabel",
10649
+ "name": "dialogRole",
10748
10650
  "privacy": "private",
10749
10651
  "type": {
10750
10652
  "text": "string"
10751
- },
10752
- "description": "Accessible label for the dropdown bib dialog element."
10753
- },
10754
- {
10755
- "kind": "field",
10756
- "name": "componentHasFocus",
10757
- "description": "Returns true if the element has focus.",
10758
- "privacy": "private",
10759
- "return": {
10760
- "type": {
10761
- "text": "boolean"
10762
- }
10763
- },
10764
- "readonly": true,
10765
- "inheritedFrom": {
10766
- "name": "AuroElement",
10767
- "module": "components/layoutElement/src/auroElement.js"
10768
- }
10769
- },
10770
- {
10771
- "kind": "method",
10772
- "name": "resetShapeClasses",
10773
- "inheritedFrom": {
10774
- "name": "AuroElement",
10775
- "module": "components/layoutElement/src/auroElement.js"
10776
- }
10777
- },
10778
- {
10779
- "kind": "method",
10780
- "name": "resetLayoutClasses",
10781
- "inheritedFrom": {
10782
- "name": "AuroElement",
10783
- "module": "components/layoutElement/src/auroElement.js"
10784
- }
10785
- },
10786
- {
10787
- "kind": "method",
10788
- "name": "updateComponentArchitecture",
10789
- "inheritedFrom": {
10790
- "name": "AuroElement",
10791
- "module": "components/layoutElement/src/auroElement.js"
10792
- }
10653
+ },
10654
+ "description": "Overrides the native role of the dialog element.\nFor example, set to `\"presentation\"` on desktop combobox to prevent\nVoiceOver from announcing \"listbox inside of a dialog\".\nWhen `undefined`, the dialog keeps its native role.",
10655
+ "attribute": "dialogRole"
10793
10656
  }
10794
10657
  ],
10795
10658
  "events": [
10796
10659
  {
10797
- "name": "auroDropdown-idAdded",
10660
+ "name": "auro-dropdownbib-connected",
10798
10661
  "type": {
10799
- "text": "Object<key"
10800
- },
10801
- "description": "Notifies consumers that the unique ID for the dropdown bib has been generated."
10662
+ "text": "CustomEvent"
10663
+ }
10802
10664
  },
10803
10665
  {
10804
- "name": "auroDropdown-triggerClick",
10666
+ "name": "auro-bib-cancel",
10805
10667
  "type": {
10806
10668
  "text": "CustomEvent"
10807
- },
10808
- "description": "Notifies that the trigger has been clicked."
10809
- },
10810
- {
10811
- "description": "Notifies that the visibility of the dropdown bib has changed.",
10812
- "name": "auroDropdown-toggled"
10669
+ }
10813
10670
  }
10814
10671
  ],
10815
10672
  "attributes": [
10816
10673
  {
10817
- "name": "appearance",
10674
+ "name": "isFullscreen",
10818
10675
  "type": {
10819
- "text": "'default' | 'inverse'"
10676
+ "text": "boolean"
10820
10677
  },
10821
- "description": "Defines whether the component will be on lighter or darker backgrounds.",
10822
- "default": "'default'",
10823
- "fieldName": "appearance"
10678
+ "description": "If declared, will take the fullscreen when the bib is displayed.",
10679
+ "fieldName": "isFullscreen"
10824
10680
  },
10825
10681
  {
10826
- "name": "autoPlacement",
10682
+ "name": "common",
10827
10683
  "type": {
10828
10684
  "text": "boolean"
10829
10685
  },
10830
- "description": "If declared, bib's position will be automatically calculated where to appear.",
10831
- "fieldName": "autoPlacement"
10686
+ "description": "If declared, will apply all styles for the common theme.",
10687
+ "fieldName": "common"
10832
10688
  },
10833
10689
  {
10834
- "name": "desktopModal",
10690
+ "name": "inset",
10835
10691
  "type": {
10836
10692
  "text": "boolean"
10837
10693
  },
10838
- "description": "If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.",
10839
- "fieldName": "desktopModal"
10694
+ "description": "If declared, will apply extra padding to bib content.",
10695
+ "fieldName": "inset"
10840
10696
  },
10841
10697
  {
10842
- "name": "disableEventShow",
10698
+ "name": "matchWidth",
10843
10699
  "type": {
10844
10700
  "text": "boolean"
10845
10701
  },
10846
- "description": "If declared, the dropdown will only show by calling the API .show() public method.",
10847
- "fieldName": "disableEventShow"
10702
+ "description": "If declared, the bib width will match the trigger width.",
10703
+ "default": "false",
10704
+ "fieldName": "matchWidth"
10848
10705
  },
10849
10706
  {
10850
- "name": "simple",
10707
+ "name": "rounded",
10851
10708
  "type": {
10852
10709
  "text": "boolean"
10853
10710
  },
10854
- "description": "If declared, applies a border around the trigger slot.",
10855
- "fieldName": "simple"
10711
+ "description": "If declared, will apply border-radius to the bib.",
10712
+ "fieldName": "rounded"
10856
10713
  },
10857
10714
  {
10858
- "name": "chevron",
10715
+ "name": "bibTemplate",
10859
10716
  "type": {
10860
- "text": "boolean"
10717
+ "text": "object"
10861
10718
  },
10862
- "description": "If declared, the dropdown displays a chevron on the right.",
10863
- "fieldName": "chevron"
10719
+ "description": "A reference to the associated bib template element.",
10720
+ "fieldName": "bibTemplate"
10864
10721
  },
10865
10722
  {
10866
- "name": "disabled",
10723
+ "name": "shape",
10867
10724
  "type": {
10868
- "text": "boolean"
10725
+ "text": "string"
10869
10726
  },
10870
- "description": "If declared, the dropdown is not interactive.",
10871
- "fieldName": "disabled"
10727
+ "default": "\"rounded\"",
10728
+ "fieldName": "shape"
10872
10729
  },
10873
10730
  {
10874
- "name": "disableKeyboardHandling",
10731
+ "name": "dialogLabel",
10875
10732
  "type": {
10876
- "text": "boolean"
10733
+ "text": "string"
10877
10734
  },
10878
- "description": "If declared, the dropdown will not handle keyboard events and will require the consumer to manage this behavior.",
10879
- "fieldName": "disableKeyboardHandling"
10735
+ "description": "Accessible label for the dialog element, used when displayed as a modal.\nApplied via aria-labelledby on a visually hidden element rather than\naria-label because iOS VoiceOver does not reliably read aria-label\non <dialog> elements.",
10736
+ "fieldName": "dialogLabel"
10880
10737
  },
10881
10738
  {
10882
- "name": "dropdownWidth",
10739
+ "name": "dialogRole",
10883
10740
  "type": {
10884
- "text": "number"
10741
+ "text": "string"
10885
10742
  },
10886
- "fieldName": "dropdownWidth"
10743
+ "description": "Overrides the native role of the dialog element.\nFor example, set to `\"presentation\"` on desktop combobox to prevent\nVoiceOver from announcing \"listbox inside of a dialog\".\nWhen `undefined`, the dialog keeps its native role.",
10744
+ "fieldName": "dialogRole"
10887
10745
  },
10888
10746
  {
10889
- "name": "error",
10747
+ "name": "hasActiveDescendant",
10890
10748
  "type": {
10891
10749
  "text": "boolean"
10892
10750
  },
10893
- "description": "If declared, will apply error UI to the dropdown.",
10894
- "fieldName": "error"
10895
- },
10751
+ "description": "Tracks whether a menu option is currently highlighted.",
10752
+ "default": "false",
10753
+ "fieldName": "hasActiveDescendant"
10754
+ }
10755
+ ],
10756
+ "superclass": {
10757
+ "name": "LitElement",
10758
+ "package": "lit"
10759
+ },
10760
+ "customElement": true
10761
+ }
10762
+ ],
10763
+ "exports": [
10764
+ {
10765
+ "kind": "js",
10766
+ "name": "AuroDropdownBib",
10767
+ "declaration": {
10768
+ "name": "AuroDropdownBib",
10769
+ "module": "components/dropdown/src/auro-dropdownBib.js"
10770
+ }
10771
+ }
10772
+ ]
10773
+ },
10774
+ {
10775
+ "kind": "javascript-module",
10776
+ "path": "components/dropdown/src/dropdownBibKeyboardStrategy.js",
10777
+ "declarations": [
10778
+ {
10779
+ "kind": "function",
10780
+ "name": "createDropdownBibKeyboardStrategy",
10781
+ "parameters": [
10896
10782
  {
10897
- "name": "errorMessage",
10783
+ "name": "bib",
10784
+ "description": "The dropdown bib element.",
10898
10785
  "type": {
10899
- "text": "string"
10786
+ "text": "HTMLElement"
10787
+ }
10788
+ }
10789
+ ],
10790
+ "description": "Creates a keyboard strategy for dialog-specific key handling.\nAll other keydown behavior is left to the browser's native bubbling path.",
10791
+ "return": {
10792
+ "type": {
10793
+ "text": "Object"
10794
+ }
10795
+ }
10796
+ }
10797
+ ],
10798
+ "exports": [
10799
+ {
10800
+ "kind": "js",
10801
+ "name": "createDropdownBibKeyboardStrategy",
10802
+ "declaration": {
10803
+ "name": "createDropdownBibKeyboardStrategy",
10804
+ "module": "components/dropdown/src/dropdownBibKeyboardStrategy.js"
10805
+ }
10806
+ }
10807
+ ]
10808
+ },
10809
+ {
10810
+ "kind": "javascript-module",
10811
+ "path": "components/dropdown/src/iconVersion.js",
10812
+ "declarations": [],
10813
+ "exports": [
10814
+ {
10815
+ "kind": "js",
10816
+ "name": "default",
10817
+ "declaration": {
10818
+ "name": "9.2.0",
10819
+ "module": "components/dropdown/src/iconVersion.js"
10820
+ }
10821
+ }
10822
+ ]
10823
+ },
10824
+ {
10825
+ "kind": "javascript-module",
10826
+ "path": "components/dropdown/src/index.js",
10827
+ "declarations": [],
10828
+ "exports": [
10829
+ {
10830
+ "kind": "js",
10831
+ "name": "AuroDropdown",
10832
+ "declaration": {
10833
+ "name": "AuroDropdown",
10834
+ "module": "components/dropdown/src/index.js"
10835
+ }
10836
+ }
10837
+ ]
10838
+ },
10839
+ {
10840
+ "kind": "javascript-module",
10841
+ "path": "components/dropdown/src/registered.js",
10842
+ "declarations": [],
10843
+ "exports": []
10844
+ },
10845
+ {
10846
+ "kind": "javascript-module",
10847
+ "path": "components/form/src/auro-form.js",
10848
+ "declarations": [
10849
+ {
10850
+ "kind": "class",
10851
+ "description": "The `auro-form` element provides users a way to create and manage forms in a consistent manner.",
10852
+ "name": "AuroForm",
10853
+ "slots": [
10854
+ {
10855
+ "description": "The default slot for form elements.",
10856
+ "name": "default"
10857
+ }
10858
+ ],
10859
+ "members": [
10860
+ {
10861
+ "kind": "field",
10862
+ "name": "formElementTags",
10863
+ "static": true,
10864
+ "readonly": true
10865
+ },
10866
+ {
10867
+ "kind": "method",
10868
+ "name": "_isElementTag",
10869
+ "parameters": [
10870
+ {
10871
+ "name": "elementTag",
10872
+ "description": "The HTML tag name like `auro-datepicker`.",
10873
+ "type": {
10874
+ "text": "string"
10875
+ }
10876
+ },
10877
+ {
10878
+ "name": "element",
10879
+ "description": "The actual HTML element to compare.",
10880
+ "type": {
10881
+ "text": "HTMLElement"
10882
+ }
10883
+ }
10884
+ ],
10885
+ "description": "Compare tag name with element to identify it (for API purposes).",
10886
+ "return": {
10887
+ "type": {
10888
+ "text": "boolean"
10889
+ }
10900
10890
  },
10901
- "description": "Contains the help text message for the current validity error.",
10902
- "default": "undefined",
10903
- "fieldName": "errorMessage"
10891
+ "privacy": "private"
10892
+ },
10893
+ {
10894
+ "kind": "method",
10895
+ "name": "_isInElementCollection",
10896
+ "parameters": [
10897
+ {
10898
+ "name": "collection",
10899
+ "description": "The array to use for tag name search.",
10900
+ "type": {
10901
+ "text": "string[]"
10902
+ }
10903
+ },
10904
+ {
10905
+ "name": "element",
10906
+ "description": "The element to compare against the master list.",
10907
+ "type": {
10908
+ "text": "HTMLElement"
10909
+ }
10910
+ }
10911
+ ],
10912
+ "description": "Shared code for determining if an element is something we care about (submit, form element, etc.).",
10913
+ "return": {
10914
+ "type": {
10915
+ "text": "boolean"
10916
+ }
10917
+ },
10918
+ "privacy": "private"
10904
10919
  },
10905
10920
  {
10906
- "name": "focusShow",
10907
- "type": {
10908
- "text": "boolean"
10921
+ "kind": "method",
10922
+ "name": "isFormElement",
10923
+ "parameters": [
10924
+ {
10925
+ "name": "element",
10926
+ "description": "The element to check (attr or tag name).",
10927
+ "type": {
10928
+ "text": "HTMLElement"
10929
+ }
10930
+ }
10931
+ ],
10932
+ "description": "Check if the tag name is a form element.",
10933
+ "return": {
10934
+ "type": {
10935
+ "text": "boolean"
10936
+ }
10909
10937
  },
10910
- "description": "If declared, the bib will display when focus is applied to the trigger.",
10911
- "fieldName": "focusShow"
10938
+ "privacy": "private"
10912
10939
  },
10913
10940
  {
10914
- "name": "open",
10915
- "type": {
10916
- "text": "boolean"
10941
+ "kind": "method",
10942
+ "name": "_isDisabled",
10943
+ "parameters": [
10944
+ {
10945
+ "name": "element",
10946
+ "description": "The element to check.",
10947
+ "type": {
10948
+ "text": "HTMLElement | undefined | null"
10949
+ }
10950
+ }
10951
+ ],
10952
+ "description": "Whether a given element is currently disabled. Disabled controls are excluded\nfrom submission, validity, and initial-state checks per the HTML spec\n(section 4.10.19.2 \"Enabling and disabling form controls\":\nhttps://www.w3.org/TR/2011/WD-html5-20110113/association-of-controls-and-forms.html).\n\nImplementation note: we deliberately read only the attribute. Every Auro\nform element in `formElementTags` declares `disabled` with `reflect: true`,\nso the attribute and property stay in sync. Reading the attribute also\nlets the MutationObserver in `connectedCallback` (which is filtered to\n`['disabled', 'name']`) be the single source of truth for re-renders.\nIf a future form-element type ships without attribute reflection, expand\nthis helper to also read `element.disabled`.",
10953
+ "return": {
10954
+ "type": {
10955
+ "text": "boolean"
10956
+ }
10917
10957
  },
10918
- "description": "If true, the dropdown bib is displayed.",
10919
- "default": "false",
10920
- "fieldName": "isPopoverVisible"
10958
+ "privacy": "private"
10921
10959
  },
10922
10960
  {
10923
- "name": "isBibFullscreen",
10924
- "type": {
10925
- "text": "boolean"
10961
+ "kind": "method",
10962
+ "name": "_isNameDisabled",
10963
+ "parameters": [
10964
+ {
10965
+ "name": "name",
10966
+ "description": "The `name` attribute used to register the element.",
10967
+ "type": {
10968
+ "text": "string"
10969
+ }
10970
+ }
10971
+ ],
10972
+ "description": "Whether the tracked form element registered under `name` is currently disabled.\nSee `_isDisabled` for the HTML-spec rationale behind excluding disabled\ncontrols from form state.\n\nReads a cached flag on `formState[name]` populated by `_addElementToState`\nat registration and refreshed by `_handleAttributeMutations` whenever the\nelement's `disabled` attribute toggles. The cache is fed by the same\n`hasAttribute('disabled')` read as `_isDisabled`, so the \"future form-element\ntype without attribute reflection\" caveat documented there applies here too.",
10973
+ "return": {
10974
+ "type": {
10975
+ "text": "boolean"
10976
+ }
10926
10977
  },
10927
- "description": "If true, the dropdown bib is taking the fullscreen when it's open.",
10928
- "default": "false",
10929
- "fieldName": "isBibFullscreen"
10978
+ "privacy": "private"
10930
10979
  },
10931
10980
  {
10932
- "name": "hoverToggle",
10933
- "type": {
10934
- "text": "boolean"
10981
+ "kind": "method",
10982
+ "name": "_eventIsValidFormEvent",
10983
+ "parameters": [
10984
+ {
10985
+ "name": "event",
10986
+ "description": "The event to validate.",
10987
+ "type": {
10988
+ "text": "Event"
10989
+ }
10990
+ }
10991
+ ],
10992
+ "description": "Validates if an event is from a valid form element with a name.",
10993
+ "return": {
10994
+ "type": {
10995
+ "text": "boolean"
10996
+ }
10935
10997
  },
10936
- "description": "If declared, the trigger will toggle the dropdown on mouseover/mouseout.",
10937
- "fieldName": "hoverToggle"
10998
+ "privacy": "private"
10938
10999
  },
10939
11000
  {
10940
- "name": "hasTriggerContent",
10941
- "type": {
10942
- "text": "boolean"
10943
- },
10944
- "fieldName": "hasTriggerContent"
11001
+ "kind": "field",
11002
+ "name": "buttonElementTags",
11003
+ "static": true,
11004
+ "readonly": true
10945
11005
  },
10946
11006
  {
10947
- "name": "fullscreenBreakpoint",
10948
- "type": {
10949
- "text": "'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'disabled'"
11007
+ "kind": "method",
11008
+ "name": "isButtonElement",
11009
+ "parameters": [
11010
+ {
11011
+ "name": "element",
11012
+ "description": "The element to check.",
11013
+ "type": {
11014
+ "text": "HTMLElement"
11015
+ }
11016
+ }
11017
+ ],
11018
+ "description": "Check if the tag name is a button element.",
11019
+ "return": {
11020
+ "type": {
11021
+ "text": "boolean"
11022
+ }
10950
11023
  },
10951
- "description": "Defines the screen size breakpoint at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.\n\nWhen expanded, the dropdown will automatically display in fullscreen mode\nif the screen size is equal to or smaller than the selected breakpoint.",
10952
- "default": "'sm'",
10953
- "fieldName": "fullscreenBreakpoint"
11024
+ "privacy": "private"
10954
11025
  },
10955
11026
  {
10956
- "name": "layout",
10957
- "type": {
10958
- "text": "string"
11027
+ "kind": "field",
11028
+ "name": "value",
11029
+ "description": "Returns the current values of all named, enabled form elements as a key-value object, keyed by each element's `name` attribute. Each value is the child component's own `.value`, so the shape depends on the element type — see that component's documentation for its exact shape (for example, `auro-checkbox-group` yields an array, `auro-counter-group` yields an object keyed by counter name, and `auro-select` with `multiSelect` yields a JSON-encoded string). The one form-specific exception is a `range` `auro-datepicker`, whose `.values` array (`[start, end]`) is stored instead of its single `.value` string.",
11030
+ "return": {
11031
+ "type": {
11032
+ "text": "Record<string, string | number | boolean | string[] | Record<string, number> | null>"
11033
+ }
10959
11034
  },
10960
- "description": "Sets the layout of the dropdown.",
10961
- "default": "undefined",
10962
- "fieldName": "layout",
10963
- "inheritedFrom": {
10964
- "name": "AuroElement",
10965
- "module": "components/layoutElement/src/auroElement.js"
10966
- }
11035
+ "readonly": true
10967
11036
  },
10968
11037
  {
10969
- "name": "parentBorder",
10970
- "type": {
10971
- "text": "boolean"
11038
+ "kind": "field",
11039
+ "name": "submitElements",
11040
+ "description": "Getter for internal _submitElements.",
11041
+ "return": {
11042
+ "type": {
11043
+ "text": "HTMLButtonElement[]"
11044
+ }
10972
11045
  },
10973
- "description": "Defines if the trigger should size based on the parent element providing the border UI.",
10974
- "default": "false",
10975
- "fieldName": "parentBorder"
11046
+ "privacy": "private",
11047
+ "readonly": true
10976
11048
  },
10977
11049
  {
10978
- "name": "matchWidth",
10979
- "type": {
10980
- "text": "boolean"
11050
+ "kind": "field",
11051
+ "name": "resetElements",
11052
+ "description": "Returns a collection of elements that will reset the form.",
11053
+ "return": {
11054
+ "type": {
11055
+ "text": "HTMLButtonElement[]"
11056
+ }
10981
11057
  },
10982
- "description": "If declared, the popover and trigger will be set to the same width.",
10983
- "default": "false",
10984
- "fieldName": "matchWidth"
11058
+ "privacy": "private",
11059
+ "readonly": true
10985
11060
  },
10986
11061
  {
10987
- "name": "noFlip",
10988
- "type": {
10989
- "text": "boolean"
11062
+ "kind": "method",
11063
+ "name": "_isFormValid",
11064
+ "description": "Raw constraint-validation check. Returns `true` when no enabled field\nhas a validity error. Unlike the public `validity` getter, this does\nNOT gate on `isInitialState` — callers that need to make a decision\nbased on the actual constraint state (submit-button enablement, the\ninternal `submit()` gate) read this so a pre-filled valid form is\ncorrectly recognized as submittable at first render.",
11065
+ "return": {
11066
+ "type": {
11067
+ "text": "boolean"
11068
+ }
10990
11069
  },
10991
- "description": "If declared, the bib will NOT flip to an alternate position\nwhen there isn't enough space in the specified `placement`.",
10992
- "fieldName": "noFlip"
11070
+ "privacy": "private"
10993
11071
  },
10994
11072
  {
10995
- "name": "shift",
10996
- "type": {
10997
- "text": "boolean"
11073
+ "kind": "method",
11074
+ "name": "_hasResetableState",
11075
+ "description": "Whether the reset button should be enabled. True when the form has\ndiverged from its initial state (so the user can always return to\ndefaults — even if the dirty value lives behind a now-disabled field),\nOR when any non-disabled field has a current value or captured initial\nvalue (covers pre-filled forms and user-cleared-back-to-empty cases).",
11076
+ "return": {
11077
+ "type": {
11078
+ "text": "boolean"
11079
+ }
10998
11080
  },
10999
- "description": "If declared, the dropdown will shift its position to avoid being cut off by the viewport.",
11000
- "fieldName": "shift"
11081
+ "privacy": "private"
11001
11082
  },
11002
11083
  {
11003
- "name": "noHideOnThisFocusLoss",
11004
- "type": {
11005
- "text": "boolean"
11084
+ "kind": "method",
11085
+ "name": "_normalizeEmpty",
11086
+ "parameters": [
11087
+ {
11088
+ "name": "value",
11089
+ "description": "Value to normalize.",
11090
+ "type": {
11091
+ "text": "*"
11092
+ }
11093
+ }
11094
+ ],
11095
+ "description": "Collapse empty representations to a single canonical `null`.\n\n`_addElementToState` captures `null` for a field that mounts without a\n`value` attribute (`element.value || element.getAttribute('value')` is\nfalsy → resolves to `null`), but `sharedInputListener` later stores the\nraw `event.target.value` — which is `''` for a user-cleared text input.\nWithout this normalization, backspacing back to empty would taint the\nform forever (`'' !== null`) and Reset would stay enabled with nothing\nto actually reset.\n\n`''`, `undefined`, and `[]` all collapse to `null`. The empty-array case\ncovers checkbox-group, radio-group, and multiselect, where `[]` means\n\"no selection\" — semantically the same as `null`/`''`. Genuine values\n— including `0`, `false`, non-empty strings, and non-empty arrays —\npass through unchanged so number, boolean, and populated multi-value\nfields still compare correctly.",
11096
+ "return": {
11097
+ "type": {
11098
+ "text": "*"
11099
+ }
11006
11100
  },
11007
- "description": "If declared, the dropdown will not hide when moving focus outside the element.",
11008
- "default": "false",
11009
- "fieldName": "noHideOnThisFocusLoss"
11101
+ "privacy": "private"
11010
11102
  },
11011
11103
  {
11012
- "name": "noToggle",
11013
- "type": {
11014
- "text": "boolean"
11015
- },
11016
- "description": "If declared, the trigger will only show the dropdown bib.",
11017
- "fieldName": "noToggle"
11104
+ "kind": "method",
11105
+ "name": "_calculateValidity",
11106
+ "description": "Infer validity status based on current formState.\n\nValidity stays `null` while the form is in its initial state — this is\nthe \"stay quiet until the user interacts\" UX contract that consumers\ndepend on to delay error indicators. Code that needs the raw\nconstraint-validation result regardless of interaction (e.g.,\nsubmit-button enablement) should call `_isFormValid()` directly.",
11107
+ "privacy": "private"
11018
11108
  },
11019
11109
  {
11020
- "name": "offset",
11021
- "type": {
11022
- "text": "number"
11110
+ "kind": "field",
11111
+ "name": "validity",
11112
+ "description": "Returns `'valid'` if all required and interacted-with form elements are valid, `'invalid'` if any are not, or `null` if the form has not been interacted with yet.",
11113
+ "return": {
11114
+ "type": {
11115
+ "text": "\"valid\" | \"invalid\" | null"
11116
+ }
11023
11117
  },
11024
- "description": "Gap between the trigger element and bib.",
11025
- "default": "0",
11026
- "fieldName": "offset"
11118
+ "readonly": true
11027
11119
  },
11028
11120
  {
11029
- "name": "onDark",
11030
- "type": {
11031
- "text": "boolean"
11121
+ "kind": "method",
11122
+ "name": "_setInitialState",
11123
+ "description": "Determines whether the form is in its initial (untouched) state.\n\nA field is tainted if either:\n - its value differs from the value captured on first render, OR\n - its validity is failing (anything other than `null` or `'valid'`).\n\nValidity acts as a backup signal: it catches users who interact with a\nfield without changing its value (e.g., focusing and blurring a required\nfield). We skip `null` (not yet validated) and `'valid'` (the default\nafter Auro's auto-validation on mount) because neither proves the user\ntouched anything.",
11124
+ "return": {
11125
+ "type": {
11126
+ "text": "void"
11127
+ }
11032
11128
  },
11033
- "description": "DEPRECATED - use `appearance=\"inverse\"` instead.",
11034
- "fieldName": "onDark"
11129
+ "privacy": "private"
11035
11130
  },
11036
11131
  {
11037
- "name": "onSlotChange",
11038
- "type": {
11039
- "text": "function"
11132
+ "kind": "field",
11133
+ "name": "isInitialState",
11134
+ "description": "Returns `true` if no form element has been interacted with or had its value changed since the form was initialized or last reset.",
11135
+ "return": {
11136
+ "type": {
11137
+ "text": "boolean"
11138
+ }
11040
11139
  },
11041
- "description": "If declared, and a function is set, that function will execute when the slot content is updated.",
11042
- "fieldName": "onSlotChange"
11140
+ "readonly": true
11043
11141
  },
11044
11142
  {
11045
- "name": "placement",
11046
- "type": {
11047
- "text": "'top' | 'right' | 'bottom' | 'left' | 'bottom-start' | 'top-start' | 'top-end' | 'right-start' | 'right-end' | 'bottom-end' | 'left-start' | 'left-end'"
11143
+ "kind": "method",
11144
+ "name": "setDisabledStateOnButtons",
11145
+ "description": "Enables or disables submit and reset buttons based on the current form state and validity.",
11146
+ "return": {
11147
+ "type": {
11148
+ "text": "void"
11149
+ }
11048
11150
  },
11049
- "description": "Position where the bib should appear relative to the trigger.",
11050
- "default": "'bottom-start'",
11051
- "fieldName": "placement"
11151
+ "privacy": "private"
11052
11152
  },
11053
11153
  {
11054
- "name": "tabIndex",
11055
- "type": {
11056
- "text": "number"
11154
+ "kind": "method",
11155
+ "name": "queryAuroElements",
11156
+ "description": "Construct the query strings from elements, append them together, execute, and return the NodeList.",
11157
+ "return": {
11158
+ "type": {
11159
+ "text": "NodeList"
11160
+ }
11057
11161
  },
11058
- "fieldName": "tabIndex"
11162
+ "privacy": "private"
11059
11163
  },
11060
11164
  {
11061
- "name": "shape",
11062
- "type": {
11063
- "text": "string"
11064
- },
11065
- "fieldName": "shape",
11066
- "inheritedFrom": {
11067
- "name": "AuroElement",
11068
- "module": "components/layoutElement/src/auroElement.js"
11069
- }
11165
+ "kind": "method",
11166
+ "name": "_addElementToState",
11167
+ "parameters": [
11168
+ {
11169
+ "name": "element",
11170
+ "description": "The element to add to our state.",
11171
+ "type": {
11172
+ "text": "HTMLElement"
11173
+ }
11174
+ }
11175
+ ],
11176
+ "description": "Store an element in state and on the _elements array.",
11177
+ "privacy": "private"
11070
11178
  },
11071
11179
  {
11072
- "name": "size",
11073
- "type": {
11074
- "text": "string"
11180
+ "kind": "method",
11181
+ "name": "initializeState",
11182
+ "description": "Initialize (or reinitialize) the form state.",
11183
+ "return": {
11184
+ "type": {
11185
+ "text": "void"
11186
+ }
11075
11187
  },
11076
- "fieldName": "size",
11077
- "inheritedFrom": {
11078
- "name": "AuroElement",
11079
- "module": "components/layoutElement/src/auroElement.js"
11188
+ "privacy": "private"
11189
+ },
11190
+ {
11191
+ "kind": "method",
11192
+ "name": "reset",
11193
+ "description": "Resets all form elements to their initial state and fires a `reset` event. The event's `detail.previousValue` contains the form values captured immediately before the reset.",
11194
+ "return": {
11195
+ "type": {
11196
+ "text": "void"
11197
+ }
11080
11198
  }
11081
11199
  },
11082
11200
  {
11083
- "name": "ondark",
11084
- "type": {
11085
- "text": "boolean"
11086
- },
11087
- "fieldName": "onDark",
11088
- "inheritedFrom": {
11089
- "name": "AuroElement",
11090
- "module": "components/layoutElement/src/auroElement.js"
11201
+ "kind": "method",
11202
+ "name": "submit",
11203
+ "description": "Validates all form elements. If all are valid, fires a `submit` event with `detail.value` containing the current form values. If any element is invalid, its error state is surfaced and the `submit` event is not fired.",
11204
+ "return": {
11205
+ "type": {
11206
+ "text": "Promise<void>"
11207
+ }
11091
11208
  }
11092
- }
11093
- ],
11094
- "superclass": {
11095
- "name": "AuroElement",
11096
- "module": "/components/layoutElement/src/auroElement.js"
11097
- },
11098
- "tagName": "auro-dropdown",
11099
- "customElement": true
11100
- }
11101
- ],
11102
- "exports": [
11103
- {
11104
- "kind": "js",
11105
- "name": "AuroDropdown",
11106
- "declaration": {
11107
- "name": "AuroDropdown",
11108
- "module": "components/dropdown/src/auro-dropdown.js"
11109
- }
11110
- }
11111
- ]
11112
- },
11113
- {
11114
- "kind": "javascript-module",
11115
- "path": "components/dropdown/src/auro-dropdownBib.js",
11116
- "declarations": [
11117
- {
11118
- "kind": "class",
11119
- "description": "",
11120
- "name": "AuroDropdownBib",
11121
- "cssParts": [
11209
+ },
11122
11210
  {
11123
- "description": "Apply css to the bib container.",
11124
- "name": "bibContainer"
11125
- }
11126
- ],
11127
- "members": [
11211
+ "kind": "method",
11212
+ "name": "register",
11213
+ "static": true,
11214
+ "parameters": [
11215
+ {
11216
+ "name": "name",
11217
+ "default": "\"auro-form\"",
11218
+ "description": "The custom element tag name to register.",
11219
+ "optional": true,
11220
+ "type": {
11221
+ "text": "string"
11222
+ }
11223
+ }
11224
+ ],
11225
+ "description": "Registers the `auro-form` custom element with the browser under a given tag name."
11226
+ },
11128
11227
  {
11129
- "kind": "field",
11130
- "name": "mobileFullscreenBreakpoint"
11228
+ "kind": "method",
11229
+ "name": "sharedInputListener",
11230
+ "parameters": [
11231
+ {
11232
+ "name": "event",
11233
+ "description": "The event that is fired from the form element.",
11234
+ "type": {
11235
+ "text": "Event"
11236
+ }
11237
+ }
11238
+ ],
11239
+ "description": "Shared input listener for all form elements.",
11240
+ "privacy": "private"
11131
11241
  },
11132
11242
  {
11133
11243
  "kind": "method",
11134
- "name": "_setupCancelHandler",
11244
+ "name": "sharedValidationListener",
11135
11245
  "parameters": [
11136
11246
  {
11137
- "name": "dialog",
11138
- "description": "The dialog element to attach the cancel listener to.",
11247
+ "name": "event",
11248
+ "description": "The event that is fired from the form element.",
11139
11249
  "type": {
11140
- "text": "HTMLDialogElement"
11250
+ "text": "Event"
11141
11251
  }
11142
11252
  }
11143
11253
  ],
11144
- "description": "Forwards the dialog's native `cancel` event (fired on ESC) as\nan `auro-bib-cancel` custom event so parent components can close.",
11254
+ "description": "Shared validation listener for all form elements.",
11145
11255
  "privacy": "private"
11146
11256
  },
11147
11257
  {
11148
11258
  "kind": "method",
11149
- "name": "_lockTouchScroll",
11150
- "description": "Blocks touch-driven page scroll while a fullscreen modal dialog is open.\n\nThe showModal() function places the dialog in the browser's **top layer**,\nwhich is a separate rendering layer above the normal DOM. On mobile, the\ncompositor processes visual-viewport panning before top-layer touch\nhandling. This means the entire viewport — including the top-layer dialog\n— can be panned by a touch gesture, causing the page behind the dialog to\nscroll into view. To prevent this, we add a touchmove listener that cancels\nthe event if the touch started outside the dialog or any scrollable child within it.",
11259
+ "name": "handleKeyDown",
11260
+ "parameters": [
11261
+ {
11262
+ "name": "event",
11263
+ "description": "The keyboard event.",
11264
+ "type": {
11265
+ "text": "KeyboardEvent"
11266
+ }
11267
+ }
11268
+ ],
11269
+ "description": "Handle Enter key press on form elements.",
11151
11270
  "privacy": "private"
11152
11271
  },
11153
11272
  {
11154
11273
  "kind": "method",
11155
- "name": "_unlockTouchScroll",
11156
- "description": "Removes the touchmove listener added by _lockTouchScroll().",
11274
+ "name": "_attachEventListeners",
11275
+ "description": "Attaches input, validation, and keydown listeners to all tracked form and button elements.\nRemoves existing listeners first to avoid duplicates on re-initialization.",
11276
+ "return": {
11277
+ "type": {
11278
+ "text": "void"
11279
+ }
11280
+ },
11157
11281
  "privacy": "private"
11158
11282
  },
11159
11283
  {
11160
11284
  "kind": "method",
11161
- "name": "open",
11285
+ "name": "_handleAttributeMutations",
11162
11286
  "parameters": [
11163
11287
  {
11164
- "name": "modal",
11165
- "default": "true"
11288
+ "name": "mutations",
11289
+ "description": "The batched mutation records.",
11290
+ "type": {
11291
+ "text": "MutationRecord[]"
11292
+ }
11166
11293
  }
11167
- ]
11294
+ ],
11295
+ "description": "Handle batched MutationObserver records for `disabled` and `name`\nattribute changes on tracked form elements. A `name` change invalidates\nthe formState keying — we resolve it by re-initializing state. A `disabled`\nchange simply needs a re-render (so `value` / `validity` getters re-evaluate)\nand a refresh of the submit/reset button enablement.",
11296
+ "return": {
11297
+ "type": {
11298
+ "text": "void"
11299
+ }
11300
+ },
11301
+ "privacy": "private"
11168
11302
  },
11169
11303
  {
11170
11304
  "kind": "method",
11171
- "name": "close",
11172
- "description": "Closes the dialog."
11173
- },
11174
- {
11175
- "kind": "field",
11176
- "name": "_mobileBreakpointName",
11177
- "privacy": "private",
11178
- "default": "undefined"
11305
+ "name": "mutationEventListener",
11306
+ "description": "Mutation observer for form elements. Slot change does not trigger unless\nroot-level elements are added/removed. This is a workaround to ensure\nnested form elements are also observed.",
11307
+ "return": {
11308
+ "type": {
11309
+ "text": "void"
11310
+ }
11311
+ },
11312
+ "privacy": "private"
11179
11313
  },
11180
11314
  {
11181
- "kind": "field",
11182
- "name": "shape",
11183
- "privacy": "public",
11184
- "type": {
11185
- "text": "string"
11315
+ "kind": "method",
11316
+ "name": "onSlotChange",
11317
+ "parameters": [
11318
+ {
11319
+ "name": "event",
11320
+ "description": "The slot change event.",
11321
+ "type": {
11322
+ "text": "Event"
11323
+ }
11324
+ }
11325
+ ],
11326
+ "description": "Slot change event listener. This is the main entry point for the form element.",
11327
+ "return": {
11328
+ "type": {
11329
+ "text": "void"
11330
+ }
11186
11331
  },
11187
- "default": "\"rounded\"",
11188
- "attribute": "shape",
11189
- "reflects": true
11332
+ "privacy": "private"
11190
11333
  },
11191
11334
  {
11192
11335
  "kind": "field",
11193
- "name": "matchWidth",
11336
+ "name": "formState",
11194
11337
  "privacy": "private",
11195
11338
  "type": {
11196
- "text": "boolean"
11339
+ "text": "FormState"
11197
11340
  },
11198
- "description": "If declared, the bib width will match the trigger width.",
11199
- "default": "false",
11200
- "attribute": "matchWidth",
11201
- "reflects": true
11341
+ "default": "{}"
11202
11342
  },
11203
11343
  {
11204
11344
  "kind": "field",
11205
- "name": "hasActiveDescendant",
11345
+ "name": "_validity",
11206
11346
  "privacy": "private",
11207
11347
  "type": {
11208
- "text": "boolean"
11209
- },
11210
- "description": "Tracks whether a menu option is currently highlighted.",
11211
- "default": "false",
11212
- "attribute": "hasActiveDescendant"
11213
- },
11214
- {
11215
- "type": {
11216
- "text": "String"
11348
+ "text": "\"valid\" | \"invalid\" | null"
11217
11349
  },
11218
- "description": "Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile. When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.",
11219
- "name": "fullscreenBreakpoint",
11220
- "kind": "field"
11350
+ "default": "null"
11221
11351
  },
11222
11352
  {
11223
11353
  "kind": "field",
11224
- "name": "isFullscreen",
11225
- "privacy": "public",
11354
+ "name": "_isInitialState",
11355
+ "privacy": "private",
11226
11356
  "type": {
11227
11357
  "text": "boolean"
11228
11358
  },
11229
- "description": "If declared, will take the fullscreen when the bib is displayed.",
11230
- "attribute": "isFullscreen",
11231
- "reflects": true
11359
+ "default": "true"
11232
11360
  },
11233
11361
  {
11234
11362
  "kind": "field",
11235
- "name": "common",
11236
- "privacy": "public",
11363
+ "name": "_elements",
11364
+ "privacy": "private",
11237
11365
  "type": {
11238
- "text": "boolean"
11366
+ "text": "(HTMLElement & {reset: () => void})[]"
11239
11367
  },
11240
- "description": "If declared, will apply all styles for the common theme.",
11241
- "attribute": "common",
11242
- "reflects": true
11368
+ "default": "[]"
11243
11369
  },
11244
11370
  {
11245
11371
  "kind": "field",
11246
- "name": "inset",
11247
- "privacy": "public",
11372
+ "name": "_submitElements",
11373
+ "privacy": "private",
11248
11374
  "type": {
11249
- "text": "boolean"
11375
+ "text": "HTMLButtonElement[]"
11250
11376
  },
11251
- "description": "If declared, will apply extra padding to bib content.",
11252
- "attribute": "inset",
11253
- "reflects": true
11377
+ "default": "[]"
11254
11378
  },
11255
11379
  {
11256
11380
  "kind": "field",
11257
- "name": "rounded",
11258
- "privacy": "public",
11381
+ "name": "_resetElements",
11382
+ "privacy": "private",
11259
11383
  "type": {
11260
- "text": "boolean"
11384
+ "text": "HTMLButtonElement[]"
11261
11385
  },
11262
- "description": "If declared, will apply border-radius to the bib.",
11263
- "attribute": "rounded",
11264
- "reflects": true
11386
+ "default": "[]"
11265
11387
  },
11266
11388
  {
11267
11389
  "kind": "field",
11268
- "name": "bibTemplate",
11269
- "privacy": "public",
11390
+ "name": "mutationObservers",
11270
11391
  "type": {
11271
- "text": "object"
11392
+ "text": "MutationObserver[]"
11272
11393
  },
11273
- "description": "A reference to the associated bib template element.",
11274
- "attribute": "bibTemplate"
11394
+ "privacy": "private",
11395
+ "default": "[]"
11275
11396
  },
11276
11397
  {
11277
11398
  "kind": "field",
11278
- "name": "dialogLabel",
11279
- "privacy": "private",
11399
+ "name": "_initialValues",
11280
11400
  "type": {
11281
- "text": "string"
11401
+ "text": "Record<string, string | number | boolean | string[] | Record<string, number> | null | undefined>"
11282
11402
  },
11283
- "description": "Accessible label for the dialog element, used when displayed as a modal.\nApplied via aria-labelledby on a visually hidden element rather than\naria-label because iOS VoiceOver does not reliably read aria-label\non <dialog> elements.",
11284
- "attribute": "dialogLabel"
11403
+ "description": "Captured initial (default) value per field `name`. Populated on first\nsight of each name in `_addElementToState` and preserved across\nsubsequent `initializeState` cycles (slot change, rename, reset) so\n`_setInitialState` can detect user edits as `current !== initial`,\nmatching HTML's `dirtyValueFlag` semantics.",
11404
+ "privacy": "private",
11405
+ "default": "{}"
11285
11406
  },
11286
11407
  {
11287
11408
  "kind": "field",
11288
- "name": "dialogRole",
11289
- "privacy": "private",
11409
+ "name": "_attributeObserver",
11290
11410
  "type": {
11291
- "text": "string"
11411
+ "text": "MutationObserver | null"
11292
11412
  },
11293
- "description": "Overrides the native role of the dialog element.\nFor example, set to `\"presentation\"` on desktop combobox to prevent\nVoiceOver from announcing \"listbox inside of a dialog\".\nWhen `undefined`, the dialog keeps its native role.",
11294
- "attribute": "dialogRole"
11413
+ "privacy": "private",
11414
+ "default": "null"
11295
11415
  }
11296
11416
  ],
11297
11417
  "events": [
11298
11418
  {
11299
- "name": "auro-dropdownbib-connected",
11300
- "type": {
11301
- "text": "CustomEvent"
11302
- }
11303
- },
11304
- {
11305
- "name": "auro-bib-cancel",
11306
- "type": {
11307
- "text": "CustomEvent"
11308
- }
11309
- }
11310
- ],
11311
- "attributes": [
11312
- {
11313
- "name": "isFullscreen",
11314
- "type": {
11315
- "text": "boolean"
11316
- },
11317
- "description": "If declared, will take the fullscreen when the bib is displayed.",
11318
- "fieldName": "isFullscreen"
11319
- },
11320
- {
11321
- "name": "common",
11322
- "type": {
11323
- "text": "boolean"
11324
- },
11325
- "description": "If declared, will apply all styles for the common theme.",
11326
- "fieldName": "common"
11327
- },
11328
- {
11329
- "name": "inset",
11330
- "type": {
11331
- "text": "boolean"
11332
- },
11333
- "description": "If declared, will apply extra padding to bib content.",
11334
- "fieldName": "inset"
11335
- },
11336
- {
11337
- "name": "matchWidth",
11338
- "type": {
11339
- "text": "boolean"
11340
- },
11341
- "description": "If declared, the bib width will match the trigger width.",
11342
- "default": "false",
11343
- "fieldName": "matchWidth"
11344
- },
11345
- {
11346
- "name": "rounded",
11347
- "type": {
11348
- "text": "boolean"
11349
- },
11350
- "description": "If declared, will apply border-radius to the bib.",
11351
- "fieldName": "rounded"
11352
- },
11353
- {
11354
- "name": "bibTemplate",
11355
- "type": {
11356
- "text": "object"
11357
- },
11358
- "description": "A reference to the associated bib template element.",
11359
- "fieldName": "bibTemplate"
11360
- },
11361
- {
11362
- "name": "shape",
11419
+ "name": "change",
11363
11420
  "type": {
11364
- "text": "string"
11421
+ "text": "Event"
11365
11422
  },
11366
- "default": "\"rounded\"",
11367
- "fieldName": "shape"
11423
+ "description": "Fires when a child form element's value changes or the form is initialized."
11368
11424
  },
11369
11425
  {
11370
- "name": "dialogLabel",
11426
+ "name": "reset",
11371
11427
  "type": {
11372
- "text": "string"
11428
+ "text": "CustomEvent"
11373
11429
  },
11374
- "description": "Accessible label for the dialog element, used when displayed as a modal.\nApplied via aria-labelledby on a visually hidden element rather than\naria-label because iOS VoiceOver does not reliably read aria-label\non <dialog> elements.",
11375
- "fieldName": "dialogLabel"
11430
+ "description": "Fires when the form is reset. The event detail contains the previous value of the form before reset."
11376
11431
  },
11377
11432
  {
11378
- "name": "dialogRole",
11433
+ "name": "submit",
11379
11434
  "type": {
11380
- "text": "string"
11435
+ "text": "CustomEvent"
11381
11436
  },
11382
- "description": "Overrides the native role of the dialog element.\nFor example, set to `\"presentation\"` on desktop combobox to prevent\nVoiceOver from announcing \"listbox inside of a dialog\".\nWhen `undefined`, the dialog keeps its native role.",
11383
- "fieldName": "dialogRole"
11437
+ "description": "Fires when the form is submitted. The event detail contains the current value of the form."
11384
11438
  },
11385
11439
  {
11386
- "name": "hasActiveDescendant",
11387
- "type": {
11388
- "text": "boolean"
11389
- },
11390
- "description": "Tracks whether a menu option is currently highlighted.",
11391
- "default": "false",
11392
- "fieldName": "hasActiveDescendant"
11440
+ "description": "Fires when a child form element receives user input.",
11441
+ "name": "input"
11393
11442
  }
11394
11443
  ],
11395
11444
  "superclass": {
11396
11445
  "name": "LitElement",
11397
11446
  "package": "lit"
11398
11447
  },
11448
+ "tagName": "auro-form",
11399
11449
  "customElement": true
11400
11450
  }
11401
11451
  ],
11402
11452
  "exports": [
11403
11453
  {
11404
11454
  "kind": "js",
11405
- "name": "AuroDropdownBib",
11406
- "declaration": {
11407
- "name": "AuroDropdownBib",
11408
- "module": "components/dropdown/src/auro-dropdownBib.js"
11409
- }
11410
- }
11411
- ]
11412
- },
11413
- {
11414
- "kind": "javascript-module",
11415
- "path": "components/dropdown/src/dropdownBibKeyboardStrategy.js",
11416
- "declarations": [
11417
- {
11418
- "kind": "function",
11419
- "name": "createDropdownBibKeyboardStrategy",
11420
- "parameters": [
11421
- {
11422
- "name": "bib",
11423
- "description": "The dropdown bib element.",
11424
- "type": {
11425
- "text": "HTMLElement"
11426
- }
11427
- }
11428
- ],
11429
- "description": "Creates a keyboard strategy for dialog-specific key handling.\nAll other keydown behavior is left to the browser's native bubbling path.",
11430
- "return": {
11431
- "type": {
11432
- "text": "Object"
11433
- }
11434
- }
11435
- }
11436
- ],
11437
- "exports": [
11438
- {
11439
- "kind": "js",
11440
- "name": "createDropdownBibKeyboardStrategy",
11441
- "declaration": {
11442
- "name": "createDropdownBibKeyboardStrategy",
11443
- "module": "components/dropdown/src/dropdownBibKeyboardStrategy.js"
11444
- }
11445
- }
11446
- ]
11447
- },
11448
- {
11449
- "kind": "javascript-module",
11450
- "path": "components/dropdown/src/iconVersion.js",
11451
- "declarations": [],
11452
- "exports": [
11453
- {
11454
- "kind": "js",
11455
- "name": "default",
11455
+ "name": "AuroForm",
11456
11456
  "declaration": {
11457
- "name": "9.2.0",
11458
- "module": "components/dropdown/src/iconVersion.js"
11457
+ "name": "AuroForm",
11458
+ "module": "components/form/src/auro-form.js"
11459
11459
  }
11460
11460
  }
11461
11461
  ]
11462
11462
  },
11463
11463
  {
11464
11464
  "kind": "javascript-module",
11465
- "path": "components/dropdown/src/index.js",
11465
+ "path": "components/form/src/index.js",
11466
11466
  "declarations": [],
11467
11467
  "exports": [
11468
11468
  {
11469
11469
  "kind": "js",
11470
- "name": "AuroDropdown",
11470
+ "name": "AuroForm",
11471
11471
  "declaration": {
11472
- "name": "AuroDropdown",
11473
- "module": "components/dropdown/src/index.js"
11472
+ "name": "AuroForm",
11473
+ "module": "components/form/src/index.js"
11474
11474
  }
11475
11475
  }
11476
11476
  ]
11477
11477
  },
11478
11478
  {
11479
11479
  "kind": "javascript-module",
11480
- "path": "components/dropdown/src/registered.js",
11480
+ "path": "components/form/src/registered.js",
11481
11481
  "declarations": [],
11482
11482
  "exports": []
11483
11483
  },