@acorex/cdk 21.0.0-next.5 → 21.0.0-next.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/accordion/index.d.ts +1 -0
  2. package/common/index.d.ts +9 -7
  3. package/drag-drop/index.d.ts +57 -44
  4. package/drawer/index.d.ts +12 -9
  5. package/fesm2022/acorex-cdk-accordion.mjs +55 -70
  6. package/fesm2022/acorex-cdk-accordion.mjs.map +1 -1
  7. package/fesm2022/acorex-cdk-carousel.mjs +14 -11
  8. package/fesm2022/acorex-cdk-carousel.mjs.map +1 -1
  9. package/fesm2022/acorex-cdk-clipboard.mjs +7 -7
  10. package/fesm2022/acorex-cdk-clipboard.mjs.map +1 -1
  11. package/fesm2022/acorex-cdk-common.mjs +174 -119
  12. package/fesm2022/acorex-cdk-common.mjs.map +1 -1
  13. package/fesm2022/acorex-cdk-dom.mjs +4 -4
  14. package/fesm2022/acorex-cdk-dom.mjs.map +1 -1
  15. package/fesm2022/acorex-cdk-drag-drop.mjs +279 -88
  16. package/fesm2022/acorex-cdk-drag-drop.mjs.map +1 -1
  17. package/fesm2022/acorex-cdk-drawer.mjs +44 -33
  18. package/fesm2022/acorex-cdk-drawer.mjs.map +1 -1
  19. package/fesm2022/acorex-cdk-focus-trap.mjs +3 -3
  20. package/fesm2022/acorex-cdk-focus-trap.mjs.map +1 -1
  21. package/fesm2022/acorex-cdk-input-mask.mjs +68 -63
  22. package/fesm2022/acorex-cdk-input-mask.mjs.map +1 -1
  23. package/fesm2022/acorex-cdk-list-navigation.mjs +41 -23
  24. package/fesm2022/acorex-cdk-list-navigation.mjs.map +1 -1
  25. package/fesm2022/acorex-cdk-outline.mjs +8 -8
  26. package/fesm2022/acorex-cdk-outline.mjs.map +1 -1
  27. package/fesm2022/acorex-cdk-overlay.mjs +3 -3
  28. package/fesm2022/acorex-cdk-overlay.mjs.map +1 -1
  29. package/fesm2022/acorex-cdk-pan-view.mjs +4 -4
  30. package/fesm2022/acorex-cdk-pan-view.mjs.map +1 -1
  31. package/fesm2022/acorex-cdk-qrcode.mjs.map +1 -1
  32. package/fesm2022/acorex-cdk-resizable.mjs +167 -119
  33. package/fesm2022/acorex-cdk-resizable.mjs.map +1 -1
  34. package/fesm2022/acorex-cdk-selection.mjs +12 -12
  35. package/fesm2022/acorex-cdk-selection.mjs.map +1 -1
  36. package/fesm2022/acorex-cdk-sliding-item.mjs +3 -3
  37. package/fesm2022/acorex-cdk-sliding-item.mjs.map +1 -1
  38. package/fesm2022/acorex-cdk-sticky.mjs +3 -3
  39. package/fesm2022/acorex-cdk-sticky.mjs.map +1 -1
  40. package/fesm2022/acorex-cdk-uploader.mjs +746 -0
  41. package/fesm2022/acorex-cdk-uploader.mjs.map +1 -0
  42. package/fesm2022/acorex-cdk-virtual-scroll.mjs +11 -11
  43. package/fesm2022/acorex-cdk-virtual-scroll.mjs.map +1 -1
  44. package/fesm2022/acorex-cdk-wysiwyg.mjs +5 -1
  45. package/fesm2022/acorex-cdk-wysiwyg.mjs.map +1 -1
  46. package/fesm2022/acorex-cdk.mjs.map +1 -1
  47. package/input-mask/index.d.ts +1 -0
  48. package/list-navigation/index.d.ts +1 -0
  49. package/package.json +6 -2
  50. package/resizable/index.d.ts +19 -7
  51. package/uploader/README.md +3 -0
  52. package/uploader/index.d.ts +378 -0
  53. package/wysiwyg/index.d.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-input-mask.mjs","sources":["../tmp-esm2022/input-mask/lib/input-mask.directive.js","../tmp-esm2022/input-mask/acorex-cdk-input-mask.js"],"sourcesContent":["import { Directive, effect, ElementRef, inject, input, output } from '@angular/core';\nimport { MaskInput } from 'maska';\nimport * as i0 from \"@angular/core\";\n/**\n * Directive that provides input masking functionality for various data types including\n * Hijri dates, digits, decimal numbers, and thousands-separated numbers.\n * Built on top of the Maska.js library for robust input validation and formatting.\n */\nexport class AXInputMaskDirective {\n constructor() {\n this.elm = inject(ElementRef);\n /**\n * The mode of input masking to apply.\n * @default 'digits'\n */\n this.maskMode = input('digits', ...(ngDevMode ? [{ debugName: \"maskMode\" }] : []));\n /**\n * The separator character used in the mask (e.g., '/' for dates, ',' for thousands).\n * @default '/'\n */\n this.separator = input('/', ...(ngDevMode ? [{ debugName: \"separator\" }] : []));\n /**\n * Whether to apply the mask eagerly (as user types) or on blur.\n * @default false\n */\n this.eager = input(false, ...(ngDevMode ? [{ debugName: \"eager\" }] : []));\n /**\n * Event emitted when the masked value changes.\n */\n this.onMaskChanged = output();\n /**\n * Minimum allowed value for numeric inputs.\n * @default null\n */\n this.minValue = input(null, ...(ngDevMode ? [{ debugName: \"minValue\" }] : []));\n /**\n * Maximum allowed value for numeric inputs.\n * @default null\n */\n this.maxValue = input(null, ...(ngDevMode ? [{ debugName: \"maxValue\" }] : []));\n /**\n * Number of decimal places allowed for decimal inputs.\n * @default 0\n */\n this.decimal = input(0, ...(ngDevMode ? [{ debugName: \"decimal\" }] : []));\n this.#eff = effect(() => {\n if (this.maskaJs)\n this.maskaJs.destroy();\n let mask;\n switch (this.maskMode()) {\n case 'hijriDate':\n mask = [`1###${this.separator()}##${this.separator()}##`];\n break;\n case 'digits':\n mask = ['DF'];\n break;\n case 'decimal':\n mask = [`DX`];\n break;\n case 'thousandsSeparator':\n mask = [`U`];\n }\n this.maskaJs = new MaskInput(this.elm.nativeElement, {\n mask,\n reversed: this.maskMode() === 'thousandsSeparator' ? true : false,\n tokens: {\n D: { pattern: /-/, optional: true },\n F: { pattern: /[0-9]/, repeated: true },\n X: { pattern: /[0-9.]/, repeated: true },\n U: { pattern: /[-0-9.]/, repeated: true },\n },\n postProcess: (value) => {\n switch (this.maskMode()) {\n case 'hijriDate':\n return this.hijriMaskHandler(value);\n case 'digits':\n return this.rangeValueLimit(value);\n case 'decimal':\n return this.decimalMaskHandler(value);\n case 'thousandsSeparator':\n return this.thousandsSeparatorHandler(value);\n default:\n return value;\n }\n },\n preProcess: (value) => {\n switch (this.maskMode()) {\n case 'hijriDate':\n return this.hijriMaskHandler(value);\n case 'digits':\n return this.rangeValueLimit(value);\n case 'decimal':\n return this.decimalMaskHandler(value);\n case 'thousandsSeparator':\n return this.thousandsSeparatorHandler(value);\n default:\n return value;\n }\n },\n onMaska: (details) => {\n this.onMaskChanged.emit(details);\n },\n eager: this.eager(),\n });\n }, ...(ngDevMode ? [{ debugName: \"#eff\" }] : []));\n }\n #eff;\n thousandsSeparatorHandler(value) {\n let thousandsSeparator = this.separator();\n switch (this.separator()) {\n case '-':\n thousandsSeparator = '_';\n break;\n case '.':\n thousandsSeparator = ',';\n break;\n }\n let clearValue;\n const firstChar = value.charAt(0);\n const restOfString = value.slice(1);\n if (firstChar === '-') {\n clearValue = '-' + restOfString.replace(/-/g, '');\n }\n else {\n clearValue = value.replace(/-/g, '');\n }\n // Ensure only one decimal point\n const decimalParts = clearValue.split('.');\n if (decimalParts.length > 2) {\n clearValue = decimalParts[0] + '.' + decimalParts.slice(1).join('');\n }\n const addSeparator = clearValue.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparator);\n return addSeparator;\n }\n hijriMaskHandler(value) {\n const [yearStr, monthStr, dayStr] = value.split(this.separator());\n const year = +yearStr;\n const month = +monthStr;\n const day = +dayStr;\n //Month Logics\n if (!month || !year)\n return value;\n if (month > 12) {\n return `${yearStr}${this.separator()}12`;\n }\n if (month < 1) {\n return `${yearStr}${this.separator()}01`;\n }\n //Day Logics\n if (!day)\n return value;\n if (day < 1) {\n return `${yearStr}-${monthStr}${this.separator()}01`;\n }\n let maxDay = 30;\n if (month <= 6) {\n maxDay = 31;\n }\n else if (month === 12) {\n // Hijri leap year rule: (11 * year + 14) % 30 < 11\n const isKabise = (11 * year + 14) % 30 < 11;\n maxDay = isKabise ? 30 : 29;\n }\n if (day > maxDay) {\n return `${yearStr}${this.separator()}${monthStr}${this.separator()}${maxDay}`;\n }\n return value;\n }\n rangeValueLimit(value) {\n let convertedValue;\n if (this.separator()) {\n convertedValue = +value.split(this.separator()).join('');\n }\n else {\n convertedValue = +value;\n }\n if (this.minValue() && convertedValue < this.minValue()) {\n return this.minValue().toString();\n }\n if (this.maxValue() && convertedValue > this.maxValue()) {\n return this.maxValue().toString();\n }\n return value;\n }\n decimalMaskHandler(value) {\n // Remove any non-digit and non-decimal characters except the first decimal point\n let cleanValue = value;\n let finalValue;\n // Ensure only one decimal point\n const decimalParts = cleanValue.split('.');\n if (decimalParts.length > 2) {\n cleanValue = decimalParts[0] + '.' + decimalParts.slice(1).join('');\n }\n // Split into integer and decimal parts\n const parts = cleanValue.split('.');\n const integerPart = parts[0] || '';\n const decimalPart = parts[1] || '';\n // Limit decimal part to the specified number of digits\n const limitedDecimalPart = decimalPart.slice(0, this.decimal());\n // Reconstruct the value\n if (limitedDecimalPart.length > 0) {\n finalValue = integerPart + '.' + limitedDecimalPart;\n }\n else if (cleanValue.includes('.')) {\n // If there's a decimal point but no decimal part, keep the decimal point\n finalValue = integerPart + '.';\n }\n else {\n finalValue = integerPart;\n }\n return this.rangeValueLimit(finalValue);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXInputMaskDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: AXInputMaskDirective, isStandalone: true, selector: \"[axInputMask]\", inputs: { maskMode: { classPropertyName: \"maskMode\", publicName: \"maskMode\", isSignal: true, isRequired: false, transformFunction: null }, separator: { classPropertyName: \"separator\", publicName: \"separator\", isSignal: true, isRequired: false, transformFunction: null }, eager: { classPropertyName: \"eager\", publicName: \"eager\", isSignal: true, isRequired: false, transformFunction: null }, minValue: { classPropertyName: \"minValue\", publicName: \"minValue\", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: \"maxValue\", publicName: \"maxValue\", isSignal: true, isRequired: false, transformFunction: null }, decimal: { classPropertyName: \"decimal\", publicName: \"decimal\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onMaskChanged: \"onMaskChanged\" }, exportAs: [\"axInputMask\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXInputMaskDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axInputMask]',\n exportAs: 'axInputMask',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbWFzay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvaW5wdXQtbWFzay9zcmMvbGliL2lucHV0LW1hc2suZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDOztBQWdCbEM7Ozs7R0FJRztBQUtILE1BQU0sT0FBTyxvQkFBb0I7SUFKakM7UUFLVSxRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBR2pDOzs7V0FHRztRQUNILGFBQVEsR0FBRyxLQUFLLENBQW1CLFFBQVEsb0RBQUMsQ0FBQztRQUU3Qzs7O1dBR0c7UUFDSCxjQUFTLEdBQUcsS0FBSyxDQUFTLEdBQUcscURBQUMsQ0FBQztRQUUvQjs7O1dBR0c7UUFDSCxVQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssaURBQUMsQ0FBQztRQUVyQjs7V0FFRztRQUNILGtCQUFhLEdBQUcsTUFBTSxFQUFvQixDQUFDO1FBRTNDOzs7V0FHRztRQUNILGFBQVEsR0FBRyxLQUFLLENBQVMsSUFBSSxvREFBQyxDQUFDO1FBRS9COzs7V0FHRztRQUNILGFBQVEsR0FBRyxLQUFLLENBQVMsSUFBSSxvREFBQyxDQUFDO1FBRS9COzs7V0FHRztRQUNILFlBQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxtREFBQyxDQUFDO1FBRW5CLFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU87Z0JBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN6QyxJQUFJLElBQWMsQ0FBQztZQUVuQixRQUFRLElBQUksQ0FB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WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgRWxlbWVudFJlZiwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXNrSW5wdXQgfSBmcm9tICdtYXNrYSc7XG5cbi8qKlxuICogRXZlbnQgcGF5bG9hZCBmb3IgaW5wdXQgbWFzayB2YWx1ZSBjaGFuZ2VzLlxuICovXG5leHBvcnQgdHlwZSBBWElucHV0TWFza0V2ZW50ID0ge1xuICBtYXNrZWQ6IHN0cmluZztcbiAgdW5tYXNrZWQ6IHN0cmluZztcbiAgY29tcGxldGVkOiBib29sZWFuO1xufTtcblxuLyoqXG4gKiBBdmFpbGFibGUgaW5wdXQgbWFzayBtb2RlcyBmb3IgZGlmZmVyZW50IGRhdGEgdHlwZXMuXG4gKi9cbmV4cG9ydCB0eXBlIEFYSW5wdXRNYXNrTW9kZXMgPSAnaGlqcmlEYXRlJyB8ICdkaWdpdHMnIHwgJ3Rob3VzYW5kc1NlcGFyYXRvcicgfCAnZGVjaW1hbCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgcHJvdmlkZXMgaW5wdXQgbWFza2luZyBmdW5jdGlvbmFsaXR5IGZvciB2YXJpb3VzIGRhdGEgdHlwZXMgaW5jbHVkaW5nXG4gKiBIaWpyaSBkYXRlcywgZGlnaXRzLCBkZWNpbWFsIG51bWJlcnMsIGFuZCB0aG91c2FuZHMtc2VwYXJhdGVkIG51bWJlcnMuXG4gKiBCdWlsdCBvbiB0b3Agb2YgdGhlIE1hc2thLmpzIGxpYnJhcnkgZm9yIHJvYnVzdCBpbnB1dCB2YWxpZGF0aW9uIGFuZCBmb3JtYXR0aW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXhJbnB1dE1hc2tdJyxcbiAgZXhwb3J0QXM6ICdheElucHV0TWFzaycsXG59KVxuZXhwb3J0IGNsYXNzIEFYSW5wdXRNYXNrRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSBlbG0gPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgbWFza2FKczogTWFza0lucHV0O1xuXG4gIC8qKlxuICAgKiBUaGUgbW9kZSBvZiBpbnB1dCBtYXNraW5nIHRvIGFwcGx5LlxuICAgKiBAZGVmYXVsdCAnZGlnaXRzJ1xuICAgKi9cbiAgbWFza01vZGUgPSBpbnB1dDxBWElucHV0TWFza01vZGVzPignZGlnaXRzJyk7XG5cbiAgLyoqXG4gICAqIFRoZSBzZXBhcmF0b3IgY2hhcmFjdGVyIHVzZWQgaW4gdGhlIG1hc2sgKGUuZy4sICcvJyBmb3IgZGF0ZXMsICcsJyBmb3IgdGhvdXNhbmRzKS5cbiAgICogQGRlZmF1bHQgJy8nXG4gICAqL1xuICBzZXBhcmF0b3IgPSBpbnB1dDxzdHJpbmc+KCcvJyk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYXBwbHkgdGhlIG1hc2sgZWFnZXJseSAoYXMgdXNlciB0eXBlcykgb3Igb24gYmx1ci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGVhZ2VyID0gaW5wdXQoZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIG1hc2tlZCB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgb25NYXNrQ2hhbmdlZCA9IG91dHB1dDxBWElucHV0TWFza0V2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIGFsbG93ZWQgdmFsdWUgZm9yIG51bWVyaWMgaW5wdXRzLlxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBtaW5WYWx1ZSA9IGlucHV0PG51bWJlcj4obnVsbCk7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gYWxsb3dlZCB2YWx1ZSBmb3IgbnVtZXJpYyBpbnB1dHMuXG4gICAqIEBkZWZhdWx0IG51bGxcbiAgICovXG4gIG1heFZhbHVlID0gaW5wdXQ8bnVtYmVyPihudWxsKTtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGRlY2ltYWwgcGxhY2VzIGFsbG93ZWQgZm9yIGRlY2ltYWwgaW5wdXRzLlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICBkZWNpbWFsID0gaW5wdXQoMCk7XG5cbiAgI2VmZiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRoaXMubWFza2FKcykgdGhpcy5tYXNrYUpzLmRlc3Ryb3koKTtcbiAgICBsZXQgbWFzazogc3RyaW5nW107XG5cbiAgICBzd2l0Y2ggKHRoaXMubWFza01vZGUoKSkge1xuICAgICAgY2FzZSAnaGlqcmlEYXRlJzpcbiAgICAgICAgbWFzayA9IFtgMSMjIyR7dGhpcy5zZXBhcmF0b3IoKX0jIyR7dGhpcy5zZXBhcmF0b3IoKX0jI2BdO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2RpZ2l0cyc6XG4gICAgICAgIG1hc2sgPSBbJ0RGJ107XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGVjaW1hbCc6XG4gICAgICAgIG1hc2sgPSBbYERYYF07XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAndGhvdXNhbmRzU2VwYXJhdG9yJzpcbiAgICAgICAgbWFzayA9IFtgVWBdO1xuICAgIH1cblxuICAgIHRoaXMubWFza2FKcyA9IG5ldyBNYXNrSW5wdXQodGhpcy5lbG0ubmF0aXZlRWxlbWVudCwge1xuICAgICAgbWFzayxcbiAgICAgIHJldmVyc2VkOiB0aGlzLm1hc2tNb2RlKCkgPT09ICd0aG91c2FuZHNTZXBhcmF0b3InID8gdHJ1ZSA6IGZhbHNlLFxuICAgICAgdG9rZW5zOiB7XG4gICAgICAgIEQ6IHsgcGF0dGVybjogLy0vLCBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICBGOiB7IHBhdHRlcm46IC9bMC05XS8sIHJlcGVhdGVkOiB0cnVlIH0sXG4gICAgICAgIFg6IHsgcGF0dGVybjogL1swLTkuXS8sIHJlcGVhdGVkOiB0cnVlIH0sXG4gICAgICAgIFU6IHsgcGF0dGVybjogL1stMC05Ll0vLCByZXBlYXRlZDogdHJ1ZSB9LFxuICAgICAgfSxcbiAgICAgIHBvc3RQcm9jZXNzOiAodmFsdWUpID0+IHtcbiAgICAgICAgc3dpdGNoICh0aGlzLm1hc2tNb2RlKCkpIHtcbiAgICAgICAgICBjYXNlICdoaWpyaURhdGUnOlxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGlqcmlNYXNrSGFuZGxlcih2YWx1ZSk7XG4gICAgICAgICAgY2FzZSAnZGlnaXRzJzpcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJhbmdlVmFsdWVMaW1pdCh2YWx1ZSk7XG4gICAgICAgICAgY2FzZSAnZGVjaW1hbCc6XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kZWNpbWFsTWFza0hhbmRsZXIodmFsdWUpO1xuICAgICAgICAgIGNhc2UgJ3Rob3VzYW5kc1NlcGFyYXRvcic6XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50aG91c2FuZHNTZXBhcmF0b3JIYW5kbGVyKHZhbHVlKTtcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcHJlUHJvY2VzczogKHZhbHVlKSA9PiB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5tYXNrTW9kZSgpKSB7XG4gICAgICAgICAgY2FzZSAnaGlqcmlEYXRlJzpcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmhpanJpTWFza0hhbmRsZXIodmFsdWUpO1xuICAgICAgICAgIGNhc2UgJ2RpZ2l0cyc6XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yYW5nZVZhbHVlTGltaXQodmFsdWUpO1xuICAgICAgICAgIGNhc2UgJ2RlY2ltYWwnOlxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVjaW1hbE1hc2tIYW5kbGVyKHZhbHVlKTtcbiAgICAgICAgICBjYXNlICd0aG91c2FuZHNTZXBhcmF0b3InOlxuICAgICAgICAgICAgcmV0dXJuIHRoaXMudGhvdXNhbmRzU2VwYXJhdG9ySGFuZGxlcih2YWx1ZSk7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIG9uTWFza2E6IChkZXRhaWxzKSA9PiB7XG4gICAgICAgIHRoaXMub25NYXNrQ2hhbmdlZC5lbWl0KGRldGFpbHMpO1xuICAgICAgfSxcbiAgICAgIGVhZ2VyOiB0aGlzLmVhZ2VyKCksXG4gICAgfSk7XG4gIH0pO1xuXG4gIHByaXZhdGUgdGhvdXNhbmRzU2VwYXJhdG9ySGFuZGxlcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgbGV0IHRob3VzYW5kc1NlcGFyYXRvciA9IHRoaXMuc2VwYXJhdG9yKCk7XG5cbiAgICBzd2l0Y2ggKHRoaXMuc2VwYXJhdG9yKCkpIHtcbiAgICAgIGNhc2UgJy0nOlxuICAgICAgICB0aG91c2FuZHNTZXBhcmF0b3IgPSAnXyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnLic6XG4gICAgICAgIHRob3VzYW5kc1NlcGFyYXRvciA9ICcsJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgbGV0IGNsZWFyVmFsdWU6IHN0cmluZztcblxuICAgIGNvbnN0IGZpcnN0Q2hhciA9IHZhbHVlLmNoYXJBdCgwKTtcbiAgICBjb25zdCByZXN0T2ZTdHJpbmcgPSB2YWx1ZS5zbGljZSgxKTtcblxuICAgIGlmIChmaXJzdENoYXIgPT09ICctJykge1xuICAgICAgY2xlYXJWYWx1ZSA9ICctJyArIHJlc3RPZlN0cmluZy5yZXBsYWNlKC8tL2csICcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2xlYXJWYWx1ZSA9IHZhbHVlLnJlcGxhY2UoLy0vZywgJycpO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSBvbmx5IG9uZSBkZWNpbWFsIHBvaW50XG4gICAgY29uc3QgZGVjaW1hbFBhcnRzID0gY2xlYXJWYWx1ZS5zcGxpdCgnLicpO1xuICAgIGlmIChkZWNpbWFsUGFydHMubGVuZ3RoID4gMikge1xuICAgICAgY2xlYXJWYWx1ZSA9IGRlY2ltYWxQYXJ0c1swXSArICcuJyArIGRlY2ltYWxQYXJ0cy5zbGljZSgxKS5qb2luKCcnKTtcbiAgICB9XG5cbiAgICBjb25zdCBhZGRTZXBhcmF0b3IgPSBjbGVhclZhbHVlLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csIHRob3VzYW5kc1NlcGFyYXRvcik7XG5cbiAgICByZXR1cm4gYWRkU2VwYXJhdG9yO1xuICB9XG5cbiAgcHJpdmF0ZSBoaWpyaU1hc2tIYW5kbGVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBbeWVhclN0ciwgbW9udGhTdHIsIGRheVN0cl0gPSB2YWx1ZS5zcGxpdCh0aGlzLnNlcGFyYXRvcigpKTtcblxuICAgIGNvbnN0IHllYXIgPSAreWVhclN0cjtcbiAgICBjb25zdCBtb250aCA9ICttb250aFN0cjtcbiAgICBjb25zdCBkYXkgPSArZGF5U3RyO1xuXG4gICAgLy9Nb250aCBMb2dpY3NcbiAgICBpZiAoIW1vbnRoIHx8ICF5ZWFyKSByZXR1cm4gdmFsdWU7XG4gICAgaWYgKG1vbnRoID4gMTIpIHtcbiAgICAgIHJldHVybiBgJHt5ZWFyU3RyfSR7dGhpcy5zZXBhcmF0b3IoKX0xMmA7XG4gICAgfVxuICAgIGlmIChtb250aCA8IDEpIHtcbiAgICAgIHJldHVybiBgJHt5ZWFyU3RyfSR7dGhpcy5zZXBhcmF0b3IoKX0wMWA7XG4gICAgfVxuXG4gICAgLy9EYXkgTG9naWNzXG4gICAgaWYgKCFkYXkpIHJldHVybiB2YWx1ZTtcblxuICAgIGlmIChkYXkgPCAxKSB7XG4gICAgICByZXR1cm4gYCR7eWVhclN0cn0tJHttb250aFN0cn0ke3RoaXMuc2VwYXJhdG9yKCl9MDFgO1xuICAgIH1cblxuICAgIGxldCBtYXhEYXkgPSAzMDtcbiAgICBpZiAobW9udGggPD0gNikge1xuICAgICAgbWF4RGF5ID0gMzE7XG4gICAgfSBlbHNlIGlmIChtb250aCA9PT0gMTIpIHtcbiAgICAgIC8vIEhpanJpIGxlYXAgeWVhciBydWxlOiAoMTEgKiB5ZWFyICsgMTQpICUgMzAgPCAxMVxuICAgICAgY29uc3QgaXNLYWJpc2UgPSAoMTEgKiB5ZWFyICsgMTQpICUgMzAgPCAxMTtcbiAgICAgIG1heERheSA9IGlzS2FiaXNlID8gMzAgOiAyOTtcbiAgICB9XG5cbiAgICBpZiAoZGF5ID4gbWF4RGF5KSB7XG4gICAgICByZXR1cm4gYCR7eWVhclN0cn0ke3RoaXMuc2VwYXJhdG9yKCl9JHttb250aFN0cn0ke3RoaXMuc2VwYXJhdG9yKCl9JHttYXhEYXl9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHJhbmdlVmFsdWVMaW1pdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgbGV0IGNvbnZlcnRlZFZhbHVlOiBudW1iZXI7XG5cbiAgICBpZiAodGhpcy5zZXBhcmF0b3IoKSkge1xuICAgICAgY29udmVydGVkVmFsdWUgPSArdmFsdWUuc3BsaXQodGhpcy5zZXBhcmF0b3IoKSkuam9pbignJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnZlcnRlZFZhbHVlID0gK3ZhbHVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1pblZhbHVlKCkgJiYgY29udmVydGVkVmFsdWUgPCB0aGlzLm1pblZhbHVlKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLm1pblZhbHVlKCkudG9TdHJpbmcoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tYXhWYWx1ZSgpICYmIGNvbnZlcnRlZFZhbHVlID4gdGhpcy5tYXhWYWx1ZSgpKSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXhWYWx1ZSgpLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWNpbWFsTWFza0hhbmRsZXIodmFsdWU6IHN0cmluZykge1xuICAgIC8vIFJlbW92ZSBhbnkgbm9uLWRpZ2l0IGFuZCBub24tZGVjaW1hbCBjaGFyYWN0ZXJzIGV4Y2VwdCB0aGUgZmlyc3QgZGVjaW1hbCBwb2ludFxuICAgIGxldCBjbGVhblZhbHVlID0gdmFsdWU7XG4gICAgbGV0IGZpbmFsVmFsdWU6IHN0cmluZztcblxuICAgIC8vIEVuc3VyZSBvbmx5IG9uZSBkZWNpbWFsIHBvaW50XG4gICAgY29uc3QgZGVjaW1hbFBhcnRzID0gY2xlYW5WYWx1ZS5zcGxpdCgnLicpO1xuICAgIGlmIChkZWNpbWFsUGFydHMubGVuZ3RoID4gMikge1xuICAgICAgY2xlYW5WYWx1ZSA9IGRlY2ltYWxQYXJ0c1swXSArICcuJyArIGRlY2ltYWxQYXJ0cy5zbGljZSgxKS5qb2luKCcnKTtcbiAgICB9XG5cbiAgICAvLyBTcGxpdCBpbnRvIGludGVnZXIgYW5kIGRlY2ltYWwgcGFydHNcbiAgICBjb25zdCBwYXJ0cyA9IGNsZWFuVmFsdWUuc3BsaXQoJy4nKTtcbiAgICBjb25zdCBpbnRlZ2VyUGFydCA9IHBhcnRzWzBdIHx8ICcnO1xuICAgIGNvbnN0IGRlY2ltYWxQYXJ0ID0gcGFydHNbMV0gfHwgJyc7XG5cbiAgICAvLyBMaW1pdCBkZWNpbWFsIHBhcnQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgZGlnaXRzXG4gICAgY29uc3QgbGltaXRlZERlY2ltYWxQYXJ0ID0gZGVjaW1hbFBhcnQuc2xpY2UoMCwgdGhpcy5kZWNpbWFsKCkpO1xuXG4gICAgLy8gUmVjb25zdHJ1Y3QgdGhlIHZhbHVlXG4gICAgaWYgKGxpbWl0ZWREZWNpbWFsUGFydC5sZW5ndGggPiAwKSB7XG4gICAgICBmaW5hbFZhbHVlID0gaW50ZWdlclBhcnQgKyAnLicgKyBsaW1pdGVkRGVjaW1hbFBhcnQ7XG4gICAgfSBlbHNlIGlmIChjbGVhblZhbHVlLmluY2x1ZGVzKCcuJykpIHtcbiAgICAgIC8vIElmIHRoZXJlJ3MgYSBkZWNpbWFsIHBvaW50IGJ1dCBubyBkZWNpbWFsIHBhcnQsIGtlZXAgdGhlIGRlY2ltYWwgcG9pbnRcbiAgICAgIGZpbmFsVmFsdWUgPSBpbnRlZ2VyUGFydCArICcuJztcbiAgICB9IGVsc2Uge1xuICAgICAgZmluYWxWYWx1ZSA9IGludGVnZXJQYXJ0O1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJhbmdlVmFsdWVMaW1pdChmaW5hbFZhbHVlKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1pbnB1dC1tYXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2lucHV0LW1hc2svc3JjL2Fjb3JleC1jZGstaW5wdXQtbWFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-cdk-input-mask.mjs","sources":["../../../../packages/cdk/input-mask/src/lib/input-mask.directive.ts","../../../../packages/cdk/input-mask/src/acorex-cdk-input-mask.ts"],"sourcesContent":["import { Directive, effect, ElementRef, inject, input, output } from '@angular/core';\nimport type { MaskInput } from 'maska';\n\n/**\n * Event payload for input mask value changes.\n */\nexport type AXInputMaskEvent = {\n masked: string;\n unmasked: string;\n completed: boolean;\n};\n\n/**\n * Available input mask modes for different data types.\n */\nexport type AXInputMaskModes = 'hijriDate' | 'digits' | 'thousandsSeparator' | 'decimal';\n\n/**\n * Directive that provides input masking functionality for various data types including\n * Hijri dates, digits, decimal numbers, and thousands-separated numbers.\n * Built on top of the Maska.js library for robust input validation and formatting.\n */\n@Directive({\n selector: '[axInputMask]',\n exportAs: 'axInputMask',\n})\nexport class AXInputMaskDirective {\n private elm = inject(ElementRef);\n private maskaJs: MaskInput;\n\n /**\n * The mode of input masking to apply.\n * @default 'digits'\n */\n maskMode = input<AXInputMaskModes>('digits');\n\n /**\n * The separator character used in the mask (e.g., '/' for dates, ',' for thousands).\n * @default '/'\n */\n separator = input<string>('/');\n\n /**\n * Whether to apply the mask eagerly (as user types) or on blur.\n * @default false\n */\n eager = input(false);\n\n /**\n * Event emitted when the masked value changes.\n */\n onMaskChanged = output<AXInputMaskEvent>();\n\n /**\n * Minimum allowed value for numeric inputs.\n * @default null\n */\n minValue = input<number>(null);\n\n /**\n * Maximum allowed value for numeric inputs.\n * @default null\n */\n maxValue = input<number>(null);\n\n /**\n * Number of decimal places allowed for decimal inputs.\n * @default 0\n */\n decimal = input(0);\n\n #eff = effect(() => {\n void this.initializeMask();\n });\n\n private async initializeMask() {\n if (this.maskaJs) this.maskaJs.destroy();\n\n let mask: string[];\n\n switch (this.maskMode()) {\n case 'hijriDate':\n mask = [`1###${this.separator()}##${this.separator()}##`];\n break;\n case 'digits':\n mask = ['DF'];\n break;\n case 'decimal':\n mask = [`DX`];\n break;\n case 'thousandsSeparator':\n mask = [`U`];\n }\n\n const { MaskInput } = await import('maska');\n\n this.maskaJs = new MaskInput(this.elm.nativeElement, {\n mask,\n reversed: this.maskMode() === 'thousandsSeparator' ? true : false,\n tokens: {\n D: { pattern: /-/, optional: true },\n F: { pattern: /[0-9]/, repeated: true },\n X: { pattern: /[0-9.]/, repeated: true },\n U: { pattern: /[-0-9.]/, repeated: true },\n },\n postProcess: (value) => {\n switch (this.maskMode()) {\n case 'hijriDate':\n return this.hijriMaskHandler(value);\n case 'digits':\n return this.rangeValueLimit(value);\n case 'decimal':\n return this.decimalMaskHandler(value);\n case 'thousandsSeparator':\n return this.thousandsSeparatorHandler(value);\n default:\n return value;\n }\n },\n preProcess: (value) => {\n switch (this.maskMode()) {\n case 'hijriDate':\n return this.hijriMaskHandler(value);\n case 'digits':\n return this.rangeValueLimit(value);\n case 'decimal':\n return this.decimalMaskHandler(value);\n case 'thousandsSeparator':\n return this.thousandsSeparatorHandler(value);\n default:\n return value;\n }\n },\n onMaska: (details) => {\n this.onMaskChanged.emit(details);\n },\n eager: this.eager(),\n });\n }\n\n private thousandsSeparatorHandler(value: string) {\n let thousandsSeparator = this.separator();\n\n switch (this.separator()) {\n case '-':\n thousandsSeparator = '_';\n break;\n case '.':\n thousandsSeparator = ',';\n break;\n }\n\n let clearValue: string;\n\n const firstChar = value.charAt(0);\n const restOfString = value.slice(1);\n\n if (firstChar === '-') {\n clearValue = '-' + restOfString.replace(/-/g, '');\n } else {\n clearValue = value.replace(/-/g, '');\n }\n\n // Ensure only one decimal point\n const decimalParts = clearValue.split('.');\n if (decimalParts.length > 2) {\n clearValue = decimalParts[0] + '.' + decimalParts.slice(1).join('');\n }\n\n // Apply range limits to the cleaned value\n clearValue = this.rangeValueLimit(clearValue);\n\n const addSeparator = clearValue.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparator);\n\n return addSeparator;\n }\n\n private hijriMaskHandler(value: string) {\n const [yearStr, monthStr, dayStr] = value.split(this.separator());\n\n const year = +yearStr;\n const month = +monthStr;\n const day = +dayStr;\n\n //Month Logics\n if (!month || !year) return value;\n if (month > 12) {\n return `${yearStr}${this.separator()}12`;\n }\n if (month < 1) {\n return `${yearStr}${this.separator()}01`;\n }\n\n //Day Logics\n if (!day) return value;\n\n if (day < 1) {\n return `${yearStr}-${monthStr}${this.separator()}01`;\n }\n\n let maxDay = 30;\n if (month <= 6) {\n maxDay = 31;\n } else if (month === 12) {\n // Hijri leap year rule: (11 * year + 14) % 30 < 11\n const isKabise = (11 * year + 14) % 30 < 11;\n maxDay = isKabise ? 30 : 29;\n }\n\n if (day > maxDay) {\n return `${yearStr}${this.separator()}${monthStr}${this.separator()}${maxDay}`;\n }\n\n return value;\n }\n\n private rangeValueLimit(value: string) {\n let convertedValue: number;\n\n if (this.separator()) {\n convertedValue = +value.split(this.separator()).join('');\n } else {\n convertedValue = +value;\n }\n\n if (this.minValue() && convertedValue < this.minValue()) {\n return this.minValue().toString();\n }\n\n if (this.maxValue() && convertedValue > this.maxValue()) {\n return this.maxValue().toString();\n }\n\n return value;\n }\n\n private decimalMaskHandler(value: string) {\n // Remove any non-digit and non-decimal characters except the first decimal point\n let cleanValue = value;\n let finalValue: string;\n\n // Ensure only one decimal point\n const decimalParts = cleanValue.split('.');\n if (decimalParts.length > 2) {\n cleanValue = decimalParts[0] + '.' + decimalParts.slice(1).join('');\n }\n\n // Split into integer and decimal parts\n const parts = cleanValue.split('.');\n const integerPart = parts[0] || '';\n const decimalPart = parts[1] || '';\n\n // Limit decimal part to the specified number of digits\n const limitedDecimalPart = decimalPart.slice(0, this.decimal());\n\n // Reconstruct the value\n if (limitedDecimalPart.length > 0) {\n finalValue = integerPart + '.' + limitedDecimalPart;\n } else if (cleanValue.includes('.')) {\n // If there's a decimal point but no decimal part, keep the decimal point\n finalValue = integerPart + '.';\n } else {\n finalValue = integerPart;\n }\n\n return this.rangeValueLimit(finalValue);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { contentChildren, inject, ElementRef, signal, output, input, effect, Directive, afterNextRender, NgModule } from '@angular/core';
2
+ import { contentChildren, inject, ElementRef, signal, output, input, effect, afterNextRender, Directive, NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
 
5
5
  class AXListNavigationDirective {
@@ -10,10 +10,18 @@ class AXListNavigationDirective {
10
10
  this.onNavigationChanged = output();
11
11
  this.onKeypress = output();
12
12
  this.orientation = input('vertical', ...(ngDevMode ? [{ debugName: "orientation" }] : []));
13
- this.#init = effect(() => {
13
+ this.scrollOption = {
14
+ behavior: 'smooth',
15
+ block: 'nearest',
16
+ };
17
+ this.#eff = effect(() => {
14
18
  this.childElem().forEach((item, index) => {
19
+ item.itemElem.nativeElement.tabIndex = 0;
15
20
  item.index.set(index);
16
21
  });
22
+ }, ...(ngDevMode ? [{ debugName: "#eff" }] : []));
23
+ this.#init = afterNextRender(() => {
24
+ this.elementRef.nativeElement.tabIndex = -1;
17
25
  this.elementRef.nativeElement.onkeydown = (e) => {
18
26
  this.onKeypress.emit({ component: this, nativeEvent: e });
19
27
  if (e.key === 'Tab') {
@@ -46,13 +54,9 @@ class AXListNavigationDirective {
46
54
  }
47
55
  }
48
56
  };
49
- this.elementRef.nativeElement.tabIndex = -1;
50
- this.childElem().forEach((item, index) => {
51
- item.itemElem.nativeElement.tabIndex = 0;
52
- item.index.set(index);
53
- });
54
- }, ...(ngDevMode ? [{ debugName: "#init" }] : []));
57
+ });
55
58
  }
59
+ #eff;
56
60
  #init;
57
61
  navigationHandler(e) {
58
62
  this.onNavigationChanged.emit({ sender: this });
@@ -71,24 +75,38 @@ class AXListNavigationDirective {
71
75
  if (!selectedItemParentKey)
72
76
  return;
73
77
  const parentElem = this.childElem().find((item) => item.navigationItemKey === selectedItemParentKey);
74
- parentElem.itemElem.nativeElement.focus();
78
+ if (!parentElem)
79
+ return;
80
+ setTimeout(() => {
81
+ parentElem.itemElem.nativeElement.focus();
82
+ });
83
+ parentElem.itemElem.nativeElement.scrollIntoView(this.scrollOption);
75
84
  }
76
85
  focusOnIndex(index) {
77
- this.childElem()[index].itemElem.nativeElement.focus();
86
+ const selectedItem = this.childElem()[index]?.itemElem.nativeElement;
87
+ if (!selectedItem)
88
+ return;
89
+ setTimeout(() => {
90
+ selectedItem.focus();
91
+ });
92
+ selectedItem.scrollIntoView(this.scrollOption);
78
93
  }
79
94
  navigateTo(e) {
80
- e.itemElem.nativeElement.focus();
95
+ setTimeout(() => {
96
+ e.itemElem.nativeElement.focus();
97
+ });
98
+ e.itemElem.nativeElement.scrollIntoView(this.scrollOption);
81
99
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
83
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.3", type: AXListNavigationDirective, isStandalone: true, selector: "[axListNavigation]", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onNavigationChanged: "onNavigationChanged", onKeypress: "onKeypress" }, queries: [{ propertyName: "childElem", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], exportAs: ["axListNavigation"], ngImport: i0 }); }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
101
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.15", type: AXListNavigationDirective, isStandalone: true, selector: "[axListNavigation]", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onNavigationChanged: "onNavigationChanged", onKeypress: "onKeypress" }, queries: [{ propertyName: "childElem", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], exportAs: ["axListNavigation"], ngImport: i0 }); }
84
102
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationDirective, decorators: [{
103
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationDirective, decorators: [{
86
104
  type: Directive,
87
105
  args: [{
88
106
  selector: '[axListNavigation]',
89
107
  exportAs: 'axListNavigation',
90
108
  }]
91
- }] });
109
+ }], propDecorators: { childElem: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => AXListNavigationItemDirective), { ...{ descendants: true }, isSignal: true }] }], onNavigationChanged: [{ type: i0.Output, args: ["onNavigationChanged"] }], onKeypress: [{ type: i0.Output, args: ["onKeypress"] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }] } });
92
110
 
93
111
  class AXListNavigationItemDirective {
94
112
  constructor() {
@@ -117,25 +135,25 @@ class AXListNavigationItemDirective {
117
135
  });
118
136
  }
119
137
  #init;
120
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
121
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: AXListNavigationItemDirective, isStandalone: true, selector: "[axListNavigationItem]", outputs: { onKeypress: "onKeypress" }, exportAs: ["axListNavigationItem"], ngImport: i0 }); }
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
139
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: AXListNavigationItemDirective, isStandalone: true, selector: "[axListNavigationItem]", outputs: { onKeypress: "onKeypress" }, exportAs: ["axListNavigationItem"], ngImport: i0 }); }
122
140
  }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationItemDirective, decorators: [{
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationItemDirective, decorators: [{
124
142
  type: Directive,
125
143
  args: [{
126
144
  selector: '[axListNavigationItem]',
127
145
  exportAs: 'axListNavigationItem',
128
146
  }]
129
- }] });
147
+ }], propDecorators: { onKeypress: [{ type: i0.Output, args: ["onKeypress"] }] } });
130
148
 
131
149
  const COMPONENT = [AXListNavigationDirective, AXListNavigationItemDirective];
132
150
  const MODULES = [CommonModule];
133
151
  class AXListNavigationModule {
134
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
135
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationModule, imports: [CommonModule, AXListNavigationDirective, AXListNavigationItemDirective], exports: [AXListNavigationDirective, AXListNavigationItemDirective] }); }
136
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationModule, imports: [MODULES] }); }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
153
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationModule, imports: [CommonModule, AXListNavigationDirective, AXListNavigationItemDirective], exports: [AXListNavigationDirective, AXListNavigationItemDirective] }); }
154
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationModule, imports: [MODULES] }); }
137
155
  }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXListNavigationModule, decorators: [{
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXListNavigationModule, decorators: [{
139
157
  type: NgModule,
140
158
  args: [{
141
159
  imports: [...MODULES, ...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-list-navigation.mjs","sources":["../tmp-esm2022/list-navigation/lib/list-navigation.directive.js","../tmp-esm2022/list-navigation/lib/list-navigation-item.directive.js","../tmp-esm2022/list-navigation/lib/list-navigation.module.js","../tmp-esm2022/list-navigation/acorex-cdk-list-navigation.js"],"sourcesContent":["import { contentChildren, Directive, effect, ElementRef, inject, input, output, signal } from '@angular/core';\nimport { AXListNavigationItemDirective } from './list-navigation-item.directive';\nimport * as i0 from \"@angular/core\";\nexport class AXListNavigationDirective {\n constructor() {\n this.childElem = contentChildren(AXListNavigationItemDirective, ...(ngDevMode ? [{ debugName: \"childElem\", descendants: true }] : [{ descendants: true }]));\n this.elementRef = inject(ElementRef);\n this.activeIndex = signal(0, ...(ngDevMode ? [{ debugName: \"activeIndex\" }] : []));\n this.onNavigationChanged = output();\n this.onKeypress = output();\n this.orientation = input('vertical', ...(ngDevMode ? [{ debugName: \"orientation\" }] : []));\n this.#init = effect(() => {\n this.childElem().forEach((item, index) => {\n item.index.set(index);\n });\n this.elementRef.nativeElement.onkeydown = (e) => {\n this.onKeypress.emit({ component: this, nativeEvent: e });\n if (e.key === 'Tab') {\n this.onNavigationChanged.emit({ sender: this });\n }\n if (this.orientation() === 'vertical') {\n switch (e.key) {\n case 'ArrowDown':\n this.navigationHandler('ArrowDown');\n break;\n case 'ArrowUp':\n this.navigationHandler('ArrowUp');\n break;\n case 'ArrowLeft':\n this.parentNavigationHandler();\n break;\n }\n }\n else if (this.orientation() === 'horizontal') {\n switch (e.key) {\n case 'ArrowRight':\n this.navigationHandler('ArrowDown');\n break;\n case 'ArrowLeft':\n this.navigationHandler('ArrowUp');\n break;\n case 'ArrowUp':\n this.parentNavigationHandler();\n break;\n }\n }\n };\n this.elementRef.nativeElement.tabIndex = -1;\n this.childElem().forEach((item, index) => {\n item.itemElem.nativeElement.tabIndex = 0;\n item.index.set(index);\n });\n }, ...(ngDevMode ? [{ debugName: \"#init\" }] : []));\n }\n #init;\n navigationHandler(e) {\n this.onNavigationChanged.emit({ sender: this });\n if (e === 'ArrowUp' && this.activeIndex() > 0) {\n this.activeIndex.update((prev) => prev - 1);\n this.focusOnIndex(this.activeIndex());\n }\n else if (e === 'ArrowDown' && this.activeIndex() < this.childElem().length - 1) {\n this.activeIndex.update((prev) => prev + 1);\n this.focusOnIndex(this.activeIndex());\n }\n }\n parentNavigationHandler() {\n this.onNavigationChanged.emit({ sender: this });\n const selectedItemParentKey = this.childElem()[this.activeIndex()].navigationParentItemKey();\n if (!selectedItemParentKey)\n return;\n const parentElem = this.childElem().find((item) => item.navigationItemKey === selectedItemParentKey);\n parentElem.itemElem.nativeElement.focus();\n }\n focusOnIndex(index) {\n this.childElem()[index].itemElem.nativeElement.focus();\n }\n navigateTo(e) {\n e.itemElem.nativeElement.focus();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.2.0\", version: \"20.3.3\", type: AXListNavigationDirective, isStandalone: true, selector: \"[axListNavigation]\", inputs: { orientation: { classPropertyName: \"orientation\", publicName: \"orientation\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onNavigationChanged: \"onNavigationChanged\", onKeypress: \"onKeypress\" }, queries: [{ propertyName: \"childElem\", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], exportAs: [\"axListNavigation\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axListNavigation]',\n exportAs: 'axListNavigation',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1uYXZpZ2F0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9saXN0LW5hdmlnYXRpb24vc3JjL2xpYi9saXN0LW5hdmlnYXRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQU1qRixNQUFNLE9BQU8seUJBQXlCO0lBSnRDO1FBS1UsY0FBUyxHQUFHLGVBQWUsQ0FBQyw2QkFBNkIsNkNBQUksV0FBVyxFQUFFLElBQUksT0FBbkIsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEdBQUMsQ0FBQztRQUNsRixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsdURBQUMsQ0FBQztRQUN4Qix3QkFBbUIsR0FBRyxNQUFNLEVBQXlDLENBQUM7UUFDdEUsZUFBVSxHQUFHLE1BQU0sRUFBOEIsQ0FBQztRQUNsRCxnQkFBVyxHQUFHLEtBQUssQ0FBNEIsVUFBVSx1REFBQyxDQUFDO1FBRTNELFVBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxDQUFDO1lBRUYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUE2QixDQUFDLFNBQVMsR0FBRyxDQUFDLENBQWdCLEVB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bUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVoRCxNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQzdGLElBQUksQ0FBQyxxQkFBcUI7WUFBRSxPQUFPO1FBQ25DLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3BHLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBaUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUE2QixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFFLENBQUM7SUFFRCxVQUFVLENBQUMsQ0FBZ0M7UUFDeEMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUE2QixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BELENBQUM7OEdBakZVLHlCQUF5QjtrR0FBekIseUJBQXlCLGlWQUNBLDZCQUE2Qjs7MkZBRHRELHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsa0JBQWtCO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYSHRtbEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IGNvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBlZmZlY3QsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWExpc3ROYXZpZ2F0aW9uSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vbGlzdC1uYXZpZ2F0aW9uLWl0ZW0uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F4TGlzdE5hdmlnYXRpb25dJyxcbiAgZXhwb3J0QXM6ICdheExpc3ROYXZpZ2F0aW9uJyxcbn0pXG5leHBvcnQgY2xhc3MgQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSB7XG4gIHByaXZhdGUgY2hpbGRFbGVtID0gY29udGVudENoaWxkcmVuKEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pO1xuICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIGFjdGl2ZUluZGV4ID0gc2lnbmFsKDApO1xuICBvbk5hdmlnYXRpb25DaGFuZ2VkID0gb3V0cHV0PHsgc2VuZGVyOiBBWExpc3ROYXZpZ2F0aW9uRGlyZWN0aXZlIH0+KCk7XG4gIG9uS2V5cHJlc3MgPSBvdXRwdXQ8QVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4+KCk7XG4gIG9yaWVudGF0aW9uID0gaW5wdXQ8J2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJz4oJ3ZlcnRpY2FsJyk7XG5cbiAgI2luaXQgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuY2hpbGRFbGVtKCkuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgIGl0ZW0uaW5kZXguc2V0KGluZGV4KTtcbiAgICB9KTtcblxuICAgICh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkub25rZXlkb3duID0gKGU6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgIHRoaXMub25LZXlwcmVzcy5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZSB9KTtcblxuICAgICAgaWYgKGUua2V5ID09PSAnVGFiJykge1xuICAgICAgICB0aGlzLm9uTmF2aWdhdGlvbkNoYW5nZWQuZW1pdCh7IHNlbmRlcjogdGhpcyB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMub3JpZW50YXRpb24oKSA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICBzd2l0Y2ggKGUua2V5KSB7XG4gICAgICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGlvbkhhbmRsZXIoJ0Fycm93RG93bicpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRpb25IYW5kbGVyKCdBcnJvd1VwJyk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICAgICAgdGhpcy5wYXJlbnROYXZpZ2F0aW9uSGFuZGxlcigpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmllbnRhdGlvbigpID09PSAnaG9yaXpvbnRhbCcpIHtcbiAgICAgICAgc3dpdGNoIChlLmtleSkge1xuICAgICAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0aW9uSGFuZGxlcignQXJyb3dEb3duJyk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdBcnJvd0xlZnQnOlxuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0aW9uSGFuZGxlcignQXJyb3dVcCcpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnQXJyb3dVcCc6XG4gICAgICAgICAgICB0aGlzLnBhcmVudE5hdmlnYXRpb25IYW5kbGVyKCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnRhYkluZGV4ID0gLTE7XG4gICAgdGhpcy5jaGlsZEVsZW0oKS5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgKGl0ZW0uaXRlbUVsZW0ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkudGFiSW5kZXggPSAwO1xuICAgICAgaXRlbS5pbmRleC5zZXQoaW5kZXgpO1xuICAgIH0pO1xuICB9KTtcblxuICBwcml2YXRlIG5hdmlnYXRpb25IYW5kbGVyKGU6IHN0cmluZykge1xuICAgIHRoaXMub25OYXZpZ2F0aW9uQ2hhbmdlZC5lbWl0KHsgc2VuZGVyOiB0aGlzIH0pO1xuXG4gICAgaWYgKGUgPT09ICdBcnJvd1VwJyAmJiB0aGlzLmFjdGl2ZUluZGV4KCkgPiAwKSB7XG4gICAgICB0aGlzLmFjdGl2ZUluZGV4LnVwZGF0ZSgocHJldikgPT4gcHJldiAtIDEpO1xuICAgICAgdGhpcy5mb2N1c09uSW5kZXgodGhpcy5hY3RpdmVJbmRleCgpKTtcbiAgICB9IGVsc2UgaWYgKGUgPT09ICdBcnJvd0Rvd24nICYmIHRoaXMuYWN0aXZlSW5kZXgoKSA8IHRoaXMuY2hpbGRFbGVtKCkubGVuZ3RoIC0gMSkge1xuICAgICAgdGhpcy5hY3RpdmVJbmRleC51cGRhdGUoKHByZXYpID0+IHByZXYgKyAxKTtcbiAgICAgIHRoaXMuZm9jdXNPbkluZGV4KHRoaXMuYWN0aXZlSW5kZXgoKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwYXJlbnROYXZpZ2F0aW9uSGFuZGxlcigpIHtcbiAgICB0aGlzLm9uTmF2aWdhdGlvbkNoYW5nZWQuZW1pdCh7IHNlbmRlcjogdGhpcyB9KTtcblxuICAgIGNvbnN0IHNlbGVjdGVkSXRlbVBhcmVudEtleSA9IHRoaXMuY2hpbGRFbGVtKClbdGhpcy5hY3RpdmVJbmRleCgpXS5uYXZpZ2F0aW9uUGFyZW50SXRlbUtleSgpO1xuICAgIGlmICghc2VsZWN0ZWRJdGVtUGFyZW50S2V5KSByZXR1cm47XG4gICAgY29uc3QgcGFyZW50RWxlbSA9IHRoaXMuY2hpbGRFbGVtKCkuZmluZCgoaXRlbSkgPT4gaXRlbS5uYXZpZ2F0aW9uSXRlbUtleSA9PT0gc2VsZWN0ZWRJdGVtUGFyZW50S2V5KTtcbiAgICAocGFyZW50RWxlbS5pdGVtRWxlbS5uYXRpdmVFbGVtZW50IGFzIEhUTUxBcmVhRWxlbWVudCkuZm9jdXMoKTtcbiAgfVxuXG4gIGZvY3VzT25JbmRleChpbmRleDogbnVtYmVyKSB7XG4gICAgKHRoaXMuY2hpbGRFbGVtKClbaW5kZXhdLml0ZW1FbGVtLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvKGU6IEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlKSB7XG4gICAgKGUuaXRlbUVsZW0ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuZm9jdXMoKTtcbiAgfVxufVxuIl19","import { afterNextRender, Directive, ElementRef, inject, output, signal } from '@angular/core';\nimport { AXListNavigationDirective } from './list-navigation.directive';\nimport * as i0 from \"@angular/core\";\nexport class AXListNavigationItemDirective {\n constructor() {\n this.itemElem = inject(ElementRef);\n this.isActive = signal(false, ...(ngDevMode ? [{ debugName: \"isActive\" }] : []));\n this.index = signal(0, ...(ngDevMode ? [{ debugName: \"index\" }] : []));\n this.navigationItemKey = Math.random();\n this.navigationParentItemKey = signal(null, ...(ngDevMode ? [{ debugName: \"navigationParentItemKey\" }] : []));\n this.onKeypress = output();\n this.parent = inject(AXListNavigationDirective);\n this.injectItemInsideItem = inject(AXListNavigationItemDirective, { optional: true, skipSelf: true });\n this.#init = afterNextRender(() => {\n this.itemElem.nativeElement.onkeydown = (e) => {\n this.onKeypress.emit({ component: this, nativeEvent: e });\n };\n this.itemElem.nativeElement.onfocus = () => {\n this.isActive.set(true);\n this.parent.activeIndex.set(this.index());\n };\n this.itemElem.nativeElement.onblur = () => {\n this.isActive.set(false);\n };\n if (!this.injectItemInsideItem?.navigationItemKey)\n return;\n this.navigationParentItemKey.set(this.injectItemInsideItem.navigationItemKey);\n });\n }\n #init;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: AXListNavigationItemDirective, isStandalone: true, selector: \"[axListNavigationItem]\", outputs: { onKeypress: \"onKeypress\" }, exportAs: [\"axListNavigationItem\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axListNavigationItem]',\n exportAs: 'axListNavigationItem',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1uYXZpZ2F0aW9uLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2xpc3QtbmF2aWdhdGlvbi9zcmMvbGliL2xpc3QtbmF2aWdhdGlvbi1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBTXhFLE1BQU0sT0FBTyw2QkFBNkI7SUFKMUM7UUFLRSxhQUFRLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLGFBQVEsR0FBRyxNQUFNLENBQUMsS0FBSyxvREFBQyxDQUFDO1FBQ3pCLFVBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxpREFBQyxDQUFDO1FBQ2xCLHNCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQyw0QkFBdUIsR0FBRyxNQUFNLENBQUMsSUFBSSxtRUFBQyxDQUFDO1FBQ3ZDLGVBQVUsR0FBRyxNQUFNLEVBQThCLENBQUM7UUFFMUMsV0FBTSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzNDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFekcsVUFBSyxHQUFHLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUE2QixDQUFDLFNBQVMsR0FBRyxDQUFDLENBQWdCLEVBQUUsRUFBRTtnQkFDNUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzVELENBQUMsQ0FBQztZQUVELElBQUksQ0FBQyxRQUFRLENBQUMsYUFBNkIsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLENBQUMsQ0FBQztZQUVELElBQUksQ0FBQyxRQUFRLENBQUMsYUFBNkIsQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO2dCQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzQixDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLGlCQUFpQjtnQkFBRSxPQUFPO1lBQzFELElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEYsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQWpCQyxLQUFLLENBZ0JGOzhHQTNCUSw2QkFBNkI7a0dBQTdCLDZCQUE2Qjs7MkZBQTdCLDZCQUE2QjtrQkFKekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUUsc0JBQXNCO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYSHRtbEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IGFmdGVyTmV4dFJlbmRlciwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWExpc3ROYXZpZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9saXN0LW5hdmlnYXRpb24uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F4TGlzdE5hdmlnYXRpb25JdGVtXScsXG4gIGV4cG9ydEFzOiAnYXhMaXN0TmF2aWdhdGlvbkl0ZW0nLFxufSlcbmV4cG9ydCBjbGFzcyBBWExpc3ROYXZpZ2F0aW9uSXRlbURpcmVjdGl2ZSB7XG4gIGl0ZW1FbGVtID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBpc0FjdGl2ZSA9IHNpZ25hbChmYWxzZSk7XG4gIGluZGV4ID0gc2lnbmFsKDApO1xuICBuYXZpZ2F0aW9uSXRlbUtleSA9IE1hdGgucmFuZG9tKCk7XG4gIG5hdmlnYXRpb25QYXJlbnRJdGVtS2V5ID0gc2lnbmFsKG51bGwpO1xuICBvbktleXByZXNzID0gb3V0cHV0PEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PigpO1xuXG4gIHByaXZhdGUgcGFyZW50ID0gaW5qZWN0KEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUpO1xuICBwcml2YXRlIGluamVjdEl0ZW1JbnNpZGVJdGVtID0gaW5qZWN0KEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlLCBza2lwU2VsZjogdHJ1ZSB9KTtcblxuICAjaW5pdCA9IGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgKHRoaXMuaXRlbUVsZW0ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkub25rZXlkb3duID0gKGU6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgIHRoaXMub25LZXlwcmVzcy5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZSB9KTtcbiAgICB9O1xuXG4gICAgKHRoaXMuaXRlbUVsZW0ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkub25mb2N1cyA9ICgpID0+IHtcbiAgICAgIHRoaXMuaXNBY3RpdmUuc2V0KHRydWUpO1xuICAgICAgdGhpcy5wYXJlbnQuYWN0aXZlSW5kZXguc2V0KHRoaXMuaW5kZXgoKSk7XG4gICAgfTtcblxuICAgICh0aGlzLml0ZW1FbGVtLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLm9uYmx1ciA9ICgpID0+IHtcbiAgICAgIHRoaXMuaXNBY3RpdmUuc2V0KGZhbHNlKTtcbiAgICB9O1xuXG4gICAgaWYgKCF0aGlzLmluamVjdEl0ZW1JbnNpZGVJdGVtPy5uYXZpZ2F0aW9uSXRlbUtleSkgcmV0dXJuO1xuICAgIHRoaXMubmF2aWdhdGlvblBhcmVudEl0ZW1LZXkuc2V0KHRoaXMuaW5qZWN0SXRlbUluc2lkZUl0ZW0ubmF2aWdhdGlvbkl0ZW1LZXkpO1xuICB9KTtcbn1cbiJdfQ==","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXListNavigationItemDirective } from './list-navigation-item.directive';\nimport { AXListNavigationDirective } from './list-navigation.directive';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [AXListNavigationDirective, AXListNavigationItemDirective];\nconst MODULES = [CommonModule];\nexport class AXListNavigationModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationModule, imports: [CommonModule, AXListNavigationDirective, AXListNavigationItemDirective], exports: [AXListNavigationDirective, AXListNavigationItemDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationModule, imports: [MODULES] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXListNavigationModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1uYXZpZ2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9saXN0LW5hdmlnYXRpb24vc3JjL2xpYi9saXN0LW5hdmlnYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUV4RSxNQUFNLFNBQVMsR0FBRyxDQUFDLHlCQUF5QixFQUFFLDZCQUE2QixDQUFDLENBQUM7QUFFN0UsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQU8vQixNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixZQVBsQixZQUFZLEVBRlYseUJBQXlCLEVBQUUsNkJBQTZCLGFBQXhELHlCQUF5QixFQUFFLDZCQUE2QjsrR0FTOUQsc0JBQXNCLFlBSnBCLE9BQU87OzJGQUlULHNCQUFzQjtrQkFMbEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQU8sRUFBRSxHQUFHLFNBQVMsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQ3ZCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWExpc3ROYXZpZ2F0aW9uSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vbGlzdC1uYXZpZ2F0aW9uLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuL2xpc3QtbmF2aWdhdGlvbi5kaXJlY3RpdmUnO1xuXG5jb25zdCBDT01QT05FTlQgPSBbQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSwgQVhMaXN0TmF2aWdhdGlvbkl0ZW1EaXJlY3RpdmVdO1xuXG5jb25zdCBNT0RVTEVTID0gW0NvbW1vbk1vZHVsZV07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTLCAuLi5DT01QT05FTlRdLFxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UXSxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhMaXN0TmF2aWdhdGlvbk1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1saXN0LW5hdmlnYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvbGlzdC1uYXZpZ2F0aW9uL3NyYy9hY29yZXgtY2RrLWxpc3QtbmF2aWdhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-cdk-list-navigation.mjs","sources":["../../../../packages/cdk/list-navigation/src/lib/list-navigation.directive.ts","../../../../packages/cdk/list-navigation/src/lib/list-navigation-item.directive.ts","../../../../packages/cdk/list-navigation/src/lib/list-navigation.module.ts","../../../../packages/cdk/list-navigation/src/acorex-cdk-list-navigation.ts"],"sourcesContent":["import { AXHtmlEvent } from '@acorex/cdk/common';\nimport {\n afterNextRender,\n contentChildren,\n Directive,\n effect,\n ElementRef,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport { AXListNavigationItemDirective } from './list-navigation-item.directive';\n\n@Directive({\n selector: '[axListNavigation]',\n exportAs: 'axListNavigation',\n})\nexport class AXListNavigationDirective {\n private childElem = contentChildren(AXListNavigationItemDirective, { descendants: true });\n private elementRef = inject(ElementRef);\n activeIndex = signal(0);\n onNavigationChanged = output<{ sender: AXListNavigationDirective }>();\n onKeypress = output<AXHtmlEvent<KeyboardEvent>>();\n orientation = input<'horizontal' | 'vertical'>('vertical');\n\n private scrollOption: ScrollIntoViewOptions = {\n behavior: 'smooth',\n block: 'nearest',\n };\n\n #eff = effect(() => {\n this.childElem().forEach((item, index) => {\n (item.itemElem.nativeElement as HTMLElement).tabIndex = 0;\n item.index.set(index);\n });\n });\n\n #init = afterNextRender(() => {\n (this.elementRef.nativeElement as HTMLElement).tabIndex = -1;\n\n (this.elementRef.nativeElement as HTMLElement).onkeydown = (e: KeyboardEvent) => {\n this.onKeypress.emit({ component: this, nativeEvent: e });\n\n if (e.key === 'Tab') {\n this.onNavigationChanged.emit({ sender: this });\n }\n\n if (this.orientation() === 'vertical') {\n switch (e.key) {\n case 'ArrowDown':\n this.navigationHandler('ArrowDown');\n break;\n case 'ArrowUp':\n this.navigationHandler('ArrowUp');\n break;\n case 'ArrowLeft':\n this.parentNavigationHandler();\n break;\n }\n } else if (this.orientation() === 'horizontal') {\n switch (e.key) {\n case 'ArrowRight':\n this.navigationHandler('ArrowDown');\n break;\n case 'ArrowLeft':\n this.navigationHandler('ArrowUp');\n break;\n case 'ArrowUp':\n this.parentNavigationHandler();\n break;\n }\n }\n };\n });\n\n private navigationHandler(e: string) {\n this.onNavigationChanged.emit({ sender: this });\n\n if (e === 'ArrowUp' && this.activeIndex() > 0) {\n this.activeIndex.update((prev) => prev - 1);\n this.focusOnIndex(this.activeIndex());\n } else if (e === 'ArrowDown' && this.activeIndex() < this.childElem().length - 1) {\n this.activeIndex.update((prev) => prev + 1);\n this.focusOnIndex(this.activeIndex());\n }\n }\n\n private parentNavigationHandler() {\n this.onNavigationChanged.emit({ sender: this });\n\n const selectedItemParentKey = this.childElem()[this.activeIndex()].navigationParentItemKey();\n if (!selectedItemParentKey) return;\n const parentElem = this.childElem().find((item) => item.navigationItemKey === selectedItemParentKey);\n if (!parentElem) return;\n setTimeout(() => {\n (parentElem.itemElem.nativeElement as HTMLAreaElement).focus();\n });\n (parentElem.itemElem.nativeElement as HTMLAreaElement).scrollIntoView(this.scrollOption);\n }\n\n focusOnIndex(index: number) {\n const selectedItem = this.childElem()[index]?.itemElem.nativeElement as HTMLElement;\n if (!selectedItem) return;\n setTimeout(() => {\n selectedItem.focus();\n });\n selectedItem.scrollIntoView(this.scrollOption);\n }\n\n navigateTo(e: AXListNavigationItemDirective) {\n setTimeout(() => {\n (e.itemElem.nativeElement as HTMLElement).focus();\n });\n (e.itemElem.nativeElement as HTMLElement).scrollIntoView(this.scrollOption);\n }\n}\n","import { AXHtmlEvent } from '@acorex/cdk/common';\nimport { afterNextRender, Directive, ElementRef, inject, output, signal } from '@angular/core';\nimport { AXListNavigationDirective } from './list-navigation.directive';\n\n@Directive({\n selector: '[axListNavigationItem]',\n exportAs: 'axListNavigationItem',\n})\nexport class AXListNavigationItemDirective {\n itemElem = inject(ElementRef);\n isActive = signal(false);\n index = signal(0);\n navigationItemKey = Math.random();\n navigationParentItemKey = signal(null);\n onKeypress = output<AXHtmlEvent<KeyboardEvent>>();\n\n private parent = inject(AXListNavigationDirective);\n private injectItemInsideItem = inject(AXListNavigationItemDirective, { optional: true, skipSelf: true });\n\n #init = afterNextRender(() => {\n (this.itemElem.nativeElement as HTMLElement).onkeydown = (e: KeyboardEvent) => {\n this.onKeypress.emit({ component: this, nativeEvent: e });\n };\n\n (this.itemElem.nativeElement as HTMLElement).onfocus = () => {\n this.isActive.set(true);\n this.parent.activeIndex.set(this.index());\n };\n\n (this.itemElem.nativeElement as HTMLElement).onblur = () => {\n this.isActive.set(false);\n };\n\n if (!this.injectItemInsideItem?.navigationItemKey) return;\n this.navigationParentItemKey.set(this.injectItemInsideItem.navigationItemKey);\n });\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXListNavigationItemDirective } from './list-navigation-item.directive';\nimport { AXListNavigationDirective } from './list-navigation.directive';\n\nconst COMPONENT = [AXListNavigationDirective, AXListNavigationItemDirective];\n\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXListNavigationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -188,17 +188,17 @@ class AXOutlineContainerDirective {
188
188
  refreshOutlineItems() {
189
189
  this.setOutlineItems();
190
190
  }
191
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOutlineContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
192
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.3", type: AXOutlineContainerDirective, isStandalone: true, selector: "[axOutlineContainer]", inputs: { target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, smoothScroll: { classPropertyName: "smoothScroll", publicName: "smoothScroll", isSignal: true, isRequired: false, transformFunction: null }, showHashItem: { classPropertyName: "showHashItem", publicName: "showHashItem", isSignal: true, isRequired: false, transformFunction: null }, activationOffset: { classPropertyName: "activationOffset", publicName: "activationOffset", isSignal: true, isRequired: false, transformFunction: null }, copyUrlOnClick: { classPropertyName: "copyUrlOnClick", publicName: "copyUrlOnClick", isSignal: true, isRequired: false, transformFunction: null }, activateLastAtBottom: { classPropertyName: "activateLastAtBottom", publicName: "activateLastAtBottom", isSignal: true, isRequired: false, transformFunction: null }, scrollableElementId: { classPropertyName: "scrollableElementId", publicName: "scrollableElementId", isSignal: true, isRequired: false, transformFunction: null } }, providers: [AXUnsubscriber, AXClipBoardService], exportAs: ["axOutlineContainer"], ngImport: i0 }); }
191
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOutlineContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
192
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: AXOutlineContainerDirective, isStandalone: true, selector: "[axOutlineContainer]", inputs: { target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, smoothScroll: { classPropertyName: "smoothScroll", publicName: "smoothScroll", isSignal: true, isRequired: false, transformFunction: null }, showHashItem: { classPropertyName: "showHashItem", publicName: "showHashItem", isSignal: true, isRequired: false, transformFunction: null }, activationOffset: { classPropertyName: "activationOffset", publicName: "activationOffset", isSignal: true, isRequired: false, transformFunction: null }, copyUrlOnClick: { classPropertyName: "copyUrlOnClick", publicName: "copyUrlOnClick", isSignal: true, isRequired: false, transformFunction: null }, activateLastAtBottom: { classPropertyName: "activateLastAtBottom", publicName: "activateLastAtBottom", isSignal: true, isRequired: false, transformFunction: null }, scrollableElementId: { classPropertyName: "scrollableElementId", publicName: "scrollableElementId", isSignal: true, isRequired: false, transformFunction: null } }, providers: [AXUnsubscriber, AXClipBoardService], exportAs: ["axOutlineContainer"], ngImport: i0 }); }
193
193
  }
194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOutlineContainerDirective, decorators: [{
194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOutlineContainerDirective, decorators: [{
195
195
  type: Directive,
196
196
  args: [{
197
197
  selector: '[axOutlineContainer]',
198
198
  exportAs: 'axOutlineContainer',
199
199
  providers: [AXUnsubscriber, AXClipBoardService],
200
200
  }]
201
- }] });
201
+ }], propDecorators: { target: [{ type: i0.Input, args: [{ isSignal: true, alias: "target", required: false }] }], smoothScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "smoothScroll", required: false }] }], showHashItem: [{ type: i0.Input, args: [{ isSignal: true, alias: "showHashItem", required: false }] }], activationOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "activationOffset", required: false }] }], copyUrlOnClick: [{ type: i0.Input, args: [{ isSignal: true, alias: "copyUrlOnClick", required: false }] }], activateLastAtBottom: [{ type: i0.Input, args: [{ isSignal: true, alias: "activateLastAtBottom", required: false }] }], scrollableElementId: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollableElementId", required: false }] }] } });
202
202
 
203
203
  class AXOutlineItemDirective {
204
204
  constructor() {
@@ -221,16 +221,16 @@ class AXOutlineItemDirective {
221
221
  });
222
222
  }
223
223
  #anr;
224
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOutlineItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
225
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.3", type: AXOutlineItemDirective, isStandalone: true, selector: "[axOutlineItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["axOutlineItem"], ngImport: i0 }); }
224
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOutlineItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
225
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: AXOutlineItemDirective, isStandalone: true, selector: "[axOutlineItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["axOutlineItem"], ngImport: i0 }); }
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOutlineItemDirective, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOutlineItemDirective, decorators: [{
228
228
  type: Directive,
229
229
  args: [{
230
230
  selector: '[axOutlineItem]',
231
231
  exportAs: 'axOutlineItem',
232
232
  }]
233
- }] });
233
+ }], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
234
234
 
235
235
  /**
236
236
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-outline.mjs","sources":["../tmp-esm2022/outline/lib/outline-container.directive.js","../tmp-esm2022/outline/lib/outline-item.directive.js","../tmp-esm2022/outline/acorex-cdk-outline.js"],"sourcesContent":["import { AXClipBoardService } from '@acorex/cdk/clipboard';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { isPlatformBrowser } from '@angular/common';\nimport { afterNextRender, computed, Directive, ElementRef, inject, input, NgZone, PLATFORM_ID, signal, } from '@angular/core';\nimport { BehaviorSubject, debounceTime, fromEvent, map, Subject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXOutlineContainerDirective {\n constructor() {\n this.zone = inject(NgZone);\n this.platformId = inject(PLATFORM_ID);\n this.el = inject((ElementRef));\n this.unsubscriber = inject(AXUnsubscriber);\n this.clipboardService = inject(AXClipBoardService);\n this.target = input(...(ngDevMode ? [undefined, { debugName: \"target\" }] : []));\n this.smoothScroll = input(true, ...(ngDevMode ? [{ debugName: \"smoothScroll\" }] : []));\n this.showHashItem = input(false, ...(ngDevMode ? [{ debugName: \"showHashItem\" }] : []));\n this.activationOffset = input(16, ...(ngDevMode ? [{ debugName: \"activationOffset\" }] : []));\n this.copyUrlOnClick = input(false, ...(ngDevMode ? [{ debugName: \"copyUrlOnClick\" }] : []));\n this.activateLastAtBottom = input(true, ...(ngDevMode ? [{ debugName: \"activateLastAtBottom\" }] : []));\n this.scrollableElementId = input(null, ...(ngDevMode ? [{ debugName: \"scrollableElementId\" }] : []));\n this.scrollTop = signal(0, ...(ngDevMode ? [{ debugName: \"scrollTop\" }] : []));\n this.outlineItems = signal([], ...(ngDevMode ? [{ debugName: \"outlineItems\" }] : []));\n this.scrollableElement = computed(() => this.scrollableElementId()\n ? document.getElementById(this.scrollableElementId())\n : this.el.nativeElement, ...(ngDevMode ? [{ debugName: \"scrollableElement\" }] : []));\n this.mutationSubject = new Subject();\n this.MUTATION_DEBOUNCE_TIME = 150;\n this.outlineItems$ = new BehaviorSubject([]);\n this.#anr = afterNextRender(() => {\n if (this.smoothScroll()) {\n this.scrollableElement().style.overflow = 'auto';\n this.scrollableElement().style.scrollBehavior = 'smooth';\n }\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n const scrollable = this.scrollableElement().tagName === 'HTML' ? window : this.scrollableElement();\n fromEvent(scrollable, 'scroll')\n .pipe(this.unsubscriber.takeUntilDestroy, map(() => this.scrollableElement().scrollTop))\n .subscribe((scrollTop) => {\n this.scrollTop.set(scrollTop);\n this.scrollChanged(scrollTop);\n });\n this.mutationObserver = new MutationObserver((mutationsList) => {\n const relevantMutation = mutationsList.some((mutation) => mutation.type === 'childList' && (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0));\n if (relevantMutation) {\n this.mutationSubject.next();\n }\n });\n this.mutationObserver.observe(this.el.nativeElement, {\n childList: true,\n subtree: true,\n });\n });\n this.mutationSubject\n .pipe(debounceTime(this.MUTATION_DEBOUNCE_TIME), this.unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.refreshOutlineItems();\n });\n }\n });\n }\n #anr;\n ngOnDestroy() {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n }\n ngAfterViewInit() {\n this.refreshOutlineItems();\n }\n scrollChanged(scrollTop) {\n this.outlineItems.update((prevItems) => {\n if (prevItems.length === 0)\n return prevItems;\n const scrollHeight = this.scrollableElement().scrollHeight;\n const clientHeight = this.scrollableElement().clientHeight;\n const isAtBottom = scrollTop + clientHeight >= scrollHeight - 1;\n if (isAtBottom && this.activateLastAtBottom()) {\n return prevItems.map((item, index) => ({\n ...item,\n active: index === prevItems.length - 1,\n }));\n }\n let activeIndex = -1;\n for (let i = 0; i < prevItems.length; i++) {\n const item = prevItems[i];\n if (scrollTop >= item.scrollY - this.activationOffset()) {\n activeIndex = i;\n }\n }\n return prevItems.map((item, index) => ({\n ...item,\n active: index === activeIndex,\n }));\n });\n this.outlineItems$.next(this.outlineItems());\n }\n setOutlineItems() {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n setTimeout(() => {\n const targets = this.target() ? [...this.el.nativeElement.querySelectorAll(this.target())] : [];\n targets.push(...this.el.nativeElement.querySelectorAll('[data-ax-outline-item=\"true\"]'));\n const uniqueTargets = new Set(targets);\n const outlineItems = Array.from(uniqueTargets)\n .filter((el) => {\n return el.dataset['axOutlineItem'] !== 'false';\n })\n .map((el) => {\n let fragment = el.id;\n if (!fragment) {\n const textContentForId = el.textContent?.trim() ?? ''; // Read text BEFORE adding/modifying for hash\n if (textContentForId) {\n fragment = `${textContentForId.toLowerCase().replace(/\\s+/g, '-')}`;\n let counter = 1;\n const originalFragment = fragment;\n while (document.getElementById(fragment)) {\n fragment = `${originalFragment}-${counter}`;\n counter++;\n }\n }\n else {\n fragment = `ax-outline-${Math.random().toString(36).slice(2, 7)}`;\n }\n el.id = fragment; // Set the ID on the element\n }\n el.style.scrollMargin = `${this.activationOffset()}px`;\n const existingLink = el.querySelector('a.ax-outline-hash-link');\n if (existingLink) {\n existingLink.remove();\n }\n if (this.showHashItem()) {\n const anchor = document.createElement('a');\n anchor.textContent = '#';\n anchor.href = `${window.location.pathname}${window.location.search}#${fragment}`;\n anchor.classList.add('ax-outline-hash-link');\n // Styling for the hash link\n anchor.style.paddingInlineStart = '0.5rem'; // Adjust as needed\n anchor.style.opacity = '0';\n anchor.style.transition = 'opacity 0.2s ease-in-out';\n anchor.style.cursor = 'pointer';\n anchor.setAttribute('aria-hidden', 'true');\n anchor.setAttribute('fragment', fragment);\n const enterListener = () => (anchor.style.opacity = '1');\n const leaveListener = () => (anchor.style.opacity = '0');\n el.addEventListener('mouseenter', enterListener);\n el.addEventListener('mouseleave', leaveListener);\n el.appendChild(anchor);\n if (this.copyUrlOnClick()) {\n anchor.addEventListener('click', async () => {\n try {\n await this.clipboardService.copy(anchor.href);\n }\n catch (err) {\n console.error('Failed to copy outline URL:', err);\n }\n });\n }\n }\n const parentId = el.dataset['parent'];\n // Calculate position relative to the scrollable element\n const scrollableElement = this.scrollableElement();\n const scrollableRect = scrollableElement.getBoundingClientRect();\n const elementRect = el.getBoundingClientRect();\n const relativeScrollY = elementRect.top - scrollableRect.top + scrollableElement.scrollTop;\n return {\n el,\n id: fragment,\n active: false,\n parentId: parentId,\n scrollY: relativeScrollY,\n hasAnchor: this.showHashItem(),\n };\n })\n .sort((a, b) => a.scrollY - b.scrollY);\n this.outlineItems.set(outlineItems);\n this.scrollChanged(this.scrollTop());\n if (this.mutationObserver) {\n this.mutationObserver.observe(this.el.nativeElement, {\n childList: true,\n subtree: true,\n });\n }\n });\n }\n refreshOutlineItems() {\n this.setOutlineItems();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXOutlineContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: AXOutlineContainerDirective, isStandalone: true, selector: \"[axOutlineContainer]\", inputs: { target: { classPropertyName: \"target\", publicName: \"target\", isSignal: true, isRequired: false, transformFunction: null }, smoothScroll: { classPropertyName: \"smoothScroll\", publicName: \"smoothScroll\", isSignal: true, isRequired: false, transformFunction: null }, showHashItem: { classPropertyName: \"showHashItem\", publicName: \"showHashItem\", isSignal: true, isRequired: false, transformFunction: null }, activationOffset: { classPropertyName: \"activationOffset\", publicName: \"activationOffset\", isSignal: true, isRequired: false, transformFunction: null }, copyUrlOnClick: { classPropertyName: \"copyUrlOnClick\", publicName: \"copyUrlOnClick\", isSignal: true, isRequired: false, transformFunction: null }, activateLastAtBottom: { classPropertyName: \"activateLastAtBottom\", publicName: \"activateLastAtBottom\", isSignal: true, isRequired: false, transformFunction: null }, scrollableElementId: { classPropertyName: \"scrollableElementId\", publicName: \"scrollableElementId\", isSignal: true, isRequired: false, transformFunction: null } }, providers: [AXUnsubscriber, AXClipBoardService], exportAs: [\"axOutlineContainer\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXOutlineContainerDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axOutlineContainer]',\n exportAs: 'axOutlineContainer',\n providers: [AXUnsubscriber, AXClipBoardService],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0bGluZS1jb250YWluZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL291dGxpbmUvc3JjL2xpYi9vdXRsaW5lLWNvbnRhaW5lci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFDTCxlQUFlLEVBRWYsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBRU4sV0FBVyxFQUNYLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFnQjlFLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFNVSxTQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RCLGVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakMsT0FBRSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBQ3JDLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXRELFdBQU0sR0FBRyxLQUFLLDREQUFVLENBQUM7UUFDekIsaUJBQVksR0FBRyxLQUFLLENBQUMsSUFBSSx3REFBQyxDQUFDO1FBQzNCLGlCQUFZLEdBQUcsS0FBSyxDQUFDLEtBQUssd0RBQUMsQ0FBQztRQUM1QixxQkFBZ0Is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dGVudCI6WyJpbXBvcnQgeyBBWENsaXBCb2FyZFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2Nkay9jbGlwYm9hcmQnO1xuaW1wb3J0IHsgQVhVbnN1YnNjcmliZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBBZnRlclZpZXdJbml0LFxuICBjb21wdXRlZCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgUExBVEZPUk1fSUQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50LCBtYXAsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IHR5cGUgb3V0bGluZUl0ZW1UeXBlID0ge1xuICBpZDogc3RyaW5nO1xuICBlbDogSFRNTEVsZW1lbnQ7XG4gIGFjdGl2ZTogYm9vbGVhbjtcbiAgc2Nyb2xsWTogbnVtYmVyO1xuICBwYXJlbnRJZD86IHN0cmluZztcbiAgaGFzQW5jaG9yOiBib29sZWFuO1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F4T3V0bGluZUNvbnRhaW5lcl0nLFxuICBleHBvcnRBczogJ2F4T3V0bGluZUNvbnRhaW5lcicsXG4gIHByb3ZpZGVyczogW0FYVW5zdWJzY3JpYmVyLCBBWENsaXBCb2FyZFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE91dGxpbmVDb250YWluZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHpvbmUgPSBpbmplY3QoTmdab25lKTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgcHJpdmF0ZSBlbCA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik7XG4gIHByaXZhdGUgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcbiAgcHJpdmF0ZSBjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KEFYQ2xpcEJvYXJkU2VydmljZSk7XG5cbiAgdGFyZ2V0ID0gaW5wdXQ8c3RyaW5nPigpO1xuICBzbW9vdGhTY3JvbGwgPSBpbnB1dCh0cnVlKTtcbiAgc2hvd0hhc2hJdGVtID0gaW5wdXQoZmFsc2UpO1xuICBhY3RpdmF0aW9uT2Zmc2V0ID0gaW5wdXQoMTYpO1xuICBjb3B5VXJsT25DbGljayA9IGlucHV0KGZhbHNlKTtcbiAgYWN0aXZhdGVMYXN0QXRCb3R0b20gPSBpbnB1dCh0cnVlKTtcbiAgc2Nyb2xsYWJsZUVsZW1lbnRJZCA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIHByaXZhdGUgc2Nyb2xsVG9wID0gc2lnbmFsKDApO1xuICBwcml2YXRlIG91dGxpbmVJdGVtcyA9IHNpZ25hbDxvdXRsaW5lSXRlbVR5cGVbXT4oW10pO1xuXG4gIHByaXZhdGUgc2Nyb2xsYWJsZUVsZW1lbnQgPSBjb21wdXRlZCgoKSA9PlxuICAgIHRoaXMuc2Nyb2xsYWJsZUVsZW1lbnRJZCgpXG4gICAgICA/IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuc2Nyb2xsYWJsZUVsZW1lbnRJZCgpKVxuICAgICAgOiAodGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KSxcbiAgKTtcblxuICBwcml2YXRlIG11dGF0aW9uU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgTVVUQVRJT05fREVCT1VOQ0VfVElNRSA9IDE1MDtcbiAgcHJpdmF0ZSBtdXRhdGlvbk9ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyIHwgdW5kZWZpbmVkO1xuICBvdXRsaW5lSXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxvdXRsaW5lSXRlbVR5cGVbXT4oW10pO1xuXG4gICNhbnIgPSBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgIGlmICh0aGlzLnNtb290aFNjcm9sbCgpKSB7XG4gICAgICB0aGlzLnNjcm9sbGFibGVFbGVtZW50KCkuc3R5bGUub3ZlcmZsb3cgPSAnYXV0byc7XG4gICAgICB0aGlzLnNjcm9sbGFibGVFbGVtZW50KCkuc3R5bGUuc2Nyb2xsQmVoYXZpb3IgPSAnc21vb3RoJztcbiAgICB9XG5cbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc2Nyb2xsYWJsZSA9IHRoaXMuc2Nyb2xsYWJsZUVsZW1lbnQoKS50YWdOYW1lID09PSAnSFRNTCcgPyB3aW5kb3cgOiB0aGlzLnNjcm9sbGFibGVFbGVtZW50KCk7XG4gICAgICAgIGZyb21FdmVudChzY3JvbGxhYmxlLCAnc2Nyb2xsJylcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIHRoaXMudW5zdWJzY3JpYmVyLnRha2VVbnRpbERlc3Ryb3ksXG4gICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5zY3JvbGxhYmxlRWxlbWVudCgpLnNjcm9sbFRvcCksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHNjcm9sbFRvcCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxUb3Auc2V0KHNjcm9sbFRvcCk7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbENoYW5nZWQoc2Nyb2xsVG9wKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zTGlzdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlbGV2YW50TXV0YXRpb24gPSBtdXRhdGlvbnNMaXN0LnNvbWUoXG4gICAgICAgICAgICAobXV0YXRpb24pID0+XG4gICAgICAgICAgICAgIG11dGF0aW9uLnR5cGUgPT09ICdjaGlsZExpc3QnICYmIChtdXRhdGlvbi5hZGRlZE5vZGVzLmxlbmd0aCA+IDAgfHwgbXV0YXRpb24ucmVtb3ZlZE5vZGVzLmxlbmd0aCA+IDApLFxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKHJlbGV2YW50TXV0YXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubXV0YXRpb25TdWJqZWN0Lm5leHQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMubXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwge1xuICAgICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm11dGF0aW9uU3ViamVjdFxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUodGhpcy5NVVRBVElPTl9ERUJPVU5DRV9USU1FKSwgdGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yZWZyZXNoT3V0bGluZUl0ZW1zKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXV0YXRpb25PYnNlcnZlcikge1xuICAgICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5yZWZyZXNoT3V0bGluZUl0ZW1zKCk7XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbENoYW5nZWQoc2Nyb2xsVG9wOiBudW1iZXIpIHtcbiAgICB0aGlzLm91dGxpbmVJdGVtcy51cGRhdGUoKHByZXZJdGVtcykgPT4ge1xuICAgICAgaWYgKHByZXZJdGVtcy5sZW5ndGggPT09IDApIHJldHVybiBwcmV2SXRlbXM7XG5cbiAgICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IHRoaXMuc2Nyb2xsYWJsZUVsZW1lbnQoKS5zY3JvbGxIZWlnaHQ7XG4gICAgICBjb25zdCBjbGllbnRIZWlnaHQgPSB0aGlzLnNjcm9sbGFibGVFbGVtZW50KCkuY2xpZW50SGVpZ2h0O1xuICAgICAgY29uc3QgaXNBdEJvdHRvbSA9IHNjcm9sbFRvcCArIGNsaWVudEhlaWdodCA+PSBzY3JvbGxIZWlnaHQgLSAxO1xuXG4gICAgICBpZiAoaXNBdEJvdHRvbSAmJiB0aGlzLmFjdGl2YXRlTGFzdEF0Qm90dG9tKCkpIHtcbiAgICAgICAgcmV0dXJuIHByZXZJdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoe1xuICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgYWN0aXZlOiBpbmRleCA9PT0gcHJldkl0ZW1zLmxlbmd0aCAtIDEsXG4gICAgICAgIH0pKTtcbiAgICAgIH1cblxuICAgICAgbGV0IGFjdGl2ZUluZGV4ID0gLTE7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHByZXZJdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBpdGVtID0gcHJldkl0ZW1zW2ldO1xuICAgICAgICBpZiAoc2Nyb2xsVG9wID49IGl0ZW0uc2Nyb2xsWSAtIHRoaXMuYWN0aXZhdGlvbk9mZnNldCgpKSB7XG4gICAgICAgICAgYWN0aXZlSW5kZXggPSBpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gcHJldkl0ZW1zLm1hcCgoaXRlbSwgaW5kZXgpID0+ICh7XG4gICAgICAgIC4uLml0ZW0sXG4gICAgICAgIGFjdGl2ZTogaW5kZXggPT09IGFjdGl2ZUluZGV4LFxuICAgICAgfSkpO1xuICAgIH0pO1xuICAgIHRoaXMub3V0bGluZUl0ZW1zJC5uZXh0KHRoaXMub3V0bGluZUl0ZW1zKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRPdXRsaW5lSXRlbXMoKSB7XG4gICAgaWYgKHRoaXMubXV0YXRpb25PYnNlcnZlcikge1xuICAgICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldHMgPSB0aGlzLnRhcmdldCgpID8gWy4uLnRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHRoaXMudGFyZ2V0KCkpXSA6IFtdO1xuICAgICAgdGFyZ2V0cy5wdXNoKC4uLnRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1heC1vdXRsaW5lLWl0ZW09XCJ0cnVlXCJdJykpO1xuICAgICAgY29uc3QgdW5pcXVlVGFyZ2V0cyA9IG5ldyBTZXQodGFyZ2V0cyk7XG5cbiAgICAgIGNvbnN0IG91dGxpbmVJdGVtcyA9IEFycmF5LmZyb20odW5pcXVlVGFyZ2V0cylcbiAgICAgICAgLmZpbHRlcigoZWwpID0+IHtcbiAgICAgICAgICByZXR1cm4gZWwuZGF0YXNldFsnYXhPdXRsaW5lSXRlbSddICE9PSAnZmFsc2UnO1xuICAgICAgICB9KVxuICAgICAgICAubWFwKChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICBsZXQgZnJhZ21lbnQgPSBlbC5pZDtcbiAgICAgICAgICBpZiAoIWZyYWdtZW50KSB7XG4gICAgICAgICAgICBjb25zdCB0ZXh0Q29udGVudEZvcklkID0gZWwudGV4dENvbnRlbnQ/LnRyaW0oKSA/PyAnJzsgLy8gUmVhZCB0ZXh0IEJFRk9SRSBhZGRpbmcvbW9kaWZ5aW5nIGZvciBoYXNoXG4gICAgICAgICAgICBpZiAodGV4dENvbnRlbnRGb3JJZCkge1xuICAgICAgICAgICAgICBmcmFnbWVudCA9IGAke3RleHRDb250ZW50Rm9ySWQudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9cXHMrL2csICctJyl9YDtcbiAgICAgICAgICAgICAgbGV0IGNvdW50ZXIgPSAxO1xuICAgICAgICAgICAgICBjb25zdCBvcmlnaW5hbEZyYWdtZW50ID0gZnJhZ21lbnQ7XG4gICAgICAgICAgICAgIHdoaWxlIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZChmcmFnbWVudCkpIHtcbiAgICAgICAgICAgICAgICBmcmFnbWVudCA9IGAke29yaWdpbmFsRnJhZ21lbnR9LSR7Y291bnRlcn1gO1xuICAgICAgICAgICAgICAgIGNvdW50ZXIrKztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgZnJhZ21lbnQgPSBgYXgtb3V0bGluZS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDcpfWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbC5pZCA9IGZyYWdtZW50OyAvLyBTZXQgdGhlIElEIG9uIHRoZSBlbGVtZW50XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZWwuc3R5bGUuc2Nyb2xsTWFyZ2luID0gYCR7dGhpcy5hY3RpdmF0aW9uT2Zmc2V0KCl9cHhgO1xuXG4gICAgICAgICAgY29uc3QgZXhpc3RpbmdMaW5rID0gZWwucXVlcnlTZWxlY3RvcignYS5heC1vdXRsaW5lLWhhc2gtbGluaycpO1xuICAgICAgICAgIGlmIChleGlzdGluZ0xpbmspIHtcbiAgICAgICAgICAgIGV4aXN0aW5nTGluay5yZW1vdmUoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodGhpcy5zaG93SGFzaEl0ZW0oKSkge1xuICAgICAgICAgICAgY29uc3QgYW5jaG9yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgICAgICAgYW5jaG9yLnRleHRDb250ZW50ID0gJyMnO1xuICAgICAgICAgICAgYW5jaG9yLmhyZWYgPSBgJHt3aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9JHt3aW5kb3cubG9jYXRpb24uc2VhcmNofSMke2ZyYWdtZW50fWA7XG4gICAgICAgICAgICBhbmNob3IuY2xhc3NMaXN0LmFkZCgnYXgtb3V0bGluZS1oYXNoLWxpbmsnKTtcblxuICAgICAgICAgICAgLy8gU3R5bGluZyBmb3IgdGhlIGhhc2ggbGlua1xuICAgICAgICAgICAgYW5jaG9yLnN0eWxlLnBhZGRpbmdJbmxpbmVTdGFydCA9ICcwLjVyZW0nOyAvLyBBZGp1c3QgYXMgbmVlZGVkXG4gICAgICAgICAgICBhbmNob3Iuc3R5bGUub3BhY2l0eSA9ICcwJztcbiAgICAgICAgICAgIGFuY2hvci5zdHlsZS50cmFuc2l0aW9uID0gJ29wYWNpdHkgMC4ycyBlYXNlLWluLW91dCc7XG4gICAgICAgICAgICBhbmNob3Iuc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuICAgICAgICAgICAgYW5jaG9yLnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCAndHJ1ZScpO1xuICAgICAgICAgICAgYW5jaG9yLnNldEF0dHJpYnV0ZSgnZnJhZ21lbnQnLCBmcmFnbWVudCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGVudGVyTGlzdGVuZXIgPSAoKSA9PiAoYW5jaG9yLnN0eWxlLm9wYWNpdHkgPSAnMScpO1xuICAgICAgICAgICAgY29uc3QgbGVhdmVMaXN0ZW5lciA9ICgpID0+IChhbmNob3Iuc3R5bGUub3BhY2l0eSA9ICcwJyk7XG5cbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZW50ZXInLCBlbnRlckxpc3RlbmVyKTtcbiAgICAgICAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBsZWF2ZUxpc3RlbmVyKTtcblxuICAgICAgICAgICAgZWwuYXBwZW5kQ2hpbGQoYW5jaG9yKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY29weVVybE9uQ2xpY2soKSkge1xuICAgICAgICAgICAgICBhbmNob3IuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuY2xpcGJvYXJkU2VydmljZS5jb3B5KGFuY2hvci5ocmVmKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5IG91dGxpbmUgVVJMOicsIGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwYXJlbnRJZCA9IGVsLmRhdGFzZXRbJ3BhcmVudCddO1xuXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHBvc2l0aW9uIHJlbGF0aXZlIHRvIHRoZSBzY3JvbGxhYmxlIGVsZW1lbnRcbiAgICAgICAgICBjb25zdCBzY3JvbGxhYmxlRWxlbWVudCA9IHRoaXMuc2Nyb2xsYWJsZUVsZW1lbnQoKTtcbiAgICAgICAgICBjb25zdCBzY3JvbGxhYmxlUmVjdCA9IHNjcm9sbGFibGVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgIGNvbnN0IGVsZW1lbnRSZWN0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgY29uc3QgcmVsYXRpdmVTY3JvbGxZID0gZWxlbWVudFJlY3QudG9wIC0gc2Nyb2xsYWJsZVJlY3QudG9wICsgc2Nyb2xsYWJsZUVsZW1lbnQuc2Nyb2xsVG9wO1xuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGVsLFxuICAgICAgICAgICAgaWQ6IGZyYWdtZW50LFxuICAgICAgICAgICAgYWN0aXZlOiBmYWxzZSxcbiAgICAgICAgICAgIHBhcmVudElkOiBwYXJlbnRJZCxcbiAgICAgICAgICAgIHNjcm9sbFk6IHJlbGF0aXZlU2Nyb2xsWSxcbiAgICAgICAgICAgIGhhc0FuY2hvcjogdGhpcy5zaG93SGFzaEl0ZW0oKSxcbiAgICAgICAgICB9O1xuICAgICAgICB9KVxuICAgICAgICAuc29ydCgoYSwgYikgPT4gYS5zY3JvbGxZIC0gYi5zY3JvbGxZKTtcblxuICAgICAgdGhpcy5vdXRsaW5lSXRlbXMuc2V0KG91dGxpbmVJdGVtcyk7XG4gICAgICB0aGlzLnNjcm9sbENoYW5nZWQodGhpcy5zY3JvbGxUb3AoKSk7XG5cbiAgICAgIGlmICh0aGlzLm11dGF0aW9uT2JzZXJ2ZXIpIHtcbiAgICAgICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyLm9ic2VydmUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2hPdXRsaW5lSXRlbXMoKSB7XG4gICAgdGhpcy5zZXRPdXRsaW5lSXRlbXMoKTtcbiAgfVxufVxuIl19","import { afterNextRender, Directive, ElementRef, inject, input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXOutlineItemDirective {\n constructor() {\n this.el = inject(ElementRef);\n this.id = input(...(ngDevMode ? [undefined, { debugName: \"id\" }] : []));\n this.disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\" }] : []));\n this.#anr = afterNextRender(() => {\n this.el.nativeElement.dataset['axOutlineItem'] = this.disabled() ? 'false' : 'true';\n let newId;\n if (!this.id()) {\n const textContent = this.el.nativeElement.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n }\n else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n this.el.nativeElement.id = newId;\n }\n });\n }\n #anr;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXOutlineItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: AXOutlineItemDirective, isStandalone: true, selector: \"[axOutlineItem]\", inputs: { id: { classPropertyName: \"id\", publicName: \"id\", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: [\"axOutlineItem\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: AXOutlineItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axOutlineItem]',\n exportAs: 'axOutlineItem',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0bGluZS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9vdXRsaW5lL3NyYy9saWIvb3V0bGluZS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNdEYsTUFBTSxPQUFPLHNCQUFzQjtJQUpuQztRQUtVLE9BQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFaEMsT0FBRSxHQUFHLEtBQUssd0RBQVUsQ0FBQztRQUNyQixhQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssb0RBQUMsQ0FBQztRQUV4QixTQUFJLEdBQUcsZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUN6QixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQTZCLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFFckcsSUFBSSxLQUFLLENBQUM7WUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUM3RCxJQUFJLFdBQVcsRUFBRSxDQUFDO29CQUNoQixLQUFLLEdBQUcsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNoRCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sS0FBSyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RELENBQUM7Z0JBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQztZQUNuQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQWRDLElBQUksQ0FhRDs4R0FuQlEsc0JBQXNCO2tHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFLGVBQWU7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F4T3V0bGluZUl0ZW1dJyxcbiAgZXhwb3J0QXM6ICdheE91dGxpbmVJdGVtJyxcbn0pXG5leHBvcnQgY2xhc3MgQVhPdXRsaW5lSXRlbURpcmVjdGl2ZSB7XG4gIHByaXZhdGUgZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgaWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIGRpc2FibGVkID0gaW5wdXQoZmFsc2UpO1xuXG4gICNhbnIgPSBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmRhdGFzZXRbJ2F4T3V0bGluZUl0ZW0nXSA9IHRoaXMuZGlzYWJsZWQoKSA/ICdmYWxzZScgOiAndHJ1ZSc7XG5cbiAgICBsZXQgbmV3SWQ7XG4gICAgaWYgKCF0aGlzLmlkKCkpIHtcbiAgICAgIGNvbnN0IHRleHRDb250ZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50LnRyaW0oKTtcbiAgICAgIGlmICh0ZXh0Q29udGVudCkge1xuICAgICAgICBuZXdJZCA9IGAke3RleHRDb250ZW50LnJlcGxhY2UoL1xccysvZywgJy0nKX1gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3SWQgPSBgJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyLCA3KX1gO1xuICAgICAgfVxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkID0gbmV3SWQ7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1vdXRsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL291dGxpbmUvc3JjL2Fjb3JleC1jZGstb3V0bGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;;;AAMO,MAAM,2BAA2B,CAAC;AACzC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAClC,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAC7C,QAAQ,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE;AACtC,QAAQ,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC;AAClD,QAAQ,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC1D,QAAQ,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACvF,QAAQ,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9F,QAAQ,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC/F,QAAQ,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACpG,QAAQ,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACnG,QAAQ,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9G,QAAQ,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5G,QAAQ,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACtF,QAAQ,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7F,QAAQ,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,mBAAmB;AACxE,cAAc,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE;AAChE,cAAc,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAChG,QAAQ,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAE;AAC5C,QAAQ,IAAI,CAAC,sBAAsB,GAAG,GAAG;AACzC,QAAQ,IAAI,CAAC,aAAa,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC;AACpD,QAAQ,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,MAAM;AAC1C,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACrC,gBAAgB,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM;AAChE,gBAAgB,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,cAAc,GAAG,QAAQ;AACxE,YAAY;AACZ,YAAY,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACpD,gBAAgB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM;AAClD,oBAAoB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,KAAK,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE;AACtH,oBAAoB,SAAS,CAAC,UAAU,EAAE,QAAQ;AAClD,yBAAyB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC;AAC/G,yBAAyB,SAAS,CAAC,CAAC,SAAS,KAAK;AAClD,wBAAwB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AACrD,wBAAwB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;AACrD,oBAAoB,CAAC,CAAC;AACtB,oBAAoB,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,CAAC,aAAa,KAAK;AACpF,wBAAwB,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,KAAK,WAAW,KAAK,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACxL,wBAAwB,IAAI,gBAAgB,EAAE;AAC9C,4BAA4B,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;AACvD,wBAAwB;AACxB,oBAAoB,CAAC,CAAC;AACtB,oBAAoB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACzE,wBAAwB,SAAS,EAAE,IAAI;AACvC,wBAAwB,OAAO,EAAE,IAAI;AACrC,qBAAqB,CAAC;AACtB,gBAAgB,CAAC,CAAC;AAClB,gBAAgB,IAAI,CAAC;AACrB,qBAAqB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB;AACvG,qBAAqB,SAAS,CAAC,MAAM;AACrC,oBAAoB,IAAI,CAAC,mBAAmB,EAAE;AAC9C,gBAAgB,CAAC,CAAC;AAClB,YAAY;AACZ,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,IAAI;AACR,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACnC,YAAY,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;AAC9C,QAAQ;AACR,IAAI;AACJ,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,mBAAmB,EAAE;AAClC,IAAI;AACJ,IAAI,aAAa,CAAC,SAAS,EAAE;AAC7B,QAAQ,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,KAAK;AAChD,YAAY,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AACtC,gBAAgB,OAAO,SAAS;AAChC,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY;AACtE,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY;AACtE,YAAY,MAAM,UAAU,GAAG,SAAS,GAAG,YAAY,IAAI,YAAY,GAAG,CAAC;AAC3E,YAAY,IAAI,UAAU,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;AAC3D,gBAAgB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAAM;AACvD,oBAAoB,GAAG,IAAI;AAC3B,oBAAoB,MAAM,EAAE,KAAK,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC;AAC1D,iBAAiB,CAAC,CAAC;AACnB,YAAY;AACZ,YAAY,IAAI,WAAW,GAAG,CAAC,CAAC;AAChC,YAAY,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACvD,gBAAgB,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC;AACzC,gBAAgB,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE;AACzE,oBAAoB,WAAW,GAAG,CAAC;AACnC,gBAAgB;AAChB,YAAY;AACZ,YAAY,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAAM;AACnD,gBAAgB,GAAG,IAAI;AACvB,gBAAgB,MAAM,EAAE,KAAK,KAAK,WAAW;AAC7C,aAAa,CAAC,CAAC;AACf,QAAQ,CAAC,CAAC;AACV,QAAQ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;AACpD,IAAI;AACJ,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACnC,YAAY,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;AAC9C,QAAQ;AACR,QAAQ,UAAU,CAAC,MAAM;AACzB,YAAY,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE;AAC3G,YAAY,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;AACpG,YAAY,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC;AAClD,YAAY,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa;AACzD,iBAAiB,MAAM,CAAC,CAAC,EAAE,KAAK;AAChC,gBAAgB,OAAO,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,OAAO;AAC9D,YAAY,CAAC;AACb,iBAAiB,GAAG,CAAC,CAAC,EAAE,KAAK;AAC7B,gBAAgB,IAAI,QAAQ,GAAG,EAAE,CAAC,EAAE;AACpC,gBAAgB,IAAI,CAAC,QAAQ,EAAE;AAC/B,oBAAoB,MAAM,gBAAgB,GAAG,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC1E,oBAAoB,IAAI,gBAAgB,EAAE;AAC1C,wBAAwB,QAAQ,GAAG,CAAC,EAAE,gBAAgB,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAC3F,wBAAwB,IAAI,OAAO,GAAG,CAAC;AACvC,wBAAwB,MAAM,gBAAgB,GAAG,QAAQ;AACzD,wBAAwB,OAAO,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;AAClE,4BAA4B,QAAQ,GAAG,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACvE,4BAA4B,OAAO,EAAE;AACrC,wBAAwB;AACxB,oBAAoB;AACpB,yBAAyB;AACzB,wBAAwB,QAAQ,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACzF,oBAAoB;AACpB,oBAAoB,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC;AACrC,gBAAgB;AAChB,gBAAgB,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC;AACtE,gBAAgB,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,CAAC,wBAAwB,CAAC;AAC/E,gBAAgB,IAAI,YAAY,EAAE;AAClC,oBAAoB,YAAY,CAAC,MAAM,EAAE;AACzC,gBAAgB;AAChB,gBAAgB,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACzC,oBAAoB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC;AAC9D,oBAAoB,MAAM,CAAC,WAAW,GAAG,GAAG;AAC5C,oBAAoB,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACpG,oBAAoB,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC;AAChE;AACA,oBAAoB,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,QAAQ,CAAC;AAC/D,oBAAoB,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG;AAC9C,oBAAoB,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,0BAA0B;AACxE,oBAAoB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS;AACnD,oBAAoB,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC;AAC9D,oBAAoB,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC;AAC7D,oBAAoB,MAAM,aAAa,GAAG,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;AAC5E,oBAAoB,MAAM,aAAa,GAAG,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;AAC5E,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC;AACpE,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC;AACpE,oBAAoB,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;AAC1C,oBAAoB,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;AAC/C,wBAAwB,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY;AACrE,4BAA4B,IAAI;AAChC,gCAAgC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AAC7E,4BAA4B;AAC5B,4BAA4B,OAAO,GAAG,EAAE;AACxC,gCAAgC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC;AACjF,4BAA4B;AAC5B,wBAAwB,CAAC,CAAC;AAC1B,oBAAoB;AACpB,gBAAgB;AAChB,gBAAgB,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;AACrD;AACA,gBAAgB,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE;AAClE,gBAAgB,MAAM,cAAc,GAAG,iBAAiB,CAAC,qBAAqB,EAAE;AAChF,gBAAgB,MAAM,WAAW,GAAG,EAAE,CAAC,qBAAqB,EAAE;AAC9D,gBAAgB,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,GAAG,iBAAiB,CAAC,SAAS;AAC1G,gBAAgB,OAAO;AACvB,oBAAoB,EAAE;AACtB,oBAAoB,EAAE,EAAE,QAAQ;AAChC,oBAAoB,MAAM,EAAE,KAAK;AACjC,oBAAoB,QAAQ,EAAE,QAAQ;AACtC,oBAAoB,OAAO,EAAE,eAAe;AAC5C,oBAAoB,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE;AAClD,iBAAiB;AACjB,YAAY,CAAC;AACb,iBAAiB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;AACtD,YAAY,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;AAC/C,YAAY,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;AAChD,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACvC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACrE,oBAAoB,SAAS,EAAE,IAAI;AACnC,oBAAoB,OAAO,EAAE,IAAI;AACjC,iBAAiB,CAAC;AAClB,YAAY;AACZ,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,mBAAmB,GAAG;AAC1B,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC9B,IAAI;AACJ,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,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,oBAAoB,EAAE,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,UAAU,EAAE,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,UAAU,EAAE,qBAAqB,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,cAAc,EAAE,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC5yC;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;AACnB,oBAAoB,QAAQ,EAAE,sBAAsB;AACpD,oBAAoB,QAAQ,EAAE,oBAAoB;AAClD,oBAAoB,SAAS,EAAE,CAAC,cAAc,EAAE,kBAAkB,CAAC;AACnE,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACrMN,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,QAAQ,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC/E,QAAQ,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACvF,QAAQ,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,MAAM;AAC1C,YAAY,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,OAAO,GAAG,MAAM;AAC/F,YAAY,IAAI,KAAK;AACrB,YAAY,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;AAC5B,gBAAgB,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE;AAC5E,gBAAgB,IAAI,WAAW,EAAE;AACjC,oBAAoB,KAAK,GAAG,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AACjE,gBAAgB;AAChB,qBAAqB;AACrB,oBAAoB,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,gBAAgB;AAChB,gBAAgB,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK;AAChD,YAAY;AACZ,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,IAAI;AACR,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,SAAS,EAAE,CAAC,CAAC;AACxL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AACpd;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,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,iBAAiB;AAC/C,oBAAoB,QAAQ,EAAE,eAAe;AAC7C,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;AChCb;AACA;AACA;;;;"}
1
+ {"version":3,"file":"acorex-cdk-outline.mjs","sources":["../../../../packages/cdk/outline/src/lib/outline-container.directive.ts","../../../../packages/cdk/outline/src/lib/outline-item.directive.ts","../../../../packages/cdk/outline/src/acorex-cdk-outline.ts"],"sourcesContent":["import { AXClipBoardService } from '@acorex/cdk/clipboard';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n afterNextRender,\n AfterViewInit,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n NgZone,\n OnDestroy,\n PLATFORM_ID,\n signal,\n} from '@angular/core';\nimport { BehaviorSubject, debounceTime, fromEvent, map, Subject } from 'rxjs';\n\nexport type outlineItemType = {\n id: string;\n el: HTMLElement;\n active: boolean;\n scrollY: number;\n parentId?: string;\n hasAnchor: boolean;\n};\n\n@Directive({\n selector: '[axOutlineContainer]',\n exportAs: 'axOutlineContainer',\n providers: [AXUnsubscriber, AXClipBoardService],\n})\nexport class AXOutlineContainerDirective implements OnDestroy, AfterViewInit {\n private zone = inject(NgZone);\n private platformId = inject(PLATFORM_ID);\n private el = inject(ElementRef<HTMLElement>);\n private unsubscriber = inject(AXUnsubscriber);\n private clipboardService = inject(AXClipBoardService);\n\n target = input<string>();\n smoothScroll = input(true);\n showHashItem = input(false);\n activationOffset = input(16);\n copyUrlOnClick = input(false);\n activateLastAtBottom = input(true);\n scrollableElementId = input<string | null>(null);\n\n private scrollTop = signal(0);\n private outlineItems = signal<outlineItemType[]>([]);\n\n private scrollableElement = computed(() =>\n this.scrollableElementId()\n ? document.getElementById(this.scrollableElementId())\n : (this.el.nativeElement as HTMLElement),\n );\n\n private mutationSubject = new Subject<void>();\n private readonly MUTATION_DEBOUNCE_TIME = 150;\n private mutationObserver: MutationObserver | undefined;\n outlineItems$ = new BehaviorSubject<outlineItemType[]>([]);\n\n #anr = afterNextRender(() => {\n if (this.smoothScroll()) {\n this.scrollableElement().style.overflow = 'auto';\n this.scrollableElement().style.scrollBehavior = 'smooth';\n }\n\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n const scrollable = this.scrollableElement().tagName === 'HTML' ? window : this.scrollableElement();\n fromEvent(scrollable, 'scroll')\n .pipe(\n this.unsubscriber.takeUntilDestroy,\n map(() => this.scrollableElement().scrollTop),\n )\n .subscribe((scrollTop) => {\n this.scrollTop.set(scrollTop);\n this.scrollChanged(scrollTop);\n });\n\n this.mutationObserver = new MutationObserver((mutationsList) => {\n const relevantMutation = mutationsList.some(\n (mutation) =>\n mutation.type === 'childList' && (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0),\n );\n if (relevantMutation) {\n this.mutationSubject.next();\n }\n });\n\n this.mutationObserver.observe(this.el.nativeElement, {\n childList: true,\n subtree: true,\n });\n });\n\n this.mutationSubject\n .pipe(debounceTime(this.MUTATION_DEBOUNCE_TIME), this.unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this.refreshOutlineItems();\n });\n }\n });\n\n ngOnDestroy(): void {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n }\n\n ngAfterViewInit() {\n this.refreshOutlineItems();\n }\n\n private scrollChanged(scrollTop: number) {\n this.outlineItems.update((prevItems) => {\n if (prevItems.length === 0) return prevItems;\n\n const scrollHeight = this.scrollableElement().scrollHeight;\n const clientHeight = this.scrollableElement().clientHeight;\n const isAtBottom = scrollTop + clientHeight >= scrollHeight - 1;\n\n if (isAtBottom && this.activateLastAtBottom()) {\n return prevItems.map((item, index) => ({\n ...item,\n active: index === prevItems.length - 1,\n }));\n }\n\n let activeIndex = -1;\n for (let i = 0; i < prevItems.length; i++) {\n const item = prevItems[i];\n if (scrollTop >= item.scrollY - this.activationOffset()) {\n activeIndex = i;\n }\n }\n return prevItems.map((item, index) => ({\n ...item,\n active: index === activeIndex,\n }));\n });\n this.outlineItems$.next(this.outlineItems());\n }\n\n private setOutlineItems() {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n\n setTimeout(() => {\n const targets = this.target() ? [...this.el.nativeElement.querySelectorAll(this.target())] : [];\n targets.push(...this.el.nativeElement.querySelectorAll('[data-ax-outline-item=\"true\"]'));\n const uniqueTargets = new Set(targets);\n\n const outlineItems = Array.from(uniqueTargets)\n .filter((el) => {\n return el.dataset['axOutlineItem'] !== 'false';\n })\n .map((el: HTMLElement) => {\n let fragment = el.id;\n if (!fragment) {\n const textContentForId = el.textContent?.trim() ?? ''; // Read text BEFORE adding/modifying for hash\n if (textContentForId) {\n fragment = `${textContentForId.toLowerCase().replace(/\\s+/g, '-')}`;\n let counter = 1;\n const originalFragment = fragment;\n while (document.getElementById(fragment)) {\n fragment = `${originalFragment}-${counter}`;\n counter++;\n }\n } else {\n fragment = `ax-outline-${Math.random().toString(36).slice(2, 7)}`;\n }\n el.id = fragment; // Set the ID on the element\n }\n\n el.style.scrollMargin = `${this.activationOffset()}px`;\n\n const existingLink = el.querySelector('a.ax-outline-hash-link');\n if (existingLink) {\n existingLink.remove();\n }\n\n if (this.showHashItem()) {\n const anchor = document.createElement('a');\n anchor.textContent = '#';\n anchor.href = `${window.location.pathname}${window.location.search}#${fragment}`;\n anchor.classList.add('ax-outline-hash-link');\n\n // Styling for the hash link\n anchor.style.paddingInlineStart = '0.5rem'; // Adjust as needed\n anchor.style.opacity = '0';\n anchor.style.transition = 'opacity 0.2s ease-in-out';\n anchor.style.cursor = 'pointer';\n anchor.setAttribute('aria-hidden', 'true');\n anchor.setAttribute('fragment', fragment);\n\n const enterListener = () => (anchor.style.opacity = '1');\n const leaveListener = () => (anchor.style.opacity = '0');\n\n el.addEventListener('mouseenter', enterListener);\n el.addEventListener('mouseleave', leaveListener);\n\n el.appendChild(anchor);\n\n if (this.copyUrlOnClick()) {\n anchor.addEventListener('click', async () => {\n try {\n await this.clipboardService.copy(anchor.href);\n } catch (err) {\n console.error('Failed to copy outline URL:', err);\n }\n });\n }\n }\n\n const parentId = el.dataset['parent'];\n\n // Calculate position relative to the scrollable element\n const scrollableElement = this.scrollableElement();\n const scrollableRect = scrollableElement.getBoundingClientRect();\n const elementRect = el.getBoundingClientRect();\n const relativeScrollY = elementRect.top - scrollableRect.top + scrollableElement.scrollTop;\n\n return {\n el,\n id: fragment,\n active: false,\n parentId: parentId,\n scrollY: relativeScrollY,\n hasAnchor: this.showHashItem(),\n };\n })\n .sort((a, b) => a.scrollY - b.scrollY);\n\n this.outlineItems.set(outlineItems);\n this.scrollChanged(this.scrollTop());\n\n if (this.mutationObserver) {\n this.mutationObserver.observe(this.el.nativeElement, {\n childList: true,\n subtree: true,\n });\n }\n });\n }\n\n public refreshOutlineItems() {\n this.setOutlineItems();\n }\n}\n","import { afterNextRender, Directive, ElementRef, inject, input } from '@angular/core';\n\n@Directive({\n selector: '[axOutlineItem]',\n exportAs: 'axOutlineItem',\n})\nexport class AXOutlineItemDirective {\n private el = inject(ElementRef);\n\n id = input<string>();\n disabled = input(false);\n\n #anr = afterNextRender(() => {\n (this.el.nativeElement as HTMLElement).dataset['axOutlineItem'] = this.disabled() ? 'false' : 'true';\n\n let newId;\n if (!this.id()) {\n const textContent = this.el.nativeElement.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n } else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n this.el.nativeElement.id = newId;\n }\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -25,10 +25,10 @@ class AXOverlayService {
25
25
  };
26
26
  }
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOverlayService, providedIn: 'root' }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOverlayService, providedIn: 'root' }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXOverlayService, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXOverlayService, decorators: [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: 'root',