@aquera/nile-elements 1.8.0 → 1.8.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 (80) hide show
  1. package/README.md +6 -0
  2. package/dist/index-6faafdf4.cjs.js +2 -0
  3. package/dist/index-6faafdf4.cjs.js.map +1 -0
  4. package/dist/index-9931b440.esm.js +1 -0
  5. package/dist/index.cjs.js +1 -1
  6. package/dist/index.esm.js +1 -1
  7. package/dist/index.js +375 -226
  8. package/dist/nile-combobox/index.cjs.js +1 -1
  9. package/dist/nile-combobox/index.esm.js +1 -1
  10. package/dist/nile-combobox/nile-combobox.cjs.js +1 -1
  11. package/dist/nile-combobox/nile-combobox.esm.js +1 -1
  12. package/dist/nile-context-menu/nile-context-menu.cjs.js +1 -1
  13. package/dist/nile-context-menu/nile-context-menu.cjs.js.map +1 -1
  14. package/dist/nile-context-menu/nile-context-menu.esm.js +2 -2
  15. package/dist/nile-context-menu-item/nile-context-menu-item.cjs.js +1 -1
  16. package/dist/nile-context-menu-item/nile-context-menu-item.cjs.js.map +1 -1
  17. package/dist/nile-context-menu-item/nile-context-menu-item.esm.js +3 -3
  18. package/dist/nile-context-submenu/nile-context-submenu.cjs.js +1 -1
  19. package/dist/nile-context-submenu/nile-context-submenu.cjs.js.map +1 -1
  20. package/dist/nile-context-submenu/nile-context-submenu.esm.js +2 -2
  21. package/dist/nile-detail/index.cjs.js +1 -1
  22. package/dist/nile-detail/index.esm.js +1 -1
  23. package/dist/nile-detail/nile-detail.cjs.js +1 -1
  24. package/dist/nile-detail/nile-detail.esm.js +1 -1
  25. package/dist/nile-floating-panel/nile-floating-panel.cjs.js +1 -1
  26. package/dist/nile-floating-panel/nile-floating-panel.cjs.js.map +1 -1
  27. package/dist/nile-floating-panel/nile-floating-panel.esm.js +1 -1
  28. package/dist/nile-slider/nile-slider.cjs.js +1 -1
  29. package/dist/nile-slider/nile-slider.cjs.js.map +1 -1
  30. package/dist/nile-slider/nile-slider.css.cjs.js +1 -1
  31. package/dist/nile-slider/nile-slider.css.cjs.js.map +1 -1
  32. package/dist/nile-slider/nile-slider.css.esm.js +162 -41
  33. package/dist/nile-slider/nile-slider.esm.js +5 -3
  34. package/dist/nile-slider/nile-slider.template.cjs.js +1 -1
  35. package/dist/nile-slider/nile-slider.template.cjs.js.map +1 -1
  36. package/dist/nile-slider/nile-slider.template.esm.js +49 -23
  37. package/dist/nile-slider/utils/nile-slider.utils.cjs.js +1 -1
  38. package/dist/nile-slider/utils/nile-slider.utils.cjs.js.map +1 -1
  39. package/dist/nile-slider/utils/nile-slider.utils.esm.js +1 -1
  40. package/dist/src/nile-context-menu/nile-context-menu.d.ts +10 -1
  41. package/dist/src/nile-context-menu/nile-context-menu.js +85 -5
  42. package/dist/src/nile-context-menu/nile-context-menu.js.map +1 -1
  43. package/dist/src/nile-context-menu-item/nile-context-menu-item.d.ts +1 -0
  44. package/dist/src/nile-context-menu-item/nile-context-menu-item.js +5 -1
  45. package/dist/src/nile-context-menu-item/nile-context-menu-item.js.map +1 -1
  46. package/dist/src/nile-context-submenu/nile-context-submenu.d.ts +9 -0
  47. package/dist/src/nile-context-submenu/nile-context-submenu.js +100 -16
  48. package/dist/src/nile-context-submenu/nile-context-submenu.js.map +1 -1
  49. package/dist/src/nile-floating-panel/nile-floating-panel.d.ts +2 -0
  50. package/dist/src/nile-floating-panel/nile-floating-panel.js +4 -0
  51. package/dist/src/nile-floating-panel/nile-floating-panel.js.map +1 -1
  52. package/dist/src/nile-slider/nile-slider.css.js +160 -39
  53. package/dist/src/nile-slider/nile-slider.css.js.map +1 -1
  54. package/dist/src/nile-slider/nile-slider.d.ts +5 -1
  55. package/dist/src/nile-slider/nile-slider.js +23 -1
  56. package/dist/src/nile-slider/nile-slider.js.map +1 -1
  57. package/dist/src/nile-slider/nile-slider.template.d.ts +2 -0
  58. package/dist/src/nile-slider/nile-slider.template.js +38 -1
  59. package/dist/src/nile-slider/nile-slider.template.js.map +1 -1
  60. package/dist/src/nile-slider/types/nile-slider.types.d.ts +1 -0
  61. package/dist/src/nile-slider/types/nile-slider.types.js.map +1 -1
  62. package/dist/src/nile-slider/utils/nile-slider.utils.js +4 -0
  63. package/dist/src/nile-slider/utils/nile-slider.utils.js.map +1 -1
  64. package/dist/src/version.js +1 -1
  65. package/dist/src/version.js.map +1 -1
  66. package/dist/tsconfig.tsbuildinfo +1 -1
  67. package/package.json +1 -1
  68. package/src/nile-context-menu/nile-context-menu.ts +86 -8
  69. package/src/nile-context-menu-item/nile-context-menu-item.ts +3 -1
  70. package/src/nile-context-submenu/nile-context-submenu.ts +97 -12
  71. package/src/nile-floating-panel/nile-floating-panel.ts +5 -0
  72. package/src/nile-slider/nile-slider.css.ts +160 -39
  73. package/src/nile-slider/nile-slider.template.ts +45 -2
  74. package/src/nile-slider/nile-slider.ts +11 -3
  75. package/src/nile-slider/types/nile-slider.types.ts +2 -0
  76. package/src/nile-slider/utils/nile-slider.utils.ts +2 -0
  77. package/vscode-html-custom-data.json +51 -12
  78. package/dist/index-644974d4.esm.js +0 -1
  79. package/dist/index-dd2af8ec.cjs.js +0 -2
  80. package/dist/index-dd2af8ec.cjs.js.map +0 -1
@@ -1712,7 +1712,7 @@
1712
1712
  },
1713
1713
  {
1714
1714
  "name": "nile-context-menu-item",
1715
- "description": "Nile context-menu item. A clickable entry inside `nile-context-menu`.\n\nSlots:\n\n * ` ` {} - Default slot for the visible label.\n\n * `icon` {} - Optional leading icon (e.g. a `<nile-glyph slot=\"icon\">`).\n\nAttributes:\n\n * `value` {`string`} - \n\n * `disabled` {`boolean`} - \n\nProperties:\n\n * `value` {`string`} - \n\n * `disabled` {`boolean`} - \n\n * `onSelect` - \n\n * `_hasSubmenu` {`boolean`} - \n\n * `_hasIcon` {`boolean`} - \n\n * `_submenuExpanded` {`boolean`} - \n\n * `override` - \n\n * `hasSubmenu` {`boolean`} - \n\n * `_onSlotChange` - \n\n * `_onIconSlotChange` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1715
+ "description": "Nile context-menu item. A clickable entry inside `nile-context-menu`.\n\nSlots:\n\n * ` ` {} - Default slot for the visible label.\n\n * `icon` {} - Optional leading icon (e.g. a `<nile-glyph slot=\"icon\">`).\n\nAttributes:\n\n * `value` {`string`} - \n\n * `disabled` {`boolean`} - \n\n * `open` {`boolean`} - \n\nProperties:\n\n * `value` {`string`} - \n\n * `disabled` {`boolean`} - \n\n * `open` {`boolean`} - \n\n * `onSelect` - \n\n * `_hasSubmenu` {`boolean`} - \n\n * `_hasIcon` {`boolean`} - \n\n * `_submenuExpanded` {`boolean`} - \n\n * `override` - \n\n * `hasSubmenu` {`boolean`} - \n\n * `_onSlotChange` - \n\n * `_onIconSlotChange` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1716
1716
  "attributes": [
1717
1717
  {
1718
1718
  "name": "value",
@@ -1722,12 +1722,17 @@
1722
1722
  "name": "disabled",
1723
1723
  "description": "`disabled` {`boolean`} - \n\nProperty: disabled\n\nDefault: false",
1724
1724
  "valueSet": "v"
1725
+ },
1726
+ {
1727
+ "name": "open",
1728
+ "description": "`open` {`boolean`} - \n\nProperty: open\n\nDefault: false",
1729
+ "valueSet": "v"
1725
1730
  }
1726
1731
  ]
1727
1732
  },
1728
1733
  {
1729
1734
  "name": "nile-context-menu",
1730
- "description": "Nile context-menu component.\n\nEvents:\n\n * `nile` {} - change Fired on menu lifecycle and selection. `detail.type` is one of\n`'open'`, `'click'`, or `'close'`; remaining fields depend on the type.\n\nSlots:\n\n * ` ` {} - Default menu content.\n\nAttributes:\n\n * `for` {`string`} - \n\n * `trigger` {`NileContextMenuTrigger`} - \n\n * `skipOn` {`string`} - \n\n * `zIndex` {`number`} - \n\nProperties:\n\n * `for` {`string`} - \n\n * `trigger` {`NileContextMenuTrigger`} - \n\n * `skipOn` {`string`} - \n\n * `zIndex` {`number`} - \n\n * `items` {`NileContextMenuGroupData[]`} - \n\n * `_isDataMode` {`boolean`} - \n\n * `_floatingPanel` {`HTMLElement | undefined`} - \n\n * `_items` {`NileContextMenuItem[]`} - \n\n * `_open` {`boolean`} - \n\n * `_openContext` {`NileContextMenuOpenContext | null`} - \n\n * `_targetEl` {`Element | null`} - \n\n * `_previouslyFocused` {`HTMLElement | null`} - \n\n * `_openInstances` {`Set<NileContextMenu>`} - \n\n * `_detachTriggers` - \n\n * `_lightObserver` {`MutationObserver | undefined`} - \n\n * `_menuObserver` {`MutationObserver | undefined`} - \n\n * `_proxyEl` {`HTMLDivElement | undefined`} - \n\n * `_proxyId` {`string`} - \n\n * `_wasDataMode` {`boolean`} - \n\n * `targetElement` {`Element | null`} - \n\n * `_menuContainerRef` {`HTMLDivElement | null`} - \n\n * `override` - \n\n * `menuItems` {`readonly NileContextMenuItem[]`} - \n\n * `isOpen` {`boolean`} - \n\n * `_onKeydown` - \n\n * `_onScroll` - \n\n * `_onOutsidePointer` - \n\n * `_onDescendantSelect` - \n\n * `_onPanelShown` - \n\n * `_onMenuMouseOver` - \n\n * `_onMenuClick` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1735
+ "description": "Nile context-menu component.\n\nEvents:\n\n * `nile` {} - change Fired on menu lifecycle and selection. `detail.type` is one of\n`'open'`, `'click'`, or `'close'`; remaining fields depend on the type.\n\nSlots:\n\n * ` ` {} - Default menu content.\n\nAttributes:\n\n * `for` {`string`} - \n\n * `trigger` {`NileContextMenuTrigger`} - \n\n * `skipOn` {`string`} - \n\n * `zIndex` {`number`} - \n\n * `open` {`boolean`} - \n\nProperties:\n\n * `for` {`string`} - \n\n * `trigger` {`NileContextMenuTrigger`} - \n\n * `skipOn` {`string`} - \n\n * `zIndex` {`number`} - \n\n * `open` {`boolean`} - \n\n * `items` {`NileContextMenuGroupData[]`} - \n\n * `_isDataMode` {`boolean`} - \n\n * `_floatingPanel` {`HTMLElement | undefined`} - \n\n * `_items` {`NileContextMenuItem[]`} - \n\n * `_open` {`boolean`} - \n\n * `_pinned` {`boolean`} - \n\n * `_openContext` {`NileContextMenuOpenContext | null`} - \n\n * `_targetEl` {`Element | null`} - \n\n * `_previouslyFocused` {`HTMLElement | null`} - \n\n * `_openInstances` {`Set<NileContextMenu>`} - \n\n * `_detachTriggers` - \n\n * `_lightObserver` {`MutationObserver | undefined`} - \n\n * `_menuObserver` {`MutationObserver | undefined`} - \n\n * `_proxyEl` {`HTMLDivElement | undefined`} - \n\n * `_proxyId` {`string`} - \n\n * `_wasDataMode` {`boolean`} - \n\n * `_onPinnedReposition` - Re-anchor a pinned menu to its target after layout changes.\n\n * `targetElement` {`Element | null`} - \n\n * `_menuContainerRef` {`HTMLDivElement | null`} - \n\n * `override` - \n\n * `menuItems` {`readonly NileContextMenuItem[]`} - \n\n * `isOpen` {`boolean`} - \n\n * `_onKeydown` - \n\n * `_onScroll` - \n\n * `_onOutsidePointer` - \n\n * `_onDescendantSelect` - \n\n * `_onPanelShown` - \n\n * `_onMenuMouseOver` - \n\n * `_onMenuClick` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1731
1736
  "attributes": [
1732
1737
  {
1733
1738
  "name": "for",
@@ -1762,6 +1767,11 @@
1762
1767
  "name": "zIndex",
1763
1768
  "description": "`zIndex` {`number`} - \n\nProperty: zIndex\n\nDefault: 9999"
1764
1769
  },
1770
+ {
1771
+ "name": "open",
1772
+ "description": "`open` {`boolean`} - \n\nProperty: open\n\nDefault: false",
1773
+ "valueSet": "v"
1774
+ },
1765
1775
  {
1766
1776
  "name": "onnile",
1767
1777
  "description": "`nile` {} - change Fired on menu lifecycle and selection. `detail.type` is one of\n`'open'`, `'click'`, or `'close'`; remaining fields depend on the type."
@@ -1770,7 +1780,7 @@
1770
1780
  },
1771
1781
  {
1772
1782
  "name": "nile-context-submenu",
1773
- "description": "Nested submenu inside a `nile-context-menu-item`.\n\nAttributes:\n\n * `zIndex` {`number`} - \n\nProperties:\n\n * `zIndex` {`number`} - \n\n * `_open` {`boolean`} - \n\n * `openStack` {`NileContextSubmenu[]`} - \n\n * `_parentItem` - \n\n * `_proxyId` {`string`} - \n\n * `_proxyEl` {`HTMLDivElement | undefined`} - \n\n * `_floatingPanelEl` - \n\n * `_menuContainerRef` {`HTMLDivElement | null`} - \n\n * `_openTimer` {`number | undefined`} - \n\n * `_closeTimer` {`number | undefined`} - \n\n * `_setupDone` {`boolean`} - \n\n * `override` - \n\n * `_onParentEnter` - \n\n * `_onParentLeave` - \n\n * `_onParentClick` - \n\n * `_onPanelEnter` - \n\n * `_onPanelLeave` - \n\n * `isOpen` {`boolean`} - \n\n * `parentItem` - \n\n * `_onMenuMouseOver` - \n\n * `_onNestedSelect` - \n\n * `_onMenuClick` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1783
+ "description": "Nested submenu inside a `nile-context-menu-item`.\n\nAttributes:\n\n * `zIndex` {`number`} - \n\nProperties:\n\n * `zIndex` {`number`} - \n\n * `_open` {`boolean`} - \n\n * `openStack` {`NileContextSubmenu[]`} - \n\n * `_parentItem` - \n\n * `_proxyId` {`string`} - \n\n * `_proxyEl` {`HTMLDivElement | undefined`} - \n\n * `_floatingPanelEl` - \n\n * `_menuContainerRef` {`HTMLDivElement | null`} - \n\n * `_openTimer` {`number | undefined`} - \n\n * `_closeTimer` {`number | undefined`} - \n\n * `_setupDone` {`boolean`} - \n\n * `_parentObserver` {`MutationObserver | undefined`} - \n\n * `_repositionQueued` {`boolean`} - \n\n * `_pinnedOpen` {`boolean`} - \n\n * `override` - \n\n * `_onParentEnter` - \n\n * `_onParentLeave` - \n\n * `_onParentClick` - \n\n * `_onPanelEnter` - \n\n * `_onReposition` - \n\n * `_onPanelLeave` - \n\n * `isOpen` {`boolean`} - \n\n * `parentItem` - \n\n * `_onMenuMouseOver` - \n\n * `_onNestedSelect` - \n\n * `_onMenuClick` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
1774
1784
  "attributes": [
1775
1785
  {
1776
1786
  "name": "zIndex",
@@ -3635,7 +3645,7 @@
3635
3645
  },
3636
3646
  {
3637
3647
  "name": "nile-input",
3638
- "description": "Nile icon component.\n\nAttributes:\n\n * `title` {`string`} - \n\n * `type` {`\"number\" | \"text\" | \"time\" | \"date\" | \"datetime-local\" | \"email\" | \"password\" | \"search\" | \"tel\" | \"url\"`} - The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\nto `text`.\n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `size` {`\"small\" | \"medium\" | \"large\"`} - The input's size.\n\n * `filled` {`boolean`} - Draws a filled input.\n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `destructive` {`boolean`} - Sets the input to a Destructive state, changing its visual appearance.\n\n * `pill` {`boolean`} - Draws a pill-style input with rounded edges.\n\n * `label` {`string`} - The input's label. If you need to display HTML, use the `label` slot instead.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `clearable` {`boolean`} - Adds a clear button when the input is not empty.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `readonly` {`boolean`} - Makes the input readonly.\n\n * `password-toggle` {`boolean`} - Adds a button to toggle the password's visibility. Only applies to password types.\n\n * `password-visible` {`boolean`} - Determines whether or not the password is currently visible. Only applies to password input types.\n\n * `no-spin-buttons` {`boolean`} - Hides the browser's built-in increment/decrement spin buttons for number inputs.\n\n * `autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`\"off\" | \"on\"`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the input.\n\n * `canSavePassword` {`boolean`} - \n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `noOutline` - \n\n * `noPadding` - \n\n * `name` {`string`} - The name of the input, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the input, submitted as a name/value pair with form data.\n\n * `disabled` {`boolean`} - Disables the input.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string`} - A regular expression pattern to validate input against.\n\n * `min` {`string | number`} - The input's minimum value. Only applies to date and number input types.\n\n * `max` {`string | number`} - The input's maximum value. Only applies to date and number input types.\n\n * `step` {`number | \"any\"`} - Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\nimplied, allowing any numeric value. Only applies to date and number input types.\n\n * `required` {`boolean`} - Makes the input a required field.\n\n * `minlength` {`number`} - The minimum length of input that will be considered valid.\n\n * `maxlength` {`number`} - The maximum length of input that will be considered valid.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `hasSlotController` - \n\n * `input` {`HTMLInputElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `title` {`string`} - \n\n * `type` {`\"number\" | \"text\" | \"time\" | \"date\" | \"datetime-local\" | \"email\" | \"password\" | \"search\" | \"tel\" | \"url\"`} - The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\nto `text`.\n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `size` {`\"small\" | \"medium\" | \"large\"`} - The input's size.\n\n * `filled` {`boolean`} - Draws a filled input.\n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `destructive` {`boolean`} - Sets the input to a Destructive state, changing its visual appearance.\n\n * `pill` {`boolean`} - Draws a pill-style input with rounded edges.\n\n * `label` {`string`} - The input's label. If you need to display HTML, use the `label` slot instead.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `clearable` {`boolean`} - Adds a clear button when the input is not empty.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `readonly` {`boolean`} - Makes the input readonly.\n\n * `passwordToggle` {`boolean`} - Adds a button to toggle the password's visibility. Only applies to password types.\n\n * `passwordVisible` {`boolean`} - Determines whether or not the password is currently visible. Only applies to password input types.\n\n * `noSpinButtons` {`boolean`} - Hides the browser's built-in increment/decrement spin buttons for number inputs.\n\n * `autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`\"off\" | \"on\"`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the input.\n\n * `canSavePassword` {`boolean`} - \n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `hasPrintableCharacters` {`boolean`} - \n\n * `markedValue` {`string`} - \n\n * `noOutline` - \n\n * `noPadding` - \n\n * `valueAsDate` {`Date | null`} - Gets or sets the current value as a `Date` object. Returns `null` if the value can't be converted.\n\n * `valueAsNumber` {`number`} - Gets or sets the current value as a number. Returns `NaN` if the value can't be converted.\n\n * `name` {`string`} - The name of the input, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the input, submitted as a name/value pair with form data.\n\n * `disabled` {`boolean`} - Disables the input.\n\n * `defaultValue` {`string`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `defaultChecked` {`boolean | undefined`} - \n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string`} - A regular expression pattern to validate input against.\n\n * `min` {`string | number`} - The input's minimum value. Only applies to date and number input types.\n\n * `max` {`string | number`} - The input's maximum value. Only applies to date and number input types.\n\n * `step` {`number | \"any\"`} - Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\nimplied, allowing any numeric value. Only applies to date and number input types.\n\n * `required` {`boolean`} - Makes the input a required field.\n\n * `minlength` {`number`} - The minimum length of input that will be considered valid.\n\n * `maxlength` {`number`} - The maximum length of input that will be considered valid.\n\n * `validity` {`ValidityState`} - Gets the validity state object\n\n * `validationMessage` {`string`} - Gets the validation message\n\n * `checkValidity` - \n\n * `getForm` - \n\n * `reportValidity` - \n\n * `setCustomValidity` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
3648
+ "description": "Nile icon component.\n\nAttributes:\n\n * `title` {`string`} - \n\n * `type` {`\"number\" | \"text\" | \"time\" | \"date\" | \"datetime-local\" | \"email\" | \"password\" | \"search\" | \"tel\" | \"url\"`} - The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\nto `text`.\n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `size` {`\"small\" | \"medium\" | \"large\"`} - The input's size.\n\n * `filled` {`boolean`} - Draws a filled input.\n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `destructive` {`boolean`} - Sets the input to a Destructive state, changing its visual appearance.\n\n * `pill` {`boolean`} - Draws a pill-style input with rounded edges.\n\n * `label` {`string`} - The input's label. If you need to display HTML, use the `label` slot instead.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `clearable` {`boolean`} - Adds a clear button when the input is not empty.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `readonly` {`boolean`} - Makes the input readonly.\n\n * `password-toggle` {`boolean`} - Adds a button to toggle the password's visibility. Only applies to password types.\n\n * `password-visible` {`boolean`} - Determines whether or not the password is currently visible. Only applies to password input types.\n\n * `no-spin-buttons` {`boolean`} - Hides the browser's built-in increment/decrement spin buttons for number inputs.\n\n * `autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`\"off\" | \"on\"`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the input.\n\n * `canSavePassword` {`boolean`} - \n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `noOutline` - \n\n * `noPadding` - \n\n * `name` {`string`} - The name of the input, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the input, submitted as a name/value pair with form data.\n\n * `disabled` {`boolean`} - Disables the input.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string`} - A regular expression pattern to validate input against.\n\n * `min` {`string | number`} - The input's minimum value. Only applies to date and number input types.\n\n * `max` {`string | number`} - The input's maximum value. Only applies to date and number input types.\n\n * `step` {`number | \"any\"`} - Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\nimplied, allowing any numeric value. Only applies to date and number input types.\n\n * `required` {`boolean`} - Makes the input a required field.\n\n * `minlength` {`number`} - The minimum length of input that will be considered valid.\n\n * `maxlength` {`number`} - The maximum length of input that will be considered valid.\n\nProperties:\n\n * `styles` - \n\n * `formControlController` - \n\n * `hasSlotController` - \n\n * `input` {`HTMLInputElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `title` {`string`} - \n\n * `type` {`\"number\" | \"text\" | \"time\" | \"date\" | \"datetime-local\" | \"email\" | \"password\" | \"search\" | \"tel\" | \"url\"`} - The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\nto `text`.\n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `size` {`\"small\" | \"medium\" | \"large\"`} - The input's size.\n\n * `filled` {`boolean`} - Draws a filled input.\n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `destructive` {`boolean`} - Sets the input to a Destructive state, changing its visual appearance.\n\n * `pill` {`boolean`} - Draws a pill-style input with rounded edges.\n\n * `label` {`string`} - The input's label. If you need to display HTML, use the `label` slot instead.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `clearable` {`boolean`} - Adds a clear button when the input is not empty.\n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `readonly` {`boolean`} - Makes the input readonly.\n\n * `passwordToggle` {`boolean`} - Adds a button to toggle the password's visibility. Only applies to password types.\n\n * `passwordVisible` {`boolean`} - Determines whether or not the password is currently visible. Only applies to password input types.\n\n * `noSpinButtons` {`boolean`} - Hides the browser's built-in increment/decrement spin buttons for number inputs.\n\n * `autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`\"off\" | \"on\"`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the input.\n\n * `canSavePassword` {`boolean`} - \n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `hasPrintableCharacters` {`boolean`} - \n\n * `markedValue` {`string`} - \n\n * `noOutline` - \n\n * `noPadding` - \n\n * `valueAsDate` {`Date | null`} - Gets or sets the current value as a `Date` object. Returns `null` if the value can't be converted.\n\n * `valueAsNumber` {`number`} - Gets or sets the current value as a number. Returns `NaN` if the value can't be converted.\n\n * `name` {`string`} - The name of the input, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the input, submitted as a name/value pair with form data.\n\n * `disabled` {`boolean`} - Disables the input.\n\n * `defaultValue` {`string`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `defaultChecked` {`boolean | undefined`} - \n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `pattern` {`string`} - A regular expression pattern to validate input against.\n\n * `min` {`string | number`} - The input's minimum value. Only applies to date and number input types.\n\n * `max` {`string | number`} - The input's maximum value. Only applies to date and number input types.\n\n * `step` {`number | \"any\"`} - Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\nimplied, allowing any numeric value. Only applies to date and number input types.\n\n * `required` {`boolean`} - Makes the input a required field.\n\n * `minlength` {`number`} - The minimum length of input that will be considered valid.\n\n * `maxlength` {`number`} - The maximum length of input that will be considered valid.\n\n * `validity` {`ValidityState`} - Gets the validity state object\n\n * `validationMessage` {`string`} - Gets the validation message\n\n * `checkValidity` - \n\n * `getForm` - \n\n * `reportValidity` - \n\n * `setCustomValidity` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
3639
3649
  "attributes": [
3640
3650
  {
3641
3651
  "name": "title",
@@ -3770,13 +3780,13 @@
3770
3780
  },
3771
3781
  {
3772
3782
  "name": "autocapitalize",
3773
- "description": "`autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\nProperty: autocapitalize",
3783
+ "description": "`autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\nProperty: autocapitalize",
3774
3784
  "values": [
3775
3785
  {
3776
- "name": "off"
3786
+ "name": "none"
3777
3787
  },
3778
3788
  {
3779
- "name": "none"
3789
+ "name": "off"
3780
3790
  },
3781
3791
  {
3782
3792
  "name": "on"
@@ -6348,7 +6358,7 @@
6348
6358
  },
6349
6359
  {
6350
6360
  "name": "nile-slider",
6351
- "description": "Nile slider component.\n\nAttributes:\n\n * `minValue` {`number`} - \n\n * `value` {`number`} - \n\n * `maxValue` {`number`} - \n\n * `rangeOneValue` {`number`} - \n\n * `rangeTwoValue` {`number`} - \n\n * `showLabel` {`boolean`} - \n\n * `labelStart` {`string`} - \n\n * `labelEnd` {`string`} - \n\n * `rangeSlider` {`boolean`} - \n\n * `labelPosition` {`string`} - \n\n * `tooltipPosition` {`TooltipPosition`} - \n\nProperties:\n\n * `minValue` {`number`} - \n\n * `value` {`number`} - \n\n * `maxValue` {`number`} - \n\n * `rangeOneValue` {`number`} - \n\n * `rangeTwoValue` {`number`} - \n\n * `showLabel` {`boolean`} - \n\n * `labelStart` {`string`} - \n\n * `labelEnd` {`string`} - \n\n * `rangeSlider` {`boolean`} - \n\n * `labelPosition` {`string`} - \n\n * `tooltipPosition` {`TooltipPosition`} - \n\n * `buttonOne` {`HTMLElement`} - \n\n * `buttonTwo` {`HTMLElement`} - \n\n * `range` {`HTMLElement`} - \n\n * `completed` {`HTMLElement`} - \n\n * `activeThumb` {`\"one\" | \"two\" | null`} - \n\n * `onMouseMove` - \n\n * `onMouseUp` - \n\n * `onMouseDown` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
6361
+ "description": "Nile slider component.\n\nAttributes:\n\n * `minValue` {`number`} - \n\n * `value` {`number`} - \n\n * `maxValue` {`number`} - \n\n * `rangeOneValue` {`number`} - \n\n * `rangeTwoValue` {`number`} - \n\n * `showLabel` {`boolean`} - \n\n * `labelStart` {`string`} - \n\n * `labelEnd` {`string`} - \n\n * `rangeSlider` {`boolean`} - \n\n * `labelPosition` {`string`} - \n\n * `tooltipPosition` {`TooltipPosition`} - \n\n * `label` {`string`} - \n\n * `disabled` {`boolean`} - \n\n * `error` {`boolean`} - \n\n * `valueLabel` {`ValueLabelMode`} - \n\nProperties:\n\n * `minValue` {`number`} - \n\n * `value` {`number`} - \n\n * `maxValue` {`number`} - \n\n * `rangeOneValue` {`number`} - \n\n * `rangeTwoValue` {`number`} - \n\n * `showLabel` {`boolean`} - \n\n * `labelStart` {`string`} - \n\n * `labelEnd` {`string`} - \n\n * `rangeSlider` {`boolean`} - \n\n * `labelPosition` {`string`} - \n\n * `tooltipPosition` {`TooltipPosition`} - \n\n * `label` {`string`} - \n\n * `disabled` {`boolean`} - \n\n * `error` {`boolean`} - \n\n * `valueLabel` {`ValueLabelMode`} - \n\n * `buttonOne` {`HTMLElement`} - \n\n * `buttonTwo` {`HTMLElement`} - \n\n * `range` {`HTMLElement`} - \n\n * `completed` {`HTMLElement`} - \n\n * `activeThumb` {`\"one\" | \"two\" | null`} - \n\n * `onMouseMove` - \n\n * `onMouseUp` - \n\n * `onMouseDown` - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
6352
6362
  "attributes": [
6353
6363
  {
6354
6364
  "name": "minValue",
@@ -6433,6 +6443,35 @@
6433
6443
  "name": "left-end"
6434
6444
  }
6435
6445
  ]
6446
+ },
6447
+ {
6448
+ "name": "label",
6449
+ "description": "`label` {`string`} - \n\nProperty: label\n\nDefault: "
6450
+ },
6451
+ {
6452
+ "name": "disabled",
6453
+ "description": "`disabled` {`boolean`} - \n\nProperty: disabled\n\nDefault: false",
6454
+ "valueSet": "v"
6455
+ },
6456
+ {
6457
+ "name": "error",
6458
+ "description": "`error` {`boolean`} - \n\nProperty: error\n\nDefault: false",
6459
+ "valueSet": "v"
6460
+ },
6461
+ {
6462
+ "name": "valueLabel",
6463
+ "description": "`valueLabel` {`ValueLabelMode`} - \n\nProperty: valueLabel\n\nDefault: tooltip",
6464
+ "values": [
6465
+ {
6466
+ "name": "bottom"
6467
+ },
6468
+ {
6469
+ "name": "tooltip"
6470
+ },
6471
+ {
6472
+ "name": "none"
6473
+ }
6474
+ ]
6436
6475
  }
6437
6476
  ]
6438
6477
  },
@@ -6886,7 +6925,7 @@
6886
6925
  },
6887
6926
  {
6888
6927
  "name": "nile-textarea",
6889
- "description": "Events:\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-change` {} - Emitted when an alteration to the control's value is committed by the user.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-input` {} - Emitted when the control receives input.\n\nSlots:\n\n * `label` {} - The textarea's label. Alternatively, you can use the `label` attribute.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `title` {`string`} - \n\n * `name` {`string`} - The name of the textarea, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the textarea, submitted as a name/value pair with form data.\n\n * `size` {`string`} - The textarea's size.\n\n * `filled` {`boolean`} - Draws a filled textarea.\n\n * `label` {`string`} - The textarea's label. If you need to display HTML, use the `label` slot instead.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `rows` {`number`} - The number of rows to display by default.\n\n * `resize` {`\"none\" | \"vertical\" | \"auto\"`} - Controls how the textarea can be resized.\n\n * `disabled` {`boolean`} - Disables the textarea.\n\n * `readonly` {`boolean`} - Makes the textarea readonly.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - Makes the textarea a required field.\n\n * `minlength` {`number`} - \n\n * `maxlength` {`number`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`string`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the textarea.\n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `fullHeight` {`boolean`} - \n\n * `checkNonPrintableChar` {`boolean`} - \n\nProperties:\n\n * `styles` - \n\n * `hasSlotController` - \n\n * `resizeObserver` - \n\n * `input` {`HTMLTextAreaElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `title` {`string`} - \n\n * `name` {`string`} - The name of the textarea, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the textarea, submitted as a name/value pair with form data.\n\n * `size` {`string`} - The textarea's size.\n\n * `filled` {`boolean`} - Draws a filled textarea.\n\n * `label` {`string`} - The textarea's label. If you need to display HTML, use the `label` slot instead.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `rows` {`number`} - The number of rows to display by default.\n\n * `resize` {`\"none\" | \"vertical\" | \"auto\"`} - Controls how the textarea can be resized.\n\n * `disabled` {`boolean`} - Disables the textarea.\n\n * `readonly` {`boolean`} - Makes the textarea readonly.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - Makes the textarea a required field.\n\n * `minlength` {`number`} - \n\n * `maxlength` {`number`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`string`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the textarea.\n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `defaultValue` {`string`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `fullHeight` {`boolean`} - \n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `hasPrintableCharacters` {`boolean`} - \n\n * `markedValue` {`string`} - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
6928
+ "description": "Events:\n\n * `nile-blur` {} - Emitted when the control loses focus.\n\n * `nile-change` {} - Emitted when an alteration to the control's value is committed by the user.\n\n * `nile-focus` {} - Emitted when the control gains focus.\n\n * `nile-input` {} - Emitted when the control receives input.\n\nSlots:\n\n * `label` {} - The textarea's label. Alternatively, you can use the `label` attribute.\n\n * `help-text` {} - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n\nAttributes:\n\n * `title` {`string`} - \n\n * `name` {`string`} - The name of the textarea, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the textarea, submitted as a name/value pair with form data.\n\n * `size` {`string`} - The textarea's size.\n\n * `filled` {`boolean`} - Draws a filled textarea.\n\n * `label` {`string`} - The textarea's label. If you need to display HTML, use the `label` slot instead.\n\n * `help-text` {`string`} - \n\n * `error-message` {`string`} - \n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `rows` {`number`} - The number of rows to display by default.\n\n * `resize` {`\"none\" | \"vertical\" | \"auto\"`} - Controls how the textarea can be resized.\n\n * `disabled` {`boolean`} - Disables the textarea.\n\n * `readonly` {`boolean`} - Makes the textarea readonly.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - Makes the textarea a required field.\n\n * `minlength` {`number`} - \n\n * `maxlength` {`number`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`string`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the textarea.\n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `fullHeight` {`boolean`} - \n\n * `checkNonPrintableChar` {`boolean`} - \n\nProperties:\n\n * `styles` - \n\n * `hasSlotController` - \n\n * `resizeObserver` - \n\n * `input` {`HTMLTextAreaElement`} - \n\n * `hasFocus` {`boolean`} - \n\n * `title` {`string`} - \n\n * `name` {`string`} - The name of the textarea, submitted as a name/value pair with form data.\n\n * `value` {`string`} - The current value of the textarea, submitted as a name/value pair with form data.\n\n * `size` {`string`} - The textarea's size.\n\n * `filled` {`boolean`} - Draws a filled textarea.\n\n * `label` {`string`} - The textarea's label. If you need to display HTML, use the `label` slot instead.\n\n * `helpText` {`string`} - \n\n * `errorMessage` {`string`} - \n\n * `placeholder` {`string`} - Placeholder text to show as a hint when the input is empty.\n\n * `rows` {`number`} - The number of rows to display by default.\n\n * `resize` {`\"none\" | \"vertical\" | \"auto\"`} - Controls how the textarea can be resized.\n\n * `disabled` {`boolean`} - Disables the textarea.\n\n * `readonly` {`boolean`} - Makes the textarea readonly.\n\n * `form` {`string`} - By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\nto place the form control outside of a form and associate it with the form that has this `id`. The form must be in\nthe same document or shadow root for this to work.\n\n * `required` {`boolean`} - Makes the textarea a required field.\n\n * `minlength` {`number`} - \n\n * `maxlength` {`number`} - \n\n * `warning` {`boolean`} - Sets the input to a warning state, changing its visual appearance.\n\n * `error` {`boolean`} - Sets the input to an error state, changing its visual appearance.\n\n * `success` {`boolean`} - Sets the input to a success state, changing its visual appearance.\n\n * `autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\n * `autocorrect` {`string`} - Indicates whether the browser's autocorrect feature is on or off.\n\n * `autocomplete` {`string`} - Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n[this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n\n * `autofocus` {`boolean`} - Indicates that the input should receive focus on page load.\n\n * `enterkeyhint` {`\"search\" | \"enter\" | \"done\" | \"go\" | \"next\" | \"previous\" | \"send\"`} - Used to customize the label or icon of the Enter key on virtual keyboards.\n\n * `spellcheck` {`boolean`} - Enables spell checking on the textarea.\n\n * `inputmode` {`\"text\" | \"none\" | \"numeric\" | \"email\" | \"search\" | \"tel\" | \"url\" | \"decimal\"`} - Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\nkeyboard on supportive devices.\n\n * `defaultValue` {`string`} - The default value of the form control. Primarily used for resetting the form control.\n\n * `fullHeight` {`boolean`} - \n\n * `checkNonPrintableChar` {`boolean`} - \n\n * `hasPrintableCharacters` {`boolean`} - \n\n * `markedValue` {`string`} - \n\n * `BUBBLES` {`boolean`} - \n\n * `COMPOSED` {`boolean`} - \n\n * `CANCELABLE` {`boolean`} - ",
6890
6929
  "attributes": [
6891
6930
  {
6892
6931
  "name": "title",
@@ -6988,13 +7027,13 @@
6988
7027
  },
6989
7028
  {
6990
7029
  "name": "autocapitalize",
6991
- "description": "`autocapitalize` {`\"off\" | \"none\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\nProperty: autocapitalize",
7030
+ "description": "`autocapitalize` {`\"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | \"characters\"`} - Controls whether and how text input is automatically capitalized as it is entered by the user.\n\nProperty: autocapitalize",
6992
7031
  "values": [
6993
7032
  {
6994
- "name": "off"
7033
+ "name": "none"
6995
7034
  },
6996
7035
  {
6997
- "name": "none"
7036
+ "name": "off"
6998
7037
  },
6999
7038
  {
7000
7039
  "name": "on"
@@ -1 +0,0 @@
1
- function t(t,s,i){let h,n=i.initialDeps??[],e=!0;function l(){const l=t();return l.length!==n.length||l.some(((t,s)=>n[s]!==t))?(n=l,h=s(...l),!(null==i?void 0:i.onChange)||e&&i.skipInitialOnChange||i.onChange(h),e=!1,h):h}return l.updateDeps=t=>{n=t},l}function s(t,s){if(void 0===t)throw new Error("Unexpected undefined"+(s?`: ${s}`:""));return t}const i=(t,s)=>Math.abs(t-s)<1.01,h=(t,s,i)=>{let h;return function(...n){t.clearTimeout(h),h=t.setTimeout((()=>s.apply(this,n)),i)}};let n;const e=()=>{if(void 0!==n)return n;if("undefined"==typeof navigator)return n=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return n=!0;const t=navigator.maxTouchPoints;return n="MacIntel"===navigator.platform&&void 0!==t&&t>0},l=t=>{const{offsetWidth:s,offsetHeight:i}=t;return{width:s,height:i}},r=t=>t,o=t=>{const s=Math.max(t.startIndex-t.overscan,0),i=Math.min(t.endIndex+t.overscan,t.count-1)-s+1,h=new Array(i);for(let t=0;t<i;t++)h[t]=s+t;return h},u=(t,s)=>{const i=t.scrollElement;if(!i)return;const h=t.targetWindow;if(!h)return;const n=t=>{const{width:i,height:h}=t;s({width:Math.round(i),height:Math.round(h)})};if(n(l(i)),!h.ResizeObserver)return()=>{};const e=new h.ResizeObserver((s=>{const h=()=>{const t=s[0];if(null==t?void 0:t.borderBoxSize){const s=t.borderBoxSize[0];if(s)return void n({width:s.inlineSize,height:s.blockSize})}n(l(i))};t.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(h):h()}));return e.observe(i,{box:"border-box"}),()=>{e.unobserve(i)}},a={passive:!0},c="undefined"==typeof window||"onscrollend"in window,d=(t,s)=>((t,s,i)=>{const n=t.scrollElement;if(!n)return;const e=t.targetWindow;if(!e)return;const l=t.options.useScrollendEvent&&c;let r=0;const o=l?null:h(e,(()=>s(r,!1)),t.options.isScrollingResetDelay),u=t=>()=>{r=i(n),null==o||o(),s(r,t)},d=u(!0),f=u(!1);return n.addEventListener("scroll",d,a),l&&n.addEventListener("scrollend",f,a),()=>{n.removeEventListener("scroll",d),l&&n.removeEventListener("scrollend",f)}})(t,s,(s=>{const{horizontal:i,isRtl:h}=t.options;return i?s.scrollLeft*(h?-1:1):s.scrollTop})),f=(t,s,i)=>{if(null==s?void 0:s.borderBoxSize){const t=s.borderBoxSize[0];if(t){return Math.round(t[i.options.horizontal?"inlineSize":"blockSize"])}}return t[i.options.horizontal?"offsetWidth":"offsetHeight"]},v=(t,{adjustments:s=0,behavior:i},h)=>{var n,e;null==(e=null==(n=h.scrollElement)?void 0:n.scrollTo)||e.call(n,{[h.options.horizontal?"left":"top"]:t+s,behavior:i})};class b{constructor(h){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var t,s,i;return(null==(i=null==(s=null==(t=this.targetWindow)?void 0:t.performance)?void 0:s.now)?void 0:i.call(s))??Date.now()},this.observer=(()=>{let t=null;const s=()=>t||(this.targetWindow&&this.targetWindow.ResizeObserver?t=new this.targetWindow.ResizeObserver((t=>{t.forEach((t=>{const s=()=>{const s=t.target,i=this.indexFromElement(s);if(s.isConnected)this.shouldMeasureDuringScroll(i)&&this.resizeItem(i,this.options.measureElement(s,t,this));else{this.observer.unobserve(s);for(const[t,i]of this.elementsCache)if(i===s){this.elementsCache.delete(t);break}}};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(s):s()}))})):null);return{disconnect:()=>{var i;null==(i=s())||i.disconnect(),t=null},observe:t=>{var i;return null==(i=s())?void 0:i.observe(t,{box:"border-box"})},unobserve:t=>{var i;return null==(i=s())?void 0:i.unobserve(t)}}})(),this.range=null,this.setOptions=t=>{var s,i;const h={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:r,rangeExtractor:o,onChange:()=>{},measureElement:f,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate"};for(const s in t){const i=t[s];void 0!==i&&(h[s]=i)}const n=this.options;let e=null,l=null;if(void 0!==n&&n.enabled&&h.enabled&&"end"===h.anchorTo&&null!==this.scrollElement){const t=n.count,r=h.count,o=this.getMeasurements(),u=t>0?(null==(s=o[0])?void 0:s.key)??n.getItemKey(0):null,a=t>0?(null==(i=o[t-1])?void 0:i.key)??n.getItemKey(t-1):null;if(r!==t||t>0&&r>0&&(h.getItemKey(0)!==u||h.getItemKey(r-1)!==a)){const s=t>0?this.getVirtualItemForOffset(this.getScrollOffset())??o[0]:null;s&&(e=[s.key,this.getScrollOffset()-s.start]);const i=!0===h.followOnAppend?"auto":h.followOnAppend||null;i&&r>t&&this.isAtEnd(n.scrollEndThreshold)&&(0===t||h.getItemKey(r-1)!==a)&&(l=i)}}this.options=h,(e||l)&&(this.pendingScrollAnchor=[(null==e?void 0:e[0])??null,(null==e?void 0:e[1])??0,l])},this.notify=t=>{var s,i;null==(i=(s=this.options).onChange)||i.call(s,this,t)},this.maybeNotify=t((()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null])),(t=>{this.notify(t)}),{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach((t=>t())),this.unsubs=[],this.observer.disconnect(),null!=this.rafId&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var t;const s=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==s){if(this.cleanup(),!s)return void this.maybeNotify();if(this.scrollElement=s,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=(null==(t=this.scrollElement)?void 0:t.window)??null,this.elementsCache.forEach((t=>{this.observer.observe(t)})),this.unsubs.push(this.options.observeElementRect(this,(t=>{this.scrollRect=t,this.maybeNotify()}))),this.unsubs.push(this.options.observeElementOffset(this,((t,s)=>{null!==this._intendedScrollOffset&&Math.abs(t-this._intendedScrollOffset)<1.5&&(t=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0,this.scrollDirection=s?this.getScrollOffset()<t?"forward":"backward":null,this.scrollOffset=t,this.isScrolling=s,this._flushIosDeferredIfReady(),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()}))),"addEventListener"in this.scrollElement){const t=this.scrollElement,s=()=>{this._iosTouching=!0,this._iosJustTouchEnded=!1,null!==this._iosTouchEndTimerId&&null!=this.targetWindow&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},i=()=>{this._iosTouching=!1,e()&&null!=this.targetWindow&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout((()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()}),150))};t.addEventListener("touchstart",s,a),t.addEventListener("touchend",i,a),this.unsubs.push((()=>{t.removeEventListener("touchstart",s),t.removeEventListener("touchend",i),null!==this._iosTouchEndTimerId&&null!=this.targetWindow&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)}))}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const h=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,h&&this.scrollElement&&this.options.enabled){const[t,s,n]=h;if(null!==t){const{count:h,getItemKey:n}=this.options;let e=0;for(;e<h&&n(e)!==t;)e++;const l=e<h?this.getMeasurements()[e]:void 0;if(l){const t=l.start+s-this.getScrollOffset();i(t,0)||this.applyScrollAdjustment(t)}}n&&this.scrollToEnd({behavior:n})}},this._flushIosDeferredIfReady=()=>{if(0===this._iosDeferredAdjustment)return;if(this.isScrolling)return;if(this._iosTouching)return;if(this._iosJustTouchEnded)return;const t=this.getScrollOffset(),s=this.getMaxScrollOffset();if(t<0||t>s)return;const i=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(t,{adjustments:this.scrollAdjustments+=i,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??("function"==typeof this.options.initialOffset?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(t,s)=>{const i=new Map,h=new Map;for(let n=s-1;n>=0;n--){const s=t[n];if(i.has(s.lane))continue;const e=h.get(s.lane);if(null==e||s.end>e.end?h.set(s.lane,s):s.end<e.end&&i.set(s.lane,!0),i.size===this.options.lanes)break}return h.size===this.options.lanes?Array.from(h.values()).sort(((t,s)=>t.end===s.end?t.index-s.index:t.end-s.end))[0]:void 0},this.getMeasurementOptions=t((()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode]),((t,s,i,h,n,e,l)=>(void 0!==this.prevLanes&&this.prevLanes!==e&&(this.lanesChangedFlag=!0),this.prevLanes=e,this.pendingMin=null,{count:t,paddingStart:s,scrollMargin:i,getItemKey:h,enabled:n,lanes:e,laneAssignmentMode:l})),{key:!1}),this.getMeasurements=t((()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion]),(({count:t,paddingStart:s,scrollMargin:i,getItemKey:h,enabled:n,lanes:e,laneAssignmentMode:l},r)=>{const o=this.itemSizeCache;if(!n)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>t)for(const s of this.laneAssignments.keys())s>=t&&this.laneAssignments.delete(s);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),0!==this.measurementsCache.length||this.lanesSettling||(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((t=>{this.itemSizeCache.set(t.key,t.size)})));const u=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===t&&(this.lanesSettling=!1),1===e){const n=this.options.gap,e=2*t;let l,r=this._flatMeasurements;if(!r||r.length<e){const t=new Float64Array(e);r&&u>0&&t.set(r.subarray(0,2*u)),r=t,this._flatMeasurements=r}if(0===u)l=s+i;else{const t=u-1;l=r[2*t]+r[2*t+1]+n}for(let s=u;s<t;s++){const t=h(s),i=o.get(t),e="number"==typeof i?i:this.options.estimateSize(s);r[2*s]=l,r[2*s+1]=e,l+=e+n}const a=function(t,s,i){const h=new Array(t);return new Proxy(h,{get(h,n,e){if("string"==typeof n){const e=n.charCodeAt(0);if(e>=48&&e<=57){const e=+n;if(Number.isInteger(e)&&e>=0&&e<t){let t=h[e];if(!t){const n=s[2*e];t=h[e]={index:e,key:i(e),start:n,size:s[2*e+1],end:n+s[2*e+1],lane:0}}return t}}if("length"===n)return t}return Reflect.get(h,n,e)}})}(t,r,h);return this.measurementsCache=a,a}const a=this.measurementsCache.slice(0,u),c=new Array(e).fill(void 0);for(let t=0;t<u;t++){const s=a[t];s&&(c[s.lane]=t)}for(let n=u;n<t;n++){const t=h(n),e=this.laneAssignments.get(n);let r,u;const d="estimate"===l||o.has(t);if(void 0!==e&&this.options.lanes>1){r=e;const t=c[r],h=void 0!==t?a[t]:void 0;u=h?h.end+this.options.gap:s+i}else{const t=1===this.options.lanes?a[n-1]:this.getFurthestMeasurement(a,n);u=t?t.end+this.options.gap:s+i,r=t?t.lane:n%this.options.lanes,this.options.lanes>1&&d&&this.laneAssignments.set(n,r)}const f=o.get(t),v="number"==typeof f?f:this.options.estimateSize(n),b=u+v;a[n]={index:n,start:u,size:v,end:b,key:t,lane:r},c[r]=n}return this.measurementsCache=a,a}),{key:!1,debug:()=>this.options.debug}),this.calculateRange=t((()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes]),((t,s,i,h)=>this.range=t.length>0&&s>0?function({measurements:t,outerSize:s,scrollOffset:i,lanes:h,flat:n}){const e=t.length-1,l=n?t=>n[2*t]:s=>t[s].start,r=n?t=>n[2*t]+n[2*t+1]:s=>t[s].end;if(t.length<=h)return{startIndex:0,endIndex:e};let o=g(0,e,l,i),u=o;if(1===h)for(;u<e&&r(u)<i+s;)u++;else if(h>1){const n=Array(h).fill(0);for(;u<e&&n.some((t=>t<i+s));){const s=t[u];n[s.lane]=s.end,u++}const l=Array(h).fill(i+s);for(;o>=0&&l.some((t=>t>=i));){const s=t[o];l[s.lane]=s.start,o--}o=Math.max(0,o-o%h),u=Math.min(e,u+(h-1-u%h))}return{startIndex:o,endIndex:u}}({measurements:t,outerSize:s,scrollOffset:i,lanes:h,flat:1===h&&null!=this._flatMeasurements?this._flatMeasurements:null}):null),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=t((()=>{let t=null,s=null;const i=this.calculateRange();return i&&(t=i.startIndex,s=i.endIndex),this.maybeNotify.updateDeps([this.isScrolling,t,s]),[this.options.rangeExtractor,this.options.overscan,this.options.count,t,s]}),((t,s,i,h,n)=>null===h||null===n?[]:t({startIndex:h,endIndex:n,overscan:s,count:i})),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=t=>{const s=this.options.indexAttribute,i=t.getAttribute(s);return i?parseInt(i,10):(console.warn(`Missing attribute name '${s}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=t=>{var s;if(!this.scrollState||"smooth"!==this.scrollState.behavior)return!0;const i=this.scrollState.index??(null==(s=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))?void 0:s.index);if(void 0!==i&&this.range){const s=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),h=Math.max(0,i-s),n=Math.min(this.options.count-1,i+s);return t>=h&&t<=n}return!0},this.measureElement=t=>{if(!t)return void this.elementsCache.forEach(((t,s)=>{t.isConnected||(this.observer.unobserve(t),this.elementsCache.delete(s))}));const s=this.indexFromElement(t),i=this.options.getItemKey(s),h=this.elementsCache.get(i);h!==t&&(h&&this.observer.unobserve(h),this.observer.observe(t),this.elementsCache.set(i,t)),this.isScrolling&&!this.scrollState||!this.shouldMeasureDuringScroll(s)||this.resizeItem(s,this.options.measureElement(t,void 0,this))},this.resizeItem=(t,s)=>{var i,h;if(t<0||t>=this.options.count)return;let n,e,l;const r=this._flatMeasurements;if(1===this.options.lanes&&null!==r)l=this.options.getItemKey(t),e=r[2*t],n=r[2*t+1];else{const s=this.measurementsCache[t];if(!s)return;l=s.key,e=s.start,n=s.size}const o=s-(this.itemSizeCache.get(l)??n);if(0!==o){const r="end"===this.options.anchorTo&&"smooth"!==(null==(i=this.scrollState)?void 0:i.behavior)&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,u=r?this.getTotalSize():0,a="smooth"!==(null==(h=this.scrollState)?void 0:h.behavior)&&(void 0!==this.shouldAdjustScrollPositionOnItemSizeChange?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[t]??{index:t,key:l,start:e,size:n,end:e+n,lane:0},o,this):e<this.getScrollOffset()+this.scrollAdjustments&&"backward"!==this.scrollDirection);(null===this.pendingMin||t<this.pendingMin)&&(this.pendingMin=t),this.itemSizeCache.set(l,s),this.itemSizeCacheVersion++,r?this.applyScrollAdjustment(this.getTotalSize()-u):a&&this.applyScrollAdjustment(o),this.notify(!1)}},this.getVirtualItems=t((()=>[this.getVirtualIndexes(),this.getMeasurements()]),((t,s)=>{const i=[];for(let h=0,n=t.length;h<n;h++){const n=s[t[h]];i.push(n)}return i}),{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=t=>{const i=this.getMeasurements();if(0===i.length)return;const h=this._flatMeasurements,n=1===this.options.lanes&&null!=h,e=g(0,i.length-1,n?t=>h[2*t]:t=>s(i[t]).start,t);return s(i[e])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const t=this.scrollElement.document.documentElement;return this.options.horizontal?t.scrollWidth-this.scrollElement.innerWidth:t.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(t=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=t,this.getOffsetForAlignment=(t,s,i=0)=>{if(!this.scrollElement)return 0;const h=this.getSize(),n=this.getScrollOffset();"auto"===s&&(s=t>=n+h?"end":"start"),"center"===s?t+=(i-h)/2:"end"===s&&(t-=h);const e=this.getMaxScrollOffset();return Math.max(Math.min(e,t),0)},this.getOffsetForIndex=(t,s="auto")=>{t=Math.max(0,Math.min(t,this.options.count-1));const i=this.getSize(),h=this.getScrollOffset(),n=this.measurementsCache[t];if(!n)return;if("auto"===s)if(n.end>=h+i-this.options.scrollPaddingEnd)s="end";else{if(!(n.start<=h+this.options.scrollPaddingStart))return[h,s];s="start"}if("end"===s&&t===this.options.count-1)return[this.getMaxScrollOffset(),s];const e="end"===s?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(e,s,n.size),s]},this.scrollToOffset=(t,{align:s="start",behavior:i="auto"}={})=>{const h=this.getOffsetForAlignment(t,s),n=this.now();this.scrollState={index:null,align:s,behavior:i,startedAt:n,lastTargetOffset:h,stableFrames:0},this._scrollToOffset(h,{adjustments:void 0,behavior:i}),this.scheduleScrollReconcile()},this.scrollToIndex=(t,{align:s="auto",behavior:i="auto"}={})=>{t=Math.max(0,Math.min(t,this.options.count-1));const h=this.getOffsetForIndex(t,s);if(!h)return;const[n,e]=h,l=this.now();this.scrollState={index:t,align:e,behavior:i,startedAt:l,lastTargetOffset:n,stableFrames:0},this._scrollToOffset(n,{adjustments:void 0,behavior:i}),this.scheduleScrollReconcile()},this.scrollBy=(t,{behavior:s="auto"}={})=>{const i=this.getScrollOffset()+t,h=this.now();this.scrollState={index:null,align:"start",behavior:s,startedAt:h,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:t="auto"}={})=>{this.options.count>0?this.scrollToIndex(this.options.count-1,{align:"end",behavior:t}):this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:t})},this.getTotalSize=()=>{var t;const s=this.getMeasurements();let i;if(0===s.length)i=this.options.paddingStart;else if(1===this.options.lanes){const h=s.length-1,n=this._flatMeasurements;i=null!=n?n[2*h]+n[2*h+1]:(null==(t=s[h])?void 0:t.end)??0}else{const t=Array(this.options.lanes).fill(null);let h=s.length-1;for(;h>=0&&t.some((t=>null===t));){const i=s[h];null===t[i.lane]&&(t[i.lane]=i.end),h--}i=Math.max(...t.filter((t=>null!==t)))}return Math.max(i-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{const t=[];if(0===this.itemSizeCache.size)return t;const s=this.getMeasurements();for(const i of s)i&&this.itemSizeCache.has(i.key)&&t.push({index:i.index,key:i.key,start:i.start,size:i.size,end:i.end,lane:i.lane});return t},this._scrollToOffset=(t,{adjustments:s,behavior:i})=>{this._intendedScrollOffset=t+(s??0),this.options.scrollToFn(t,{behavior:i,adjustments:s},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(h)}applyScrollAdjustment(t,s){0!==t&&(e()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:s}))}scheduleScrollReconcile(){this.targetWindow?null==this.rafId&&(this.rafId=this.targetWindow.requestAnimationFrame((()=>{this.rafId=null,this.reconcileScroll()}))):this.scrollState=null}reconcileScroll(){if(!this.scrollState)return;if(!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3)return void(this.scrollState=null);const t=null!=this.scrollState.index?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,s=t?t[0]:this.scrollState.lastTargetOffset,h=s!==this.scrollState.lastTargetOffset;if(!h&&i(s,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1)return this.getScrollOffset()!==s&&this._scrollToOffset(s,{adjustments:void 0,behavior:"auto"}),void(this.scrollState=null)}else if(this.scrollState.stableFrames=0,h){const t=this.getSize()||600,i=Math.abs(s-this.getScrollOffset()),h="smooth"===this.scrollState.behavior&&i>t;this.scrollState.lastTargetOffset=s,h||(this.scrollState.behavior="auto"),this._scrollToOffset(s,{adjustments:void 0,behavior:h?"smooth":"auto"})}this.scheduleScrollReconcile()}}const g=(t,s,i,h)=>{for(;t<=s;){const n=(t+s)/2|0,e=i(n);if(e<h)t=n+1;else{if(!(e>h))return n;s=n-1}}return t>0?t-1:0};class m{constructor(t,s){this.cleanup=()=>{};const i={...s,onChange:(t,i)=>{var h;this.host.updateComplete.then((()=>this.host.requestUpdate())),null==(h=s.onChange)||h.call(s,t,i)}};this.virtualizer=new b(i),(this.host=t).addController(this)}getVirtualizer(){return this.virtualizer}hostConnected(){this.cleanup=this.virtualizer._didMount()}hostUpdated(){this.virtualizer._willUpdate()}hostDisconnected(){this.cleanup()}}class M extends m{constructor(t,s){super(t,{observeElementRect:u,observeElementOffset:d,scrollToFn:v,...s})}}export{M as V};
@@ -1,2 +0,0 @@
1
- function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register([],function(_export,_context){"use strict";var i,h,n,e,l,r,o,u,a,c,d,f,v,b,g,m,M;function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}function _slicedToArray(r,e){return _arrayWithHoles(r)||_iterableToArrayLimit(r,e)||_unsupportedIterableToArray(r,e)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1;}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r;}finally{try{if(!f&&null!=t["return"]&&(u=t["return"](),Object(u)!==u))return;}finally{if(o)throw n;}}return a;}}function _arrayWithHoles(r){if(Array.isArray(r))return r;}function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var n=0,F=function F(){};return{s:F,n:function(_n13){function n(){return _n13.apply(this,arguments);}n.toString=function(){return _n13.toString();};return n;}(function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]};}),e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function t(t,s,i){var _i$initialDeps;var h,n=(_i$initialDeps=i.initialDeps)!==null&&_i$initialDeps!==void 0?_i$initialDeps:[],e=!0;function l(){var l=t();return l.length!==n.length||l.some(function(t,s){return n[s]!==t;})?(n=l,h=s.apply(void 0,_toConsumableArray(l)),!(null==i?void 0:i.onChange)||e&&i.skipInitialOnChange||i.onChange(h),e=!1,h):h;}return l.updateDeps=function(t){n=t;},l;}function s(t,s){if(void 0===t)throw new Error("Unexpected undefined"+(s?": ".concat(s):""));return t;}return{setters:[],execute:function execute(){i=function i(t,s){return Math.abs(t-s)<1.01;},h=function h(t,s,i){var h;return function(){var _this=this;for(var _len=arguments.length,n=new Array(_len),_key=0;_key<_len;_key++){n[_key]=arguments[_key];}t.clearTimeout(h),h=t.setTimeout(function(){return s.apply(_this,n);},i);};};e=function e(){if(void 0!==n)return n;if("undefined"==typeof navigator)return n=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return n=!0;var t=navigator.maxTouchPoints;return n="MacIntel"===navigator.platform&&void 0!==t&&t>0;},l=function l(t){var s=t.offsetWidth,i=t.offsetHeight;return{width:s,height:i};},r=function r(t){return t;},o=function o(t){var s=Math.max(t.startIndex-t.overscan,0),i=Math.min(t.endIndex+t.overscan,t.count-1)-s+1,h=new Array(i);for(var _t=0;_t<i;_t++)h[_t]=s+_t;return h;},u=function u(t,s){var i=t.scrollElement;if(!i)return;var h=t.targetWindow;if(!h)return;var n=function n(t){var i=t.width,h=t.height;s({width:Math.round(i),height:Math.round(h)});};if(n(l(i)),!h.ResizeObserver)return function(){};var e=new h.ResizeObserver(function(s){var h=function h(){var t=s[0];if(null==t?void 0:t.borderBoxSize){var _s=t.borderBoxSize[0];if(_s)return void n({width:_s.inlineSize,height:_s.blockSize});}n(l(i));};t.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(h):h();});return e.observe(i,{box:"border-box"}),function(){e.unobserve(i);};},a={passive:!0},c="undefined"==typeof window||"onscrollend"in window,d=function d(t,s){return function(t,s,i){var n=t.scrollElement;if(!n)return;var e=t.targetWindow;if(!e)return;var l=t.options.useScrollendEvent&&c;var r=0;var o=l?null:h(e,function(){return s(r,!1);},t.options.isScrollingResetDelay),u=function u(t){return function(){r=i(n),null==o||o(),s(r,t);};},d=u(!0),f=u(!1);return n.addEventListener("scroll",d,a),l&&n.addEventListener("scrollend",f,a),function(){n.removeEventListener("scroll",d),l&&n.removeEventListener("scrollend",f);};}(t,s,function(s){var _t$options=t.options,i=_t$options.horizontal,h=_t$options.isRtl;return i?s.scrollLeft*(h?-1:1):s.scrollTop;});},f=function f(t,s,i){if(null==s?void 0:s.borderBoxSize){var _t2=s.borderBoxSize[0];if(_t2){return Math.round(_t2[i.options.horizontal?"inlineSize":"blockSize"]);}}return t[i.options.horizontal?"offsetWidth":"offsetHeight"];},v=function v(t,_ref,h){var _ref$adjustments=_ref.adjustments,s=_ref$adjustments===void 0?0:_ref$adjustments,i=_ref.behavior;var n,e;null==(e=null==(n=h.scrollElement)?void 0:n.scrollTo)||e.call(n,_defineProperty(_defineProperty({},h.options.horizontal?"left":"top",t+s),"behavior",i));};b=/*#__PURE__*/function(){function b(h){var _this2=this;_classCallCheck(this,b);this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map(),this.itemSizeCacheVersion=0,this.laneAssignments=new Map(),this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map(),this.now=function(){var _ref2;var t,s,i;return(_ref2=null==(i=null==(s=null==(t=_this2.targetWindow)?void 0:t.performance)?void 0:s.now)?void 0:i.call(s))!==null&&_ref2!==void 0?_ref2:Date.now();},this.observer=function(){var t=null;var s=function s(){return t||(_this2.targetWindow&&_this2.targetWindow.ResizeObserver?t=new _this2.targetWindow.ResizeObserver(function(t){t.forEach(function(t){var s=function s(){var s=t.target,i=_this2.indexFromElement(s);if(s.isConnected)_this2.shouldMeasureDuringScroll(i)&&_this2.resizeItem(i,_this2.options.measureElement(s,t,_this2));else{_this2.observer.unobserve(s);var _iterator=_createForOfIteratorHelper(_this2.elementsCache),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var _step$value=_slicedToArray(_step.value,2),_t3=_step$value[0],_i=_step$value[1];if(_i===s){_this2.elementsCache["delete"](_t3);break;}}}catch(err){_iterator.e(err);}finally{_iterator.f();}}};_this2.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(s):s();});}):null);};return{disconnect:function disconnect(){var i;null==(i=s())||i.disconnect(),t=null;},observe:function observe(t){var i;return null==(i=s())?void 0:i.observe(t,{box:"border-box"});},unobserve:function unobserve(t){var i;return null==(i=s())?void 0:i.unobserve(t);}};}(),this.range=null,this.setOptions=function(t){var _ref5,_ref6;var s,i;var h={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:r,rangeExtractor:o,onChange:function onChange(){},measureElement:f,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate"};for(var _s2 in t){var _i2=t[_s2];void 0!==_i2&&(h[_s2]=_i2);}var n=_this2.options;var e=null,l=null;if(void 0!==n&&n.enabled&&h.enabled&&"end"===h.anchorTo&&null!==_this2.scrollElement){var _ref3,_ref4;var _t4=n.count,_r=h.count,_o=_this2.getMeasurements(),_u=_t4>0?(_ref3=null==(s=_o[0])?void 0:s.key)!==null&&_ref3!==void 0?_ref3:n.getItemKey(0):null,_a=_t4>0?(_ref4=null==(i=_o[_t4-1])?void 0:i.key)!==null&&_ref4!==void 0?_ref4:n.getItemKey(_t4-1):null;if(_r!==_t4||_t4>0&&_r>0&&(h.getItemKey(0)!==_u||h.getItemKey(_r-1)!==_a)){var _this2$getVirtualItem;var _s3=_t4>0?(_this2$getVirtualItem=_this2.getVirtualItemForOffset(_this2.getScrollOffset()))!==null&&_this2$getVirtualItem!==void 0?_this2$getVirtualItem:_o[0]:null;_s3&&(e=[_s3.key,_this2.getScrollOffset()-_s3.start]);var _i3=!0===h.followOnAppend?"auto":h.followOnAppend||null;_i3&&_r>_t4&&_this2.isAtEnd(n.scrollEndThreshold)&&(0===_t4||h.getItemKey(_r-1)!==_a)&&(l=_i3);}}_this2.options=h,(e||l)&&(_this2.pendingScrollAnchor=[(_ref5=null==e?void 0:e[0])!==null&&_ref5!==void 0?_ref5:null,(_ref6=null==e?void 0:e[1])!==null&&_ref6!==void 0?_ref6:0,l]);},this.notify=function(t){var s,i;null==(i=(s=_this2.options).onChange)||i.call(s,_this2,t);},this.maybeNotify=t(function(){return _this2.calculateRange(),[_this2.isScrolling,_this2.range?_this2.range.startIndex:null,_this2.range?_this2.range.endIndex:null];},function(t){_this2.notify(t);},{key:!1,debug:function debug(){return _this2.options.debug;},initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=function(){_this2.unsubs.filter(Boolean).forEach(function(t){return t();}),_this2.unsubs=[],_this2.observer.disconnect(),null!=_this2.rafId&&_this2.targetWindow&&(_this2.targetWindow.cancelAnimationFrame(_this2.rafId),_this2.rafId=null),_this2.scrollState=null,_this2.scrollElement=null,_this2.targetWindow=null;},this._didMount=function(){return function(){_this2.cleanup();};},this._willUpdate=function(){var t;var s=_this2.options.enabled?_this2.options.getScrollElement():null;if(_this2.scrollElement!==s){var _ref7;if(_this2.cleanup(),!s)return void _this2.maybeNotify();if(_this2.scrollElement=s,_this2.scrollElement&&"ownerDocument"in _this2.scrollElement?_this2.targetWindow=_this2.scrollElement.ownerDocument.defaultView:_this2.targetWindow=(_ref7=null==(t=_this2.scrollElement)?void 0:t.window)!==null&&_ref7!==void 0?_ref7:null,_this2.elementsCache.forEach(function(t){_this2.observer.observe(t);}),_this2.unsubs.push(_this2.options.observeElementRect(_this2,function(t){_this2.scrollRect=t,_this2.maybeNotify();})),_this2.unsubs.push(_this2.options.observeElementOffset(_this2,function(t,s){null!==_this2._intendedScrollOffset&&Math.abs(t-_this2._intendedScrollOffset)<1.5&&(t=_this2._intendedScrollOffset),_this2._intendedScrollOffset=null,_this2.scrollAdjustments=0,_this2.scrollDirection=s?_this2.getScrollOffset()<t?"forward":"backward":null,_this2.scrollOffset=t,_this2.isScrolling=s,_this2._flushIosDeferredIfReady(),_this2.scrollState&&_this2.scheduleScrollReconcile(),_this2.maybeNotify();})),"addEventListener"in _this2.scrollElement){var _t5=_this2.scrollElement,_s4=function _s4(){_this2._iosTouching=!0,_this2._iosJustTouchEnded=!1,null!==_this2._iosTouchEndTimerId&&null!=_this2.targetWindow&&(_this2.targetWindow.clearTimeout(_this2._iosTouchEndTimerId),_this2._iosTouchEndTimerId=null);},_i4=function _i4(){_this2._iosTouching=!1,e()&&null!=_this2.targetWindow&&(_this2._iosJustTouchEnded=!0,_this2._iosTouchEndTimerId=_this2.targetWindow.setTimeout(function(){_this2._iosJustTouchEnded=!1,_this2._iosTouchEndTimerId=null,_this2._flushIosDeferredIfReady();},150));};_t5.addEventListener("touchstart",_s4,a),_t5.addEventListener("touchend",_i4,a),_this2.unsubs.push(function(){_t5.removeEventListener("touchstart",_s4),_t5.removeEventListener("touchend",_i4),null!==_this2._iosTouchEndTimerId&&null!=_this2.targetWindow&&(_this2.targetWindow.clearTimeout(_this2._iosTouchEndTimerId),_this2._iosTouchEndTimerId=null);});}_this2._scrollToOffset(_this2.getScrollOffset(),{adjustments:void 0,behavior:void 0});}var h=_this2.pendingScrollAnchor;if(_this2.pendingScrollAnchor=null,h&&_this2.scrollElement&&_this2.options.enabled){var _h=_slicedToArray(h,3),_t6=_h[0],_s5=_h[1],_n=_h[2];if(null!==_t6){var _this2$options=_this2.options,_h2=_this2$options.count,_n2=_this2$options.getItemKey;var _e=0;for(;_e<_h2&&_n2(_e)!==_t6;)_e++;var _l=_e<_h2?_this2.getMeasurements()[_e]:void 0;if(_l){var _t7=_l.start+_s5-_this2.getScrollOffset();i(_t7,0)||_this2.applyScrollAdjustment(_t7);}}_n&&_this2.scrollToEnd({behavior:_n});}},this._flushIosDeferredIfReady=function(){if(0===_this2._iosDeferredAdjustment)return;if(_this2.isScrolling)return;if(_this2._iosTouching)return;if(_this2._iosJustTouchEnded)return;var t=_this2.getScrollOffset(),s=_this2.getMaxScrollOffset();if(t<0||t>s)return;var i=_this2._iosDeferredAdjustment;_this2._iosDeferredAdjustment=0,_this2._scrollToOffset(t,{adjustments:_this2.scrollAdjustments+=i,behavior:void 0});},this.rafId=null,this.getSize=function(){var _this2$scrollRect;return _this2.options.enabled?(_this2.scrollRect=(_this2$scrollRect=_this2.scrollRect)!==null&&_this2$scrollRect!==void 0?_this2$scrollRect:_this2.options.initialRect,_this2.scrollRect[_this2.options.horizontal?"width":"height"]):(_this2.scrollRect=null,0);},this.getScrollOffset=function(){var _this2$scrollOffset;return _this2.options.enabled?(_this2.scrollOffset=(_this2$scrollOffset=_this2.scrollOffset)!==null&&_this2$scrollOffset!==void 0?_this2$scrollOffset:"function"==typeof _this2.options.initialOffset?_this2.options.initialOffset():_this2.options.initialOffset,_this2.scrollOffset):(_this2.scrollOffset=null,0);},this.getFurthestMeasurement=function(t,s){var i=new Map(),h=new Map();for(var _n3=s-1;_n3>=0;_n3--){var _s6=t[_n3];if(i.has(_s6.lane))continue;var _e2=h.get(_s6.lane);if(null==_e2||_s6.end>_e2.end?h.set(_s6.lane,_s6):_s6.end<_e2.end&&i.set(_s6.lane,!0),i.size===_this2.options.lanes)break;}return h.size===_this2.options.lanes?Array.from(h.values()).sort(function(t,s){return t.end===s.end?t.index-s.index:t.end-s.end;})[0]:void 0;},this.getMeasurementOptions=t(function(){return[_this2.options.count,_this2.options.paddingStart,_this2.options.scrollMargin,_this2.options.getItemKey,_this2.options.enabled,_this2.options.lanes,_this2.options.laneAssignmentMode];},function(t,s,i,h,n,e,l){return void 0!==_this2.prevLanes&&_this2.prevLanes!==e&&(_this2.lanesChangedFlag=!0),_this2.prevLanes=e,_this2.pendingMin=null,{count:t,paddingStart:s,scrollMargin:i,getItemKey:h,enabled:n,lanes:e,laneAssignmentMode:l};},{key:!1}),this.getMeasurements=t(function(){return[_this2.getMeasurementOptions(),_this2.itemSizeCacheVersion];},function(_ref8,r){var _this2$pendingMin;var t=_ref8.count,s=_ref8.paddingStart,i=_ref8.scrollMargin,h=_ref8.getItemKey,n=_ref8.enabled,e=_ref8.lanes,l=_ref8.laneAssignmentMode;var o=_this2.itemSizeCache;if(!n)return _this2.measurementsCache=[],_this2.itemSizeCache.clear(),_this2.laneAssignments.clear(),[];if(_this2.laneAssignments.size>t){var _iterator2=_createForOfIteratorHelper(_this2.laneAssignments.keys()),_step2;try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var _s7=_step2.value;_s7>=t&&_this2.laneAssignments["delete"](_s7);}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}_this2.lanesChangedFlag&&(_this2.lanesChangedFlag=!1,_this2.lanesSettling=!0,_this2.measurementsCache=[],_this2.itemSizeCache.clear(),_this2.laneAssignments.clear(),_this2.pendingMin=null),0!==_this2.measurementsCache.length||_this2.lanesSettling||(_this2.measurementsCache=_this2.options.initialMeasurementsCache,_this2.measurementsCache.forEach(function(t){_this2.itemSizeCache.set(t.key,t.size);}));var u=_this2.lanesSettling?0:(_this2$pendingMin=_this2.pendingMin)!==null&&_this2$pendingMin!==void 0?_this2$pendingMin:0;if(_this2.pendingMin=null,_this2.lanesSettling&&_this2.measurementsCache.length===t&&(_this2.lanesSettling=!1),1===e){var _n4=_this2.options.gap,_e3=2*t;var _l2,_r2=_this2._flatMeasurements;if(!_r2||_r2.length<_e3){var _t8=new Float64Array(_e3);_r2&&u>0&&_t8.set(_r2.subarray(0,2*u)),_r2=_t8,_this2._flatMeasurements=_r2;}if(0===u)_l2=s+i;else{var _t9=u-1;_l2=_r2[2*_t9]+_r2[2*_t9+1]+_n4;}for(var _s8=u;_s8<t;_s8++){var _t10=h(_s8),_i5=o.get(_t10),_e4="number"==typeof _i5?_i5:_this2.options.estimateSize(_s8);_r2[2*_s8]=_l2,_r2[2*_s8+1]=_e4,_l2+=_e4+_n4;}var _a2=function(t,s,i){var h=new Array(t);return new Proxy(h,{get:function get(h,n,e){if("string"==typeof n){var _e5=n.charCodeAt(0);if(_e5>=48&&_e5<=57){var _e6=+n;if(Number.isInteger(_e6)&&_e6>=0&&_e6<t){var _t11=h[_e6];if(!_t11){var _n5=s[2*_e6];_t11=h[_e6]={index:_e6,key:i(_e6),start:_n5,size:s[2*_e6+1],end:_n5+s[2*_e6+1],lane:0};}return _t11;}}if("length"===n)return t;}return Reflect.get(h,n,e);}});}(t,_r2,h);return _this2.measurementsCache=_a2,_a2;}var a=_this2.measurementsCache.slice(0,u),c=new Array(e).fill(void 0);for(var _t12=0;_t12<u;_t12++){var _s9=a[_t12];_s9&&(c[_s9.lane]=_t12);}for(var _n6=u;_n6<t;_n6++){var _t13=h(_n6),_e7=_this2.laneAssignments.get(_n6);var _r3=void 0,_u2=void 0;var _d="estimate"===l||o.has(_t13);if(void 0!==_e7&&_this2.options.lanes>1){_r3=_e7;var _t14=c[_r3],_h3=void 0!==_t14?a[_t14]:void 0;_u2=_h3?_h3.end+_this2.options.gap:s+i;}else{var _t15=1===_this2.options.lanes?a[_n6-1]:_this2.getFurthestMeasurement(a,_n6);_u2=_t15?_t15.end+_this2.options.gap:s+i,_r3=_t15?_t15.lane:_n6%_this2.options.lanes,_this2.options.lanes>1&&_d&&_this2.laneAssignments.set(_n6,_r3);}var _f=o.get(_t13),_v="number"==typeof _f?_f:_this2.options.estimateSize(_n6),_b=_u2+_v;a[_n6]={index:_n6,start:_u2,size:_v,end:_b,key:_t13,lane:_r3},c[_r3]=_n6;}return _this2.measurementsCache=a,a;},{key:!1,debug:function debug(){return _this2.options.debug;}}),this.calculateRange=t(function(){return[_this2.getMeasurements(),_this2.getSize(),_this2.getScrollOffset(),_this2.options.lanes];},function(t,s,i,h){return _this2.range=t.length>0&&s>0?function(_ref9){var t=_ref9.measurements,s=_ref9.outerSize,i=_ref9.scrollOffset,h=_ref9.lanes,n=_ref9.flat;var e=t.length-1,l=n?function(t){return n[2*t];}:function(s){return t[s].start;},r=n?function(t){return n[2*t]+n[2*t+1];}:function(s){return t[s].end;};if(t.length<=h)return{startIndex:0,endIndex:e};var o=g(0,e,l,i),u=o;if(1===h)for(;u<e&&r(u)<i+s;)u++;else if(h>1){var _n7=Array(h).fill(0);for(;u<e&&_n7.some(function(t){return t<i+s;});){var _s10=t[u];_n7[_s10.lane]=_s10.end,u++;}var _l3=Array(h).fill(i+s);for(;o>=0&&_l3.some(function(t){return t>=i;});){var _s11=t[o];_l3[_s11.lane]=_s11.start,o--;}o=Math.max(0,o-o%h),u=Math.min(e,u+(h-1-u%h));}return{startIndex:o,endIndex:u};}({measurements:t,outerSize:s,scrollOffset:i,lanes:h,flat:1===h&&null!=_this2._flatMeasurements?_this2._flatMeasurements:null}):null;},{key:!1,debug:function debug(){return _this2.options.debug;}}),this.getVirtualIndexes=t(function(){var t=null,s=null;var i=_this2.calculateRange();return i&&(t=i.startIndex,s=i.endIndex),_this2.maybeNotify.updateDeps([_this2.isScrolling,t,s]),[_this2.options.rangeExtractor,_this2.options.overscan,_this2.options.count,t,s];},function(t,s,i,h,n){return null===h||null===n?[]:t({startIndex:h,endIndex:n,overscan:s,count:i});},{key:!1,debug:function debug(){return _this2.options.debug;}}),this.indexFromElement=function(t){var s=_this2.options.indexAttribute,i=t.getAttribute(s);return i?parseInt(i,10):(console.warn("Missing attribute name '".concat(s,"={index}' on measured element.")),-1);},this.shouldMeasureDuringScroll=function(t){var _this2$scrollState$in;var s;if(!_this2.scrollState||"smooth"!==_this2.scrollState.behavior)return!0;var i=(_this2$scrollState$in=_this2.scrollState.index)!==null&&_this2$scrollState$in!==void 0?_this2$scrollState$in:null==(s=_this2.getVirtualItemForOffset(_this2.scrollState.lastTargetOffset))?void 0:s.index;if(void 0!==i&&_this2.range){var _s12=Math.max(_this2.options.overscan,Math.ceil((_this2.range.endIndex-_this2.range.startIndex)/2)),_h4=Math.max(0,i-_s12),_n8=Math.min(_this2.options.count-1,i+_s12);return t>=_h4&&t<=_n8;}return!0;},this.measureElement=function(t){if(!t)return void _this2.elementsCache.forEach(function(t,s){t.isConnected||(_this2.observer.unobserve(t),_this2.elementsCache["delete"](s));});var s=_this2.indexFromElement(t),i=_this2.options.getItemKey(s),h=_this2.elementsCache.get(i);h!==t&&(h&&_this2.observer.unobserve(h),_this2.observer.observe(t),_this2.elementsCache.set(i,t)),_this2.isScrolling&&!_this2.scrollState||!_this2.shouldMeasureDuringScroll(s)||_this2.resizeItem(s,_this2.options.measureElement(t,void 0,_this2));},this.resizeItem=function(t,s){var _this2$itemSizeCache$;var i,h;if(t<0||t>=_this2.options.count)return;var n,e,l;var r=_this2._flatMeasurements;if(1===_this2.options.lanes&&null!==r)l=_this2.options.getItemKey(t),e=r[2*t],n=r[2*t+1];else{var _s13=_this2.measurementsCache[t];if(!_s13)return;l=_s13.key,e=_s13.start,n=_s13.size;}var o=s-((_this2$itemSizeCache$=_this2.itemSizeCache.get(l))!==null&&_this2$itemSizeCache$!==void 0?_this2$itemSizeCache$:n);if(0!==o){var _this2$measurementsCa;var _r4="end"===_this2.options.anchorTo&&"smooth"!==(null==(i=_this2.scrollState)?void 0:i.behavior)&&_this2.getVirtualDistanceFromEnd()<=_this2.options.scrollEndThreshold,_u3=_r4?_this2.getTotalSize():0,_a3="smooth"!==(null==(h=_this2.scrollState)?void 0:h.behavior)&&(void 0!==_this2.shouldAdjustScrollPositionOnItemSizeChange?_this2.shouldAdjustScrollPositionOnItemSizeChange((_this2$measurementsCa=_this2.measurementsCache[t])!==null&&_this2$measurementsCa!==void 0?_this2$measurementsCa:{index:t,key:l,start:e,size:n,end:e+n,lane:0},o,_this2):e<_this2.getScrollOffset()+_this2.scrollAdjustments&&"backward"!==_this2.scrollDirection);(null===_this2.pendingMin||t<_this2.pendingMin)&&(_this2.pendingMin=t),_this2.itemSizeCache.set(l,s),_this2.itemSizeCacheVersion++,_r4?_this2.applyScrollAdjustment(_this2.getTotalSize()-_u3):_a3&&_this2.applyScrollAdjustment(o),_this2.notify(!1);}},this.getVirtualItems=t(function(){return[_this2.getVirtualIndexes(),_this2.getMeasurements()];},function(t,s){var i=[];for(var _h5=0,_n9=t.length;_h5<_n9;_h5++){var _n10=s[t[_h5]];i.push(_n10);}return i;},{key:!1,debug:function debug(){return _this2.options.debug;}}),this.getVirtualItemForOffset=function(t){var i=_this2.getMeasurements();if(0===i.length)return;var h=_this2._flatMeasurements,n=1===_this2.options.lanes&&null!=h,e=g(0,i.length-1,n?function(t){return h[2*t];}:function(t){return s(i[t]).start;},t);return s(i[e]);},this.getMaxScrollOffset=function(){if(!_this2.scrollElement)return 0;if("scrollHeight"in _this2.scrollElement)return _this2.options.horizontal?_this2.scrollElement.scrollWidth-_this2.scrollElement.clientWidth:_this2.scrollElement.scrollHeight-_this2.scrollElement.clientHeight;{var _t16=_this2.scrollElement.document.documentElement;return _this2.options.horizontal?_t16.scrollWidth-_this2.scrollElement.innerWidth:_t16.scrollHeight-_this2.scrollElement.innerHeight;}},this.getVirtualDistanceFromEnd=function(){return Math.max(_this2.getTotalSize()-_this2.getSize()-_this2.getScrollOffset(),0);},this.getDistanceFromEnd=function(){return Math.max(_this2.getMaxScrollOffset()-_this2.getScrollOffset(),0);},this.isAtEnd=function(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:_this2.options.scrollEndThreshold;return _this2.getDistanceFromEnd()<=t;},this.getOffsetForAlignment=function(t,s){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0;if(!_this2.scrollElement)return 0;var h=_this2.getSize(),n=_this2.getScrollOffset();"auto"===s&&(s=t>=n+h?"end":"start"),"center"===s?t+=(i-h)/2:"end"===s&&(t-=h);var e=_this2.getMaxScrollOffset();return Math.max(Math.min(e,t),0);},this.getOffsetForIndex=function(t){var s=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"auto";t=Math.max(0,Math.min(t,_this2.options.count-1));var i=_this2.getSize(),h=_this2.getScrollOffset(),n=_this2.measurementsCache[t];if(!n)return;if("auto"===s)if(n.end>=h+i-_this2.options.scrollPaddingEnd)s="end";else{if(!(n.start<=h+_this2.options.scrollPaddingStart))return[h,s];s="start";}if("end"===s&&t===_this2.options.count-1)return[_this2.getMaxScrollOffset(),s];var e="end"===s?n.end+_this2.options.scrollPaddingEnd:n.start-_this2.options.scrollPaddingStart;return[_this2.getOffsetForAlignment(e,s,n.size),s];},this.scrollToOffset=function(t){var _ref10=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},_ref10$align=_ref10.align,s=_ref10$align===void 0?"start":_ref10$align,_ref10$behavior=_ref10.behavior,i=_ref10$behavior===void 0?"auto":_ref10$behavior;var h=_this2.getOffsetForAlignment(t,s),n=_this2.now();_this2.scrollState={index:null,align:s,behavior:i,startedAt:n,lastTargetOffset:h,stableFrames:0},_this2._scrollToOffset(h,{adjustments:void 0,behavior:i}),_this2.scheduleScrollReconcile();},this.scrollToIndex=function(t){var _ref11=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},_ref11$align=_ref11.align,s=_ref11$align===void 0?"auto":_ref11$align,_ref11$behavior=_ref11.behavior,i=_ref11$behavior===void 0?"auto":_ref11$behavior;t=Math.max(0,Math.min(t,_this2.options.count-1));var h=_this2.getOffsetForIndex(t,s);if(!h)return;var _h6=_slicedToArray(h,2),n=_h6[0],e=_h6[1],l=_this2.now();_this2.scrollState={index:t,align:e,behavior:i,startedAt:l,lastTargetOffset:n,stableFrames:0},_this2._scrollToOffset(n,{adjustments:void 0,behavior:i}),_this2.scheduleScrollReconcile();},this.scrollBy=function(t){var _ref12=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},_ref12$behavior=_ref12.behavior,s=_ref12$behavior===void 0?"auto":_ref12$behavior;var i=_this2.getScrollOffset()+t,h=_this2.now();_this2.scrollState={index:null,align:"start",behavior:s,startedAt:h,lastTargetOffset:i,stableFrames:0},_this2._scrollToOffset(i,{adjustments:void 0,behavior:s}),_this2.scheduleScrollReconcile();},this.scrollToEnd=function(){var _ref13=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},_ref13$behavior=_ref13.behavior,t=_ref13$behavior===void 0?"auto":_ref13$behavior;_this2.options.count>0?_this2.scrollToIndex(_this2.options.count-1,{align:"end",behavior:t}):_this2.scrollToOffset(Math.max(_this2.getTotalSize()-_this2.getSize(),0),{behavior:t});},this.getTotalSize=function(){var t;var s=_this2.getMeasurements();var i;if(0===s.length)i=_this2.options.paddingStart;else if(1===_this2.options.lanes){var _ref14;var _h7=s.length-1,_n11=_this2._flatMeasurements;i=null!=_n11?_n11[2*_h7]+_n11[2*_h7+1]:(_ref14=null==(t=s[_h7])?void 0:t.end)!==null&&_ref14!==void 0?_ref14:0;}else{var _t17=Array(_this2.options.lanes).fill(null);var _h8=s.length-1;for(;_h8>=0&&_t17.some(function(t){return null===t;});){var _i6=s[_h8];null===_t17[_i6.lane]&&(_t17[_i6.lane]=_i6.end),_h8--;}i=Math.max.apply(Math,_toConsumableArray(_t17.filter(function(t){return null!==t;})));}return Math.max(i-_this2.options.scrollMargin+_this2.options.paddingEnd,0);},this.takeSnapshot=function(){var t=[];if(0===_this2.itemSizeCache.size)return t;var s=_this2.getMeasurements();var _iterator3=_createForOfIteratorHelper(s),_step3;try{for(_iterator3.s();!(_step3=_iterator3.n()).done;){var _i7=_step3.value;_i7&&_this2.itemSizeCache.has(_i7.key)&&t.push({index:_i7.index,key:_i7.key,start:_i7.start,size:_i7.size,end:_i7.end,lane:_i7.lane});}}catch(err){_iterator3.e(err);}finally{_iterator3.f();}return t;},this._scrollToOffset=function(t,_ref15){var s=_ref15.adjustments,i=_ref15.behavior;_this2._intendedScrollOffset=t+(s!==null&&s!==void 0?s:0),_this2.options.scrollToFn(t,{behavior:i,adjustments:s},_this2);},this.measure=function(){_this2.pendingMin=null,_this2.itemSizeCache.clear(),_this2.laneAssignments.clear(),_this2.itemSizeCacheVersion++,_this2.notify(!1);},this.setOptions(h);}return _createClass(b,[{key:"applyScrollAdjustment",value:function applyScrollAdjustment(t,s){0!==t&&(e()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=t:this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=t,behavior:s}));}},{key:"scheduleScrollReconcile",value:function scheduleScrollReconcile(){var _this3=this;this.targetWindow?null==this.rafId&&(this.rafId=this.targetWindow.requestAnimationFrame(function(){_this3.rafId=null,_this3.reconcileScroll();})):this.scrollState=null;}},{key:"reconcileScroll",value:function reconcileScroll(){if(!this.scrollState)return;if(!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3)return void(this.scrollState=null);var t=null!=this.scrollState.index?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,s=t?t[0]:this.scrollState.lastTargetOffset,h=s!==this.scrollState.lastTargetOffset;if(!h&&i(s,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=1)return this.getScrollOffset()!==s&&this._scrollToOffset(s,{adjustments:void 0,behavior:"auto"}),void(this.scrollState=null);}else if(this.scrollState.stableFrames=0,h){var _t18=this.getSize()||600,_i8=Math.abs(s-this.getScrollOffset()),_h9="smooth"===this.scrollState.behavior&&_i8>_t18;this.scrollState.lastTargetOffset=s,_h9||(this.scrollState.behavior="auto"),this._scrollToOffset(s,{adjustments:void 0,behavior:_h9?"smooth":"auto"});}this.scheduleScrollReconcile();}}]);}();g=function g(t,s,i,h){for(;t<=s;){var _n12=(t+s)/2|0,_e8=i(_n12);if(_e8<h)t=_n12+1;else{if(!(_e8>h))return _n12;s=_n12-1;}}return t>0?t-1:0;};m=/*#__PURE__*/function(){function m(t,s){var _this4=this;_classCallCheck(this,m);this.cleanup=function(){};var i=_objectSpread(_objectSpread({},s),{},{onChange:function onChange(t,i){var h;_this4.host.updateComplete.then(function(){return _this4.host.requestUpdate();}),null==(h=s.onChange)||h.call(s,t,i);}});this.virtualizer=new b(i),(this.host=t).addController(this);}return _createClass(m,[{key:"getVirtualizer",value:function getVirtualizer(){return this.virtualizer;}},{key:"hostConnected",value:function hostConnected(){this.cleanup=this.virtualizer._didMount();}},{key:"hostUpdated",value:function hostUpdated(){this.virtualizer._willUpdate();}},{key:"hostDisconnected",value:function hostDisconnected(){this.cleanup();}}]);}();_export("V",M=/*#__PURE__*/function(_m){function M(t,s){_classCallCheck(this,M);return _callSuper(this,M,[t,_objectSpread({observeElementRect:u,observeElementOffset:d,scrollToFn:v},s)]);}_inherits(M,_m);return _createClass(M);}(m));}};});
2
- //# sourceMappingURL=index-dd2af8ec.cjs.js.map