@aquera/nile-elements 0.1.23 → 0.1.25

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 (53) hide show
  1. package/README.md +9 -0
  2. package/dist/{angular-ts-a62c12b7.cjs.js → angular-ts-5f927069.cjs.js} +2 -2
  3. package/dist/{angular-ts-a62c12b7.cjs.js.map → angular-ts-5f927069.cjs.js.map} +1 -1
  4. package/dist/index.cjs.js +1 -1
  5. package/dist/index.esm.js +1 -1
  6. package/dist/nile-auto-complete/index.cjs.js +1 -1
  7. package/dist/nile-auto-complete/index.esm.js +1 -1
  8. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +5 -13
  9. package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
  10. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
  11. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
  12. package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +6 -4
  13. package/dist/nile-auto-complete/nile-auto-complete.esm.js +9 -22
  14. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  15. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
  16. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  17. package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
  18. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  19. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  20. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  21. package/dist/nile-code-editor/nile-code-editor.cjs.js +1 -1
  22. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  23. package/dist/nile-code-editor/nile-code-editor.esm.js +2 -2
  24. package/dist/nile-highlighter/nile-highlighter.cjs.js +1 -1
  25. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  26. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  27. package/dist/nile-tab-group/nile-tab-group.css.cjs.js +1 -1
  28. package/dist/nile-tab-group/nile-tab-group.css.cjs.js.map +1 -1
  29. package/dist/nile-tab-group/nile-tab-group.css.esm.js +11 -3
  30. package/dist/nile-tab-group/nile-tab-group.esm.js +2 -0
  31. package/dist/src/nile-auto-complete/nile-auto-complete.css.js +6 -4
  32. package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
  33. package/dist/src/nile-auto-complete/nile-auto-complete.d.ts +4 -3
  34. package/dist/src/nile-auto-complete/nile-auto-complete.js +35 -11
  35. package/dist/src/nile-auto-complete/nile-auto-complete.js.map +1 -1
  36. package/dist/src/nile-chip/nile-chip.d.ts +2 -2
  37. package/dist/src/nile-chip/nile-chip.js.map +1 -1
  38. package/dist/src/nile-code-editor/nile-code-editor.d.ts +1 -0
  39. package/dist/src/nile-code-editor/nile-code-editor.js +5 -1
  40. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  41. package/dist/src/nile-tab-group/nile-tab-group.css.js +11 -3
  42. package/dist/src/nile-tab-group/nile-tab-group.css.js.map +1 -1
  43. package/dist/src/nile-tab-group/nile-tab-group.js +2 -0
  44. package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
  45. package/dist/tsconfig.tsbuildinfo +1 -1
  46. package/package.json +1 -1
  47. package/src/nile-auto-complete/nile-auto-complete.css.ts +6 -4
  48. package/src/nile-auto-complete/nile-auto-complete.ts +37 -13
  49. package/src/nile-chip/nile-chip.ts +2 -2
  50. package/src/nile-code-editor/nile-code-editor.ts +4 -2
  51. package/src/nile-tab-group/nile-tab-group.css.ts +11 -3
  52. package/src/nile-tab-group/nile-tab-group.ts +2 -0
  53. package/vscode-html-custom-data.json +12 -2
@@ -1 +1 @@
1
- {"version":3,"file":"nile-auto-complete.cjs.js","sources":["../../../../node_modules/@lit-labs/virtualizer/Virtualizer.js","../../../../node_modules/@lit-labs/virtualizer/virtualize.js","../../../../node_modules/@lit-labs/virtualizer/events.js","../../../../node_modules/@lit-labs/virtualizer/ScrollerController.js","../../../../node_modules/@lit-labs/virtualizer/LitVirtualizer.js","../../../../node_modules/@lit-labs/virtualizer/lit-virtualizer.js","../../../src/nile-auto-complete/nile-auto-complete.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { RangeChangedEvent, VisibilityChangedEvent, UnpinnedEvent, } from './events.js';\nimport { ScrollerController } from './ScrollerController.js';\n// Virtualizer depends on `ResizeObserver`, which is supported in\n// all modern browsers. For developers whose browser support\n// matrix includes older browsers, we include a compatible\n// polyfill in the package; this bit of module state facilitates\n// a simple mechanism (see ./polyfillLoaders/ResizeObserver.js.)\n// for loading the polyfill.\nlet _ResizeObserver = typeof window !== 'undefined' ? window.ResizeObserver : undefined;\n/**\n * Call this function to provide a `ResizeObserver` polyfill for Virtualizer to use.\n * @param Ctor Constructor for a `ResizeObserver` polyfill (recommend using the one provided with the Virtualizer package)\n */\nexport function provideResizeObserver(Ctor) {\n _ResizeObserver = Ctor;\n}\nexport const virtualizerRef = Symbol('virtualizerRef');\nconst SIZER_ATTRIBUTE = 'virtualizer-sizer';\nlet DefaultLayoutConstructor;\n/**\n * Provides virtual scrolling boilerplate.\n *\n * Extensions of this class must set hostElement and layout.\n *\n * Extensions of this class must also override VirtualRepeater's DOM\n * manipulation methods.\n */\nexport class Virtualizer {\n constructor(config) {\n this._benchmarkStart = null;\n this._layout = null;\n this._clippingAncestors = [];\n /**\n * Layout provides these values, we set them on _render().\n * TODO @straversi: Can we find an XOR type, usable for the key here?\n */\n this._scrollSize = null;\n /**\n * Difference between scroll target's current and required scroll offsets.\n * Provided by layout.\n */\n this._scrollError = null;\n /**\n * A list of the positions (top, left) of the children in the current range.\n */\n this._childrenPos = null;\n // TODO: (graynorton): type\n this._childMeasurements = null;\n this._toBeMeasured = new Map();\n this._rangeChanged = true;\n this._itemsChanged = true;\n this._visibilityChanged = true;\n this._scrollerController = null;\n this._isScroller = false;\n this._sizer = null;\n /**\n * Resize observer attached to hostElement.\n */\n this._hostElementRO = null;\n /**\n * Resize observer attached to children.\n */\n this._childrenRO = null;\n this._mutationObserver = null;\n this._scrollEventListeners = [];\n this._scrollEventListenerOptions = {\n passive: true,\n };\n // TODO (graynorton): Rethink, per longer comment below\n this._loadListener = this._childLoaded.bind(this);\n /**\n * Index of element to scroll into view, plus scroll\n * behavior options, as imperatively specified via\n * `element(index).scrollIntoView()`\n */\n this._scrollIntoViewTarget = null;\n this._updateScrollIntoViewCoordinates = null;\n /**\n * Items to render. Set by items.\n */\n this._items = [];\n /**\n * Index of the first child in the range, not necessarily the first visible child.\n * TODO @straversi: Consider renaming these.\n */\n this._first = -1;\n /**\n * Index of the last child in the range.\n */\n this._last = -1;\n /**\n * Index of the first item intersecting the viewport.\n */\n this._firstVisible = -1;\n /**\n * Index of the last item intersecting the viewport.\n */\n this._lastVisible = -1;\n this._scheduled = new WeakSet();\n /**\n * Invoked at the end of each render cycle: children in the range are\n * measured, and their dimensions passed to this callback. Use it to layout\n * children as needed.\n */\n this._measureCallback = null;\n this._measureChildOverride = null;\n /**\n * State for `layoutComplete` promise\n */\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n /**\n * Layout initialization is async because we dynamically load\n * the default layout if none is specified. This state is to track\n * whether init is complete.\n */\n this._layoutInitialized = null;\n /**\n * Track connection state to guard against errors / unnecessary work\n */\n this._connected = false;\n if (!config) {\n throw new Error('Virtualizer constructor requires a configuration object');\n }\n if (config.hostElement) {\n this._init(config);\n }\n else {\n throw new Error('Virtualizer configuration requires the \"hostElement\" property');\n }\n }\n set items(items) {\n if (Array.isArray(items) && items !== this._items) {\n this._itemsChanged = true;\n this._items = items;\n this._schedule(this._updateLayout);\n }\n }\n _init(config) {\n this._isScroller = !!config.scroller;\n this._initHostElement(config);\n // If no layout is specified, we make an empty\n // layout config, which will result in the default\n // layout with default parameters\n const layoutConfig = config.layout || {};\n // Save the promise returned by `_initLayout` as a state\n // variable we can check before updating layout config\n this._layoutInitialized = this._initLayout(layoutConfig);\n }\n _initObservers() {\n this._mutationObserver = new MutationObserver(this._finishDOMUpdate.bind(this));\n this._hostElementRO = new _ResizeObserver(() => this._hostElementSizeChanged());\n this._childrenRO = new _ResizeObserver(this._childrenSizeChanged.bind(this));\n }\n _initHostElement(config) {\n const hostElement = (this._hostElement = config.hostElement);\n this._applyVirtualizerStyles();\n hostElement[virtualizerRef] = this;\n }\n connected() {\n this._initObservers();\n const includeSelf = this._isScroller;\n this._clippingAncestors = getClippingAncestors(this._hostElement, includeSelf);\n this._scrollerController = new ScrollerController(this, this._clippingAncestors[0]);\n this._schedule(this._updateLayout);\n this._observeAndListen();\n this._connected = true;\n }\n _observeAndListen() {\n this._mutationObserver.observe(this._hostElement, { childList: true });\n this._hostElementRO.observe(this._hostElement);\n this._scrollEventListeners.push(window);\n window.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._clippingAncestors.forEach((ancestor) => {\n ancestor.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._scrollEventListeners.push(ancestor);\n this._hostElementRO.observe(ancestor);\n });\n this._hostElementRO.observe(this._scrollerController.element);\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._scrollEventListeners.forEach((target) => target.addEventListener('scroll', this, this._scrollEventListenerOptions));\n }\n disconnected() {\n this._scrollEventListeners.forEach((target) => target.removeEventListener('scroll', this, this._scrollEventListenerOptions));\n this._scrollEventListeners = [];\n this._clippingAncestors = [];\n this._scrollerController?.detach(this);\n this._scrollerController = null;\n this._mutationObserver?.disconnect();\n this._mutationObserver = null;\n this._hostElementRO?.disconnect();\n this._hostElementRO = null;\n this._childrenRO?.disconnect();\n this._childrenRO = null;\n this._rejectLayoutCompletePromise('disconnected');\n this._connected = false;\n }\n _applyVirtualizerStyles() {\n const hostElement = this._hostElement;\n // Would rather set these CSS properties on the host using Shadow Root\n // style scoping (and falling back to a global stylesheet where native\n // Shadow DOM is not available), but this Mobile Safari bug is preventing\n // that from working: https://bugs.webkit.org/show_bug.cgi?id=226195\n const style = hostElement.style;\n style.display = style.display || 'block';\n style.position = style.position || 'relative';\n style.contain = style.contain || 'size layout';\n if (this._isScroller) {\n style.overflow = style.overflow || 'auto';\n style.minHeight = style.minHeight || '150px';\n }\n }\n _getSizer() {\n const hostElement = this._hostElement;\n if (!this._sizer) {\n // Use a preexisting sizer element if provided (for better integration\n // with vDOM renderers)\n let sizer = hostElement.querySelector(`[${SIZER_ATTRIBUTE}]`);\n if (!sizer) {\n sizer = document.createElement('div');\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n hostElement.appendChild(sizer);\n }\n // When the scrollHeight is large, the height of this element might be\n // ignored. Setting content and font-size ensures the element has a size.\n Object.assign(sizer.style, {\n position: 'absolute',\n margin: '-2px 0 0 0',\n padding: 0,\n visibility: 'hidden',\n fontSize: '2px',\n });\n sizer.textContent = '&nbsp;';\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n this._sizer = sizer;\n }\n return this._sizer;\n }\n async updateLayoutConfig(layoutConfig) {\n // If layout initialization hasn't finished yet, we wait\n // for it to finish so we can check whether the new config\n // is compatible with the existing layout before proceeding.\n await this._layoutInitialized;\n const Ctor = layoutConfig.type ||\n // The new config is compatible with the current layout,\n // so we update the config and return true to indicate\n // a successful update\n DefaultLayoutConstructor;\n if (typeof Ctor === 'function' && this._layout instanceof Ctor) {\n const config = { ...layoutConfig };\n delete config.type;\n this._layout.config = config;\n // The new config requires a different layout altogether, but\n // to limit implementation complexity we don't support dynamically\n // changing the layout of an existing virtualizer instance.\n // Returning false here lets the caller know that they should\n // instead make a new virtualizer instance with the desired layout.\n return true;\n }\n return false;\n }\n async _initLayout(layoutConfig) {\n let config;\n let Ctor;\n if (typeof layoutConfig.type === 'function') {\n // If we have a full LayoutSpecifier, the `type` property\n // gives us our constructor...\n Ctor = layoutConfig.type;\n // ...while the rest of the specifier is our layout config\n const copy = { ...layoutConfig };\n delete copy.type;\n config = copy;\n }\n else {\n // If we don't have a full LayoutSpecifier, we just\n // have a config for the default layout\n config = layoutConfig;\n }\n if (Ctor === undefined) {\n // If we don't have a constructor yet, load the default\n DefaultLayoutConstructor = Ctor = (await import('./layouts/flow.js'))\n .FlowLayout;\n }\n this._layout = new Ctor((message) => this._handleLayoutMessage(message), config);\n if (this._layout.measureChildren &&\n typeof this._layout.updateItemSizes === 'function') {\n if (typeof this._layout.measureChildren === 'function') {\n this._measureChildOverride = this._layout.measureChildren;\n }\n this._measureCallback = this._layout.updateItemSizes.bind(this._layout);\n }\n if (this._layout.listenForChildLoadEvents) {\n this._hostElement.addEventListener('load', this._loadListener, true);\n }\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rework benchmarking so that it has no API and\n // instead is always on except in production builds\n startBenchmarking() {\n if (this._benchmarkStart === null) {\n this._benchmarkStart = window.performance.now();\n }\n }\n stopBenchmarking() {\n if (this._benchmarkStart !== null) {\n const now = window.performance.now();\n const timeElapsed = now - this._benchmarkStart;\n const entries = performance.getEntriesByName('uv-virtualizing', 'measure');\n const virtualizationTime = entries\n .filter((e) => e.startTime >= this._benchmarkStart && e.startTime < now)\n .reduce((t, m) => t + m.duration, 0);\n this._benchmarkStart = null;\n return { timeElapsed, virtualizationTime };\n }\n return null;\n }\n _measureChildren() {\n const mm = {};\n const children = this._children;\n const fn = this._measureChildOverride || this._measureChild;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n const idx = this._first + i;\n if (this._itemsChanged || this._toBeMeasured.has(child)) {\n mm[idx] = fn.call(this, child, this._items[idx]);\n }\n }\n this._childMeasurements = mm;\n this._schedule(this._updateLayout);\n this._toBeMeasured.clear();\n }\n /**\n * Returns the width, height, and margins of the given child.\n */\n _measureChild(element) {\n // offsetWidth doesn't take transforms in consideration, so we use\n // getBoundingClientRect which does.\n const { width, height } = element.getBoundingClientRect();\n return Object.assign({ width, height }, getMargins(element));\n }\n async _schedule(method) {\n if (!this._scheduled.has(method)) {\n this._scheduled.add(method);\n await Promise.resolve();\n this._scheduled.delete(method);\n method.call(this);\n }\n }\n async _updateDOM(state) {\n this._scrollSize = state.scrollSize;\n this._adjustRange(state.range);\n this._childrenPos = state.childPositions;\n this._scrollError = state.scrollError || null;\n const { _rangeChanged, _itemsChanged } = this;\n if (this._visibilityChanged) {\n this._notifyVisibility();\n this._visibilityChanged = false;\n }\n if (_rangeChanged || _itemsChanged) {\n this._notifyRange();\n this._rangeChanged = false;\n }\n this._finishDOMUpdate();\n }\n _finishDOMUpdate() {\n if (this._connected) {\n // _childrenRO should be non-null if we're connected\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._checkScrollIntoViewTarget(this._childrenPos);\n this._positionChildren(this._childrenPos);\n this._sizeHostElement(this._scrollSize);\n this._correctScrollError();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _updateLayout() {\n if (this._layout && this._connected) {\n this._layout.items = this._items;\n this._updateView();\n if (this._childMeasurements !== null) {\n // If the layout has been changed, we may have measurements but no callback\n if (this._measureCallback) {\n this._measureCallback(this._childMeasurements);\n }\n this._childMeasurements = null;\n }\n this._layout.reflowIfNeeded();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _handleScrollEvent() {\n if (this._benchmarkStart && 'mark' in window.performance) {\n try {\n window.performance.measure('uv-virtualizing', 'uv-start', 'uv-end');\n }\n catch (e) {\n console.warn('Error measuring performance data: ', e);\n }\n window.performance.mark('uv-start');\n }\n if (this._scrollerController.correctingScrollError === false) {\n // This is a user-initiated scroll, so we unpin the layout\n this._layout?.unpin();\n }\n this._schedule(this._updateLayout);\n }\n handleEvent(event) {\n switch (event.type) {\n case 'scroll':\n if (event.currentTarget === window ||\n this._clippingAncestors.includes(event.currentTarget)) {\n this._handleScrollEvent();\n }\n break;\n default:\n console.warn('event not handled', event);\n }\n }\n _handleLayoutMessage(message) {\n if (message.type === 'stateChanged') {\n this._updateDOM(message);\n }\n else if (message.type === 'visibilityChanged') {\n this._firstVisible = message.firstVisible;\n this._lastVisible = message.lastVisible;\n this._notifyVisibility();\n }\n else if (message.type === 'unpinned') {\n this._hostElement.dispatchEvent(new UnpinnedEvent());\n }\n }\n get _children() {\n const arr = [];\n let next = this._hostElement.firstElementChild;\n while (next) {\n if (!next.hasAttribute(SIZER_ATTRIBUTE)) {\n arr.push(next);\n }\n next = next.nextElementSibling;\n }\n return arr;\n }\n _updateView() {\n const hostElement = this._hostElement;\n const scrollingElement = this._scrollerController?.element;\n const layout = this._layout;\n if (hostElement && scrollingElement && layout) {\n let top, left, bottom, right;\n const hostElementBounds = hostElement.getBoundingClientRect();\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n const ancestorBounds = this._clippingAncestors.map((ancestor) => ancestor.getBoundingClientRect());\n ancestorBounds.unshift(hostElementBounds);\n for (const bounds of ancestorBounds) {\n top = Math.max(top, bounds.top);\n left = Math.max(left, bounds.left);\n bottom = Math.min(bottom, bounds.bottom);\n right = Math.min(right, bounds.right);\n }\n const scrollingElementBounds = scrollingElement.getBoundingClientRect();\n const offsetWithinScroller = {\n left: hostElementBounds.left - scrollingElementBounds.left,\n top: hostElementBounds.top - scrollingElementBounds.top,\n };\n const totalScrollSize = {\n width: scrollingElement.scrollWidth,\n height: scrollingElement.scrollHeight,\n };\n const scrollTop = top - hostElementBounds.top + hostElement.scrollTop;\n const scrollLeft = left - hostElementBounds.left + hostElement.scrollLeft;\n const height = Math.max(0, bottom - top);\n const width = Math.max(0, right - left);\n layout.viewportSize = { width, height };\n layout.viewportScroll = { top: scrollTop, left: scrollLeft };\n layout.totalScrollSize = totalScrollSize;\n layout.offsetWithinScroller = offsetWithinScroller;\n }\n }\n /**\n * Styles the host element so that its size reflects the\n * total size of all items.\n */\n _sizeHostElement(size) {\n // Some browsers seem to crap out if the host element gets larger than\n // a certain size, so we clamp it here (this value based on ad hoc\n // testing in Chrome / Safari / Firefox Mac)\n const max = 8200000;\n const h = size && size.width !== null ? Math.min(max, size.width) : 0;\n const v = size && size.height !== null ? Math.min(max, size.height) : 0;\n if (this._isScroller) {\n this._getSizer().style.transform = `translate(${h}px, ${v}px)`;\n }\n else {\n const style = this._hostElement.style;\n style.minWidth = h ? `${h}px` : '100%';\n style.minHeight = v ? `${v}px` : '100%';\n }\n }\n /**\n * Sets the top and left transform style of the children from the values in\n * pos.\n */\n _positionChildren(pos) {\n if (pos) {\n pos.forEach(({ top, left, width, height, xOffset, yOffset }, index) => {\n const child = this._children[index - this._first];\n if (child) {\n child.style.position = 'absolute';\n child.style.boxSizing = 'border-box';\n child.style.transform = `translate(${left}px, ${top}px)`;\n if (width !== undefined) {\n child.style.width = width + 'px';\n }\n if (height !== undefined) {\n child.style.height = height + 'px';\n }\n child.style.left =\n xOffset === undefined ? null : xOffset + 'px';\n child.style.top =\n yOffset === undefined ? null : yOffset + 'px';\n }\n });\n }\n }\n async _adjustRange(range) {\n const { _first, _last, _firstVisible, _lastVisible } = this;\n this._first = range.first;\n this._last = range.last;\n this._firstVisible = range.firstVisible;\n this._lastVisible = range.lastVisible;\n this._rangeChanged =\n this._rangeChanged || this._first !== _first || this._last !== _last;\n this._visibilityChanged =\n this._visibilityChanged ||\n this._firstVisible !== _firstVisible ||\n this._lastVisible !== _lastVisible;\n }\n _correctScrollError() {\n if (this._scrollError) {\n const { scrollTop, scrollLeft } = this._scrollerController;\n const { top, left } = this._scrollError;\n this._scrollError = null;\n this._scrollerController.correctScrollError({\n top: scrollTop - top,\n left: scrollLeft - left,\n });\n }\n }\n element(index) {\n if (index === Infinity) {\n index = this._items.length - 1;\n }\n return this._items?.[index] === undefined\n ? undefined\n : {\n scrollIntoView: (options = {}) => this._scrollElementIntoView({ ...options, index }),\n };\n }\n _scrollElementIntoView(options) {\n if (options.index >= this._first && options.index <= this._last) {\n this._children[options.index - this._first].scrollIntoView(options);\n }\n else {\n options.index = Math.min(options.index, this._items.length - 1);\n if (options.behavior === 'smooth') {\n const coordinates = this._layout.getScrollIntoViewCoordinates(options);\n const { behavior } = options;\n this._updateScrollIntoViewCoordinates =\n this._scrollerController.managedScrollTo(Object.assign(coordinates, { behavior }), () => this._layout.getScrollIntoViewCoordinates(options), () => (this._scrollIntoViewTarget = null));\n this._scrollIntoViewTarget = options;\n }\n else {\n this._layout.pin = options;\n }\n }\n }\n /**\n * If we are smoothly scrolling to an element and the target element\n * is in the DOM, we update our target coordinates as needed\n */\n _checkScrollIntoViewTarget(pos) {\n const { index } = this._scrollIntoViewTarget || {};\n if (index && pos?.has(index)) {\n this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget));\n }\n }\n /**\n * Emits a rangechange event with the current first, last, firstVisible, and\n * lastVisible.\n */\n _notifyRange() {\n this._hostElement.dispatchEvent(new RangeChangedEvent({ first: this._first, last: this._last }));\n }\n _notifyVisibility() {\n this._hostElement.dispatchEvent(new VisibilityChangedEvent({\n first: this._firstVisible,\n last: this._lastVisible,\n }));\n }\n get layoutComplete() {\n // Lazily create promise\n if (!this._layoutCompletePromise) {\n this._layoutCompletePromise = new Promise((resolve, reject) => {\n this._layoutCompleteResolver = resolve;\n this._layoutCompleteRejecter = reject;\n });\n }\n return this._layoutCompletePromise;\n }\n _rejectLayoutCompletePromise(reason) {\n if (this._layoutCompleteRejecter !== null) {\n this._layoutCompleteRejecter(reason);\n }\n this._resetLayoutCompleteState();\n }\n _scheduleLayoutComplete() {\n // Don't do anything unless we have a pending promise\n // And only request a frame if we haven't already done so\n if (this._layoutCompletePromise && this._pendingLayoutComplete === null) {\n // Wait one additional frame to be sure the layout is stable\n this._pendingLayoutComplete = requestAnimationFrame(() => requestAnimationFrame(() => this._resolveLayoutCompletePromise()));\n }\n }\n _resolveLayoutCompletePromise() {\n if (this._layoutCompleteResolver !== null) {\n this._layoutCompleteResolver();\n }\n this._resetLayoutCompleteState();\n }\n _resetLayoutCompleteState() {\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n }\n /**\n * Render and update the view at the next opportunity with the given\n * hostElement size.\n */\n _hostElementSizeChanged() {\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rethink how this works. Probably child loading is too specific\n // to have dedicated support for; might want some more generic lifecycle hooks for\n // layouts to use. Possibly handle measurement this way, too, or maybe that remains\n // a first-class feature?\n _childLoaded() { }\n // This is the callback for the ResizeObserver that watches the\n // virtualizer's children. We land here at the end of every virtualizer\n // update cycle that results in changes to physical items, and we also\n // end up here if one or more children change size independently of\n // the virtualizer update cycle.\n _childrenSizeChanged(changes) {\n // Only measure if the layout requires it\n if (this._layout?.measureChildren) {\n for (const change of changes) {\n this._toBeMeasured.set(change.target, change.contentRect);\n }\n this._measureChildren();\n }\n // If this is the end of an update cycle, we need to reset some\n // internal state. This should be a harmless no-op if we're handling\n // an out-of-cycle ResizeObserver callback, so we don't need to\n // distinguish between the two cases.\n this._scheduleLayoutComplete();\n this._itemsChanged = false;\n this._rangeChanged = false;\n }\n}\nfunction getMargins(el) {\n const style = window.getComputedStyle(el);\n return {\n marginTop: getMarginValue(style.marginTop),\n marginRight: getMarginValue(style.marginRight),\n marginBottom: getMarginValue(style.marginBottom),\n marginLeft: getMarginValue(style.marginLeft),\n };\n}\nfunction getMarginValue(value) {\n const float = value ? parseFloat(value) : NaN;\n return Number.isNaN(float) ? 0 : float;\n}\n// TODO (graynorton): Deal with iframes?\nfunction getParentElement(el) {\n if (el.assignedSlot !== null) {\n return el.assignedSlot;\n }\n if (el.parentElement !== null) {\n return el.parentElement;\n }\n const parentNode = el.parentNode;\n if (parentNode && parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n return parentNode.host || null;\n }\n return null;\n}\n///\nfunction getElementAncestors(el, includeSelf = false) {\n const ancestors = [];\n let parent = includeSelf ? el : getParentElement(el);\n while (parent !== null) {\n ancestors.push(parent);\n parent = getParentElement(parent);\n }\n return ancestors;\n}\nfunction getClippingAncestors(el, includeSelf = false) {\n let foundFixed = false;\n return getElementAncestors(el, includeSelf).filter((a) => {\n if (foundFixed) {\n return false;\n }\n const style = getComputedStyle(a);\n foundFixed = style.position === 'fixed';\n return style.overflow !== 'visible';\n });\n}\n//# sourceMappingURL=Virtualizer.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { html, noChange } from 'lit';\nimport { directive, PartType } from 'lit/directive.js';\nimport { AsyncDirective } from 'lit/async-directive.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { Virtualizer } from './Virtualizer.js';\nexport { virtualizerRef } from './Virtualizer.js';\nexport const defaultKeyFunction = (item) => item;\nexport const defaultRenderItem = (item, idx) => html `${idx}: ${JSON.stringify(item, null, 2)}`;\nclass VirtualizeDirective extends AsyncDirective {\n constructor(part) {\n super(part);\n this._virtualizer = null;\n this._first = 0;\n this._last = -1;\n this._renderItem = (item, idx) => defaultRenderItem(item, idx + this._first);\n this._keyFunction = (item, idx) => defaultKeyFunction(item, idx + this._first);\n this._items = [];\n if (part.type !== PartType.CHILD) {\n throw new Error('The virtualize directive can only be used in child expressions');\n }\n }\n render(config) {\n if (config) {\n this._setFunctions(config);\n }\n const itemsToRender = [];\n if (this._first >= 0 && this._last >= this._first) {\n for (let i = this._first; i <= this._last; i++) {\n itemsToRender.push(this._items[i]);\n }\n }\n return repeat(itemsToRender, this._keyFunction, this._renderItem);\n }\n update(part, [config]) {\n this._setFunctions(config);\n const itemsChanged = this._items !== config.items;\n this._items = config.items || [];\n if (this._virtualizer) {\n this._updateVirtualizerConfig(part, config);\n }\n else {\n this._initialize(part, config);\n }\n return itemsChanged ? noChange : this.render();\n }\n async _updateVirtualizerConfig(part, config) {\n const compatible = await this._virtualizer.updateLayoutConfig(config.layout || {});\n if (!compatible) {\n const hostElement = part.parentNode;\n this._makeVirtualizer(hostElement, config);\n }\n this._virtualizer.items = this._items;\n }\n _setFunctions(config) {\n const { renderItem, keyFunction } = config;\n if (renderItem) {\n this._renderItem = (item, idx) => renderItem(item, idx + this._first);\n }\n if (keyFunction) {\n this._keyFunction = (item, idx) => keyFunction(item, idx + this._first);\n }\n }\n _makeVirtualizer(hostElement, config) {\n if (this._virtualizer) {\n this._virtualizer.disconnected();\n }\n const { layout, scroller, items } = config;\n this._virtualizer = new Virtualizer({ hostElement, layout, scroller });\n this._virtualizer.items = items;\n this._virtualizer.connected();\n }\n _initialize(part, config) {\n const hostElement = part.parentNode;\n if (hostElement && hostElement.nodeType === 1) {\n hostElement.addEventListener('rangeChanged', (e) => {\n this._first = e.first;\n this._last = e.last;\n this.setValue(this.render());\n });\n this._makeVirtualizer(hostElement, config);\n }\n }\n disconnected() {\n this._virtualizer?.disconnected();\n }\n reconnected() {\n this._virtualizer?.connected();\n }\n}\nexport const virtualize = directive(VirtualizeDirective);\n//# sourceMappingURL=virtualize.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class RangeChangedEvent extends Event {\n constructor(range) {\n super(RangeChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nRangeChangedEvent.eventName = 'rangeChanged';\nexport class VisibilityChangedEvent extends Event {\n constructor(range) {\n super(VisibilityChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nVisibilityChangedEvent.eventName = 'visibilityChanged';\nexport class UnpinnedEvent extends Event {\n constructor() {\n super(UnpinnedEvent.eventName, { bubbles: false });\n }\n}\nUnpinnedEvent.eventName = 'unpinned';\n//# sourceMappingURL=events.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class ScrollerShim {\n constructor(element) {\n this._element = null;\n const node = element ?? window;\n this._node = node;\n if (element) {\n this._element = element;\n }\n }\n get element() {\n return (this._element || document.scrollingElement || document.documentElement);\n }\n get scrollTop() {\n return this.element.scrollTop || window.scrollY;\n }\n get scrollLeft() {\n return this.element.scrollLeft || window.scrollX;\n }\n get scrollHeight() {\n return this.element.scrollHeight;\n }\n get scrollWidth() {\n return this.element.scrollWidth;\n }\n get viewportHeight() {\n return this._element\n ? this._element.getBoundingClientRect().height\n : window.innerHeight;\n }\n get viewportWidth() {\n return this._element\n ? this._element.getBoundingClientRect().width\n : window.innerWidth;\n }\n get maxScrollTop() {\n return this.scrollHeight - this.viewportHeight;\n }\n get maxScrollLeft() {\n return this.scrollWidth - this.viewportWidth;\n }\n}\nexport class ScrollerController extends ScrollerShim {\n constructor(client, element) {\n super(element);\n this._clients = new Set();\n this._retarget = null;\n this._end = null;\n this.__destination = null;\n this.correctingScrollError = false;\n this._checkForArrival = this._checkForArrival.bind(this);\n this._updateManagedScrollTo = this._updateManagedScrollTo.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n this.scrollBy = this.scrollBy.bind(this);\n const node = this._node;\n this._originalScrollTo = node.scrollTo;\n this._originalScrollBy = node.scrollBy;\n this._originalScroll = node.scroll;\n this._attach(client);\n }\n get _destination() {\n return this.__destination;\n }\n get scrolling() {\n return this._destination !== null;\n }\n scrollTo(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n this._scrollTo(options);\n }\n scrollBy(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n if (options.top !== undefined) {\n options.top += this.scrollTop;\n }\n if (options.left !== undefined) {\n options.left += this.scrollLeft;\n }\n this._scrollTo(options);\n }\n _nativeScrollTo(options) {\n this._originalScrollTo.bind(this._element || window)(options);\n }\n _scrollTo(options, retarget = null, end = null) {\n if (this._end !== null) {\n this._end();\n }\n if (options.behavior === 'smooth') {\n this._setDestination(options);\n this._retarget = retarget;\n this._end = end;\n }\n else {\n this._resetScrollState();\n }\n this._nativeScrollTo(options);\n }\n _setDestination(options) {\n let { top, left } = options;\n top =\n top === undefined\n ? undefined\n : Math.max(0, Math.min(top, this.maxScrollTop));\n left =\n left === undefined\n ? undefined\n : Math.max(0, Math.min(left, this.maxScrollLeft));\n if (this._destination !== null &&\n left === this._destination.left &&\n top === this._destination.top) {\n return false;\n }\n this.__destination = { top, left, behavior: 'smooth' };\n return true;\n }\n _resetScrollState() {\n this.__destination = null;\n this._retarget = null;\n this._end = null;\n }\n _updateManagedScrollTo(coordinates) {\n if (this._destination) {\n if (this._setDestination(coordinates)) {\n this._nativeScrollTo(this._destination);\n }\n }\n }\n managedScrollTo(options, retarget, end) {\n this._scrollTo(options, retarget, end);\n return this._updateManagedScrollTo;\n }\n correctScrollError(coordinates) {\n this.correctingScrollError = true;\n requestAnimationFrame(() => requestAnimationFrame(() => (this.correctingScrollError = false)));\n // Correct the error\n this._nativeScrollTo(coordinates);\n // Then, if we were headed for a specific destination, we continue scrolling:\n // First, we update our target destination, if applicable...\n if (this._retarget) {\n this._setDestination(this._retarget());\n }\n // Then we go ahead and resume scrolling\n if (this._destination) {\n this._nativeScrollTo(this._destination);\n }\n }\n _checkForArrival() {\n if (this._destination !== null) {\n const { scrollTop, scrollLeft } = this;\n let { top, left } = this._destination;\n top = Math.min(top || 0, this.maxScrollTop);\n left = Math.min(left || 0, this.maxScrollLeft);\n const topDiff = Math.abs(top - scrollTop);\n const leftDiff = Math.abs(left - scrollLeft);\n // We check to see if we've arrived at our destination.\n if (topDiff < 1 && leftDiff < 1) {\n if (this._end) {\n this._end();\n }\n this._resetScrollState();\n }\n }\n }\n detach(client) {\n this._clients.delete(client);\n /**\n * If there aren't any more clients, then return the node's default\n * scrolling methods\n */\n if (this._clients.size === 0) {\n this._node.scrollTo = this._originalScrollTo;\n this._node.scrollBy = this._originalScrollBy;\n this._node.scroll = this._originalScroll;\n this._node.removeEventListener('scroll', this._checkForArrival);\n }\n return null;\n }\n _attach(client) {\n this._clients.add(client);\n /**\n * The node should only have the methods shimmed when adding the first\n * client – otherwise it's redundant\n */\n if (this._clients.size === 1) {\n this._node.scrollTo = this.scrollTo;\n this._node.scrollBy = this.scrollBy;\n this._node.scroll = this.scrollTo;\n this._node.addEventListener('scroll', this._checkForArrival);\n }\n }\n}\n//# sourceMappingURL=ScrollerController.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { virtualize, virtualizerRef, defaultRenderItem, defaultKeyFunction, } from './virtualize.js';\nexport class LitVirtualizer extends LitElement {\n constructor() {\n super(...arguments);\n this.items = [];\n this.renderItem = defaultRenderItem;\n this.keyFunction = defaultKeyFunction;\n this.layout = {};\n this.scroller = false;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const { items, renderItem, keyFunction, layout, scroller } = this;\n return html `${virtualize({\n items,\n renderItem,\n keyFunction,\n layout,\n scroller,\n })}`;\n }\n element(index) {\n return this[virtualizerRef]?.element(index);\n }\n get layoutComplete() {\n return this[virtualizerRef]?.layoutComplete;\n }\n /**\n * This scrollToIndex() shim is here to provide backwards compatibility with other 0.x versions of\n * lit-virtualizer. It is deprecated and will likely be removed in the 1.0.0 release.\n */\n scrollToIndex(index, position = 'start') {\n this.element(index)?.scrollIntoView({ block: position });\n }\n}\n__decorate([\n property({ attribute: false })\n], LitVirtualizer.prototype, \"items\", void 0);\n__decorate([\n property()\n], LitVirtualizer.prototype, \"renderItem\", void 0);\n__decorate([\n property()\n], LitVirtualizer.prototype, \"keyFunction\", void 0);\n__decorate([\n property({ attribute: false })\n], LitVirtualizer.prototype, \"layout\", void 0);\n__decorate([\n property({ reflect: true, type: Boolean })\n], LitVirtualizer.prototype, \"scroller\", void 0);\n//# sourceMappingURL=LitVirtualizer.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { LitVirtualizer } from './LitVirtualizer.js';\nexport { LitVirtualizer };\nexport { RangeChangedEvent, VisibilityChangedEvent } from './events.js';\n/**\n * Import this module to declare the lit-virtualizer custom element.\n */\ncustomElements.define('lit-virtualizer', LitVirtualizer);\n//# sourceMappingURL=lit-virtualizer.js.map","import {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n nothing,\n} from 'lit';\nimport { customElement, query, state, property } from 'lit/decorators.js';\nimport { styles } from './nile-auto-complete.css';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup, PropertyValues } from 'lit';\nimport { NileDropdown } from '../nile-dropdown';\nimport '@lit-labs/virtualizer';\n\n// Define the custom element 'nile-auto-complete'\n@customElement('nile-auto-complete')\nexport class NileAutoComplete extends NileElement {\n\n static styles: CSSResultGroup = styles;\n\n @query('nile-dropdown') dropdownElement: NileDropdown;\n\n // Define component properties\n\n @property({ type: Boolean }) isDropdownOpen: boolean = false;\n\n @property({ type: Boolean }) enableVirtualScroll: boolean = false;\n\n @property({ type: Boolean }) openOnFocus: boolean = false;\n\n @property({ type: String }) value: string = '';\n\n @property({ type: String }) placeholder: string = 'Type here ..';\n\n @property({ type: Boolean }) noBorder: boolean = false;\n\n @property({ type: Boolean }) loading: boolean = false;\n\n @property({ attribute:false}) filterFunction: any = (item:string,searchedValue:string)=>item.toLowerCase().includes(searchedValue.toLowerCase());\n\n @property({ attribute:false}) renderItemFunction: any = (item:any)=>item;\n\n @property({ type: Array }) allMenuItems: any = [];\n\n @state() menuItems: any = [];\n\n connectedCallback() {\n super.connectedCallback();\n this.menuItems = [...this.allMenuItems];\n }\n\n protected updated(changedProperties: PropertyValues): void {\n super.updated(changedProperties);\n if (changedProperties.has('allMenuItems')) this.menuItems = [...this.allMenuItems];\n if (changedProperties.has('isDropdownOpen')) this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n }\n\n public render(): TemplateResult {\n const content=this.enableVirtualScroll?this.getVirtualizedContent():this.getContent();\n return html`\n <nile-dropdown class=\"nile-dropdown--input\" ?open=${this.isDropdownOpen} noOpenOnCLick>\n <nile-input class=\"nile-auto-complete--input\"\n ?no-border=${this.noBorder}\n .value=${this.value}\n @nile-input=${this.handleSearch}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n slot=\"trigger\"\n placeholder=${this.placeholder}\n >\n ${this.loading?html`<nile-icon slot=\"suffix\" color=\"var(--nile-colors-primary-600)\" name=\"button-loading-blue-animated\"></nile-icon>`:nothing}\n </nile-input>\n ${this.menuItems.length > 0 && !this.loading\n ? content\n : nothing}\n </nile-dropdown>\n `;\n } \n \n getVirtualizedContent():TemplateResult{\n return html`\n <nile-menu @nile-select=${this.handleSelect} id=\"content-menu\" exportparts=\"menu__items-wrapper:options__wrapper\">\n <lit-virtualizer\n .items=${this.menuItems}\n .renderItem=${(item:any):TemplateResult=>this.getItemRenderFunction(item)}\n ></lit-virtualizer>\n </nile-menu>\n `\n }\n\n getContent():TemplateResult{\n return html`\n <nile-menu id=\"content-menu\" @nile-select=${this.handleSelect} exportparts=\"menu__items-wrapper:options__wrapper\">\n ${this.menuItems.map((item: any) => this.getItemRenderFunction(item))}\n </nile-menu>`\n }\n\n getItemRenderFunction(item:any):TemplateResult{\n const value=this.renderItemFunction(item)\n return html`\n <nile-menu-item value=${value}>\n ${value}\n </nile-menu-item>\n `;\n }\n\n private handleSelect(event: CustomEvent) {\n this.value = event.detail.value;\n this.emit('nile-complete', { value: event.detail.value });\n this.isDropdownOpen = false;\n this.dropdownElement?.hide();\n }\n\n private handleSearch(event: CustomEvent) {\n const searchValue = event.detail.value.toLowerCase();\n this.value = searchValue;\n\n // Filter menu items based on the search value\n this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n\n this.isDropdownOpen = this.menuItems.length > 0;\n if (this.isDropdownOpen) this.dropdownElement?.show();\n }\n\n public handleFocus() {\n if (!this.openOnFocus) {\n return;\n }\n\n // Delay opening the dropdown to allow focus to take effect\n setTimeout(() => {\n this.isDropdownOpen = true;\n this.dropdownElement?.show();\n }, 300);\n }\n\n private handleClick() {\n this.isDropdownOpen = true;\n this.dropdownElement?.show();\n }\n\n applyFilter<T>(list: T[], filterFn: (item: T,searchValue?:string) => boolean): T[] {\n const res:T[]=[]\n list.forEach( el=> filterFn(el,this.value) && res.push(el) )\n return res\n }\n\n}\n\nexport default NileAutoComplete;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-auto-complete': NileAutoComplete;\n }\n}\n"],"names":["getMarginValue","value","float","parseFloat","NaN","Number","isNaN","getParentElement","el","assignedSlot","parentElement","parentNode","nodeType","Node","DOCUMENT_FRAGMENT_NODE","host","setters","_tslib","RangeChangedEvent","Event","w","range","super","eventName","bubbles","this","first","last","_this","_inherits","_Event","_createClass","_wrapNativeSuper","VisibilityChangedEvent","v","_this2","_Event2","UnpinnedEvent","g","constructor","ScrollerShim","y","element","_element","node","window","_node","key","get","document","scrollingElement","documentElement","scrollTop","scrollY","scrollLeft","scrollX","scrollHeight","scrollWidth","getBoundingClientRect","height","innerHeight","width","innerWidth","viewportHeight","viewportWidth","ScrollerController","_","client","_clients","Set","_retarget","_end","__destination","correctingScrollError","_checkForArrival","bind","_updateManagedScrollTo","scrollTo","scrollBy","_originalScrollTo","_originalScrollBy","_originalScroll","scroll","_attach","_this3","_y","_destination","p1","p2","options","left","top","_scrollTo","undefined","_nativeScrollTo","retarget","end","behavior","_setDestination","_resetScrollState","Math","max","min","maxScrollTop","maxScrollLeft","coordinates","managedScrollTo","correctScrollError","requestAnimationFrame","_this$_destination","topDiff","abs","leftDiff","detach","size","removeEventListener","add","addEventListener","_ResizeObserver","ResizeObserver","virtualizerRef","Symbol","SIZER_ATTRIBUTE","Virtualizer","$","config","_classCallCheck","_benchmarkStart","_layout","_clippingAncestors","_scrollSize","_scrollError","_childrenPos","_childMeasurements","_toBeMeasured","Map","_rangeChanged","_itemsChanged","_visibilityChanged","_scrollerController","_isScroller","_sizer","_hostElementRO","_childrenRO","_mutationObserver","_scrollEventListeners","_scrollEventListenerOptions","passive","_loadListener","_childLoaded","_scrollIntoViewTarget","_updateScrollIntoViewCoordinates","_items","_first","_last","_firstVisible","_lastVisible","_scheduled","WeakSet","_measureCallback","_measureChildOverride","_layoutCompletePromise","_layoutCompleteResolver","_layoutCompleteRejecter","_pendingLayoutComplete","_layoutInitialized","_connected","Error","hostElement","_init","set","items","Array","isArray","_schedule","_updateLayout","scroller","_initHostElement","layoutConfig","layout","_initLayout","_initObservers","MutationObserver","_finishDOMUpdate","_hostElementSizeChanged","_childrenSizeChanged","_hostElement","_applyVirtualizerStyles","connected","includeSelf","foundFixed","ancestors","parent","push","getElementAncestors","filter","a","style","getComputedStyle","position","overflow","_observeAndListen","observe","childList","forEach","ancestor","_children","child","target","disconnected","_this$_scrollerContro","disconnect","_this$_hostElementRO","_this$_childrenRO","_rejectLayoutCompletePromise","display","contain","minHeight","_getSizer","sizer","querySelector","createElement","setAttribute","appendChild","Object","assign","margin","padding","visibility","fontSize","textContent","_updateLayoutConfig","_asyncToGenerator","_regeneratorRuntime","mark","_callee","Ctor","type","DefaultLayoutConstructor","_context2","abrupt","stop","updateLayoutConfig","_callee2","copy","_objectSpread","FlowLayout","message","_handleLayoutMessage","measureChildren","updateItemSizes","listenForChildLoadEvents","_context3","startBenchmarking","performance","now","stopBenchmarking","timeElapsed","virtualizationTime","getEntriesByName","e","startTime","reduce","t","m","duration","s","_measureChildren","mm","children","fn","_measureChild","i","length","idx","has","call","clear","_t$getBoundingClientR","marginTop","marginRight","marginBottom","marginLeft","getMargins","_schedule2","_callee3","method","Promise","resolve","delete","_context4","_callee4","state","scrollSize","_adjustRange","childPositions","scrollError","_notifyVisibility","_notifyRange","_context5","_updateDOM","_checkScrollIntoViewTarget","_positionChildren","_sizeHostElement","_correctScrollError","_updateView","reflowIfNeeded","_handleScrollEvent","_this$_layout","measure","console","warn","unpin","handleEvent","event","currentTarget","includes","firstVisible","lastVisible","dispatchEvent","arr","next","firstElementChild","hasAttribute","nextElementSibling","_this$_scrollerContro2","bottom","right","hostElementBounds","ancestorBounds","map","unshift","_iterator","_createForOfIteratorHelper","_step","n","done","bounds","err","f","scrollingElementBounds","offsetWithinScroller","totalScrollSize","viewportSize","viewportScroll","h","transform","concat","minWidth","pos","_ref","index","xOffset","yOffset","boxSizing","_adjustRange2","_callee5","wrap","_callee5$","_context6","prev","_this$_scrollerContro3","_this$_items","_this12","Infinity","scrollIntoView","_scrollElementIntoView","getScrollIntoViewCoordinates","pin","_ref2","_this14","reject","reason","_resetLayoutCompleteState","_scheduleLayoutComplete","_resolveLayoutCompletePromise","changes","_this$_layout2","_iterator2","_step2","change","contentRect","defaultKeyFunction","item","defaultRenderItem","html","_templateObject","_taggedTemplateLiteral","JSON","stringify","virtualize","directive","_m2","_class","part","_virtualizer","_renderItem","_keyFunction","PartType","CHILD","_this16","render","_setFunctions","itemsToRender","repeat","update","itemsChanged","_updateVirtualizerConfig","_initialize","noChange","_updateVirtualizerConfig2","_callee6","_context7","sent","_makeVirtualizer","renderItem","keyFunction","_this18","setValue","reconnected","AsyncDirective","LitVirtualizer","LitElement","F","arguments","_this19","_e6","createRenderRoot","_templateObject2","_this$x","_this$x2","layoutComplete","scrollToIndex","block","__decorate","property","attribute","prototype","reflect","Boolean","customElements","define","_export","NileAutoComplete","L","isDropdownOpen","enableVirtualScroll","openOnFocus","placeholder","noBorder","loading","filterFunction","searchedValue","toLowerCase","renderItemFunction","allMenuItems","menuItems","_this20","_a2","connectedCallback","updated","changedProperties","applyFilter","content","getVirtualizedContent","getContent","_templateObject3","handleSearch","handleFocus","handleClick","_templateObject4","nothing","_this21","_templateObject5","handleSelect","getItemRenderFunction","_this22","_templateObject6","_templateObject7","detail","emit","_this$dropdownElement","dropdownElement","hide","searchValue","show","setTimeout","_this23$dropdownEleme","_this$dropdownElement3","list","filterFn","res","NileElement","styles","query","String","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}
1
+ {"version":3,"file":"nile-auto-complete.cjs.js","sources":["../../../../node_modules/@lit-labs/virtualizer/Virtualizer.js","../../../../node_modules/@lit-labs/virtualizer/virtualize.js","../../../../node_modules/@lit-labs/virtualizer/events.js","../../../../node_modules/@lit-labs/virtualizer/ScrollerController.js","../../../src/nile-auto-complete/nile-auto-complete.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { RangeChangedEvent, VisibilityChangedEvent, UnpinnedEvent, } from './events.js';\nimport { ScrollerController } from './ScrollerController.js';\n// Virtualizer depends on `ResizeObserver`, which is supported in\n// all modern browsers. For developers whose browser support\n// matrix includes older browsers, we include a compatible\n// polyfill in the package; this bit of module state facilitates\n// a simple mechanism (see ./polyfillLoaders/ResizeObserver.js.)\n// for loading the polyfill.\nlet _ResizeObserver = typeof window !== 'undefined' ? window.ResizeObserver : undefined;\n/**\n * Call this function to provide a `ResizeObserver` polyfill for Virtualizer to use.\n * @param Ctor Constructor for a `ResizeObserver` polyfill (recommend using the one provided with the Virtualizer package)\n */\nexport function provideResizeObserver(Ctor) {\n _ResizeObserver = Ctor;\n}\nexport const virtualizerRef = Symbol('virtualizerRef');\nconst SIZER_ATTRIBUTE = 'virtualizer-sizer';\nlet DefaultLayoutConstructor;\n/**\n * Provides virtual scrolling boilerplate.\n *\n * Extensions of this class must set hostElement and layout.\n *\n * Extensions of this class must also override VirtualRepeater's DOM\n * manipulation methods.\n */\nexport class Virtualizer {\n constructor(config) {\n this._benchmarkStart = null;\n this._layout = null;\n this._clippingAncestors = [];\n /**\n * Layout provides these values, we set them on _render().\n * TODO @straversi: Can we find an XOR type, usable for the key here?\n */\n this._scrollSize = null;\n /**\n * Difference between scroll target's current and required scroll offsets.\n * Provided by layout.\n */\n this._scrollError = null;\n /**\n * A list of the positions (top, left) of the children in the current range.\n */\n this._childrenPos = null;\n // TODO: (graynorton): type\n this._childMeasurements = null;\n this._toBeMeasured = new Map();\n this._rangeChanged = true;\n this._itemsChanged = true;\n this._visibilityChanged = true;\n this._scrollerController = null;\n this._isScroller = false;\n this._sizer = null;\n /**\n * Resize observer attached to hostElement.\n */\n this._hostElementRO = null;\n /**\n * Resize observer attached to children.\n */\n this._childrenRO = null;\n this._mutationObserver = null;\n this._scrollEventListeners = [];\n this._scrollEventListenerOptions = {\n passive: true,\n };\n // TODO (graynorton): Rethink, per longer comment below\n this._loadListener = this._childLoaded.bind(this);\n /**\n * Index of element to scroll into view, plus scroll\n * behavior options, as imperatively specified via\n * `element(index).scrollIntoView()`\n */\n this._scrollIntoViewTarget = null;\n this._updateScrollIntoViewCoordinates = null;\n /**\n * Items to render. Set by items.\n */\n this._items = [];\n /**\n * Index of the first child in the range, not necessarily the first visible child.\n * TODO @straversi: Consider renaming these.\n */\n this._first = -1;\n /**\n * Index of the last child in the range.\n */\n this._last = -1;\n /**\n * Index of the first item intersecting the viewport.\n */\n this._firstVisible = -1;\n /**\n * Index of the last item intersecting the viewport.\n */\n this._lastVisible = -1;\n this._scheduled = new WeakSet();\n /**\n * Invoked at the end of each render cycle: children in the range are\n * measured, and their dimensions passed to this callback. Use it to layout\n * children as needed.\n */\n this._measureCallback = null;\n this._measureChildOverride = null;\n /**\n * State for `layoutComplete` promise\n */\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n /**\n * Layout initialization is async because we dynamically load\n * the default layout if none is specified. This state is to track\n * whether init is complete.\n */\n this._layoutInitialized = null;\n /**\n * Track connection state to guard against errors / unnecessary work\n */\n this._connected = false;\n if (!config) {\n throw new Error('Virtualizer constructor requires a configuration object');\n }\n if (config.hostElement) {\n this._init(config);\n }\n else {\n throw new Error('Virtualizer configuration requires the \"hostElement\" property');\n }\n }\n set items(items) {\n if (Array.isArray(items) && items !== this._items) {\n this._itemsChanged = true;\n this._items = items;\n this._schedule(this._updateLayout);\n }\n }\n _init(config) {\n this._isScroller = !!config.scroller;\n this._initHostElement(config);\n // If no layout is specified, we make an empty\n // layout config, which will result in the default\n // layout with default parameters\n const layoutConfig = config.layout || {};\n // Save the promise returned by `_initLayout` as a state\n // variable we can check before updating layout config\n this._layoutInitialized = this._initLayout(layoutConfig);\n }\n _initObservers() {\n this._mutationObserver = new MutationObserver(this._finishDOMUpdate.bind(this));\n this._hostElementRO = new _ResizeObserver(() => this._hostElementSizeChanged());\n this._childrenRO = new _ResizeObserver(this._childrenSizeChanged.bind(this));\n }\n _initHostElement(config) {\n const hostElement = (this._hostElement = config.hostElement);\n this._applyVirtualizerStyles();\n hostElement[virtualizerRef] = this;\n }\n connected() {\n this._initObservers();\n const includeSelf = this._isScroller;\n this._clippingAncestors = getClippingAncestors(this._hostElement, includeSelf);\n this._scrollerController = new ScrollerController(this, this._clippingAncestors[0]);\n this._schedule(this._updateLayout);\n this._observeAndListen();\n this._connected = true;\n }\n _observeAndListen() {\n this._mutationObserver.observe(this._hostElement, { childList: true });\n this._hostElementRO.observe(this._hostElement);\n this._scrollEventListeners.push(window);\n window.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._clippingAncestors.forEach((ancestor) => {\n ancestor.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._scrollEventListeners.push(ancestor);\n this._hostElementRO.observe(ancestor);\n });\n this._hostElementRO.observe(this._scrollerController.element);\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._scrollEventListeners.forEach((target) => target.addEventListener('scroll', this, this._scrollEventListenerOptions));\n }\n disconnected() {\n this._scrollEventListeners.forEach((target) => target.removeEventListener('scroll', this, this._scrollEventListenerOptions));\n this._scrollEventListeners = [];\n this._clippingAncestors = [];\n this._scrollerController?.detach(this);\n this._scrollerController = null;\n this._mutationObserver?.disconnect();\n this._mutationObserver = null;\n this._hostElementRO?.disconnect();\n this._hostElementRO = null;\n this._childrenRO?.disconnect();\n this._childrenRO = null;\n this._rejectLayoutCompletePromise('disconnected');\n this._connected = false;\n }\n _applyVirtualizerStyles() {\n const hostElement = this._hostElement;\n // Would rather set these CSS properties on the host using Shadow Root\n // style scoping (and falling back to a global stylesheet where native\n // Shadow DOM is not available), but this Mobile Safari bug is preventing\n // that from working: https://bugs.webkit.org/show_bug.cgi?id=226195\n const style = hostElement.style;\n style.display = style.display || 'block';\n style.position = style.position || 'relative';\n style.contain = style.contain || 'size layout';\n if (this._isScroller) {\n style.overflow = style.overflow || 'auto';\n style.minHeight = style.minHeight || '150px';\n }\n }\n _getSizer() {\n const hostElement = this._hostElement;\n if (!this._sizer) {\n // Use a preexisting sizer element if provided (for better integration\n // with vDOM renderers)\n let sizer = hostElement.querySelector(`[${SIZER_ATTRIBUTE}]`);\n if (!sizer) {\n sizer = document.createElement('div');\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n hostElement.appendChild(sizer);\n }\n // When the scrollHeight is large, the height of this element might be\n // ignored. Setting content and font-size ensures the element has a size.\n Object.assign(sizer.style, {\n position: 'absolute',\n margin: '-2px 0 0 0',\n padding: 0,\n visibility: 'hidden',\n fontSize: '2px',\n });\n sizer.textContent = '&nbsp;';\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n this._sizer = sizer;\n }\n return this._sizer;\n }\n async updateLayoutConfig(layoutConfig) {\n // If layout initialization hasn't finished yet, we wait\n // for it to finish so we can check whether the new config\n // is compatible with the existing layout before proceeding.\n await this._layoutInitialized;\n const Ctor = layoutConfig.type ||\n // The new config is compatible with the current layout,\n // so we update the config and return true to indicate\n // a successful update\n DefaultLayoutConstructor;\n if (typeof Ctor === 'function' && this._layout instanceof Ctor) {\n const config = { ...layoutConfig };\n delete config.type;\n this._layout.config = config;\n // The new config requires a different layout altogether, but\n // to limit implementation complexity we don't support dynamically\n // changing the layout of an existing virtualizer instance.\n // Returning false here lets the caller know that they should\n // instead make a new virtualizer instance with the desired layout.\n return true;\n }\n return false;\n }\n async _initLayout(layoutConfig) {\n let config;\n let Ctor;\n if (typeof layoutConfig.type === 'function') {\n // If we have a full LayoutSpecifier, the `type` property\n // gives us our constructor...\n Ctor = layoutConfig.type;\n // ...while the rest of the specifier is our layout config\n const copy = { ...layoutConfig };\n delete copy.type;\n config = copy;\n }\n else {\n // If we don't have a full LayoutSpecifier, we just\n // have a config for the default layout\n config = layoutConfig;\n }\n if (Ctor === undefined) {\n // If we don't have a constructor yet, load the default\n DefaultLayoutConstructor = Ctor = (await import('./layouts/flow.js'))\n .FlowLayout;\n }\n this._layout = new Ctor((message) => this._handleLayoutMessage(message), config);\n if (this._layout.measureChildren &&\n typeof this._layout.updateItemSizes === 'function') {\n if (typeof this._layout.measureChildren === 'function') {\n this._measureChildOverride = this._layout.measureChildren;\n }\n this._measureCallback = this._layout.updateItemSizes.bind(this._layout);\n }\n if (this._layout.listenForChildLoadEvents) {\n this._hostElement.addEventListener('load', this._loadListener, true);\n }\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rework benchmarking so that it has no API and\n // instead is always on except in production builds\n startBenchmarking() {\n if (this._benchmarkStart === null) {\n this._benchmarkStart = window.performance.now();\n }\n }\n stopBenchmarking() {\n if (this._benchmarkStart !== null) {\n const now = window.performance.now();\n const timeElapsed = now - this._benchmarkStart;\n const entries = performance.getEntriesByName('uv-virtualizing', 'measure');\n const virtualizationTime = entries\n .filter((e) => e.startTime >= this._benchmarkStart && e.startTime < now)\n .reduce((t, m) => t + m.duration, 0);\n this._benchmarkStart = null;\n return { timeElapsed, virtualizationTime };\n }\n return null;\n }\n _measureChildren() {\n const mm = {};\n const children = this._children;\n const fn = this._measureChildOverride || this._measureChild;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n const idx = this._first + i;\n if (this._itemsChanged || this._toBeMeasured.has(child)) {\n mm[idx] = fn.call(this, child, this._items[idx]);\n }\n }\n this._childMeasurements = mm;\n this._schedule(this._updateLayout);\n this._toBeMeasured.clear();\n }\n /**\n * Returns the width, height, and margins of the given child.\n */\n _measureChild(element) {\n // offsetWidth doesn't take transforms in consideration, so we use\n // getBoundingClientRect which does.\n const { width, height } = element.getBoundingClientRect();\n return Object.assign({ width, height }, getMargins(element));\n }\n async _schedule(method) {\n if (!this._scheduled.has(method)) {\n this._scheduled.add(method);\n await Promise.resolve();\n this._scheduled.delete(method);\n method.call(this);\n }\n }\n async _updateDOM(state) {\n this._scrollSize = state.scrollSize;\n this._adjustRange(state.range);\n this._childrenPos = state.childPositions;\n this._scrollError = state.scrollError || null;\n const { _rangeChanged, _itemsChanged } = this;\n if (this._visibilityChanged) {\n this._notifyVisibility();\n this._visibilityChanged = false;\n }\n if (_rangeChanged || _itemsChanged) {\n this._notifyRange();\n this._rangeChanged = false;\n }\n this._finishDOMUpdate();\n }\n _finishDOMUpdate() {\n if (this._connected) {\n // _childrenRO should be non-null if we're connected\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._checkScrollIntoViewTarget(this._childrenPos);\n this._positionChildren(this._childrenPos);\n this._sizeHostElement(this._scrollSize);\n this._correctScrollError();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _updateLayout() {\n if (this._layout && this._connected) {\n this._layout.items = this._items;\n this._updateView();\n if (this._childMeasurements !== null) {\n // If the layout has been changed, we may have measurements but no callback\n if (this._measureCallback) {\n this._measureCallback(this._childMeasurements);\n }\n this._childMeasurements = null;\n }\n this._layout.reflowIfNeeded();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _handleScrollEvent() {\n if (this._benchmarkStart && 'mark' in window.performance) {\n try {\n window.performance.measure('uv-virtualizing', 'uv-start', 'uv-end');\n }\n catch (e) {\n console.warn('Error measuring performance data: ', e);\n }\n window.performance.mark('uv-start');\n }\n if (this._scrollerController.correctingScrollError === false) {\n // This is a user-initiated scroll, so we unpin the layout\n this._layout?.unpin();\n }\n this._schedule(this._updateLayout);\n }\n handleEvent(event) {\n switch (event.type) {\n case 'scroll':\n if (event.currentTarget === window ||\n this._clippingAncestors.includes(event.currentTarget)) {\n this._handleScrollEvent();\n }\n break;\n default:\n console.warn('event not handled', event);\n }\n }\n _handleLayoutMessage(message) {\n if (message.type === 'stateChanged') {\n this._updateDOM(message);\n }\n else if (message.type === 'visibilityChanged') {\n this._firstVisible = message.firstVisible;\n this._lastVisible = message.lastVisible;\n this._notifyVisibility();\n }\n else if (message.type === 'unpinned') {\n this._hostElement.dispatchEvent(new UnpinnedEvent());\n }\n }\n get _children() {\n const arr = [];\n let next = this._hostElement.firstElementChild;\n while (next) {\n if (!next.hasAttribute(SIZER_ATTRIBUTE)) {\n arr.push(next);\n }\n next = next.nextElementSibling;\n }\n return arr;\n }\n _updateView() {\n const hostElement = this._hostElement;\n const scrollingElement = this._scrollerController?.element;\n const layout = this._layout;\n if (hostElement && scrollingElement && layout) {\n let top, left, bottom, right;\n const hostElementBounds = hostElement.getBoundingClientRect();\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n const ancestorBounds = this._clippingAncestors.map((ancestor) => ancestor.getBoundingClientRect());\n ancestorBounds.unshift(hostElementBounds);\n for (const bounds of ancestorBounds) {\n top = Math.max(top, bounds.top);\n left = Math.max(left, bounds.left);\n bottom = Math.min(bottom, bounds.bottom);\n right = Math.min(right, bounds.right);\n }\n const scrollingElementBounds = scrollingElement.getBoundingClientRect();\n const offsetWithinScroller = {\n left: hostElementBounds.left - scrollingElementBounds.left,\n top: hostElementBounds.top - scrollingElementBounds.top,\n };\n const totalScrollSize = {\n width: scrollingElement.scrollWidth,\n height: scrollingElement.scrollHeight,\n };\n const scrollTop = top - hostElementBounds.top + hostElement.scrollTop;\n const scrollLeft = left - hostElementBounds.left + hostElement.scrollLeft;\n const height = Math.max(0, bottom - top);\n const width = Math.max(0, right - left);\n layout.viewportSize = { width, height };\n layout.viewportScroll = { top: scrollTop, left: scrollLeft };\n layout.totalScrollSize = totalScrollSize;\n layout.offsetWithinScroller = offsetWithinScroller;\n }\n }\n /**\n * Styles the host element so that its size reflects the\n * total size of all items.\n */\n _sizeHostElement(size) {\n // Some browsers seem to crap out if the host element gets larger than\n // a certain size, so we clamp it here (this value based on ad hoc\n // testing in Chrome / Safari / Firefox Mac)\n const max = 8200000;\n const h = size && size.width !== null ? Math.min(max, size.width) : 0;\n const v = size && size.height !== null ? Math.min(max, size.height) : 0;\n if (this._isScroller) {\n this._getSizer().style.transform = `translate(${h}px, ${v}px)`;\n }\n else {\n const style = this._hostElement.style;\n style.minWidth = h ? `${h}px` : '100%';\n style.minHeight = v ? `${v}px` : '100%';\n }\n }\n /**\n * Sets the top and left transform style of the children from the values in\n * pos.\n */\n _positionChildren(pos) {\n if (pos) {\n pos.forEach(({ top, left, width, height, xOffset, yOffset }, index) => {\n const child = this._children[index - this._first];\n if (child) {\n child.style.position = 'absolute';\n child.style.boxSizing = 'border-box';\n child.style.transform = `translate(${left}px, ${top}px)`;\n if (width !== undefined) {\n child.style.width = width + 'px';\n }\n if (height !== undefined) {\n child.style.height = height + 'px';\n }\n child.style.left =\n xOffset === undefined ? null : xOffset + 'px';\n child.style.top =\n yOffset === undefined ? null : yOffset + 'px';\n }\n });\n }\n }\n async _adjustRange(range) {\n const { _first, _last, _firstVisible, _lastVisible } = this;\n this._first = range.first;\n this._last = range.last;\n this._firstVisible = range.firstVisible;\n this._lastVisible = range.lastVisible;\n this._rangeChanged =\n this._rangeChanged || this._first !== _first || this._last !== _last;\n this._visibilityChanged =\n this._visibilityChanged ||\n this._firstVisible !== _firstVisible ||\n this._lastVisible !== _lastVisible;\n }\n _correctScrollError() {\n if (this._scrollError) {\n const { scrollTop, scrollLeft } = this._scrollerController;\n const { top, left } = this._scrollError;\n this._scrollError = null;\n this._scrollerController.correctScrollError({\n top: scrollTop - top,\n left: scrollLeft - left,\n });\n }\n }\n element(index) {\n if (index === Infinity) {\n index = this._items.length - 1;\n }\n return this._items?.[index] === undefined\n ? undefined\n : {\n scrollIntoView: (options = {}) => this._scrollElementIntoView({ ...options, index }),\n };\n }\n _scrollElementIntoView(options) {\n if (options.index >= this._first && options.index <= this._last) {\n this._children[options.index - this._first].scrollIntoView(options);\n }\n else {\n options.index = Math.min(options.index, this._items.length - 1);\n if (options.behavior === 'smooth') {\n const coordinates = this._layout.getScrollIntoViewCoordinates(options);\n const { behavior } = options;\n this._updateScrollIntoViewCoordinates =\n this._scrollerController.managedScrollTo(Object.assign(coordinates, { behavior }), () => this._layout.getScrollIntoViewCoordinates(options), () => (this._scrollIntoViewTarget = null));\n this._scrollIntoViewTarget = options;\n }\n else {\n this._layout.pin = options;\n }\n }\n }\n /**\n * If we are smoothly scrolling to an element and the target element\n * is in the DOM, we update our target coordinates as needed\n */\n _checkScrollIntoViewTarget(pos) {\n const { index } = this._scrollIntoViewTarget || {};\n if (index && pos?.has(index)) {\n this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget));\n }\n }\n /**\n * Emits a rangechange event with the current first, last, firstVisible, and\n * lastVisible.\n */\n _notifyRange() {\n this._hostElement.dispatchEvent(new RangeChangedEvent({ first: this._first, last: this._last }));\n }\n _notifyVisibility() {\n this._hostElement.dispatchEvent(new VisibilityChangedEvent({\n first: this._firstVisible,\n last: this._lastVisible,\n }));\n }\n get layoutComplete() {\n // Lazily create promise\n if (!this._layoutCompletePromise) {\n this._layoutCompletePromise = new Promise((resolve, reject) => {\n this._layoutCompleteResolver = resolve;\n this._layoutCompleteRejecter = reject;\n });\n }\n return this._layoutCompletePromise;\n }\n _rejectLayoutCompletePromise(reason) {\n if (this._layoutCompleteRejecter !== null) {\n this._layoutCompleteRejecter(reason);\n }\n this._resetLayoutCompleteState();\n }\n _scheduleLayoutComplete() {\n // Don't do anything unless we have a pending promise\n // And only request a frame if we haven't already done so\n if (this._layoutCompletePromise && this._pendingLayoutComplete === null) {\n // Wait one additional frame to be sure the layout is stable\n this._pendingLayoutComplete = requestAnimationFrame(() => requestAnimationFrame(() => this._resolveLayoutCompletePromise()));\n }\n }\n _resolveLayoutCompletePromise() {\n if (this._layoutCompleteResolver !== null) {\n this._layoutCompleteResolver();\n }\n this._resetLayoutCompleteState();\n }\n _resetLayoutCompleteState() {\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n }\n /**\n * Render and update the view at the next opportunity with the given\n * hostElement size.\n */\n _hostElementSizeChanged() {\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rethink how this works. Probably child loading is too specific\n // to have dedicated support for; might want some more generic lifecycle hooks for\n // layouts to use. Possibly handle measurement this way, too, or maybe that remains\n // a first-class feature?\n _childLoaded() { }\n // This is the callback for the ResizeObserver that watches the\n // virtualizer's children. We land here at the end of every virtualizer\n // update cycle that results in changes to physical items, and we also\n // end up here if one or more children change size independently of\n // the virtualizer update cycle.\n _childrenSizeChanged(changes) {\n // Only measure if the layout requires it\n if (this._layout?.measureChildren) {\n for (const change of changes) {\n this._toBeMeasured.set(change.target, change.contentRect);\n }\n this._measureChildren();\n }\n // If this is the end of an update cycle, we need to reset some\n // internal state. This should be a harmless no-op if we're handling\n // an out-of-cycle ResizeObserver callback, so we don't need to\n // distinguish between the two cases.\n this._scheduleLayoutComplete();\n this._itemsChanged = false;\n this._rangeChanged = false;\n }\n}\nfunction getMargins(el) {\n const style = window.getComputedStyle(el);\n return {\n marginTop: getMarginValue(style.marginTop),\n marginRight: getMarginValue(style.marginRight),\n marginBottom: getMarginValue(style.marginBottom),\n marginLeft: getMarginValue(style.marginLeft),\n };\n}\nfunction getMarginValue(value) {\n const float = value ? parseFloat(value) : NaN;\n return Number.isNaN(float) ? 0 : float;\n}\n// TODO (graynorton): Deal with iframes?\nfunction getParentElement(el) {\n if (el.assignedSlot !== null) {\n return el.assignedSlot;\n }\n if (el.parentElement !== null) {\n return el.parentElement;\n }\n const parentNode = el.parentNode;\n if (parentNode && parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n return parentNode.host || null;\n }\n return null;\n}\n///\nfunction getElementAncestors(el, includeSelf = false) {\n const ancestors = [];\n let parent = includeSelf ? el : getParentElement(el);\n while (parent !== null) {\n ancestors.push(parent);\n parent = getParentElement(parent);\n }\n return ancestors;\n}\nfunction getClippingAncestors(el, includeSelf = false) {\n let foundFixed = false;\n return getElementAncestors(el, includeSelf).filter((a) => {\n if (foundFixed) {\n return false;\n }\n const style = getComputedStyle(a);\n foundFixed = style.position === 'fixed';\n return style.overflow !== 'visible';\n });\n}\n//# sourceMappingURL=Virtualizer.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { html, noChange } from 'lit';\nimport { directive, PartType } from 'lit/directive.js';\nimport { AsyncDirective } from 'lit/async-directive.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { Virtualizer } from './Virtualizer.js';\nexport { virtualizerRef } from './Virtualizer.js';\nexport const defaultKeyFunction = (item) => item;\nexport const defaultRenderItem = (item, idx) => html `${idx}: ${JSON.stringify(item, null, 2)}`;\nclass VirtualizeDirective extends AsyncDirective {\n constructor(part) {\n super(part);\n this._virtualizer = null;\n this._first = 0;\n this._last = -1;\n this._renderItem = (item, idx) => defaultRenderItem(item, idx + this._first);\n this._keyFunction = (item, idx) => defaultKeyFunction(item, idx + this._first);\n this._items = [];\n if (part.type !== PartType.CHILD) {\n throw new Error('The virtualize directive can only be used in child expressions');\n }\n }\n render(config) {\n if (config) {\n this._setFunctions(config);\n }\n const itemsToRender = [];\n if (this._first >= 0 && this._last >= this._first) {\n for (let i = this._first; i <= this._last; i++) {\n itemsToRender.push(this._items[i]);\n }\n }\n return repeat(itemsToRender, this._keyFunction, this._renderItem);\n }\n update(part, [config]) {\n this._setFunctions(config);\n const itemsChanged = this._items !== config.items;\n this._items = config.items || [];\n if (this._virtualizer) {\n this._updateVirtualizerConfig(part, config);\n }\n else {\n this._initialize(part, config);\n }\n return itemsChanged ? noChange : this.render();\n }\n async _updateVirtualizerConfig(part, config) {\n const compatible = await this._virtualizer.updateLayoutConfig(config.layout || {});\n if (!compatible) {\n const hostElement = part.parentNode;\n this._makeVirtualizer(hostElement, config);\n }\n this._virtualizer.items = this._items;\n }\n _setFunctions(config) {\n const { renderItem, keyFunction } = config;\n if (renderItem) {\n this._renderItem = (item, idx) => renderItem(item, idx + this._first);\n }\n if (keyFunction) {\n this._keyFunction = (item, idx) => keyFunction(item, idx + this._first);\n }\n }\n _makeVirtualizer(hostElement, config) {\n if (this._virtualizer) {\n this._virtualizer.disconnected();\n }\n const { layout, scroller, items } = config;\n this._virtualizer = new Virtualizer({ hostElement, layout, scroller });\n this._virtualizer.items = items;\n this._virtualizer.connected();\n }\n _initialize(part, config) {\n const hostElement = part.parentNode;\n if (hostElement && hostElement.nodeType === 1) {\n hostElement.addEventListener('rangeChanged', (e) => {\n this._first = e.first;\n this._last = e.last;\n this.setValue(this.render());\n });\n this._makeVirtualizer(hostElement, config);\n }\n }\n disconnected() {\n this._virtualizer?.disconnected();\n }\n reconnected() {\n this._virtualizer?.connected();\n }\n}\nexport const virtualize = directive(VirtualizeDirective);\n//# sourceMappingURL=virtualize.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class RangeChangedEvent extends Event {\n constructor(range) {\n super(RangeChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nRangeChangedEvent.eventName = 'rangeChanged';\nexport class VisibilityChangedEvent extends Event {\n constructor(range) {\n super(VisibilityChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nVisibilityChangedEvent.eventName = 'visibilityChanged';\nexport class UnpinnedEvent extends Event {\n constructor() {\n super(UnpinnedEvent.eventName, { bubbles: false });\n }\n}\nUnpinnedEvent.eventName = 'unpinned';\n//# sourceMappingURL=events.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class ScrollerShim {\n constructor(element) {\n this._element = null;\n const node = element ?? window;\n this._node = node;\n if (element) {\n this._element = element;\n }\n }\n get element() {\n return (this._element || document.scrollingElement || document.documentElement);\n }\n get scrollTop() {\n return this.element.scrollTop || window.scrollY;\n }\n get scrollLeft() {\n return this.element.scrollLeft || window.scrollX;\n }\n get scrollHeight() {\n return this.element.scrollHeight;\n }\n get scrollWidth() {\n return this.element.scrollWidth;\n }\n get viewportHeight() {\n return this._element\n ? this._element.getBoundingClientRect().height\n : window.innerHeight;\n }\n get viewportWidth() {\n return this._element\n ? this._element.getBoundingClientRect().width\n : window.innerWidth;\n }\n get maxScrollTop() {\n return this.scrollHeight - this.viewportHeight;\n }\n get maxScrollLeft() {\n return this.scrollWidth - this.viewportWidth;\n }\n}\nexport class ScrollerController extends ScrollerShim {\n constructor(client, element) {\n super(element);\n this._clients = new Set();\n this._retarget = null;\n this._end = null;\n this.__destination = null;\n this.correctingScrollError = false;\n this._checkForArrival = this._checkForArrival.bind(this);\n this._updateManagedScrollTo = this._updateManagedScrollTo.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n this.scrollBy = this.scrollBy.bind(this);\n const node = this._node;\n this._originalScrollTo = node.scrollTo;\n this._originalScrollBy = node.scrollBy;\n this._originalScroll = node.scroll;\n this._attach(client);\n }\n get _destination() {\n return this.__destination;\n }\n get scrolling() {\n return this._destination !== null;\n }\n scrollTo(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n this._scrollTo(options);\n }\n scrollBy(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n if (options.top !== undefined) {\n options.top += this.scrollTop;\n }\n if (options.left !== undefined) {\n options.left += this.scrollLeft;\n }\n this._scrollTo(options);\n }\n _nativeScrollTo(options) {\n this._originalScrollTo.bind(this._element || window)(options);\n }\n _scrollTo(options, retarget = null, end = null) {\n if (this._end !== null) {\n this._end();\n }\n if (options.behavior === 'smooth') {\n this._setDestination(options);\n this._retarget = retarget;\n this._end = end;\n }\n else {\n this._resetScrollState();\n }\n this._nativeScrollTo(options);\n }\n _setDestination(options) {\n let { top, left } = options;\n top =\n top === undefined\n ? undefined\n : Math.max(0, Math.min(top, this.maxScrollTop));\n left =\n left === undefined\n ? undefined\n : Math.max(0, Math.min(left, this.maxScrollLeft));\n if (this._destination !== null &&\n left === this._destination.left &&\n top === this._destination.top) {\n return false;\n }\n this.__destination = { top, left, behavior: 'smooth' };\n return true;\n }\n _resetScrollState() {\n this.__destination = null;\n this._retarget = null;\n this._end = null;\n }\n _updateManagedScrollTo(coordinates) {\n if (this._destination) {\n if (this._setDestination(coordinates)) {\n this._nativeScrollTo(this._destination);\n }\n }\n }\n managedScrollTo(options, retarget, end) {\n this._scrollTo(options, retarget, end);\n return this._updateManagedScrollTo;\n }\n correctScrollError(coordinates) {\n this.correctingScrollError = true;\n requestAnimationFrame(() => requestAnimationFrame(() => (this.correctingScrollError = false)));\n // Correct the error\n this._nativeScrollTo(coordinates);\n // Then, if we were headed for a specific destination, we continue scrolling:\n // First, we update our target destination, if applicable...\n if (this._retarget) {\n this._setDestination(this._retarget());\n }\n // Then we go ahead and resume scrolling\n if (this._destination) {\n this._nativeScrollTo(this._destination);\n }\n }\n _checkForArrival() {\n if (this._destination !== null) {\n const { scrollTop, scrollLeft } = this;\n let { top, left } = this._destination;\n top = Math.min(top || 0, this.maxScrollTop);\n left = Math.min(left || 0, this.maxScrollLeft);\n const topDiff = Math.abs(top - scrollTop);\n const leftDiff = Math.abs(left - scrollLeft);\n // We check to see if we've arrived at our destination.\n if (topDiff < 1 && leftDiff < 1) {\n if (this._end) {\n this._end();\n }\n this._resetScrollState();\n }\n }\n }\n detach(client) {\n this._clients.delete(client);\n /**\n * If there aren't any more clients, then return the node's default\n * scrolling methods\n */\n if (this._clients.size === 0) {\n this._node.scrollTo = this._originalScrollTo;\n this._node.scrollBy = this._originalScrollBy;\n this._node.scroll = this._originalScroll;\n this._node.removeEventListener('scroll', this._checkForArrival);\n }\n return null;\n }\n _attach(client) {\n this._clients.add(client);\n /**\n * The node should only have the methods shimmed when adding the first\n * client – otherwise it's redundant\n */\n if (this._clients.size === 1) {\n this._node.scrollTo = this.scrollTo;\n this._node.scrollBy = this.scrollBy;\n this._node.scroll = this.scrollTo;\n this._node.addEventListener('scroll', this._checkForArrival);\n }\n }\n}\n//# sourceMappingURL=ScrollerController.js.map","import {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n nothing,\n} from 'lit';\nimport { customElement, query, state, property } from 'lit/decorators.js';\nimport { styles } from './nile-auto-complete.css';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup, PropertyValues } from 'lit';\nimport { NileDropdown } from '../nile-dropdown';\n\nimport { virtualize } from '@lit-labs/virtualizer/virtualize.js';\n\n// Define the custom element 'nile-auto-complete'\n@customElement('nile-auto-complete')\nexport class NileAutoComplete extends NileElement {\n\n static styles: CSSResultGroup = styles;\n\n @query('nile-dropdown') dropdownElement: NileDropdown;\n\n // Define component properties\n\n @property({ type: Boolean }) disabled: boolean = false;\n\n @property({ type: Boolean }) isDropdownOpen: boolean = false;\n\n @property({ type: Boolean }) enableVirtualScroll: boolean = false;\n\n @property({ type: Boolean }) openOnFocus: boolean = false;\n\n @property({ type: String }) value: string = '';\n\n @property({ type: String }) placeholder: string = 'Type here ..';\n\n @property({ type: Boolean }) noBorder: boolean = false;\n\n @property({ type: Boolean }) loading: boolean = false;\n\n @property({ attribute:false}) filterFunction: (item:string,searchedValue:string)=>boolean=(item:string,searchedValue:string)=>item.toLowerCase().includes(searchedValue.toLowerCase());\n\n @property({ attribute:false}) renderItemFunction: (item:any)=>string = (item:any)=>item;\n\n @property({ type: Array }) allMenuItems: any = [];\n\n @state() menuItems: any = [];\n\n connectedCallback() {\n super.connectedCallback();\n this.renderItemFunction=(item:any)=>item;\n }\n\n protected updated(changedProperties: PropertyValues): void {\n super.updated(changedProperties);\n if (changedProperties.has('allMenuItems')){\n this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n this.setVirtualMenuWidth();\n }\n if (changedProperties.has('isDropdownOpen')) this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n if (changedProperties.has('value')){\n this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n }\n }\n\n public render(): TemplateResult {\n const content=this.enableVirtualScroll?this.getVirtualizedContent():this.getContent();\n return html`\n <nile-dropdown class=\"nile-dropdown--input\" ?open=${this.isDropdownOpen} noOpenOnCLick>\n <nile-input class=\"nile-auto-complete--input\"\n ?no-border=${this.noBorder}\n .disabled=${this.disabled}\n .value=${this.value}\n @nile-input=${this.handleSearch}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n slot=\"trigger\"\n placeholder=${this.placeholder}\n >\n ${this.loading?html`<nile-icon slot=\"suffix\" color=\"var(--nile-colors-primary-600)\" name=\"button-loading-blue-animated\"></nile-icon>`:nothing}\n </nile-input>\n ${this.menuItems.length > 0 && !this.loading\n ? content\n : nothing}\n </nile-dropdown>\n `;\n } \n \n getVirtualizedContent():TemplateResult{\n return html`\n <nile-menu class=\"virtualized__menu\" @nile-select=${this.handleSelect} id=\"content-menu\" exportparts=\"menu__items-wrapper:options__wrapper\">\n ${virtualize({\n items: this.menuItems,\n renderItem: (item:any):TemplateResult=>this.getItemRenderFunction(item),\n\t\t\t\t\tscroller:true\n })}\n </nile-menu>\n `\n }\n\n getContent():TemplateResult{\n return html`\n <nile-menu id=\"content-menu\" @nile-select=${this.handleSelect} exportparts=\"menu__items-wrapper:options__wrapper\">\n ${this.menuItems.map((item: any) => this.getItemRenderFunction(item))}\n </nile-menu>`\n }\n\n getItemRenderFunction(item:any):TemplateResult{\n const value=this.renderItemFunction(item)\n return html`\n <nile-menu-item value=${value}>\n ${value}\n </nile-menu-item>\n `;\n }\n\n private handleSelect(event: CustomEvent) {\n this.value = event.detail.value;\n this.emit('nile-complete', { value: event.detail.value });\n this.emit('nile-input', { value: event.detail.value });\n this.isDropdownOpen = false;\n this.dropdownElement?.hide();\n }\n\n private setVirtualMenuWidth() {\n const maxLengthOption = this.menuItems\n .reduce((acc: number, curr: any) => {\n const currLength = this.renderItemFunction(curr).length\n return acc > currLength ? acc : currLength\n }, 0)\n const defaultWith = 110;\n const pixelMultiplier = 9.5;\n const menuWidth = maxLengthOption * pixelMultiplier < defaultWith ? defaultWith : maxLengthOption * pixelMultiplier;\n this.style.setProperty(\"--virtual-scroll-container-width\", menuWidth + \"px\");\n }\n\n private handleSearch(event: CustomEvent) {\n this.value = event.detail.value.toLowerCase();\n\n // Filter menu items based on the search value\n this.menuItems = this.applyFilter(this.allMenuItems,this.filterFunction);\n\n this.isDropdownOpen = this.menuItems.length > 0;\n if (this.isDropdownOpen) this.dropdownElement?.show();\n }\n\n public handleFocus() {\n if (!this.openOnFocus) {\n return;\n }\n\n // Delay opening the dropdown to allow focus to take effect\n setTimeout(() => {\n this.isDropdownOpen = true;\n this.dropdownElement?.show();\n }, 300);\n }\n\n private handleClick() {\n this.isDropdownOpen = true;\n this.dropdownElement?.show();\n }\n\n applyFilter<T>(list: T[], filterFn: (item: T,searchValue?:string) => boolean): T[] {\n if(typeof(list)!=='object') return []\n const res:T[]=[]\n list.forEach( el=> filterFn(el,this.value) && res.push(el) )\n return res\n }\n\n}\n\nexport default NileAutoComplete;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-auto-complete': NileAutoComplete;\n }\n}"],"names":["getMarginValue","value","float","parseFloat","NaN","Number","isNaN","getParentElement","el","assignedSlot","parentElement","parentNode","nodeType","Node","DOCUMENT_FRAGMENT_NODE","host","setters","_tslib","RangeChangedEvent","Event","m","range","super","eventName","bubbles","this","first","last","_this","_inherits","_Event","_createClass","_wrapNativeSuper","VisibilityChangedEvent","f","_this2","_Event2","UnpinnedEvent","w","constructor","ScrollerShim","v","element","_element","node","window","_node","key","get","document","scrollingElement","documentElement","scrollTop","scrollY","scrollLeft","scrollX","scrollHeight","scrollWidth","getBoundingClientRect","height","innerHeight","width","innerWidth","viewportHeight","viewportWidth","ScrollerController","g","client","_clients","Set","_retarget","_end","__destination","correctingScrollError","_checkForArrival","bind","_updateManagedScrollTo","scrollTo","scrollBy","_originalScrollTo","_originalScrollBy","_originalScroll","scroll","_attach","_this3","_v","_destination","p1","p2","options","left","top","_scrollTo","undefined","_nativeScrollTo","retarget","end","behavior","_setDestination","_resetScrollState","Math","max","min","maxScrollTop","maxScrollLeft","coordinates","managedScrollTo","correctScrollError","requestAnimationFrame","_this$_destination","topDiff","abs","leftDiff","detach","size","removeEventListener","add","addEventListener","_ResizeObserver","ResizeObserver","virtualizerRef","Symbol","SIZER_ATTRIBUTE","Virtualizer","S","config","_classCallCheck","_benchmarkStart","_layout","_clippingAncestors","_scrollSize","_scrollError","_childrenPos","_childMeasurements","_toBeMeasured","Map","_rangeChanged","_itemsChanged","_visibilityChanged","_scrollerController","_isScroller","_sizer","_hostElementRO","_childrenRO","_mutationObserver","_scrollEventListeners","_scrollEventListenerOptions","passive","_loadListener","_childLoaded","_scrollIntoViewTarget","_updateScrollIntoViewCoordinates","_items","_first","_last","_firstVisible","_lastVisible","_scheduled","WeakSet","_measureCallback","_measureChildOverride","_layoutCompletePromise","_layoutCompleteResolver","_layoutCompleteRejecter","_pendingLayoutComplete","_layoutInitialized","_connected","Error","hostElement","_init","set","items","Array","isArray","_schedule","_updateLayout","scroller","_initHostElement","layoutConfig","layout","_initLayout","_initObservers","MutationObserver","_finishDOMUpdate","_hostElementSizeChanged","_childrenSizeChanged","_hostElement","_applyVirtualizerStyles","connected","includeSelf","foundFixed","ancestors","parent","push","getElementAncestors","filter","a","style","getComputedStyle","position","overflow","_observeAndListen","observe","childList","forEach","ancestor","_children","child","target","disconnected","_this$_scrollerContro","_this$_mutationObserv","disconnect","_rejectLayoutCompletePromise","display","contain","minHeight","_getSizer","sizer","querySelector","concat","createElement","setAttribute","appendChild","Object","assign","margin","padding","visibility","fontSize","textContent","_updateLayoutConfig","_asyncToGenerator","_regeneratorRuntime","mark","_callee","Ctor","type","DefaultLayoutConstructor","_context2","next","abrupt","stop","updateLayoutConfig","_callee2","copy","_objectSpread","FlowLayout","message","_handleLayoutMessage","measureChildren","updateItemSizes","listenForChildLoadEvents","_context3","startBenchmarking","performance","now","stopBenchmarking","timeElapsed","virtualizationTime","getEntriesByName","e","startTime","reduce","t","duration","_measureChildren","mm","children","fn","_measureChild","i","length","idx","has","call","clear","_t$getBoundingClientR","s","marginTop","marginRight","marginBottom","marginLeft","getMargins","_schedule2","_callee3","method","Promise","resolve","_callee4","state","scrollSize","_adjustRange","childPositions","scrollError","_notifyVisibility","_notifyRange","_context5","_updateDOM","_checkScrollIntoViewTarget","_positionChildren","_sizeHostElement","_correctScrollError","_updateView","reflowIfNeeded","_handleScrollEvent","measure","console","warn","unpin","handleEvent","event","currentTarget","includes","firstVisible","lastVisible","dispatchEvent","arr","firstElementChild","hasAttribute","nextElementSibling","bottom","right","hostElementBounds","ancestorBounds","map","unshift","_iterator","_createForOfIteratorHelper","_step","n","done","bounds","err","scrollingElementBounds","offsetWithinScroller","totalScrollSize","viewportSize","viewportScroll","h","transform","minWidth","pos","_ref","index","yOffset","xOffset","boxSizing","_adjustRange2","_callee5","wrap","_callee5$","_context6","prev","_this$_scrollerContro3","_this$_items","_this12","Infinity","scrollIntoView","arguments","_scrollElementIntoView","getScrollIntoViewCoordinates","pin","_ref2","layoutComplete","reject","reason","_resetLayoutCompleteState","_scheduleLayoutComplete","_resolveLayoutCompletePromise","changes","_this$_layout2","_iterator2","_step2","change","contentRect","virtualize","directive","_d2","_class","part","_virtualizer","_renderItem","item","html","_templateObject","_taggedTemplateLiteral","JSON","stringify","_keyFunction","PartType","CHILD","_this16","render","_setFunctions","itemsToRender","repeat","update","itemsChanged","_updateVirtualizerConfig","_initialize","noChange","_updateVirtualizerConfig2","_callee6","_s2","_callee6$","_context7","sent","_makeVirtualizer","_this17","renderItem","keyFunction","_this18","setValue","reconnected","AsyncDirective","_export","NileAutoComplete","z","disabled","isDropdownOpen","enableVirtualScroll","openOnFocus","placeholder","noBorder","loading","filterFunction","searchedValue","toLowerCase","renderItemFunction","allMenuItems","menuItems","_this19","_u2","connectedCallback","updated","changedProperties","applyFilter","setVirtualMenuWidth","content","getVirtualizedContent","getContent","_templateObject2","handleSearch","handleFocus","handleClick","_templateObject3","nothing","_this20","_templateObject4","handleSelect","getItemRenderFunction","_this21","_templateObject5","_templateObject6","detail","emit","dropdownElement","hide","maxLengthOption","acc","curr","currLength","menuWidth","setProperty","show","setTimeout","_this23$dropdownEleme","_this$dropdownElement3","list","filterFn","_this24","_typeof","res","NileElement","styles","__decorate","query","prototype","property","Boolean","String","attribute","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
@@ -1,2 +1,2 @@
1
- System.register(["lit"],function(_export,_context){"use strict";var i,_templateObject,t;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}return{setters:[function(_lit){i=_lit.css;}],execute:function execute(){_export("s",t=i(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n :host {\n --virtual-scroll-container-width:100px;\n }\n\n .nile-dropdown--input {\n width: 100%;\n }\n\n .nile-dropdown--input lit-virtualizer{\n min-width: var(--virtual-scroll-container-width)!important;\n }\n\n .nile-dropdown--input nile-menu-item{\n width:100%;\n }\n\n .nile-auto-complete--input {\n width: 100%;\n }\n"]))));}};});
1
+ System.register(["lit"],function(_export,_context){"use strict";var i,_templateObject,t;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}return{setters:[function(_lit){i=_lit.css;}],execute:function execute(){_export("s",t=i(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n :host {\n --virtual-scroll-container-width:110px;\n --virtual-scroll-container-height:200px;\n }\n\n .nile-dropdown--input {\n width: 100%;\n }\n\n .virtualized__menu{\n min-width: var(--virtual-scroll-container-width);\n min-height: var(--virtual-scroll-container-height) !important;\n }\n\n .virtualized__menu nile-menu-item{\n width:100%;\n }\n\n .nile-auto-complete--input {\n width: 100%;\n }\n"]))));}};});
2
2
  //# sourceMappingURL=nile-auto-complete.css.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-auto-complete.css.cjs.js","sources":["../../../src/nile-auto-complete/nile-auto-complete.css.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * AutoComplete CSS\n */\nexport const styles = css`\n :host {\n --virtual-scroll-container-width:100px;\n }\n\n .nile-dropdown--input {\n width: 100%;\n }\n\n .nile-dropdown--input lit-virtualizer{\n min-width: var(--virtual-scroll-container-width)!important;\n }\n\n .nile-dropdown--input nile-menu-item{\n width:100%;\n }\n\n .nile-auto-complete--input {\n width: 100%;\n }\n`;\n\nexport default [styles];\n"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"oTAYaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
1
+ {"version":3,"file":"nile-auto-complete.css.cjs.js","sources":["../../../src/nile-auto-complete/nile-auto-complete.css.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * AutoComplete CSS\n */\nexport const styles = css`\n :host {\n --virtual-scroll-container-width:110px;\n --virtual-scroll-container-height:200px;\n }\n\n .nile-dropdown--input {\n width: 100%;\n }\n\n .virtualized__menu{\n min-width: var(--virtual-scroll-container-width);\n min-height: var(--virtual-scroll-container-height) !important;\n }\n\n .virtualized__menu nile-menu-item{\n width:100%;\n }\n\n .nile-auto-complete--input {\n width: 100%;\n }\n`;\n\nexport default [styles];\n"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"oTAYaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
@@ -1,17 +1,19 @@
1
1
  import{css as i}from"lit";const t=i`
2
2
  :host {
3
- --virtual-scroll-container-width:100px;
3
+ --virtual-scroll-container-width:110px;
4
+ --virtual-scroll-container-height:200px;
4
5
  }
5
6
 
6
7
  .nile-dropdown--input {
7
8
  width: 100%;
8
9
  }
9
10
 
10
- .nile-dropdown--input lit-virtualizer{
11
- min-width: var(--virtual-scroll-container-width)!important;
11
+ .virtualized__menu{
12
+ min-width: var(--virtual-scroll-container-width);
13
+ min-height: var(--virtual-scroll-container-height) !important;
12
14
  }
13
15
 
14
- .nile-dropdown--input nile-menu-item{
16
+ .virtualized__menu nile-menu-item{
15
17
  width:100%;
16
18
  }
17
19