quang 19.2.3 → 19.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/auth/auth-providers.d.ts +39 -0
  2. package/auth/auth.service.d.ts +52 -0
  3. package/auth/directives/has-at-least-one-role.directive.d.ts +26 -0
  4. package/auth/directives/has-every-role.directive.d.ts +26 -0
  5. package/auth/directives/is-authenticated.directive.d.ts +14 -0
  6. package/auth/directives/is-not-authenticated.directive.d.ts +14 -0
  7. package/auth/guards/index.d.ts +2 -0
  8. package/auth/guards/is-allowed.guard.d.ts +2 -0
  9. package/auth/guards/is-authenticated.guard.d.ts +2 -0
  10. package/auth/index.d.ts +9 -195
  11. package/auth/logout-on-error.interceptor.d.ts +9 -0
  12. package/auth/mobile/index.d.ts +1 -5
  13. package/auth/mobile/mobile-auth-feature.d.ts +2 -0
  14. package/auth/token-storage/index.d.ts +3 -0
  15. package/auth/token-storage/local-storage-feature.d.ts +2 -0
  16. package/auth/token-storage/memory-storage-feature.d.ts +12 -0
  17. package/auth/token-storage/session-storage-feature.d.ts +2 -0
  18. package/components/autocomplete/autocomplete.component.d.ts +64 -0
  19. package/components/autocomplete/index.d.ts +1 -67
  20. package/components/checkbox/checkbox.component.d.ts +11 -0
  21. package/components/checkbox/index.d.ts +1 -15
  22. package/components/date/date.component.d.ts +85 -0
  23. package/components/date/index.d.ts +1 -89
  24. package/components/input/index.d.ts +1 -19
  25. package/components/input/input.component.d.ts +15 -0
  26. package/components/paginator/index.d.ts +5 -68
  27. package/components/paginator/paginator-language.service.d.ts +10 -0
  28. package/components/paginator/paginator.component.d.ts +30 -0
  29. package/components/paginator/paginator.module.d.ts +7 -0
  30. package/components/paginator/paginator.service.d.ts +6 -0
  31. package/components/paginator/paginatorIntl.d.ts +12 -0
  32. package/components/select/index.d.ts +1 -34
  33. package/components/select/select.component.d.ts +31 -0
  34. package/components/shared/ErrorData.d.ts +4 -0
  35. package/components/shared/index.d.ts +4 -112
  36. package/components/shared/makeId.d.ts +1 -0
  37. package/components/shared/option-list/option-list.component.d.ts +53 -0
  38. package/components/shared/quang-base-component.directive.d.ts +50 -0
  39. package/components/table/index.d.ts +1 -70
  40. package/components/table/table.component.d.ts +66 -0
  41. package/components/wysiwyg/index.d.ts +1 -51
  42. package/components/wysiwyg/wysiwyg.component.d.ts +46 -0
  43. package/data-handling/conversion.d.ts +3 -0
  44. package/data-handling/download.d.ts +3 -0
  45. package/data-handling/index.d.ts +2 -10
  46. package/device/index.d.ts +1 -14
  47. package/device/resize-observable.service.d.ts +11 -0
  48. package/fesm2022/quang-auth.mjs +18 -18
  49. package/fesm2022/quang-auth.mjs.map +1 -1
  50. package/fesm2022/quang-components-autocomplete.mjs +3 -3
  51. package/fesm2022/quang-components-autocomplete.mjs.map +1 -1
  52. package/fesm2022/quang-components-checkbox.mjs +3 -3
  53. package/fesm2022/quang-components-checkbox.mjs.map +1 -1
  54. package/fesm2022/quang-components-date.mjs +3 -3
  55. package/fesm2022/quang-components-date.mjs.map +1 -1
  56. package/fesm2022/quang-components-input.mjs +3 -3
  57. package/fesm2022/quang-components-input.mjs.map +1 -1
  58. package/fesm2022/quang-components-paginator.mjs +13 -13
  59. package/fesm2022/quang-components-paginator.mjs.map +1 -1
  60. package/fesm2022/quang-components-select.mjs +3 -5
  61. package/fesm2022/quang-components-select.mjs.map +1 -1
  62. package/fesm2022/quang-components-shared.mjs +6 -6
  63. package/fesm2022/quang-components-shared.mjs.map +1 -1
  64. package/fesm2022/quang-components-table.mjs +3 -3
  65. package/fesm2022/quang-components-table.mjs.map +1 -1
  66. package/fesm2022/quang-components-wysiwyg.mjs +3 -3
  67. package/fesm2022/quang-components-wysiwyg.mjs.map +1 -1
  68. package/fesm2022/quang-device.mjs +3 -3
  69. package/fesm2022/quang-device.mjs.map +1 -1
  70. package/fesm2022/quang-loader.mjs +6 -6
  71. package/fesm2022/quang-loader.mjs.map +1 -1
  72. package/fesm2022/quang-overlay-modal.mjs +3 -3
  73. package/fesm2022/quang-overlay-modal.mjs.map +1 -1
  74. package/fesm2022/quang-overlay-popover.mjs +6 -6
  75. package/fesm2022/quang-overlay-popover.mjs.map +1 -1
  76. package/fesm2022/quang-overlay-shared.mjs +9 -9
  77. package/fesm2022/quang-overlay-shared.mjs.map +1 -1
  78. package/fesm2022/quang-overlay-toast.mjs +6 -6
  79. package/fesm2022/quang-overlay-toast.mjs.map +1 -1
  80. package/fesm2022/quang-overlay-tooltip.mjs +6 -6
  81. package/fesm2022/quang-overlay-tooltip.mjs.map +1 -1
  82. package/fesm2022/quang-translation.mjs +6 -6
  83. package/fesm2022/quang-translation.mjs.map +1 -1
  84. package/forms/form-group-model.d.ts +18 -0
  85. package/forms/index.d.ts +2 -51
  86. package/forms/validators.d.ts +43 -0
  87. package/index.d.ts +9 -13
  88. package/loader/index.d.ts +4 -69
  89. package/loader/loader-providers.d.ts +23 -0
  90. package/loader/loader.component.d.ts +23 -0
  91. package/loader/loader.interceptor.d.ts +10 -0
  92. package/loader/loader.service.d.ts +9 -0
  93. package/overlay/modal/index.d.ts +1 -34
  94. package/overlay/modal/modal.component.d.ts +29 -0
  95. package/overlay/popover/index.d.ts +1 -25
  96. package/overlay/popover/popover.component.d.ts +13 -0
  97. package/overlay/popover/popover.directive.d.ts +11 -0
  98. package/overlay/shared/CustomViewportRuler.d.ts +63 -0
  99. package/overlay/shared/index.d.ts +3 -116
  100. package/overlay/shared/quang-base-overlay.component.d.ts +9 -0
  101. package/overlay/shared/quang-base-overlay.directive.d.ts +44 -0
  102. package/overlay/toast/index.d.ts +2 -44
  103. package/overlay/toast/toast.component.d.ts +13 -0
  104. package/overlay/toast/toast.service.d.ts +27 -0
  105. package/overlay/tooltip/index.d.ts +2 -23
  106. package/overlay/tooltip/tooltip.component.d.ts +11 -0
  107. package/overlay/tooltip/tooltip.directive.d.ts +11 -0
  108. package/package.json +26 -26
  109. package/shared/index.d.ts +1 -16
  110. package/shared/intercept-utils.d.ts +13 -0
  111. package/translation/index.d.ts +4 -62
  112. package/translation/translation-loader.service.d.ts +10 -0
  113. package/translation/translation-providers.d.ts +28 -0
  114. package/translation/translation.service.d.ts +15 -0
  115. package/translation/translations.tokens.d.ts +5 -0
@@ -11,8 +11,8 @@ class QuangTooltipComponent {
11
11
  this.positionPair = signal(null);
12
12
  this.payload = input();
13
13
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: QuangTooltipComponent, isStandalone: true, selector: "quang-tooltip", inputs: { overlayContent: { classPropertyName: "overlayContent", publicName: "overlayContent", isSignal: true, isRequired: true, transformFunction: null }, quangTooltipPosition: { classPropertyName: "quangTooltipPosition", publicName: "quangTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, payload: { classPropertyName: "payload", publicName: "payload", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (overlayContent()) {\n <div\n @tooltip\n class=\"quang-tooltip\"\n >\n {{ overlayContent() }}\n </div>\n}\n", styles: [".quang-tooltip{background-color:var(--bs-body-color);color:var(--bs-body-bg);padding:.5rem;border-radius:5px;font-size:.75rem;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: OverlayModule }], animations: [
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: QuangTooltipComponent, isStandalone: true, selector: "quang-tooltip", inputs: { overlayContent: { classPropertyName: "overlayContent", publicName: "overlayContent", isSignal: true, isRequired: true, transformFunction: null }, quangTooltipPosition: { classPropertyName: "quangTooltipPosition", publicName: "quangTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, payload: { classPropertyName: "payload", publicName: "payload", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (overlayContent()) {\n <div\n @tooltip\n class=\"quang-tooltip\"\n >\n {{ overlayContent() }}\n </div>\n}\n", styles: [".quang-tooltip{background-color:var(--bs-body-color);color:var(--bs-body-bg);padding:.5rem;border-radius:5px;font-size:.75rem;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: OverlayModule }], animations: [
16
16
  trigger('tooltip', [
17
17
  state('*', style({ opacity: 1 })),
18
18
  transition(':enter', [style({ opacity: 0 }), animate(200, style({ opacity: 1 }))]),
@@ -20,7 +20,7 @@ class QuangTooltipComponent {
20
20
  ]),
21
21
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTooltipComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTooltipComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{ selector: 'quang-tooltip', imports: [OverlayModule], changeDetection: ChangeDetectionStrategy.OnPush, animations: [
26
26
  trigger('tooltip', [
@@ -38,10 +38,10 @@ class QuangTooltipDirective extends QuangBaseOverlayDirective {
38
38
  this.content = input.required({ alias: 'quangTooltip' });
39
39
  this.showMethod = input('hover');
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTooltipDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
42
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.0", type: QuangTooltipDirective, isStandalone: true, selector: "[quangTooltip]", inputs: { content: { classPropertyName: "content", publicName: "quangTooltip", isSignal: true, isRequired: true, transformFunction: null }, showMethod: { classPropertyName: "showMethod", publicName: "showMethod", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTooltipDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
42
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.14", type: QuangTooltipDirective, isStandalone: true, selector: "[quangTooltip]", inputs: { content: { classPropertyName: "content", publicName: "quangTooltip", isSignal: true, isRequired: true, transformFunction: null }, showMethod: { classPropertyName: "showMethod", publicName: "showMethod", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTooltipDirective, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTooltipDirective, decorators: [{
45
45
  type: Directive,
46
46
  args: [{
47
47
  selector: '[quangTooltip]',
@@ -1 +1 @@
1
- {"version":3,"file":"quang-overlay-tooltip.mjs","sources":["../../../projects/quang/overlay/tooltip/tooltip.component.ts","../../../projects/quang/overlay/tooltip/tooltip.component.html","../../../projects/quang/overlay/tooltip/tooltip.directive.ts","../../../projects/quang/overlay/tooltip/quang-overlay-tooltip.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations'\nimport { ConnectionPositionPair, OverlayModule } from '@angular/cdk/overlay'\nimport { ChangeDetectionStrategy, Component, input, signal } from '@angular/core'\n\nimport { QuangBaseOverlayComponent } from 'quang/overlay/shared'\n\n@Component({\n selector: 'quang-tooltip',\n imports: [OverlayModule],\n templateUrl: './tooltip.component.html',\n styleUrl: './tooltip.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n\n animations: [\n trigger('tooltip', [\n state('*', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(200, style({ opacity: 1 }))]),\n transition(':leave', [style({ opacity: 1 }), animate(300, style({ opacity: 0 }))]),\n ]),\n ],\n})\nexport class QuangTooltipComponent implements QuangBaseOverlayComponent {\n overlayContent = input.required<string>()\n\n quangTooltipPosition = input<'top' | 'bottom' | 'left' | 'right'>('top')\n\n positionPair = signal<ConnectionPositionPair | null>(null)\n\n payload = input<unknown>()\n}\n","@if (overlayContent()) {\n <div\n @tooltip\n class=\"quang-tooltip\"\n >\n {{ overlayContent() }}\n </div>\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Directive, input, signal } from '@angular/core'\n\nimport { QuangBaseOverlayDirective } from 'quang/overlay/shared'\n\nimport { QuangTooltipComponent } from './tooltip.component'\n\n@Directive({\n selector: '[quangTooltip]',\n})\nexport class QuangTooltipDirective extends QuangBaseOverlayDirective<QuangTooltipComponent> {\n override targetComponentType = signal<ComponentType<QuangTooltipComponent> | undefined>(QuangTooltipComponent)\n\n override content = input.required<string>({ alias: 'quangTooltip' })\n\n override showMethod = input<'click' | 'hover'>('hover')\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quang-overlay-tooltip.mjs","sources":["../../../projects/quang/overlay/tooltip/tooltip.component.ts","../../../projects/quang/overlay/tooltip/tooltip.component.html","../../../projects/quang/overlay/tooltip/tooltip.directive.ts","../../../projects/quang/overlay/tooltip/quang-overlay-tooltip.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations'\nimport { ConnectionPositionPair, OverlayModule } from '@angular/cdk/overlay'\nimport { ChangeDetectionStrategy, Component, input, signal } from '@angular/core'\n\nimport { QuangBaseOverlayComponent } from 'quang/overlay/shared'\n\n@Component({\n selector: 'quang-tooltip',\n imports: [OverlayModule],\n templateUrl: './tooltip.component.html',\n styleUrl: './tooltip.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n\n animations: [\n trigger('tooltip', [\n state('*', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(200, style({ opacity: 1 }))]),\n transition(':leave', [style({ opacity: 1 }), animate(300, style({ opacity: 0 }))]),\n ]),\n ],\n})\nexport class QuangTooltipComponent implements QuangBaseOverlayComponent {\n overlayContent = input.required<string>()\n\n quangTooltipPosition = input<'top' | 'bottom' | 'left' | 'right'>('top')\n\n positionPair = signal<ConnectionPositionPair | null>(null)\n\n payload = input<unknown>()\n}\n","@if (overlayContent()) {\n <div\n @tooltip\n class=\"quang-tooltip\"\n >\n {{ overlayContent() }}\n </div>\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Directive, input, signal } from '@angular/core'\n\nimport { QuangBaseOverlayDirective } from 'quang/overlay/shared'\n\nimport { QuangTooltipComponent } from './tooltip.component'\n\n@Directive({\n selector: '[quangTooltip]',\n})\nexport class QuangTooltipDirective extends QuangBaseOverlayDirective<QuangTooltipComponent> {\n override targetComponentType = signal<ComponentType<QuangTooltipComponent> | undefined>(QuangTooltipComponent)\n\n override content = input.required<string>({ alias: 'quangTooltip' })\n\n override showMethod = input<'click' | 'hover'>('hover')\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,10 +18,10 @@ class QuangTranslationLoaderService {
18
18
  getTranslation(lang) {
19
19
  return this.httpClient.get(`${this.translationBasePath ?? './'}assets/i18n/${lang}.json`);
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
22
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationLoaderService }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
22
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationLoaderService }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationLoaderService, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationLoaderService, decorators: [{
25
25
  type: Injectable
26
26
  }], propDecorators: { translationBasePath: [{
27
27
  type: Optional
@@ -50,10 +50,10 @@ class QuangTranslationService {
50
50
  setTranslationKey(key, value, options) {
51
51
  return this._translocoService.setTranslationKey(key, value, options);
52
52
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
54
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationService }); }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
54
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationService }); }
55
55
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QuangTranslationService, decorators: [{
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: QuangTranslationService, decorators: [{
57
57
  type: Injectable
58
58
  }] });
59
59
 
@@ -1 +1 @@
1
- {"version":3,"file":"quang-translation.mjs","sources":["../../../projects/quang/translation/translations.tokens.ts","../../../projects/quang/translation/translation-loader.service.ts","../../../projects/quang/translation/translation.service.ts","../../../projects/quang/translation/translation-providers.ts","../../../projects/quang/translation/quang-translation.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nexport const AVAILABLE_LANGS = new InjectionToken<string[]>('AVAILABLE_LANGS')\nexport const DEFAULT_LANG = new InjectionToken<string>('DEFAULT_LANG')\nexport const FALLBACK_LANG = new InjectionToken<string>('FALLBACK_LANG')\nexport const TRANSLATIONS_BASE_PATH = new InjectionToken<string>('TRANSLATIONS_BASE_PATH')\n","import { HttpClient } from '@angular/common/http'\nimport { Injectable, Optional, inject } from '@angular/core'\n\nimport { Translation, TranslocoLoader } from '@jsverse/transloco'\nimport { Observable } from 'rxjs'\n\nimport { TRANSLATIONS_BASE_PATH } from './translations.tokens'\n\n@Injectable()\nexport class QuangTranslationLoaderService implements TranslocoLoader {\n private readonly httpClient: HttpClient = inject(HttpClient)\n\n @Optional() private readonly translationBasePath: string = inject(TRANSLATIONS_BASE_PATH)\n\n getTranslation(lang: string): Observable<Translation> | Promise<Translation> {\n return this.httpClient.get<Translation>(`${this.translationBasePath ?? './'}assets/i18n/${lang}.json`)\n }\n}\n","import { Injectable, inject } from '@angular/core'\nimport { toSignal } from '@angular/core/rxjs-interop'\n\nimport { HashMap, SetTranslationOptions, Translation, TranslocoService } from '@jsverse/transloco'\n\nimport { AVAILABLE_LANGS, DEFAULT_LANG } from './translations.tokens'\n\n@Injectable()\nexport class QuangTranslationService {\n private readonly _translocoService: TranslocoService = inject(TranslocoService)\n\n activeLang = toSignal(this._translocoService.langChanges$, { initialValue: null })\n\n private readonly _availableLangs = inject(AVAILABLE_LANGS)\n\n private readonly _defaultLang = inject(DEFAULT_LANG)\n\n setActiveLang(lang: string): void {\n const targetLang = this._availableLangs.includes(lang) ? lang : this._defaultLang\n this._translocoService.setActiveLang(targetLang)\n }\n\n getActiveLang(): string | null {\n return this.activeLang()\n }\n\n translate(key: string, params?: HashMap): string {\n return this._translocoService.translate(key, params)\n }\n\n setTranslation(translation: Translation, lang?: string, options?: SetTranslationOptions) {\n return this._translocoService.setTranslation(translation, lang, options)\n }\n\n setTranslationKey(key: string, value: string, options?: Omit<SetTranslationOptions, 'merge'>) {\n return this._translocoService.setTranslationKey(key, value, options)\n }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core'\n\nimport { provideTransloco } from '@jsverse/transloco'\nimport { QuangFeature, QuangFeatureKind, quangFeature } from 'quang'\n\nimport { QuangTranslationLoaderService } from './translation-loader.service'\nimport { QuangTranslationService } from './translation.service'\n\nimport { AVAILABLE_LANGS, DEFAULT_LANG, FALLBACK_LANG, TRANSLATIONS_BASE_PATH } from './translations.tokens'\n\nexport interface TranslationConfig {\n availableLangs: string[]\n defaultLang: string\n fallbackLang: string\n translationsBasePath?: string\n reRenderOnLangChange?: boolean\n prodMode?: boolean\n failedRetries?: number\n logMissingKey?: boolean\n useFallbackTranslation?: boolean\n allowEmpty?: boolean\n}\n\n/**\n * @example\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideTranslation({\n * availableLangs: ['it', 'en'],\n * defaultLang: 'it',\n * fallbackLang: 'it',\n * })\n * ]\n * }\n */\nexport function provideTranslation(config: TranslationConfig): EnvironmentProviders {\n return makeEnvironmentProviders([\n QuangTranslationLoaderService,\n QuangTranslationService,\n provideTransloco({\n config: {\n availableLangs: config.availableLangs,\n defaultLang: config.defaultLang,\n fallbackLang: config.fallbackLang,\n reRenderOnLangChange: config.reRenderOnLangChange ?? true,\n prodMode: config.prodMode ?? true,\n failedRetries: config.failedRetries ?? 1,\n missingHandler: {\n logMissingKey: config.logMissingKey ?? true,\n useFallbackTranslation: config.useFallbackTranslation ?? true,\n allowEmpty: config.allowEmpty ?? false,\n },\n },\n loader: QuangTranslationLoaderService,\n }),\n {\n provide: AVAILABLE_LANGS,\n useValue: config.availableLangs,\n },\n {\n provide: DEFAULT_LANG,\n useValue: config.defaultLang,\n },\n {\n provide: FALLBACK_LANG,\n useValue: config.fallbackLang,\n },\n {\n provide: TRANSLATIONS_BASE_PATH,\n useValue: config.translationsBasePath,\n },\n ])\n}\n\nexport function withTranslation(config: TranslationConfig): QuangFeature<QuangFeatureKind.TranslationFeature> {\n return quangFeature(QuangFeatureKind.TranslationFeature, [provideTranslation(config)])\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quang-translation.mjs","sources":["../../../projects/quang/translation/translations.tokens.ts","../../../projects/quang/translation/translation-loader.service.ts","../../../projects/quang/translation/translation.service.ts","../../../projects/quang/translation/translation-providers.ts","../../../projects/quang/translation/quang-translation.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nexport const AVAILABLE_LANGS = new InjectionToken<string[]>('AVAILABLE_LANGS')\nexport const DEFAULT_LANG = new InjectionToken<string>('DEFAULT_LANG')\nexport const FALLBACK_LANG = new InjectionToken<string>('FALLBACK_LANG')\nexport const TRANSLATIONS_BASE_PATH = new InjectionToken<string>('TRANSLATIONS_BASE_PATH')\n","import { HttpClient } from '@angular/common/http'\nimport { Injectable, Optional, inject } from '@angular/core'\n\nimport { Translation, TranslocoLoader } from '@jsverse/transloco'\nimport { Observable } from 'rxjs'\n\nimport { TRANSLATIONS_BASE_PATH } from './translations.tokens'\n\n@Injectable()\nexport class QuangTranslationLoaderService implements TranslocoLoader {\n private readonly httpClient: HttpClient = inject(HttpClient)\n\n @Optional() private readonly translationBasePath: string = inject(TRANSLATIONS_BASE_PATH)\n\n getTranslation(lang: string): Observable<Translation> | Promise<Translation> {\n return this.httpClient.get<Translation>(`${this.translationBasePath ?? './'}assets/i18n/${lang}.json`)\n }\n}\n","import { Injectable, inject } from '@angular/core'\nimport { toSignal } from '@angular/core/rxjs-interop'\n\nimport { HashMap, SetTranslationOptions, Translation, TranslocoService } from '@jsverse/transloco'\n\nimport { AVAILABLE_LANGS, DEFAULT_LANG } from './translations.tokens'\n\n@Injectable()\nexport class QuangTranslationService {\n private readonly _translocoService: TranslocoService = inject(TranslocoService)\n\n activeLang = toSignal(this._translocoService.langChanges$, { initialValue: null })\n\n private readonly _availableLangs = inject(AVAILABLE_LANGS)\n\n private readonly _defaultLang = inject(DEFAULT_LANG)\n\n setActiveLang(lang: string): void {\n const targetLang = this._availableLangs.includes(lang) ? lang : this._defaultLang\n this._translocoService.setActiveLang(targetLang)\n }\n\n getActiveLang(): string | null {\n return this.activeLang()\n }\n\n translate(key: string, params?: HashMap): string {\n return this._translocoService.translate(key, params)\n }\n\n setTranslation(translation: Translation, lang?: string, options?: SetTranslationOptions) {\n return this._translocoService.setTranslation(translation, lang, options)\n }\n\n setTranslationKey(key: string, value: string, options?: Omit<SetTranslationOptions, 'merge'>) {\n return this._translocoService.setTranslationKey(key, value, options)\n }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core'\n\nimport { provideTransloco } from '@jsverse/transloco'\nimport { QuangFeature, QuangFeatureKind, quangFeature } from 'quang'\n\nimport { QuangTranslationLoaderService } from './translation-loader.service'\nimport { QuangTranslationService } from './translation.service'\n\nimport { AVAILABLE_LANGS, DEFAULT_LANG, FALLBACK_LANG, TRANSLATIONS_BASE_PATH } from './translations.tokens'\n\nexport interface TranslationConfig {\n availableLangs: string[]\n defaultLang: string\n fallbackLang: string\n translationsBasePath?: string\n reRenderOnLangChange?: boolean\n prodMode?: boolean\n failedRetries?: number\n logMissingKey?: boolean\n useFallbackTranslation?: boolean\n allowEmpty?: boolean\n}\n\n/**\n * @example\n * export const appConfig: ApplicationConfig = {\n * providers: [\n * provideTranslation({\n * availableLangs: ['it', 'en'],\n * defaultLang: 'it',\n * fallbackLang: 'it',\n * })\n * ]\n * }\n */\nexport function provideTranslation(config: TranslationConfig): EnvironmentProviders {\n return makeEnvironmentProviders([\n QuangTranslationLoaderService,\n QuangTranslationService,\n provideTransloco({\n config: {\n availableLangs: config.availableLangs,\n defaultLang: config.defaultLang,\n fallbackLang: config.fallbackLang,\n reRenderOnLangChange: config.reRenderOnLangChange ?? true,\n prodMode: config.prodMode ?? true,\n failedRetries: config.failedRetries ?? 1,\n missingHandler: {\n logMissingKey: config.logMissingKey ?? true,\n useFallbackTranslation: config.useFallbackTranslation ?? true,\n allowEmpty: config.allowEmpty ?? false,\n },\n },\n loader: QuangTranslationLoaderService,\n }),\n {\n provide: AVAILABLE_LANGS,\n useValue: config.availableLangs,\n },\n {\n provide: DEFAULT_LANG,\n useValue: config.defaultLang,\n },\n {\n provide: FALLBACK_LANG,\n useValue: config.fallbackLang,\n },\n {\n provide: TRANSLATIONS_BASE_PATH,\n useValue: config.translationsBasePath,\n },\n ])\n}\n\nexport function withTranslation(config: TranslationConfig): QuangFeature<QuangFeatureKind.TranslationFeature> {\n return quangFeature(QuangFeatureKind.TranslationFeature, [provideTranslation(config)])\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { FormControl, FormGroup } from '@angular/forms';
2
+ export type FormGroupModel<T> = FormGroup<{
3
+ [K in keyof T]: FormControl<T[K]>;
4
+ }>;
5
+ /**
6
+ * @example
7
+ * interface Person {
8
+ * name: string
9
+ * lastName: string
10
+ * age: number
11
+ * }
12
+ *
13
+ * myForm: FormGroupModel<Person> = this.formBuilder.group({
14
+ * name: this.formBuilder.control<string>('', Validators.required),
15
+ * lastName: this.formBuilder.control<string>(''),
16
+ * age: this.formBuilder.control<number>({value: 20, disabled: true})
17
+ * })
18
+ */
package/forms/index.d.ts CHANGED
@@ -1,51 +1,2 @@
1
- import { ValidatorFn, AbstractControl, FormGroup, FormControl } from '@angular/forms';
2
-
3
- declare enum EuroLocale {
4
- AT = "AT",
5
- BE = "BE",
6
- BG = "BG",
7
- CY = "CY",
8
- CZ = "CZ",
9
- DE = "DE",
10
- DK = "DK",
11
- EE = "EE",
12
- GR = "GR",
13
- ES = "ES",
14
- FI = "FI",
15
- FR = "FR",
16
- GB = "GB",
17
- HU = "HU",
18
- IE = "IE",
19
- IT = "IT",
20
- LT = "LT",
21
- LU = "LU",
22
- LV = "LV",
23
- MT = "MT",
24
- NL = "NL",
25
- PL = "PL",
26
- PT = "PT",
27
- RO = "RO",
28
- SE = "SE",
29
- SI = "SI",
30
- SK = "SK"
31
- }
32
- declare const europeanVatNumber: Record<EuroLocale, RegExp>;
33
- declare function fileMaxSize(maxSize: number): ValidatorFn;
34
- declare function fileMinSize(minSize: number): ValidatorFn;
35
- declare function isFile(): ValidatorFn;
36
- declare function fileType(fileTypes: string[]): (control: AbstractControl) => Record<string, any> | null;
37
- declare function fileExtensions(list: string[]): (control: AbstractControl) => Record<string, any> | null;
38
- declare function requiredCheckbox(): (control: AbstractControl) => Record<string, any> | null;
39
- declare function minDate(dateToCompare: Date): (control: AbstractControl) => Record<string, any> | null;
40
- declare function maxDate(dateToCompare: Date): (control: AbstractControl) => Record<string, any> | null;
41
- declare function dateBetween(start: Date, end: Date): (control: AbstractControl) => Record<string, any> | null;
42
- declare function isFiscalCode(): (control: AbstractControl) => Record<string, any> | null;
43
- declare function isVatNumber(localeList: EuroLocale[]): (control: AbstractControl) => Record<string, any> | null;
44
- declare function wysiwygRequired(): (control: AbstractControl) => Record<string, any> | null;
45
-
46
- type FormGroupModel<T> = FormGroup<{
47
- [K in keyof T]: FormControl<T[K]>;
48
- }>;
49
-
50
- export { EuroLocale, dateBetween, europeanVatNumber, fileExtensions, fileMaxSize, fileMinSize, fileType, isFile, isFiscalCode, isVatNumber, maxDate, minDate, requiredCheckbox, wysiwygRequired };
51
- export type { FormGroupModel };
1
+ export * from './validators';
2
+ export * from './form-group-model';
@@ -0,0 +1,43 @@
1
+ import { AbstractControl, ValidatorFn } from '@angular/forms';
2
+ export declare enum EuroLocale {
3
+ AT = "AT",
4
+ BE = "BE",
5
+ BG = "BG",
6
+ CY = "CY",
7
+ CZ = "CZ",
8
+ DE = "DE",
9
+ DK = "DK",
10
+ EE = "EE",
11
+ GR = "GR",
12
+ ES = "ES",
13
+ FI = "FI",
14
+ FR = "FR",
15
+ GB = "GB",
16
+ HU = "HU",
17
+ IE = "IE",
18
+ IT = "IT",
19
+ LT = "LT",
20
+ LU = "LU",
21
+ LV = "LV",
22
+ MT = "MT",
23
+ NL = "NL",
24
+ PL = "PL",
25
+ PT = "PT",
26
+ RO = "RO",
27
+ SE = "SE",
28
+ SI = "SI",
29
+ SK = "SK"
30
+ }
31
+ export declare const europeanVatNumber: Record<EuroLocale, RegExp>;
32
+ export declare function fileMaxSize(maxSize: number): ValidatorFn;
33
+ export declare function fileMinSize(minSize: number): ValidatorFn;
34
+ export declare function isFile(): ValidatorFn;
35
+ export declare function fileType(fileTypes: string[]): (control: AbstractControl) => Record<string, any> | null;
36
+ export declare function fileExtensions(list: string[]): (control: AbstractControl) => Record<string, any> | null;
37
+ export declare function requiredCheckbox(): (control: AbstractControl) => Record<string, any> | null;
38
+ export declare function minDate(dateToCompare: Date): (control: AbstractControl) => Record<string, any> | null;
39
+ export declare function maxDate(dateToCompare: Date): (control: AbstractControl) => Record<string, any> | null;
40
+ export declare function dateBetween(start: Date, end: Date): (control: AbstractControl) => Record<string, any> | null;
41
+ export declare function isFiscalCode(): (control: AbstractControl) => Record<string, any> | null;
42
+ export declare function isVatNumber(localeList: EuroLocale[]): (control: AbstractControl) => Record<string, any> | null;
43
+ export declare function wysiwygRequired(): (control: AbstractControl) => Record<string, any> | null;
package/index.d.ts CHANGED
@@ -1,24 +1,23 @@
1
- import { InjectionToken, Provider, EnvironmentProviders } from '@angular/core';
2
-
3
- declare const QUANG_CONFIG: InjectionToken<QuangConfig>;
4
- declare const QUANG_LOGGING_BEHAVIOR: InjectionToken<"normal" | "verbose">;
5
- interface QuangConfig {
1
+ import { EnvironmentProviders, InjectionToken, Provider } from '@angular/core';
2
+ export declare const QUANG_CONFIG: InjectionToken<QuangConfig>;
3
+ export declare const QUANG_LOGGING_BEHAVIOR: InjectionToken<"normal" | "verbose">;
4
+ export interface QuangConfig {
6
5
  verbose?: boolean;
7
6
  baseHref?: string;
8
7
  }
9
8
  /** The list of features as an enum to uniquely type each feature. */
10
- declare const enum QuangFeatureKind {
9
+ export declare const enum QuangFeatureKind {
11
10
  AuthFeature = 0,
12
11
  TranslationFeature = 1,
13
12
  LoaderFeature = 2
14
13
  }
15
14
  /** Helper type to represent a Quang feature. */
16
- interface QuangFeature<FeatureKind extends QuangFeatureKind> {
15
+ export interface QuangFeature<FeatureKind extends QuangFeatureKind> {
17
16
  ɵkind: FeatureKind;
18
17
  ɵproviders: (Provider | EnvironmentProviders)[];
19
18
  }
20
19
  /** Helper function to create an object that represents a Quang feature. */
21
- declare function quangFeature<FeatureKind extends QuangFeatureKind>(kind: FeatureKind, providers: (Provider | EnvironmentProviders)[]): QuangFeature<FeatureKind>;
20
+ export declare function quangFeature<FeatureKind extends QuangFeatureKind>(kind: FeatureKind, providers: (Provider | EnvironmentProviders)[]): QuangFeature<FeatureKind>;
22
21
  /**
23
22
  * A type alias that represents all Quang features available for use with `provideQuangConfig`.
24
23
  * Features can be enabled by adding special functions to the `provideQuangConfig` call.
@@ -27,8 +26,5 @@ declare function quangFeature<FeatureKind extends QuangFeatureKind>(kind: Featur
27
26
  *
28
27
  * @see {@link provideQuangConfig}
29
28
  */
30
- type QuangFeatures = QuangFeature<QuangFeatureKind>;
31
- declare function provideQuangConfig(config?: QuangConfig, ...features: QuangFeatures[]): EnvironmentProviders;
32
-
33
- export { QUANG_CONFIG, QUANG_LOGGING_BEHAVIOR, QuangFeatureKind, provideQuangConfig, quangFeature };
34
- export type { QuangConfig, QuangFeature, QuangFeatures };
29
+ export type QuangFeatures = QuangFeature<QuangFeatureKind>;
30
+ export declare function provideQuangConfig(config?: QuangConfig, ...features: QuangFeatures[]): EnvironmentProviders;
package/loader/index.d.ts CHANGED
@@ -1,69 +1,4 @@
1
- import { HttpInterceptorFn } from '@angular/common/http';
2
- import * as _angular_core from '@angular/core';
3
- import { InjectionToken, EnvironmentProviders } from '@angular/core';
4
- import { UrlData } from 'quang/shared';
5
- import * as rxjs from 'rxjs';
6
- import { QuangFeature, QuangFeatureKind } from 'quang';
7
-
8
- declare const LOADER_EXCLUDED_URLS: InjectionToken<UrlData[]>;
9
- /**
10
- * @deprecated
11
- * @see {@link LOADER_EXCLUDED_URLS}
12
- */
13
- declare const EXCLUDED_URL: InjectionToken<UrlData[]>;
14
- declare const quangLoaderInterceptor: HttpInterceptorFn;
15
-
16
- /**
17
- * @example
18
- * <quang-loader></quang-loader>
19
- *
20
- * @example
21
- * <quang-loader>
22
- * custom loader here
23
- * </quang-loader>
24
- */
25
- declare class QuangLoaderComponent {
26
- /**
27
- * Minimum time (in milliseconds) to show the loader for
28
- * @default 500
29
- */
30
- showAtLeastFor: _angular_core.InputSignal<number>;
31
- private readonly loaderService;
32
- isLoading: _angular_core.Signal<boolean>;
33
- showLoaderBuffer$: rxjs.Observable<boolean>;
34
- showLoader: _angular_core.Signal<boolean | undefined>;
35
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuangLoaderComponent, never>;
36
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuangLoaderComponent, "quang-loader", never, { "showAtLeastFor": { "alias": "showAtLeastFor"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
37
- }
38
-
39
- declare class QuangLoaderService {
40
- private loaderState;
41
- isLoading: _angular_core.Signal<boolean>;
42
- show(): void;
43
- hide(): void;
44
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuangLoaderService, never>;
45
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<QuangLoaderService>;
46
- }
47
-
48
- /**
49
- * @example
50
- * export const appConfig: ApplicationConfig = {
51
- * providers: [
52
- * provideLoader([
53
- * {
54
- * url: 'assets',
55
- * method: 'GET',
56
- * },
57
- * ])
58
- * ]
59
- * }
60
- */
61
- declare function provideQuangLoaderExcludedUrls(excludedUrls: UrlData[]): EnvironmentProviders;
62
- declare function withLoaderExcludedUrls(excludedUrls: UrlData[]): QuangFeature<QuangFeatureKind.LoaderFeature>;
63
- /**
64
- * @deprecated
65
- * @see {@link provideQuangLoaderExcludedUrls}
66
- */
67
- declare const provideLoader: typeof provideQuangLoaderExcludedUrls;
68
-
69
- export { EXCLUDED_URL, LOADER_EXCLUDED_URLS, QuangLoaderComponent, QuangLoaderService, provideLoader, provideQuangLoaderExcludedUrls, quangLoaderInterceptor, withLoaderExcludedUrls };
1
+ export * from './loader.interceptor';
2
+ export * from './loader.component';
3
+ export * from './loader.service';
4
+ export * from './loader-providers';
@@ -0,0 +1,23 @@
1
+ import { EnvironmentProviders } from '@angular/core';
2
+ import { QuangFeature, QuangFeatureKind } from 'quang';
3
+ import { UrlData } from 'quang/shared';
4
+ /**
5
+ * @example
6
+ * export const appConfig: ApplicationConfig = {
7
+ * providers: [
8
+ * provideLoader([
9
+ * {
10
+ * url: 'assets',
11
+ * method: 'GET',
12
+ * },
13
+ * ])
14
+ * ]
15
+ * }
16
+ */
17
+ export declare function provideQuangLoaderExcludedUrls(excludedUrls: UrlData[]): EnvironmentProviders;
18
+ export declare function withLoaderExcludedUrls(excludedUrls: UrlData[]): QuangFeature<QuangFeatureKind.LoaderFeature>;
19
+ /**
20
+ * @deprecated
21
+ * @see {@link provideQuangLoaderExcludedUrls}
22
+ */
23
+ export declare const provideLoader: typeof provideQuangLoaderExcludedUrls;
@@ -0,0 +1,23 @@
1
+ import * as i0 from "@angular/core";
2
+ /**
3
+ * @example
4
+ * <quang-loader></quang-loader>
5
+ *
6
+ * @example
7
+ * <quang-loader>
8
+ * custom loader here
9
+ * </quang-loader>
10
+ */
11
+ export declare class QuangLoaderComponent {
12
+ /**
13
+ * Minimum time (in milliseconds) to show the loader for
14
+ * @default 500
15
+ */
16
+ showAtLeastFor: import("@angular/core").InputSignal<number>;
17
+ private readonly loaderService;
18
+ isLoading: import("@angular/core").Signal<boolean>;
19
+ showLoaderBuffer$: import("rxjs").Observable<boolean>;
20
+ showLoader: import("@angular/core").Signal<boolean | undefined>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<QuangLoaderComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<QuangLoaderComponent, "quang-loader", never, { "showAtLeastFor": { "alias": "showAtLeastFor"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
23
+ }
@@ -0,0 +1,10 @@
1
+ import { HttpInterceptorFn } from '@angular/common/http';
2
+ import { InjectionToken } from '@angular/core';
3
+ import { UrlData } from 'quang/shared';
4
+ export declare const LOADER_EXCLUDED_URLS: InjectionToken<UrlData[]>;
5
+ /**
6
+ * @deprecated
7
+ * @see {@link LOADER_EXCLUDED_URLS}
8
+ */
9
+ export declare const EXCLUDED_URL: InjectionToken<UrlData[]>;
10
+ export declare const quangLoaderInterceptor: HttpInterceptorFn;
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class QuangLoaderService {
3
+ private loaderState;
4
+ isLoading: import("@angular/core").Signal<boolean>;
5
+ show(): void;
6
+ hide(): void;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<QuangLoaderService, never>;
8
+ static ɵprov: i0.ɵɵInjectableDeclaration<QuangLoaderService>;
9
+ }
@@ -1,34 +1 @@
1
- import * as _angular_cdk_overlay from '@angular/cdk/overlay';
2
- import { Overlay } from '@angular/cdk/overlay';
3
- import * as _angular_core from '@angular/core';
4
- import { AfterViewInit, OnDestroy } from '@angular/core';
5
- import { CdkPortal } from '@angular/cdk/portal';
6
-
7
- type ModalAnimationMode = 'SLIDE_FROM_LEFT_TO_RIGHT' | 'SLIDE_FROM_RIGHT_TO_LEFT' | 'SLIDE_TOP_TO_BOTTOM' | 'SLIDE_BOTTOM_TO_TOP' | 'FADE';
8
- declare class QuangModalComponent implements AfterViewInit, OnDestroy {
9
- private readonly overlay;
10
- readonly portal?: CdkPortal;
11
- backdropClick: _angular_core.OutputEmitterRef<void>;
12
- position: _angular_core.InputSignal<"right" | "left" | "center">;
13
- height: _angular_core.InputSignal<string>;
14
- width: _angular_core.InputSignal<string>;
15
- padding: _angular_core.InputSignal<string>;
16
- containerClass: _angular_core.InputSignal<string>;
17
- animationMode: _angular_core.InputSignal<ModalAnimationMode | undefined>;
18
- backgroundColor: _angular_core.InputSignal<string | undefined>;
19
- showBackdrop: _angular_core.InputSignal<boolean>;
20
- positionStrategy: _angular_core.Signal<_angular_cdk_overlay.GlobalPositionStrategy>;
21
- animationClassEnter: _angular_core.Signal<"" | "left-to-right-enter-active" | "right-to-left-enter-active" | "top-to-bottom-enter-active" | "fade-enter-active">;
22
- private readonly destroyRef;
23
- private overlayConfig?;
24
- private overlayRef?;
25
- constructor(overlay: Overlay);
26
- ngAfterViewInit(): void;
27
- ngOnDestroy(): void;
28
- closeModal(): void;
29
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuangModalComponent, never>;
30
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuangModalComponent, "quang-modal", never, { "position": { "alias": "position"; "required": true; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "padding": { "alias": "padding"; "required": false; "isSignal": true; }; "containerClass": { "alias": "containerClass"; "required": false; "isSignal": true; }; "animationMode": { "alias": "animationMode"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; }, { "backdropClick": "backdropClick"; }, never, ["[header]", "[body]", "[footer]"], true, never>;
31
- }
32
-
33
- export { QuangModalComponent };
34
- export type { ModalAnimationMode };
1
+ export * from './modal.component';
@@ -0,0 +1,29 @@
1
+ import { Overlay } from '@angular/cdk/overlay';
2
+ import { CdkPortal } from '@angular/cdk/portal';
3
+ import { AfterViewInit, OnDestroy } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ export type ModalAnimationMode = 'SLIDE_FROM_LEFT_TO_RIGHT' | 'SLIDE_FROM_RIGHT_TO_LEFT' | 'SLIDE_TOP_TO_BOTTOM' | 'SLIDE_BOTTOM_TO_TOP' | 'FADE';
6
+ export declare class QuangModalComponent implements AfterViewInit, OnDestroy {
7
+ private readonly overlay;
8
+ readonly portal?: CdkPortal;
9
+ backdropClick: import("@angular/core").OutputEmitterRef<void>;
10
+ position: import("@angular/core").InputSignal<"right" | "left" | "center">;
11
+ height: import("@angular/core").InputSignal<string>;
12
+ width: import("@angular/core").InputSignal<string>;
13
+ padding: import("@angular/core").InputSignal<string>;
14
+ containerClass: import("@angular/core").InputSignal<string>;
15
+ animationMode: import("@angular/core").InputSignal<ModalAnimationMode | undefined>;
16
+ backgroundColor: import("@angular/core").InputSignal<string | undefined>;
17
+ showBackdrop: import("@angular/core").InputSignal<boolean>;
18
+ positionStrategy: import("@angular/core").Signal<import("@angular/cdk/overlay.d-BdoMy0hX").G>;
19
+ animationClassEnter: import("@angular/core").Signal<"" | "left-to-right-enter-active" | "right-to-left-enter-active" | "top-to-bottom-enter-active" | "fade-enter-active">;
20
+ private readonly destroyRef;
21
+ private overlayConfig?;
22
+ private overlayRef?;
23
+ constructor(overlay: Overlay);
24
+ ngAfterViewInit(): void;
25
+ ngOnDestroy(): void;
26
+ closeModal(): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<QuangModalComponent, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<QuangModalComponent, "quang-modal", never, { "position": { "alias": "position"; "required": true; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "padding": { "alias": "padding"; "required": false; "isSignal": true; }; "containerClass": { "alias": "containerClass"; "required": false; "isSignal": true; }; "animationMode": { "alias": "animationMode"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; }, { "backdropClick": "backdropClick"; }, never, ["[header]", "[body]", "[footer]"], true, never>;
29
+ }
@@ -1,25 +1 @@
1
- import * as _angular_core from '@angular/core';
2
- import { TemplateRef } from '@angular/core';
3
- import { ComponentType } from '@angular/cdk/portal';
4
- import { QuangBaseOverlayComponent, QuangBaseOverlayDirective } from 'quang/overlay/shared';
5
- import * as rxjs from 'rxjs';
6
- import { ConnectionPositionPair } from '@angular/cdk/overlay';
7
-
8
- declare class QuangPopoverComponent implements QuangBaseOverlayComponent {
9
- overlayContent: _angular_core.InputSignal<TemplateRef<any> | null>;
10
- positionPair: _angular_core.WritableSignal<ConnectionPositionPair | null>;
11
- payload: _angular_core.InputSignal<any>;
12
- getPopoverPosition: _angular_core.WritableSignal<string>;
13
- onChangePositionPair$: rxjs.Subscription;
14
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuangPopoverComponent, never>;
15
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuangPopoverComponent, "quang-popover", never, { "overlayContent": { "alias": "overlayContent"; "required": false; "isSignal": true; }; "payload": { "alias": "payload"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
- }
17
-
18
- declare class QuangPopoverDirective extends QuangBaseOverlayDirective<QuangPopoverComponent> {
19
- targetComponentType: _angular_core.WritableSignal<ComponentType<QuangPopoverComponent> | undefined>;
20
- content: _angular_core.InputSignal<TemplateRef<any> | null>;
21
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuangPopoverDirective, never>;
22
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<QuangPopoverDirective, "[quangPopover]", never, { "content": { "alias": "quangPopover"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
23
- }
24
-
25
- export { QuangPopoverDirective };
1
+ export * from './popover.directive';
@@ -0,0 +1,13 @@
1
+ import { ConnectionPositionPair } from '@angular/cdk/overlay';
2
+ import { TemplateRef } from '@angular/core';
3
+ import { QuangBaseOverlayComponent } from 'quang/overlay/shared';
4
+ import * as i0 from "@angular/core";
5
+ export declare class QuangPopoverComponent implements QuangBaseOverlayComponent {
6
+ overlayContent: import("@angular/core").InputSignal<TemplateRef<any> | null>;
7
+ positionPair: import("@angular/core").WritableSignal<ConnectionPositionPair | null>;
8
+ payload: import("@angular/core").InputSignal<any>;
9
+ getPopoverPosition: import("@angular/core").WritableSignal<string>;
10
+ onChangePositionPair$: import("rxjs").Subscription;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<QuangPopoverComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<QuangPopoverComponent, "quang-popover", never, { "overlayContent": { "alias": "overlayContent"; "required": false; "isSignal": true; }; "payload": { "alias": "payload"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
+ }
@@ -0,0 +1,11 @@
1
+ import { ComponentType } from '@angular/cdk/portal';
2
+ import { TemplateRef } from '@angular/core';
3
+ import { QuangBaseOverlayDirective } from 'quang/overlay/shared';
4
+ import { QuangPopoverComponent } from './popover.component';
5
+ import * as i0 from "@angular/core";
6
+ export declare class QuangPopoverDirective extends QuangBaseOverlayDirective<QuangPopoverComponent> {
7
+ targetComponentType: import("@angular/core").WritableSignal<ComponentType<QuangPopoverComponent> | undefined>;
8
+ content: import("@angular/core").InputSignal<TemplateRef<any> | null>;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<QuangPopoverDirective, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<QuangPopoverDirective, "[quangPopover]", never, { "content": { "alias": "quangPopover"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
11
+ }