@ascentgl/ads-ui 20.0.41 → 20.0.42

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 (35) hide show
  1. package/fesm2022/ascentgl-ads-ui-src-lib-components-avatar.mjs +7 -7
  2. package/fesm2022/ascentgl-ads-ui-src-lib-components-avatar.mjs.map +1 -1
  3. package/fesm2022/ascentgl-ads-ui-src-lib-components-buttons-button-container.mjs +7 -7
  4. package/fesm2022/ascentgl-ads-ui-src-lib-components-buttons-button-container.mjs.map +1 -1
  5. package/fesm2022/ascentgl-ads-ui-src-lib-components-drag-and-drop-list.mjs +7 -7
  6. package/fesm2022/ascentgl-ads-ui-src-lib-components-drag-and-drop-list.mjs.map +1 -1
  7. package/fesm2022/ascentgl-ads-ui-src-lib-components-error-page-error-page-code.mjs +7 -7
  8. package/fesm2022/ascentgl-ads-ui-src-lib-components-error-page-error-page-code.mjs.map +1 -1
  9. package/fesm2022/ascentgl-ads-ui-src-lib-components-footer-container.mjs +7 -7
  10. package/fesm2022/ascentgl-ads-ui-src-lib-components-footer-container.mjs.map +1 -1
  11. package/fesm2022/ascentgl-ads-ui-src-lib-components-footer.mjs +7 -7
  12. package/fesm2022/ascentgl-ads-ui-src-lib-components-footer.mjs.map +1 -1
  13. package/fesm2022/ascentgl-ads-ui-src-lib-components-header-container.mjs +7 -7
  14. package/fesm2022/ascentgl-ads-ui-src-lib-components-header-container.mjs.map +1 -1
  15. package/fesm2022/ascentgl-ads-ui-src-lib-components-header.mjs +7 -7
  16. package/fesm2022/ascentgl-ads-ui-src-lib-components-header.mjs.map +1 -1
  17. package/fesm2022/ascentgl-ads-ui-src-lib-components-logo-primary-logo.mjs +10 -10
  18. package/fesm2022/ascentgl-ads-ui-src-lib-components-logo-primary-logo.mjs.map +1 -1
  19. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-bar.mjs +7 -7
  20. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-bar.mjs.map +1 -1
  21. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-indicator-spinner.mjs +7 -7
  22. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-indicator-spinner.mjs.map +1 -1
  23. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-spinner.mjs +7 -7
  24. package/fesm2022/ascentgl-ads-ui-src-lib-components-progress-indicators-progress-spinner.mjs.map +1 -1
  25. package/fesm2022/ascentgl-ads-ui-src-lib-components-shell-layout.mjs +7 -7
  26. package/fesm2022/ascentgl-ads-ui-src-lib-components-shell-layout.mjs.map +1 -1
  27. package/fesm2022/ascentgl-ads-ui-src-lib-components-splash-page.mjs +7 -7
  28. package/fesm2022/ascentgl-ads-ui-src-lib-components-splash-page.mjs.map +1 -1
  29. package/fesm2022/ascentgl-ads-ui-src-lib-components-tags-tag-container.mjs +7 -7
  30. package/fesm2022/ascentgl-ads-ui-src-lib-components-tags-tag-container.mjs.map +1 -1
  31. package/fesm2022/ascentgl-ads-ui.mjs +587 -581
  32. package/fesm2022/ascentgl-ads-ui.mjs.map +1 -1
  33. package/index.d.ts +7 -7
  34. package/package.json +9 -9
  35. package/src/assets/sass/ads-ui/overrides/angular-material/_menu.scss +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ascentgl-ads-ui-src-lib-components-drag-and-drop-list.mjs","sources":["../tmp-esm2022/src/lib/components/drag-and-drop-list/dom.element.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/dragged.placeholder.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/drag-and-drop-list.component.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/drag-and-drop-list.module.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/ascentgl-ads-ui-src-lib-components-drag-and-drop-list.js"],"sourcesContent":["export class DomElement {\n constructor(domElement) {\n this.domElement = domElement;\n }\n get dom() {\n return this.domElement;\n }\n canDrop() {\n return !this.dom.classList.contains(\"no-drop\" /* dragAndDropListClass.NO_DROP */);\n }\n canDrag() {\n return !this.dom.classList.contains(\"no-drag\" /* dragAndDropListClass.NO_DRAG */);\n }\n isDropBlocked() {\n return this.dom.classList.contains(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n makeDraggable() {\n this.dom.setAttribute('draggable', 'true');\n }\n makeUnDraggable() {\n this.dom.removeAttribute('draggable');\n }\n unblockDrop() {\n this.dom.classList.remove(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n clone() {\n const clone = this.dom.cloneNode(true);\n clone.classList.add(\"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */);\n const targetRect = this.dom.getBoundingClientRect();\n /**\n * preserve target dimensions\n */\n clone.style.width = targetRect.width + 'px';\n clone.style.height = targetRect.height + 'px';\n /**\n * modify clone styles\n */\n Object.assign(clone.style, {\n position: 'fixed', //required to allow free dragging of the clone\n pointerEvents: 'none', // required to allow drag events for items under the clone\n zIndex: '1000', // required to make sure that draggable element is positioned over other elements\n });\n return clone;\n }\n blockDrop() {\n this.dom.classList.add(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n draggedOver() {\n this.dom.classList.add(\"dragged-over\" /* dragAndDropListClass.DRAGGED_OVER */);\n }\n draggedOut() {\n this.dom.classList.remove(\"dragged-over\" /* dragAndDropListClass.DRAGGED_OVER */);\n this.unblockDrop();\n }\n isDragged() {\n this.dom.classList.add(\"is-dragged\" /* dragAndDropListClass.IS_DRAGGED */);\n }\n isNotDragged() {\n this.dom.classList.remove(\"is-dragged\" /* dragAndDropListClass.IS_DRAGGED */);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2RvbS5lbGVtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQW9CLFVBQXVCO1FBQXZCLGVBQVUsR0FBVixVQUFVLENBQWE7SUFBRyxDQUFDO0lBRS9DLElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLDhDQUE4QixDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsOENBQThCLENBQUM7SUFDcEUsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsd0RBQW1DLENBQUM7SUFDeEUsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sd0RBQW1DLENBQUM7SUFDL0QsQ0FBQztJQUVELEtBQUs7UUFDSCxNQUFNLEtBQUssR0FBZ0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFnQixDQUFDO1FBRW5FLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxzRUFBMEMsQ0FBQztRQUU5RCxNQUFNLFVBQVUsR0FBWSxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFN0Q7O1dBRUc7UUFDSCxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUM1QyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUU5Qzs7V0FFRztRQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUN6QixRQUFRLEVBQUUsT0FBTyxFQUFFLDhDQUE4QztZQUNqRSxhQUFhLEVBQUUsTUFBTSxFQUFFLDBEQUEwRDtZQUNqRixNQUFNLEVBQUUsTUFBTSxFQUFFLGlGQUFpRjtTQUNsRyxDQUFDLENBQUM7UUFFSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyx3REFBbUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsd0RBQW1DLENBQUM7SUFDNUQsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLHdEQUFtQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsb0RBQWlDLENBQUM7SUFDMUQsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLG9EQUFpQyxDQUFDO0lBQzdELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRyYWdBbmREcm9wTGlzdENsYXNzIH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuZW51bXMnO1xuXG5leHBvcnQgY2xhc3MgRG9tRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZG9tRWxlbWVudDogSFRNTEVsZW1lbnQpIHt9XG5cbiAgZ2V0IGRvbSgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZG9tRWxlbWVudDtcbiAgfVxuXG4gIGNhbkRyb3AoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmRvbS5jbGFzc0xpc3QuY29udGFpbnMoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuTk9fRFJPUCk7XG4gIH1cblxuICBjYW5EcmFnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5kb20uY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLk5PX0RSQUcpO1xuICB9XG5cbiAgaXNEcm9wQmxvY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kb20uY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLkRST1BfQkxPQ0tFRCk7XG4gIH1cblxuICBtYWtlRHJhZ2dhYmxlKCk6IHZvaWQge1xuICAgIHRoaXMuZG9tLnNldEF0dHJpYnV0ZSgnZHJhZ2dhYmxlJywgJ3RydWUnKTtcbiAgfVxuXG4gIG1ha2VVbkRyYWdnYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5yZW1vdmVBdHRyaWJ1dGUoJ2RyYWdnYWJsZScpO1xuICB9XG5cbiAgdW5ibG9ja0Ryb3AoKTogdm9pZCB7XG4gICAgdGhpcy5kb20uY2xhc3NMaXN0LnJlbW92ZShkcmFnQW5kRHJvcExpc3RDbGFzcy5EUk9QX0JMT0NLRUQpO1xuICB9XG5cbiAgY2xvbmUoKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IGNsb25lOiBIVE1MRWxlbWVudCA9IHRoaXMuZG9tLmNsb25lTm9kZSh0cnVlKSBhcyBIVE1MRWxlbWVudDtcblxuICAgIGNsb25lLmNsYXNzTGlzdC5hZGQoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9QTEFDRUhPTERFUik7XG5cbiAgICBjb25zdCB0YXJnZXRSZWN0OiBET01SZWN0ID0gdGhpcy5kb20uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAvKipcbiAgICAgKiBwcmVzZXJ2ZSB0YXJnZXQgZGltZW5zaW9uc1xuICAgICAqL1xuICAgIGNsb25lLnN0eWxlLndpZHRoID0gdGFyZ2V0UmVjdC53aWR0aCArICdweCc7XG4gICAgY2xvbmUuc3R5bGUuaGVpZ2h0ID0gdGFyZ2V0UmVjdC5oZWlnaHQgKyAncHgnO1xuXG4gICAgLyoqXG4gICAgICogbW9kaWZ5IGNsb25lIHN0eWxlc1xuICAgICAqL1xuICAgIE9iamVjdC5hc3NpZ24oY2xvbmUuc3R5bGUsIHtcbiAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLCAvL3JlcXVpcmVkIHRvIGFsbG93IGZyZWUgZHJhZ2dpbmcgb2YgdGhlIGNsb25lXG4gICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsIC8vIHJlcXVpcmVkIHRvIGFsbG93IGRyYWcgZXZlbnRzIGZvciBpdGVtcyB1bmRlciB0aGUgY2xvbmVcbiAgICAgIHpJbmRleDogJzEwMDAnLCAvLyByZXF1aXJlZCB0byBtYWtlIHN1cmUgdGhhdCBkcmFnZ2FibGUgZWxlbWVudCBpcyBwb3NpdGlvbmVkIG92ZXIgb3RoZXIgZWxlbWVudHNcbiAgICB9KTtcblxuICAgIHJldHVybiBjbG9uZTtcbiAgfVxuXG4gIGJsb2NrRHJvcCgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QuYWRkKGRyYWdBbmREcm9wTGlzdENsYXNzLkRST1BfQkxPQ0tFRCk7XG4gIH1cblxuICBkcmFnZ2VkT3ZlcigpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QuYWRkKGRyYWdBbmREcm9wTGlzdENsYXNzLkRSQUdHRURfT1ZFUik7XG4gIH1cblxuICBkcmFnZ2VkT3V0KCk6IHZvaWQge1xuICAgIHRoaXMuZG9tLmNsYXNzTGlzdC5yZW1vdmUoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9PVkVSKTtcbiAgICB0aGlzLnVuYmxvY2tEcm9wKCk7XG4gIH1cblxuICBpc0RyYWdnZWQoKTogdm9pZCB7XG4gICAgdGhpcy5kb20uY2xhc3NMaXN0LmFkZChkcmFnQW5kRHJvcExpc3RDbGFzcy5JU19EUkFHR0VEKTtcbiAgfVxuXG4gIGlzTm90RHJhZ2dlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QucmVtb3ZlKGRyYWdBbmREcm9wTGlzdENsYXNzLklTX0RSQUdHRUQpO1xuICB9XG59XG4iXX0=","export class DraggedPlaceholder {\n constructor(element, container, event, renderer) {\n this.renderer = renderer;\n this.positions = { x: 0, y: 0 };\n this.cursorPos = { x: 0, y: 0 };\n this.domElement = element.clone();\n /**\n * get target element DOMRect data\n */\n const targetRect = element.dom.getBoundingClientRect();\n /**\n * save cursor position relative to target element\n * this will help calculate dragged item position relative to the cursor\n */\n this.positions = {\n x: event.clientX - targetRect.left,\n y: event.clientY - targetRect.top,\n };\n this.hideDefaultDragPlaceholder(event);\n /**\n * add clone to the list\n */\n container.append(this.domElement);\n this.scrollUnsubscribeFunction = this.renderer.listen('document', 'scroll', () => {\n this.setDomPosition();\n });\n /**\n * make initial placeholder positioning\n */\n this.reposition(event);\n }\n remove() {\n this.domElement.remove();\n if (this.scrollUnsubscribeFunction) {\n this.scrollUnsubscribeFunction();\n }\n }\n reposition(event) {\n this.cursorPos = { x: event.clientX, y: event.clientY };\n this.setDomPosition();\n }\n setDomPosition() {\n /**\n * position placeholder relative to the cursor\n */\n this.domElement.style.left = this.cursorPos.x - this.positions.x + 'px';\n this.domElement.style.top = this.cursorPos.y - this.positions.y + 'px';\n }\n hideDefaultDragPlaceholder(event) {\n const placeholder = document.createElement('img');\n placeholder.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';\n Object.assign(placeholder.style, {\n display: 'block',\n width: '0',\n height: '0',\n });\n /**\n * replace default browser drag placeholder with transparent image\n */\n event.dataTransfer?.setDragImage(placeholder, 0, 0);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ2dlZC5wbGFjZWhvbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZ2dlZC5wbGFjZWhvbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQ0UsT0FBbUIsRUFDbkIsU0FBc0IsRUFDdEIsS0FBZ0IsRUFDUixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBUlosY0FBUyxHQUE2QixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRTlELGNBQVMsR0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBUXpDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWxDOztXQUVHO1FBQ0gsTUFBTSxVQUFVLEdBQVksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhFOzs7V0FHRztRQUNILElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDZixDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSTtZQUNsQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsR0FBRztTQUNsQyxDQUFDO1FBRUYsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDOztXQUVHO1FBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBUyxFQUFFO1lBQ3JGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFpQjtRQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWM7UUFDcEI7O1dBRUc7UUFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDekUsQ0FBQztJQUVPLDBCQUEwQixDQUFDLEtBQWdCO1FBQ2pELE1BQU0sV0FBVyxHQUFxQixRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BFLFdBQVcsQ0FBQyxHQUFHLEdBQUcsb0ZBQW9GLENBQUM7UUFFdkcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFO1lBQy9CLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLEtBQUssRUFBRSxHQUFHO1lBQ1YsTUFBTSxFQUFFLEdBQUc7U0FDWixDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNILEtBQUssQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tRWxlbWVudCB9IGZyb20gJy4vZG9tLmVsZW1lbnQnO1xuaW1wb3J0IHsgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbnR5cGUgQ09PUkRTID0geyB4OiBudW1iZXI7IHk6IG51bWJlciB9O1xuXG5leHBvcnQgY2xhc3MgRHJhZ2dlZFBsYWNlaG9sZGVyIHtcbiAgcmVhZG9ubHkgZG9tRWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgcG9zaXRpb25zOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0gPSB7IHg6IDAsIHk6IDAgfTtcbiAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxVbnN1YnNjcmliZUZ1bmN0aW9uPzogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBjdXJzb3JQb3M6IENPT1JEUyA9IHsgeDogMCwgeTogMCB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnQ6IERvbUVsZW1lbnQsXG4gICAgY29udGFpbmVyOiBIVE1MRWxlbWVudCxcbiAgICBldmVudDogRHJhZ0V2ZW50LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgKSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gZWxlbWVudC5jbG9uZSgpO1xuXG4gICAgLyoqXG4gICAgICogZ2V0IHRhcmdldCBlbGVtZW50IERPTVJlY3QgZGF0YVxuICAgICAqL1xuICAgIGNvbnN0IHRhcmdldFJlY3Q6IERPTVJlY3QgPSBlbGVtZW50LmRvbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIC8qKlxuICAgICAqIHNhdmUgY3Vyc29yIHBvc2l0aW9uIHJlbGF0aXZlIHRvIHRhcmdldCBlbGVtZW50XG4gICAgICogdGhpcyB3aWxsIGhlbHAgY2FsY3VsYXRlIGRyYWdnZWQgaXRlbSBwb3NpdGlvbiByZWxhdGl2ZSB0byB0aGUgY3Vyc29yXG4gICAgICovXG4gICAgdGhpcy5wb3NpdGlvbnMgPSB7XG4gICAgICB4OiBldmVudC5jbGllbnRYIC0gdGFyZ2V0UmVjdC5sZWZ0LFxuICAgICAgeTogZXZlbnQuY2xpZW50WSAtIHRhcmdldFJlY3QudG9wLFxuICAgIH07XG5cbiAgICB0aGlzLmhpZGVEZWZhdWx0RHJhZ1BsYWNlaG9sZGVyKGV2ZW50KTtcblxuICAgIC8qKlxuICAgICAqIGFkZCBjbG9uZSB0byB0aGUgbGlzdFxuICAgICAqL1xuICAgIGNvbnRhaW5lci5hcHBlbmQodGhpcy5kb21FbGVtZW50KTtcblxuICAgIHRoaXMuc2Nyb2xsVW5zdWJzY3JpYmVGdW5jdGlvbiA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCdkb2N1bWVudCcsICdzY3JvbGwnLCAoKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLnNldERvbVBvc2l0aW9uKCk7XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiBtYWtlIGluaXRpYWwgcGxhY2Vob2xkZXIgcG9zaXRpb25pbmdcbiAgICAgKi9cbiAgICB0aGlzLnJlcG9zaXRpb24oZXZlbnQpO1xuICB9XG5cbiAgcmVtb3ZlKCk6IHZvaWQge1xuICAgIHRoaXMuZG9tRWxlbWVudC5yZW1vdmUoKTtcblxuICAgIGlmICh0aGlzLnNjcm9sbFVuc3Vic2NyaWJlRnVuY3Rpb24pIHtcbiAgICAgIHRoaXMuc2Nyb2xsVW5zdWJzY3JpYmVGdW5jdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHJlcG9zaXRpb24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnNvclBvcyA9IHsgeDogZXZlbnQuY2xpZW50WCwgeTogZXZlbnQuY2xpZW50WSB9O1xuICAgIHRoaXMuc2V0RG9tUG9zaXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RG9tUG9zaXRpb24oKTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogcG9zaXRpb24gcGxhY2Vob2xkZXIgcmVsYXRpdmUgdG8gdGhlIGN1cnNvclxuICAgICAqL1xuICAgIHRoaXMuZG9tRWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhpcy5jdXJzb3JQb3MueCAtIHRoaXMucG9zaXRpb25zLnggKyAncHgnO1xuICAgIHRoaXMuZG9tRWxlbWVudC5zdHlsZS50b3AgPSB0aGlzLmN1cnNvclBvcy55IC0gdGhpcy5wb3NpdGlvbnMueSArICdweCc7XG4gIH1cblxuICBwcml2YXRlIGhpZGVEZWZhdWx0RHJhZ1BsYWNlaG9sZGVyKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwbGFjZWhvbGRlcjogSFRNTEltYWdlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xuICAgIHBsYWNlaG9sZGVyLnNyYyA9ICdkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFQLy8vd0FBQUNINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQ1JBRUFPdz09JztcblxuICAgIE9iamVjdC5hc3NpZ24ocGxhY2Vob2xkZXIuc3R5bGUsIHtcbiAgICAgIGRpc3BsYXk6ICdibG9jaycsXG4gICAgICB3aWR0aDogJzAnLFxuICAgICAgaGVpZ2h0OiAnMCcsXG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiByZXBsYWNlIGRlZmF1bHQgYnJvd3NlciBkcmFnIHBsYWNlaG9sZGVyIHdpdGggdHJhbnNwYXJlbnQgaW1hZ2VcbiAgICAgKi9cbiAgICBldmVudC5kYXRhVHJhbnNmZXI/LnNldERyYWdJbWFnZShwbGFjZWhvbGRlciwgMCwgMCk7XG4gIH1cbn1cbiJdfQ==","import { Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { DomElement } from './dom.element';\nimport { DraggedPlaceholder } from './dragged.placeholder';\nimport * as i0 from \"@angular/core\";\nexport class AdsDragAndDropListComponent {\n /** @ignore */\n constructor(renderer) {\n this.renderer = renderer;\n /** If total items count is less than this value, drag&drop will be disabled */\n this.minCountToDrag = 2;\n /** Provide subject element, which will allow to refresh the list. NOTE: refreshing is required every time the list is updated from the outside */\n this.refresh = new Subject();\n /** @ignore */\n this.draggedElement = null;\n /** @ignore */\n this.draggedPlaceholder = null;\n /** @ignore */\n this.unsubscribeFunctions = new Map();\n /** @ignore */\n this.ngUnsubscribe = new Subject();\n this.draggedOverElement = null;\n /** @ignore */\n this.onDragStart = (event) => {\n /**\n * NOTE: register dragover for document body to overcome Firefox issue where clientX and clientY are 0 in 'drag' event\n */\n this.unsubscribeFromDocumentDragOver = this.renderer.listen(document.body, 'dragover', this.onDragOverBody);\n /**\n * store currently dragged element\n */\n this.draggedElement = this.getElement(event);\n /**\n * replace default browser dragged element with the custom one\n */\n this.draggedPlaceholder = new DraggedPlaceholder(this.draggedElement, this.draggableList?.nativeElement, event, this.renderer);\n /**\n * mark dragged element with special class\n */\n this.draggedElement.isDragged();\n /**\n * block drop into the dragged element\n */\n this.draggedElement.blockDrop();\n };\n /** @ignore */\n this.onDragEnd = () => {\n /**\n * remove special class from dragged element mark dragged element\n */\n this.draggedElement?.isNotDragged();\n this.draggedElement = null;\n /**\n * if we subscribed to document dragover - unsubscribe from it\n */\n if (this.unsubscribeFromDocumentDragOver) {\n this.unsubscribeFromDocumentDragOver();\n }\n /**\n * remove dragged placeholder from DOM\n */\n this.draggedPlaceholder?.remove();\n this.draggedPlaceholder = null;\n };\n /** @ignore\n * NOTE: we rely on onDragOver instead of DragEnter and DragLeave because those events also fire when we enter and leave\n * child elements - the behavior we don't need\n */\n this.onDragOver = (event) => {\n /**\n * NOTE: this is required for \"drop\" event to work\n */\n event.preventDefault();\n /**\n * do nothing if we have no dragged element, or we are still over the same element\n */\n if (!this.draggedElement || this.draggedOverElement?.dom === event.currentTarget) {\n return;\n }\n /**\n * make sure previous dragged over element is marked as \"dragged out\"\n */\n this.unselectDraggedOverElement();\n this.draggedOverElement = this.getElement(event);\n /**\n * do nothing if dragged element and element, we are dragging over is the same\n */\n if (this.isDraggingOverSelf(this.draggedOverElement)) {\n return;\n }\n this.draggedOverElement.draggedOver();\n /**\n * if drop is blocked - add special class to the dragged element\n */\n if (this.canDrop()) {\n this.draggedOverElement.unblockDrop();\n }\n else {\n this.draggedOverElement.blockDrop();\n }\n };\n /** @ignore */\n this.onDrop = (event) => {\n /**\n * if drop is blocked - do nothing\n */\n if (!this.canDrop())\n return;\n this.unselectDraggedOverElement();\n const target = this.getElement(event);\n /**\n * preserve drop blocked state before cleaning classes - it will be needed later\n */\n const isTargetBlocked = target.isDropBlocked();\n this.getElement(event).draggedOut();\n /**\n * if we have no dragged element, we are dropping on self or target is blocked - do nothing\n */\n if (!this.draggedElement || this.isDraggingOverSelf(target) || isTargetBlocked) {\n return;\n }\n const sourceIndex = this.getElementIndex(this.draggedElement);\n const targetIndex = this.getElementIndex(target);\n /**\n * if source index is less than target index - means we are dragging down;\n * otherwise we are dragging up\n * NOTE: we utilise \"before\" method for element insertion in both cases, because \"after\" can\n * break order of \"drag-static\" elements (if they are present)\n */\n if (sourceIndex < targetIndex) {\n const allElements = this.getAllElements();\n /**\n * loop through all element beginning with next to the currently dragged element\n * and ending with drop target element and move all of them up;\n * this will result in target element being moved down to required position\n */\n for (let i = sourceIndex + 1; i <= targetIndex; i++) {\n const target = allElements[i];\n if (target) {\n this.draggedElement.dom.before(target);\n }\n }\n }\n else {\n target.dom.before(this.draggedElement.dom);\n }\n /**\n * if possible emit indexes old and new indexes of the repositioned items\n */\n if (this.dropCallback) {\n this.dropCallback({\n before: sourceIndex,\n after: this.getElementIndex(this.draggedElement),\n }, {\n before: targetIndex,\n after: this.getElementIndex(target),\n });\n }\n };\n /** @ignore */\n this.onMouseEnter = (event) => {\n this.setCanDrag(this.getElement(event));\n };\n /** @ignore */\n this.onDragOverBody = (event) => {\n this.draggedPlaceholder?.reposition(event);\n };\n }\n /** @ignore */\n ngOnInit() {\n /**\n * if refresh command was emitted - refresh elements\n * NOTE: we do it in timeout to allow DOM to redraw first\n */\n this.refresh.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {\n setTimeout(() => this.refreshElements());\n });\n }\n /** @ignore */\n ngAfterContentInit() {\n this.refreshElements();\n }\n /** @ignore */\n ngOnDestroy() {\n this.unsubscribeFromEventListeners();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n /** @ignore */\n onListDragLeave(event) {\n /**\n * if we dragged out of the element - unselect it\n */\n if (event.relatedTarget instanceof HTMLElement &&\n this.draggedOverElement &&\n !this.draggedOverElement.dom.contains(event.relatedTarget)) {\n this.unselectDraggedOverElement();\n }\n }\n /** @ignore */\n unselectDraggedOverElement() {\n /**\n * make sure previous dragged over element is marked as \"dragged out\"\n */\n this.draggedOverElement?.draggedOut();\n this.draggedOverElement = null;\n }\n /** @ignore */\n setCanDrag(element) {\n /**\n * if special class is set for the element - forbid dragging\n */\n if (!element.canDrag()) {\n element.makeUnDraggable();\n return;\n }\n /**\n * make sure dragging the item is not forbidden by external function\n */\n if (this.canDragCallback) {\n if (this.canDragCallback(this.getElementIndex(element))) {\n element.makeDraggable();\n }\n else {\n element.makeUnDraggable();\n }\n return;\n }\n element.makeDraggable();\n }\n /** @ignore */\n canDrop() {\n if (!this.draggedElement || !this.draggedOverElement)\n return false;\n /**\n * if special class is set for the element - forbid dropping;\n * otherwise make sure dropping over the item is not forbidden by external function\n */\n if (!this.draggedOverElement.canDrop()) {\n return false;\n }\n else if (this.canDropCallback) {\n return this.canDropCallback(this.getElementIndex(this.draggedElement), this.getElementIndex(this.draggedOverElement));\n }\n return true;\n }\n /** @ignore */\n refreshElements() {\n /**\n * unsubscribe from all event listeners\n */\n this.unsubscribeFromEventListeners();\n /**\n * make sure no placeholder are still visible\n */\n document.querySelectorAll('.' + \"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */).forEach((element) => {\n element.remove();\n });\n /**\n * get all elements that can participate in drag and drop\n */\n const elements = this.getAllElements();\n /**\n * make sure we have enough elements to continue\n */\n if (elements.length < this.minCountToDrag) {\n return;\n }\n /**\n * add required callbacks to all elements,\n * preserving their unsubscribe functions\n */\n elements.forEach((element) => {\n const functions = {};\n functions['dragstart'] = this.renderer.listen(element, 'dragstart', this.onDragStart);\n functions['dragend'] = this.renderer.listen(element, 'dragend', this.onDragEnd);\n functions['dragover'] = this.renderer.listen(element, 'dragover', this.onDragOver);\n functions['drop'] = this.renderer.listen(element, 'drop', this.onDrop);\n functions['mouseenter'] = this.renderer.listen(element, 'mouseenter', this.onMouseEnter);\n this.unsubscribeFunctions.set(element, functions);\n });\n }\n /** @ignore */\n unsubscribeFromEventListeners() {\n this.unsubscribeFunctions.forEach((collection) => {\n Object.values(collection).forEach((func) => func());\n });\n this.unsubscribeFunctions = new Map();\n }\n /** @ignore */\n getAllElements() {\n const result = [];\n if (this.draggableList) {\n /**\n * loop through immediate children of the list\n */\n Array.from(this.draggableList.nativeElement.children).forEach((element) => {\n /**\n * element is static if it has both \"no-drop\" and \"no-drag\" classes\n */\n const isStatic = element.classList.contains(\"no-drop\" /* dragAndDropListClass.NO_DROP */) &&\n element.classList.contains(\"no-drag\" /* dragAndDropListClass.NO_DRAG */);\n /**\n * ignore static elements and dragged placeholder element from the list\n */\n if (!isStatic && !element.classList.contains(\"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */)) {\n result.push(element);\n }\n });\n }\n return result;\n }\n /** @ignore */\n getElement(event) {\n return new DomElement(event.currentTarget);\n }\n /** @ignore */\n getElementIndex(element) {\n return this.getAllElements().indexOf(element.dom);\n }\n /** @ignore */\n isDraggingOverSelf(element) {\n return this.draggedElement?.dom === element?.dom;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.2\", type: AdsDragAndDropListComponent, isStandalone: false, selector: \"ads-drag-and-drop-list\", inputs: { dropCallback: \"dropCallback\", canDropCallback: \"canDropCallback\", canDragCallback: \"canDragCallback\", minCountToDrag: \"minCountToDrag\", refresh: \"refresh\" }, viewQueries: [{ propertyName: \"draggableList\", first: true, predicate: [\"draggableList\"], descendants: true, read: ElementRef, static: true }, { propertyName: \"dynamicContent\", first: true, predicate: [\"dynamicContent\"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: \"<div class=\\\"draggable-list\\\" #draggableList (dragleave)=\\\"onListDragLeave($event)\\\">\\n <ng-content></ng-content>\\n</div>\\n\", styles: [\":host{display:block}:host ::ng-deep .draggable-list>*{box-sizing:border-box;background-color:var(--color-white);color:var(--color-dark)}:host ::ng-deep .draggable-list>*[draggable=true]{cursor:move}:host ::ng-deep .draggable-list>*.is-dragged{opacity:.25}:host ::ng-deep .draggable-list>*:not(.drag-placeholder){width:100%}:host ::ng-deep .draggable-list>*.dragged-over:not(.drop-blocked){background-color:var(--color-light-30)}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ads-drag-and-drop-list', standalone: false, template: \"<div class=\\\"draggable-list\\\" #draggableList (dragleave)=\\\"onListDragLeave($event)\\\">\\n <ng-content></ng-content>\\n</div>\\n\", styles: [\":host{display:block}:host ::ng-deep .draggable-list>*{box-sizing:border-box;background-color:var(--color-white);color:var(--color-dark)}:host ::ng-deep .draggable-list>*[draggable=true]{cursor:move}:host ::ng-deep .draggable-list>*.is-dragged{opacity:.25}:host ::ng-deep .draggable-list>*:not(.drag-placeholder){width:100%}:host ::ng-deep .draggable-list>*.dragged-over:not(.drop-blocked){background-color:var(--color-light-30)}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { draggableList: [{\n type: ViewChild,\n args: ['draggableList', { read: ElementRef, static: true }]\n }], dynamicContent: [{\n type: ViewChild,\n args: ['dynamicContent', { read: ElementRef, static: true }]\n }], dropCallback: [{\n type: Input\n }], canDropCallback: [{\n type: Input\n }], canDragCallback: [{\n type: Input\n }], minCountToDrag: [{\n type: Input\n }], refresh: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFhM0QsTUFBTSxPQUFPLDJCQUEyQjtJQWtDdEMsY0FBYztJQUNkLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFwQnZDLCtFQUErRTtRQUN0RSxtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUU1QixtSkFBbUo7UUFDMUksWUFBTyxHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRELGNBQWM7UUFDTixtQkFBYyxHQUFzQixJQUFJLENBQUM7UUFDakQsY0FBYztRQUNOLHVCQUFrQixHQUE4QixJQUFJLENBQUM7UUFHN0QsY0FBYztRQUNOLHlCQUFvQixHQUF1RCxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzdGLGNBQWM7UUFDTixrQkFBYSxHQUFrQixJ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QUF0QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRG9tRWxlbWVudCB9IGZyb20gJy4vZG9tLmVsZW1lbnQnO1xuaW1wb3J0IHsgRHJhZ2dlZFBsYWNlaG9sZGVyIH0gZnJvbSAnLi9kcmFnZ2VkLnBsYWNlaG9sZGVyJztcbmltcG9ydCB7IGRyYWdBbmREcm9wTGlzdENsYXNzIH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuZW51bXMnO1xuaW1wb3J0IHsgR0VORVJJQ19DT0xMRUNUSU9OIH0gZnJvbSAnQGFzY2VudGdsL2Fkcy11dGlscyc7XG5cbmV4cG9ydCB0eXBlIERST1BfQ0FMTEJBQ0tfSU5ERVhFUyA9IHsgYmVmb3JlOiBudW1iZXI7IGFmdGVyOiBudW1iZXIgfTtcbmV4cG9ydCB0eXBlIFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OID0gR0VORVJJQ19DT0xMRUNUSU9OPCgpID0+IHZvaWQ+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhZHMtZHJhZy1hbmQtZHJvcC1saXN0JyxcbiAgc3R5bGVVcmxzOiBbJ2RyYWctYW5kLWRyb3AtbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJ2RyYWctYW5kLWRyb3AtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIC8qKiBAaWdub3JlICovXG4gIEBWaWV3Q2hpbGQoJ2RyYWdnYWJsZUxpc3QnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBkcmFnZ2FibGVMaXN0PzogRWxlbWVudFJlZjtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgQFZpZXdDaGlsZCgnZHluYW1pY0NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBkeW5hbWljQ29udGVudD86IEVsZW1lbnRSZWY7XG5cbiAgLyoqIFRoaXMgZXh0ZXJuYWwgbWV0aG9kIHdpbGwgYmUgY2FsbGVkIGFmdGVyIHRoZSBpdGVtIGlzIGRyb3BwZWQgaW50byBuZXcgcG9zaXRpb24gKi9cbiAgQElucHV0KCkgZHJvcENhbGxiYWNrPzogKHNvdXJjZUluZGV4ZXM6IERST1BfQ0FMTEJBQ0tfSU5ERVhFUywgdGFyZ2V0SW5kZXhlczogRFJPUF9DQUxMQkFDS19JTkRFWEVTKSA9PiB2b2lkO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGRldGVybWluZSBpZiBpdGVtIGNhbiBiZSBkcm9wcGVkIG9uIHRoZSBzZWxlY3RlZCB0YXJnZXQgKi9cbiAgQElucHV0KCkgY2FuRHJvcENhbGxiYWNrPzogKHNvdXJjZUluZGV4OiBudW1iZXIsIHRhcmdldEluZGV4OiBudW1iZXIpID0+IGJvb2xlYW47XG5cbiAgLyoqIENhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIGlmIGl0ZW0gY2FuIGJlIGRyYWdnZWQgKi9cbiAgQElucHV0KCkgY2FuRHJhZ0NhbGxiYWNrPzogKHNvdXJjZUluZGV4OiBudW1iZXIpID0+IGJvb2xlYW47XG5cbiAgLyoqIElmIHRvdGFsIGl0ZW1zIGNvdW50IGlzIGxlc3MgdGhhbiB0aGlzIHZhbHVlLCBkcmFnJmRyb3Agd2lsbCBiZSBkaXNhYmxlZCAqL1xuICBASW5wdXQoKSBtaW5Db3VudFRvRHJhZyA9IDI7XG5cbiAgLyoqIFByb3ZpZGUgc3ViamVjdCBlbGVtZW50LCB3aGljaCB3aWxsIGFsbG93IHRvIHJlZnJlc2ggdGhlIGxpc3QuIE5PVEU6IHJlZnJlc2hpbmcgaXMgcmVxdWlyZWQgZXZlcnkgdGltZSB0aGUgbGlzdCBpcyB1cGRhdGVkIGZyb20gdGhlIG91dHNpZGUgICovXG4gIEBJbnB1dCgpIHJlZnJlc2g6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgZHJhZ2dlZEVsZW1lbnQ6IERvbUVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBkcmFnZ2VkUGxhY2Vob2xkZXI6IERyYWdnZWRQbGFjZWhvbGRlciB8IG51bGwgPSBudWxsO1xuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIHVuc3Vic2NyaWJlRnJvbURvY3VtZW50RHJhZ092ZXI/OiAoKSA9PiB2b2lkO1xuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIHVuc3Vic2NyaWJlRnVuY3Rpb25zOiBNYXA8SFRNTEVsZW1lbnQsIFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OPiA9IG5ldyBNYXAoKTtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBwcml2YXRlIGRyYWdnZWRPdmVyRWxlbWVudDogRG9tRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBpZiByZWZyZXNoIGNvbW1hbmQgd2FzIGVtaXR0ZWQgLSByZWZyZXNoIGVsZW1lbnRzXG4gICAgICogTk9URTogd2UgZG8gaXQgaW4gdGltZW91dCB0byBhbGxvdyBET00gdG8gcmVkcmF3IGZpcnN0XG4gICAgICovXG4gICAgdGhpcy5yZWZyZXNoLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVmcmVzaEVsZW1lbnRzKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVmcmVzaEVsZW1lbnRzKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRnJvbUV2ZW50TGlzdGVuZXJzKCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIG9uTGlzdERyYWdMZWF2ZShldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogaWYgd2UgZHJhZ2dlZCBvdXQgb2YgdGhlIGVsZW1lbnQgLSB1bnNlbGVjdCBpdFxuICAgICAqL1xuICAgIGlmIChcbiAgICAgIGV2ZW50LnJlbGF0ZWRUYXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQgJiZcbiAgICAgICF0aGlzLmRyYWdnZWRPdmVyRWxlbWVudC5kb20uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICApIHtcbiAgICAgIHRoaXMudW5zZWxlY3REcmFnZ2VkT3ZlckVsZW1lbnQoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBvbkRyYWdTdGFydCA9IChldmVudDogRHJhZ0V2ZW50KTogdm9pZCA9PiB7XG4gICAgLyoqXG4gICAgICogTk9URTogcmVnaXN0ZXIgZHJhZ292ZXIgZm9yIGRvY3VtZW50IGJvZHkgdG8gb3ZlcmNvbWUgRmlyZWZveCBpc3N1ZSB3aGVyZSBjbGllbnRYIGFuZCBjbGllbnRZIGFyZSAwIGluICdkcmFnJyBldmVudFxuICAgICAqL1xuICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRG9jdW1lbnREcmFnT3ZlciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGRvY3VtZW50LmJvZHksICdkcmFnb3ZlcicsIHRoaXMub25EcmFnT3ZlckJvZHkpO1xuXG4gICAgLyoqXG4gICAgICogc3RvcmUgY3VycmVudGx5IGRyYWdnZWQgZWxlbWVudFxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZEVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQoZXZlbnQpO1xuXG4gICAgLyoqXG4gICAgICogcmVwbGFjZSBkZWZhdWx0IGJyb3dzZXIgZHJhZ2dlZCBlbGVtZW50IHdpdGggdGhlIGN1c3RvbSBvbmVcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRQbGFjZWhvbGRlciA9IG5ldyBEcmFnZ2VkUGxhY2Vob2xkZXIoXG4gICAgICB0aGlzLmRyYWdnZWRFbGVtZW50LFxuICAgICAgdGhpcy5kcmFnZ2FibGVMaXN0Py5uYXRpdmVFbGVtZW50LFxuICAgICAgZXZlbnQsXG4gICAgICB0aGlzLnJlbmRlcmVyLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBtYXJrIGRyYWdnZWQgZWxlbWVudCB3aXRoIHNwZWNpYWwgY2xhc3NcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmlzRHJhZ2dlZCgpO1xuXG4gICAgLyoqXG4gICAgICogYmxvY2sgZHJvcCBpbnRvIHRoZSBkcmFnZ2VkIGVsZW1lbnRcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmJsb2NrRHJvcCgpO1xuICB9O1xuXG4gIC8qKiBAaWdub3JlICovXG4gIG9uRHJhZ0VuZCA9ICgpOiB2b2lkID0+IHtcbiAgICAvKipcbiAgICAgKiByZW1vdmUgc3BlY2lhbCBjbGFzcyBmcm9tIGRyYWdnZWQgZWxlbWVudCBtYXJrIGRyYWdnZWQgZWxlbWVudFxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZEVsZW1lbnQ/LmlzTm90RHJhZ2dlZCgpO1xuXG4gICAgdGhpcy5kcmFnZ2VkRWxlbWVudCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBpZiB3ZSBzdWJzY3JpYmVkIHRvIGRvY3VtZW50IGRyYWdvdmVyIC0gdW5zdWJzY3JpYmUgZnJvbSBpdFxuICAgICAqL1xuICAgIGlmICh0aGlzLnVuc3Vic2NyaWJlRnJvbURvY3VtZW50RHJhZ092ZXIpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRG9jdW1lbnREcmFnT3ZlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJlbW92ZSBkcmFnZ2VkIHBsYWNlaG9sZGVyIGZyb20gRE9NXG4gICAgICovXG4gICAgdGhpcy5kcmFnZ2VkUGxhY2Vob2xkZXI/LnJlbW92ZSgpO1xuICAgIHRoaXMuZHJhZ2dlZFBsYWNlaG9sZGVyID0gbnVsbDtcbiAgfTtcblxuICAvKiogQGlnbm9yZVxuICAgKiBOT1RFOiB3ZSByZWx5IG9uICBvbkRyYWdPdmVyIGluc3RlYWQgb2YgRHJhZ0VudGVyIGFuZCBEcmFnTGVhdmUgYmVjYXVzZSB0aG9zZSBldmVudHMgYWxzbyBmaXJlIHdoZW4gd2UgZW50ZXIgYW5kIGxlYXZlXG4gICAqIGNoaWxkIGVsZW1lbnRzIC0gdGhlIGJlaGF2aW9yIHdlIGRvbid0IG5lZWRcbiAgICovXG4gIG9uRHJhZ092ZXIgPSAoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8qKlxuICAgICAqIE5PVEU6IHRoaXMgaXMgcmVxdWlyZWQgZm9yIFwiZHJvcFwiIGV2ZW50IHRvIHdvcmtcbiAgICAgKi9cbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgLyoqXG4gICAgICogZG8gbm90aGluZyBpZiB3ZSBoYXZlIG5vIGRyYWdnZWQgZWxlbWVudCwgb3Igd2UgYXJlIHN0aWxsIG92ZXIgdGhlIHNhbWUgZWxlbWVudFxuICAgICAqL1xuICAgIGlmICghdGhpcy5kcmFnZ2VkRWxlbWVudCB8fCB0aGlzLmRyYWdnZWRPdmVyRWxlbWVudD8uZG9tID09PSBldmVudC5jdXJyZW50VGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbWFrZSBzdXJlIHByZXZpb3VzIGRyYWdnZWQgb3ZlciBlbGVtZW50IGlzIG1hcmtlZCBhcyBcImRyYWdnZWQgb3V0XCJcbiAgICAgKi9cbiAgICB0aGlzLnVuc2VsZWN0RHJhZ2dlZE92ZXJFbGVtZW50KCk7XG5cbiAgICB0aGlzLmRyYWdnZWRPdmVyRWxlbWVudCA9IHRoaXMuZ2V0RWxlbWVudChldmVudCk7XG5cbiAgICAvKipcbiAgICAgKiBkbyBub3RoaW5nIGlmIGRyYWdnZWQgZWxlbWVudCBhbmQgZWxlbWVudCwgd2UgYXJlIGRyYWdnaW5nIG92ZXIgaXMgdGhlIHNhbWVcbiAgICAgKi9cbiAgICBpZiAodGhpcy5pc0RyYWdnaW5nT3ZlclNlbGYodGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQuZHJhZ2dlZE92ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIGlmIGRyb3AgaXMgYmxvY2tlZCAtIGFkZCBzcGVjaWFsIGNsYXNzIHRvIHRoZSBkcmFnZ2VkIGVsZW1lbnRcbiAgICAgKi9cbiAgICBpZiAodGhpcy5jYW5Ecm9wKCkpIHtcbiAgICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50LnVuYmxvY2tEcm9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50LmJsb2NrRHJvcCgpO1xuICAgIH1cbiAgfTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBvbkRyb3AgPSAoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8qKlxuICAgICAqIGlmIGRyb3AgaXMgYmxvY2tlZCAtIGRvIG5vdGhpbmdcbiAgICAgKi9cbiAgICBpZiAoIXRoaXMuY2FuRHJvcCgpKSByZXR1cm47XG5cbiAgICB0aGlzLnVuc2VsZWN0RHJhZ2dlZE92ZXJFbGVtZW50KCk7XG5cbiAgICBjb25zdCB0YXJnZXQ6IERvbUVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQoZXZlbnQpO1xuXG4gICAgLyoqXG4gICAgICogcHJlc2VydmUgZHJvcCBibG9ja2VkIHN0YXRlIGJlZm9yZSBjbGVhbmluZyBjbGFzc2VzIC0gaXQgd2lsbCBiZSBuZWVkZWQgbGF0ZXJcbiAgICAgKi9cbiAgICBjb25zdCBpc1RhcmdldEJsb2NrZWQ6IGJvb2xlYW4gPSB0YXJnZXQuaXNEcm9wQmxvY2tlZCgpO1xuXG4gICAgdGhpcy5nZXRFbGVtZW50KGV2ZW50KS5kcmFnZ2VkT3V0KCk7XG5cbiAgICAvKipcbiAgICAgKiBpZiB3ZSBoYXZlIG5vIGRyYWdnZWQgZWxlbWVudCwgd2UgYXJlIGRyb3BwaW5nIG9uIHNlbGYgb3IgdGFyZ2V0IGlzIGJsb2NrZWQgLSBkbyBub3RoaW5nXG4gICAgICovXG4gICAgaWYgKCF0aGlzLmRyYWdnZWRFbGVtZW50IHx8IHRoaXMuaXNEcmFnZ2luZ092ZXJTZWxmKHRhcmdldCkgfHwgaXNUYXJnZXRCbG9ja2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc291cmNlSW5kZXg6IG51bWJlciA9IHRoaXMuZ2V0RWxlbWVudEluZGV4KHRoaXMuZHJhZ2dlZEVsZW1lbnQpO1xuICAgIGNvbnN0IHRhcmdldEluZGV4OiBudW1iZXIgPSB0aGlzLmdldEVsZW1lbnRJbmRleCh0YXJnZXQpO1xuXG4gICAgLyoqXG4gICAgICogaWYgc291cmNlIGluZGV4IGlzIGxlc3MgdGhhbiB0YXJnZXQgaW5kZXggLSBtZWFucyB3ZSBhcmUgZHJhZ2dpbmcgZG93bjtcbiAgICAgKiBvdGhlcndpc2Ugd2UgYXJlIGRyYWdnaW5nIHVwXG4gICAgICogTk9URTogd2UgdXRpbGlzZSBcImJlZm9yZVwiIG1ldGhvZCBmb3IgZWxlbWVudCBpbnNlcnRpb24gaW4gYm90aCBjYXNlcywgYmVjYXVzZSBcImFmdGVyXCIgY2FuXG4gICAgICogYnJlYWsgb3JkZXIgb2YgXCJkcmFnLXN0YXRpY1wiIGVsZW1lbnRzIChpZiB0aGV5IGFyZSBwcmVzZW50KVxuICAgICAqL1xuICAgIGlmIChzb3VyY2VJbmRleCA8IHRhcmdldEluZGV4KSB7XG4gICAgICBjb25zdCBhbGxFbGVtZW50czogSFRNTEVsZW1lbnRbXSA9IHRoaXMuZ2V0QWxsRWxlbWVudHMoKTtcblxuICAgICAgLyoqXG4gICAgICAgKiBsb29wIHRocm91Z2ggYWxsIGVsZW1lbnQgYmVnaW5uaW5nIHdpdGggbmV4dCB0byB0aGUgY3VycmVudGx5IGRyYWdnZWQgZWxlbWVudFxuICAgICAgICogYW5kIGVuZGluZyB3aXRoIGRyb3AgdGFyZ2V0IGVsZW1lbnQgYW5kIG1vdmUgYWxsIG9mIHRoZW0gdXA7XG4gICAgICAgKiB0aGlzIHdpbGwgcmVzdWx0IGluIHRhcmdldCBlbGVtZW50IGJlaW5nIG1vdmVkIGRvd24gdG8gcmVxdWlyZWQgcG9zaXRpb25cbiAgICAgICAqL1xuICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gc291cmNlSW5kZXggKyAxOyBpIDw9IHRhcmdldEluZGV4OyBpKyspIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0OiBIVE1MRWxlbWVudCA9IGFsbEVsZW1lbnRzW2ldO1xuXG4gICAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmRvbS5iZWZvcmUodGFyZ2V0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0YXJnZXQuZG9tLmJlZm9yZSh0aGlzLmRyYWdnZWRFbGVtZW50LmRvbSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogaWYgcG9zc2libGUgZW1pdCBpbmRleGVzIG9sZCBhbmQgbmV3IGluZGV4ZXMgb2YgdGhlIHJlcG9zaXRpb25lZCBpdGVtc1xuICAgICAqL1xuICAgIGlmICh0aGlzLmRyb3BDYWxsYmFjaykge1xuICAgICAgdGhpcy5kcm9wQ2FsbGJhY2soXG4gICAgICAgIHtcbiAgICAgICAgICBiZWZvcmU6IHNvdXJjZUluZGV4LFxuICAgICAgICAgIGFmdGVyOiB0aGlzLmdldEVsZW1lbnRJbmRleCh0aGlzLmRyYWdnZWRFbGVtZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGJlZm9yZTogdGFyZ2V0SW5kZXgsXG4gICAgICAgICAgYWZ0ZXI6IHRoaXMuZ2V0RWxlbWVudEluZGV4KHRhcmdldCksXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBvbk1vdXNlRW50ZXIgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkID0+IHtcbiAgICB0aGlzLnNldENhbkRyYWcodGhpcy5nZXRFbGVtZW50KGV2ZW50KSk7XG4gIH07XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSB1bnNlbGVjdERyYWdnZWRPdmVyRWxlbWVudCgpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBtYWtlIHN1cmUgcHJldmlvdXMgZHJhZ2dlZCBvdmVyIGVsZW1lbnQgaXMgbWFya2VkIGFzIFwiZHJhZ2dlZCBvdXRcIlxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50Py5kcmFnZ2VkT3V0KCk7XG4gICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQgPSBudWxsO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBzZXRDYW5EcmFnKGVsZW1lbnQ6IERvbUVsZW1lbnQpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBpZiBzcGVjaWFsIGNsYXNzIGlzIHNldCBmb3IgdGhlIGVsZW1lbnQgLSBmb3JiaWQgZHJhZ2dpbmdcbiAgICAgKi9cbiAgICBpZiAoIWVsZW1lbnQuY2FuRHJhZygpKSB7XG4gICAgICBlbGVtZW50Lm1ha2VVbkRyYWdnYWJsZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIG1ha2Ugc3VyZSBkcmFnZ2luZyB0aGUgaXRlbSBpcyBub3QgZm9yYmlkZGVuIGJ5IGV4dGVybmFsIGZ1bmN0aW9uXG4gICAgICovXG4gICAgaWYgKHRoaXMuY2FuRHJhZ0NhbGxiYWNrKSB7XG4gICAgICBpZiAodGhpcy5jYW5EcmFnQ2FsbGJhY2sodGhpcy5nZXRFbGVtZW50SW5kZXgoZWxlbWVudCkpKSB7XG4gICAgICAgIGVsZW1lbnQubWFrZURyYWdnYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbWVudC5tYWtlVW5EcmFnZ2FibGUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZWxlbWVudC5tYWtlRHJhZ2dhYmxlKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIG9uRHJhZ092ZXJCb2R5ID0gKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkID0+IHtcbiAgICB0aGlzLmRyYWdnZWRQbGFjZWhvbGRlcj8ucmVwb3NpdGlvbihldmVudCk7XG4gIH07XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBjYW5Ecm9wKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5kcmFnZ2VkRWxlbWVudCB8fCAhdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpIHJldHVybiBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIGlmIHNwZWNpYWwgY2xhc3MgaXMgc2V0IGZvciB0aGUgZWxlbWVudCAtIGZvcmJpZCBkcm9wcGluZztcbiAgICAgKiBvdGhlcndpc2UgbWFrZSBzdXJlIGRyb3BwaW5nIG92ZXIgdGhlIGl0ZW0gaXMgbm90IGZvcmJpZGRlbiBieSBleHRlcm5hbCBmdW5jdGlvblxuICAgICAqL1xuICAgIGlmICghdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQuY2FuRHJvcCgpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNhbkRyb3BDYWxsYmFjaykge1xuICAgICAgcmV0dXJuIHRoaXMuY2FuRHJvcENhbGxiYWNrKFxuICAgICAgICB0aGlzLmdldEVsZW1lbnRJbmRleCh0aGlzLmRyYWdnZWRFbGVtZW50KSxcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50SW5kZXgodGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgcmVmcmVzaEVsZW1lbnRzKCk6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIHVuc3Vic2NyaWJlIGZyb20gYWxsIGV2ZW50IGxpc3RlbmVyc1xuICAgICAqL1xuICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIC8qKlxuICAgICAqIG1ha2Ugc3VyZSBubyBwbGFjZWhvbGRlciBhcmUgc3RpbGwgdmlzaWJsZVxuICAgICAqL1xuICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy4nICsgZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9QTEFDRUhPTERFUikuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgZWxlbWVudC5yZW1vdmUoKTtcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqIGdldCBhbGwgZWxlbWVudHMgdGhhdCBjYW4gcGFydGljaXBhdGUgaW4gZHJhZyBhbmQgZHJvcFxuICAgICAqL1xuICAgIGNvbnN0IGVsZW1lbnRzOiBIVE1MRWxlbWVudFtdID0gdGhpcy5nZXRBbGxFbGVtZW50cygpO1xuXG4gICAgLyoqXG4gICAgICogbWFrZSBzdXJlIHdlIGhhdmUgZW5vdWdoIGVsZW1lbnRzIHRvIGNvbnRpbnVlXG4gICAgICovXG4gICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA8IHRoaXMubWluQ291bnRUb0RyYWcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhZGQgcmVxdWlyZWQgY2FsbGJhY2tzIHRvIGFsbCBlbGVtZW50cyxcbiAgICAgKiBwcmVzZXJ2aW5nIHRoZWlyIHVuc3Vic2NyaWJlIGZ1bmN0aW9uc1xuICAgICAqL1xuICAgIGVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICBjb25zdCBmdW5jdGlvbnM6IFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OID0ge307XG5cbiAgICAgIGZ1bmN0aW9uc1snZHJhZ3N0YXJ0J10gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihlbGVtZW50LCAnZHJhZ3N0YXJ0JywgdGhpcy5vbkRyYWdTdGFydCk7XG4gICAgICBmdW5jdGlvbnNbJ2RyYWdlbmQnXSA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGVsZW1lbnQsICdkcmFnZW5kJywgdGhpcy5vbkRyYWdFbmQpO1xuICAgICAgZnVuY3Rpb25zWydkcmFnb3ZlciddID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZWxlbWVudCwgJ2RyYWdvdmVyJywgdGhpcy5vbkRyYWdPdmVyKTtcbiAgICAgIGZ1bmN0aW9uc1snZHJvcCddID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZWxlbWVudCwgJ2Ryb3AnLCB0aGlzLm9uRHJvcCk7XG4gICAgICBmdW5jdGlvbnNbJ21vdXNlZW50ZXInXSA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGVsZW1lbnQsICdtb3VzZWVudGVyJywgdGhpcy5vbk1vdXNlRW50ZXIpO1xuXG4gICAgICB0aGlzLnVuc3Vic2NyaWJlRnVuY3Rpb25zLnNldChlbGVtZW50LCBmdW5jdGlvbnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZUZyb21FdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRnVuY3Rpb25zLmZvckVhY2goKGNvbGxlY3Rpb24pID0+IHtcbiAgICAgIE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbikuZm9yRWFjaCgoZnVuYykgPT4gZnVuYygpKTtcbiAgICB9KTtcblxuICAgIHRoaXMudW5zdWJzY3JpYmVGdW5jdGlvbnMgPSBuZXcgTWFwKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGdldEFsbEVsZW1lbnRzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IHJlc3VsdDogSFRNTEVsZW1lbnRbXSA9IFtdO1xuXG4gICAgaWYgKHRoaXMuZHJhZ2dhYmxlTGlzdCkge1xuICAgICAgLyoqXG4gICAgICAgKiBsb29wIHRocm91Z2ggaW1tZWRpYXRlIGNoaWxkcmVuIG9mIHRoZSBsaXN0XG4gICAgICAgKi9cbiAgICAgICg8SFRNTEVsZW1lbnRbXT5BcnJheS5mcm9tKHRoaXMuZHJhZ2dhYmxlTGlzdC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKSkuZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIGVsZW1lbnQgaXMgc3RhdGljIGlmIGl0IGhhcyBib3RoIFwibm8tZHJvcFwiIGFuZCBcIm5vLWRyYWdcIiBjbGFzc2VzXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBpc1N0YXRpYzogYm9vbGVhbiA9XG4gICAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuTk9fRFJPUCkgJiZcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhkcmFnQW5kRHJvcExpc3RDbGFzcy5OT19EUkFHKTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogaWdub3JlIHN0YXRpYyBlbGVtZW50cyBhbmQgZHJhZ2dlZCBwbGFjZWhvbGRlciBlbGVtZW50IGZyb20gdGhlIGxpc3RcbiAgICAgICAgICovXG4gICAgICAgIGlmICghaXNTdGF0aWMgJiYgIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLkRSQUdHRURfUExBQ0VIT0xERVIpKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goZWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGdldEVsZW1lbnQoZXZlbnQ6IERyYWdFdmVudCB8IE1vdXNlRXZlbnQpOiBEb21FbGVtZW50IHtcbiAgICByZXR1cm4gbmV3IERvbUVsZW1lbnQoPEhUTUxFbGVtZW50PmV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBnZXRFbGVtZW50SW5kZXgoZWxlbWVudDogRG9tRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsRWxlbWVudHMoKS5pbmRleE9mKGVsZW1lbnQuZG9tKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgaXNEcmFnZ2luZ092ZXJTZWxmKGVsZW1lbnQ6IERvbUVsZW1lbnQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZHJhZ2dlZEVsZW1lbnQ/LmRvbSA9PT0gZWxlbWVudD8uZG9tO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZHJhZ2dhYmxlLWxpc3RcIiAjZHJhZ2dhYmxlTGlzdCAoZHJhZ2xlYXZlKT1cIm9uTGlzdERyYWdMZWF2ZSgkZXZlbnQpXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AdsDragAndDropListComponent } from './drag-and-drop-list.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsDragAndDropListModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListModule, declarations: [AdsDragAndDropListComponent], imports: [CommonModule], exports: [AdsDragAndDropListComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsDragAndDropListModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [AdsDragAndDropListComponent],\n declarations: [AdsDragAndDropListComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFPN0UsTUFBTSxPQUFPLHdCQUF3Qjs4R0FBeEIsd0JBQXdCOytHQUF4Qix3QkFBd0IsaUJBRnBCLDJCQUEyQixhQUZoQyxZQUFZLGFBQ1osMkJBQTJCOytHQUcxQix3QkFBd0IsWUFKekIsWUFBWTs7MkZBSVgsd0JBQXdCO2tCQUxwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3RDLFlBQVksRUFBRSxDQUFDLDJCQUEyQixDQUFDO2lCQUM1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWRzRHJhZ0FuZERyb3BMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNEcmFnQW5kRHJvcExpc3RNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1kcmFnLWFuZC1kcm9wLWxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2FzY2VudGdsLWFkcy11aS1zcmMtbGliLWNvbXBvbmVudHMtZHJhZy1hbmQtZHJvcC1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ascentgl-ads-ui-src-lib-components-drag-and-drop-list.mjs","sources":["../tmp-esm2022/src/lib/components/drag-and-drop-list/dom.element.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/dragged.placeholder.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/drag-and-drop-list.component.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/drag-and-drop-list.module.js","../tmp-esm2022/src/lib/components/drag-and-drop-list/ascentgl-ads-ui-src-lib-components-drag-and-drop-list.js"],"sourcesContent":["export class DomElement {\n constructor(domElement) {\n this.domElement = domElement;\n }\n get dom() {\n return this.domElement;\n }\n canDrop() {\n return !this.dom.classList.contains(\"no-drop\" /* dragAndDropListClass.NO_DROP */);\n }\n canDrag() {\n return !this.dom.classList.contains(\"no-drag\" /* dragAndDropListClass.NO_DRAG */);\n }\n isDropBlocked() {\n return this.dom.classList.contains(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n makeDraggable() {\n this.dom.setAttribute('draggable', 'true');\n }\n makeUnDraggable() {\n this.dom.removeAttribute('draggable');\n }\n unblockDrop() {\n this.dom.classList.remove(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n clone() {\n const clone = this.dom.cloneNode(true);\n clone.classList.add(\"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */);\n const targetRect = this.dom.getBoundingClientRect();\n /**\n * preserve target dimensions\n */\n clone.style.width = targetRect.width + 'px';\n clone.style.height = targetRect.height + 'px';\n /**\n * modify clone styles\n */\n Object.assign(clone.style, {\n position: 'fixed', //required to allow free dragging of the clone\n pointerEvents: 'none', // required to allow drag events for items under the clone\n zIndex: '1000', // required to make sure that draggable element is positioned over other elements\n });\n return clone;\n }\n blockDrop() {\n this.dom.classList.add(\"drop-blocked\" /* dragAndDropListClass.DROP_BLOCKED */);\n }\n draggedOver() {\n this.dom.classList.add(\"dragged-over\" /* dragAndDropListClass.DRAGGED_OVER */);\n }\n draggedOut() {\n this.dom.classList.remove(\"dragged-over\" /* dragAndDropListClass.DRAGGED_OVER */);\n this.unblockDrop();\n }\n isDragged() {\n this.dom.classList.add(\"is-dragged\" /* dragAndDropListClass.IS_DRAGGED */);\n }\n isNotDragged() {\n this.dom.classList.remove(\"is-dragged\" /* dragAndDropListClass.IS_DRAGGED */);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2RvbS5lbGVtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQW9CLFVBQXVCO1FBQXZCLGVBQVUsR0FBVixVQUFVLENBQWE7SUFBRyxDQUFDO0lBRS9DLElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxRQUFRLDhDQUE4QixDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsOENBQThCLENBQUM7SUFDcEUsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsd0RBQW1DLENBQUM7SUFDeEUsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sd0RBQW1DLENBQUM7SUFDL0QsQ0FBQztJQUVELEtBQUs7UUFDSCxNQUFNLEtBQUssR0FBZ0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFnQixDQUFDO1FBRW5FLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxzRUFBMEMsQ0FBQztRQUU5RCxNQUFNLFVBQVUsR0FBWSxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFN0Q7O1dBRUc7UUFDSCxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUM1QyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUU5Qzs7V0FFRztRQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUN6QixRQUFRLEVBQUUsT0FBTyxFQUFFLDhDQUE4QztZQUNqRSxhQUFhLEVBQUUsTUFBTSxFQUFFLDBEQUEwRDtZQUNqRixNQUFNLEVBQUUsTUFBTSxFQUFFLGlGQUFpRjtTQUNsRyxDQUFDLENBQUM7UUFFSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyx3REFBbUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsd0RBQW1DLENBQUM7SUFDNUQsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLHdEQUFtQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsb0RBQWlDLENBQUM7SUFDMUQsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLG9EQUFpQyxDQUFDO0lBQzdELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRyYWdBbmREcm9wTGlzdENsYXNzIH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuZW51bXMnO1xuXG5leHBvcnQgY2xhc3MgRG9tRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZG9tRWxlbWVudDogSFRNTEVsZW1lbnQpIHt9XG5cbiAgZ2V0IGRvbSgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZG9tRWxlbWVudDtcbiAgfVxuXG4gIGNhbkRyb3AoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmRvbS5jbGFzc0xpc3QuY29udGFpbnMoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuTk9fRFJPUCk7XG4gIH1cblxuICBjYW5EcmFnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5kb20uY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLk5PX0RSQUcpO1xuICB9XG5cbiAgaXNEcm9wQmxvY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kb20uY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLkRST1BfQkxPQ0tFRCk7XG4gIH1cblxuICBtYWtlRHJhZ2dhYmxlKCk6IHZvaWQge1xuICAgIHRoaXMuZG9tLnNldEF0dHJpYnV0ZSgnZHJhZ2dhYmxlJywgJ3RydWUnKTtcbiAgfVxuXG4gIG1ha2VVbkRyYWdnYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5yZW1vdmVBdHRyaWJ1dGUoJ2RyYWdnYWJsZScpO1xuICB9XG5cbiAgdW5ibG9ja0Ryb3AoKTogdm9pZCB7XG4gICAgdGhpcy5kb20uY2xhc3NMaXN0LnJlbW92ZShkcmFnQW5kRHJvcExpc3RDbGFzcy5EUk9QX0JMT0NLRUQpO1xuICB9XG5cbiAgY2xvbmUoKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IGNsb25lOiBIVE1MRWxlbWVudCA9IHRoaXMuZG9tLmNsb25lTm9kZSh0cnVlKSBhcyBIVE1MRWxlbWVudDtcblxuICAgIGNsb25lLmNsYXNzTGlzdC5hZGQoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9QTEFDRUhPTERFUik7XG5cbiAgICBjb25zdCB0YXJnZXRSZWN0OiBET01SZWN0ID0gdGhpcy5kb20uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAvKipcbiAgICAgKiBwcmVzZXJ2ZSB0YXJnZXQgZGltZW5zaW9uc1xuICAgICAqL1xuICAgIGNsb25lLnN0eWxlLndpZHRoID0gdGFyZ2V0UmVjdC53aWR0aCArICdweCc7XG4gICAgY2xvbmUuc3R5bGUuaGVpZ2h0ID0gdGFyZ2V0UmVjdC5oZWlnaHQgKyAncHgnO1xuXG4gICAgLyoqXG4gICAgICogbW9kaWZ5IGNsb25lIHN0eWxlc1xuICAgICAqL1xuICAgIE9iamVjdC5hc3NpZ24oY2xvbmUuc3R5bGUsIHtcbiAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLCAvL3JlcXVpcmVkIHRvIGFsbG93IGZyZWUgZHJhZ2dpbmcgb2YgdGhlIGNsb25lXG4gICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsIC8vIHJlcXVpcmVkIHRvIGFsbG93IGRyYWcgZXZlbnRzIGZvciBpdGVtcyB1bmRlciB0aGUgY2xvbmVcbiAgICAgIHpJbmRleDogJzEwMDAnLCAvLyByZXF1aXJlZCB0byBtYWtlIHN1cmUgdGhhdCBkcmFnZ2FibGUgZWxlbWVudCBpcyBwb3NpdGlvbmVkIG92ZXIgb3RoZXIgZWxlbWVudHNcbiAgICB9KTtcblxuICAgIHJldHVybiBjbG9uZTtcbiAgfVxuXG4gIGJsb2NrRHJvcCgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QuYWRkKGRyYWdBbmREcm9wTGlzdENsYXNzLkRST1BfQkxPQ0tFRCk7XG4gIH1cblxuICBkcmFnZ2VkT3ZlcigpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QuYWRkKGRyYWdBbmREcm9wTGlzdENsYXNzLkRSQUdHRURfT1ZFUik7XG4gIH1cblxuICBkcmFnZ2VkT3V0KCk6IHZvaWQge1xuICAgIHRoaXMuZG9tLmNsYXNzTGlzdC5yZW1vdmUoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9PVkVSKTtcbiAgICB0aGlzLnVuYmxvY2tEcm9wKCk7XG4gIH1cblxuICBpc0RyYWdnZWQoKTogdm9pZCB7XG4gICAgdGhpcy5kb20uY2xhc3NMaXN0LmFkZChkcmFnQW5kRHJvcExpc3RDbGFzcy5JU19EUkFHR0VEKTtcbiAgfVxuXG4gIGlzTm90RHJhZ2dlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmRvbS5jbGFzc0xpc3QucmVtb3ZlKGRyYWdBbmREcm9wTGlzdENsYXNzLklTX0RSQUdHRUQpO1xuICB9XG59XG4iXX0=","export class DraggedPlaceholder {\n constructor(element, container, event, renderer) {\n this.renderer = renderer;\n this.positions = { x: 0, y: 0 };\n this.cursorPos = { x: 0, y: 0 };\n this.domElement = element.clone();\n /**\n * get target element DOMRect data\n */\n const targetRect = element.dom.getBoundingClientRect();\n /**\n * save cursor position relative to target element\n * this will help calculate dragged item position relative to the cursor\n */\n this.positions = {\n x: event.clientX - targetRect.left,\n y: event.clientY - targetRect.top,\n };\n this.hideDefaultDragPlaceholder(event);\n /**\n * add clone to the list\n */\n container.append(this.domElement);\n this.scrollUnsubscribeFunction = this.renderer.listen('document', 'scroll', () => {\n this.setDomPosition();\n });\n /**\n * make initial placeholder positioning\n */\n this.reposition(event);\n }\n remove() {\n this.domElement.remove();\n if (this.scrollUnsubscribeFunction) {\n this.scrollUnsubscribeFunction();\n }\n }\n reposition(event) {\n this.cursorPos = { x: event.clientX, y: event.clientY };\n this.setDomPosition();\n }\n setDomPosition() {\n /**\n * position placeholder relative to the cursor\n */\n this.domElement.style.left = this.cursorPos.x - this.positions.x + 'px';\n this.domElement.style.top = this.cursorPos.y - this.positions.y + 'px';\n }\n hideDefaultDragPlaceholder(event) {\n const placeholder = document.createElement('img');\n placeholder.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';\n Object.assign(placeholder.style, {\n display: 'block',\n width: '0',\n height: '0',\n });\n /**\n * replace default browser drag placeholder with transparent image\n */\n event.dataTransfer?.setDragImage(placeholder, 0, 0);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ2dlZC5wbGFjZWhvbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZ2dlZC5wbGFjZWhvbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQ0UsT0FBbUIsRUFDbkIsU0FBc0IsRUFDdEIsS0FBZ0IsRUFDUixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBUlosY0FBUyxHQUE2QixFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBRTlELGNBQVMsR0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBUXpDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWxDOztXQUVHO1FBQ0gsTUFBTSxVQUFVLEdBQVksT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhFOzs7V0FHRztRQUNILElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDZixDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsSUFBSTtZQUNsQyxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsR0FBRztTQUNsQyxDQUFDO1FBRUYsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDOztXQUVHO1FBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbEMsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBUyxFQUFFO1lBQ3JGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztRQUVIOztXQUVHO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFpQjtRQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWM7UUFDcEI7O1dBRUc7UUFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDekUsQ0FBQztJQUVPLDBCQUEwQixDQUFDLEtBQWdCO1FBQ2pELE1BQU0sV0FBVyxHQUFxQixRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BFLFdBQVcsQ0FBQyxHQUFHLEdBQUcsb0ZBQW9GLENBQUM7UUFFdkcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFO1lBQy9CLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLEtBQUssRUFBRSxHQUFHO1lBQ1YsTUFBTSxFQUFFLEdBQUc7U0FDWixDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNILEtBQUssQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tRWxlbWVudCB9IGZyb20gJy4vZG9tLmVsZW1lbnQnO1xuaW1wb3J0IHsgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbnR5cGUgQ09PUkRTID0geyB4OiBudW1iZXI7IHk6IG51bWJlciB9O1xuXG5leHBvcnQgY2xhc3MgRHJhZ2dlZFBsYWNlaG9sZGVyIHtcbiAgcmVhZG9ubHkgZG9tRWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgcG9zaXRpb25zOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0gPSB7IHg6IDAsIHk6IDAgfTtcbiAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxVbnN1YnNjcmliZUZ1bmN0aW9uPzogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBjdXJzb3JQb3M6IENPT1JEUyA9IHsgeDogMCwgeTogMCB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnQ6IERvbUVsZW1lbnQsXG4gICAgY29udGFpbmVyOiBIVE1MRWxlbWVudCxcbiAgICBldmVudDogRHJhZ0V2ZW50LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgKSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gZWxlbWVudC5jbG9uZSgpO1xuXG4gICAgLyoqXG4gICAgICogZ2V0IHRhcmdldCBlbGVtZW50IERPTVJlY3QgZGF0YVxuICAgICAqL1xuICAgIGNvbnN0IHRhcmdldFJlY3Q6IERPTVJlY3QgPSBlbGVtZW50LmRvbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIC8qKlxuICAgICAqIHNhdmUgY3Vyc29yIHBvc2l0aW9uIHJlbGF0aXZlIHRvIHRhcmdldCBlbGVtZW50XG4gICAgICogdGhpcyB3aWxsIGhlbHAgY2FsY3VsYXRlIGRyYWdnZWQgaXRlbSBwb3NpdGlvbiByZWxhdGl2ZSB0byB0aGUgY3Vyc29yXG4gICAgICovXG4gICAgdGhpcy5wb3NpdGlvbnMgPSB7XG4gICAgICB4OiBldmVudC5jbGllbnRYIC0gdGFyZ2V0UmVjdC5sZWZ0LFxuICAgICAgeTogZXZlbnQuY2xpZW50WSAtIHRhcmdldFJlY3QudG9wLFxuICAgIH07XG5cbiAgICB0aGlzLmhpZGVEZWZhdWx0RHJhZ1BsYWNlaG9sZGVyKGV2ZW50KTtcblxuICAgIC8qKlxuICAgICAqIGFkZCBjbG9uZSB0byB0aGUgbGlzdFxuICAgICAqL1xuICAgIGNvbnRhaW5lci5hcHBlbmQodGhpcy5kb21FbGVtZW50KTtcblxuICAgIHRoaXMuc2Nyb2xsVW5zdWJzY3JpYmVGdW5jdGlvbiA9IHRoaXMucmVuZGVyZXIubGlzdGVuKCdkb2N1bWVudCcsICdzY3JvbGwnLCAoKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLnNldERvbVBvc2l0aW9uKCk7XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiBtYWtlIGluaXRpYWwgcGxhY2Vob2xkZXIgcG9zaXRpb25pbmdcbiAgICAgKi9cbiAgICB0aGlzLnJlcG9zaXRpb24oZXZlbnQpO1xuICB9XG5cbiAgcmVtb3ZlKCk6IHZvaWQge1xuICAgIHRoaXMuZG9tRWxlbWVudC5yZW1vdmUoKTtcblxuICAgIGlmICh0aGlzLnNjcm9sbFVuc3Vic2NyaWJlRnVuY3Rpb24pIHtcbiAgICAgIHRoaXMuc2Nyb2xsVW5zdWJzY3JpYmVGdW5jdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHJlcG9zaXRpb24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmN1cnNvclBvcyA9IHsgeDogZXZlbnQuY2xpZW50WCwgeTogZXZlbnQuY2xpZW50WSB9O1xuICAgIHRoaXMuc2V0RG9tUG9zaXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RG9tUG9zaXRpb24oKTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogcG9zaXRpb24gcGxhY2Vob2xkZXIgcmVsYXRpdmUgdG8gdGhlIGN1cnNvclxuICAgICAqL1xuICAgIHRoaXMuZG9tRWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhpcy5jdXJzb3JQb3MueCAtIHRoaXMucG9zaXRpb25zLnggKyAncHgnO1xuICAgIHRoaXMuZG9tRWxlbWVudC5zdHlsZS50b3AgPSB0aGlzLmN1cnNvclBvcy55IC0gdGhpcy5wb3NpdGlvbnMueSArICdweCc7XG4gIH1cblxuICBwcml2YXRlIGhpZGVEZWZhdWx0RHJhZ1BsYWNlaG9sZGVyKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwbGFjZWhvbGRlcjogSFRNTEltYWdlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xuICAgIHBsYWNlaG9sZGVyLnNyYyA9ICdkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFQLy8vd0FBQUNINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQ1JBRUFPdz09JztcblxuICAgIE9iamVjdC5hc3NpZ24ocGxhY2Vob2xkZXIuc3R5bGUsIHtcbiAgICAgIGRpc3BsYXk6ICdibG9jaycsXG4gICAgICB3aWR0aDogJzAnLFxuICAgICAgaGVpZ2h0OiAnMCcsXG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiByZXBsYWNlIGRlZmF1bHQgYnJvd3NlciBkcmFnIHBsYWNlaG9sZGVyIHdpdGggdHJhbnNwYXJlbnQgaW1hZ2VcbiAgICAgKi9cbiAgICBldmVudC5kYXRhVHJhbnNmZXI/LnNldERyYWdJbWFnZShwbGFjZWhvbGRlciwgMCwgMCk7XG4gIH1cbn1cbiJdfQ==","import { Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { DomElement } from './dom.element';\nimport { DraggedPlaceholder } from './dragged.placeholder';\nimport * as i0 from \"@angular/core\";\nexport class AdsDragAndDropListComponent {\n /** @ignore */\n constructor(renderer) {\n this.renderer = renderer;\n /** If total items count is less than this value, drag&drop will be disabled */\n this.minCountToDrag = 2;\n /** Provide subject element, which will allow to refresh the list. NOTE: refreshing is required every time the list is updated from the outside */\n this.refresh = new Subject();\n /** @ignore */\n this.draggedElement = null;\n /** @ignore */\n this.draggedPlaceholder = null;\n /** @ignore */\n this.unsubscribeFunctions = new Map();\n /** @ignore */\n this.ngUnsubscribe = new Subject();\n this.draggedOverElement = null;\n /** @ignore */\n this.onDragStart = (event) => {\n /**\n * NOTE: register dragover for document body to overcome Firefox issue where clientX and clientY are 0 in 'drag' event\n */\n this.unsubscribeFromDocumentDragOver = this.renderer.listen(document.body, 'dragover', this.onDragOverBody);\n /**\n * store currently dragged element\n */\n this.draggedElement = this.getElement(event);\n /**\n * replace default browser dragged element with the custom one\n */\n this.draggedPlaceholder = new DraggedPlaceholder(this.draggedElement, this.draggableList?.nativeElement, event, this.renderer);\n /**\n * mark dragged element with special class\n */\n this.draggedElement.isDragged();\n /**\n * block drop into the dragged element\n */\n this.draggedElement.blockDrop();\n };\n /** @ignore */\n this.onDragEnd = () => {\n /**\n * remove special class from dragged element mark dragged element\n */\n this.draggedElement?.isNotDragged();\n this.draggedElement = null;\n /**\n * if we subscribed to document dragover - unsubscribe from it\n */\n if (this.unsubscribeFromDocumentDragOver) {\n this.unsubscribeFromDocumentDragOver();\n }\n /**\n * remove dragged placeholder from DOM\n */\n this.draggedPlaceholder?.remove();\n this.draggedPlaceholder = null;\n };\n /** @ignore\n * NOTE: we rely on onDragOver instead of DragEnter and DragLeave because those events also fire when we enter and leave\n * child elements - the behavior we don't need\n */\n this.onDragOver = (event) => {\n /**\n * NOTE: this is required for \"drop\" event to work\n */\n event.preventDefault();\n /**\n * do nothing if we have no dragged element, or we are still over the same element\n */\n if (!this.draggedElement || this.draggedOverElement?.dom === event.currentTarget) {\n return;\n }\n /**\n * make sure previous dragged over element is marked as \"dragged out\"\n */\n this.unselectDraggedOverElement();\n this.draggedOverElement = this.getElement(event);\n /**\n * do nothing if dragged element and element, we are dragging over is the same\n */\n if (this.isDraggingOverSelf(this.draggedOverElement)) {\n return;\n }\n this.draggedOverElement.draggedOver();\n /**\n * if drop is blocked - add special class to the dragged element\n */\n if (this.canDrop()) {\n this.draggedOverElement.unblockDrop();\n }\n else {\n this.draggedOverElement.blockDrop();\n }\n };\n /** @ignore */\n this.onDrop = (event) => {\n /**\n * if drop is blocked - do nothing\n */\n if (!this.canDrop())\n return;\n this.unselectDraggedOverElement();\n const target = this.getElement(event);\n /**\n * preserve drop blocked state before cleaning classes - it will be needed later\n */\n const isTargetBlocked = target.isDropBlocked();\n this.getElement(event).draggedOut();\n /**\n * if we have no dragged element, we are dropping on self or target is blocked - do nothing\n */\n if (!this.draggedElement || this.isDraggingOverSelf(target) || isTargetBlocked) {\n return;\n }\n const sourceIndex = this.getElementIndex(this.draggedElement);\n const targetIndex = this.getElementIndex(target);\n /**\n * if source index is less than target index - means we are dragging down;\n * otherwise we are dragging up\n * NOTE: we utilise \"before\" method for element insertion in both cases, because \"after\" can\n * break order of \"drag-static\" elements (if they are present)\n */\n if (sourceIndex < targetIndex) {\n const allElements = this.getAllElements();\n /**\n * loop through all element beginning with next to the currently dragged element\n * and ending with drop target element and move all of them up;\n * this will result in target element being moved down to required position\n */\n for (let i = sourceIndex + 1; i <= targetIndex; i++) {\n const target = allElements[i];\n if (target) {\n this.draggedElement.dom.before(target);\n }\n }\n }\n else {\n target.dom.before(this.draggedElement.dom);\n }\n /**\n * if possible emit indexes old and new indexes of the repositioned items\n */\n if (this.dropCallback) {\n this.dropCallback({\n before: sourceIndex,\n after: this.getElementIndex(this.draggedElement),\n }, {\n before: targetIndex,\n after: this.getElementIndex(target),\n });\n }\n };\n /** @ignore */\n this.onMouseEnter = (event) => {\n this.setCanDrag(this.getElement(event));\n };\n /** @ignore */\n this.onDragOverBody = (event) => {\n this.draggedPlaceholder?.reposition(event);\n };\n }\n /** @ignore */\n ngOnInit() {\n /**\n * if refresh command was emitted - refresh elements\n * NOTE: we do it in timeout to allow DOM to redraw first\n */\n this.refresh.pipe(takeUntil(this.ngUnsubscribe)).subscribe(() => {\n setTimeout(() => this.refreshElements());\n });\n }\n /** @ignore */\n ngAfterContentInit() {\n this.refreshElements();\n }\n /** @ignore */\n ngOnDestroy() {\n this.unsubscribeFromEventListeners();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n /** @ignore */\n onListDragLeave(event) {\n /**\n * if we dragged out of the element - unselect it\n */\n if (event.relatedTarget instanceof HTMLElement &&\n this.draggedOverElement &&\n !this.draggedOverElement.dom.contains(event.relatedTarget)) {\n this.unselectDraggedOverElement();\n }\n }\n /** @ignore */\n unselectDraggedOverElement() {\n /**\n * make sure previous dragged over element is marked as \"dragged out\"\n */\n this.draggedOverElement?.draggedOut();\n this.draggedOverElement = null;\n }\n /** @ignore */\n setCanDrag(element) {\n /**\n * if special class is set for the element - forbid dragging\n */\n if (!element.canDrag()) {\n element.makeUnDraggable();\n return;\n }\n /**\n * make sure dragging the item is not forbidden by external function\n */\n if (this.canDragCallback) {\n if (this.canDragCallback(this.getElementIndex(element))) {\n element.makeDraggable();\n }\n else {\n element.makeUnDraggable();\n }\n return;\n }\n element.makeDraggable();\n }\n /** @ignore */\n canDrop() {\n if (!this.draggedElement || !this.draggedOverElement)\n return false;\n /**\n * if special class is set for the element - forbid dropping;\n * otherwise make sure dropping over the item is not forbidden by external function\n */\n if (!this.draggedOverElement.canDrop()) {\n return false;\n }\n else if (this.canDropCallback) {\n return this.canDropCallback(this.getElementIndex(this.draggedElement), this.getElementIndex(this.draggedOverElement));\n }\n return true;\n }\n /** @ignore */\n refreshElements() {\n /**\n * unsubscribe from all event listeners\n */\n this.unsubscribeFromEventListeners();\n /**\n * make sure no placeholder are still visible\n */\n document.querySelectorAll('.' + \"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */).forEach((element) => {\n element.remove();\n });\n /**\n * get all elements that can participate in drag and drop\n */\n const elements = this.getAllElements();\n /**\n * make sure we have enough elements to continue\n */\n if (elements.length < this.minCountToDrag) {\n return;\n }\n /**\n * add required callbacks to all elements,\n * preserving their unsubscribe functions\n */\n elements.forEach((element) => {\n const functions = {};\n functions['dragstart'] = this.renderer.listen(element, 'dragstart', this.onDragStart);\n functions['dragend'] = this.renderer.listen(element, 'dragend', this.onDragEnd);\n functions['dragover'] = this.renderer.listen(element, 'dragover', this.onDragOver);\n functions['drop'] = this.renderer.listen(element, 'drop', this.onDrop);\n functions['mouseenter'] = this.renderer.listen(element, 'mouseenter', this.onMouseEnter);\n this.unsubscribeFunctions.set(element, functions);\n });\n }\n /** @ignore */\n unsubscribeFromEventListeners() {\n this.unsubscribeFunctions.forEach((collection) => {\n Object.values(collection).forEach((func) => func());\n });\n this.unsubscribeFunctions = new Map();\n }\n /** @ignore */\n getAllElements() {\n const result = [];\n if (this.draggableList) {\n /**\n * loop through immediate children of the list\n */\n Array.from(this.draggableList.nativeElement.children).forEach((element) => {\n /**\n * element is static if it has both \"no-drop\" and \"no-drag\" classes\n */\n const isStatic = element.classList.contains(\"no-drop\" /* dragAndDropListClass.NO_DROP */) &&\n element.classList.contains(\"no-drag\" /* dragAndDropListClass.NO_DRAG */);\n /**\n * ignore static elements and dragged placeholder element from the list\n */\n if (!isStatic && !element.classList.contains(\"dragged-placeholder\" /* dragAndDropListClass.DRAGGED_PLACEHOLDER */)) {\n result.push(element);\n }\n });\n }\n return result;\n }\n /** @ignore */\n getElement(event) {\n return new DomElement(event.currentTarget);\n }\n /** @ignore */\n getElementIndex(element) {\n return this.getAllElements().indexOf(element.dom);\n }\n /** @ignore */\n isDraggingOverSelf(element) {\n return this.draggedElement?.dom === element?.dom;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.3\", type: AdsDragAndDropListComponent, isStandalone: false, selector: \"ads-drag-and-drop-list\", inputs: { dropCallback: \"dropCallback\", canDropCallback: \"canDropCallback\", canDragCallback: \"canDragCallback\", minCountToDrag: \"minCountToDrag\", refresh: \"refresh\" }, viewQueries: [{ propertyName: \"draggableList\", first: true, predicate: [\"draggableList\"], descendants: true, read: ElementRef, static: true }, { propertyName: \"dynamicContent\", first: true, predicate: [\"dynamicContent\"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: \"<div class=\\\"draggable-list\\\" #draggableList (dragleave)=\\\"onListDragLeave($event)\\\">\\n <ng-content></ng-content>\\n</div>\\n\", styles: [\":host{display:block}:host ::ng-deep .draggable-list>*{box-sizing:border-box;background-color:var(--color-white);color:var(--color-dark)}:host ::ng-deep .draggable-list>*[draggable=true]{cursor:move}:host ::ng-deep .draggable-list>*.is-dragged{opacity:.25}:host ::ng-deep .draggable-list>*:not(.drag-placeholder){width:100%}:host ::ng-deep .draggable-list>*.dragged-over:not(.drop-blocked){background-color:var(--color-light-30)}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ads-drag-and-drop-list', standalone: false, template: \"<div class=\\\"draggable-list\\\" #draggableList (dragleave)=\\\"onListDragLeave($event)\\\">\\n <ng-content></ng-content>\\n</div>\\n\", styles: [\":host{display:block}:host ::ng-deep .draggable-list>*{box-sizing:border-box;background-color:var(--color-white);color:var(--color-dark)}:host ::ng-deep .draggable-list>*[draggable=true]{cursor:move}:host ::ng-deep .draggable-list>*.is-dragged{opacity:.25}:host ::ng-deep .draggable-list>*:not(.drag-placeholder){width:100%}:host ::ng-deep .draggable-list>*.dragged-over:not(.drop-blocked){background-color:var(--color-light-30)}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { draggableList: [{\n type: ViewChild,\n args: ['draggableList', { read: ElementRef, static: true }]\n }], dynamicContent: [{\n type: ViewChild,\n args: ['dynamicContent', { read: ElementRef, static: true }]\n }], dropCallback: [{\n type: Input\n }], canDropCallback: [{\n type: Input\n }], canDragCallback: [{\n type: Input\n }], minCountToDrag: [{\n type: Input\n }], refresh: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFhM0QsTUFBTSxPQUFPLDJCQUEyQjtJQWtDdEMsY0FBYztJQUNkLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFwQnZDLCtFQUErRTtRQUN0RSxtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUU1QixtSkFBbUo7UUFDMUksWUFBTyxHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRELGNBQWM7UUFDTixtQkFBYyxHQUFzQixJQUFJLENBQUM7UUFDakQsY0FBYztRQUNOLHVCQUFrQixHQUE4QixJQUFJLENBQUM7UUFHN0QsY0FBYztRQUNOLHlCQUFvQixHQUF1RCxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzdGLGNBQWM7UUFDTixrQkFBYSxHQUFrQixJ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QUF0QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBSZW5kZXJlcjIsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRG9tRWxlbWVudCB9IGZyb20gJy4vZG9tLmVsZW1lbnQnO1xuaW1wb3J0IHsgRHJhZ2dlZFBsYWNlaG9sZGVyIH0gZnJvbSAnLi9kcmFnZ2VkLnBsYWNlaG9sZGVyJztcbmltcG9ydCB7IGRyYWdBbmREcm9wTGlzdENsYXNzIH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuZW51bXMnO1xuaW1wb3J0IHsgR0VORVJJQ19DT0xMRUNUSU9OIH0gZnJvbSAnQGFzY2VudGdsL2Fkcy11dGlscyc7XG5cbmV4cG9ydCB0eXBlIERST1BfQ0FMTEJBQ0tfSU5ERVhFUyA9IHsgYmVmb3JlOiBudW1iZXI7IGFmdGVyOiBudW1iZXIgfTtcbmV4cG9ydCB0eXBlIFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OID0gR0VORVJJQ19DT0xMRUNUSU9OPCgpID0+IHZvaWQ+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhZHMtZHJhZy1hbmQtZHJvcC1saXN0JyxcbiAgc3R5bGVVcmxzOiBbJ2RyYWctYW5kLWRyb3AtbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJ2RyYWctYW5kLWRyb3AtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIC8qKiBAaWdub3JlICovXG4gIEBWaWV3Q2hpbGQoJ2RyYWdnYWJsZUxpc3QnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBkcmFnZ2FibGVMaXN0PzogRWxlbWVudFJlZjtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgQFZpZXdDaGlsZCgnZHluYW1pY0NvbnRlbnQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBkeW5hbWljQ29udGVudD86IEVsZW1lbnRSZWY7XG5cbiAgLyoqIFRoaXMgZXh0ZXJuYWwgbWV0aG9kIHdpbGwgYmUgY2FsbGVkIGFmdGVyIHRoZSBpdGVtIGlzIGRyb3BwZWQgaW50byBuZXcgcG9zaXRpb24gKi9cbiAgQElucHV0KCkgZHJvcENhbGxiYWNrPzogKHNvdXJjZUluZGV4ZXM6IERST1BfQ0FMTEJBQ0tfSU5ERVhFUywgdGFyZ2V0SW5kZXhlczogRFJPUF9DQUxMQkFDS19JTkRFWEVTKSA9PiB2b2lkO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGRldGVybWluZSBpZiBpdGVtIGNhbiBiZSBkcm9wcGVkIG9uIHRoZSBzZWxlY3RlZCB0YXJnZXQgKi9cbiAgQElucHV0KCkgY2FuRHJvcENhbGxiYWNrPzogKHNvdXJjZUluZGV4OiBudW1iZXIsIHRhcmdldEluZGV4OiBudW1iZXIpID0+IGJvb2xlYW47XG5cbiAgLyoqIENhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIGlmIGl0ZW0gY2FuIGJlIGRyYWdnZWQgKi9cbiAgQElucHV0KCkgY2FuRHJhZ0NhbGxiYWNrPzogKHNvdXJjZUluZGV4OiBudW1iZXIpID0+IGJvb2xlYW47XG5cbiAgLyoqIElmIHRvdGFsIGl0ZW1zIGNvdW50IGlzIGxlc3MgdGhhbiB0aGlzIHZhbHVlLCBkcmFnJmRyb3Agd2lsbCBiZSBkaXNhYmxlZCAqL1xuICBASW5wdXQoKSBtaW5Db3VudFRvRHJhZyA9IDI7XG5cbiAgLyoqIFByb3ZpZGUgc3ViamVjdCBlbGVtZW50LCB3aGljaCB3aWxsIGFsbG93IHRvIHJlZnJlc2ggdGhlIGxpc3QuIE5PVEU6IHJlZnJlc2hpbmcgaXMgcmVxdWlyZWQgZXZlcnkgdGltZSB0aGUgbGlzdCBpcyB1cGRhdGVkIGZyb20gdGhlIG91dHNpZGUgICovXG4gIEBJbnB1dCgpIHJlZnJlc2g6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgZHJhZ2dlZEVsZW1lbnQ6IERvbUVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBkcmFnZ2VkUGxhY2Vob2xkZXI6IERyYWdnZWRQbGFjZWhvbGRlciB8IG51bGwgPSBudWxsO1xuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIHVuc3Vic2NyaWJlRnJvbURvY3VtZW50RHJhZ092ZXI/OiAoKSA9PiB2b2lkO1xuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIHVuc3Vic2NyaWJlRnVuY3Rpb25zOiBNYXA8SFRNTEVsZW1lbnQsIFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OPiA9IG5ldyBNYXAoKTtcbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBwcml2YXRlIGRyYWdnZWRPdmVyRWxlbWVudDogRG9tRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBAaWdub3JlICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBpZiByZWZyZXNoIGNvbW1hbmQgd2FzIGVtaXR0ZWQgLSByZWZyZXNoIGVsZW1lbnRzXG4gICAgICogTk9URTogd2UgZG8gaXQgaW4gdGltZW91dCB0byBhbGxvdyBET00gdG8gcmVkcmF3IGZpcnN0XG4gICAgICovXG4gICAgdGhpcy5yZWZyZXNoLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVmcmVzaEVsZW1lbnRzKCkpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVmcmVzaEVsZW1lbnRzKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRnJvbUV2ZW50TGlzdGVuZXJzKCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIG9uTGlzdERyYWdMZWF2ZShldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogaWYgd2UgZHJhZ2dlZCBvdXQgb2YgdGhlIGVsZW1lbnQgLSB1bnNlbGVjdCBpdFxuICAgICAqL1xuICAgIGlmIChcbiAgICAgIGV2ZW50LnJlbGF0ZWRUYXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQgJiZcbiAgICAgICF0aGlzLmRyYWdnZWRPdmVyRWxlbWVudC5kb20uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICApIHtcbiAgICAgIHRoaXMudW5zZWxlY3REcmFnZ2VkT3ZlckVsZW1lbnQoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBvbkRyYWdTdGFydCA9IChldmVudDogRHJhZ0V2ZW50KTogdm9pZCA9PiB7XG4gICAgLyoqXG4gICAgICogTk9URTogcmVnaXN0ZXIgZHJhZ292ZXIgZm9yIGRvY3VtZW50IGJvZHkgdG8gb3ZlcmNvbWUgRmlyZWZveCBpc3N1ZSB3aGVyZSBjbGllbnRYIGFuZCBjbGllbnRZIGFyZSAwIGluICdkcmFnJyBldmVudFxuICAgICAqL1xuICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRG9jdW1lbnREcmFnT3ZlciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGRvY3VtZW50LmJvZHksICdkcmFnb3ZlcicsIHRoaXMub25EcmFnT3ZlckJvZHkpO1xuXG4gICAgLyoqXG4gICAgICogc3RvcmUgY3VycmVudGx5IGRyYWdnZWQgZWxlbWVudFxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZEVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQoZXZlbnQpO1xuXG4gICAgLyoqXG4gICAgICogcmVwbGFjZSBkZWZhdWx0IGJyb3dzZXIgZHJhZ2dlZCBlbGVtZW50IHdpdGggdGhlIGN1c3RvbSBvbmVcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRQbGFjZWhvbGRlciA9IG5ldyBEcmFnZ2VkUGxhY2Vob2xkZXIoXG4gICAgICB0aGlzLmRyYWdnZWRFbGVtZW50LFxuICAgICAgdGhpcy5kcmFnZ2FibGVMaXN0Py5uYXRpdmVFbGVtZW50LFxuICAgICAgZXZlbnQsXG4gICAgICB0aGlzLnJlbmRlcmVyLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBtYXJrIGRyYWdnZWQgZWxlbWVudCB3aXRoIHNwZWNpYWwgY2xhc3NcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmlzRHJhZ2dlZCgpO1xuXG4gICAgLyoqXG4gICAgICogYmxvY2sgZHJvcCBpbnRvIHRoZSBkcmFnZ2VkIGVsZW1lbnRcbiAgICAgKi9cbiAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmJsb2NrRHJvcCgpO1xuICB9O1xuXG4gIC8qKiBAaWdub3JlICovXG4gIG9uRHJhZ0VuZCA9ICgpOiB2b2lkID0+IHtcbiAgICAvKipcbiAgICAgKiByZW1vdmUgc3BlY2lhbCBjbGFzcyBmcm9tIGRyYWdnZWQgZWxlbWVudCBtYXJrIGRyYWdnZWQgZWxlbWVudFxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZEVsZW1lbnQ/LmlzTm90RHJhZ2dlZCgpO1xuXG4gICAgdGhpcy5kcmFnZ2VkRWxlbWVudCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBpZiB3ZSBzdWJzY3JpYmVkIHRvIGRvY3VtZW50IGRyYWdvdmVyIC0gdW5zdWJzY3JpYmUgZnJvbSBpdFxuICAgICAqL1xuICAgIGlmICh0aGlzLnVuc3Vic2NyaWJlRnJvbURvY3VtZW50RHJhZ092ZXIpIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRG9jdW1lbnREcmFnT3ZlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJlbW92ZSBkcmFnZ2VkIHBsYWNlaG9sZGVyIGZyb20gRE9NXG4gICAgICovXG4gICAgdGhpcy5kcmFnZ2VkUGxhY2Vob2xkZXI/LnJlbW92ZSgpO1xuICAgIHRoaXMuZHJhZ2dlZFBsYWNlaG9sZGVyID0gbnVsbDtcbiAgfTtcblxuICAvKiogQGlnbm9yZVxuICAgKiBOT1RFOiB3ZSByZWx5IG9uICBvbkRyYWdPdmVyIGluc3RlYWQgb2YgRHJhZ0VudGVyIGFuZCBEcmFnTGVhdmUgYmVjYXVzZSB0aG9zZSBldmVudHMgYWxzbyBmaXJlIHdoZW4gd2UgZW50ZXIgYW5kIGxlYXZlXG4gICAqIGNoaWxkIGVsZW1lbnRzIC0gdGhlIGJlaGF2aW9yIHdlIGRvbid0IG5lZWRcbiAgICovXG4gIG9uRHJhZ092ZXIgPSAoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8qKlxuICAgICAqIE5PVEU6IHRoaXMgaXMgcmVxdWlyZWQgZm9yIFwiZHJvcFwiIGV2ZW50IHRvIHdvcmtcbiAgICAgKi9cbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgLyoqXG4gICAgICogZG8gbm90aGluZyBpZiB3ZSBoYXZlIG5vIGRyYWdnZWQgZWxlbWVudCwgb3Igd2UgYXJlIHN0aWxsIG92ZXIgdGhlIHNhbWUgZWxlbWVudFxuICAgICAqL1xuICAgIGlmICghdGhpcy5kcmFnZ2VkRWxlbWVudCB8fCB0aGlzLmRyYWdnZWRPdmVyRWxlbWVudD8uZG9tID09PSBldmVudC5jdXJyZW50VGFyZ2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbWFrZSBzdXJlIHByZXZpb3VzIGRyYWdnZWQgb3ZlciBlbGVtZW50IGlzIG1hcmtlZCBhcyBcImRyYWdnZWQgb3V0XCJcbiAgICAgKi9cbiAgICB0aGlzLnVuc2VsZWN0RHJhZ2dlZE92ZXJFbGVtZW50KCk7XG5cbiAgICB0aGlzLmRyYWdnZWRPdmVyRWxlbWVudCA9IHRoaXMuZ2V0RWxlbWVudChldmVudCk7XG5cbiAgICAvKipcbiAgICAgKiBkbyBub3RoaW5nIGlmIGRyYWdnZWQgZWxlbWVudCBhbmQgZWxlbWVudCwgd2UgYXJlIGRyYWdnaW5nIG92ZXIgaXMgdGhlIHNhbWVcbiAgICAgKi9cbiAgICBpZiAodGhpcy5pc0RyYWdnaW5nT3ZlclNlbGYodGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQuZHJhZ2dlZE92ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIGlmIGRyb3AgaXMgYmxvY2tlZCAtIGFkZCBzcGVjaWFsIGNsYXNzIHRvIHRoZSBkcmFnZ2VkIGVsZW1lbnRcbiAgICAgKi9cbiAgICBpZiAodGhpcy5jYW5Ecm9wKCkpIHtcbiAgICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50LnVuYmxvY2tEcm9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50LmJsb2NrRHJvcCgpO1xuICAgIH1cbiAgfTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBvbkRyb3AgPSAoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8qKlxuICAgICAqIGlmIGRyb3AgaXMgYmxvY2tlZCAtIGRvIG5vdGhpbmdcbiAgICAgKi9cbiAgICBpZiAoIXRoaXMuY2FuRHJvcCgpKSByZXR1cm47XG5cbiAgICB0aGlzLnVuc2VsZWN0RHJhZ2dlZE92ZXJFbGVtZW50KCk7XG5cbiAgICBjb25zdCB0YXJnZXQ6IERvbUVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQoZXZlbnQpO1xuXG4gICAgLyoqXG4gICAgICogcHJlc2VydmUgZHJvcCBibG9ja2VkIHN0YXRlIGJlZm9yZSBjbGVhbmluZyBjbGFzc2VzIC0gaXQgd2lsbCBiZSBuZWVkZWQgbGF0ZXJcbiAgICAgKi9cbiAgICBjb25zdCBpc1RhcmdldEJsb2NrZWQ6IGJvb2xlYW4gPSB0YXJnZXQuaXNEcm9wQmxvY2tlZCgpO1xuXG4gICAgdGhpcy5nZXRFbGVtZW50KGV2ZW50KS5kcmFnZ2VkT3V0KCk7XG5cbiAgICAvKipcbiAgICAgKiBpZiB3ZSBoYXZlIG5vIGRyYWdnZWQgZWxlbWVudCwgd2UgYXJlIGRyb3BwaW5nIG9uIHNlbGYgb3IgdGFyZ2V0IGlzIGJsb2NrZWQgLSBkbyBub3RoaW5nXG4gICAgICovXG4gICAgaWYgKCF0aGlzLmRyYWdnZWRFbGVtZW50IHx8IHRoaXMuaXNEcmFnZ2luZ092ZXJTZWxmKHRhcmdldCkgfHwgaXNUYXJnZXRCbG9ja2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc291cmNlSW5kZXg6IG51bWJlciA9IHRoaXMuZ2V0RWxlbWVudEluZGV4KHRoaXMuZHJhZ2dlZEVsZW1lbnQpO1xuICAgIGNvbnN0IHRhcmdldEluZGV4OiBudW1iZXIgPSB0aGlzLmdldEVsZW1lbnRJbmRleCh0YXJnZXQpO1xuXG4gICAgLyoqXG4gICAgICogaWYgc291cmNlIGluZGV4IGlzIGxlc3MgdGhhbiB0YXJnZXQgaW5kZXggLSBtZWFucyB3ZSBhcmUgZHJhZ2dpbmcgZG93bjtcbiAgICAgKiBvdGhlcndpc2Ugd2UgYXJlIGRyYWdnaW5nIHVwXG4gICAgICogTk9URTogd2UgdXRpbGlzZSBcImJlZm9yZVwiIG1ldGhvZCBmb3IgZWxlbWVudCBpbnNlcnRpb24gaW4gYm90aCBjYXNlcywgYmVjYXVzZSBcImFmdGVyXCIgY2FuXG4gICAgICogYnJlYWsgb3JkZXIgb2YgXCJkcmFnLXN0YXRpY1wiIGVsZW1lbnRzIChpZiB0aGV5IGFyZSBwcmVzZW50KVxuICAgICAqL1xuICAgIGlmIChzb3VyY2VJbmRleCA8IHRhcmdldEluZGV4KSB7XG4gICAgICBjb25zdCBhbGxFbGVtZW50czogSFRNTEVsZW1lbnRbXSA9IHRoaXMuZ2V0QWxsRWxlbWVudHMoKTtcblxuICAgICAgLyoqXG4gICAgICAgKiBsb29wIHRocm91Z2ggYWxsIGVsZW1lbnQgYmVnaW5uaW5nIHdpdGggbmV4dCB0byB0aGUgY3VycmVudGx5IGRyYWdnZWQgZWxlbWVudFxuICAgICAgICogYW5kIGVuZGluZyB3aXRoIGRyb3AgdGFyZ2V0IGVsZW1lbnQgYW5kIG1vdmUgYWxsIG9mIHRoZW0gdXA7XG4gICAgICAgKiB0aGlzIHdpbGwgcmVzdWx0IGluIHRhcmdldCBlbGVtZW50IGJlaW5nIG1vdmVkIGRvd24gdG8gcmVxdWlyZWQgcG9zaXRpb25cbiAgICAgICAqL1xuICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gc291cmNlSW5kZXggKyAxOyBpIDw9IHRhcmdldEluZGV4OyBpKyspIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0OiBIVE1MRWxlbWVudCA9IGFsbEVsZW1lbnRzW2ldO1xuXG4gICAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgICB0aGlzLmRyYWdnZWRFbGVtZW50LmRvbS5iZWZvcmUodGFyZ2V0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0YXJnZXQuZG9tLmJlZm9yZSh0aGlzLmRyYWdnZWRFbGVtZW50LmRvbSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogaWYgcG9zc2libGUgZW1pdCBpbmRleGVzIG9sZCBhbmQgbmV3IGluZGV4ZXMgb2YgdGhlIHJlcG9zaXRpb25lZCBpdGVtc1xuICAgICAqL1xuICAgIGlmICh0aGlzLmRyb3BDYWxsYmFjaykge1xuICAgICAgdGhpcy5kcm9wQ2FsbGJhY2soXG4gICAgICAgIHtcbiAgICAgICAgICBiZWZvcmU6IHNvdXJjZUluZGV4LFxuICAgICAgICAgIGFmdGVyOiB0aGlzLmdldEVsZW1lbnRJbmRleCh0aGlzLmRyYWdnZWRFbGVtZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGJlZm9yZTogdGFyZ2V0SW5kZXgsXG4gICAgICAgICAgYWZ0ZXI6IHRoaXMuZ2V0RWxlbWVudEluZGV4KHRhcmdldCksXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICAvKiogQGlnbm9yZSAqL1xuICBvbk1vdXNlRW50ZXIgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkID0+IHtcbiAgICB0aGlzLnNldENhbkRyYWcodGhpcy5nZXRFbGVtZW50KGV2ZW50KSk7XG4gIH07XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSB1bnNlbGVjdERyYWdnZWRPdmVyRWxlbWVudCgpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBtYWtlIHN1cmUgcHJldmlvdXMgZHJhZ2dlZCBvdmVyIGVsZW1lbnQgaXMgbWFya2VkIGFzIFwiZHJhZ2dlZCBvdXRcIlxuICAgICAqL1xuICAgIHRoaXMuZHJhZ2dlZE92ZXJFbGVtZW50Py5kcmFnZ2VkT3V0KCk7XG4gICAgdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQgPSBudWxsO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBzZXRDYW5EcmFnKGVsZW1lbnQ6IERvbUVsZW1lbnQpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBpZiBzcGVjaWFsIGNsYXNzIGlzIHNldCBmb3IgdGhlIGVsZW1lbnQgLSBmb3JiaWQgZHJhZ2dpbmdcbiAgICAgKi9cbiAgICBpZiAoIWVsZW1lbnQuY2FuRHJhZygpKSB7XG4gICAgICBlbGVtZW50Lm1ha2VVbkRyYWdnYWJsZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIG1ha2Ugc3VyZSBkcmFnZ2luZyB0aGUgaXRlbSBpcyBub3QgZm9yYmlkZGVuIGJ5IGV4dGVybmFsIGZ1bmN0aW9uXG4gICAgICovXG4gICAgaWYgKHRoaXMuY2FuRHJhZ0NhbGxiYWNrKSB7XG4gICAgICBpZiAodGhpcy5jYW5EcmFnQ2FsbGJhY2sodGhpcy5nZXRFbGVtZW50SW5kZXgoZWxlbWVudCkpKSB7XG4gICAgICAgIGVsZW1lbnQubWFrZURyYWdnYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbWVudC5tYWtlVW5EcmFnZ2FibGUoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZWxlbWVudC5tYWtlRHJhZ2dhYmxlKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIG9uRHJhZ092ZXJCb2R5ID0gKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkID0+IHtcbiAgICB0aGlzLmRyYWdnZWRQbGFjZWhvbGRlcj8ucmVwb3NpdGlvbihldmVudCk7XG4gIH07XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBjYW5Ecm9wKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5kcmFnZ2VkRWxlbWVudCB8fCAhdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpIHJldHVybiBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIGlmIHNwZWNpYWwgY2xhc3MgaXMgc2V0IGZvciB0aGUgZWxlbWVudCAtIGZvcmJpZCBkcm9wcGluZztcbiAgICAgKiBvdGhlcndpc2UgbWFrZSBzdXJlIGRyb3BwaW5nIG92ZXIgdGhlIGl0ZW0gaXMgbm90IGZvcmJpZGRlbiBieSBleHRlcm5hbCBmdW5jdGlvblxuICAgICAqL1xuICAgIGlmICghdGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQuY2FuRHJvcCgpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNhbkRyb3BDYWxsYmFjaykge1xuICAgICAgcmV0dXJuIHRoaXMuY2FuRHJvcENhbGxiYWNrKFxuICAgICAgICB0aGlzLmdldEVsZW1lbnRJbmRleCh0aGlzLmRyYWdnZWRFbGVtZW50KSxcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50SW5kZXgodGhpcy5kcmFnZ2VkT3ZlckVsZW1lbnQpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgcmVmcmVzaEVsZW1lbnRzKCk6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIHVuc3Vic2NyaWJlIGZyb20gYWxsIGV2ZW50IGxpc3RlbmVyc1xuICAgICAqL1xuICAgIHRoaXMudW5zdWJzY3JpYmVGcm9tRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIC8qKlxuICAgICAqIG1ha2Ugc3VyZSBubyBwbGFjZWhvbGRlciBhcmUgc3RpbGwgdmlzaWJsZVxuICAgICAqL1xuICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy4nICsgZHJhZ0FuZERyb3BMaXN0Q2xhc3MuRFJBR0dFRF9QTEFDRUhPTERFUikuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgZWxlbWVudC5yZW1vdmUoKTtcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqIGdldCBhbGwgZWxlbWVudHMgdGhhdCBjYW4gcGFydGljaXBhdGUgaW4gZHJhZyBhbmQgZHJvcFxuICAgICAqL1xuICAgIGNvbnN0IGVsZW1lbnRzOiBIVE1MRWxlbWVudFtdID0gdGhpcy5nZXRBbGxFbGVtZW50cygpO1xuXG4gICAgLyoqXG4gICAgICogbWFrZSBzdXJlIHdlIGhhdmUgZW5vdWdoIGVsZW1lbnRzIHRvIGNvbnRpbnVlXG4gICAgICovXG4gICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA8IHRoaXMubWluQ291bnRUb0RyYWcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhZGQgcmVxdWlyZWQgY2FsbGJhY2tzIHRvIGFsbCBlbGVtZW50cyxcbiAgICAgKiBwcmVzZXJ2aW5nIHRoZWlyIHVuc3Vic2NyaWJlIGZ1bmN0aW9uc1xuICAgICAqL1xuICAgIGVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICBjb25zdCBmdW5jdGlvbnM6IFVOU1VCU0NSSUJFX0ZVTkNUSU9OU19DT0xMRUNUSU9OID0ge307XG5cbiAgICAgIGZ1bmN0aW9uc1snZHJhZ3N0YXJ0J10gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihlbGVtZW50LCAnZHJhZ3N0YXJ0JywgdGhpcy5vbkRyYWdTdGFydCk7XG4gICAgICBmdW5jdGlvbnNbJ2RyYWdlbmQnXSA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGVsZW1lbnQsICdkcmFnZW5kJywgdGhpcy5vbkRyYWdFbmQpO1xuICAgICAgZnVuY3Rpb25zWydkcmFnb3ZlciddID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZWxlbWVudCwgJ2RyYWdvdmVyJywgdGhpcy5vbkRyYWdPdmVyKTtcbiAgICAgIGZ1bmN0aW9uc1snZHJvcCddID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZWxlbWVudCwgJ2Ryb3AnLCB0aGlzLm9uRHJvcCk7XG4gICAgICBmdW5jdGlvbnNbJ21vdXNlZW50ZXInXSA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGVsZW1lbnQsICdtb3VzZWVudGVyJywgdGhpcy5vbk1vdXNlRW50ZXIpO1xuXG4gICAgICB0aGlzLnVuc3Vic2NyaWJlRnVuY3Rpb25zLnNldChlbGVtZW50LCBmdW5jdGlvbnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZUZyb21FdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRnVuY3Rpb25zLmZvckVhY2goKGNvbGxlY3Rpb24pID0+IHtcbiAgICAgIE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbikuZm9yRWFjaCgoZnVuYykgPT4gZnVuYygpKTtcbiAgICB9KTtcblxuICAgIHRoaXMudW5zdWJzY3JpYmVGdW5jdGlvbnMgPSBuZXcgTWFwKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGdldEFsbEVsZW1lbnRzKCk6IEhUTUxFbGVtZW50W10ge1xuICAgIGNvbnN0IHJlc3VsdDogSFRNTEVsZW1lbnRbXSA9IFtdO1xuXG4gICAgaWYgKHRoaXMuZHJhZ2dhYmxlTGlzdCkge1xuICAgICAgLyoqXG4gICAgICAgKiBsb29wIHRocm91Z2ggaW1tZWRpYXRlIGNoaWxkcmVuIG9mIHRoZSBsaXN0XG4gICAgICAgKi9cbiAgICAgICg8SFRNTEVsZW1lbnRbXT5BcnJheS5mcm9tKHRoaXMuZHJhZ2dhYmxlTGlzdC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKSkuZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIGVsZW1lbnQgaXMgc3RhdGljIGlmIGl0IGhhcyBib3RoIFwibm8tZHJvcFwiIGFuZCBcIm5vLWRyYWdcIiBjbGFzc2VzXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBpc1N0YXRpYzogYm9vbGVhbiA9XG4gICAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoZHJhZ0FuZERyb3BMaXN0Q2xhc3MuTk9fRFJPUCkgJiZcbiAgICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhkcmFnQW5kRHJvcExpc3RDbGFzcy5OT19EUkFHKTtcblxuICAgICAgICAvKipcbiAgICAgICAgICogaWdub3JlIHN0YXRpYyBlbGVtZW50cyBhbmQgZHJhZ2dlZCBwbGFjZWhvbGRlciBlbGVtZW50IGZyb20gdGhlIGxpc3RcbiAgICAgICAgICovXG4gICAgICAgIGlmICghaXNTdGF0aWMgJiYgIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGRyYWdBbmREcm9wTGlzdENsYXNzLkRSQUdHRURfUExBQ0VIT0xERVIpKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goZWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIGdldEVsZW1lbnQoZXZlbnQ6IERyYWdFdmVudCB8IE1vdXNlRXZlbnQpOiBEb21FbGVtZW50IHtcbiAgICByZXR1cm4gbmV3IERvbUVsZW1lbnQoPEhUTUxFbGVtZW50PmV2ZW50LmN1cnJlbnRUYXJnZXQpO1xuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBnZXRFbGVtZW50SW5kZXgoZWxlbWVudDogRG9tRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsRWxlbWVudHMoKS5pbmRleE9mKGVsZW1lbnQuZG9tKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgaXNEcmFnZ2luZ092ZXJTZWxmKGVsZW1lbnQ6IERvbUVsZW1lbnQgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZHJhZ2dlZEVsZW1lbnQ/LmRvbSA9PT0gZWxlbWVudD8uZG9tO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZHJhZ2dhYmxlLWxpc3RcIiAjZHJhZ2dhYmxlTGlzdCAoZHJhZ2xlYXZlKT1cIm9uTGlzdERyYWdMZWF2ZSgkZXZlbnQpXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AdsDragAndDropListComponent } from './drag-and-drop-list.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsDragAndDropListModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListModule, declarations: [AdsDragAndDropListComponent], imports: [CommonModule], exports: [AdsDragAndDropListComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsDragAndDropListModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [AdsDragAndDropListComponent],\n declarations: [AdsDragAndDropListComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9kcmFnLWFuZC1kcm9wLWxpc3QvZHJhZy1hbmQtZHJvcC1saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFPN0UsTUFBTSxPQUFPLHdCQUF3Qjs4R0FBeEIsd0JBQXdCOytHQUF4Qix3QkFBd0IsaUJBRnBCLDJCQUEyQixhQUZoQyxZQUFZLGFBQ1osMkJBQTJCOytHQUcxQix3QkFBd0IsWUFKekIsWUFBWTs7MkZBSVgsd0JBQXdCO2tCQUxwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3RDLFlBQVksRUFBRSxDQUFDLDJCQUEyQixDQUFDO2lCQUM1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWRzRHJhZ0FuZERyb3BMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLWFuZC1kcm9wLWxpc3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtBZHNEcmFnQW5kRHJvcExpc3RDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNEcmFnQW5kRHJvcExpc3RNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1kcmFnLWFuZC1kcm9wLWxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZHJhZy1hbmQtZHJvcC1saXN0L2FzY2VudGdsLWFkcy11aS1zcmMtbGliLWNvbXBvbmVudHMtZHJhZy1hbmQtZHJvcC1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":"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"}
@@ -3,10 +3,10 @@ import { Component, NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
 
5
5
  class AdsErrorPageCodeComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.2", type: AdsErrorPageCodeComponent, isStandalone: false, selector: "ads-error-page-code", ngImport: i0, template: ``, isInline: true }); }
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.3", type: AdsErrorPageCodeComponent, isStandalone: false, selector: "ads-error-page-code", ngImport: i0, template: ``, isInline: true }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeComponent, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{
12
12
  selector: 'ads-error-page-code',
@@ -16,11 +16,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImpor
16
16
  }] });
17
17
 
18
18
  class AdsErrorPageCodeModule {
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeModule, declarations: [AdsErrorPageCodeComponent], imports: [CommonModule], exports: [AdsErrorPageCodeComponent] }); }
21
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeModule, imports: [CommonModule] }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeModule, declarations: [AdsErrorPageCodeComponent], imports: [CommonModule], exports: [AdsErrorPageCodeComponent] }); }
21
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeModule, imports: [CommonModule] }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsErrorPageCodeModule, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsErrorPageCodeModule, decorators: [{
24
24
  type: NgModule,
25
25
  args: [{
26
26
  imports: [CommonModule],
@@ -1 +1 @@
1
- {"version":3,"file":"ascentgl-ads-ui-src-lib-components-error-page-error-page-code.mjs","sources":["../tmp-esm2022/src/lib/components/error-page/error-page-code/error-page-code.component.js","../tmp-esm2022/src/lib/components/error-page/error-page-code/error-page-code.module.js","../tmp-esm2022/src/lib/components/error-page/error-page-code/ascentgl-ads-ui-src-lib-components-error-page-error-page-code.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AdsErrorPageCodeComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.2\", type: AdsErrorPageCodeComponent, isStandalone: false, selector: \"ads-error-page-code\", ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ads-error-page-code',\n template: ``,\n standalone: false,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItcGFnZS1jb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9lcnJvci1wYWdlLWNvZGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzFDLE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLGdGQUgxQixFQUFFOzsyRkFHRCx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Fkcy1lcnJvci1wYWdlLWNvZGUnLFxuICB0ZW1wbGF0ZTogYGAsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNFcnJvclBhZ2VDb2RlQ29tcG9uZW50IHt9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdsErrorPageCodeComponent } from './error-page-code.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsErrorPageCodeModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeModule, declarations: [AdsErrorPageCodeComponent], imports: [CommonModule], exports: [AdsErrorPageCodeComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsErrorPageCodeModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [AdsErrorPageCodeComponent],\n exports: [AdsErrorPageCodeComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItcGFnZS1jb2RlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9lcnJvci1wYWdlLWNvZGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQU94RSxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixpQkFIbEIseUJBQXlCLGFBRDlCLFlBQVksYUFFWix5QkFBeUI7K0dBRXhCLHNCQUFzQixZQUp2QixZQUFZOzsyRkFJWCxzQkFBc0I7a0JBTGxDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDekMsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZHNFcnJvclBhZ2VDb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9lcnJvci1wYWdlLWNvZGUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0Fkc0Vycm9yUGFnZUNvZGVDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQWRzRXJyb3JQYWdlQ29kZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEFkc0Vycm9yUGFnZUNvZGVNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1lcnJvci1wYWdlLWVycm9yLXBhZ2UtY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9hc2NlbnRnbC1hZHMtdWktc3JjLWxpYi1jb21wb25lbnRzLWVycm9yLXBhZ2UtZXJyb3ItcGFnZS1jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":";;;;AAEO,MAAM,yBAAyB,CAAC;AACvC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC3L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,qBAAqB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACjO;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,qBAAqB;AACnD,oBAAoB,QAAQ,EAAE,CAAC,CAAC;AAChC,oBAAoB,UAAU,EAAE,KAAK;AACrC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACTN,MAAM,sBAAsB,CAAC;AACpC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACvL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;AACnP,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAClK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,YAAY,CAAC;AAC3C,oBAAoB,YAAY,EAAE,CAAC,yBAAyB,CAAC;AAC7D,oBAAoB,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACxD,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AChBb;AACA;AACA;;;;"}
1
+ {"version":3,"file":"ascentgl-ads-ui-src-lib-components-error-page-error-page-code.mjs","sources":["../tmp-esm2022/src/lib/components/error-page/error-page-code/error-page-code.component.js","../tmp-esm2022/src/lib/components/error-page/error-page-code/error-page-code.module.js","../tmp-esm2022/src/lib/components/error-page/error-page-code/ascentgl-ads-ui-src-lib-components-error-page-error-page-code.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AdsErrorPageCodeComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.3\", type: AdsErrorPageCodeComponent, isStandalone: false, selector: \"ads-error-page-code\", ngImport: i0, template: ``, isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'ads-error-page-code',\n template: ``,\n standalone: false,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItcGFnZS1jb2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9lcnJvci1wYWdlLWNvZGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzFDLE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLGdGQUgxQixFQUFFOzsyRkFHRCx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Fkcy1lcnJvci1wYWdlLWNvZGUnLFxuICB0ZW1wbGF0ZTogYGAsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNFcnJvclBhZ2VDb2RlQ29tcG9uZW50IHt9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdsErrorPageCodeComponent } from './error-page-code.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsErrorPageCodeModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeModule, declarations: [AdsErrorPageCodeComponent], imports: [CommonModule], exports: [AdsErrorPageCodeComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsErrorPageCodeModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [AdsErrorPageCodeComponent],\n exports: [AdsErrorPageCodeComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItcGFnZS1jb2RlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9lcnJvci1wYWdlLWNvZGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQU94RSxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixpQkFIbEIseUJBQXlCLGFBRDlCLFlBQVksYUFFWix5QkFBeUI7K0dBRXhCLHNCQUFzQixZQUp2QixZQUFZOzsyRkFJWCxzQkFBc0I7a0JBTGxDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDekMsT0FBTyxFQUFFLENBQUMseUJBQXlCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZHNFcnJvclBhZ2VDb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9lcnJvci1wYWdlLWNvZGUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0Fkc0Vycm9yUGFnZUNvZGVDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQWRzRXJyb3JQYWdlQ29kZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEFkc0Vycm9yUGFnZUNvZGVNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1lcnJvci1wYWdlLWVycm9yLXBhZ2UtY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9lcnJvci1wYWdlL2Vycm9yLXBhZ2UtY29kZS9hc2NlbnRnbC1hZHMtdWktc3JjLWxpYi1jb21wb25lbnRzLWVycm9yLXBhZ2UtZXJyb3ItcGFnZS1jb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":";;;;AAEO,MAAM,yBAAyB,CAAC;AACvC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC3L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,qBAAqB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACjO;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,qBAAqB;AACnD,oBAAoB,QAAQ,EAAE,CAAC,CAAC;AAChC,oBAAoB,UAAU,EAAE,KAAK;AACrC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACTN,MAAM,sBAAsB,CAAC;AACpC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACvL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;AACnP,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAClK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,YAAY,CAAC;AAC3C,oBAAoB,YAAY,EAAE,CAAC,yBAAyB,CAAC;AAC7D,oBAAoB,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACxD,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AChBb;AACA;AACA;;;;"}
@@ -2,20 +2,20 @@ import * as i0 from '@angular/core';
2
2
  import { Component, NgModule } from '@angular/core';
3
3
 
4
4
  class AdsFooterContainerComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.2", type: AdsFooterContainerComponent, isStandalone: false, selector: "ads-footer-container", ngImport: i0, template: "<footer>\n <ng-content></ng-content>\n</footer>\n", styles: ["footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\n"] }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.3", type: AdsFooterContainerComponent, isStandalone: false, selector: "ads-footer-container", ngImport: i0, template: "<footer>\n <ng-content></ng-content>\n</footer>\n", styles: ["footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\n"] }); }
7
7
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerComponent, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'ads-footer-container', standalone: false, template: "<footer>\n <ng-content></ng-content>\n</footer>\n", styles: ["footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\n"] }]
11
11
  }] });
12
12
 
13
13
  class AdsFooterContainerModule {
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerModule, declarations: [AdsFooterContainerComponent], exports: [AdsFooterContainerComponent] }); }
16
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerModule }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerModule, declarations: [AdsFooterContainerComponent], exports: [AdsFooterContainerComponent] }); }
16
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerModule }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterContainerModule, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterContainerModule, decorators: [{
19
19
  type: NgModule,
20
20
  args: [{
21
21
  exports: [AdsFooterContainerComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ascentgl-ads-ui-src-lib-components-footer-container.mjs","sources":["../tmp-esm2022/src/lib/components/footer/container/footer-container.component.js","../tmp-esm2022/src/lib/components/footer/container/footer-container.module.js","../tmp-esm2022/src/lib/components/footer/container/ascentgl-ads-ui-src-lib-components-footer-container.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AdsFooterContainerComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.2\", type: AdsFooterContainerComponent, isStandalone: false, selector: \"ads-footer-container\", ngImport: i0, template: \"<footer>\\n <ng-content></ng-content>\\n</footer>\\n\", styles: [\"footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ads-footer-container', standalone: false, template: \"<footer>\\n <ng-content></ng-content>\\n</footer>\\n\", styles: [\"footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9vdGVyL2NvbnRhaW5lci9mb290ZXItY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb290ZXIvY29udGFpbmVyL2Zvb3Rlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRMUMsTUFBTSxPQUFPLDJCQUEyQjs4R0FBM0IsMkJBQTJCO2tHQUEzQiwyQkFBMkIsaUZDUnhDLG9EQUdBOzsyRkRLYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWRzLWZvb3Rlci1jb250YWluZXInLFxuICBzdHlsZVVybHM6IFsnZm9vdGVyLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJ2Zvb3Rlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQWRzRm9vdGVyQ29udGFpbmVyQ29tcG9uZW50IHt9XG4iLCI8Zm9vdGVyPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Zvb3Rlcj5cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AdsFooterContainerComponent } from './footer-container.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsFooterContainerModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerModule, declarations: [AdsFooterContainerComponent], exports: [AdsFooterContainerComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.2\", ngImport: i0, type: AdsFooterContainerModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [AdsFooterContainerComponent],\n declarations: [AdsFooterContainerComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWNvbnRhaW5lci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9vdGVyL2NvbnRhaW5lci9mb290ZXItY29udGFpbmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQU0zRSxNQUFNLE9BQU8sd0JBQXdCOzhHQUF4Qix3QkFBd0I7K0dBQXhCLHdCQUF3QixpQkFGcEIsMkJBQTJCLGFBRGhDLDJCQUEyQjsrR0FHMUIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUpwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUN0QyxZQUFZLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztpQkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWRzRm9vdGVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9mb290ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtBZHNGb290ZXJDb250YWluZXJDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtBZHNGb290ZXJDb250YWluZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNGb290ZXJDb250YWluZXJNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1mb290ZXItY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZHMtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvb3Rlci9jb250YWluZXIvYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1mb290ZXItY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":";;;AAEO,MAAM,2BAA2B,CAAC;AACzC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC7L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,2BAA2B,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,sBAAsB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,oDAAoD,EAAE,MAAM,EAAE,CAAC,8MAA8M,CAAC,EAAE,CAAC,CAAC;AAChe;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,UAAU,EAAE,CAAC;AACrI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,oDAAoD,EAAE,MAAM,EAAE,CAAC,8MAA8M,CAAC,EAAE;AACpW,SAAS,CAAC,EAAE,CAAC;;ACNN,MAAM,wBAAwB,CAAC;AACtC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACzL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,CAAC,2BAA2B,CAAC,EAAE,OAAO,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;AAChO,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAC3I;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,2BAA2B,CAAC;AAC1D,oBAAoB,YAAY,EAAE,CAAC,2BAA2B,CAAC;AAC/D,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACdb;AACA;AACA;;;;"}
1
+ {"version":3,"file":"ascentgl-ads-ui-src-lib-components-footer-container.mjs","sources":["../tmp-esm2022/src/lib/components/footer/container/footer-container.component.js","../tmp-esm2022/src/lib/components/footer/container/footer-container.module.js","../tmp-esm2022/src/lib/components/footer/container/ascentgl-ads-ui-src-lib-components-footer-container.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AdsFooterContainerComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.3\", type: AdsFooterContainerComponent, isStandalone: false, selector: \"ads-footer-container\", ngImport: i0, template: \"<footer>\\n <ng-content></ng-content>\\n</footer>\\n\", styles: [\"footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ads-footer-container', standalone: false, template: \"<footer>\\n <ng-content></ng-content>\\n</footer>\\n\", styles: [\"footer{height:107px;box-sizing:border-box;padding:24px;border-top:1px solid var(--color-light);background-color:var(--color-muted-50);width:100%}@media screen and (max-width: 768px){footer{height:auto}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9vdGVyL2NvbnRhaW5lci9mb290ZXItY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYWRzLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb290ZXIvY29udGFpbmVyL2Zvb3Rlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRMUMsTUFBTSxPQUFPLDJCQUEyQjs4R0FBM0IsMkJBQTJCO2tHQUEzQiwyQkFBMkIsaUZDUnhDLG9EQUdBOzsyRkRLYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWRzLWZvb3Rlci1jb250YWluZXInLFxuICBzdHlsZVVybHM6IFsnZm9vdGVyLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJ2Zvb3Rlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQWRzRm9vdGVyQ29udGFpbmVyQ29tcG9uZW50IHt9XG4iLCI8Zm9vdGVyPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Zvb3Rlcj5cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AdsFooterContainerComponent } from './footer-container.component';\nimport * as i0 from \"@angular/core\";\nexport class AdsFooterContainerModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerModule, declarations: [AdsFooterContainerComponent], exports: [AdsFooterContainerComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.3\", ngImport: i0, type: AdsFooterContainerModule, decorators: [{\n type: NgModule,\n args: [{\n exports: [AdsFooterContainerComponent],\n declarations: [AdsFooterContainerComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWNvbnRhaW5lci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Fkcy11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9vdGVyL2NvbnRhaW5lci9mb290ZXItY29udGFpbmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQU0zRSxNQUFNLE9BQU8sd0JBQXdCOzhHQUF4Qix3QkFBd0I7K0dBQXhCLHdCQUF3QixpQkFGcEIsMkJBQTJCLGFBRGhDLDJCQUEyQjsrR0FHMUIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUpwQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUN0QyxZQUFZLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztpQkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWRzRm9vdGVyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9mb290ZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtBZHNGb290ZXJDb250YWluZXJDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtBZHNGb290ZXJDb250YWluZXJDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBZHNGb290ZXJDb250YWluZXJNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1mb290ZXItY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hZHMtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvb3Rlci9jb250YWluZXIvYXNjZW50Z2wtYWRzLXVpLXNyYy1saWItY29tcG9uZW50cy1mb290ZXItY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":";;;AAEO,MAAM,2BAA2B,CAAC;AACzC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC7L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,2BAA2B,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,sBAAsB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,oDAAoD,EAAE,MAAM,EAAE,CAAC,8MAA8M,CAAC,EAAE,CAAC,CAAC;AAChe;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,UAAU,EAAE,CAAC;AACrI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,oDAAoD,EAAE,MAAM,EAAE,CAAC,8MAA8M,CAAC,EAAE;AACpW,SAAS,CAAC,EAAE,CAAC;;ACNN,MAAM,wBAAwB,CAAC;AACtC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AACzL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,CAAC,2BAA2B,CAAC,EAAE,OAAO,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;AAChO,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAC3I;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,2BAA2B,CAAC;AAC1D,oBAAoB,YAAY,EAAE,CAAC,2BAA2B,CAAC;AAC/D,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACdb;AACA;AACA;;;;"}
@@ -19,10 +19,10 @@ class AdsFooterComponent {
19
19
  */
20
20
  this.links = [];
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.2", type: AdsFooterComponent, isStandalone: false, selector: "ads-footer", inputs: { alt: "alt", copyright: "copyright", links: "links", logoSrc: "logoSrc" }, ngImport: i0, template: "<div class=\"footer\">\n <div class=\"links\">\n @for (link of links; track $index) {\n <a class=\"tertiary-link text-xs\" [href]=\"link.href\" [target]=\"link.target || '_self'\">{{ link.text }}</a>\n }\n </div>\n <div class=\"footer-right\">\n <div class=\"copyright\">\n @if (copyright.href) {\n <a\n class=\"secondary-link text-xs\"\n [href]=\"copyright.href\"\n [target]=\"copyright.target || '_self'\"\n [innerHtml]=\"copyright.text\"\n ></a>\n } @else {\n <span [innerHtml]=\"copyright.text\"></span>\n }\n </div>\n @if (logoSrc) {\n <div class=\"logo\">\n <img [attr.src]=\"logoSrc\" alt=\"{{ alt }}\" />\n </div>\n }\n </div>\n</div>\n", styles: [".footer{display:flex;height:100%;align-items:center;justify-content:space-between}.links{display:flex;flex-wrap:wrap}.links a{color:var(--color-link)}a:not(:last-child):after{padding:0 8px;content:\"|\"}.copyright{height:100%;font-size:12px}.copyright span{color:var(--color-primary)}.footer-right{display:flex;align-items:center;row-gap:8px;column-gap:16px}.logo{max-width:90px}@media screen and (max-width: 768px){.footer{flex-direction:column;gap:24px}.footer .links{justify-content:center}.footer-right{display:flex;flex-direction:column-reverse}.footer-right .copyright{text-align:center}}\n"] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.3", type: AdsFooterComponent, isStandalone: false, selector: "ads-footer", inputs: { alt: "alt", copyright: "copyright", links: "links", logoSrc: "logoSrc" }, ngImport: i0, template: "<div class=\"footer\">\n <div class=\"links\">\n @for (link of links; track $index) {\n <a class=\"tertiary-link text-xs\" [href]=\"link.href\" [target]=\"link.target || '_self'\">{{ link.text }}</a>\n }\n </div>\n <div class=\"footer-right\">\n <div class=\"copyright\">\n @if (copyright.href) {\n <a\n class=\"secondary-link text-xs\"\n [href]=\"copyright.href\"\n [target]=\"copyright.target || '_self'\"\n [innerHtml]=\"copyright.text\"\n ></a>\n } @else {\n <span [innerHtml]=\"copyright.text\"></span>\n }\n </div>\n @if (logoSrc) {\n <div class=\"logo\">\n <img [attr.src]=\"logoSrc\" alt=\"{{ alt }}\" />\n </div>\n }\n </div>\n</div>\n", styles: [".footer{display:flex;height:100%;align-items:center;justify-content:space-between}.links{display:flex;flex-wrap:wrap}.links a{color:var(--color-link)}a:not(:last-child):after{padding:0 8px;content:\"|\"}.copyright{height:100%;font-size:12px}.copyright span{color:var(--color-primary)}.footer-right{display:flex;align-items:center;row-gap:8px;column-gap:16px}.logo{max-width:90px}@media screen and (max-width: 768px){.footer{flex-direction:column;gap:24px}.footer .links{justify-content:center}.footer-right{display:flex;flex-direction:column-reverse}.footer-right .copyright{text-align:center}}\n"] }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterComponent, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterComponent, decorators: [{
26
26
  type: Component,
27
27
  args: [{ selector: 'ads-footer', standalone: false, template: "<div class=\"footer\">\n <div class=\"links\">\n @for (link of links; track $index) {\n <a class=\"tertiary-link text-xs\" [href]=\"link.href\" [target]=\"link.target || '_self'\">{{ link.text }}</a>\n }\n </div>\n <div class=\"footer-right\">\n <div class=\"copyright\">\n @if (copyright.href) {\n <a\n class=\"secondary-link text-xs\"\n [href]=\"copyright.href\"\n [target]=\"copyright.target || '_self'\"\n [innerHtml]=\"copyright.text\"\n ></a>\n } @else {\n <span [innerHtml]=\"copyright.text\"></span>\n }\n </div>\n @if (logoSrc) {\n <div class=\"logo\">\n <img [attr.src]=\"logoSrc\" alt=\"{{ alt }}\" />\n </div>\n }\n </div>\n</div>\n", styles: [".footer{display:flex;height:100%;align-items:center;justify-content:space-between}.links{display:flex;flex-wrap:wrap}.links a{color:var(--color-link)}a:not(:last-child):after{padding:0 8px;content:\"|\"}.copyright{height:100%;font-size:12px}.copyright span{color:var(--color-primary)}.footer-right{display:flex;align-items:center;row-gap:8px;column-gap:16px}.logo{max-width:90px}@media screen and (max-width: 768px){.footer{flex-direction:column;gap:24px}.footer .links{justify-content:center}.footer-right{display:flex;flex-direction:column-reverse}.footer-right .copyright{text-align:center}}\n"] }]
28
28
  }], propDecorators: { alt: [{
@@ -36,11 +36,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImpor
36
36
  }] } });
37
37
 
38
38
  class AdsFooterModule {
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
40
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterModule, declarations: [AdsFooterComponent], imports: [CommonModule], exports: [AdsFooterComponent] }); }
41
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterModule, imports: [CommonModule] }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
40
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterModule, declarations: [AdsFooterComponent], imports: [CommonModule], exports: [AdsFooterComponent] }); }
41
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterModule, imports: [CommonModule] }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.2", ngImport: i0, type: AdsFooterModule, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.3", ngImport: i0, type: AdsFooterModule, decorators: [{
44
44
  type: NgModule,
45
45
  args: [{
46
46
  imports: [CommonModule],