@bootkit/ng0 0.0.0-alpha.4 → 0.0.0-alpha.40

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 (100) hide show
  1. package/common/index.d.ts +263 -7
  2. package/components/accordion/index.d.ts +13 -3
  3. package/components/backdrop/index.d.ts +12 -0
  4. package/components/dropdown/index.d.ts +156 -0
  5. package/components/form-field/index.d.ts +24 -41
  6. package/components/list/index.d.ts +260 -0
  7. package/components/modal/index.d.ts +21 -3
  8. package/components/nav/index.d.ts +23 -19
  9. package/components/offcanvas/index.d.ts +13 -5
  10. package/components/pagination/index.d.ts +34 -8
  11. package/components/select/index.d.ts +160 -0
  12. package/components/sidenav/index.d.ts +125 -0
  13. package/components/table/index.d.ts +191 -59
  14. package/components/vertical-menu/index.d.ts +61 -0
  15. package/data/index.d.ts +103 -38
  16. package/date/index.d.ts +34 -0
  17. package/fesm2022/bootkit-ng0-common.mjs +289 -12
  18. package/fesm2022/bootkit-ng0-common.mjs.map +1 -1
  19. package/fesm2022/bootkit-ng0-components-accordion.mjs +33 -26
  20. package/fesm2022/bootkit-ng0-components-accordion.mjs.map +1 -1
  21. package/fesm2022/bootkit-ng0-components-backdrop.mjs +46 -0
  22. package/fesm2022/bootkit-ng0-components-backdrop.mjs.map +1 -0
  23. package/fesm2022/bootkit-ng0-components-button.mjs +12 -12
  24. package/fesm2022/bootkit-ng0-components-button.mjs.map +1 -1
  25. package/fesm2022/bootkit-ng0-components-card.mjs +12 -12
  26. package/fesm2022/bootkit-ng0-components-card.mjs.map +1 -1
  27. package/fesm2022/bootkit-ng0-components-code.mjs +10 -10
  28. package/fesm2022/bootkit-ng0-components-code.mjs.map +1 -1
  29. package/fesm2022/bootkit-ng0-components-collapse.mjs +16 -16
  30. package/fesm2022/bootkit-ng0-components-collapse.mjs.map +1 -1
  31. package/fesm2022/bootkit-ng0-components-confirmation.mjs +13 -13
  32. package/fesm2022/bootkit-ng0-components-confirmation.mjs.map +1 -1
  33. package/fesm2022/bootkit-ng0-components-dropdown.mjs +308 -0
  34. package/fesm2022/bootkit-ng0-components-dropdown.mjs.map +1 -0
  35. package/fesm2022/bootkit-ng0-components-form-field.mjs +62 -84
  36. package/fesm2022/bootkit-ng0-components-form-field.mjs.map +1 -1
  37. package/fesm2022/bootkit-ng0-components-list.mjs +564 -0
  38. package/fesm2022/bootkit-ng0-components-list.mjs.map +1 -0
  39. package/fesm2022/bootkit-ng0-components-modal.mjs +41 -24
  40. package/fesm2022/bootkit-ng0-components-modal.mjs.map +1 -1
  41. package/fesm2022/bootkit-ng0-components-nav.mjs +59 -60
  42. package/fesm2022/bootkit-ng0-components-nav.mjs.map +1 -1
  43. package/fesm2022/bootkit-ng0-components-offcanvas.mjs +20 -13
  44. package/fesm2022/bootkit-ng0-components-offcanvas.mjs.map +1 -1
  45. package/fesm2022/bootkit-ng0-components-overlay.mjs.map +1 -1
  46. package/fesm2022/bootkit-ng0-components-pagination.mjs +59 -24
  47. package/fesm2022/bootkit-ng0-components-pagination.mjs.map +1 -1
  48. package/fesm2022/bootkit-ng0-components-popover.mjs +11 -11
  49. package/fesm2022/bootkit-ng0-components-popover.mjs.map +1 -1
  50. package/fesm2022/bootkit-ng0-components-select.mjs +447 -0
  51. package/fesm2022/bootkit-ng0-components-select.mjs.map +1 -0
  52. package/fesm2022/bootkit-ng0-components-sidenav.mjs +290 -0
  53. package/fesm2022/bootkit-ng0-components-sidenav.mjs.map +1 -0
  54. package/fesm2022/bootkit-ng0-components-stepper.mjs +14 -14
  55. package/fesm2022/bootkit-ng0-components-stepper.mjs.map +1 -1
  56. package/fesm2022/bootkit-ng0-components-table.mjs +303 -159
  57. package/fesm2022/bootkit-ng0-components-table.mjs.map +1 -1
  58. package/fesm2022/bootkit-ng0-components-toast.mjs +6 -6
  59. package/fesm2022/bootkit-ng0-components-toast.mjs.map +1 -1
  60. package/fesm2022/bootkit-ng0-components-tooltip.mjs +9 -9
  61. package/fesm2022/bootkit-ng0-components-tooltip.mjs.map +1 -1
  62. package/fesm2022/bootkit-ng0-components-vertical-menu.mjs +161 -0
  63. package/fesm2022/bootkit-ng0-components-vertical-menu.mjs.map +1 -0
  64. package/fesm2022/bootkit-ng0-data.mjs +152 -39
  65. package/fesm2022/bootkit-ng0-data.mjs.map +1 -1
  66. package/fesm2022/bootkit-ng0-date.mjs +50 -0
  67. package/fesm2022/bootkit-ng0-date.mjs.map +1 -0
  68. package/fesm2022/bootkit-ng0-file.mjs.map +1 -1
  69. package/fesm2022/bootkit-ng0-form.mjs +336 -264
  70. package/fesm2022/bootkit-ng0-form.mjs.map +1 -1
  71. package/fesm2022/bootkit-ng0-http.mjs +40 -5
  72. package/fesm2022/bootkit-ng0-http.mjs.map +1 -1
  73. package/fesm2022/bootkit-ng0-layouts-layout1.mjs +317 -0
  74. package/fesm2022/bootkit-ng0-layouts-layout1.mjs.map +1 -0
  75. package/fesm2022/bootkit-ng0-localization-locales.mjs +101 -0
  76. package/fesm2022/bootkit-ng0-localization-locales.mjs.map +1 -0
  77. package/fesm2022/bootkit-ng0-localization.mjs +431 -105
  78. package/fesm2022/bootkit-ng0-localization.mjs.map +1 -1
  79. package/fesm2022/bootkit-ng0-platform-browser.mjs +179 -0
  80. package/fesm2022/bootkit-ng0-platform-browser.mjs.map +1 -0
  81. package/fesm2022/bootkit-ng0-routing.mjs +80 -0
  82. package/fesm2022/bootkit-ng0-routing.mjs.map +1 -0
  83. package/fesm2022/bootkit-ng0-script.mjs +3 -3
  84. package/fesm2022/bootkit-ng0-script.mjs.map +1 -1
  85. package/fesm2022/bootkit-ng0-security.mjs +16 -16
  86. package/fesm2022/bootkit-ng0-security.mjs.map +1 -1
  87. package/fesm2022/bootkit-ng0-utils.mjs +75 -0
  88. package/fesm2022/bootkit-ng0-utils.mjs.map +1 -0
  89. package/fesm2022/bootkit-ng0.mjs +2 -2
  90. package/fesm2022/bootkit-ng0.mjs.map +1 -1
  91. package/form/index.d.ts +94 -62
  92. package/http/index.d.ts +35 -4
  93. package/index.d.ts +2 -2
  94. package/layouts/layout1/index.d.ts +201 -0
  95. package/localization/index.d.ts +231 -42
  96. package/localization/locales/index.d.ts +7 -0
  97. package/package.json +66 -18
  98. package/platform/browser/index.d.ts +88 -0
  99. package/routing/index.d.ts +124 -0
  100. package/utils/index.d.ts +42 -0
@@ -14,11 +14,11 @@ class CollapseDirective {
14
14
  * Indicates whether the host element is collapsed.
15
15
  * @input
16
16
  */
17
- collapsed = input(false);
17
+ collapsed = input(false, ...(ngDevMode ? [{ debugName: "collapsed" }] : []));
18
18
  /** Animation timings for collapse/expand animations.
19
19
  * @input
20
20
  */
21
- timings = input('0.2s');
21
+ timings = input('0.2s', ...(ngDevMode ? [{ debugName: "timings" }] : []));
22
22
  _player;
23
23
  _firstExecution = true;
24
24
  constructor(el, builder, renderer) {
@@ -81,17 +81,17 @@ class CollapseDirective {
81
81
  ngOnDestroy() {
82
82
  this._player?.destroy();
83
83
  }
84
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseDirective, deps: [{ token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
85
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: CollapseDirective, isStandalone: true, selector: "[ng0Collapse]", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, timings: { classPropertyName: "timings", publicName: "timings", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ng0Collapse"], ngImport: i0 });
84
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseDirective, deps: [{ token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
85
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.11", type: CollapseDirective, isStandalone: true, selector: "[ng0Collapse]", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, timings: { classPropertyName: "timings", publicName: "timings", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ng0Collapse"], ngImport: i0 });
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseDirective, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseDirective, decorators: [{
88
88
  type: Directive,
89
89
  args: [{
90
90
  selector: '[ng0Collapse]',
91
91
  exportAs: 'ng0Collapse',
92
92
  standalone: true,
93
93
  }]
94
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.AnimationBuilder }, { type: i0.Renderer2 }] });
94
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.AnimationBuilder }, { type: i0.Renderer2 }], propDecorators: { collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }], timings: [{ type: i0.Input, args: [{ isSignal: true, alias: "timings", required: false }] }] } });
95
95
 
96
96
  /**
97
97
  * A component that provides collapse and expand functionality.
@@ -101,16 +101,16 @@ class CollapseComponent {
101
101
  * Indicates whether the host element is collapsed.
102
102
  * @model
103
103
  */
104
- collapsed = model(false);
104
+ collapsed = model(false, ...(ngDevMode ? [{ debugName: "collapsed" }] : []));
105
105
  /** Animation timings for collapse/expand animations.
106
106
  * @input
107
107
  */
108
- timings = input('0.2s');
108
+ timings = input('0.2s', ...(ngDevMode ? [{ debugName: "timings" }] : []));
109
109
  get _collapseExpand() {
110
110
  return { value: this.collapsed() ? 'collapsed' : 'expanded', params: { timings: this.timings() } };
111
111
  }
112
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.6", type: CollapseComponent, isStandalone: true, selector: "ng0-collapse", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, timings: { classPropertyName: "timings", publicName: "timings", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, host: { properties: { "@collapseExpand": "this._collapseExpand" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{display:block;overflow:hidden}\n"], animations: [
112
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", type: CollapseComponent, isStandalone: true, selector: "ng0-collapse", inputs: { collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null }, timings: { classPropertyName: "timings", publicName: "timings", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, host: { properties: { "@collapseExpand": "this._collapseExpand" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{display:block;overflow:hidden}\n"], animations: [
114
114
  trigger('collapseExpand', [
115
115
  state('collapsed', style({ height: 0, opacity: 0, })),
116
116
  state('expanded', style({ height: '*', opacity: '*', })),
@@ -120,7 +120,7 @@ class CollapseComponent {
120
120
  ])
121
121
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
122
122
  }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseComponent, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseComponent, decorators: [{
124
124
  type: Component,
125
125
  args: [{ selector: 'ng0-collapse', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, animations: [
126
126
  trigger('collapseExpand', [
@@ -131,7 +131,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
131
131
  ])
132
132
  ])
133
133
  ], template: "<ng-content></ng-content>", styles: [":host{display:block;overflow:hidden}\n"] }]
134
- }], propDecorators: { _collapseExpand: [{
134
+ }], propDecorators: { collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }], timings: [{ type: i0.Input, args: [{ isSignal: true, alias: "timings", required: false }] }], _collapseExpand: [{
135
135
  type: HostBinding,
136
136
  args: ['@collapseExpand']
137
137
  }] } });
@@ -141,13 +141,13 @@ const items = [
141
141
  CollapseComponent
142
142
  ];
143
143
  class CollapseModule {
144
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
145
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: CollapseModule, imports: [CollapseDirective,
144
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
145
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: CollapseModule, imports: [CollapseDirective,
146
146
  CollapseComponent], exports: [CollapseDirective,
147
147
  CollapseComponent] });
148
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseModule });
148
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseModule });
149
149
  }
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CollapseModule, decorators: [{
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CollapseModule, decorators: [{
151
151
  type: NgModule,
152
152
  args: [{
153
153
  imports: items,
@@ -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":";;;;;AAGA;;AAEG;MAMU,iBAAiB,CAAA;AAeN,IAAA,EAAA;AAAwB,IAAA,OAAA;AAAmC,IAAA,QAAA;AAd/E;;;AAGG;AACI,IAAA,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;AAE/B;;AAEG;AACI,IAAA,OAAO,GAAG,KAAK,CAAkB,MAAM,CAAC;AAEvC,IAAA,OAAO;IACP,eAAe,GAAG,IAAI;AAE9B,IAAA,WAAA,CAAoB,EAAc,EAAU,OAAyB,EAAU,QAAmB,EAAA;QAA9E,IAAE,CAAA,EAAA,GAAF,EAAE;QAAsB,IAAO,CAAA,OAAA,GAAP,OAAO;QAA4B,IAAQ,CAAA,QAAA,GAAR,QAAQ;QACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,QAAQ,CAAC;QAEzD,MAAM,CAAC,MAAK;AACR,YAAA,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAChC,YAAA,IAAI,IAAI,CAAC,eAAe,EAAE;AACtB,gBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;gBAC5B;;AAGJ,YAAA,IAAI,SAAS;gBACT,IAAI,CAAC,SAAS,EAAE;;gBAEhB,IAAI,CAAC,OAAO,EAAE;AACtB,SAAC,CAAC;;IAGN,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;AACnB,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;;;IAItB,SAAS,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;;QAG1B,IAAI,CAAC,cAAc,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AACpC,YAAA,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;AAC5D,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,MAAK;AACtB,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;AAClB,gBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;;AAEjC,SAAC,CAAC;;IAGE,OAAO,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;;AAG1B,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,cAAc,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAChC,YAAA,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;AAChE,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,MAAK;AACtB,YAAA,IAAI,CAAC,OAAQ,CAAC,OAAO,EAAE;AACvB,YAAA,IAAI,CAAC,OAAO,GAAG,SAAS;AAC5B,SAAC,CAAC;;AAGE,IAAA,cAAc,CAAC,SAAkD,EAAA;QACrE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AAC1E,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;;IAGf,SAAS,GAAG,CAAC,GAAW,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC;IAC/E,YAAY,GAAG,CAAC,GAAW,KAAK,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC;IAE7F,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE;;uGAlFlB,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA;;;ACPD;;AAEE;MAiBW,iBAAiB,CAAA;AAC1B;;;AAGG;AACI,IAAA,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;AAE/B;;AAEG;AACI,IAAA,OAAO,GAAG,KAAK,CAAkB,MAAM,CAAC;AAE/C,IAAA,IACY,eAAe,GAAA;QACvB,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,WAAW,GAAG,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE;;uGAd7F,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtB9B,2BAAyB,EDYT,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,UAAA,EAAA;YACR,OAAO,CAAC,gBAAgB,EAAE;AACtB,gBAAA,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;AACrD,gBAAA,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC;gBACxD,UAAU,CAAC,wBAAwB,EAAE;oBACjC,OAAO,CAAC,aAAa;iBACxB;aACJ;AACJ,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAEQ,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAhB7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,cAEZ,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,MAAM,EAEnC,UAAA,EAAA;wBACR,OAAO,CAAC,gBAAgB,EAAE;AACtB,4BAAA,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;AACrD,4BAAA,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC;4BACxD,UAAU,CAAC,wBAAwB,EAAE;gCACjC,OAAO,CAAC,aAAa;6BACxB;yBACJ;AACJ,qBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA;8BAeW,eAAe,EAAA,CAAA;sBAD1B,WAAW;uBAAC,iBAAiB;;;AE9BlC,MAAM,KAAK,GAAG;IACV,iBAAiB;IACjB;CACH;MAMY,cAAc,CAAA;uGAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YARvB,iBAAiB;AACjB,YAAA,iBAAiB,aADjB,iBAAiB;YACjB,iBAAiB,CAAA,EAAA,CAAA;wGAOR,cAAc,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE;AACZ,iBAAA;;;ACZD;;AAEG;;;;"}
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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"}
@@ -34,10 +34,10 @@ class ConfirmationComponent {
34
34
  // addClass('text-bg-' + this.config?.color);
35
35
  // }
36
36
  }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", 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" }] });
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.11", 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
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationComponent, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationComponent, decorators: [{
41
41
  type: Component,
42
42
  args: [{ selector: 'ng0-confirmation', exportAs: 'ng0Confirmation', standalone: true, imports: [
43
43
  CommonModule,
@@ -94,10 +94,10 @@ class ConfirmationService {
94
94
  componentRef.confirmationRef = new ConfirmationRef(dlgRef, config);
95
95
  return componentRef.confirmationRef;
96
96
  }
97
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationService, deps: [{ token: i1$1.Dialog }], target: i0.ɵɵFactoryTarget.Injectable });
98
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationService, providedIn: 'root' });
97
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", 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.11", ngImport: i0, type: ConfirmationService, providedIn: 'root' });
99
99
  }
100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationService, decorators: [{
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationService, decorators: [{
101
101
  type: Injectable,
102
102
  args: [{
103
103
  providedIn: 'root'
@@ -117,10 +117,10 @@ class ConfirmationDirective {
117
117
  ref.confirmed.subscribe(x => this.confirm.emit(ref));
118
118
  ref.canceled.subscribe(x => this.cancel.emit(ref));
119
119
  }
120
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationDirective, deps: [{ token: ConfirmationService }], target: i0.ɵɵFactoryTarget.Directive });
121
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.6", type: ConfirmationDirective, isStandalone: true, selector: "[ng0Confirmation]", inputs: { config: "config" }, outputs: { confirm: "confirm", cancel: "cancel" }, host: { listeners: { "click": "_onClick()" } }, exportAs: ["ng0Confirmation"], ngImport: i0 });
120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationDirective, deps: [{ token: ConfirmationService }], target: i0.ɵɵFactoryTarget.Directive });
121
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.11", type: ConfirmationDirective, isStandalone: true, selector: "[ng0Confirmation]", inputs: { config: "config" }, outputs: { confirm: "confirm", cancel: "cancel" }, host: { listeners: { "click": "_onClick()" } }, exportAs: ["ng0Confirmation"], ngImport: i0 });
122
122
  }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationDirective, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationDirective, decorators: [{
124
124
  type: Directive,
125
125
  args: [{
126
126
  selector: '[ng0Confirmation]',
@@ -139,13 +139,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
139
139
  }] } });
140
140
 
141
141
  class ConfirmationModule {
142
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
143
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent,
142
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
143
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent,
144
144
  ConfirmationDirective], exports: [ConfirmationComponent,
145
145
  ConfirmationDirective] });
146
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent] });
146
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationModule, imports: [ConfirmationComponent] });
147
147
  }
148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ConfirmationModule, decorators: [{
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ConfirmationModule, decorators: [{
149
149
  type: NgModule,
150
150
  args: [{
151
151
  imports: [
@@ -1 +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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"}
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,308 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, input, booleanAttribute, HostListener, inject, Renderer2, ElementRef, model, EventEmitter, Output, 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.11", ngImport: i0, type: DropdownDividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.11", 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.11", 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.11", ngImport: i0, type: DropdownItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", 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.11", 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.11", ngImport: i0, type: DropdownMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
68
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.11", 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.11", 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
+ /**
78
+ * Dropdown component
79
+ */
80
+ class DropdownComponent {
81
+ _dropdownMenu;
82
+ _mainButton;
83
+ _splitButton;
84
+ _el = inject(ElementRef);
85
+ _renderer = inject(Renderer2);
86
+ // @ContentChildren(DropdownItemComponent) private _items!: QueryList<DropdownItemComponent>;
87
+ // protected _scrollStrategy!: ScrollStrategy;
88
+ /**
89
+ * The placement of the dropdown menu in relation to the dropdown toggle.
90
+ */
91
+ placement = input('bottom', ...(ngDevMode ? [{ debugName: "placement" }] : []));
92
+ /**
93
+ * Indicates whether the dropdown should use the default Bootstrap styles.
94
+ * This will apply the 'btn-group' class to the dropdown.
95
+ * @default true
96
+ */
97
+ defaultStyle = input(true, ...(ngDevMode ? [{ debugName: "defaultStyle" }] : []));
98
+ /**
99
+ * The CSS classes to apply to the dropdown toggle button.
100
+ * @default 'btn btn-primary'
101
+ */
102
+ toggleCss = input('btn btn-primary', ...(ngDevMode ? [{ debugName: "toggleCss" }] : []));
103
+ /**
104
+ * The CSS classes to apply to the dropdown split button.
105
+ * @default 'btn btn-primary'
106
+ */
107
+ splitCss = input('btn btn-primary', ...(ngDevMode ? [{ debugName: "splitCss" }] : []));
108
+ /**
109
+ * Indicates whether the dropdown is open or closed.
110
+ * @default false
111
+ */
112
+ open = model(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
113
+ /**
114
+ * Indicates whether the dropdown is a split button.
115
+ * A split button dropdown has a separate toggle button.
116
+ * @default false
117
+ */
118
+ split = input(false, ...(ngDevMode ? [{ debugName: "split", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
119
+ /**
120
+ * Indicates whether the dropdown has an automatic close behavior.
121
+ * @default 'default'
122
+ */
123
+ autoClose = input('default', ...(ngDevMode ? [{ debugName: "autoClose" }] : []));
124
+ /**
125
+ * Dropdown size
126
+ * @default 'default'
127
+ */
128
+ size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : []));
129
+ /**
130
+ * Indicates whether the dropdown is disabled.
131
+ */
132
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
133
+ /**
134
+ * Emits when the dropdown toggle button is clicked.
135
+ */
136
+ toggleClick = new EventEmitter();
137
+ constructor() {
138
+ // this._renderer.addClass(this._el.nativeElement, 'btn-group');
139
+ // this._scrollStrategy = this._overlay.scrollStrategies.block();
140
+ }
141
+ /**
142
+ * Toggle the dropdown open or closed.
143
+ */
144
+ toggle() {
145
+ this.open.set(!this.open());
146
+ }
147
+ _onDocumentClick(e) {
148
+ const splitButtonClicked = e.target === this._splitButton?.nativeElement;
149
+ const mainButtonClicked = e.target === this._mainButton?.nativeElement;
150
+ const toggleClicked = this.split() ? splitButtonClicked : mainButtonClicked;
151
+ const dropdownClicked = splitButtonClicked || mainButtonClicked;
152
+ const menuClicked = this._dropdownMenu.elementRef.nativeElement.contains(e.target);
153
+ const outsideClicked = !dropdownClicked && !menuClicked;
154
+ if (this.open()) {
155
+ if (toggleClicked) {
156
+ this.open.set(false);
157
+ return;
158
+ }
159
+ switch (this.autoClose()) {
160
+ case 'default':
161
+ this.open.set(false);
162
+ break;
163
+ case 'outside':
164
+ if (outsideClicked || mainButtonClicked) {
165
+ this.open.set(false);
166
+ }
167
+ break;
168
+ case 'inside':
169
+ if (menuClicked) {
170
+ this.open.set(false);
171
+ }
172
+ break;
173
+ case 'manual':
174
+ break;
175
+ }
176
+ }
177
+ else {
178
+ if (toggleClicked) {
179
+ this.open.set(true);
180
+ }
181
+ }
182
+ }
183
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
184
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.11", type: DropdownComponent, isStandalone: true, selector: "ng0-dropdown", inputs: { placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, defaultStyle: { classPropertyName: "defaultStyle", publicName: "defaultStyle", isSignal: true, isRequired: false, transformFunction: null }, toggleCss: { classPropertyName: "toggleCss", publicName: "toggleCss", isSignal: true, isRequired: false, transformFunction: null }, splitCss: { classPropertyName: "splitCss", publicName: "splitCss", 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 }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange", toggleClick: "toggleClick" }, host: { listeners: { "document:click": "_onDocumentClick($event)" }, properties: { "class.dropup": "placement() === \"top\"", "class.dropstart": "placement() === \"start\"", "class.dropend": "placement() === \"end\"", "class.btn-group": "defaultStyle()" } }, 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]=\"toggleCss()\"\r\n [class.dropdown-toggle]=\"!split()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n [disabled]=\"disabled()\"\r\n type=\"button\"\r\n (click)=\"toggleClick.emit($event)\">\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]=\"splitCss()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n class=\"dropdown-toggle dropdown-toggle-split\"\r\n [disabled]=\"disabled()\">\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 });
185
+ }
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownComponent, decorators: [{
187
+ type: Component,
188
+ args: [{ selector: 'ng0-dropdown', exportAs: 'ng0Dropdown', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, OverlayModule], host: {
189
+ '[class.dropup]': 'placement() === "top"',
190
+ '[class.dropstart]': 'placement() === "start"',
191
+ '[class.dropend]': 'placement() === "end"',
192
+ '[class.btn-group]': 'defaultStyle()',
193
+ }, template: "<button #mainButton\r\n [class]=\"toggleCss()\"\r\n [class.dropdown-toggle]=\"!split()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n [disabled]=\"disabled()\"\r\n type=\"button\"\r\n (click)=\"toggleClick.emit($event)\">\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]=\"splitCss()\"\r\n [class.btn-sm]=\"size() == 'small'\"\r\n [class.btn-lg]=\"size() == 'large'\"\r\n class=\"dropdown-toggle dropdown-toggle-split\"\r\n [disabled]=\"disabled()\">\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>" }]
194
+ }], ctorParameters: () => [], propDecorators: { _dropdownMenu: [{
195
+ type: ContentChild,
196
+ args: [DropdownMenuComponent]
197
+ }], _mainButton: [{
198
+ type: ViewChild,
199
+ args: ['mainButton']
200
+ }], _splitButton: [{
201
+ type: ViewChild,
202
+ args: ['splitButton']
203
+ }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "placement", required: false }] }], defaultStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultStyle", required: false }] }], toggleCss: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleCss", required: false }] }], splitCss: [{ type: i0.Input, args: [{ isSignal: true, alias: "splitCss", 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 }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], toggleClick: [{
204
+ type: Output
205
+ }], _onDocumentClick: [{
206
+ type: HostListener,
207
+ args: ['document:click', ['$event']]
208
+ }] } });
209
+
210
+ class DropdownHeaderComponent {
211
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
212
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.11", 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 });
213
+ }
214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownHeaderComponent, decorators: [{
215
+ type: Component,
216
+ args: [{
217
+ selector: 'ng0-dropdown-header',
218
+ exportAs: 'ng0DropdownItem',
219
+ standalone: true,
220
+ changeDetection: ChangeDetectionStrategy.OnPush,
221
+ template: `<h6 class="dropdown-header"><ng-content></ng-content></h6>`,
222
+ }]
223
+ }] });
224
+
225
+ /**
226
+ * A link item within a dropdown menu.
227
+ * This component is used to create a navigable link inside a dropdown.
228
+ */
229
+ class DropdownLinkComponent {
230
+ /**
231
+ * The link or URL to navigate to when the dropdown item is clicked.
232
+ */
233
+ link = input.required(...(ngDevMode ? [{ debugName: "link" }] : []));
234
+ /**
235
+ * The router link active class to apply when the link is active.
236
+ */
237
+ active = input('', ...(ngDevMode ? [{ debugName: "active" }] : []));
238
+ /**
239
+ * Specifies where to open the linked document.
240
+ */
241
+ target = input(undefined, ...(ngDevMode ? [{ debugName: "target" }] : []));
242
+ /**
243
+ * Whether the dropdown link is disabled.
244
+ */
245
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
246
+ _onClick(e) {
247
+ if (this.disabled()) {
248
+ e.preventDefault();
249
+ e.stopPropagation();
250
+ }
251
+ }
252
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
253
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", 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 });
254
+ }
255
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownLinkComponent, decorators: [{
256
+ type: Component,
257
+ args: [{ selector: 'ng0-dropdown-link', exportAs: 'ng0DropdownLink', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
258
+ CommonModule,
259
+ RouterModule
260
+ ], 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>" }]
261
+ }], 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: [{
262
+ type: HostListener,
263
+ args: ['click', ['$event']]
264
+ }] } });
265
+
266
+ const Items = [
267
+ DropdownComponent,
268
+ DropdownMenuComponent,
269
+ DropdownItemComponent,
270
+ DropdownLinkComponent,
271
+ DropdownHeaderComponent,
272
+ DropdownDividerComponent
273
+ ];
274
+ class DropdownModule {
275
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
276
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: DropdownModule, imports: [DropdownComponent,
277
+ DropdownMenuComponent,
278
+ DropdownItemComponent,
279
+ DropdownLinkComponent,
280
+ DropdownHeaderComponent,
281
+ DropdownDividerComponent], exports: [DropdownComponent,
282
+ DropdownMenuComponent,
283
+ DropdownItemComponent,
284
+ DropdownLinkComponent,
285
+ DropdownHeaderComponent,
286
+ DropdownDividerComponent] });
287
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownModule, imports: [DropdownComponent,
288
+ DropdownMenuComponent,
289
+ DropdownItemComponent,
290
+ DropdownLinkComponent,
291
+ DropdownDividerComponent] });
292
+ }
293
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: DropdownModule, decorators: [{
294
+ type: NgModule,
295
+ args: [{
296
+ imports: Items,
297
+ exports: Items
298
+ }]
299
+ }] });
300
+
301
+ // export type DropdownToggleTriggerMode = 'click' | 'hover' | 'focus';
302
+
303
+ /**
304
+ * Generated bundle index. Do not edit.
305
+ */
306
+
307
+ export { DropdownComponent, DropdownDividerComponent, DropdownHeaderComponent, DropdownItemComponent, DropdownLinkComponent, DropdownMenuComponent, DropdownModule };
308
+ //# sourceMappingURL=bootkit-ng0-components-dropdown.mjs.map