@bootkit/ng0 0.0.0-alpha.3 → 0.0.0-alpha.30

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 (105) hide show
  1. package/common/index.d.ts +271 -7
  2. package/components/accordion/index.d.ts +1 -1
  3. package/components/backdrop/index.d.ts +12 -0
  4. package/components/button/index.d.ts +48 -0
  5. package/components/card/index.d.ts +27 -0
  6. package/components/code/index.d.ts +35 -0
  7. package/components/confirmation/index.d.ts +66 -0
  8. package/components/dropdown/index.d.ts +140 -0
  9. package/components/form-field/index.d.ts +24 -41
  10. package/components/list/index.d.ts +259 -0
  11. package/components/modal/index.d.ts +22 -4
  12. package/components/nav/index.d.ts +23 -19
  13. package/components/pagination/index.d.ts +35 -9
  14. package/components/popover/index.d.ts +1 -1
  15. package/components/select/index.d.ts +159 -0
  16. package/components/sidenav/index.d.ts +59 -0
  17. package/components/stepper/index.d.ts +26 -0
  18. package/components/table/index.d.ts +273 -0
  19. package/components/toast/index.d.ts +1 -1
  20. package/components/tooltip/index.d.ts +1 -1
  21. package/components/vertical-menu/index.d.ts +61 -0
  22. package/data/index.d.ts +145 -45
  23. package/date/index.d.ts +34 -0
  24. package/fesm2022/bootkit-ng0-common.mjs +295 -12
  25. package/fesm2022/bootkit-ng0-common.mjs.map +1 -1
  26. package/fesm2022/bootkit-ng0-components-accordion.mjs +15 -15
  27. package/fesm2022/bootkit-ng0-components-accordion.mjs.map +1 -1
  28. package/fesm2022/bootkit-ng0-components-backdrop.mjs +46 -0
  29. package/fesm2022/bootkit-ng0-components-backdrop.mjs.map +1 -0
  30. package/fesm2022/bootkit-ng0-components-button.mjs +119 -0
  31. package/fesm2022/bootkit-ng0-components-button.mjs.map +1 -0
  32. package/fesm2022/bootkit-ng0-components-card.mjs +62 -0
  33. package/fesm2022/bootkit-ng0-components-card.mjs.map +1 -0
  34. package/fesm2022/bootkit-ng0-components-code.mjs +70 -0
  35. package/fesm2022/bootkit-ng0-components-code.mjs.map +1 -0
  36. package/fesm2022/bootkit-ng0-components-collapse.mjs +16 -16
  37. package/fesm2022/bootkit-ng0-components-collapse.mjs.map +1 -1
  38. package/fesm2022/bootkit-ng0-components-confirmation.mjs +167 -0
  39. package/fesm2022/bootkit-ng0-components-confirmation.mjs.map +1 -0
  40. package/fesm2022/bootkit-ng0-components-dropdown.mjs +302 -0
  41. package/fesm2022/bootkit-ng0-components-dropdown.mjs.map +1 -0
  42. package/fesm2022/bootkit-ng0-components-form-field.mjs +62 -84
  43. package/fesm2022/bootkit-ng0-components-form-field.mjs.map +1 -1
  44. package/fesm2022/bootkit-ng0-components-list.mjs +563 -0
  45. package/fesm2022/bootkit-ng0-components-list.mjs.map +1 -0
  46. package/fesm2022/bootkit-ng0-components-modal.mjs +41 -24
  47. package/fesm2022/bootkit-ng0-components-modal.mjs.map +1 -1
  48. package/fesm2022/bootkit-ng0-components-nav.mjs +59 -60
  49. package/fesm2022/bootkit-ng0-components-nav.mjs.map +1 -1
  50. package/fesm2022/bootkit-ng0-components-offcanvas.mjs +10 -10
  51. package/fesm2022/bootkit-ng0-components-offcanvas.mjs.map +1 -1
  52. package/fesm2022/bootkit-ng0-components-overlay.mjs.map +1 -1
  53. package/fesm2022/bootkit-ng0-components-pagination.mjs +59 -24
  54. package/fesm2022/bootkit-ng0-components-pagination.mjs.map +1 -1
  55. package/fesm2022/bootkit-ng0-components-popover.mjs +11 -11
  56. package/fesm2022/bootkit-ng0-components-popover.mjs.map +1 -1
  57. package/fesm2022/bootkit-ng0-components-select.mjs +446 -0
  58. package/fesm2022/bootkit-ng0-components-select.mjs.map +1 -0
  59. package/fesm2022/bootkit-ng0-components-sidenav.mjs +153 -0
  60. package/fesm2022/bootkit-ng0-components-sidenav.mjs.map +1 -0
  61. package/fesm2022/bootkit-ng0-components-stepper.mjs +91 -0
  62. package/fesm2022/bootkit-ng0-components-stepper.mjs.map +1 -0
  63. package/fesm2022/bootkit-ng0-components-table.mjs +461 -0
  64. package/fesm2022/bootkit-ng0-components-table.mjs.map +1 -0
  65. package/fesm2022/bootkit-ng0-components-toast.mjs +7 -7
  66. package/fesm2022/bootkit-ng0-components-toast.mjs.map +1 -1
  67. package/fesm2022/bootkit-ng0-components-tooltip.mjs +9 -9
  68. package/fesm2022/bootkit-ng0-components-tooltip.mjs.map +1 -1
  69. package/fesm2022/bootkit-ng0-components-vertical-menu.mjs +161 -0
  70. package/fesm2022/bootkit-ng0-components-vertical-menu.mjs.map +1 -0
  71. package/fesm2022/bootkit-ng0-data.mjs +180 -90
  72. package/fesm2022/bootkit-ng0-data.mjs.map +1 -1
  73. package/fesm2022/bootkit-ng0-date.mjs +50 -0
  74. package/fesm2022/bootkit-ng0-date.mjs.map +1 -0
  75. package/fesm2022/bootkit-ng0-file.mjs +50 -0
  76. package/fesm2022/bootkit-ng0-file.mjs.map +1 -0
  77. package/fesm2022/bootkit-ng0-form.mjs +514 -0
  78. package/fesm2022/bootkit-ng0-form.mjs.map +1 -0
  79. package/fesm2022/bootkit-ng0-http.mjs +224 -176
  80. package/fesm2022/bootkit-ng0-http.mjs.map +1 -1
  81. package/fesm2022/bootkit-ng0-layouts-layout1.mjs +138 -0
  82. package/fesm2022/bootkit-ng0-layouts-layout1.mjs.map +1 -0
  83. package/fesm2022/bootkit-ng0-localization-locales.mjs +101 -0
  84. package/fesm2022/bootkit-ng0-localization-locales.mjs.map +1 -0
  85. package/fesm2022/bootkit-ng0-localization.mjs +347 -105
  86. package/fesm2022/bootkit-ng0-localization.mjs.map +1 -1
  87. package/fesm2022/bootkit-ng0-platform-browser.mjs +51 -0
  88. package/fesm2022/bootkit-ng0-platform-browser.mjs.map +1 -0
  89. package/fesm2022/bootkit-ng0-routing.mjs +80 -0
  90. package/fesm2022/bootkit-ng0-routing.mjs.map +1 -0
  91. package/fesm2022/bootkit-ng0-script.mjs +59 -0
  92. package/fesm2022/bootkit-ng0-script.mjs.map +1 -0
  93. package/fesm2022/bootkit-ng0-security.mjs +18 -16
  94. package/fesm2022/bootkit-ng0-security.mjs.map +1 -1
  95. package/file/index.d.ts +22 -0
  96. package/form/index.d.ts +127 -0
  97. package/http/index.d.ts +138 -37
  98. package/layouts/layout1/index.d.ts +92 -0
  99. package/localization/index.d.ts +180 -41
  100. package/localization/locales/index.d.ts +7 -0
  101. package/package.json +95 -15
  102. package/platform/browser/index.d.ts +22 -0
  103. package/routing/index.d.ts +124 -0
  104. package/script/index.d.ts +27 -0
  105. package/security/index.d.ts +3 -9
@@ -1 +1 @@
1
- {"version":3,"file":"bootkit-ng0-components-collapse.mjs","sources":["../../../projects/ng0/components/collapse/collapse.directive.ts","../../../projects/ng0/components/collapse/collapse.component.ts","../../../projects/ng0/components/collapse/collapse.component.html","../../../projects/ng0/components/collapse/collapse.module.ts","../../../projects/ng0/components/collapse/bootkit-ng0-components-collapse.ts"],"sourcesContent":["import { Directive, OnInit, ElementRef, Renderer2, input, effect, OnDestroy } from '@angular/core';\r\nimport { animate, AnimationBuilder, AnimationMetadata, AnimationPlayer, style } from '@angular/animations';\r\n\r\n/** \r\n * Directive to handle the collapse and expand functionality of a host element. \r\n */\r\n@Directive({\r\n selector: '[ng0Collapse]',\r\n exportAs: 'ng0Collapse',\r\n standalone: true,\r\n})\r\nexport class CollapseDirective implements OnInit, OnDestroy {\r\n /**\r\n * Indicates whether the host element is collapsed. \r\n * @input \r\n */\r\n public collapsed = input(false);\r\n\r\n /** Animation timings for collapse/expand animations. \r\n * @input \r\n */\r\n public timings = input<string | number>('0.2s');\r\n\r\n private _player?: AnimationPlayer;\r\n private _firstExecution = true;\r\n\r\n constructor(private el: ElementRef, private builder: AnimationBuilder, private renderer: Renderer2) {\r\n renderer.setStyle(el.nativeElement, 'overflow', 'hidden');\r\n \r\n effect(() => {\r\n var collapsed = this.collapsed();\r\n if (this._firstExecution) {\r\n this._firstExecution = false;\r\n return;\r\n }\r\n\r\n if (collapsed)\r\n this._collapse()\r\n else\r\n this._expand();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this._addClass('collapse');\r\n if (!this.collapsed()) {\r\n this._addClass('show');\r\n }\r\n }\r\n\r\n private _collapse() {\r\n if (this._player) {\r\n this._player.destroy();\r\n }\r\n\r\n this._playAnimation([\r\n style({ height: '*', opacity: '*' }),\r\n animate(this.timings(), style({ height: 0, opacity: 0 })),\r\n ])\r\n\r\n this._player!.onDone(() => {\r\n if (this.collapsed()) {\r\n this._removeClass('show')\r\n }\r\n });\r\n }\r\n\r\n private _expand() {\r\n if (this._player) {\r\n this._player.destroy();\r\n }\r\n\r\n this._addClass('show')\r\n this._playAnimation([\r\n style({ height: 0, opacity: 0 }),\r\n animate(this.timings(), style({ height: '*', opacity: '*' })),\r\n ]);\r\n\r\n this._player.onDone(() => {\r\n this._player.destroy()\r\n this._player = undefined;\r\n });\r\n }\r\n\r\n private _playAnimation(animation: AnimationMetadata | AnimationMetadata[]) {\r\n this._player = this.builder.build(animation).create(this.el.nativeElement);\r\n this._player.play();\r\n }\r\n\r\n private _addClass = (cls: string) => this.renderer.addClass(this.el.nativeElement, cls);\r\n private _removeClass = (cls: string) => this.renderer.removeClass(this.el.nativeElement, cls);\r\n\r\n ngOnDestroy(): void {\r\n this._player?.destroy();\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, input, model } from '@angular/core';\r\nimport { trigger, state, style, animate, transition } from '@angular/animations';\r\n\r\n/**\r\n * A component that provides collapse and expand functionality. \r\n*/\r\n@Component({\r\n selector: 'ng0-collapse',\r\n templateUrl: './collapse.component.html',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n styles: `:host{display :block; overflow: hidden}`,\r\n animations: [\r\n trigger('collapseExpand', [\r\n state('collapsed', style({ height: 0, opacity: 0, })),\r\n state('expanded', style({ height: '*', opacity: '*', })),\r\n transition('collapsed <=> expanded', [\r\n animate('{{timings}}')\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class CollapseComponent {\r\n /**\r\n * Indicates whether the host element is collapsed. \r\n * @model \r\n */\r\n public collapsed = model(false);\r\n\r\n /** Animation timings for collapse/expand animations. \r\n * @input \r\n */\r\n public timings = input<string | number>('0.2s');\r\n\r\n @HostBinding('@collapseExpand')\r\n private get _collapseExpand() {\r\n return { value: this.collapsed() ? 'collapsed' : 'expanded', params: { timings: this.timings() } };\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\r\nimport { CollapseDirective } from './collapse.directive';\r\nimport { CollapseComponent } from './collapse.component';\r\n\r\nconst items = [\r\n CollapseDirective,\r\n CollapseComponent\r\n];\r\n\r\n@NgModule({\r\n imports: items,\r\n exports: items\r\n})\r\nexport class CollapseModule {\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootkit-ng0-components-collapse.mjs","sources":["../../../projects/ng0/components/collapse/collapse.directive.ts","../../../projects/ng0/components/collapse/collapse.component.ts","../../../projects/ng0/components/collapse/collapse.component.html","../../../projects/ng0/components/collapse/collapse.module.ts","../../../projects/ng0/components/collapse/bootkit-ng0-components-collapse.ts"],"sourcesContent":["import { Directive, OnInit, ElementRef, Renderer2, input, effect, OnDestroy } from '@angular/core';\r\nimport { animate, AnimationBuilder, AnimationMetadata, AnimationPlayer, style } from '@angular/animations';\r\n\r\n/** \r\n * Directive to handle the collapse and expand functionality of a host element. \r\n */\r\n@Directive({\r\n selector: '[ng0Collapse]',\r\n exportAs: 'ng0Collapse',\r\n standalone: true,\r\n})\r\nexport class CollapseDirective implements OnInit, OnDestroy {\r\n /**\r\n * Indicates whether the host element is collapsed. \r\n * @input \r\n */\r\n public collapsed = input(false);\r\n\r\n /** Animation timings for collapse/expand animations. \r\n * @input \r\n */\r\n public timings = input<string | number>('0.2s');\r\n\r\n private _player?: AnimationPlayer;\r\n private _firstExecution = true;\r\n\r\n constructor(private el: ElementRef, private builder: AnimationBuilder, private renderer: Renderer2) {\r\n renderer.setStyle(el.nativeElement, 'overflow', 'hidden');\r\n \r\n effect(() => {\r\n var collapsed = this.collapsed();\r\n if (this._firstExecution) {\r\n this._firstExecution = false;\r\n return;\r\n }\r\n\r\n if (collapsed)\r\n this._collapse()\r\n else\r\n this._expand();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this._addClass('collapse');\r\n if (!this.collapsed()) {\r\n this._addClass('show');\r\n }\r\n }\r\n\r\n private _collapse() {\r\n if (this._player) {\r\n this._player.destroy();\r\n }\r\n\r\n this._playAnimation([\r\n style({ height: '*', opacity: '*' }),\r\n animate(this.timings(), style({ height: 0, opacity: 0 })),\r\n ])\r\n\r\n this._player!.onDone(() => {\r\n if (this.collapsed()) {\r\n this._removeClass('show')\r\n }\r\n });\r\n }\r\n\r\n private _expand() {\r\n if (this._player) {\r\n this._player.destroy();\r\n }\r\n\r\n this._addClass('show')\r\n this._playAnimation([\r\n style({ height: 0, opacity: 0 }),\r\n animate(this.timings(), style({ height: '*', opacity: '*' })),\r\n ]);\r\n\r\n this._player!.onDone(() => {\r\n this._player!.destroy()\r\n this._player = undefined;\r\n });\r\n }\r\n\r\n private _playAnimation(animation: AnimationMetadata | AnimationMetadata[]) {\r\n this._player = this.builder.build(animation).create(this.el.nativeElement);\r\n this._player.play();\r\n }\r\n\r\n private _addClass = (cls: string) => this.renderer.addClass(this.el.nativeElement, cls);\r\n private _removeClass = (cls: string) => this.renderer.removeClass(this.el.nativeElement, cls);\r\n\r\n ngOnDestroy(): void {\r\n this._player?.destroy();\r\n }\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, input, model } from '@angular/core';\r\nimport { trigger, state, style, animate, transition } from '@angular/animations';\r\n\r\n/**\r\n * A component that provides collapse and expand functionality. \r\n*/\r\n@Component({\r\n selector: 'ng0-collapse',\r\n templateUrl: './collapse.component.html',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n styles: `:host{display :block; overflow: hidden}`,\r\n animations: [\r\n trigger('collapseExpand', [\r\n state('collapsed', style({ height: 0, opacity: 0, })),\r\n state('expanded', style({ height: '*', opacity: '*', })),\r\n transition('collapsed <=> expanded', [\r\n animate('{{timings}}')\r\n ])\r\n ])\r\n ]\r\n})\r\nexport class CollapseComponent {\r\n /**\r\n * Indicates whether the host element is collapsed. \r\n * @model \r\n */\r\n public collapsed = model(false);\r\n\r\n /** Animation timings for collapse/expand animations. \r\n * @input \r\n */\r\n public timings = input<string | number>('0.2s');\r\n\r\n @HostBinding('@collapseExpand')\r\n private get _collapseExpand() {\r\n return { value: this.collapsed() ? 'collapsed' : 'expanded', params: { timings: this.timings() } };\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\r\nimport { CollapseDirective } from './collapse.directive';\r\nimport { CollapseComponent } from './collapse.component';\r\n\r\nconst items = [\r\n CollapseDirective,\r\n CollapseComponent\r\n];\r\n\r\n@NgModule({\r\n imports: items,\r\n exports: items\r\n})\r\nexport class CollapseModule {\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,167 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, Injectable, EventEmitter, HostListener, Output, Input, Directive, NgModule } from '@angular/core';
3
+ import * as i1$1 from '@angular/cdk/dialog';
4
+ import { DialogModule } from '@angular/cdk/dialog';
5
+ import * as i1 from '@angular/common';
6
+ import { CommonModule } from '@angular/common';
7
+ import * as i2 from '@bootkit/ng0/localization';
8
+ import { LocalizationModule } from '@bootkit/ng0/localization';
9
+ import { Subject } from 'rxjs';
10
+
11
+ class ConfirmationComponent {
12
+ confirmationRef;
13
+ _config;
14
+ _clicked = false;
15
+ constructor() {
16
+ }
17
+ _onClick(result) {
18
+ this._clicked = true;
19
+ if (result) {
20
+ this.confirmationRef.confirm();
21
+ }
22
+ else {
23
+ this.confirmationRef.cancel();
24
+ }
25
+ if (this._config?.autoClose == null || this._config?.autoClose === true) {
26
+ this.confirmationRef.close();
27
+ }
28
+ }
29
+ ngOnInit() {
30
+ this.confirmationRef.configChanged.subscribe(x => this._config = x);
31
+ // var addClass = (c: string) => this._renderer.addClass(this._element.nativeElement, c);
32
+ // ['card', 'show'].forEach(c => addClass(c));
33
+ // if (this.config?.color) {
34
+ // addClass('text-bg-' + this.config?.color);
35
+ // }
36
+ }
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: ConfirmationComponent, isStandalone: true, selector: "ng0-confirmation", exportAs: ["ng0Confirmation"], ngImport: i0, template: "<div class=\"modal d-block\" tabindex=\"-1\">\r\n <div class=\"modal-dialog\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\">{{_config?.title ?? 'warning' | ng0Translate }}</h5>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n {{ _config?.message ?? 'areYouSure' | ng0Translate }}\r\n </div>\r\n\r\n <div class=\"modal-footer\">\r\n <div>\r\n <button type=\"button\" class=\"btn btn-success me-1\" aria-label=\"Confirm\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(true)\">\r\n {{'ok' | ng0Translate}}\r\n </button>\r\n\r\n <button type=\"button\" class=\"btn btn-secondary\" aria-label=\"Close\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(false)\">\r\n {{'cancel' | ng0Translate}}\r\n </button>\r\n </div>\r\n\r\n <div class=\"ms-auto\">\r\n <div class=\"spinner-border text-success\" role=\"status\" *ngIf=\"_config?.icon == 'loading'\">\r\n <span class=\"visually-hidden\">Processing</span>\r\n </div>\r\n\r\n <svg *ngIf=\"_config?.icon == 'check'\" xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'\r\n width=\"32\" height=\"32\">\r\n <path fill='#0493A8'\r\n d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z' />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DialogModule }, { kind: "ngmodule", type: LocalizationModule }, { kind: "pipe", type: i2.TranslatePipe, name: "ng0Translate" }] });
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationComponent, decorators: [{
41
+ type: Component,
42
+ args: [{ selector: 'ng0-confirmation', exportAs: 'ng0Confirmation', standalone: true, imports: [
43
+ CommonModule,
44
+ DialogModule,
45
+ LocalizationModule,
46
+ ], template: "<div class=\"modal d-block\" tabindex=\"-1\">\r\n <div class=\"modal-dialog\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\">{{_config?.title ?? 'warning' | ng0Translate }}</h5>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n {{ _config?.message ?? 'areYouSure' | ng0Translate }}\r\n </div>\r\n\r\n <div class=\"modal-footer\">\r\n <div>\r\n <button type=\"button\" class=\"btn btn-success me-1\" aria-label=\"Confirm\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(true)\">\r\n {{'ok' | ng0Translate}}\r\n </button>\r\n\r\n <button type=\"button\" class=\"btn btn-secondary\" aria-label=\"Close\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(false)\">\r\n {{'cancel' | ng0Translate}}\r\n </button>\r\n </div>\r\n\r\n <div class=\"ms-auto\">\r\n <div class=\"spinner-border text-success\" role=\"status\" *ngIf=\"_config?.icon == 'loading'\">\r\n <span class=\"visually-hidden\">Processing</span>\r\n </div>\r\n\r\n <svg *ngIf=\"_config?.icon == 'check'\" xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'\r\n width=\"32\" height=\"32\">\r\n <path fill='#0493A8'\r\n d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z' />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{display:block}\n"] }]
47
+ }], ctorParameters: () => [] });
48
+
49
+ class ConfirmationRef {
50
+ _dialogRef;
51
+ _config;
52
+ _configChangeSubject = new Subject();
53
+ configChanged = this._configChangeSubject.asObservable();
54
+ _confirmSubject = new Subject();
55
+ confirmed = this._confirmSubject.asObservable();
56
+ _cancelSubject = new Subject();
57
+ canceled = this._cancelSubject.asObservable();
58
+ constructor(_dialogRef, _config) {
59
+ this._dialogRef = _dialogRef;
60
+ this._config = _config;
61
+ }
62
+ confirm() {
63
+ this._confirmSubject.next(undefined);
64
+ }
65
+ cancel() {
66
+ this._cancelSubject.next(undefined);
67
+ }
68
+ close() {
69
+ this._dialogRef.close();
70
+ }
71
+ update(config) {
72
+ for (const key in config) {
73
+ if (Object.prototype.hasOwnProperty.call(config, key)) {
74
+ const element = config[key];
75
+ if (element !== undefined) {
76
+ this._config[key] = element;
77
+ }
78
+ }
79
+ }
80
+ this._configChangeSubject.next(this._config);
81
+ }
82
+ }
83
+
84
+ class ConfirmationService {
85
+ dialog;
86
+ constructor(dialog) {
87
+ this.dialog = dialog;
88
+ }
89
+ open(config = {}) {
90
+ var dlgRef = this.dialog.open(ConfirmationComponent, {
91
+ disableClose: false,
92
+ });
93
+ var componentRef = dlgRef.componentInstance;
94
+ componentRef.confirmationRef = new ConfirmationRef(dlgRef, config);
95
+ return componentRef.confirmationRef;
96
+ }
97
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationService, deps: [{ token: i1$1.Dialog }], target: i0.ɵɵFactoryTarget.Injectable });
98
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationService, providedIn: 'root' });
99
+ }
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationService, decorators: [{
101
+ type: Injectable,
102
+ args: [{
103
+ providedIn: 'root'
104
+ }]
105
+ }], ctorParameters: () => [{ type: i1$1.Dialog }] });
106
+
107
+ class ConfirmationDirective {
108
+ confirmationService;
109
+ config;
110
+ confirm = new EventEmitter();
111
+ cancel = new EventEmitter();
112
+ constructor(confirmationService) {
113
+ this.confirmationService = confirmationService;
114
+ }
115
+ _onClick() {
116
+ var ref = this.confirmationService.open(this.config);
117
+ ref.confirmed.subscribe(x => this.confirm.emit(ref));
118
+ ref.canceled.subscribe(x => this.cancel.emit(ref));
119
+ }
120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationDirective, deps: [{ token: ConfirmationService }], target: i0.ɵɵFactoryTarget.Directive });
121
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: ConfirmationDirective, isStandalone: true, selector: "[ng0Confirmation]", inputs: { config: "config" }, outputs: { confirm: "confirm", cancel: "cancel" }, host: { listeners: { "click": "_onClick()" } }, exportAs: ["ng0Confirmation"], ngImport: i0 });
122
+ }
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationDirective, decorators: [{
124
+ type: Directive,
125
+ args: [{
126
+ selector: '[ng0Confirmation]',
127
+ exportAs: 'ng0Confirmation',
128
+ standalone: true
129
+ }]
130
+ }], ctorParameters: () => [{ type: ConfirmationService }], propDecorators: { config: [{
131
+ type: Input
132
+ }], confirm: [{
133
+ type: Output
134
+ }], cancel: [{
135
+ type: Output
136
+ }], _onClick: [{
137
+ type: HostListener,
138
+ args: ['click']
139
+ }] } });
140
+
141
+ class ConfirmationModule {
142
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
143
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent,
144
+ ConfirmationDirective], exports: [ConfirmationComponent,
145
+ ConfirmationDirective] });
146
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent] });
147
+ }
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: ConfirmationModule, decorators: [{
149
+ type: NgModule,
150
+ args: [{
151
+ imports: [
152
+ ConfirmationComponent,
153
+ ConfirmationDirective
154
+ ],
155
+ exports: [
156
+ ConfirmationComponent,
157
+ ConfirmationDirective
158
+ ]
159
+ }]
160
+ }] });
161
+
162
+ /**
163
+ * Generated bundle index. Do not edit.
164
+ */
165
+
166
+ export { ConfirmationComponent, ConfirmationDirective, ConfirmationModule, ConfirmationRef, ConfirmationService };
167
+ //# sourceMappingURL=bootkit-ng0-components-confirmation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootkit-ng0-components-confirmation.mjs","sources":["../../../projects/ng0/components/confirmation/confirmation.component.ts","../../../projects/ng0/components/confirmation/confirmation.component.html","../../../projects/ng0/components/confirmation/types.ts","../../../projects/ng0/components/confirmation/confirmation.service.ts","../../../projects/ng0/components/confirmation/confirmation.directive.ts","../../../projects/ng0/components/confirmation/confirmation.module.ts","../../../projects/ng0/components/confirmation/bootkit-ng0-components-confirmation.ts"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\r\nimport { ConfirmationConfig, ConfirmationRef } from './types';\r\nimport { DialogModule } from '@angular/cdk/dialog';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LocalizationModule } from '@bootkit/ng0/localization';\r\n\r\n@Component({\r\n selector: 'ng0-confirmation',\r\n exportAs: 'ng0Confirmation',\r\n templateUrl: 'confirmation.component.html',\r\n styleUrls: ['confirmation.component.scss'],\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n DialogModule,\r\n LocalizationModule,\r\n ],\r\n})\r\nexport class ConfirmationComponent implements OnInit {\r\n confirmationRef!: ConfirmationRef;\r\n _config?: ConfirmationConfig;\r\n _clicked = false;\r\n\r\n constructor() {\r\n }\r\n\r\n _onClick(result: boolean) {\r\n this._clicked = true;\r\n if (result) {\r\n this.confirmationRef.confirm();\r\n } else {\r\n this.confirmationRef.cancel();\r\n }\r\n\r\n if (this._config?.autoClose == null || this._config?.autoClose === true) {\r\n this.confirmationRef.close();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.confirmationRef.configChanged.subscribe(x => this._config = x);\r\n // var addClass = (c: string) => this._renderer.addClass(this._element.nativeElement, c);\r\n\r\n // ['card', 'show'].forEach(c => addClass(c));\r\n // if (this.config?.color) {\r\n // addClass('text-bg-' + this.config?.color);\r\n // }\r\n }\r\n}\r\n","<div class=\"modal d-block\" tabindex=\"-1\">\r\n <div class=\"modal-dialog\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\">{{_config?.title ?? 'warning' | ng0Translate }}</h5>\r\n </div>\r\n\r\n <div class=\"modal-body\">\r\n {{ _config?.message ?? 'areYouSure' | ng0Translate }}\r\n </div>\r\n\r\n <div class=\"modal-footer\">\r\n <div>\r\n <button type=\"button\" class=\"btn btn-success me-1\" aria-label=\"Confirm\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(true)\">\r\n {{'ok' | ng0Translate}}\r\n </button>\r\n\r\n <button type=\"button\" class=\"btn btn-secondary\" aria-label=\"Close\" [disabled]=\"_clicked\"\r\n (click)=\"_onClick(false)\">\r\n {{'cancel' | ng0Translate}}\r\n </button>\r\n </div>\r\n\r\n <div class=\"ms-auto\">\r\n <div class=\"spinner-border text-success\" role=\"status\" *ngIf=\"_config?.icon == 'loading'\">\r\n <span class=\"visually-hidden\">Processing</span>\r\n </div>\r\n\r\n <svg *ngIf=\"_config?.icon == 'check'\" xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'\r\n width=\"32\" height=\"32\">\r\n <path fill='#0493A8'\r\n d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z' />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { DialogRef } from \"@angular/cdk/dialog\";\r\nimport { BehaviorSubject, Subject } from \"rxjs\";\r\n\r\nexport interface ConfirmationConfig {\r\n message?: string;\r\n title?: string;\r\n // color?: BootstrapColor,\r\n icon?: 'loading' | 'check';\r\n /** automaticaly close confirmation after confirmation/cancelation. default is true */\r\n autoClose?: boolean;\r\n}\r\n\r\nexport class ConfirmationRef {\r\n private _configChangeSubject = new Subject<ConfirmationConfig>();\r\n public configChanged = this._configChangeSubject.asObservable();\r\n\r\n private _confirmSubject = new Subject();\r\n public confirmed = this._confirmSubject.asObservable();\r\n\r\n private _cancelSubject = new Subject();\r\n public canceled = this._cancelSubject.asObservable();\r\n\r\n constructor(private _dialogRef: DialogRef<any, any>, private _config: ConfirmationConfig) {\r\n }\r\n\r\n confirm() {\r\n this._confirmSubject.next(undefined);\r\n }\r\n\r\n cancel() {\r\n this._cancelSubject.next(undefined);\r\n }\r\n\r\n close() {\r\n this._dialogRef.close();\r\n }\r\n\r\n update(config: ConfirmationConfig) {\r\n for (const key in config as any) {\r\n if (Object.prototype.hasOwnProperty.call(config, key)) {\r\n const element = (config as any)[key];\r\n if(element !== undefined) {\r\n (this._config as any)[key] = element;\r\n }\r\n }\r\n }\r\n\r\n this._configChangeSubject.next(this._config);\r\n }\r\n}\r\n","import { Dialog } from '@angular/cdk/dialog';\r\nimport { Injectable } from '@angular/core';\r\nimport { ConfirmationComponent } from './confirmation.component';\r\nimport { ConfirmationConfig, ConfirmationRef } from './types';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfirmationService {\r\n constructor(private dialog: Dialog) { }\r\n\r\n open(config: ConfirmationConfig = {}): ConfirmationRef {\r\n var dlgRef = this.dialog.open(ConfirmationComponent, {\r\n disableClose: false,\r\n });\r\n\r\n var componentRef = dlgRef.componentInstance!;\r\n componentRef.confirmationRef = new ConfirmationRef(dlgRef, config);\r\n return componentRef.confirmationRef;\r\n }\r\n}\r\n\r\n","import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';\r\nimport { ConfirmationService } from './confirmation.service';\r\nimport { ConfirmationConfig, ConfirmationRef } from './types';\r\n\r\n@Directive({\r\n selector: '[ng0Confirmation]',\r\n exportAs: 'ng0Confirmation',\r\n standalone: true\r\n})\r\nexport class ConfirmationDirective {\r\n @Input() config?: ConfirmationConfig;\r\n @Output() confirm = new EventEmitter<ConfirmationRef>();\r\n @Output() cancel = new EventEmitter<ConfirmationRef>();\r\n\r\n constructor(private confirmationService: ConfirmationService) {\r\n }\r\n\r\n @HostListener('click') private _onClick() {\r\n var ref = this.confirmationService.open(this.config);\r\n ref.confirmed.subscribe(x => this.confirm.emit(ref));\r\n ref.canceled.subscribe(x => this.cancel.emit(ref));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { ConfirmationComponent } from './confirmation.component';\r\nimport { ConfirmationDirective } from './confirmation.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n ConfirmationComponent,\r\n ConfirmationDirective\r\n ],\r\n exports: [\r\n ConfirmationComponent,\r\n ConfirmationDirective\r\n ]\r\n})\r\nexport class ConfirmationModule {\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i1.ConfirmationService"],"mappings":"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"}
@@ -0,0 +1,302 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, input, booleanAttribute, HostListener, inject, Renderer2, ElementRef, model, computed, ViewChild, ContentChild, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i1$2 from '@angular/router';
6
+ import { RouterModule } from '@angular/router';
7
+ import * as i1$1 from '@angular/cdk/overlay';
8
+ import { OverlayModule } from '@angular/cdk/overlay';
9
+
10
+ class DropdownDividerComponent {
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownDividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: DropdownDividerComponent, isStandalone: true, selector: "ng0-dropdown-divider", exportAs: ["ng0DropdownDivider"], ngImport: i0, template: `<hr class="dropdown-divider">`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownDividerComponent, decorators: [{
15
+ type: Component,
16
+ args: [{
17
+ selector: 'ng0-dropdown-divider',
18
+ exportAs: 'ng0DropdownDivider',
19
+ standalone: true,
20
+ changeDetection: ChangeDetectionStrategy.OnPush,
21
+ imports: [
22
+ CommonModule,
23
+ ],
24
+ template: `<hr class="dropdown-divider">`,
25
+ }]
26
+ }] });
27
+
28
+ /**
29
+ * An item within a dropdown menu.
30
+ */
31
+ class DropdownItemComponent {
32
+ /**
33
+ * The CSS classes to apply to the dropdown item.
34
+ * */
35
+ cssClass = input(...(ngDevMode ? [undefined, { debugName: "cssClass" }] : []));
36
+ /**
37
+ * Whether the dropdown item is disabled.
38
+ */
39
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
40
+ _onClick(e) {
41
+ if (this.disabled()) {
42
+ e.stopImmediatePropagation();
43
+ e.preventDefault();
44
+ }
45
+ }
46
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.9", type: DropdownItemComponent, isStandalone: true, selector: "ng0-dropdown-item", inputs: { cssClass: { classPropertyName: "cssClass", publicName: "cssClass", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "_onClick($event)" } }, exportAs: ["ng0DropdownItem"], ngImport: i0, template: "<button class=\"dropdown-item\" [ngClass]=\"cssClass()\" [class.disabled]=\"disabled()\" [attr.aria-disabled]=\"disabled()\">\r\n <ng-content></ng-content>\r\n</button>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: RouterModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ }
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownItemComponent, decorators: [{
50
+ type: Component,
51
+ args: [{ selector: 'ng0-dropdown-item', exportAs: 'ng0DropdownItem', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
52
+ CommonModule,
53
+ RouterModule
54
+ ], template: "<button class=\"dropdown-item\" [ngClass]=\"cssClass()\" [class.disabled]=\"disabled()\" [attr.aria-disabled]=\"disabled()\">\r\n <ng-content></ng-content>\r\n</button>" }]
55
+ }], propDecorators: { cssClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "cssClass", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], _onClick: [{
56
+ type: HostListener,
57
+ args: ['click', ['$event']]
58
+ }] } });
59
+
60
+ class DropdownMenuComponent {
61
+ _renderer = inject(Renderer2);
62
+ _dropdown = inject(DropdownComponent);
63
+ elementRef = inject(ElementRef);
64
+ constructor() {
65
+ this._renderer.addClass(this.elementRef.nativeElement, 'dropdown-menu');
66
+ }
67
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
68
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: DropdownMenuComponent, isStandalone: true, selector: "ng0-dropdown-menu", exportAs: ["ng0Dropdownmenu"], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:block;position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownMenuComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'ng0-dropdown-menu', exportAs: 'ng0Dropdownmenu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
73
+ CommonModule,
74
+ ], template: `<ng-content></ng-content>`, styles: [":host{display:block;position:relative}\n"] }]
75
+ }], ctorParameters: () => [] });
76
+
77
+ class DropdownComponent {
78
+ // @ContentChildren(DropdownItemComponent) private _items!: QueryList<DropdownItemComponent>;
79
+ _dropdownMenu;
80
+ _mainButton;
81
+ _splitButton;
82
+ // protected _scrollStrategy!: ScrollStrategy;
83
+ _el = inject(ElementRef);
84
+ _renderer = inject(Renderer2);
85
+ /**
86
+ * The placement of the dropdown menu in relation to the dropdown toggle.
87
+ */
88
+ placement = input('bottom', ...(ngDevMode ? [{ debugName: "placement" }] : []));
89
+ /**
90
+ * The CSS classes to apply to the dropdown toggle button.
91
+ * @default 'btn btn-primary'
92
+ */
93
+ cssClass = input('btn btn-primary', ...(ngDevMode ? [{ debugName: "cssClass" }] : []));
94
+ /**
95
+ * The CSS classes to apply to the dropdown split button.
96
+ * @default 'btn btn-primary'
97
+ */
98
+ splitCssClass = input('btn btn-primary', ...(ngDevMode ? [{ debugName: "splitCssClass" }] : []));
99
+ /**
100
+ * Indicates whether the dropdown is open or closed.
101
+ * @default false
102
+ */
103
+ open = model(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
104
+ /**
105
+ * Indicates whether the dropdown is a split button.
106
+ * A split button dropdown has a separate toggle button.
107
+ * @default false
108
+ */
109
+ split = input(false, ...(ngDevMode ? [{ debugName: "split", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
110
+ /**
111
+ * Indicates whether the dropdown has an automatic close behavior.
112
+ * @default 'default'
113
+ */
114
+ autoClose = input('default', ...(ngDevMode ? [{ debugName: "autoClose" }] : []));
115
+ /**
116
+ * Dropdown size
117
+ * @default 'default'
118
+ */
119
+ size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : []));
120
+ _directionCssClass = computed(() => {
121
+ switch (this.placement()) {
122
+ case 'top':
123
+ return 'dropup';
124
+ case 'start':
125
+ return 'dropstart';
126
+ case 'end':
127
+ return 'dropend';
128
+ case 'bottom':
129
+ default:
130
+ return undefined;
131
+ }
132
+ }, ...(ngDevMode ? [{ debugName: "_directionCssClass" }] : []));
133
+ constructor() {
134
+ this._renderer.addClass(this._el.nativeElement, 'btn-group');
135
+ // this._scrollStrategy = this._overlay.scrollStrategies.block();
136
+ }
137
+ /**
138
+ * Toggle the dropdown open or closed.
139
+ */
140
+ toggle() {
141
+ this.open.set(!this.open());
142
+ }
143
+ _onDocumentClick(e) {
144
+ const splitButtonClicked = e.target === this._splitButton?.nativeElement;
145
+ const mainButtonClicked = e.target === this._mainButton?.nativeElement;
146
+ const toggleClicked = this.split() ? splitButtonClicked : mainButtonClicked;
147
+ const dropdownClicked = splitButtonClicked || mainButtonClicked;
148
+ const menuClicked = this._dropdownMenu.elementRef.nativeElement.contains(e.target);
149
+ const outsideClicked = !dropdownClicked && !menuClicked;
150
+ if (this.open()) {
151
+ if (toggleClicked) {
152
+ this.open.set(false);
153
+ return;
154
+ }
155
+ switch (this.autoClose()) {
156
+ case 'default':
157
+ this.open.set(false);
158
+ break;
159
+ case 'outside':
160
+ if (outsideClicked || mainButtonClicked) {
161
+ this.open.set(false);
162
+ }
163
+ break;
164
+ case 'inside':
165
+ if (menuClicked) {
166
+ this.open.set(false);
167
+ }
168
+ break;
169
+ case 'manual':
170
+ break;
171
+ }
172
+ }
173
+ else {
174
+ if (toggleClicked) {
175
+ this.open.set(true);
176
+ }
177
+ }
178
+ }
179
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
180
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.9", type: DropdownComponent, isStandalone: true, selector: "ng0-dropdown", inputs: { placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, cssClass: { classPropertyName: "cssClass", publicName: "cssClass", isSignal: true, isRequired: false, transformFunction: null }, splitCssClass: { classPropertyName: "splitCssClass", publicName: "splitCssClass", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, split: { classPropertyName: "split", publicName: "split", isSignal: true, isRequired: false, transformFunction: null }, autoClose: { classPropertyName: "autoClose", publicName: "autoClose", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange" }, host: { listeners: { "document:click": "_onDocumentClick($event)" }, properties: { "class": "_directionCssClass()" } }, queries: [{ propertyName: "_dropdownMenu", first: true, predicate: DropdownMenuComponent, descendants: true }], viewQueries: [{ propertyName: "_mainButton", first: true, predicate: ["mainButton"], descendants: true }, { propertyName: "_splitButton", first: true, predicate: ["splitButton"], descendants: true }], exportAs: ["ng0Dropdown"], ngImport: i0, template: "<button #mainButton\r\n [class]=\"cssClass()\"\r\n [class.dropdown-toggle]=\"!split()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n type=\"button\">\r\n <ng-content></ng-content>\r\n</button>\r\n\r\n@if(split()) {\r\n<button #splitButton\r\n type=\"button\"\r\n [class]=\"splitCssClass()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n class=\"dropdown-toggle dropdown-toggle-split\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n</button>\r\n}\r\n\r\n<ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayOrigin]=\"_el.nativeElement\"\r\n [cdkConnectedOverlayOpen]=\"open()\"\r\n [cdkConnectedOverlayPush]=\"false\"\r\n [cdkConnectedOverlayFlexibleDimensions]=\"true\">\r\n <ng-content select=\"ng0-dropdown-menu\"></ng-content>\r\n</ng-template>\r\n\r\n<style>\r\n :host {\r\n display: inline-block;\r\n }\r\n</style>", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
181
+ }
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownComponent, decorators: [{
183
+ type: Component,
184
+ args: [{ selector: 'ng0-dropdown', exportAs: 'ng0Dropdown', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
185
+ CommonModule,
186
+ OverlayModule,
187
+ ], host: {
188
+ '[class]': '_directionCssClass()',
189
+ }, template: "<button #mainButton\r\n [class]=\"cssClass()\"\r\n [class.dropdown-toggle]=\"!split()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n type=\"button\">\r\n <ng-content></ng-content>\r\n</button>\r\n\r\n@if(split()) {\r\n<button #splitButton\r\n type=\"button\"\r\n [class]=\"splitCssClass()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n class=\"dropdown-toggle dropdown-toggle-split\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n</button>\r\n}\r\n\r\n<ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayOrigin]=\"_el.nativeElement\"\r\n [cdkConnectedOverlayOpen]=\"open()\"\r\n [cdkConnectedOverlayPush]=\"false\"\r\n [cdkConnectedOverlayFlexibleDimensions]=\"true\">\r\n <ng-content select=\"ng0-dropdown-menu\"></ng-content>\r\n</ng-template>\r\n\r\n<style>\r\n :host {\r\n display: inline-block;\r\n }\r\n</style>" }]
190
+ }], ctorParameters: () => [], propDecorators: { _dropdownMenu: [{
191
+ type: ContentChild,
192
+ args: [DropdownMenuComponent]
193
+ }], _mainButton: [{
194
+ type: ViewChild,
195
+ args: ['mainButton']
196
+ }], _splitButton: [{
197
+ type: ViewChild,
198
+ args: ['splitButton']
199
+ }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], cssClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "cssClass", required: false }] }], splitCssClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "splitCssClass", required: false }] }], open: [{ type: i0.Input, args: [{ isSignal: true, alias: "open", required: false }] }, { type: i0.Output, args: ["openChange"] }], split: [{ type: i0.Input, args: [{ isSignal: true, alias: "split", required: false }] }], autoClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoClose", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], _onDocumentClick: [{
200
+ type: HostListener,
201
+ args: ['document:click', ['$event']]
202
+ }] } });
203
+
204
+ class DropdownHeaderComponent {
205
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
206
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.9", type: DropdownHeaderComponent, isStandalone: true, selector: "ng0-dropdown-header", exportAs: ["ng0DropdownItem"], ngImport: i0, template: `<h6 class="dropdown-header"><ng-content></ng-content></h6>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
207
+ }
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownHeaderComponent, decorators: [{
209
+ type: Component,
210
+ args: [{
211
+ selector: 'ng0-dropdown-header',
212
+ exportAs: 'ng0DropdownItem',
213
+ standalone: true,
214
+ changeDetection: ChangeDetectionStrategy.OnPush,
215
+ template: `<h6 class="dropdown-header"><ng-content></ng-content></h6>`,
216
+ }]
217
+ }] });
218
+
219
+ /**
220
+ * A link item within a dropdown menu.
221
+ * This component is used to create a navigable link inside a dropdown.
222
+ */
223
+ class DropdownLinkComponent {
224
+ /**
225
+ * The link or URL to navigate to when the dropdown item is clicked.
226
+ */
227
+ link = input.required(...(ngDevMode ? [{ debugName: "link" }] : []));
228
+ /**
229
+ * The router link active class to apply when the link is active.
230
+ */
231
+ active = input('', ...(ngDevMode ? [{ debugName: "active" }] : []));
232
+ /**
233
+ * Specifies where to open the linked document.
234
+ */
235
+ target = input(undefined, ...(ngDevMode ? [{ debugName: "target" }] : []));
236
+ /**
237
+ * Whether the dropdown link is disabled.
238
+ */
239
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
240
+ _onClick(e) {
241
+ if (this.disabled()) {
242
+ e.preventDefault();
243
+ e.stopPropagation();
244
+ }
245
+ }
246
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
247
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.9", type: DropdownLinkComponent, isStandalone: true, selector: "ng0-dropdown-link", inputs: { link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: true, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "_onClick($event)" } }, exportAs: ["ng0DropdownLink"], ngImport: i0, template: "<a class=\"dropdown-item\" [routerLink]=\"link()\" [target]=\"target()\" [routerLinkActive]=\"active()\" [class.disabled]=\"disabled()\" [attr.aria-disabled]=\"disabled()\">\r\n <ng-content></ng-content>\r\n</a>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
248
+ }
249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownLinkComponent, decorators: [{
250
+ type: Component,
251
+ args: [{ selector: 'ng0-dropdown-link', exportAs: 'ng0DropdownLink', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
252
+ CommonModule,
253
+ RouterModule
254
+ ], template: "<a class=\"dropdown-item\" [routerLink]=\"link()\" [target]=\"target()\" [routerLinkActive]=\"active()\" [class.disabled]=\"disabled()\" [attr.aria-disabled]=\"disabled()\">\r\n <ng-content></ng-content>\r\n</a>" }]
255
+ }], propDecorators: { link: [{ type: i0.Input, args: [{ isSignal: true, alias: "link", required: true }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }], target: [{ type: i0.Input, args: [{ isSignal: true, alias: "target", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], _onClick: [{
256
+ type: HostListener,
257
+ args: ['click', ['$event']]
258
+ }] } });
259
+
260
+ const Items = [
261
+ DropdownComponent,
262
+ DropdownMenuComponent,
263
+ DropdownItemComponent,
264
+ DropdownLinkComponent,
265
+ DropdownHeaderComponent,
266
+ DropdownDividerComponent
267
+ ];
268
+ class DropdownModule {
269
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
270
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: DropdownModule, imports: [DropdownComponent,
271
+ DropdownMenuComponent,
272
+ DropdownItemComponent,
273
+ DropdownLinkComponent,
274
+ DropdownHeaderComponent,
275
+ DropdownDividerComponent], exports: [DropdownComponent,
276
+ DropdownMenuComponent,
277
+ DropdownItemComponent,
278
+ DropdownLinkComponent,
279
+ DropdownHeaderComponent,
280
+ DropdownDividerComponent] });
281
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownModule, imports: [DropdownComponent,
282
+ DropdownMenuComponent,
283
+ DropdownItemComponent,
284
+ DropdownLinkComponent,
285
+ DropdownDividerComponent] });
286
+ }
287
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: DropdownModule, decorators: [{
288
+ type: NgModule,
289
+ args: [{
290
+ imports: Items,
291
+ exports: Items
292
+ }]
293
+ }] });
294
+
295
+ // export type DropdownToggleTriggerMode = 'click' | 'hover' | 'focus';
296
+
297
+ /**
298
+ * Generated bundle index. Do not edit.
299
+ */
300
+
301
+ export { DropdownComponent, DropdownDividerComponent, DropdownHeaderComponent, DropdownItemComponent, DropdownLinkComponent, DropdownMenuComponent, DropdownModule };
302
+ //# sourceMappingURL=bootkit-ng0-components-dropdown.mjs.map