ngx-cho-components 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # NgxChoComponents
2
2
 
3
- This library provides reusable Angular components for CHO applications with comprehensive Storybook documentation.
3
+ This library provides reusable Angular components for CHO applications.
4
4
 
5
- Generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.3.0.
5
+ Generated with [Angular CLI](https://github.com/angular/angular-cli) version 19.2.26.
6
6
 
7
7
  ## Overview
8
8
 
@@ -56,21 +56,7 @@ ng generate service service-name --project ngx-cho-components
56
56
 
57
57
  > Note: Always include `--project ngx-cho-components` or the component will be added to the default project.
58
58
 
59
- ### Storybook Development
60
-
61
- This library includes Storybook for component development and documentation:
62
-
63
- ```bash
64
- # Start Storybook development server
65
- ng run ngx-cho-components:storybook
66
-
67
- # Build Storybook for deployment
68
- ng run ngx-cho-components:build-storybook
69
- ```
70
-
71
- Storybook will be available at `http://localhost:6006`
72
-
73
- ### Running Tests
59
+ ### Running Tests
74
60
 
75
61
  ```bash
76
62
  ng test ngx-cho-components
@@ -119,15 +105,7 @@ Use components in your templates:
119
105
 
120
106
  Components are framework-neutral and do not require Bootstrap. Applications should provide their own layout, dialog, and theme styling.
121
107
 
122
- ## Documentation
123
-
124
- View component documentation and examples in Storybook:
125
- 1. Run `ng run ngx-cho-components:storybook`
126
- 2. Navigate to `http://localhost:6006`
127
- 3. Browse component stories and interact with examples
128
-
129
- ## Further Help
130
-
131
- - [Angular CLI Overview and Command Reference](https://angular.io/cli)
132
- - [Storybook for Angular](https://storybook.js.org/docs/angular/get-started/introduction)
133
- - [Angular Library Development Guide](https://angular.io/guide/creating-libraries)
108
+ ## Further Help
109
+
110
+ - [Angular CLI Overview and Command Reference](https://angular.io/cli)
111
+ - [Angular Library Development Guide](https://angular.io/guide/creating-libraries)
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, ChangeDetectionStrategy, input, inject, output, viewChild, computed, signal, effect, ContentChild, EventEmitter, Output } from '@angular/core';
2
+ import { Input, Component, ChangeDetectionStrategy, input, inject, output, viewChild, computed, signal, effect, ContentChild, EventEmitter, Output } from '@angular/core';
3
3
  import { TitleCasePipe, NgIf, NgTemplateOutlet, NgFor, DatePipe } from '@angular/common';
4
4
  import { ChoNavigationService, ChoRouteParamService } from 'ngx-cho-common';
5
5
  import * as i1 from '@angular/platform-browser';
@@ -7,8 +7,8 @@ import * as i1$1 from '@angular/forms';
7
7
  import { FormsModule } from '@angular/forms';
8
8
 
9
9
  class ChoAddressInfoComponent {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoAddressInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoAddressInfoComponent, isStandalone: true, selector: "cho-address-info", inputs: { address: "address" }, ngImport: i0, template: `<p *ngIf="address.addressLine1" class="m-0">
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoAddressInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoAddressInfoComponent, isStandalone: true, selector: "cho-address-info", inputs: { address: "address" }, ngImport: i0, template: `<p *ngIf="address.addressLine1" class="m-0">
12
12
  {{ address.addressLine1 | titlecase }}
13
13
  </p>
14
14
  <p *ngIf="address.addressLine2" class="m-0">
@@ -19,7 +19,7 @@ class ChoAddressInfoComponent {
19
19
  {{ address.postalCode }}
20
20
  </p> `, isInline: true, dependencies: [{ kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoAddressInfoComponent, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoAddressInfoComponent, decorators: [{
23
23
  type: Component,
24
24
  args: [{
25
25
  selector: 'cho-address-info',
@@ -33,7 +33,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
33
33
  {{ address.city | titlecase }}, {{ address.stateProvinceCode }}
34
34
  {{ address.postalCode }}
35
35
  </p> `,
36
- standalone: true,
37
36
  imports: [TitleCasePipe, NgIf],
38
37
  }]
39
38
  }], propDecorators: { address: [{
@@ -41,14 +40,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
41
40
  }] } });
42
41
 
43
42
  class ChoCardFiltersComponent {
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoCardFiltersComponent, isStandalone: true, selector: "cho-card-filters", host: { classAttribute: "card-filters" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoCardFiltersComponent, isStandalone: true, selector: "cho-card-filters", host: { classAttribute: "card-filters" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
46
45
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardFiltersComponent, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardFiltersComponent, decorators: [{
48
47
  type: Component,
49
48
  args: [{
50
49
  selector: 'cho-card-filters',
51
- standalone: true,
52
50
  changeDetection: ChangeDetectionStrategy.OnPush,
53
51
  imports: [],
54
52
  host: { class: 'card-filters' },
@@ -57,14 +55,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
57
55
  }] });
58
56
 
59
57
  class ChoCardToolbarComponent {
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoCardToolbarComponent, isStandalone: true, selector: "cho-card-toolbar", host: { classAttribute: "card-toolbar" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoCardToolbarComponent, isStandalone: true, selector: "cho-card-toolbar", host: { classAttribute: "card-toolbar" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
62
60
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardToolbarComponent, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardToolbarComponent, decorators: [{
64
62
  type: Component,
65
63
  args: [{
66
64
  selector: 'cho-card-toolbar',
67
- standalone: true,
68
65
  changeDetection: ChangeDetectionStrategy.OnPush,
69
66
  imports: [],
70
67
  host: { class: 'card-toolbar' },
@@ -77,8 +74,8 @@ class ChoCardHeaderComponent {
77
74
  this.headerText = input();
78
75
  this.toolbar = input();
79
76
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardHeaderComponent, isStandalone: true, selector: "cho-card-header", inputs: { headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.24", type: ChoCardHeaderComponent, isStandalone: true, selector: "cho-card-header", inputs: { headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
82
79
  <div class="card-header">
83
80
  <h3 class="card-title">
84
81
  @if (headerText()) {
@@ -96,11 +93,10 @@ class ChoCardHeaderComponent {
96
93
  </div>
97
94
  `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ChoCardToolbarComponent, selector: "cho-card-toolbar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
98
95
  }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardHeaderComponent, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardHeaderComponent, decorators: [{
100
97
  type: Component,
101
98
  args: [{
102
99
  selector: 'cho-card-header',
103
- standalone: true,
104
100
  changeDetection: ChangeDetectionStrategy.OnPush,
105
101
  imports: [NgTemplateOutlet, ChoCardToolbarComponent],
106
102
  template: `
@@ -141,8 +137,8 @@ class ChoCardTabsComponent {
141
137
  });
142
138
  this.tabSelect.emit(this.activeTab);
143
139
  }
144
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
145
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardTabsComponent, isStandalone: true, selector: "cho-card-tabs", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, ngImport: i0, template: `
140
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
141
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.24", type: ChoCardTabsComponent, isStandalone: true, selector: "cho-card-tabs", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, ngImport: i0, template: `
146
142
  <div class="card-tabs">
147
143
  <ul>
148
144
  @for (tab of tabs(); track tab.value) {
@@ -158,11 +154,10 @@ class ChoCardTabsComponent {
158
154
  </div>
159
155
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
160
156
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardTabsComponent, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardTabsComponent, decorators: [{
162
158
  type: Component,
163
159
  args: [{
164
160
  selector: 'cho-card-tabs',
165
- standalone: true,
166
161
  changeDetection: ChangeDetectionStrategy.OnPush,
167
162
  imports: [],
168
163
  template: `
@@ -217,8 +212,8 @@ class ChoCardComponent {
217
212
  this._hasProjectedContent.set(hasRealContent);
218
213
  }
219
214
  }
220
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
221
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardComponent, isStandalone: true, selector: "cho-card", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, viewQueries: [{ propertyName: "contentWrapper", first: true, predicate: ["contentWrapper"], descendants: true, isSignal: true }], ngImport: i0, template: `
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.24", type: ChoCardComponent, isStandalone: true, selector: "cho-card", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, viewQueries: [{ propertyName: "contentWrapper", first: true, predicate: ["contentWrapper"], descendants: true, isSignal: true }], ngImport: i0, template: `
222
217
  <div class="card mb-3">
223
218
  @if (hasHeader()) {
224
219
  <cho-card-header [toolbar]="toolbar()" [headerText]="headerText()">
@@ -251,11 +246,10 @@ class ChoCardComponent {
251
246
  </div>
252
247
  `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ChoCardHeaderComponent, selector: "cho-card-header", inputs: ["headerText", "toolbar"] }, { kind: "component", type: ChoCardToolbarComponent, selector: "cho-card-toolbar" }, { kind: "component", type: ChoCardFiltersComponent, selector: "cho-card-filters" }, { kind: "component", type: ChoCardTabsComponent, selector: "cho-card-tabs", inputs: ["tabs"], outputs: ["tabSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
253
248
  }
254
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardComponent, decorators: [{
249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoCardComponent, decorators: [{
255
250
  type: Component,
256
251
  args: [{
257
252
  selector: 'cho-card',
258
- standalone: true,
259
253
  changeDetection: ChangeDetectionStrategy.OnPush,
260
254
  imports: [
261
255
  NgTemplateOutlet,
@@ -304,8 +298,8 @@ class ChoDetailsCardComponent {
304
298
  this.cardTitle = '';
305
299
  this.toolbar = null;
306
300
  }
307
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoDetailsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
308
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoDetailsCardComponent, isStandalone: true, selector: "cho-details-card", inputs: { cardTitle: "cardTitle" }, queries: [{ propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true }], ngImport: i0, template: `
301
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoDetailsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
302
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoDetailsCardComponent, isStandalone: true, selector: "cho-details-card", inputs: { cardTitle: "cardTitle" }, queries: [{ propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true }], ngImport: i0, template: `
309
303
  <div class="card mb-3">
310
304
  <div class="card-header">
311
305
  <h3 class="card-title">{{ cardTitle }}</h3>
@@ -321,7 +315,7 @@ class ChoDetailsCardComponent {
321
315
  </div>
322
316
  `, isInline: true }); }
323
317
  }
324
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoDetailsCardComponent, decorators: [{
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoDetailsCardComponent, decorators: [{
325
319
  type: Component,
326
320
  args: [{
327
321
  selector: 'cho-details-card',
@@ -356,15 +350,15 @@ class ChoEmailInfoComponent {
356
350
  ? this.sanitizer.bypassSecurityTrustUrl(`mailto:${this.email.emailAddress}`)
357
351
  : '';
358
352
  }
359
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoEmailInfoComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
360
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoEmailInfoComponent, isStandalone: true, selector: "cho-email-info", inputs: { email: "email" }, ngImport: i0, template: `<ng-container *ngIf="email; else empty"
353
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoEmailInfoComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
354
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoEmailInfoComponent, isStandalone: true, selector: "cho-email-info", inputs: { email: "email" }, ngImport: i0, template: `<ng-container *ngIf="email; else empty"
361
355
  ><span *ngIf="email.emailTypeCode">{{ email.emailTypeCode[0] }}: </span>
362
356
  <a [href]="sanitizedEmailLink">{{ email.emailAddress }}</a>
363
357
  <small *ngIf="email.description"> ({{ email.description }})</small></ng-container
364
358
  >
365
359
  <ng-template #empty><span>--</span></ng-template>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
366
360
  }
367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoEmailInfoComponent, decorators: [{
361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoEmailInfoComponent, decorators: [{
368
362
  type: Component,
369
363
  args: [{
370
364
  selector: 'cho-email-info',
@@ -374,7 +368,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
374
368
  <small *ngIf="email.description"> ({{ email.description }})</small></ng-container
375
369
  >
376
370
  <ng-template #empty><span>--</span></ng-template>`,
377
- standalone: true,
378
371
  imports: [NgIf],
379
372
  }]
380
373
  }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { email: [{
@@ -382,15 +375,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
382
375
  }] } });
383
376
 
384
377
  class ChoPhoneInfoComponent {
385
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoPhoneInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
386
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoPhoneInfoComponent, isStandalone: true, selector: "cho-phone-info", inputs: { phone: "phone" }, ngImport: i0, template: ` <ng-container *ngIf="phone; else empty"
378
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoPhoneInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
379
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoPhoneInfoComponent, isStandalone: true, selector: "cho-phone-info", inputs: { phone: "phone" }, ngImport: i0, template: ` <ng-container *ngIf="phone; else empty"
387
380
  ><span *ngIf="phone.phoneTypeCode">{{ phone.phoneTypeCode[0] }}: </span>
388
381
  {{ phone.phoneNumber }}
389
382
  <small *ngIf="phone.description"> ({{ phone.description }})</small></ng-container
390
383
  >
391
384
  <ng-template #empty><span>--</span></ng-template>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
392
385
  }
393
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoPhoneInfoComponent, decorators: [{
386
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoPhoneInfoComponent, decorators: [{
394
387
  type: Component,
395
388
  args: [{
396
389
  selector: 'cho-phone-info',
@@ -400,7 +393,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
400
393
  <small *ngIf="phone.description"> ({{ phone.description }})</small></ng-container
401
394
  >
402
395
  <ng-template #empty><span>--</span></ng-template>`,
403
- standalone: true,
404
396
  imports: [NgIf],
405
397
  }]
406
398
  }], propDecorators: { phone: [{
@@ -421,8 +413,8 @@ class ChoRadioGroupComponent {
421
413
  this.selectionChange.emit(this.selectedOption);
422
414
  }
423
415
  }
424
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
425
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoRadioGroupComponent, isStandalone: true, selector: "cho-radio-group", inputs: { label: "label", options: "options", groupName: "groupName", defaultValue: "defaultValue" }, outputs: { selectionChange: "selectionChange" }, ngImport: i0, template: `
416
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
417
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoRadioGroupComponent, isStandalone: true, selector: "cho-radio-group", inputs: { label: "label", options: "options", groupName: "groupName", defaultValue: "defaultValue" }, outputs: { selectionChange: "selectionChange" }, ngImport: i0, template: `
426
418
  <div>
427
419
  <label class="form-label">{{ label }}</label>
428
420
  <div *ngFor="let option of options" class="form-check form-check-inline">
@@ -438,7 +430,7 @@ class ChoRadioGroupComponent {
438
430
  </div>
439
431
  `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
440
432
  }
441
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoRadioGroupComponent, decorators: [{
433
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoRadioGroupComponent, decorators: [{
442
434
  type: Component,
443
435
  args: [{
444
436
  selector: 'cho-radio-group',
@@ -457,7 +449,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
457
449
  </div>
458
450
  </div>
459
451
  `,
460
- standalone: true,
461
452
  imports: [NgFor, FormsModule],
462
453
  }]
463
454
  }], propDecorators: { label: [{
@@ -473,25 +464,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
473
464
  }] } });
474
465
 
475
466
  class ChoReviewStatusAlertComponent {
476
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoReviewStatusAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
477
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoReviewStatusAlertComponent, isStandalone: true, selector: "cho-review-status-alert", inputs: { reviewedBy: "reviewedBy", reviewedDateTime: "reviewedDateTime" }, ngImport: i0, template: `
467
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoReviewStatusAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
468
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.24", type: ChoReviewStatusAlertComponent, isStandalone: true, selector: "cho-review-status-alert", inputs: { reviewedBy: "reviewedBy", reviewedDateTime: "reviewedDateTime" }, ngImport: i0, template: `
478
469
  <div class="alert alert-info" *ngIf="reviewedDateTime">
479
- Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date : 'shortDate' }} at
480
- {{ reviewedDateTime | date : 'shortTime' }}.
470
+ Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date: 'shortDate' }} at
471
+ {{ reviewedDateTime | date: 'shortTime' }}.
481
472
  </div>
482
473
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: DatePipe, name: "date" }] }); }
483
474
  }
484
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoReviewStatusAlertComponent, decorators: [{
475
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.24", ngImport: i0, type: ChoReviewStatusAlertComponent, decorators: [{
485
476
  type: Component,
486
477
  args: [{
487
478
  selector: 'cho-review-status-alert',
488
479
  template: `
489
480
  <div class="alert alert-info" *ngIf="reviewedDateTime">
490
- Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date : 'shortDate' }} at
491
- {{ reviewedDateTime | date : 'shortTime' }}.
481
+ Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date: 'shortDate' }} at
482
+ {{ reviewedDateTime | date: 'shortTime' }}.
492
483
  </div>
493
484
  `,
494
- standalone: true,
495
485
  imports: [NgIf, DatePipe],
496
486
  }]
497
487
  }], propDecorators: { reviewedBy: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-cho-components.mjs","sources":["../../../projects/ngx-cho-components/src/lib/cho-address-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-filters.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-toolbar.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-header.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-tabs.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card.component.ts","../../../projects/ngx-cho-components/src/lib/cho-details-card.component.ts","../../../projects/ngx-cho-components/src/lib/cho-email-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-phone-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-radio-group.component.ts","../../../projects/ngx-cho-components/src/lib/cho-review-status-alert.component.ts","../../../projects/ngx-cho-components/src/public-api.ts","../../../projects/ngx-cho-components/src/ngx-cho-components.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\r\nimport { IAddress } from 'ngx-cho-common';\r\nimport { NgIf, TitleCasePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'cho-address-info',\r\n template: `<p *ngIf=\"address.addressLine1\" class=\"m-0\">\r\n {{ address.addressLine1 | titlecase }}\r\n </p>\r\n <p *ngIf=\"address.addressLine2\" class=\"m-0\">\r\n {{ address.addressLine2 | titlecase }}\r\n </p>\r\n <p *ngIf=\"address.city\" class=\"m-0\">\r\n {{ address.city | titlecase }}, {{ address.stateProvinceCode }}\r\n {{ address.postalCode }}\r\n </p> `,\r\n standalone: true,\r\n imports: [TitleCasePipe, NgIf],\r\n})\r\nexport class ChoAddressInfoComponent {\r\n @Input() address!: IAddress;\r\n}\r\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card-filters',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n host: { class: 'card-filters' },\r\n template: ` <ng-content /> `,\r\n})\r\nexport class ChoCardFiltersComponent {}\r\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card-toolbar',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n host: { class: 'card-toolbar' },\r\n template: ` <ng-content /> `,\r\n})\r\nexport class ChoCardToolbarComponent {}\r\n","import { NgTemplateOutlet } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, input, TemplateRef } from '@angular/core';\r\nimport { ChoCardToolbarComponent } from './cho-card-toolbar.component';\r\n\r\n@Component({\r\n selector: 'cho-card-header',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [NgTemplateOutlet, ChoCardToolbarComponent],\r\n template: `\r\n <div class=\"card-header\">\r\n <h3 class=\"card-title\">\r\n @if (headerText()) {\r\n {{ headerText() }}\r\n } @else {\r\n <ng-content />\r\n }\r\n </h3>\r\n\r\n @if (toolbar()) {\r\n <cho-card-toolbar>\r\n <ng-container *ngTemplateOutlet=\"toolbar()!\" />\r\n </cho-card-toolbar>\r\n }\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardHeaderComponent {\r\n headerText = input<string>();\r\n toolbar = input<TemplateRef<any> | null>();\r\n}\r\n","import { ChangeDetectionStrategy, Component, inject, input, OnInit, output } from '@angular/core';\r\nimport { ChoNavigationService, ChoRouteParamService } from 'ngx-cho-common';\r\n\r\n@Component({\r\n selector: 'cho-card-tabs',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n template: `\r\n <div class=\"card-tabs\">\r\n <ul>\r\n @for (tab of tabs(); track tab.value) {\r\n <li (click)=\"onSelect(tab.value)\">\r\n <a\r\n class=\"nav-link text-active-primary\"\r\n [class.active]=\"activeTab === tab.value\">\r\n {{ tab.label }}\r\n </a>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardTabsComponent implements OnInit {\r\n private readonly navigationService = inject(ChoNavigationService);\r\n private readonly routeParamService = inject(ChoRouteParamService);\r\n\r\n tabs = input<Array<{ value: string; label: string }>>();\r\n tabSelect = output<string>();\r\n\r\n activeTab: string | undefined;\r\n\r\n ngOnInit(): void {\r\n this.activeTab = this.routeParamService.getQueryParameterValue('vw') || '';\r\n this.tabSelect.emit(this.activeTab);\r\n }\r\n\r\n onSelect(tabValue: string): void {\r\n this.activeTab = tabValue;\r\n\r\n this.navigationService.setQueryParams({\r\n vw: tabValue ? tabValue : null,\r\n });\r\n\r\n this.tabSelect.emit(this.activeTab);\r\n }\r\n}\r\n","import { NgTemplateOutlet } from '@angular/common';\r\nimport { ChoCardFiltersComponent } from './cho-card-filters.component';\r\nimport { ChoCardHeaderComponent } from './cho-card-header.component';\r\nimport { ChoCardTabsComponent } from './cho-card-tabs.component';\r\nimport { ChoCardToolbarComponent } from './cho-card-toolbar.component';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n computed,\r\n ElementRef,\r\n effect,\r\n viewChild,\r\n signal,\r\n input,\r\n TemplateRef,\r\n output,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n NgTemplateOutlet,\r\n ChoCardHeaderComponent,\r\n ChoCardToolbarComponent,\r\n ChoCardFiltersComponent,\r\n ChoCardTabsComponent,\r\n ],\r\n template: `\r\n <div class=\"card mb-3\">\r\n @if (hasHeader()) {\r\n <cho-card-header [toolbar]=\"toolbar()\" [headerText]=\"headerText()\">\r\n <ng-container *ngTemplateOutlet=\"header()!\" />\r\n </cho-card-header>\r\n } @else if (hasToolbar()) {\r\n <cho-card-toolbar>\r\n <ng-container *ngTemplateOutlet=\"toolbar()!\" />\r\n </cho-card-toolbar>\r\n }\r\n\r\n @if (hasFilters()) {\r\n <cho-card-filters>\r\n <ng-container *ngTemplateOutlet=\"filters()!\" />\r\n </cho-card-filters>\r\n }\r\n\r\n @if (hasTabs()) {\r\n <cho-card-tabs [tabs]=\"tabs()!\" (tabSelect)=\"tabSelect.emit($event)\">\r\n </cho-card-tabs>\r\n }\r\n\r\n <div class=\"card-body\" #contentWrapper [hidden]=\"!hasContent()\">\r\n @if (content()) {\r\n <ng-container *ngTemplateOutlet=\"content()!\" />\r\n } @else {\r\n <ng-content />\r\n }\r\n </div>\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardComponent {\r\n header = input<TemplateRef<any>>();\r\n headerText = input<string>();\r\n toolbar = input<TemplateRef<any>>();\r\n filters = input<TemplateRef<any>>();\r\n content = input<TemplateRef<any>>();\r\n tabs = input<Array<{ value: string; label: string }>>();\r\n\r\n tabSelect = output<string>();\r\n\r\n // used for projected content detection\r\n contentWrapper = viewChild<ElementRef>('contentWrapper');\r\n\r\n hasContent = computed(() => this.content() || this._hasProjectedContent());\r\n hasFilters = computed(() => !!this.filters());\r\n hasHeader = computed(() => !!this.header() || !!this.headerText());\r\n hasTabs = computed(() => !!this.tabs() && this.tabs()!.length > 0);\r\n hasToolbar = computed(() => !!this.toolbar());\r\n\r\n private _hasProjectedContent = signal(false);\r\n\r\n constructor() {\r\n effect(() => this.detectProjectedContent(), { allowSignalWrites: true });\r\n }\r\n\r\n private detectProjectedContent() {\r\n const wrapper = this.contentWrapper();\r\n\r\n if (wrapper) {\r\n const element = wrapper.nativeElement;\r\n\r\n const hasRealContent = Array.from(element.childNodes).some((node: any) => {\r\n if (node.nodeType === Node.ELEMENT_NODE) return true;\r\n if (node.nodeType === Node.TEXT_NODE) {\r\n return node.textContent?.trim().length > 0;\r\n }\r\n return false;\r\n });\r\n\r\n this._hasProjectedContent.set(hasRealContent);\r\n }\r\n }\r\n}\r\n","import { Component, ContentChild, Input, TemplateRef } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-details-card',\r\n standalone: true,\r\n template: `\r\n <div class=\"card mb-3\">\r\n <div class=\"card-header\">\r\n <h3 class=\"card-title\">{{ cardTitle }}</h3>\r\n\r\n <div class=\"card-toolbar\">\r\n <ng-content #toolbar select=\"[toolbar]\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n})\r\nexport class ChoDetailsCardComponent {\r\n @Input() cardTitle = '';\r\n\r\n @ContentChild('toolbar') toolbar: TemplateRef<unknown> | null = null;\r\n}\r\n","import { NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { IEmailInfo } from 'ngx-cho-common';\r\n\r\n\r\n@Component({\r\n selector: 'cho-email-info',\r\n template: `<ng-container *ngIf=\"email; else empty\"\r\n ><span *ngIf=\"email.emailTypeCode\">{{ email.emailTypeCode[0] }}: </span>\r\n <a [href]=\"sanitizedEmailLink\">{{ email.emailAddress }}</a>\r\n <small *ngIf=\"email.description\"> ({{ email.description }})</small></ng-container\r\n >\r\n <ng-template #empty><span>--</span></ng-template>`,\r\n standalone: true,\r\n imports: [NgIf],\r\n})\r\nexport class ChoEmailInfoComponent {\r\n @Input() email!: IEmailInfo;\r\n\r\n public sanitizedEmailLink: SafeUrl;\r\n\r\n constructor(private sanitizer: DomSanitizer) {\r\n this.sanitizedEmailLink = this.email?.emailAddress\r\n ? this.sanitizer.bypassSecurityTrustUrl(`mailto:${this.email.emailAddress}`)\r\n : '';\r\n }\r\n}\r\n","import { NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { IPhoneInfo } from 'ngx-cho-common';\r\n\r\n\r\n@Component({\r\n selector: 'cho-phone-info',\r\n template: ` <ng-container *ngIf=\"phone; else empty\"\r\n ><span *ngIf=\"phone.phoneTypeCode\">{{ phone.phoneTypeCode[0] }}: </span>\r\n {{ phone.phoneNumber }}\r\n <small *ngIf=\"phone.description\"> ({{ phone.description }})</small></ng-container\r\n >\r\n <ng-template #empty><span>--</span></ng-template>`,\r\n standalone: true,\r\n imports: [NgIf],\r\n})\r\nexport class ChoPhoneInfoComponent {\r\n @Input() phone!: IPhoneInfo;\r\n}\r\n","import { NgFor } from '@angular/common';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'cho-radio-group',\r\n template: `\r\n <div>\r\n <label class=\"form-label\">{{ label }}</label>\r\n <div *ngFor=\"let option of options\" class=\"form-check form-check-inline\">\r\n <input\r\n class=\"form-check-input\"\r\n type=\"radio\"\r\n [name]=\"groupName\"\r\n [value]=\"option.value\"\r\n [(ngModel)]=\"selectedOption\"\r\n (change)=\"emitSelection()\" />\r\n {{ option.label }}\r\n </div>\r\n </div>\r\n `,\r\n standalone: true,\r\n imports: [NgFor, FormsModule],\r\n})\r\nexport class ChoRadioGroupComponent<T> {\r\n @Input() label = '';\r\n @Input() options: { label: string; value: unknown }[] = [];\r\n @Input() groupName = '';\r\n @Input() defaultValue: T | null = null;\r\n\r\n @Output() selectionChange = new EventEmitter<T | null>();\r\n\r\n public selectedOption: T | null = this.defaultValue;\r\n\r\n public emitSelection() {\r\n if (this.selectedOption !== undefined) {\r\n this.selectionChange.emit(this.selectedOption);\r\n }\r\n }\r\n}\r\n","import { DatePipe, NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-review-status-alert',\r\n template: `\r\n <div class=\"alert alert-info\" *ngIf=\"reviewedDateTime\">\r\n Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date : 'shortDate' }} at\r\n {{ reviewedDateTime | date : 'shortTime' }}.\r\n </div>\r\n `,\r\n standalone: true,\r\n imports: [NgIf, DatePipe],\r\n})\r\nexport class ChoReviewStatusAlertComponent {\r\n @Input() reviewedBy: string | undefined;\r\n @Input() reviewedDateTime: string | undefined;\r\n}\r\n","/*\r\n * Public API Surface of ngx-cho-components\r\n */\r\n\r\nexport * from './lib';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-cho-components.mjs","sources":["../../../projects/ngx-cho-components/src/lib/cho-address-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-filters.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-toolbar.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-header.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card-tabs.component.ts","../../../projects/ngx-cho-components/src/lib/cho-card.component.ts","../../../projects/ngx-cho-components/src/lib/cho-details-card.component.ts","../../../projects/ngx-cho-components/src/lib/cho-email-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-phone-info.component.ts","../../../projects/ngx-cho-components/src/lib/cho-radio-group.component.ts","../../../projects/ngx-cho-components/src/lib/cho-review-status-alert.component.ts","../../../projects/ngx-cho-components/src/public-api.ts","../../../projects/ngx-cho-components/src/ngx-cho-components.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\r\nimport { IAddress } from 'ngx-cho-common';\r\nimport { NgIf, TitleCasePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'cho-address-info',\r\n template: `<p *ngIf=\"address.addressLine1\" class=\"m-0\">\r\n {{ address.addressLine1 | titlecase }}\r\n </p>\r\n <p *ngIf=\"address.addressLine2\" class=\"m-0\">\r\n {{ address.addressLine2 | titlecase }}\r\n </p>\r\n <p *ngIf=\"address.city\" class=\"m-0\">\r\n {{ address.city | titlecase }}, {{ address.stateProvinceCode }}\r\n {{ address.postalCode }}\r\n </p> `,\r\n imports: [TitleCasePipe, NgIf],\r\n})\r\nexport class ChoAddressInfoComponent {\r\n @Input() address!: IAddress;\r\n}\r\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card-filters',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n host: { class: 'card-filters' },\r\n template: ` <ng-content /> `,\r\n})\r\nexport class ChoCardFiltersComponent {}\r\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card-toolbar',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n host: { class: 'card-toolbar' },\r\n template: ` <ng-content /> `,\r\n})\r\nexport class ChoCardToolbarComponent {}\r\n","import { NgTemplateOutlet } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, input, TemplateRef } from '@angular/core';\r\nimport { ChoCardToolbarComponent } from './cho-card-toolbar.component';\r\n\r\n@Component({\r\n selector: 'cho-card-header',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [NgTemplateOutlet, ChoCardToolbarComponent],\r\n template: `\r\n <div class=\"card-header\">\r\n <h3 class=\"card-title\">\r\n @if (headerText()) {\r\n {{ headerText() }}\r\n } @else {\r\n <ng-content />\r\n }\r\n </h3>\r\n\r\n @if (toolbar()) {\r\n <cho-card-toolbar>\r\n <ng-container *ngTemplateOutlet=\"toolbar()!\" />\r\n </cho-card-toolbar>\r\n }\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardHeaderComponent {\r\n headerText = input<string>();\r\n toolbar = input<TemplateRef<any> | null>();\r\n}\r\n","import { ChangeDetectionStrategy, Component, inject, input, OnInit, output } from '@angular/core';\r\nimport { ChoNavigationService, ChoRouteParamService } from 'ngx-cho-common';\r\n\r\n@Component({\r\n selector: 'cho-card-tabs',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [],\r\n template: `\r\n <div class=\"card-tabs\">\r\n <ul>\r\n @for (tab of tabs(); track tab.value) {\r\n <li (click)=\"onSelect(tab.value)\">\r\n <a\r\n class=\"nav-link text-active-primary\"\r\n [class.active]=\"activeTab === tab.value\">\r\n {{ tab.label }}\r\n </a>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardTabsComponent implements OnInit {\r\n private readonly navigationService = inject(ChoNavigationService);\r\n private readonly routeParamService = inject(ChoRouteParamService);\r\n\r\n tabs = input<Array<{ value: string; label: string }>>();\r\n tabSelect = output<string>();\r\n\r\n activeTab: string | undefined;\r\n\r\n ngOnInit(): void {\r\n this.activeTab = this.routeParamService.getQueryParameterValue('vw') || '';\r\n this.tabSelect.emit(this.activeTab);\r\n }\r\n\r\n onSelect(tabValue: string): void {\r\n this.activeTab = tabValue;\r\n\r\n this.navigationService.setQueryParams({\r\n vw: tabValue ? tabValue : null,\r\n });\r\n\r\n this.tabSelect.emit(this.activeTab);\r\n }\r\n}\r\n","import { NgTemplateOutlet } from '@angular/common';\r\nimport { ChoCardFiltersComponent } from './cho-card-filters.component';\r\nimport { ChoCardHeaderComponent } from './cho-card-header.component';\r\nimport { ChoCardTabsComponent } from './cho-card-tabs.component';\r\nimport { ChoCardToolbarComponent } from './cho-card-toolbar.component';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n computed,\r\n ElementRef,\r\n effect,\r\n viewChild,\r\n signal,\r\n input,\r\n TemplateRef,\r\n output,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-card',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n NgTemplateOutlet,\r\n ChoCardHeaderComponent,\r\n ChoCardToolbarComponent,\r\n ChoCardFiltersComponent,\r\n ChoCardTabsComponent,\r\n ],\r\n template: `\r\n <div class=\"card mb-3\">\r\n @if (hasHeader()) {\r\n <cho-card-header [toolbar]=\"toolbar()\" [headerText]=\"headerText()\">\r\n <ng-container *ngTemplateOutlet=\"header()!\" />\r\n </cho-card-header>\r\n } @else if (hasToolbar()) {\r\n <cho-card-toolbar>\r\n <ng-container *ngTemplateOutlet=\"toolbar()!\" />\r\n </cho-card-toolbar>\r\n }\r\n\r\n @if (hasFilters()) {\r\n <cho-card-filters>\r\n <ng-container *ngTemplateOutlet=\"filters()!\" />\r\n </cho-card-filters>\r\n }\r\n\r\n @if (hasTabs()) {\r\n <cho-card-tabs [tabs]=\"tabs()!\" (tabSelect)=\"tabSelect.emit($event)\">\r\n </cho-card-tabs>\r\n }\r\n\r\n <div class=\"card-body\" #contentWrapper [hidden]=\"!hasContent()\">\r\n @if (content()) {\r\n <ng-container *ngTemplateOutlet=\"content()!\" />\r\n } @else {\r\n <ng-content />\r\n }\r\n </div>\r\n </div>\r\n `,\r\n})\r\nexport class ChoCardComponent {\r\n header = input<TemplateRef<any>>();\r\n headerText = input<string>();\r\n toolbar = input<TemplateRef<any>>();\r\n filters = input<TemplateRef<any>>();\r\n content = input<TemplateRef<any>>();\r\n tabs = input<Array<{ value: string; label: string }>>();\r\n\r\n tabSelect = output<string>();\r\n\r\n // used for projected content detection\r\n contentWrapper = viewChild<ElementRef>('contentWrapper');\r\n\r\n hasContent = computed(() => this.content() || this._hasProjectedContent());\r\n hasFilters = computed(() => !!this.filters());\r\n hasHeader = computed(() => !!this.header() || !!this.headerText());\r\n hasTabs = computed(() => !!this.tabs() && this.tabs()!.length > 0);\r\n hasToolbar = computed(() => !!this.toolbar());\r\n\r\n private _hasProjectedContent = signal(false);\r\n\r\n constructor() {\r\n effect(() => this.detectProjectedContent(), { allowSignalWrites: true });\r\n }\r\n\r\n private detectProjectedContent() {\r\n const wrapper = this.contentWrapper();\r\n\r\n if (wrapper) {\r\n const element = wrapper.nativeElement;\r\n\r\n const hasRealContent = Array.from(element.childNodes).some((node: any) => {\r\n if (node.nodeType === Node.ELEMENT_NODE) return true;\r\n if (node.nodeType === Node.TEXT_NODE) {\r\n return node.textContent?.trim().length > 0;\r\n }\r\n return false;\r\n });\r\n\r\n this._hasProjectedContent.set(hasRealContent);\r\n }\r\n }\r\n}\r\n","import { Component, ContentChild, Input, TemplateRef } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-details-card',\r\n standalone: true,\r\n template: `\r\n <div class=\"card mb-3\">\r\n <div class=\"card-header\">\r\n <h3 class=\"card-title\">{{ cardTitle }}</h3>\r\n\r\n <div class=\"card-toolbar\">\r\n <ng-content #toolbar select=\"[toolbar]\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n `,\r\n})\r\nexport class ChoDetailsCardComponent {\r\n @Input() cardTitle = '';\r\n\r\n @ContentChild('toolbar') toolbar: TemplateRef<unknown> | null = null;\r\n}\r\n","import { NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { IEmailInfo } from 'ngx-cho-common';\r\n\r\n@Component({\r\n selector: 'cho-email-info',\r\n template: `<ng-container *ngIf=\"email; else empty\"\r\n ><span *ngIf=\"email.emailTypeCode\">{{ email.emailTypeCode[0] }}: </span>\r\n <a [href]=\"sanitizedEmailLink\">{{ email.emailAddress }}</a>\r\n <small *ngIf=\"email.description\"> ({{ email.description }})</small></ng-container\r\n >\r\n <ng-template #empty><span>--</span></ng-template>`,\r\n imports: [NgIf],\r\n})\r\nexport class ChoEmailInfoComponent {\r\n @Input() email!: IEmailInfo;\r\n\r\n public sanitizedEmailLink: SafeUrl;\r\n\r\n constructor(private sanitizer: DomSanitizer) {\r\n this.sanitizedEmailLink = this.email?.emailAddress\r\n ? this.sanitizer.bypassSecurityTrustUrl(`mailto:${this.email.emailAddress}`)\r\n : '';\r\n }\r\n}\r\n","import { NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { IPhoneInfo } from 'ngx-cho-common';\r\n\r\n@Component({\r\n selector: 'cho-phone-info',\r\n template: ` <ng-container *ngIf=\"phone; else empty\"\r\n ><span *ngIf=\"phone.phoneTypeCode\">{{ phone.phoneTypeCode[0] }}: </span>\r\n {{ phone.phoneNumber }}\r\n <small *ngIf=\"phone.description\"> ({{ phone.description }})</small></ng-container\r\n >\r\n <ng-template #empty><span>--</span></ng-template>`,\r\n imports: [NgIf],\r\n})\r\nexport class ChoPhoneInfoComponent {\r\n @Input() phone!: IPhoneInfo;\r\n}\r\n","import { NgFor } from '@angular/common';\r\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'cho-radio-group',\r\n template: `\r\n <div>\r\n <label class=\"form-label\">{{ label }}</label>\r\n <div *ngFor=\"let option of options\" class=\"form-check form-check-inline\">\r\n <input\r\n class=\"form-check-input\"\r\n type=\"radio\"\r\n [name]=\"groupName\"\r\n [value]=\"option.value\"\r\n [(ngModel)]=\"selectedOption\"\r\n (change)=\"emitSelection()\" />\r\n {{ option.label }}\r\n </div>\r\n </div>\r\n `,\r\n imports: [NgFor, FormsModule],\r\n})\r\nexport class ChoRadioGroupComponent<T> {\r\n @Input() label = '';\r\n @Input() options: { label: string; value: unknown }[] = [];\r\n @Input() groupName = '';\r\n @Input() defaultValue: T | null = null;\r\n\r\n @Output() selectionChange = new EventEmitter<T | null>();\r\n\r\n public selectedOption: T | null = this.defaultValue;\r\n\r\n public emitSelection() {\r\n if (this.selectedOption !== undefined) {\r\n this.selectionChange.emit(this.selectedOption);\r\n }\r\n }\r\n}\r\n","import { DatePipe, NgIf } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'cho-review-status-alert',\r\n template: `\r\n <div class=\"alert alert-info\" *ngIf=\"reviewedDateTime\">\r\n Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date: 'shortDate' }} at\r\n {{ reviewedDateTime | date: 'shortTime' }}.\r\n </div>\r\n `,\r\n imports: [NgIf, DatePipe],\r\n})\r\nexport class ChoReviewStatusAlertComponent {\r\n @Input() reviewedBy: string | undefined;\r\n @Input() reviewedDateTime: string | undefined;\r\n}\r\n","/*\r\n * Public API Surface of ngx-cho-components\r\n */\r\n\r\nexport * from './lib';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "ngx-cho-components",
3
- "version": "1.0.0",
3
+ "version": "2.0.0",
4
4
  "peerDependencies": {
5
- "@angular/common": "^17.3.0",
6
- "@angular/core": "^17.3.0",
7
- "ngx-cho-common": "^2.0.0"
5
+ "@angular/common": "^19.2.0",
6
+ "@angular/core": "^19.2.0",
7
+ "ngx-cho-common": "^3.0.0"
8
8
  },
9
9
  "dependencies": {
10
10
  "tslib": "^2.3.0"
@@ -18,8 +18,6 @@
18
18
  },
19
19
  ".": {
20
20
  "types": "./index.d.ts",
21
- "esm2022": "./esm2022/ngx-cho-components.mjs",
22
- "esm": "./esm2022/ngx-cho-components.mjs",
23
21
  "default": "./fesm2022/ngx-cho-components.mjs"
24
22
  }
25
23
  }
@@ -1,37 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { NgIf, TitleCasePipe } from '@angular/common';
3
- import * as i0 from "@angular/core";
4
- export class ChoAddressInfoComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoAddressInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoAddressInfoComponent, isStandalone: true, selector: "cho-address-info", inputs: { address: "address" }, ngImport: i0, template: `<p *ngIf="address.addressLine1" class="m-0">
7
- {{ address.addressLine1 | titlecase }}
8
- </p>
9
- <p *ngIf="address.addressLine2" class="m-0">
10
- {{ address.addressLine2 | titlecase }}
11
- </p>
12
- <p *ngIf="address.city" class="m-0">
13
- {{ address.city | titlecase }}, {{ address.stateProvinceCode }}
14
- {{ address.postalCode }}
15
- </p> `, isInline: true, dependencies: [{ kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoAddressInfoComponent, decorators: [{
18
- type: Component,
19
- args: [{
20
- selector: 'cho-address-info',
21
- template: `<p *ngIf="address.addressLine1" class="m-0">
22
- {{ address.addressLine1 | titlecase }}
23
- </p>
24
- <p *ngIf="address.addressLine2" class="m-0">
25
- {{ address.addressLine2 | titlecase }}
26
- </p>
27
- <p *ngIf="address.city" class="m-0">
28
- {{ address.city | titlecase }}, {{ address.stateProvinceCode }}
29
- {{ address.postalCode }}
30
- </p> `,
31
- standalone: true,
32
- imports: [TitleCasePipe, NgIf],
33
- }]
34
- }], propDecorators: { address: [{
35
- type: Input
36
- }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWFkZHJlc3MtaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9jaG8tYWRkcmVzcy1pbmZvLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWlCdEQsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO21HQUF2Qix1QkFBdUIsNEdBYnRCOzs7Ozs7Ozs7Y0FTQSx1REFFQSxhQUFhLGtEQUFFLElBQUk7OzRGQUVwQix1QkFBdUI7a0JBZm5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Y0FTQTtvQkFDVixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQztpQkFDakM7OEJBRVksT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJQWRkcmVzcyB9IGZyb20gJ25neC1jaG8tY29tbW9uJztcclxuaW1wb3J0IHsgTmdJZiwgVGl0bGVDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY2hvLWFkZHJlc3MtaW5mbycsXHJcbiAgICB0ZW1wbGF0ZTogYDxwICpuZ0lmPVwiYWRkcmVzcy5hZGRyZXNzTGluZTFcIiBjbGFzcz1cIm0tMFwiPlxyXG4gICAgICAgICAgICB7eyBhZGRyZXNzLmFkZHJlc3NMaW5lMSB8IHRpdGxlY2FzZSB9fVxyXG4gICAgICAgIDwvcD5cclxuICAgICAgICA8cCAqbmdJZj1cImFkZHJlc3MuYWRkcmVzc0xpbmUyXCIgY2xhc3M9XCJtLTBcIj5cclxuICAgICAgICAgICAge3sgYWRkcmVzcy5hZGRyZXNzTGluZTIgfCB0aXRsZWNhc2UgfX1cclxuICAgICAgICA8L3A+XHJcbiAgICAgICAgPHAgKm5nSWY9XCJhZGRyZXNzLmNpdHlcIiBjbGFzcz1cIm0tMFwiPlxyXG4gICAgICAgICAgICB7eyBhZGRyZXNzLmNpdHkgfCB0aXRsZWNhc2UgfX0sIHt7IGFkZHJlc3Muc3RhdGVQcm92aW5jZUNvZGUgfX1cclxuICAgICAgICAgICAge3sgYWRkcmVzcy5wb3N0YWxDb2RlIH19XHJcbiAgICAgICAgPC9wPiBgLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtUaXRsZUNhc2VQaXBlLCBOZ0lmXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENob0FkZHJlc3NJbmZvQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpIGFkZHJlc3MhOiBJQWRkcmVzcztcclxufVxyXG4iXX0=
@@ -1,18 +0,0 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ChoCardFiltersComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardFiltersComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoCardFiltersComponent, isStandalone: true, selector: "cho-card-filters", host: { classAttribute: "card-filters" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
- }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardFiltersComponent, decorators: [{
8
- type: Component,
9
- args: [{
10
- selector: 'cho-card-filters',
11
- standalone: true,
12
- changeDetection: ChangeDetectionStrategy.OnPush,
13
- imports: [],
14
- host: { class: 'card-filters' },
15
- template: ` <ng-content /> `,
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWNhcmQtZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9jaG8tY2FyZC1maWx0ZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVVuRSxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7bUdBQXZCLHVCQUF1QixzSEFGdEIsa0JBQWtCOzs0RkFFbkIsdUJBQXVCO2tCQVJuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRTtvQkFDL0IsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY2hvLWNhcmQtZmlsdGVycycsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBpbXBvcnRzOiBbXSxcclxuICAgIGhvc3Q6IHsgY2xhc3M6ICdjYXJkLWZpbHRlcnMnIH0sXHJcbiAgICB0ZW1wbGF0ZTogYCA8bmctY29udGVudCAvPiBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvQ2FyZEZpbHRlcnNDb21wb25lbnQge31cclxuIl19
@@ -1,55 +0,0 @@
1
- import { NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, input } from '@angular/core';
3
- import { ChoCardToolbarComponent } from './cho-card-toolbar.component';
4
- import * as i0 from "@angular/core";
5
- export class ChoCardHeaderComponent {
6
- constructor() {
7
- this.headerText = input();
8
- this.toolbar = input();
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardHeaderComponent, isStandalone: true, selector: "cho-card-header", inputs: { headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
12
- <div class="card-header">
13
- <h3 class="card-title">
14
- @if (headerText()) {
15
- {{ headerText() }}
16
- } @else {
17
- <ng-content />
18
- }
19
- </h3>
20
-
21
- @if (toolbar()) {
22
- <cho-card-toolbar>
23
- <ng-container *ngTemplateOutlet="toolbar()!" />
24
- </cho-card-toolbar>
25
- }
26
- </div>
27
- `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ChoCardToolbarComponent, selector: "cho-card-toolbar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardHeaderComponent, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: 'cho-card-header',
33
- standalone: true,
34
- changeDetection: ChangeDetectionStrategy.OnPush,
35
- imports: [NgTemplateOutlet, ChoCardToolbarComponent],
36
- template: `
37
- <div class="card-header">
38
- <h3 class="card-title">
39
- @if (headerText()) {
40
- {{ headerText() }}
41
- } @else {
42
- <ng-content />
43
- }
44
- </h3>
45
-
46
- @if (toolbar()) {
47
- <cho-card-toolbar>
48
- <ng-container *ngTemplateOutlet="toolbar()!" />
49
- </cho-card-toolbar>
50
- }
51
- </div>
52
- `,
53
- }]
54
- }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWNhcmQtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jaG8tY29tcG9uZW50cy9zcmMvbGliL2Noby1jYXJkLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBeUJ2RSxNQUFNLE9BQU8sc0JBQXNCO0lBdkJuQztRQXdCSSxlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsWUFBTyxHQUFHLEtBQUssRUFBMkIsQ0FBQztLQUM5QzsrR0FIWSxzQkFBc0I7bUdBQXRCLHNCQUFzQiw0VkFsQnJCOzs7Ozs7Ozs7Ozs7Ozs7O0tBZ0JULDREQWpCUyxnQkFBZ0Isb0pBQUUsdUJBQXVCOzs0RkFtQjFDLHNCQUFzQjtrQkF2QmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx1QkFBdUIsQ0FBQztvQkFDcEQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7O0tBZ0JUO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGlucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaG9DYXJkVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vY2hvLWNhcmQtdG9vbGJhci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2Noby1jYXJkLWhlYWRlcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgQ2hvQ2FyZFRvb2xiYXJDb21wb25lbnRdLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXJcIj5cclxuICAgICAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgQGlmIChoZWFkZXJUZXh0KCkpIHtcclxuICAgICAgICAgICAgICAgICAgICB7eyBoZWFkZXJUZXh0KCkgfX1cclxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDwvaDM+XHJcblxyXG4gICAgICAgICAgICBAaWYgKHRvb2xiYXIoKSkge1xyXG4gICAgICAgICAgICAgICAgPGNoby1jYXJkLXRvb2xiYXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRvb2xiYXIoKSFcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9jaG8tY2FyZC10b29sYmFyPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvQ2FyZEhlYWRlckNvbXBvbmVudCB7XHJcbiAgICBoZWFkZXJUZXh0ID0gaW5wdXQ8c3RyaW5nPigpO1xyXG4gICAgdG9vbGJhciA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4gfCBudWxsPigpO1xyXG59XHJcbiJdfQ==
@@ -1,63 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, inject, input, output } from '@angular/core';
2
- import { ChoNavigationService, ChoRouteParamService } from 'ngx-cho-common';
3
- import * as i0 from "@angular/core";
4
- export class ChoCardTabsComponent {
5
- constructor() {
6
- this.navigationService = inject(ChoNavigationService);
7
- this.routeParamService = inject(ChoRouteParamService);
8
- this.tabs = input();
9
- this.tabSelect = output();
10
- }
11
- ngOnInit() {
12
- this.activeTab = this.routeParamService.getQueryParameterValue('vw') || '';
13
- this.tabSelect.emit(this.activeTab);
14
- }
15
- onSelect(tabValue) {
16
- this.activeTab = tabValue;
17
- this.navigationService.setQueryParams({
18
- vw: tabValue ? tabValue : null,
19
- });
20
- this.tabSelect.emit(this.activeTab);
21
- }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardTabsComponent, isStandalone: true, selector: "cho-card-tabs", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, ngImport: i0, template: `
24
- <div class="card-tabs">
25
- <ul>
26
- @for (tab of tabs(); track tab.value) {
27
- <li (click)="onSelect(tab.value)">
28
- <a
29
- class="nav-link text-active-primary"
30
- [class.active]="activeTab === tab.value">
31
- {{ tab.label }}
32
- </a>
33
- </li>
34
- }
35
- </ul>
36
- </div>
37
- `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
38
- }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardTabsComponent, decorators: [{
40
- type: Component,
41
- args: [{
42
- selector: 'cho-card-tabs',
43
- standalone: true,
44
- changeDetection: ChangeDetectionStrategy.OnPush,
45
- imports: [],
46
- template: `
47
- <div class="card-tabs">
48
- <ul>
49
- @for (tab of tabs(); track tab.value) {
50
- <li (click)="onSelect(tab.value)">
51
- <a
52
- class="nav-link text-active-primary"
53
- [class.active]="activeTab === tab.value">
54
- {{ tab.label }}
55
- </a>
56
- </li>
57
- }
58
- </ul>
59
- </div>
60
- `,
61
- }]
62
- }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWNhcmQtdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9jaG8tY2FyZC10YWJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQXVCNUUsTUFBTSxPQUFPLG9CQUFvQjtJQXJCakM7UUFzQnFCLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2pELHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRWxFLFNBQUksR0FBRyxLQUFLLEVBQTJDLENBQUM7UUFDeEQsY0FBUyxHQUFHLE1BQU0sRUFBVSxDQUFDO0tBa0JoQztJQWRHLFFBQVE7UUFDSixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0I7UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFFMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQztZQUNsQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDakMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7K0dBdEJRLG9CQUFvQjttR0FBcEIsb0JBQW9CLCtPQWhCbkI7Ozs7Ozs7Ozs7Ozs7O0tBY1Q7OzRGQUVRLG9CQUFvQjtrQkFyQmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7OztLQWNUO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2hvTmF2aWdhdGlvblNlcnZpY2UsIENob1JvdXRlUGFyYW1TZXJ2aWNlIH0gZnJvbSAnbmd4LWNoby1jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2Noby1jYXJkLXRhYnMnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgaW1wb3J0czogW10sXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRhYnNcIj5cclxuICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgQGZvciAodGFiIG9mIHRhYnMoKTsgdHJhY2sgdGFiLnZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIChjbGljayk9XCJvblNlbGVjdCh0YWIudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIHRleHQtYWN0aXZlLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT09IHRhYi52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgdGFiLmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIENob0NhcmRUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmF2aWdhdGlvblNlcnZpY2UgPSBpbmplY3QoQ2hvTmF2aWdhdGlvblNlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZVBhcmFtU2VydmljZSA9IGluamVjdChDaG9Sb3V0ZVBhcmFtU2VydmljZSk7XHJcblxyXG4gICAgdGFicyA9IGlucHV0PEFycmF5PHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZyB9Pj4oKTtcclxuICAgIHRhYlNlbGVjdCA9IG91dHB1dDxzdHJpbmc+KCk7XHJcblxyXG4gICAgYWN0aXZlVGFiOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVUYWIgPSB0aGlzLnJvdXRlUGFyYW1TZXJ2aWNlLmdldFF1ZXJ5UGFyYW1ldGVyVmFsdWUoJ3Z3JykgfHwgJyc7XHJcbiAgICAgICAgdGhpcy50YWJTZWxlY3QuZW1pdCh0aGlzLmFjdGl2ZVRhYik7XHJcbiAgICB9XHJcblxyXG4gICAgb25TZWxlY3QodGFiVmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlVGFiID0gdGFiVmFsdWU7XHJcblxyXG4gICAgICAgIHRoaXMubmF2aWdhdGlvblNlcnZpY2Uuc2V0UXVlcnlQYXJhbXMoe1xyXG4gICAgICAgICAgICB2dzogdGFiVmFsdWUgPyB0YWJWYWx1ZSA6IG51bGwsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMudGFiU2VsZWN0LmVtaXQodGhpcy5hY3RpdmVUYWIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Component, ChangeDetectionStrategy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ChoCardToolbarComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoCardToolbarComponent, isStandalone: true, selector: "cho-card-toolbar", host: { classAttribute: "card-toolbar" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
- }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardToolbarComponent, decorators: [{
8
- type: Component,
9
- args: [{
10
- selector: 'cho-card-toolbar',
11
- standalone: true,
12
- changeDetection: ChangeDetectionStrategy.OnPush,
13
- imports: [],
14
- host: { class: 'card-toolbar' },
15
- template: ` <ng-content /> `,
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWNhcmQtdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9jaG8tY2FyZC10b29sYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVVuRSxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7bUdBQXZCLHVCQUF1QixzSEFGdEIsa0JBQWtCOzs0RkFFbkIsdUJBQXVCO2tCQVJuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRTtvQkFDL0IsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY2hvLWNhcmQtdG9vbGJhcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBpbXBvcnRzOiBbXSxcclxuICAgIGhvc3Q6IHsgY2xhc3M6ICdjYXJkLXRvb2xiYXInIH0sXHJcbiAgICB0ZW1wbGF0ZTogYCA8bmctY29udGVudCAvPiBgLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvQ2FyZFRvb2xiYXJDb21wb25lbnQge31cclxuIl19
@@ -1,123 +0,0 @@
1
- import { NgTemplateOutlet } from '@angular/common';
2
- import { ChoCardFiltersComponent } from './cho-card-filters.component';
3
- import { ChoCardHeaderComponent } from './cho-card-header.component';
4
- import { ChoCardTabsComponent } from './cho-card-tabs.component';
5
- import { ChoCardToolbarComponent } from './cho-card-toolbar.component';
6
- import { Component, ChangeDetectionStrategy, computed, effect, viewChild, signal, input, output, } from '@angular/core';
7
- import * as i0 from "@angular/core";
8
- export class ChoCardComponent {
9
- constructor() {
10
- this.header = input();
11
- this.headerText = input();
12
- this.toolbar = input();
13
- this.filters = input();
14
- this.content = input();
15
- this.tabs = input();
16
- this.tabSelect = output();
17
- // used for projected content detection
18
- this.contentWrapper = viewChild('contentWrapper');
19
- this.hasContent = computed(() => this.content() || this._hasProjectedContent());
20
- this.hasFilters = computed(() => !!this.filters());
21
- this.hasHeader = computed(() => !!this.header() || !!this.headerText());
22
- this.hasTabs = computed(() => !!this.tabs() && this.tabs().length > 0);
23
- this.hasToolbar = computed(() => !!this.toolbar());
24
- this._hasProjectedContent = signal(false);
25
- effect(() => this.detectProjectedContent(), { allowSignalWrites: true });
26
- }
27
- detectProjectedContent() {
28
- const wrapper = this.contentWrapper();
29
- if (wrapper) {
30
- const element = wrapper.nativeElement;
31
- const hasRealContent = Array.from(element.childNodes).some((node) => {
32
- if (node.nodeType === Node.ELEMENT_NODE)
33
- return true;
34
- if (node.nodeType === Node.TEXT_NODE) {
35
- return node.textContent?.trim().length > 0;
36
- }
37
- return false;
38
- });
39
- this._hasProjectedContent.set(hasRealContent);
40
- }
41
- }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ChoCardComponent, isStandalone: true, selector: "cho-card", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, toolbar: { classPropertyName: "toolbar", publicName: "toolbar", isSignal: true, isRequired: false, transformFunction: null }, filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabSelect: "tabSelect" }, viewQueries: [{ propertyName: "contentWrapper", first: true, predicate: ["contentWrapper"], descendants: true, isSignal: true }], ngImport: i0, template: `
44
- <div class="card mb-3">
45
- @if (hasHeader()) {
46
- <cho-card-header [toolbar]="toolbar()" [headerText]="headerText()">
47
- <ng-container *ngTemplateOutlet="header()!" />
48
- </cho-card-header>
49
- } @else if (hasToolbar()) {
50
- <cho-card-toolbar>
51
- <ng-container *ngTemplateOutlet="toolbar()!" />
52
- </cho-card-toolbar>
53
- }
54
-
55
- @if (hasFilters()) {
56
- <cho-card-filters>
57
- <ng-container *ngTemplateOutlet="filters()!" />
58
- </cho-card-filters>
59
- }
60
-
61
- @if (hasTabs()) {
62
- <cho-card-tabs [tabs]="tabs()!" (tabSelect)="tabSelect.emit($event)">
63
- </cho-card-tabs>
64
- }
65
-
66
- <div class="card-body" #contentWrapper [hidden]="!hasContent()">
67
- @if (content()) {
68
- <ng-container *ngTemplateOutlet="content()!" />
69
- } @else {
70
- <ng-content />
71
- }
72
- </div>
73
- </div>
74
- `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ChoCardHeaderComponent, selector: "cho-card-header", inputs: ["headerText", "toolbar"] }, { kind: "component", type: ChoCardToolbarComponent, selector: "cho-card-toolbar" }, { kind: "component", type: ChoCardFiltersComponent, selector: "cho-card-filters" }, { kind: "component", type: ChoCardTabsComponent, selector: "cho-card-tabs", inputs: ["tabs"], outputs: ["tabSelect"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
- }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoCardComponent, decorators: [{
77
- type: Component,
78
- args: [{
79
- selector: 'cho-card',
80
- standalone: true,
81
- changeDetection: ChangeDetectionStrategy.OnPush,
82
- imports: [
83
- NgTemplateOutlet,
84
- ChoCardHeaderComponent,
85
- ChoCardToolbarComponent,
86
- ChoCardFiltersComponent,
87
- ChoCardTabsComponent,
88
- ],
89
- template: `
90
- <div class="card mb-3">
91
- @if (hasHeader()) {
92
- <cho-card-header [toolbar]="toolbar()" [headerText]="headerText()">
93
- <ng-container *ngTemplateOutlet="header()!" />
94
- </cho-card-header>
95
- } @else if (hasToolbar()) {
96
- <cho-card-toolbar>
97
- <ng-container *ngTemplateOutlet="toolbar()!" />
98
- </cho-card-toolbar>
99
- }
100
-
101
- @if (hasFilters()) {
102
- <cho-card-filters>
103
- <ng-container *ngTemplateOutlet="filters()!" />
104
- </cho-card-filters>
105
- }
106
-
107
- @if (hasTabs()) {
108
- <cho-card-tabs [tabs]="tabs()!" (tabSelect)="tabSelect.emit($event)">
109
- </cho-card-tabs>
110
- }
111
-
112
- <div class="card-body" #contentWrapper [hidden]="!hasContent()">
113
- @if (content()) {
114
- <ng-container *ngTemplateOutlet="content()!" />
115
- } @else {
116
- <ng-content />
117
- }
118
- </div>
119
- </div>
120
- `,
121
- }]
122
- }], ctorParameters: () => [] });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNoby1jb21wb25lbnRzL3NyYy9saWIvY2hvLWNhcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFDSCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLFFBQVEsRUFFUixNQUFNLEVBQ04sU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDOztBQThDdkIsTUFBTSxPQUFPLGdCQUFnQjtJQXFCekI7UUFwQkEsV0FBTSxHQUFHLEtBQUssRUFBb0IsQ0FBQztRQUNuQyxlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsWUFBTyxHQUFHLEtBQUssRUFBb0IsQ0FBQztRQUNwQyxZQUFPLEdBQUcsS0FBSyxFQUFvQixDQUFDO1FBQ3BDLFlBQU8sR0FBRyxLQUFLLEVBQW9CLENBQUM7UUFDcEMsU0FBSSxHQUFHLEtBQUssRUFBMkMsQ0FBQztRQUV4RCxjQUFTLEdBQUcsTUFBTSxFQUFVLENBQUM7UUFFN0IsdUNBQXVDO1FBQ3ZDLG1CQUFjLEdBQUcsU0FBUyxDQUFhLGdCQUFnQixDQUFDLENBQUM7UUFFekQsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUMzRSxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM5QyxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLFlBQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRXRDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUd6QyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTyxzQkFBc0I7UUFDMUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXRDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDVixNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDO1lBRXRDLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO2dCQUNyRSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFlBQVk7b0JBQUUsT0FBTyxJQUFJLENBQUM7Z0JBQ3JELElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ25DLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDO2dCQUNELE9BQU8sS0FBSyxDQUFDO1lBQ2pCLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsRCxDQUFDO0lBQ0wsQ0FBQzsrR0F6Q1EsZ0JBQWdCO21HQUFoQixnQkFBZ0IsdytCQWpDZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQStCVCw0REFyQ0csZ0JBQWdCLG9KQUNoQixzQkFBc0IsK0ZBQ3RCLHVCQUF1Qiw2REFDdkIsdUJBQXVCLDZEQUN2QixvQkFBb0I7OzRGQW1DZixnQkFBZ0I7a0JBNUM1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRTt3QkFDTCxnQkFBZ0I7d0JBQ2hCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2Qix1QkFBdUI7d0JBQ3ZCLG9CQUFvQjtxQkFDdkI7b0JBQ0QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBK0JUO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENob0NhcmRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jaG8tY2FyZC1maWx0ZXJzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob0NhcmRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2Noby1jYXJkLWhlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaG9DYXJkVGFic0NvbXBvbmVudCB9IGZyb20gJy4vY2hvLWNhcmQtdGFicy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaG9DYXJkVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vY2hvLWNhcmQtdG9vbGJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBjb21wdXRlZCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBlZmZlY3QsXHJcbiAgICB2aWV3Q2hpbGQsXHJcbiAgICBzaWduYWwsXHJcbiAgICBpbnB1dCxcclxuICAgIFRlbXBsYXRlUmVmLFxyXG4gICAgb3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2Noby1jYXJkJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxyXG4gICAgICAgIENob0NhcmRIZWFkZXJDb21wb25lbnQsXHJcbiAgICAgICAgQ2hvQ2FyZFRvb2xiYXJDb21wb25lbnQsXHJcbiAgICAgICAgQ2hvQ2FyZEZpbHRlcnNDb21wb25lbnQsXHJcbiAgICAgICAgQ2hvQ2FyZFRhYnNDb21wb25lbnQsXHJcbiAgICBdLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBtYi0zXCI+XHJcbiAgICAgICAgICAgIEBpZiAoaGFzSGVhZGVyKCkpIHtcclxuICAgICAgICAgICAgICAgIDxjaG8tY2FyZC1oZWFkZXIgW3Rvb2xiYXJdPVwidG9vbGJhcigpXCIgW2hlYWRlclRleHRdPVwiaGVhZGVyVGV4dCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcigpIVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Noby1jYXJkLWhlYWRlcj5cclxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoaGFzVG9vbGJhcigpKSB7XHJcbiAgICAgICAgICAgICAgICA8Y2hvLWNhcmQtdG9vbGJhcj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidG9vbGJhcigpIVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Noby1jYXJkLXRvb2xiYXI+XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpZiAoaGFzRmlsdGVycygpKSB7XHJcbiAgICAgICAgICAgICAgICA8Y2hvLWNhcmQtZmlsdGVycz5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmlsdGVycygpIVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Noby1jYXJkLWZpbHRlcnM+XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpZiAoaGFzVGFicygpKSB7XHJcbiAgICAgICAgICAgICAgICA8Y2hvLWNhcmQtdGFicyBbdGFic109XCJ0YWJzKCkhXCIgKHRhYlNlbGVjdCk9XCJ0YWJTZWxlY3QuZW1pdCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICA8L2Noby1jYXJkLXRhYnM+XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIiAjY29udGVudFdyYXBwZXIgW2hpZGRlbl09XCIhaGFzQ29udGVudCgpXCI+XHJcbiAgICAgICAgICAgICAgICBAaWYgKGNvbnRlbnQoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50KCkhXCIgLz5cclxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIENob0NhcmRDb21wb25lbnQge1xyXG4gICAgaGVhZGVyID0gaW5wdXQ8VGVtcGxhdGVSZWY8YW55Pj4oKTtcclxuICAgIGhlYWRlclRleHQgPSBpbnB1dDxzdHJpbmc+KCk7XHJcbiAgICB0b29sYmFyID0gaW5wdXQ8VGVtcGxhdGVSZWY8YW55Pj4oKTtcclxuICAgIGZpbHRlcnMgPSBpbnB1dDxUZW1wbGF0ZVJlZjxhbnk+PigpO1xyXG4gICAgY29udGVudCA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4+KCk7XHJcbiAgICB0YWJzID0gaW5wdXQ8QXJyYXk8eyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogc3RyaW5nIH0+PigpO1xyXG5cclxuICAgIHRhYlNlbGVjdCA9IG91dHB1dDxzdHJpbmc+KCk7XHJcblxyXG4gICAgLy8gdXNlZCBmb3IgcHJvamVjdGVkIGNvbnRlbnQgZGV0ZWN0aW9uXHJcbiAgICBjb250ZW50V3JhcHBlciA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPignY29udGVudFdyYXBwZXInKTtcclxuXHJcbiAgICBoYXNDb250ZW50ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jb250ZW50KCkgfHwgdGhpcy5faGFzUHJvamVjdGVkQ29udGVudCgpKTtcclxuICAgIGhhc0ZpbHRlcnMgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMuZmlsdGVycygpKTtcclxuICAgIGhhc0hlYWRlciA9IGNvbXB1dGVkKCgpID0+ICEhdGhpcy5oZWFkZXIoKSB8fCAhIXRoaXMuaGVhZGVyVGV4dCgpKTtcclxuICAgIGhhc1RhYnMgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMudGFicygpICYmIHRoaXMudGFicygpIS5sZW5ndGggPiAwKTtcclxuICAgIGhhc1Rvb2xiYXIgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMudG9vbGJhcigpKTtcclxuXHJcbiAgICBwcml2YXRlIF9oYXNQcm9qZWN0ZWRDb250ZW50ID0gc2lnbmFsKGZhbHNlKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICBlZmZlY3QoKCkgPT4gdGhpcy5kZXRlY3RQcm9qZWN0ZWRDb250ZW50KCksIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBkZXRlY3RQcm9qZWN0ZWRDb250ZW50KCkge1xyXG4gICAgICAgIGNvbnN0IHdyYXBwZXIgPSB0aGlzLmNvbnRlbnRXcmFwcGVyKCk7XHJcblxyXG4gICAgICAgIGlmICh3cmFwcGVyKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSB3cmFwcGVyLm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBoYXNSZWFsQ29udGVudCA9IEFycmF5LmZyb20oZWxlbWVudC5jaGlsZE5vZGVzKS5zb21lKChub2RlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLkVMRU1FTlRfTk9ERSkgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9kZS50ZXh0Q29udGVudD8udHJpbSgpLmxlbmd0aCA+IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5faGFzUHJvamVjdGVkQ29udGVudC5zZXQoaGFzUmVhbENvbnRlbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,52 +0,0 @@
1
- import { Component, ContentChild, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ChoDetailsCardComponent {
4
- constructor() {
5
- this.cardTitle = '';
6
- this.toolbar = null;
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoDetailsCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoDetailsCardComponent, isStandalone: true, selector: "cho-details-card", inputs: { cardTitle: "cardTitle" }, queries: [{ propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true }], ngImport: i0, template: `
10
- <div class="card mb-3">
11
- <div class="card-header">
12
- <h3 class="card-title">{{ cardTitle }}</h3>
13
-
14
- <div class="card-toolbar">
15
- <ng-content #toolbar select="[toolbar]"></ng-content>
16
- </div>
17
- </div>
18
-
19
- <div class="card-body">
20
- <ng-content></ng-content>
21
- </div>
22
- </div>
23
- `, isInline: true }); }
24
- }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoDetailsCardComponent, decorators: [{
26
- type: Component,
27
- args: [{
28
- selector: 'cho-details-card',
29
- standalone: true,
30
- template: `
31
- <div class="card mb-3">
32
- <div class="card-header">
33
- <h3 class="card-title">{{ cardTitle }}</h3>
34
-
35
- <div class="card-toolbar">
36
- <ng-content #toolbar select="[toolbar]"></ng-content>
37
- </div>
38
- </div>
39
-
40
- <div class="card-body">
41
- <ng-content></ng-content>
42
- </div>
43
- </div>
44
- `,
45
- }]
46
- }], propDecorators: { cardTitle: [{
47
- type: Input
48
- }], toolbar: [{
49
- type: ContentChild,
50
- args: ['toolbar']
51
- }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWRldGFpbHMtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9jaG8tZGV0YWlscy1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBcUI1RSxNQUFNLE9BQU8sdUJBQXVCO0lBbkJwQztRQW9CYSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBRUMsWUFBTyxHQUFnQyxJQUFJLENBQUM7S0FDeEU7K0dBSlksdUJBQXVCO21HQUF2Qix1QkFBdUIsZ05BaEJ0Qjs7Ozs7Ozs7Ozs7Ozs7S0FjVDs7NEZBRVEsdUJBQXVCO2tCQW5CbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7OztLQWNUO2lCQUNKOzhCQUVZLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRW1CLE9BQU87c0JBQS9CLFlBQVk7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjaG8tZGV0YWlscy1jYXJkJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIG1iLTNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+e3sgY2FyZFRpdGxlIH19PC9oMz5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgI3Rvb2xiYXIgc2VsZWN0PVwiW3Rvb2xiYXJdXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIGAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaG9EZXRhaWxzQ2FyZENvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSBjYXJkVGl0bGUgPSAnJztcclxuXHJcbiAgICBAQ29udGVudENoaWxkKCd0b29sYmFyJykgdG9vbGJhcjogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcclxufVxyXG4iXX0=
@@ -1,36 +0,0 @@
1
- import { NgIf } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/platform-browser";
5
- export class ChoEmailInfoComponent {
6
- constructor(sanitizer) {
7
- this.sanitizer = sanitizer;
8
- this.sanitizedEmailLink = this.email?.emailAddress
9
- ? this.sanitizer.bypassSecurityTrustUrl(`mailto:${this.email.emailAddress}`)
10
- : '';
11
- }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoEmailInfoComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoEmailInfoComponent, isStandalone: true, selector: "cho-email-info", inputs: { email: "email" }, ngImport: i0, template: `<ng-container *ngIf="email; else empty"
14
- ><span *ngIf="email.emailTypeCode">{{ email.emailTypeCode[0] }}: </span>
15
- <a [href]="sanitizedEmailLink">{{ email.emailAddress }}</a>
16
- <small *ngIf="email.description"> ({{ email.description }})</small></ng-container
17
- >
18
- <ng-template #empty><span>--</span></ng-template>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoEmailInfoComponent, decorators: [{
21
- type: Component,
22
- args: [{
23
- selector: 'cho-email-info',
24
- template: `<ng-container *ngIf="email; else empty"
25
- ><span *ngIf="email.emailTypeCode">{{ email.emailTypeCode[0] }}: </span>
26
- <a [href]="sanitizedEmailLink">{{ email.emailAddress }}</a>
27
- <small *ngIf="email.description"> ({{ email.description }})</small></ng-container
28
- >
29
- <ng-template #empty><span>--</span></ng-template>`,
30
- standalone: true,
31
- imports: [NgIf],
32
- }]
33
- }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { email: [{
34
- type: Input
35
- }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLWVtYWlsLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNoby1jb21wb25lbnRzL3NyYy9saWIvY2hvLWVtYWlsLWluZm8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBZ0JqRCxNQUFNLE9BQU8scUJBQXFCO0lBSzlCLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWTtZQUM5QyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDNUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNiLENBQUM7K0dBVFEscUJBQXFCO21HQUFyQixxQkFBcUIsc0dBVHBCOzs7OzswREFLNEMsNERBRTVDLElBQUk7OzRGQUVMLHFCQUFxQjtrQkFYakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUU7Ozs7OzBEQUs0QztvQkFDdEQsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDbEI7aUZBRVksS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IElFbWFpbEluZm8gfSBmcm9tICduZ3gtY2hvLWNvbW1vbic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2Noby1lbWFpbC1pbmZvJyxcclxuICAgIHRlbXBsYXRlOiBgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVtYWlsOyBlbHNlIGVtcHR5XCJcclxuICAgICAgICAgICAgPjxzcGFuICpuZ0lmPVwiZW1haWwuZW1haWxUeXBlQ29kZVwiPnt7IGVtYWlsLmVtYWlsVHlwZUNvZGVbMF0gfX06IDwvc3Bhbj5cclxuICAgICAgICAgICAgPGEgW2hyZWZdPVwic2FuaXRpemVkRW1haWxMaW5rXCI+e3sgZW1haWwuZW1haWxBZGRyZXNzIH19PC9hPlxyXG4gICAgICAgICAgICA8c21hbGwgKm5nSWY9XCJlbWFpbC5kZXNjcmlwdGlvblwiPiAoe3sgZW1haWwuZGVzY3JpcHRpb24gfX0pPC9zbWFsbD48L25nLWNvbnRhaW5lclxyXG4gICAgICAgID5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2VtcHR5PjxzcGFuPi0tPC9zcGFuPjwvbmctdGVtcGxhdGU+YCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdJZl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaG9FbWFpbEluZm9Db21wb25lbnQge1xyXG4gICAgQElucHV0KCkgZW1haWwhOiBJRW1haWxJbmZvO1xyXG5cclxuICAgIHB1YmxpYyBzYW5pdGl6ZWRFbWFpbExpbms6IFNhZmVVcmw7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xyXG4gICAgICAgIHRoaXMuc2FuaXRpemVkRW1haWxMaW5rID0gdGhpcy5lbWFpbD8uZW1haWxBZGRyZXNzXHJcbiAgICAgICAgICAgID8gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybChgbWFpbHRvOiR7dGhpcy5lbWFpbC5lbWFpbEFkZHJlc3N9YClcclxuICAgICAgICAgICAgOiAnJztcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,29 +0,0 @@
1
- import { NgIf } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class ChoPhoneInfoComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoPhoneInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoPhoneInfoComponent, isStandalone: true, selector: "cho-phone-info", inputs: { phone: "phone" }, ngImport: i0, template: ` <ng-container *ngIf="phone; else empty"
7
- ><span *ngIf="phone.phoneTypeCode">{{ phone.phoneTypeCode[0] }}: </span>
8
- {{ phone.phoneNumber }}
9
- <small *ngIf="phone.description"> ({{ phone.description }})</small></ng-container
10
- >
11
- <ng-template #empty><span>--</span></ng-template>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoPhoneInfoComponent, decorators: [{
14
- type: Component,
15
- args: [{
16
- selector: 'cho-phone-info',
17
- template: ` <ng-container *ngIf="phone; else empty"
18
- ><span *ngIf="phone.phoneTypeCode">{{ phone.phoneTypeCode[0] }}: </span>
19
- {{ phone.phoneNumber }}
20
- <small *ngIf="phone.description"> ({{ phone.description }})</small></ng-container
21
- >
22
- <ng-template #empty><span>--</span></ng-template>`,
23
- standalone: true,
24
- imports: [NgIf],
25
- }]
26
- }], propDecorators: { phone: [{
27
- type: Input
28
- }] } });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLXBob25lLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNoby1jb21wb25lbnRzL3NyYy9saWIvY2hvLXBob25lLWluZm8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFlakQsTUFBTSxPQUFPLHFCQUFxQjsrR0FBckIscUJBQXFCO21HQUFyQixxQkFBcUIsc0dBVHBCOzs7OzswREFLNEMsNERBRTVDLElBQUk7OzRGQUVMLHFCQUFxQjtrQkFYakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUU7Ozs7OzBEQUs0QztvQkFDdEQsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDbEI7OEJBRVksS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSVBob25lSW5mbyB9IGZyb20gJ25neC1jaG8tY29tbW9uJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY2hvLXBob25lLWluZm8nLFxyXG4gICAgdGVtcGxhdGU6IGAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBob25lOyBlbHNlIGVtcHR5XCJcclxuICAgICAgICAgICAgPjxzcGFuICpuZ0lmPVwicGhvbmUucGhvbmVUeXBlQ29kZVwiPnt7IHBob25lLnBob25lVHlwZUNvZGVbMF0gfX06IDwvc3Bhbj5cclxuICAgICAgICAgICAge3sgcGhvbmUucGhvbmVOdW1iZXIgfX1cclxuICAgICAgICAgICAgPHNtYWxsICpuZ0lmPVwicGhvbmUuZGVzY3JpcHRpb25cIj4gKHt7IHBob25lLmRlc2NyaXB0aW9uIH19KTwvc21hbGw+PC9uZy1jb250YWluZXJcclxuICAgICAgICA+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eT48c3Bhbj4tLTwvc3Bhbj48L25nLXRlbXBsYXRlPmAsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nSWZdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvUGhvbmVJbmZvQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpIHBob25lITogSVBob25lSW5mbztcclxufVxyXG4iXX0=
@@ -1,70 +0,0 @@
1
- import { NgFor } from '@angular/common';
2
- import { Component, EventEmitter, Input, Output } from '@angular/core';
3
- import { FormsModule } from '@angular/forms';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- export class ChoRadioGroupComponent {
7
- constructor() {
8
- this.label = '';
9
- this.options = [];
10
- this.groupName = '';
11
- this.defaultValue = null;
12
- this.selectionChange = new EventEmitter();
13
- this.selectedOption = this.defaultValue;
14
- }
15
- emitSelection() {
16
- if (this.selectedOption !== undefined) {
17
- this.selectionChange.emit(this.selectedOption);
18
- }
19
- }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoRadioGroupComponent, isStandalone: true, selector: "cho-radio-group", inputs: { label: "label", options: "options", groupName: "groupName", defaultValue: "defaultValue" }, outputs: { selectionChange: "selectionChange" }, ngImport: i0, template: `
22
- <div>
23
- <label class="form-label">{{ label }}</label>
24
- <div *ngFor="let option of options" class="form-check form-check-inline">
25
- <input
26
- class="form-check-input"
27
- type="radio"
28
- [name]="groupName"
29
- [value]="option.value"
30
- [(ngModel)]="selectedOption"
31
- (change)="emitSelection()" />
32
- {{ option.label }}
33
- </div>
34
- </div>
35
- `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoRadioGroupComponent, decorators: [{
38
- type: Component,
39
- args: [{
40
- selector: 'cho-radio-group',
41
- template: `
42
- <div>
43
- <label class="form-label">{{ label }}</label>
44
- <div *ngFor="let option of options" class="form-check form-check-inline">
45
- <input
46
- class="form-check-input"
47
- type="radio"
48
- [name]="groupName"
49
- [value]="option.value"
50
- [(ngModel)]="selectedOption"
51
- (change)="emitSelection()" />
52
- {{ option.label }}
53
- </div>
54
- </div>
55
- `,
56
- standalone: true,
57
- imports: [NgFor, FormsModule],
58
- }]
59
- }], propDecorators: { label: [{
60
- type: Input
61
- }], options: [{
62
- type: Input
63
- }], groupName: [{
64
- type: Input
65
- }], defaultValue: [{
66
- type: Input
67
- }], selectionChange: [{
68
- type: Output
69
- }] } });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLXJhZGlvLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jaG8tY29tcG9uZW50cy9zcmMvbGliL2Noby1yYWRpby1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFzQjdDLE1BQU0sT0FBTyxzQkFBc0I7SUFwQm5DO1FBcUJhLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxZQUFPLEdBQXdDLEVBQUUsQ0FBQztRQUNsRCxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsaUJBQVksR0FBYSxJQUFJLENBQUM7UUFFN0Isb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBRWxELG1CQUFjLEdBQWEsSUFBSSxDQUFDLFlBQVksQ0FBQztLQU92RDtJQUxVLGFBQWE7UUFDaEIsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0wsQ0FBQzsrR0FkUSxzQkFBc0I7bUdBQXRCLHNCQUFzQixrT0FsQnJCOzs7Ozs7Ozs7Ozs7OztLQWNULDREQUVTLEtBQUssa0hBQUUsV0FBVzs7NEZBRW5CLHNCQUFzQjtrQkFwQmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7OztLQWNUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDO2lCQUNoQzs4QkFFWSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjaG8tcmFkaW8tZ3JvdXAnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgbGFiZWwgfX08L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uc1wiIGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLWlubGluZVwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImdyb3VwTmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE9wdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJlbWl0U2VsZWN0aW9uKClcIiAvPlxyXG4gICAgICAgICAgICAgICAge3sgb3B0aW9uLmxhYmVsIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdGb3IsIEZvcm1zTW9kdWxlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENob1JhZGlvR3JvdXBDb21wb25lbnQ8VD4ge1xyXG4gICAgQElucHV0KCkgbGFiZWwgPSAnJztcclxuICAgIEBJbnB1dCgpIG9wdGlvbnM6IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IHVua25vd24gfVtdID0gW107XHJcbiAgICBASW5wdXQoKSBncm91cE5hbWUgPSAnJztcclxuICAgIEBJbnB1dCgpIGRlZmF1bHRWYWx1ZTogVCB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFQgfCBudWxsPigpO1xyXG5cclxuICAgIHB1YmxpYyBzZWxlY3RlZE9wdGlvbjogVCB8IG51bGwgPSB0aGlzLmRlZmF1bHRWYWx1ZTtcclxuXHJcbiAgICBwdWJsaWMgZW1pdFNlbGVjdGlvbigpIHtcclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZE9wdGlvbiAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZE9wdGlvbik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,31 +0,0 @@
1
- import { DatePipe, NgIf } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class ChoReviewStatusAlertComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoReviewStatusAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChoReviewStatusAlertComponent, isStandalone: true, selector: "cho-review-status-alert", inputs: { reviewedBy: "reviewedBy", reviewedDateTime: "reviewedDateTime" }, ngImport: i0, template: `
7
- <div class="alert alert-info" *ngIf="reviewedDateTime">
8
- Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date : 'shortDate' }} at
9
- {{ reviewedDateTime | date : 'shortTime' }}.
10
- </div>
11
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: DatePipe, name: "date" }] }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChoReviewStatusAlertComponent, decorators: [{
14
- type: Component,
15
- args: [{
16
- selector: 'cho-review-status-alert',
17
- template: `
18
- <div class="alert alert-info" *ngIf="reviewedDateTime">
19
- Review completed by {{ reviewedBy }} on {{ reviewedDateTime | date : 'shortDate' }} at
20
- {{ reviewedDateTime | date : 'shortTime' }}.
21
- </div>
22
- `,
23
- standalone: true,
24
- imports: [NgIf, DatePipe],
25
- }]
26
- }], propDecorators: { reviewedBy: [{
27
- type: Input
28
- }], reviewedDateTime: [{
29
- type: Input
30
- }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvLXJldmlldy1zdGF0dXMtYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNoby1jb21wb25lbnRzL3NyYy9saWIvY2hvLXJldmlldy1zdGF0dXMtYWxlcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBYWpELE1BQU0sT0FBTyw2QkFBNkI7K0dBQTdCLDZCQUE2QjttR0FBN0IsNkJBQTZCLCtKQVQ1Qjs7Ozs7S0FLVCw0REFFUyxJQUFJLHdGQUFFLFFBQVE7OzRGQUVmLDZCQUE2QjtrQkFYekMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxRQUFRLEVBQUU7Ozs7O0tBS1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUM7aUJBQzVCOzhCQUVZLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY2hvLXJldmlldy1zdGF0dXMtYWxlcnQnLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtaW5mb1wiICpuZ0lmPVwicmV2aWV3ZWREYXRlVGltZVwiPlxyXG4gICAgICAgICAgICBSZXZpZXcgY29tcGxldGVkIGJ5IHt7IHJldmlld2VkQnkgfX0gb24ge3sgcmV2aWV3ZWREYXRlVGltZSB8IGRhdGUgOiAnc2hvcnREYXRlJyB9fSBhdFxyXG4gICAgICAgICAgICB7eyByZXZpZXdlZERhdGVUaW1lIHwgZGF0ZSA6ICdzaG9ydFRpbWUnIH19LlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgYCxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdJZiwgRGF0ZVBpcGVdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hvUmV2aWV3U3RhdHVzQWxlcnRDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgcmV2aWV3ZWRCeTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gICAgQElucHV0KCkgcmV2aWV3ZWREYXRlVGltZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG59XHJcbiJdfQ==
@@ -1,12 +0,0 @@
1
- export { ChoAddressInfoComponent } from './cho-address-info.component';
2
- export { ChoCardComponent } from './cho-card.component';
3
- export { ChoCardFiltersComponent } from './cho-card-filters.component';
4
- export { ChoCardHeaderComponent } from './cho-card-header.component';
5
- export { ChoCardTabsComponent } from './cho-card-tabs.component';
6
- export { ChoCardToolbarComponent } from './cho-card-toolbar.component';
7
- export { ChoDetailsCardComponent } from './cho-details-card.component';
8
- export { ChoEmailInfoComponent } from './cho-email-info.component';
9
- export { ChoPhoneInfoComponent } from './cho-phone-info.component';
10
- export { ChoRadioGroupComponent } from './cho-radio-group.component';
11
- export { ChoReviewStatusAlertComponent } from './cho-review-status-alert.component';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY2hvLWNvbXBvbmVudHMvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENob0FkZHJlc3NJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jaG8tYWRkcmVzcy1pbmZvLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IENob0NhcmRDb21wb25lbnQgfSBmcm9tICcuL2Noby1jYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IENob0NhcmRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jaG8tY2FyZC1maWx0ZXJzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IENob0NhcmRIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2Noby1jYXJkLWhlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBDaG9DYXJkVGFic0NvbXBvbmVudCB9IGZyb20gJy4vY2hvLWNhcmQtdGFicy5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBDaG9DYXJkVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vY2hvLWNhcmQtdG9vbGJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBDaG9EZXRhaWxzQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY2hvLWRldGFpbHMtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHsgQ2hvRW1haWxJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jaG8tZW1haWwtaW5mby5jb21wb25lbnQnO1xuZXhwb3J0IHsgQ2hvUGhvbmVJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jaG8tcGhvbmUtaW5mby5jb21wb25lbnQnO1xuZXhwb3J0IHsgQ2hvUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vY2hvLXJhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgeyBDaG9SZXZpZXdTdGF0dXNBbGVydENvbXBvbmVudCB9IGZyb20gJy4vY2hvLXJldmlldy1zdGF0dXMtYWxlcnQuY29tcG9uZW50JztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWNoby1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNoby1jb21wb25lbnRzL3NyYy9uZ3gtY2hvLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of ngx-cho-components
3
- */
4
- export * from './lib';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1jaG8tY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1jaG8tY29tcG9uZW50c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliJztcclxuIl19