uni-component-tw 1.1.0 → 1.2.0

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.
@@ -65,7 +65,7 @@ export class UniArticleComponent {
65
65
  <ng-content></ng-content>
66
66
  }
67
67
  </article>
68
- `, isInline: true, styles: [":host{display:block;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
68
+ `, isInline: true, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{display:block;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
69
  }
70
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: UniArticleComponent, decorators: [{
71
71
  type: Component,
@@ -103,6 +103,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
103
103
  <ng-content></ng-content>
104
104
  }
105
105
  </article>
106
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;overflow:hidden}\n"] }]
106
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{display:block;overflow:hidden}\n"] }]
107
107
  }] });
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pLWFydGljbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pLWNvbXBvbmVudC10dy91bmktYXJ0aWNsZS9zcmMvdW5pLWFydGljbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sR0FHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7O0FBb0RuRSxNQUFNLE9BQU8sbUJBQW1CO0lBakRoQztRQWtERSxZQUFZO1FBQ0gsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQyxDQUFDLCtCQUErQjtRQUNqRSxVQUFLLEdBQUcsS0FBSyxFQUFVLENBQUMsQ0FBQyxpQ0FBaUM7UUFDMUQsU0FBSSxHQUFHLEtBQUssRUFBa0IsQ0FBQyxDQUFDLHFDQUFxQztRQUNyRSxjQUFTLEdBQUcsS0FBSyxFQUF1QixDQUFDLENBQUMsNkJBQTZCO1FBQ3ZFLHNCQUFpQixHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztRQUVqRyxlQUFlO1FBQ2YsV0FBTSxHQUFHLE1BQU0sQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUMvQixhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztLQWdCcEY7SUFkQyx3RUFBd0U7SUFDeEUsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDOUIsa0VBQWtFO1FBQ2xFLElBQUksU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsSUFBSSxTQUFTLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2hGLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGdFQUFnRTtJQUN0RCxZQUFZO1FBQ3BCLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDOzhHQXpCVSxtQkFBbUI7a0dBQW5CLG1CQUFtQiw0dUJBN0NwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVCwrR0FuQ1MsWUFBWSw0SEFBRSxjQUFjLHMwQkFBRSxlQUFlOzsyRkE4QzVDLG1CQUFtQjtrQkFqRC9CLFNBQVM7K0JBQ0UsYUFBYSxjQUNYLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFlBQzlDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NULG1CQVNnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgY29tcHV0ZWQsXHJcbiAgaW5wdXQsXHJcbiAgc2lnbmFsLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT25DaGFuZ2VzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEeEJ1dHRvbk1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9idXR0b24nO1xyXG5pbXBvcnQgeyBGYUljb25Db21wb25lbnQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IEljb25EZWZpbml0aW9uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndW5pLWFydGljbGUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHhCdXR0b25Nb2R1bGUsIEZhSWNvbkNvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxhcnRpY2xlXHJcbiAgICAgIGNsYXNzPVwidW5pX2FydGljbGUgZmxleCBoLWZ1bGwgZmxleC1jb2wgcm91bmRlZCBib3JkZXItMiBwLTRcIlxyXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbG9yKCkgKyAnMjYnXCJcclxuICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImNvbG9yKCkgKyAnMzMnXCI+XHJcbiAgICAgIDwhLS0gVGl0bGUgLS0+XHJcbiAgICAgIEBpZiAoaXNIZWFkZXIoKSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1bmlfYXJ0aWNsZV9oZWFkZXIgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTRcIiBbbmdDbGFzc109XCJ7ICdtYi00JzogaXNPcGVuKCkgfVwiPlxyXG4gICAgICAgICAgPCEtLSBJY29uYSBuZWxsYSB0ZXN0YXRhLCBzZSBwcmVzZW50ZSAtLT5cclxuICAgICAgICAgIEBpZiAoaWNvbigpOyBhcyBpY29uKSB7XHJcbiAgICAgICAgICAgIDxmYS1pY29uIGNsYXNzPVwidW5pLWFydGljbGUtaGVhZGVyLWljb25cIiBbaWNvbl09XCJpY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIDwhLS0gVGl0b2xvIG5lbGxhIHRlc3RhdGEsIHNlIHByZXNlbnRlIC0tPlxyXG4gICAgICAgICAgQGlmICh0aXRsZSgpOyBhcyB0aXRsZSkge1xyXG4gICAgICAgICAgICA8aDUgY2xhc3M9XCJ1bmlfYXJ0aWNsZV9oZWFkZXJfdGl0bGUgdHJ1bmNhdGUgdXBwZXJjYXNlXCI+e3sgdGl0bGUgfX08L2g1PlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIDwhLS0gQm90dG9uZSBwZXIgYXByaXJlL2NoaXVkZXJlIGwnYXJ0aWNvbG8sIHNlIHByZXNlbnRlIC0tPlxyXG4gICAgICAgICAgQGlmIChoZWFkZXJDbG9zZUJ1dHRvbigpKSB7XHJcbiAgICAgICAgICAgIDxkeC1idXR0b25cclxuICAgICAgICAgICAgICBjbGFzcz1cInVuaV9hcnRpY2xlX2hlYWRlcl9idXR0b24gbWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgW2ljb25dPVwiaXNPcGVuKCkgPyAnY2xvc2UnIDogJ2V4cGFuZGZvcm0nXCJcclxuICAgICAgICAgICAgICAob25DbGljayk9XCJ0b2dnbGVJc09wZW4oKVwiPlxyXG4gICAgICAgICAgICA8L2R4LWJ1dHRvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG5cclxuICAgICAgPCEtLSBDb250ZW51dG8gZGVsbCdhcnRpY29sbywgdmlzaWJpbGUgc29sbyBzZSBhcGVydG8gLS0+XHJcbiAgICAgIEBpZiAoaXNPcGVuKCkpIHtcclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgIH1cclxuICAgIDwvYXJ0aWNsZT5cclxuICBgLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYFxyXG4gICAgICA6aG9zdCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5pQXJ0aWNsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgLyogSW5wdXRzICovXHJcbiAgcmVhZG9ubHkgY29sb3IgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7IC8vIENvbG9yZSBkaSBiYXNlIGRlbGwnYXJ0aWNvbG9cclxuICByZWFkb25seSB0aXRsZSA9IGlucHV0PHN0cmluZz4oKTsgLy8gVGl0b2xvIG9wemlvbmFsZSBkZWxsJ2FydGljb2xvXHJcbiAgcmVhZG9ubHkgaWNvbiA9IGlucHV0PEljb25EZWZpbml0aW9uPigpOyAvLyBJY29uYSBvcHppb25hbGUgcGVyIGwnaW50ZXN0YXppb25lXHJcbiAgcmVhZG9ubHkgc2V0SXNPcGVuID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZD4oKTsgLy8gU3RhdG8gaW5pemlhbGUgZGkgYXBlcnR1cmFcclxuICByZWFkb25seSBoZWFkZXJDbG9zZUJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTsgLy8gU2UgbW9zdHJhcmUgaWwgYnV0dG9uIHBlciBjaGl1ZGVyZSBhcnRpY2xlXHJcblxyXG4gIC8qIFZhcmlhYmxlcyAqL1xyXG4gIGlzT3BlbiA9IHNpZ25hbDxib29sZWFuPih0cnVlKTtcclxuICBpc0hlYWRlciA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaWNvbigpIHx8IHRoaXMudGl0bGUoKSB8fCB0aGlzLmhlYWRlckNsb3NlQnV0dG9uKCkpO1xyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMaWZlY3ljbGUgSG9vayAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IHNldElzT3BlbiB9ID0gY2hhbmdlcztcclxuICAgIC8vIFZlcmlmaWNhIHNlICdzZXRJc09wZW4nIMOoIGNhbWJpYXRvIGUgbm9uIMOoIGlsIHByaW1vIGNhbWJpYW1lbnRvXHJcbiAgICBpZiAoc2V0SXNPcGVuICYmICFzZXRJc09wZW4uZmlyc3RDaGFuZ2UgJiYgc2V0SXNPcGVuLmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuaXNPcGVuLnNldChzZXRJc09wZW4uY3VycmVudFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1ldG9kaSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuICBwcm90ZWN0ZWQgdG9nZ2xlSXNPcGVuKCk6IHZvaWQge1xyXG4gICAgLy8gSW52ZXJ0ZSBsbyBzdGF0byBkaSBhcGVydHVyYS9jaGl1c3VyYVxyXG4gICAgdGhpcy5pc09wZW4udXBkYXRlKCh2YWwpID0+ICF2YWwpO1xyXG4gIH1cclxufVxyXG4iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pLWFydGljbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pLWNvbXBvbmVudC10dy91bmktYXJ0aWNsZS9zcmMvdW5pLWFydGljbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxFQUNMLE1BQU0sR0FHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7O0FBNkNuRSxNQUFNLE9BQU8sbUJBQW1CO0lBMUNoQztRQTJDRSxZQUFZO1FBQ0gsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQyxDQUFDLCtCQUErQjtRQUNqRSxVQUFLLEdBQUcsS0FBSyxFQUFVLENBQUMsQ0FBQyxpQ0FBaUM7UUFDMUQsU0FBSSxHQUFHLEtBQUssRUFBa0IsQ0FBQyxDQUFDLHFDQUFxQztRQUNyRSxjQUFTLEdBQUcsS0FBSyxFQUF1QixDQUFDLENBQUMsNkJBQTZCO1FBQ3ZFLHNCQUFpQixHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQyxDQUFDLDZDQUE2QztRQUVqRyxlQUFlO1FBQ2YsV0FBTSxHQUFHLE1BQU0sQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUMvQixhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztLQWdCcEY7SUFkQyx3RUFBd0U7SUFDeEUsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDOUIsa0VBQWtFO1FBQ2xFLElBQUksU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsSUFBSSxTQUFTLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2hGLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGdFQUFnRTtJQUN0RCxZQUFZO1FBQ3BCLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDOzhHQXpCVSxtQkFBbUI7a0dBQW5CLG1CQUFtQiw0dUJBdENwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVCx1S0FuQ1MsWUFBWSw0SEFBRSxjQUFjLHMwQkFBRSxlQUFlOzsyRkF1QzVDLG1CQUFtQjtrQkExQy9CLFNBQVM7K0JBQ0UsYUFBYSxjQUNYLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFlBQzlDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NULG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgY29tcHV0ZWQsXHJcbiAgaW5wdXQsXHJcbiAgc2lnbmFsLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT25DaGFuZ2VzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEeEJ1dHRvbk1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9idXR0b24nO1xyXG5pbXBvcnQgeyBGYUljb25Db21wb25lbnQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IEljb25EZWZpbml0aW9uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndW5pLWFydGljbGUnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRHhCdXR0b25Nb2R1bGUsIEZhSWNvbkNvbXBvbmVudF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxhcnRpY2xlXHJcbiAgICAgIGNsYXNzPVwidW5pX2FydGljbGUgZmxleCBoLWZ1bGwgZmxleC1jb2wgcm91bmRlZCBib3JkZXItMiBwLTRcIlxyXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImNvbG9yKCkgKyAnMjYnXCJcclxuICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImNvbG9yKCkgKyAnMzMnXCI+XHJcbiAgICAgIDwhLS0gVGl0bGUgLS0+XHJcbiAgICAgIEBpZiAoaXNIZWFkZXIoKSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1bmlfYXJ0aWNsZV9oZWFkZXIgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTRcIiBbbmdDbGFzc109XCJ7ICdtYi00JzogaXNPcGVuKCkgfVwiPlxyXG4gICAgICAgICAgPCEtLSBJY29uYSBuZWxsYSB0ZXN0YXRhLCBzZSBwcmVzZW50ZSAtLT5cclxuICAgICAgICAgIEBpZiAoaWNvbigpOyBhcyBpY29uKSB7XHJcbiAgICAgICAgICAgIDxmYS1pY29uIGNsYXNzPVwidW5pLWFydGljbGUtaGVhZGVyLWljb25cIiBbaWNvbl09XCJpY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIDwhLS0gVGl0b2xvIG5lbGxhIHRlc3RhdGEsIHNlIHByZXNlbnRlIC0tPlxyXG4gICAgICAgICAgQGlmICh0aXRsZSgpOyBhcyB0aXRsZSkge1xyXG4gICAgICAgICAgICA8aDUgY2xhc3M9XCJ1bmlfYXJ0aWNsZV9oZWFkZXJfdGl0bGUgdHJ1bmNhdGUgdXBwZXJjYXNlXCI+e3sgdGl0bGUgfX08L2g1PlxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIDwhLS0gQm90dG9uZSBwZXIgYXByaXJlL2NoaXVkZXJlIGwnYXJ0aWNvbG8sIHNlIHByZXNlbnRlIC0tPlxyXG4gICAgICAgICAgQGlmIChoZWFkZXJDbG9zZUJ1dHRvbigpKSB7XHJcbiAgICAgICAgICAgIDxkeC1idXR0b25cclxuICAgICAgICAgICAgICBjbGFzcz1cInVuaV9hcnRpY2xlX2hlYWRlcl9idXR0b24gbWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgW2ljb25dPVwiaXNPcGVuKCkgPyAnY2xvc2UnIDogJ2V4cGFuZGZvcm0nXCJcclxuICAgICAgICAgICAgICAob25DbGljayk9XCJ0b2dnbGVJc09wZW4oKVwiPlxyXG4gICAgICAgICAgICA8L2R4LWJ1dHRvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG5cclxuICAgICAgPCEtLSBDb250ZW51dG8gZGVsbCdhcnRpY29sbywgdmlzaWJpbGUgc29sbyBzZSBhcGVydG8gLS0+XHJcbiAgICAgIEBpZiAoaXNPcGVuKCkpIHtcclxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgIH1cclxuICAgIDwvYXJ0aWNsZT5cclxuICBgLFxyXG4gIHN0eWxlVXJsOiAnLi91bmktYXJ0aWNsZS5jb21wb25lbnQuc2NzcycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbmlBcnRpY2xlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICAvKiBJbnB1dHMgKi9cclxuICByZWFkb25seSBjb2xvciA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTsgLy8gQ29sb3JlIGRpIGJhc2UgZGVsbCdhcnRpY29sb1xyXG4gIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQ8c3RyaW5nPigpOyAvLyBUaXRvbG8gb3B6aW9uYWxlIGRlbGwnYXJ0aWNvbG9cclxuICByZWFkb25seSBpY29uID0gaW5wdXQ8SWNvbkRlZmluaXRpb24+KCk7IC8vIEljb25hIG9wemlvbmFsZSBwZXIgbCdpbnRlc3RhemlvbmVcclxuICByZWFkb25seSBzZXRJc09wZW4gPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpOyAvLyBTdGF0byBpbml6aWFsZSBkaSBhcGVydHVyYVxyXG4gIHJlYWRvbmx5IGhlYWRlckNsb3NlQnV0dG9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpOyAvLyBTZSBtb3N0cmFyZSBpbCBidXR0b24gcGVyIGNoaXVkZXJlIGFydGljbGVcclxuXHJcbiAgLyogVmFyaWFibGVzICovXHJcbiAgaXNPcGVuID0gc2lnbmFsPGJvb2xlYW4+KHRydWUpO1xyXG4gIGlzSGVhZGVyID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pY29uKCkgfHwgdGhpcy50aXRsZSgpIHx8IHRoaXMuaGVhZGVyQ2xvc2VCdXR0b24oKSk7XHJcblxyXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExpZmVjeWNsZSBIb29rIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgc2V0SXNPcGVuIH0gPSBjaGFuZ2VzO1xyXG4gICAgLy8gVmVyaWZpY2Egc2UgJ3NldElzT3Blbicgw6ggY2FtYmlhdG8gZSBub24gw6ggaWwgcHJpbW8gY2FtYmlhbWVudG9cclxuICAgIGlmIChzZXRJc09wZW4gJiYgIXNldElzT3Blbi5maXJzdENoYW5nZSAmJiBzZXRJc09wZW4uY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5pc09wZW4uc2V0KHNldElzT3Blbi5jdXJyZW50VmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTWV0b2RpIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4gIHByb3RlY3RlZCB0b2dnbGVJc09wZW4oKTogdm9pZCB7XHJcbiAgICAvLyBJbnZlcnRlIGxvIHN0YXRvIGRpIGFwZXJ0dXJhL2NoaXVzdXJhXHJcbiAgICB0aGlzLmlzT3Blbi51cGRhdGUoKHZhbCkgPT4gIXZhbCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -82,7 +82,7 @@ export class UniSideMenuComponent {
82
82
  @if (item.visible) {
83
83
  <li>
84
84
  <a
85
- class="flex gap-2 rounded p-2 !text-white transition duration-100 ease-in"
85
+ class="flex gap-2 rounded p-2 !text-white"
86
86
  [ngClass]="{
87
87
  'hover:bg-zinc-600/60': !item.disabled,
88
88
  'cursor-auto !opacity-25': item.disabled,
@@ -179,7 +179,7 @@ export class UniSideMenuComponent {
179
179
  priority />
180
180
  </div>
181
181
  </aside>
182
- `, isInline: true, styles: [":host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "ngmodule", type: DxSwitchModule }, { kind: "component", type: i3.DxSwitchComponent, selector: "dx-switch", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "name", "readOnly", "rtlEnabled", "switchedOffText", "switchedOnText", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "switchedOffTextChange", "switchedOnTextChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: UNITranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
182
+ `, isInline: true, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "ngmodule", type: DxSwitchModule }, { kind: "component", type: i3.DxSwitchComponent, selector: "dx-switch", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "name", "readOnly", "rtlEnabled", "switchedOffText", "switchedOnText", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "switchedOffTextChange", "switchedOnTextChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: UNITranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
183
183
  }
184
184
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: UniSideMenuComponent, decorators: [{
185
185
  type: Component,
@@ -215,7 +215,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
215
215
  @if (item.visible) {
216
216
  <li>
217
217
  <a
218
- class="flex gap-2 rounded p-2 !text-white transition duration-100 ease-in"
218
+ class="flex gap-2 rounded p-2 !text-white"
219
219
  [ngClass]="{
220
220
  'hover:bg-zinc-600/60': !item.disabled,
221
221
  'cursor-auto !opacity-25': item.disabled,
@@ -312,6 +312,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
312
312
  priority />
313
313
  </div>
314
314
  </aside>
315
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"] }]
315
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"] }]
316
316
  }] });
317
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pLXNpZGUtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmktY29tcG9uZW50LXR3L3VuaS1zaWRlLW1lbnUvc3JjL3VuaS1zaWRlLW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLHFCQUFxQixFQUNyQixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFRLE1BQU0sa0JBQWtCLENBQUM7Ozs7OztBQXNLeEQsTUFBTSxPQUFPLG9CQUFvQjtJQXpJakM7UUEwSUUsYUFBYTtRQUNKLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsZ0JBQVcsR0FBRyxNQUFNLENBQUMs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QUNqQixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVIVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ09wdGltaXplZEltYWdlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRHhCdXR0b25Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgRHhTd2l0Y2hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc3dpdGNoJztcclxuaW1wb3J0IHsgRHhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc2VsZWN0LWJveCc7XHJcbmltcG9ydCB7IFZhbHVlQ2hhbmdlZEV2ZW50IGFzIFN3aXRjaFZhbHVlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS91aS9zd2l0Y2hfdHlwZXMnO1xyXG5pbXBvcnQgeyBWYWx1ZUNoYW5nZWRFdmVudCBhcyBTZWxlY3RCb3hWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJ2RldmV4dHJlbWUvdWkvc2VsZWN0X2JveF90eXBlcyc7XHJcbmltcG9ydCB7IEZhSWNvbkNvbXBvbmVudCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcclxuaW1wb3J0IHtcclxuICBJY29uRGVmaW5pdGlvbixcclxuICBmYUFycm93UmlnaHRGcm9tQnJhY2tldCxcclxuICBmYUFycm93UmlnaHRUb0JyYWNrZXQsXHJcbiAgZmFMYW5ndWFnZSxcclxuICBmYU1vb24sXHJcbiAgZmFTdW4sXHJcbiAgZmFVc2VyLFxyXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XHJcbmltcG9ydCB7IFVOSVRyYW5zbGF0ZVBpcGUsIFVOSVRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICd1bmktc2VydmljZS90cmFuc2xhdGUnO1xyXG5pbXBvcnQgeyBVTklBdXRoU2VydmljZSwgVXNlciB9IGZyb20gJ3VuaS1zZXJ2aWNlL2F1dGgnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ29tYm8gPSB7XHJcbiAgaWQ6IG51bWJlcjtcclxuICBjb2RlOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE1lbnVJdGVtID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgaWNvbjogSWNvbkRlZmluaXRpb247XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBwYXRoOiBzdHJpbmc7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxuICBkaXNhYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE1lbnVJbnRlcmFjdGlvbiA9IHtcclxuICBpZDogbnVtYmVyO1xyXG4gIGRhdGE6XHJcbiAgICB8IHsgdHlwZTogJ2J1dHRvbic7IGljb246IEljb25EZWZpbml0aW9uIH1cclxuICAgIHwgeyB0eXBlOiAnc2VsZWN0JzsgY29tYm9zOiBDb21ib1tdOyB2YWx1ZTogbnVtYmVyIHwgbnVsbCB9O1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgY2xhc3M6IHN0cmluZztcclxuICBmdW46ICguLi5hcmdzOiBhbnkpID0+IHZvaWQ7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxuICBkaXNhYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndW5pLXNpZGUtbWVudScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSb3V0ZXJMaW5rLFxyXG4gICAgUm91dGVyTGlua0FjdGl2ZSxcclxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXHJcbiAgICBEeEJ1dHRvbk1vZHVsZSxcclxuICAgIER4U3dpdGNoTW9kdWxlLFxyXG4gICAgRHhTZWxlY3RCb3hNb2R1bGUsXHJcbiAgICBGYUljb25Db21wb25lbnQsXHJcbiAgICBVTklUcmFuc2xhdGVQaXBlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxhc2lkZVxyXG4gICAgICBjbGFzcz1cImZsZXggaC1zY3JlZW4gdy1bMjUwcHhdIGZsZXgtY29sIGdhcC00IG92ZXJmbG93LWhpZGRlbiByb3VuZGVkIGJnLXppbmMtODAwLzYwIHAtNCBzaGFkb3cgYmFja2Ryb3AtYmx1ci14bFwiPlxyXG4gICAgICA8IS0tIHVzZXIgIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGdhcC00XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC0xIGdhcC0yXCI+XHJcbiAgICAgICAgICBAaWYgKHVzZXIoKTsgYXMgdXNlcikge1xyXG4gICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJJQ09OLlVTRVJcIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgdXNlci51c2VybmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZHgtYnV0dG9uIFtpY29uXT1cIidjbG9zZSdcIiAob25DbGljayk9XCJldnRUb2dnbGVNZW51LmVtaXQoZmFsc2UpXCI+PC9keC1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLSBtZW51ICAtLT5cclxuICAgICAgQGlmIChtZW51SXRlbXMoKS5sZW5ndGgpIHtcclxuICAgICAgICA8bmF2IGNsYXNzPVwibXQtOFwiPlxyXG4gICAgICAgICAgPHVsIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxyXG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIG1lbnVJdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XHJcbiAgICAgICAgICAgICAgQGlmIChpdGVtLnZpc2libGUpIHtcclxuICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXggZ2FwLTIgcm91bmRlZCBwLTIgIXRleHQtd2hpdGUgdHJhbnNpdGlvbiBkdXJhdGlvbi0xMDAgZWFzZS1pblwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgJ2hvdmVyOmJnLXppbmMtNjAwLzYwJzogIWl0ZW0uZGlzYWJsZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAnY3Vyc29yLWF1dG8gIW9wYWNpdHktMjUnOiBpdGVtLmRpc2FibGVkLFxyXG4gICAgICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0uZGlzYWJsZWQgPyBudWxsIDogaXRlbS5wYXRoXCJcclxuICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYmctemluYy02MDAvNjBcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJldnRUb2dnbGVNZW51LmVtaXQoZmFsc2UpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gY2xhc3M9XCJiYXNpcy02XCIgW2ljb25dPVwiaXRlbS5pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9uYXY+XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAobWVudUludGVyYWN0aW9ucygpLmxlbmd0aCkge1xyXG4gICAgICAgIDxociBjbGFzcz1cIm15LTQgaC1weCBib3JkZXItMCBiZy1ncmF5LTYwMFwiIC8+XHJcblxyXG4gICAgICAgIDx1bCBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cclxuICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgbWVudUludGVyYWN0aW9ucygpOyB0cmFjayBpdGVtLmlkKSB7XHJcbiAgICAgICAgICAgIEBpZiAoaXRlbS5kYXRhLnR5cGUgPT09ICdidXR0b24nKSB7XHJcbiAgICAgICAgICAgICAgPGxpIGNsYXNzPVwiaXRlbS1zZXR0aW5nLWJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkeC10aGVtZS1tYXRlcmlhbC10eXBvZ3JhcGh5IGZsZXggaC0xMiB3LWZ1bGwgaXRlbXMtY2VudGVyIGdhcC0yIHJvdW5kZWQgcC00XCJcclxuICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIml0ZW0uY2xhc3NcIlxyXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaXRlbS5mdW4oKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZmEtaWNvbiBjbGFzcz1cImJhc2lzLTZcIiBbaWNvbl09XCJpdGVtLmRhdGEuaWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4LTEgdHJ1bmNhdGVcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoaXRlbS5kYXRhLnR5cGUgPT09ICdzZWxlY3QnKSB7XHJcbiAgICAgICAgICAgICAgPGxpIGNsYXNzPVwiZmxleCBoLTEyIGl0ZW1zLWNlbnRlciBnYXAtNCByb3VuZGVkIGJnLXppbmMtNjAwLzYwIHAtMyBzaGFkb3dcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGR4LXNlbGVjdC1ib3hcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4LTEgYmFzaXMtMjRcIlxyXG4gICAgICAgICAgICAgICAgICB2YWx1ZUV4cHI9XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXlFeHByPVwiZGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiaXRlbS5kYXRhLmNvbWJvc1wiXHJcbiAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLmRhdGEudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICBzdHlsaW5nTW9kZT1cInVuZGVybGluZWRcIlxyXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlwiXHJcbiAgICAgICAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJpdGVtLmZ1bigkZXZlbnQpXCI+PC9keC1zZWxlY3QtYm94PlxyXG4gICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L3VsPlxyXG4gICAgICB9XHJcblxyXG4gICAgICA8IS0tIHNldHRpbmcgIC0tPlxyXG4gICAgICA8aHIgY2xhc3M9XCJteS00IGgtcHggYm9yZGVyLTAgYmctZ3JheS02MDBcIiAvPlxyXG5cclxuICAgICAgPHVsIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxyXG4gICAgICAgIDxsaSBjbGFzcz1cImZsZXggaC0xMiBpdGVtcy1jZW50ZXIgZ2FwLTIgcm91bmRlZCBiZy16aW5jLTYwMC82MCBwLTQgdGV4dC13aGl0ZSBzaGFkb3dcIj5cclxuICAgICAgICAgIDxmYS1pY29uIGNsYXNzPVwiYmFzaXMtNlwiIFtpY29uXT1cImRhcmtNb2RlKCkgPyBJQ09OLkRBUktfTU9ERSA6IElDT04uTElHSFRfTU9ERVwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgJ2xibERhcmtNb2RlJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIDxkeC1zd2l0Y2ggW3ZhbHVlXT1cImRhcmtNb2RlKClcIiAob25WYWx1ZUNoYW5nZWQpPVwidXBkYXRlVGhlbWUoJGV2ZW50KVwiPjwvZHgtc3dpdGNoPlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICAgICAgPGxpIGNsYXNzPVwiZmxleCBoLTEyIGl0ZW1zLWNlbnRlciBnYXAtMiByb3VuZGVkIGJnLXppbmMtNjAwLzYwIHAtNCB0ZXh0LXdoaXRlIHNoYWRvd1wiPlxyXG4gICAgICAgICAgPGZhLWljb24gY2xhc3M9XCJiYXNpcy02XCIgW2ljb25dPVwiSUNPTi5MQU5HVUFHRVwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgJ2xibExhbmd1YWdlJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIDxkeC1zZWxlY3QtYm94XHJcbiAgICAgICAgICAgIGNsYXNzPVwiYmFzaXMtMTJcIlxyXG4gICAgICAgICAgICBbaXRlbXNdPVwidHJhbnNsYXRlU2VydmljZS50cmFuc2xhdGVJbmZvKCkubGFuZ3VhZ2VzU3VwcG9ydGVkXCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cInRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlSW5mbygpLmxhbmd1YWdlXCJcclxuICAgICAgICAgICAgc3R5bGluZ01vZGU9XCJ1bmRlcmxpbmVkXCJcclxuICAgICAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cInVwZGF0ZUxhbmd1YWdlKCRldmVudClcIj48L2R4LXNlbGVjdC1ib3g+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8IS0tIFVzZXIgfCBudWxsIHwgdW5kZWZpbmVkIC0tPlxyXG4gICAgICAgIEBpZiAodXNlcigpICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGdhcC0yIHJvdW5kZWQgYm9yZGVyIGJvcmRlci13aGl0ZSBwLTQgdGV4dC13aGl0ZSBzaGFkb3cgdHJhbnNpdGlvbiBkdXJhdGlvbi0zMDAgZWFzZS1pbi1vdXQgaG92ZXI6Ymctd2hpdGUgaG92ZXI6dGV4dC1ncmF5LTgwMFwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInVzZXIoKSA/IGxvZ291dCgpIDogZ29Ub0xvZ2luKClcIj5cclxuICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJ1c2VyKCkgPyBJQ09OLkxPR09VVCA6IElDT04uTE9HSU5cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4LTEgdHJ1bmNhdGVcIj57e1xyXG4gICAgICAgICAgICAgICAgKHVzZXIoKSA/ICdsYmxMb2dvdXQnIDogJ2xibExvZ2luJykgfCB0cmFuc2xhdGVcclxuICAgICAgICAgICAgICB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIH1cclxuICAgICAgPC91bD5cclxuXHJcbiAgICAgIDwhLS0gbG9nbyAgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC1hdXRvIGZsZXggY29udGVudC1lbmQgYm9yZGVyLWIgYm9yZGVyLXdoaXRlXCI+XHJcbiAgICAgICAgPGltZ1xyXG4gICAgICAgICAgY2xhc3M9XCJtbC1hdXRvIGgtMTJcIlxyXG4gICAgICAgICAgW25nU3JjXT1cInBhdGhCcmFuZExvZ28oKVwiXHJcbiAgICAgICAgICBhbHQ9XCJCcmFuZCBsb2dvXCJcclxuICAgICAgICAgIFtoZWlnaHRdPVwiMzBcIlxyXG4gICAgICAgICAgW3dpZHRoXT1cIjEyNVwiXHJcbiAgICAgICAgICBwcmlvcml0eSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvYXNpZGU+XHJcbiAgYCxcclxuICBzdHlsZVVybDogJy4vdW5pLXNpZGUtbWVudS5jb21wb25lbnQuc2NzcycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbmlTaWRlTWVudUNvbXBvbmVudCB7XHJcbiAgLyogU2VydmljZSAqL1xyXG4gIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xyXG4gIHJlYWRvbmx5IGF1dGhTZXJ2aWNlID0gaW5qZWN0KFVOSUF1dGhTZXJ2aWNlKTtcclxuICByZWFkb25seSB0cmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KFVOSVRyYW5zbGF0ZVNlcnZpY2UpO1xyXG5cclxuICAvKiBJbnB1dCAqL1xyXG4gIHBhdGhCcmFuZExvZ28gPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XHJcbiAgbWVudUl0ZW1zID0gaW5wdXQ8TWVudUl0ZW1bXT4oW10pO1xyXG4gIG1lbnVJbnRlcmFjdGlvbnMgPSBpbnB1dDxNZW51SW50ZXJhY3Rpb25bXT4oW10pO1xyXG4gIHVzZXIgPSBpbnB1dC5yZXF1aXJlZDxVc2VyIHwgbnVsbCB8IHVuZGVmaW5lZD4oKTtcclxuXHJcbiAgLyogT3V0cHV0ICovXHJcbiAgZXZ0VG9nZ2xlTWVudSA9IG91dHB1dDxmYWxzZT4oKTtcclxuXHJcbiAgLyogVmFyaWFibGVzICovXHJcbiAgZGFya01vZGUgPSBzaWduYWw8Ym9vbGVhbj4obG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VuaS10aGVtZScpID09PSAnZGFyaycpO1xyXG5cclxuICAvKiBJY29ucyAqL1xyXG4gIHJlYWRvbmx5IElDT04gPSB7XHJcbiAgICBVU0VSOiBmYVVzZXIsXHJcbiAgICBMT0dJTjogZmFBcnJvd1JpZ2h0VG9CcmFja2V0LFxyXG4gICAgTE9HT1VUOiBmYUFycm93UmlnaHRGcm9tQnJhY2tldCxcclxuICAgIExJR0hUX01PREU6IGZhU3VuLFxyXG4gICAgREFSS19NT0RFOiBmYU1vb24sXHJcbiAgICBMQU5HVUFHRTogZmFMYW5ndWFnZSxcclxuICB9O1xyXG5cclxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4gIHByb3RlY3RlZCB1cGRhdGVUaGVtZShlOiBTd2l0Y2hWYWx1ZUNoYW5nZWRFdmVudCk6IHZvaWQge1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3VuaS10aGVtZScsIGUudmFsdWUgPyAnZGFyaycgOiAnbGlnaHQnKTtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB1cGRhdGVMYW5ndWFnZShlOiBTZWxlY3RCb3hWYWx1ZUNoYW5nZWRFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNldExhbmd1YWdlKGUudmFsdWUpO1xyXG4gICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdvVG9Mb2dpbigpOiB2b2lkIHtcclxuICAgIHRoaXMuZXZ0VG9nZ2xlTWVudS5lbWl0KGZhbHNlKTtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbG9naW4nXSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgbG9nb3V0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dvdXQkKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgY29uc3QgZmlyc3RJdGVtID0gdGhpcy5tZW51SXRlbXMoKS5maW5kKChpdGVtKSA9PiBpdGVtLnZpc2libGUgJiYgIWl0ZW0uZGlzYWJsZWQpO1xyXG4gICAgICB0aGlzLmV2dFRvZ2dsZU1lbnUuZW1pdChmYWxzZSk7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtmaXJzdEl0ZW0/LnBhdGggPz8gJ2xvZ2luJ10pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
317
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pLXNpZGUtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmktY29tcG9uZW50LXR3L3VuaS1zaWRlLW1lbnUvc3JjL3VuaS1zaWRlLW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLHFCQUFxQixFQUNyQixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsY0FBYyxFQUFRLE1BQU0sa0JBQWtCLENBQUM7Ozs7OztBQXNLeEQsTUFBTSxPQUFPLG9CQUFvQjtJQXpJakM7UUEwSUUsYUFBYTtRQUNKLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckMscUJBQWdCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFeEQsV0FBVztRQUNYLGtCQUFhLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQWEsRUFBRSxDQUFDLENBQUM7UUFDbEMscUJBQWdCLEdBQUcsS0FBSyxDQUFvQixFQUFFLENBQUMsQ0FBQztRQUNoRCxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBMkIsQ0FBQztRQUVqRCxZQUFZO1FBQ1osa0JBQWEsR0FBRyxNQUFNLEVBQVMsQ0FBQztRQUVoQyxlQUFlO1FBQ2YsYUFBUSxHQUFHLE1BQU0sQ0FBVSxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLE1BQU0sQ0FBQyxDQUFDO1FBRXpFLFdBQVc7UUFDRixTQUFJLEdBQUc7WUFDZCxJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxxQkFBcUI7WUFDNUIsTUFBTSxFQUFFLHVCQUF1QjtZQUMvQixVQUFVLEVBQUUsS0FBSztZQUNqQixTQUFTLEVBQUUsTUFBTTtZQUNqQixRQUFRLEVBQUUsVUFBVTtTQUNyQixDQUFDO0tBeUJIO0lBdkJDLDJEQUEyRDtJQUNqRCxXQUFXLENBQUMsQ0FBMEI7UUFDOUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5RCxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFUyxjQUFjLENBQUMsQ0FBNkI7UUFDcEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRVMsU0FBUztRQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVTLE1BQU07UUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDeEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBbERVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLGtxQkEzSHJCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVIVCw4ZkFqSUMsWUFBWSw2SEFDWixVQUFVLG9PQUNWLGdCQUFnQiw4TUFDaEIsZ0JBQWdCLCtPQUNoQixjQUFjLHEwQkFDZCxjQUFjLGdsQ0FDZCxpQkFBaUIsaXJGQUNqQixlQUFlLHVNQUNmLGdCQUFnQjs7MkZBNkhQLG9CQUFvQjtrQkF6SWhDLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsZ0JBQWdCO3FCQUNqQixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVIVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ09wdGltaXplZEltYWdlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgRHhCdXR0b25Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgRHhTd2l0Y2hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc3dpdGNoJztcclxuaW1wb3J0IHsgRHhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc2VsZWN0LWJveCc7XHJcbmltcG9ydCB7IFZhbHVlQ2hhbmdlZEV2ZW50IGFzIFN3aXRjaFZhbHVlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS91aS9zd2l0Y2hfdHlwZXMnO1xyXG5pbXBvcnQgeyBWYWx1ZUNoYW5nZWRFdmVudCBhcyBTZWxlY3RCb3hWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJ2RldmV4dHJlbWUvdWkvc2VsZWN0X2JveF90eXBlcyc7XHJcbmltcG9ydCB7IEZhSWNvbkNvbXBvbmVudCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcclxuaW1wb3J0IHtcclxuICBJY29uRGVmaW5pdGlvbixcclxuICBmYUFycm93UmlnaHRGcm9tQnJhY2tldCxcclxuICBmYUFycm93UmlnaHRUb0JyYWNrZXQsXHJcbiAgZmFMYW5ndWFnZSxcclxuICBmYU1vb24sXHJcbiAgZmFTdW4sXHJcbiAgZmFVc2VyLFxyXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XHJcbmltcG9ydCB7IFVOSVRyYW5zbGF0ZVBpcGUsIFVOSVRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICd1bmktc2VydmljZS90cmFuc2xhdGUnO1xyXG5pbXBvcnQgeyBVTklBdXRoU2VydmljZSwgVXNlciB9IGZyb20gJ3VuaS1zZXJ2aWNlL2F1dGgnO1xyXG5cclxuZXhwb3J0IHR5cGUgQ29tYm8gPSB7XHJcbiAgaWQ6IG51bWJlcjtcclxuICBjb2RlOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE1lbnVJdGVtID0ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgaWNvbjogSWNvbkRlZmluaXRpb247XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBwYXRoOiBzdHJpbmc7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxuICBkaXNhYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIE1lbnVJbnRlcmFjdGlvbiA9IHtcclxuICBpZDogbnVtYmVyO1xyXG4gIGRhdGE6XHJcbiAgICB8IHsgdHlwZTogJ2J1dHRvbic7IGljb246IEljb25EZWZpbml0aW9uIH1cclxuICAgIHwgeyB0eXBlOiAnc2VsZWN0JzsgY29tYm9zOiBDb21ib1tdOyB2YWx1ZTogbnVtYmVyIHwgbnVsbCB9O1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgY2xhc3M6IHN0cmluZztcclxuICBmdW46ICguLi5hcmdzOiBhbnkpID0+IHZvaWQ7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxuICBkaXNhYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndW5pLXNpZGUtbWVudScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSb3V0ZXJMaW5rLFxyXG4gICAgUm91dGVyTGlua0FjdGl2ZSxcclxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXHJcbiAgICBEeEJ1dHRvbk1vZHVsZSxcclxuICAgIER4U3dpdGNoTW9kdWxlLFxyXG4gICAgRHhTZWxlY3RCb3hNb2R1bGUsXHJcbiAgICBGYUljb25Db21wb25lbnQsXHJcbiAgICBVTklUcmFuc2xhdGVQaXBlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxhc2lkZVxyXG4gICAgICBjbGFzcz1cImZsZXggaC1zY3JlZW4gdy1bMjUwcHhdIGZsZXgtY29sIGdhcC00IG92ZXJmbG93LWhpZGRlbiByb3VuZGVkIGJnLXppbmMtODAwLzYwIHAtNCBzaGFkb3cgYmFja2Ryb3AtYmx1ci14bFwiPlxyXG4gICAgICA8IS0tIHVzZXIgIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGdhcC00XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC0xIGdhcC0yXCI+XHJcbiAgICAgICAgICBAaWYgKHVzZXIoKTsgYXMgdXNlcikge1xyXG4gICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJJQ09OLlVTRVJcIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgdXNlci51c2VybmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZHgtYnV0dG9uIFtpY29uXT1cIidjbG9zZSdcIiAob25DbGljayk9XCJldnRUb2dnbGVNZW51LmVtaXQoZmFsc2UpXCI+PC9keC1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLSBtZW51ICAtLT5cclxuICAgICAgQGlmIChtZW51SXRlbXMoKS5sZW5ndGgpIHtcclxuICAgICAgICA8bmF2IGNsYXNzPVwibXQtOFwiPlxyXG4gICAgICAgICAgPHVsIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxyXG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIG1lbnVJdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XHJcbiAgICAgICAgICAgICAgQGlmIChpdGVtLnZpc2libGUpIHtcclxuICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXggZ2FwLTIgcm91bmRlZCBwLTIgIXRleHQtd2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICdob3ZlcjpiZy16aW5jLTYwMC82MCc6ICFpdGVtLmRpc2FibGVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgJ2N1cnNvci1hdXRvICFvcGFjaXR5LTI1JzogaXRlbS5kaXNhYmxlZCxcclxuICAgICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJpdGVtLmRpc2FibGVkID8gbnVsbCA6IGl0ZW0ucGF0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImJnLXppbmMtNjAwLzYwXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZXZ0VG9nZ2xlTWVudS5lbWl0KGZhbHNlKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGNsYXNzPVwiYmFzaXMtNlwiIFtpY29uXT1cIml0ZW0uaWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXgtMSB0cnVuY2F0ZVwiPnt7IGl0ZW0ubGFiZWwgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvbmF2PlxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgKG1lbnVJbnRlcmFjdGlvbnMoKS5sZW5ndGgpIHtcclxuICAgICAgICA8aHIgY2xhc3M9XCJteS00IGgtcHggYm9yZGVyLTAgYmctZ3JheS02MDBcIiAvPlxyXG5cclxuICAgICAgICA8dWwgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yXCI+XHJcbiAgICAgICAgICBAZm9yIChpdGVtIG9mIG1lbnVJbnRlcmFjdGlvbnMoKTsgdHJhY2sgaXRlbS5pZCkge1xyXG4gICAgICAgICAgICBAaWYgKGl0ZW0uZGF0YS50eXBlID09PSAnYnV0dG9uJykge1xyXG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cIml0ZW0tc2V0dGluZy1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZHgtdGhlbWUtbWF0ZXJpYWwtdHlwb2dyYXBoeSBmbGV4IGgtMTIgdy1mdWxsIGl0ZW1zLWNlbnRlciBnYXAtMiByb3VuZGVkIHAtNFwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJpdGVtLmNsYXNzXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIml0ZW0uZnVuKClcIj5cclxuICAgICAgICAgICAgICAgICAgPGZhLWljb24gY2xhc3M9XCJiYXNpcy02XCIgW2ljb25dPVwiaXRlbS5kYXRhLmljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKGl0ZW0uZGF0YS50eXBlID09PSAnc2VsZWN0Jykge1xyXG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cImZsZXggaC0xMiBpdGVtcy1jZW50ZXIgZ2FwLTQgcm91bmRlZCBiZy16aW5jLTYwMC82MCBwLTMgc2hhZG93XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRydW5jYXRlXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxkeC1zZWxlY3QtYm94XHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleC0xIGJhc2lzLTI0XCJcclxuICAgICAgICAgICAgICAgICAgdmFsdWVFeHByPVwiaWRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5RXhwcj1cImRlc2NyaXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW0uZGF0YS5jb21ib3NcIlxyXG4gICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS5kYXRhLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgc3R5bGluZ01vZGU9XCJ1bmRlcmxpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJcIlxyXG4gICAgICAgICAgICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwiaXRlbS5mdW4oJGV2ZW50KVwiPjwvZHgtc2VsZWN0LWJveD5cclxuICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC91bD5cclxuICAgICAgfVxyXG5cclxuICAgICAgPCEtLSBzZXR0aW5nICAtLT5cclxuICAgICAgPGhyIGNsYXNzPVwibXktNCBoLXB4IGJvcmRlci0wIGJnLWdyYXktNjAwXCIgLz5cclxuXHJcbiAgICAgIDx1bCBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cclxuICAgICAgICA8bGkgY2xhc3M9XCJmbGV4IGgtMTIgaXRlbXMtY2VudGVyIGdhcC0yIHJvdW5kZWQgYmctemluYy02MDAvNjAgcC00IHRleHQtd2hpdGUgc2hhZG93XCI+XHJcbiAgICAgICAgICA8ZmEtaWNvbiBjbGFzcz1cImJhc2lzLTZcIiBbaWNvbl09XCJkYXJrTW9kZSgpID8gSUNPTi5EQVJLX01PREUgOiBJQ09OLkxJR0hUX01PREVcIj48L2ZhLWljb24+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXgtMSB0cnVuY2F0ZVwiPnt7ICdsYmxEYXJrTW9kZScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8ZHgtc3dpdGNoIFt2YWx1ZV09XCJkYXJrTW9kZSgpXCIgKG9uVmFsdWVDaGFuZ2VkKT1cInVwZGF0ZVRoZW1lKCRldmVudClcIj48L2R4LXN3aXRjaD5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIDxsaSBjbGFzcz1cImZsZXggaC0xMiBpdGVtcy1jZW50ZXIgZ2FwLTIgcm91bmRlZCBiZy16aW5jLTYwMC82MCBwLTQgdGV4dC13aGl0ZSBzaGFkb3dcIj5cclxuICAgICAgICAgIDxmYS1pY29uIGNsYXNzPVwiYmFzaXMtNlwiIFtpY29uXT1cIklDT04uTEFOR1VBR0VcIj48L2ZhLWljb24+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXgtMSB0cnVuY2F0ZVwiPnt7ICdsYmxMYW5ndWFnZScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8ZHgtc2VsZWN0LWJveFxyXG4gICAgICAgICAgICBjbGFzcz1cImJhc2lzLTEyXCJcclxuICAgICAgICAgICAgW2l0ZW1zXT1cInRyYW5zbGF0ZVNlcnZpY2UudHJhbnNsYXRlSW5mbygpLmxhbmd1YWdlc1N1cHBvcnRlZFwiXHJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ0cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZUluZm8oKS5sYW5ndWFnZVwiXHJcbiAgICAgICAgICAgIHN0eWxpbmdNb2RlPVwidW5kZXJsaW5lZFwiXHJcbiAgICAgICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJ1cGRhdGVMYW5ndWFnZSgkZXZlbnQpXCI+PC9keC1zZWxlY3QtYm94PlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICAgICAgPCEtLSBVc2VyIHwgbnVsbCB8IHVuZGVmaW5lZCAtLT5cclxuICAgICAgICBAaWYgKHVzZXIoKSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXggdy1mdWxsIGl0ZW1zLWNlbnRlciBnYXAtMiByb3VuZGVkIGJvcmRlciBib3JkZXItd2hpdGUgcC00IHRleHQtd2hpdGUgc2hhZG93IHRyYW5zaXRpb24gZHVyYXRpb24tMzAwIGVhc2UtaW4tb3V0IGhvdmVyOmJnLXdoaXRlIGhvdmVyOnRleHQtZ3JheS04MDBcIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJ1c2VyKCkgPyBsb2dvdXQoKSA6IGdvVG9Mb2dpbigpXCI+XHJcbiAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwidXNlcigpID8gSUNPTi5MT0dPVVQgOiBJQ09OLkxPR0lOXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleC0xIHRydW5jYXRlXCI+e3tcclxuICAgICAgICAgICAgICAgICh1c2VyKCkgPyAnbGJsTG9nb3V0JyA6ICdsYmxMb2dpbicpIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICB9XHJcbiAgICAgIDwvdWw+XHJcblxyXG4gICAgICA8IS0tIGxvZ28gIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtYXV0byBmbGV4IGNvbnRlbnQtZW5kIGJvcmRlci1iIGJvcmRlci13aGl0ZVwiPlxyXG4gICAgICAgIDxpbWdcclxuICAgICAgICAgIGNsYXNzPVwibWwtYXV0byBoLTEyXCJcclxuICAgICAgICAgIFtuZ1NyY109XCJwYXRoQnJhbmRMb2dvKClcIlxyXG4gICAgICAgICAgYWx0PVwiQnJhbmQgbG9nb1wiXHJcbiAgICAgICAgICBbaGVpZ2h0XT1cIjMwXCJcclxuICAgICAgICAgIFt3aWR0aF09XCIxMjVcIlxyXG4gICAgICAgICAgcHJpb3JpdHkgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2FzaWRlPlxyXG4gIGAsXHJcbiAgc3R5bGVVcmw6ICcuL3VuaS1zaWRlLW1lbnUuY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5pU2lkZU1lbnVDb21wb25lbnQge1xyXG4gIC8qIFNlcnZpY2UgKi9cclxuICByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICByZWFkb25seSBhdXRoU2VydmljZSA9IGluamVjdChVTklBdXRoU2VydmljZSk7XHJcbiAgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZSA9IGluamVjdChVTklUcmFuc2xhdGVTZXJ2aWNlKTtcclxuXHJcbiAgLyogSW5wdXQgKi9cclxuICBwYXRoQnJhbmRMb2dvID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG4gIG1lbnVJdGVtcyA9IGlucHV0PE1lbnVJdGVtW10+KFtdKTtcclxuICBtZW51SW50ZXJhY3Rpb25zID0gaW5wdXQ8TWVudUludGVyYWN0aW9uW10+KFtdKTtcclxuICB1c2VyID0gaW5wdXQucmVxdWlyZWQ8VXNlciB8IG51bGwgfCB1bmRlZmluZWQ+KCk7XHJcblxyXG4gIC8qIE91dHB1dCAqL1xyXG4gIGV2dFRvZ2dsZU1lbnUgPSBvdXRwdXQ8ZmFsc2U+KCk7XHJcblxyXG4gIC8qIFZhcmlhYmxlcyAqL1xyXG4gIGRhcmtNb2RlID0gc2lnbmFsPGJvb2xlYW4+KGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1bmktdGhlbWUnKSA9PT0gJ2RhcmsnKTtcclxuXHJcbiAgLyogSWNvbnMgKi9cclxuICByZWFkb25seSBJQ09OID0ge1xyXG4gICAgVVNFUjogZmFVc2VyLFxyXG4gICAgTE9HSU46IGZhQXJyb3dSaWdodFRvQnJhY2tldCxcclxuICAgIExPR09VVDogZmFBcnJvd1JpZ2h0RnJvbUJyYWNrZXQsXHJcbiAgICBMSUdIVF9NT0RFOiBmYVN1bixcclxuICAgIERBUktfTU9ERTogZmFNb29uLFxyXG4gICAgTEFOR1VBR0U6IGZhTGFuZ3VhZ2UsXHJcbiAgfTtcclxuXHJcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuICBwcm90ZWN0ZWQgdXBkYXRlVGhlbWUoZTogU3dpdGNoVmFsdWVDaGFuZ2VkRXZlbnQpOiB2b2lkIHtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd1bmktdGhlbWUnLCBlLnZhbHVlID8gJ2RhcmsnIDogJ2xpZ2h0Jyk7XHJcbiAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdXBkYXRlTGFuZ3VhZ2UoZTogU2VsZWN0Qm94VmFsdWVDaGFuZ2VkRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZXRMYW5ndWFnZShlLnZhbHVlKTtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnb1RvTG9naW4oKTogdm9pZCB7XHJcbiAgICB0aGlzLmV2dFRvZ2dsZU1lbnUuZW1pdChmYWxzZSk7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ2xvZ2luJ10pO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxvZ291dCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0JCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGZpcnN0SXRlbSA9IHRoaXMubWVudUl0ZW1zKCkuZmluZCgoaXRlbSkgPT4gaXRlbS52aXNpYmxlICYmICFpdGVtLmRpc2FibGVkKTtcclxuICAgICAgdGhpcy5ldnRUb2dnbGVNZW51LmVtaXQoZmFsc2UpO1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZmlyc3RJdGVtPy5wYXRoID8/ICdsb2dpbiddKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -66,7 +66,7 @@ class UniArticleComponent {
66
66
  <ng-content></ng-content>
67
67
  }
68
68
  </article>
69
- `, isInline: true, styles: [":host{display:block;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
+ `, isInline: true, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{display:block;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
70
  }
71
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: UniArticleComponent, decorators: [{
72
72
  type: Component,
@@ -104,7 +104,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
104
104
  <ng-content></ng-content>
105
105
  }
106
106
  </article>
107
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;overflow:hidden}\n"] }]
107
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{display:block;overflow:hidden}\n"] }]
108
108
  }] });
109
109
 
110
110
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"uni-component-tw-uni-article.mjs","sources":["../../../projects/uni-component-tw/uni-article/src/uni-article.component.ts","../../../projects/uni-component-tw/uni-article/uni-component-tw-uni-article.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n computed,\r\n input,\r\n signal,\r\n SimpleChanges,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport { DxButtonModule } from 'devextreme-angular/ui/button';\r\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\r\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons';\r\n\r\n@Component({\r\n selector: 'uni-article',\r\n standalone: true,\r\n imports: [CommonModule, DxButtonModule, FaIconComponent],\r\n template: `\r\n <article\r\n class=\"uni_article flex h-full flex-col rounded border-2 p-4\"\r\n [style.backgroundColor]=\"color() + '26'\"\r\n [style.borderColor]=\"color() + '33'\">\r\n <!-- Title -->\r\n @if (isHeader()) {\r\n <div class=\"uni_article_header flex items-center gap-4\" [ngClass]=\"{ 'mb-4': isOpen() }\">\r\n <!-- Icona nella testata, se presente -->\r\n @if (icon(); as icon) {\r\n <fa-icon class=\"uni-article-header-icon\" [icon]=\"icon\"></fa-icon>\r\n }\r\n\r\n <!-- Titolo nella testata, se presente -->\r\n @if (title(); as title) {\r\n <h5 class=\"uni_article_header_title truncate uppercase\">{{ title }}</h5>\r\n }\r\n\r\n <!-- Bottone per aprire/chiudere l'articolo, se presente -->\r\n @if (headerCloseButton()) {\r\n <dx-button\r\n class=\"uni_article_header_button ml-auto\"\r\n [icon]=\"isOpen() ? 'close' : 'expandform'\"\r\n (onClick)=\"toggleIsOpen()\">\r\n </dx-button>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- Contenuto dell'articolo, visibile solo se aperto -->\r\n @if (isOpen()) {\r\n <ng-content></ng-content>\r\n }\r\n </article>\r\n `,\r\n styles: [\r\n `\r\n :host {\r\n display: block;\r\n overflow: hidden;\r\n }\r\n `,\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class UniArticleComponent implements OnChanges {\r\n /* Inputs */\r\n readonly color = input.required<string>(); // Colore di base dell'articolo\r\n readonly title = input<string>(); // Titolo opzionale dell'articolo\r\n readonly icon = input<IconDefinition>(); // Icona opzionale per l'intestazione\r\n readonly setIsOpen = input<boolean | undefined>(); // Stato iniziale di apertura\r\n readonly headerCloseButton = input<boolean>(false); // Se mostrare il button per chiudere article\r\n\r\n /* Variables */\r\n isOpen = signal<boolean>(true);\r\n isHeader = computed(() => this.icon() || this.title() || this.headerCloseButton());\r\n\r\n /* ----------------------- Lifecycle Hook --------------------------- */\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { setIsOpen } = changes;\r\n // Verifica se 'setIsOpen' è cambiato e non è il primo cambiamento\r\n if (setIsOpen && !setIsOpen.firstChange && setIsOpen.currentValue !== undefined) {\r\n this.isOpen.set(setIsOpen.currentValue);\r\n }\r\n }\r\n\r\n /* ----------------------- Metodi --------------------------- */\r\n protected toggleIsOpen(): void {\r\n // Inverte lo stato di apertura/chiusura\r\n this.isOpen.update((val) => !val);\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uni-component-tw-uni-article.mjs","sources":["../../../projects/uni-component-tw/uni-article/src/uni-article.component.ts","../../../projects/uni-component-tw/uni-article/uni-component-tw-uni-article.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n computed,\r\n input,\r\n signal,\r\n SimpleChanges,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport { DxButtonModule } from 'devextreme-angular/ui/button';\r\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\r\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons';\r\n\r\n@Component({\r\n selector: 'uni-article',\r\n standalone: true,\r\n imports: [CommonModule, DxButtonModule, FaIconComponent],\r\n template: `\r\n <article\r\n class=\"uni_article flex h-full flex-col rounded border-2 p-4\"\r\n [style.backgroundColor]=\"color() + '26'\"\r\n [style.borderColor]=\"color() + '33'\">\r\n <!-- Title -->\r\n @if (isHeader()) {\r\n <div class=\"uni_article_header flex items-center gap-4\" [ngClass]=\"{ 'mb-4': isOpen() }\">\r\n <!-- Icona nella testata, se presente -->\r\n @if (icon(); as icon) {\r\n <fa-icon class=\"uni-article-header-icon\" [icon]=\"icon\"></fa-icon>\r\n }\r\n\r\n <!-- Titolo nella testata, se presente -->\r\n @if (title(); as title) {\r\n <h5 class=\"uni_article_header_title truncate uppercase\">{{ title }}</h5>\r\n }\r\n\r\n <!-- Bottone per aprire/chiudere l'articolo, se presente -->\r\n @if (headerCloseButton()) {\r\n <dx-button\r\n class=\"uni_article_header_button ml-auto\"\r\n [icon]=\"isOpen() ? 'close' : 'expandform'\"\r\n (onClick)=\"toggleIsOpen()\">\r\n </dx-button>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- Contenuto dell'articolo, visibile solo se aperto -->\r\n @if (isOpen()) {\r\n <ng-content></ng-content>\r\n }\r\n </article>\r\n `,\r\n styleUrl: './uni-article.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class UniArticleComponent implements OnChanges {\r\n /* Inputs */\r\n readonly color = input.required<string>(); // Colore di base dell'articolo\r\n readonly title = input<string>(); // Titolo opzionale dell'articolo\r\n readonly icon = input<IconDefinition>(); // Icona opzionale per l'intestazione\r\n readonly setIsOpen = input<boolean | undefined>(); // Stato iniziale di apertura\r\n readonly headerCloseButton = input<boolean>(false); // Se mostrare il button per chiudere article\r\n\r\n /* Variables */\r\n isOpen = signal<boolean>(true);\r\n isHeader = computed(() => this.icon() || this.title() || this.headerCloseButton());\r\n\r\n /* ----------------------- Lifecycle Hook --------------------------- */\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { setIsOpen } = changes;\r\n // Verifica se 'setIsOpen' è cambiato e non è il primo cambiamento\r\n if (setIsOpen && !setIsOpen.firstChange && setIsOpen.currentValue !== undefined) {\r\n this.isOpen.set(setIsOpen.currentValue);\r\n }\r\n }\r\n\r\n /* ----------------------- Metodi --------------------------- */\r\n protected toggleIsOpen(): void {\r\n // Inverte lo stato di apertura/chiusura\r\n this.isOpen.update((val) => !val);\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAwDa,mBAAmB,CAAA;AA1ChC,IAAA,WAAA,GAAA;;AA4CW,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAU,CAAC;AACjC,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,EAAU,CAAC;AACxB,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,EAAkB,CAAC;AAC/B,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,EAAuB,CAAC;AACzC,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAU,KAAK,CAAC,CAAC;;AAGnD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAU,IAAI,CAAC,CAAC;QAC/B,IAAQ,CAAA,QAAA,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAgBpF,KAAA;;AAbC,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;;AAE9B,QAAA,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE;YAC/E,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;SACzC;KACF;;IAGS,YAAY,GAAA;;AAEpB,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;KACnC;8GAzBU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAtCpB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,gGAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAnCS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,YAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,cAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,WAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,WAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAuC5C,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBA1C/B,SAAS;+BACE,aAAa,EAAA,UAAA,EACX,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,cAAc,EAAE,eAAe,CAAC,EAC9C,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCT,EAEgB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,gGAAA,CAAA,EAAA,CAAA;;;ACtDjD;;AAEG;;;;"}
@@ -83,7 +83,7 @@ class UniSideMenuComponent {
83
83
  @if (item.visible) {
84
84
  <li>
85
85
  <a
86
- class="flex gap-2 rounded p-2 !text-white transition duration-100 ease-in"
86
+ class="flex gap-2 rounded p-2 !text-white"
87
87
  [ngClass]="{
88
88
  'hover:bg-zinc-600/60': !item.disabled,
89
89
  'cursor-auto !opacity-25': item.disabled,
@@ -180,7 +180,7 @@ class UniSideMenuComponent {
180
180
  priority />
181
181
  </div>
182
182
  </aside>
183
- `, isInline: true, styles: [":host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "ngmodule", type: DxSwitchModule }, { kind: "component", type: i3.DxSwitchComponent, selector: "dx-switch", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "name", "readOnly", "rtlEnabled", "switchedOffText", "switchedOnText", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "switchedOffTextChange", "switchedOnTextChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: UNITranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
183
+ `, isInline: true, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: DxButtonModule }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "ngmodule", type: DxSwitchModule }, { kind: "component", type: i3.DxSwitchComponent, selector: "dx-switch", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "name", "readOnly", "rtlEnabled", "switchedOffText", "switchedOnText", "tabIndex", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "switchedOffTextChange", "switchedOnTextChange", "tabIndexChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: UNITranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
184
184
  }
185
185
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: UniSideMenuComponent, decorators: [{
186
186
  type: Component,
@@ -216,7 +216,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
216
216
  @if (item.visible) {
217
217
  <li>
218
218
  <a
219
- class="flex gap-2 rounded p-2 !text-white transition duration-100 ease-in"
219
+ class="flex gap-2 rounded p-2 !text-white"
220
220
  [ngClass]="{
221
221
  'hover:bg-zinc-600/60': !item.disabled,
222
222
  'cursor-auto !opacity-25': item.disabled,
@@ -313,7 +313,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
313
313
  priority />
314
314
  </div>
315
315
  </aside>
316
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"] }]
316
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@tailwind base;@tailwind components;@tailwind utilities;:host{position:fixed;top:0;right:0;z-index:999}.item-setting-button button{box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d,0 3px 6px #0006;transition:all .1s ease}.item-setting-button button:active{transform:translateY(1px);box-shadow:inset 0 3px 6px #0009,inset 0 -3px 6px #0000004d}:host ::ng-deep .dx-texteditor.dx-editor-underlined .dx-texteditor-input{padding:0}\n"] }]
317
317
  }] });
318
318
 
319
319
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"uni-component-tw-uni-side-menu.mjs","sources":["../../../projects/uni-component-tw/uni-side-menu/src/uni-side-menu.component.ts","../../../projects/uni-component-tw/uni-side-menu/uni-component-tw-uni-side-menu.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { CommonModule, NgOptimizedImage } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, inject, input, output, signal } from '@angular/core';\r\nimport { Router, RouterLink, RouterLinkActive } from '@angular/router';\r\nimport { DxButtonModule } from 'devextreme-angular/ui/button';\r\nimport { DxSwitchModule } from 'devextreme-angular/ui/switch';\r\nimport { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';\r\nimport { ValueChangedEvent as SwitchValueChangedEvent } from 'devextreme/ui/switch_types';\r\nimport { ValueChangedEvent as SelectBoxValueChangedEvent } from 'devextreme/ui/select_box_types';\r\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\r\nimport {\r\n IconDefinition,\r\n faArrowRightFromBracket,\r\n faArrowRightToBracket,\r\n faLanguage,\r\n faMoon,\r\n faSun,\r\n faUser,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { UNITranslatePipe, UNITranslateService } from 'uni-service/translate';\r\nimport { UNIAuthService, User } from 'uni-service/auth';\r\n\r\nexport type Combo = {\r\n id: number;\r\n code: string;\r\n description: string;\r\n};\r\n\r\nexport type MenuItem = {\r\n id: number;\r\n icon: IconDefinition;\r\n label: string;\r\n path: string;\r\n visible: boolean;\r\n disabled: boolean;\r\n};\r\n\r\nexport type MenuInteraction = {\r\n id: number;\r\n data:\r\n | { type: 'button'; icon: IconDefinition }\r\n | { type: 'select'; combos: Combo[]; value: number | null };\r\n label: string;\r\n class: string;\r\n fun: (...args: any) => void;\r\n visible: boolean;\r\n disabled: boolean;\r\n};\r\n\r\n@Component({\r\n selector: 'uni-side-menu',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n RouterLink,\r\n RouterLinkActive,\r\n NgOptimizedImage,\r\n DxButtonModule,\r\n DxSwitchModule,\r\n DxSelectBoxModule,\r\n FaIconComponent,\r\n UNITranslatePipe,\r\n ],\r\n template: `\r\n <aside\r\n class=\"flex h-screen w-[250px] flex-col gap-4 overflow-hidden rounded bg-zinc-800/60 p-4 shadow backdrop-blur-xl\">\r\n <!-- user -->\r\n <div class=\"flex w-full items-center gap-4\">\r\n <div class=\"flex flex-1 gap-2\">\r\n @if (user(); as user) {\r\n <fa-icon [icon]=\"ICON.USER\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ user.username }}</span>\r\n }\r\n </div>\r\n <dx-button [icon]=\"'close'\" (onClick)=\"evtToggleMenu.emit(false)\"></dx-button>\r\n </div>\r\n\r\n <!-- menu -->\r\n @if (menuItems().length) {\r\n <nav class=\"mt-8\">\r\n <ul class=\"flex flex-col gap-2\">\r\n @for (item of menuItems(); track item.id) {\r\n @if (item.visible) {\r\n <li>\r\n <a\r\n class=\"flex gap-2 rounded p-2 !text-white transition duration-100 ease-in\"\r\n [ngClass]=\"{\r\n 'hover:bg-zinc-600/60': !item.disabled,\r\n 'cursor-auto !opacity-25': item.disabled,\r\n }\"\r\n [routerLink]=\"item.disabled ? null : item.path\"\r\n routerLinkActive=\"bg-zinc-600/60\"\r\n (click)=\"evtToggleMenu.emit(false)\">\r\n <fa-icon class=\"basis-6\" [icon]=\"item.icon\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ item.label }}</span>\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n </nav>\r\n }\r\n\r\n @if (menuInteractions().length) {\r\n <hr class=\"my-4 h-px border-0 bg-gray-600\" />\r\n\r\n <ul class=\"flex flex-col gap-2\">\r\n @for (item of menuInteractions(); track item.id) {\r\n @if (item.data.type === 'button') {\r\n <li class=\"item-setting-button\">\r\n <button\r\n type=\"button\"\r\n class=\"dx-theme-material-typography flex h-12 w-full items-center gap-2 rounded p-4\"\r\n [class]=\"item.class\"\r\n (click)=\"item.fun()\">\r\n <fa-icon class=\"basis-6\" [icon]=\"item.data.icon\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ item.label }}</span>\r\n </button>\r\n </li>\r\n } @else if (item.data.type === 'select') {\r\n <li class=\"flex h-12 items-center gap-4 rounded bg-zinc-600/60 p-3 shadow\">\r\n <span class=\"truncate\">{{ item.label }}</span>\r\n <dx-select-box\r\n class=\"flex-1 basis-24\"\r\n valueExpr=\"id\"\r\n displayExpr=\"description\"\r\n [items]=\"item.data.combos\"\r\n [value]=\"item.data.value\"\r\n stylingMode=\"underlined\"\r\n placeholder=\"\"\r\n (onValueChanged)=\"item.fun($event)\"></dx-select-box>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n }\r\n\r\n <!-- setting -->\r\n <hr class=\"my-4 h-px border-0 bg-gray-600\" />\r\n\r\n <ul class=\"flex flex-col gap-2\">\r\n <li class=\"flex h-12 items-center gap-2 rounded bg-zinc-600/60 p-4 text-white shadow\">\r\n <fa-icon class=\"basis-6\" [icon]=\"darkMode() ? ICON.DARK_MODE : ICON.LIGHT_MODE\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ 'lblDarkMode' | translate }}</span>\r\n <dx-switch [value]=\"darkMode()\" (onValueChanged)=\"updateTheme($event)\"></dx-switch>\r\n </li>\r\n <li class=\"flex h-12 items-center gap-2 rounded bg-zinc-600/60 p-4 text-white shadow\">\r\n <fa-icon class=\"basis-6\" [icon]=\"ICON.LANGUAGE\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ 'lblLanguage' | translate }}</span>\r\n <dx-select-box\r\n class=\"basis-12\"\r\n [items]=\"translateService.translateInfo().languagesSupported\"\r\n [value]=\"translateService.translateInfo().language\"\r\n stylingMode=\"underlined\"\r\n (onValueChanged)=\"updateLanguage($event)\"></dx-select-box>\r\n </li>\r\n <!-- User | null | undefined -->\r\n @if (user() !== undefined) {\r\n <li>\r\n <button\r\n class=\"flex w-full items-center gap-2 rounded border border-white p-4 text-white shadow transition duration-300 ease-in-out hover:bg-white hover:text-gray-800\"\r\n (click)=\"user() ? logout() : goToLogin()\">\r\n <fa-icon [icon]=\"user() ? ICON.LOGOUT : ICON.LOGIN\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{\r\n (user() ? 'lblLogout' : 'lblLogin') | translate\r\n }}</span>\r\n </button>\r\n </li>\r\n }\r\n </ul>\r\n\r\n <!-- logo -->\r\n <div class=\"mt-auto flex content-end border-b border-white\">\r\n <img\r\n class=\"ml-auto h-12\"\r\n [ngSrc]=\"pathBrandLogo()\"\r\n alt=\"Brand logo\"\r\n [height]=\"30\"\r\n [width]=\"125\"\r\n priority />\r\n </div>\r\n </aside>\r\n `,\r\n styleUrl: './uni-side-menu.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class UniSideMenuComponent {\r\n /* Service */\r\n readonly router = inject(Router);\r\n readonly authService = inject(UNIAuthService);\r\n readonly translateService = inject(UNITranslateService);\r\n\r\n /* Input */\r\n pathBrandLogo = input.required<string>();\r\n menuItems = input<MenuItem[]>([]);\r\n menuInteractions = input<MenuInteraction[]>([]);\r\n user = input.required<User | null | undefined>();\r\n\r\n /* Output */\r\n evtToggleMenu = output<false>();\r\n\r\n /* Variables */\r\n darkMode = signal<boolean>(localStorage.getItem('uni-theme') === 'dark');\r\n\r\n /* Icons */\r\n readonly ICON = {\r\n USER: faUser,\r\n LOGIN: faArrowRightToBracket,\r\n LOGOUT: faArrowRightFromBracket,\r\n LIGHT_MODE: faSun,\r\n DARK_MODE: faMoon,\r\n LANGUAGE: faLanguage,\r\n };\r\n\r\n /* ---------------------- Methods ---------------------- */\r\n protected updateTheme(e: SwitchValueChangedEvent): void {\r\n localStorage.setItem('uni-theme', e.value ? 'dark' : 'light');\r\n window.location.reload();\r\n }\r\n\r\n protected updateLanguage(e: SelectBoxValueChangedEvent): void {\r\n this.translateService.setLanguage(e.value);\r\n window.location.reload();\r\n }\r\n\r\n protected goToLogin(): void {\r\n this.evtToggleMenu.emit(false);\r\n this.router.navigate(['login']);\r\n }\r\n\r\n protected logout(): void {\r\n this.authService.logout$().subscribe(() => {\r\n const firstItem = this.menuItems().find((item) => item.visible && !item.disabled);\r\n this.evtToggleMenu.emit(false);\r\n this.router.navigate([firstItem?.path ?? 'login']);\r\n });\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uni-component-tw-uni-side-menu.mjs","sources":["../../../projects/uni-component-tw/uni-side-menu/src/uni-side-menu.component.ts","../../../projects/uni-component-tw/uni-side-menu/uni-component-tw-uni-side-menu.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport { CommonModule, NgOptimizedImage } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, inject, input, output, signal } from '@angular/core';\r\nimport { Router, RouterLink, RouterLinkActive } from '@angular/router';\r\nimport { DxButtonModule } from 'devextreme-angular/ui/button';\r\nimport { DxSwitchModule } from 'devextreme-angular/ui/switch';\r\nimport { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';\r\nimport { ValueChangedEvent as SwitchValueChangedEvent } from 'devextreme/ui/switch_types';\r\nimport { ValueChangedEvent as SelectBoxValueChangedEvent } from 'devextreme/ui/select_box_types';\r\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\r\nimport {\r\n IconDefinition,\r\n faArrowRightFromBracket,\r\n faArrowRightToBracket,\r\n faLanguage,\r\n faMoon,\r\n faSun,\r\n faUser,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { UNITranslatePipe, UNITranslateService } from 'uni-service/translate';\r\nimport { UNIAuthService, User } from 'uni-service/auth';\r\n\r\nexport type Combo = {\r\n id: number;\r\n code: string;\r\n description: string;\r\n};\r\n\r\nexport type MenuItem = {\r\n id: number;\r\n icon: IconDefinition;\r\n label: string;\r\n path: string;\r\n visible: boolean;\r\n disabled: boolean;\r\n};\r\n\r\nexport type MenuInteraction = {\r\n id: number;\r\n data:\r\n | { type: 'button'; icon: IconDefinition }\r\n | { type: 'select'; combos: Combo[]; value: number | null };\r\n label: string;\r\n class: string;\r\n fun: (...args: any) => void;\r\n visible: boolean;\r\n disabled: boolean;\r\n};\r\n\r\n@Component({\r\n selector: 'uni-side-menu',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n RouterLink,\r\n RouterLinkActive,\r\n NgOptimizedImage,\r\n DxButtonModule,\r\n DxSwitchModule,\r\n DxSelectBoxModule,\r\n FaIconComponent,\r\n UNITranslatePipe,\r\n ],\r\n template: `\r\n <aside\r\n class=\"flex h-screen w-[250px] flex-col gap-4 overflow-hidden rounded bg-zinc-800/60 p-4 shadow backdrop-blur-xl\">\r\n <!-- user -->\r\n <div class=\"flex w-full items-center gap-4\">\r\n <div class=\"flex flex-1 gap-2\">\r\n @if (user(); as user) {\r\n <fa-icon [icon]=\"ICON.USER\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ user.username }}</span>\r\n }\r\n </div>\r\n <dx-button [icon]=\"'close'\" (onClick)=\"evtToggleMenu.emit(false)\"></dx-button>\r\n </div>\r\n\r\n <!-- menu -->\r\n @if (menuItems().length) {\r\n <nav class=\"mt-8\">\r\n <ul class=\"flex flex-col gap-2\">\r\n @for (item of menuItems(); track item.id) {\r\n @if (item.visible) {\r\n <li>\r\n <a\r\n class=\"flex gap-2 rounded p-2 !text-white\"\r\n [ngClass]=\"{\r\n 'hover:bg-zinc-600/60': !item.disabled,\r\n 'cursor-auto !opacity-25': item.disabled,\r\n }\"\r\n [routerLink]=\"item.disabled ? null : item.path\"\r\n routerLinkActive=\"bg-zinc-600/60\"\r\n (click)=\"evtToggleMenu.emit(false)\">\r\n <fa-icon class=\"basis-6\" [icon]=\"item.icon\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ item.label }}</span>\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n </nav>\r\n }\r\n\r\n @if (menuInteractions().length) {\r\n <hr class=\"my-4 h-px border-0 bg-gray-600\" />\r\n\r\n <ul class=\"flex flex-col gap-2\">\r\n @for (item of menuInteractions(); track item.id) {\r\n @if (item.data.type === 'button') {\r\n <li class=\"item-setting-button\">\r\n <button\r\n type=\"button\"\r\n class=\"dx-theme-material-typography flex h-12 w-full items-center gap-2 rounded p-4\"\r\n [class]=\"item.class\"\r\n (click)=\"item.fun()\">\r\n <fa-icon class=\"basis-6\" [icon]=\"item.data.icon\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ item.label }}</span>\r\n </button>\r\n </li>\r\n } @else if (item.data.type === 'select') {\r\n <li class=\"flex h-12 items-center gap-4 rounded bg-zinc-600/60 p-3 shadow\">\r\n <span class=\"truncate\">{{ item.label }}</span>\r\n <dx-select-box\r\n class=\"flex-1 basis-24\"\r\n valueExpr=\"id\"\r\n displayExpr=\"description\"\r\n [items]=\"item.data.combos\"\r\n [value]=\"item.data.value\"\r\n stylingMode=\"underlined\"\r\n placeholder=\"\"\r\n (onValueChanged)=\"item.fun($event)\"></dx-select-box>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n }\r\n\r\n <!-- setting -->\r\n <hr class=\"my-4 h-px border-0 bg-gray-600\" />\r\n\r\n <ul class=\"flex flex-col gap-2\">\r\n <li class=\"flex h-12 items-center gap-2 rounded bg-zinc-600/60 p-4 text-white shadow\">\r\n <fa-icon class=\"basis-6\" [icon]=\"darkMode() ? ICON.DARK_MODE : ICON.LIGHT_MODE\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ 'lblDarkMode' | translate }}</span>\r\n <dx-switch [value]=\"darkMode()\" (onValueChanged)=\"updateTheme($event)\"></dx-switch>\r\n </li>\r\n <li class=\"flex h-12 items-center gap-2 rounded bg-zinc-600/60 p-4 text-white shadow\">\r\n <fa-icon class=\"basis-6\" [icon]=\"ICON.LANGUAGE\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{ 'lblLanguage' | translate }}</span>\r\n <dx-select-box\r\n class=\"basis-12\"\r\n [items]=\"translateService.translateInfo().languagesSupported\"\r\n [value]=\"translateService.translateInfo().language\"\r\n stylingMode=\"underlined\"\r\n (onValueChanged)=\"updateLanguage($event)\"></dx-select-box>\r\n </li>\r\n <!-- User | null | undefined -->\r\n @if (user() !== undefined) {\r\n <li>\r\n <button\r\n class=\"flex w-full items-center gap-2 rounded border border-white p-4 text-white shadow transition duration-300 ease-in-out hover:bg-white hover:text-gray-800\"\r\n (click)=\"user() ? logout() : goToLogin()\">\r\n <fa-icon [icon]=\"user() ? ICON.LOGOUT : ICON.LOGIN\"></fa-icon>\r\n <span class=\"flex-1 truncate\">{{\r\n (user() ? 'lblLogout' : 'lblLogin') | translate\r\n }}</span>\r\n </button>\r\n </li>\r\n }\r\n </ul>\r\n\r\n <!-- logo -->\r\n <div class=\"mt-auto flex content-end border-b border-white\">\r\n <img\r\n class=\"ml-auto h-12\"\r\n [ngSrc]=\"pathBrandLogo()\"\r\n alt=\"Brand logo\"\r\n [height]=\"30\"\r\n [width]=\"125\"\r\n priority />\r\n </div>\r\n </aside>\r\n `,\r\n styleUrl: './uni-side-menu.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class UniSideMenuComponent {\r\n /* Service */\r\n readonly router = inject(Router);\r\n readonly authService = inject(UNIAuthService);\r\n readonly translateService = inject(UNITranslateService);\r\n\r\n /* Input */\r\n pathBrandLogo = input.required<string>();\r\n menuItems = input<MenuItem[]>([]);\r\n menuInteractions = input<MenuInteraction[]>([]);\r\n user = input.required<User | null | undefined>();\r\n\r\n /* Output */\r\n evtToggleMenu = output<false>();\r\n\r\n /* Variables */\r\n darkMode = signal<boolean>(localStorage.getItem('uni-theme') === 'dark');\r\n\r\n /* Icons */\r\n readonly ICON = {\r\n USER: faUser,\r\n LOGIN: faArrowRightToBracket,\r\n LOGOUT: faArrowRightFromBracket,\r\n LIGHT_MODE: faSun,\r\n DARK_MODE: faMoon,\r\n LANGUAGE: faLanguage,\r\n };\r\n\r\n /* ---------------------- Methods ---------------------- */\r\n protected updateTheme(e: SwitchValueChangedEvent): void {\r\n localStorage.setItem('uni-theme', e.value ? 'dark' : 'light');\r\n window.location.reload();\r\n }\r\n\r\n protected updateLanguage(e: SelectBoxValueChangedEvent): void {\r\n this.translateService.setLanguage(e.value);\r\n window.location.reload();\r\n }\r\n\r\n protected goToLogin(): void {\r\n this.evtToggleMenu.emit(false);\r\n this.router.navigate(['login']);\r\n }\r\n\r\n protected logout(): void {\r\n this.authService.logout$().subscribe(() => {\r\n const firstItem = this.menuItems().find((item) => item.visible && !item.disabled);\r\n this.evtToggleMenu.emit(false);\r\n this.router.navigate([firstItem?.path ?? 'login']);\r\n });\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uni-component-tw",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Components angular base",
5
5
  "license": "ISC",
6
6
  "peerDependencies": {
@@ -29,18 +29,18 @@
29
29
  "esm": "./esm2022/uni-article/uni-component-tw-uni-article.mjs",
30
30
  "default": "./fesm2022/uni-component-tw-uni-article.mjs"
31
31
  },
32
- "./uni-login-modal": {
33
- "types": "./uni-login-modal/index.d.ts",
34
- "esm2022": "./esm2022/uni-login-modal/uni-component-tw-uni-login-modal.mjs",
35
- "esm": "./esm2022/uni-login-modal/uni-component-tw-uni-login-modal.mjs",
36
- "default": "./fesm2022/uni-component-tw-uni-login-modal.mjs"
37
- },
38
32
  "./uni-header": {
39
33
  "types": "./uni-header/index.d.ts",
40
34
  "esm2022": "./esm2022/uni-header/uni-component-tw-uni-header.mjs",
41
35
  "esm": "./esm2022/uni-header/uni-component-tw-uni-header.mjs",
42
36
  "default": "./fesm2022/uni-component-tw-uni-header.mjs"
43
37
  },
38
+ "./uni-login-modal": {
39
+ "types": "./uni-login-modal/index.d.ts",
40
+ "esm2022": "./esm2022/uni-login-modal/uni-component-tw-uni-login-modal.mjs",
41
+ "esm": "./esm2022/uni-login-modal/uni-component-tw-uni-login-modal.mjs",
42
+ "default": "./fesm2022/uni-component-tw-uni-login-modal.mjs"
43
+ },
44
44
  "./uni-pie-chart": {
45
45
  "types": "./uni-pie-chart/index.d.ts",
46
46
  "esm2022": "./esm2022/uni-pie-chart/uni-component-tw-uni-pie-chart.mjs",