valtech-components 2.0.19 → 2.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/esm2022/lib/components/atoms/avatar/types.mjs +1 -1
  2. package/esm2022/lib/components/atoms/box/box.component.mjs +47 -0
  3. package/esm2022/lib/components/atoms/box/types.mjs +2 -0
  4. package/esm2022/lib/components/atoms/button/button.component.mjs +1 -1
  5. package/esm2022/lib/components/atoms/button/factory.mjs +1 -1
  6. package/esm2022/lib/components/atoms/display/display.component.mjs +28 -0
  7. package/esm2022/lib/components/atoms/display/types.mjs +2 -0
  8. package/esm2022/lib/components/atoms/divider/divider.component.mjs +17 -0
  9. package/esm2022/lib/components/atoms/divider/types.mjs +2 -0
  10. package/esm2022/lib/components/atoms/href/href.component.mjs +51 -0
  11. package/esm2022/lib/components/atoms/href/types.mjs +2 -0
  12. package/esm2022/lib/components/atoms/icon/icon.component.mjs +18 -0
  13. package/esm2022/lib/components/atoms/icon/types.mjs +2 -0
  14. package/esm2022/lib/components/atoms/image/image.component.mjs +50 -0
  15. package/esm2022/lib/components/atoms/image/types.mjs +2 -0
  16. package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +36 -0
  17. package/esm2022/lib/components/atoms/progress-bar/types.mjs +2 -0
  18. package/esm2022/lib/components/atoms/text/text.component.mjs +24 -0
  19. package/esm2022/lib/components/atoms/text/types.mjs +2 -0
  20. package/esm2022/lib/components/atoms/title/title.component.mjs +31 -0
  21. package/esm2022/lib/components/atoms/title/types.mjs +2 -0
  22. package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +32 -0
  23. package/esm2022/lib/components/molecules/alert-box/types.mjs +2 -0
  24. package/esm2022/lib/components/molecules/button-group/button-group.component.mjs +49 -0
  25. package/esm2022/lib/components/molecules/button-group/types.mjs +2 -0
  26. package/esm2022/lib/components/molecules/card/card.component.mjs +369 -0
  27. package/esm2022/lib/components/molecules/card/types.mjs +16 -0
  28. package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +15 -0
  29. package/esm2022/lib/components/molecules/comment-input/comment-input.component.mjs +23 -0
  30. package/esm2022/lib/components/molecules/content-loader/content-loader.component.mjs +32 -0
  31. package/esm2022/lib/components/molecules/content-loader/types.mjs +2 -0
  32. package/esm2022/lib/components/molecules/date-input/date-input.component.mjs +73 -0
  33. package/esm2022/lib/components/molecules/email-input/email-input.component.mjs +19 -0
  34. package/esm2022/lib/components/molecules/file-input/file-input.component.mjs +69 -0
  35. package/esm2022/lib/components/molecules/hint/hint.component.mjs +52 -0
  36. package/esm2022/lib/components/molecules/hour-input/hour-input.component.mjs +18 -0
  37. package/esm2022/lib/components/molecules/link/link.component.mjs +37 -0
  38. package/esm2022/lib/components/molecules/link/types.mjs +2 -0
  39. package/esm2022/lib/components/molecules/links-cake/links-cake.component.mjs +37 -0
  40. package/esm2022/lib/components/molecules/links-cake/types.mjs +2 -0
  41. package/esm2022/lib/components/molecules/notes-box/notes-box.component.mjs +33 -0
  42. package/esm2022/lib/components/molecules/notes-box/types.mjs +2 -0
  43. package/esm2022/lib/components/molecules/number-input/number-input.component.mjs +18 -0
  44. package/esm2022/lib/components/molecules/password-input/password-input.component.mjs +44 -0
  45. package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +45 -0
  46. package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +94 -0
  47. package/esm2022/lib/components/molecules/progress-status/types.mjs +2 -0
  48. package/esm2022/lib/components/molecules/prompter/prompter.component.mjs +84 -0
  49. package/esm2022/lib/components/molecules/prompter/types.mjs +2 -0
  50. package/esm2022/lib/components/molecules/radio-input/radio-input.component.mjs +33 -0
  51. package/esm2022/lib/components/molecules/searchbar/searchbar.component.mjs +61 -0
  52. package/esm2022/lib/components/molecules/text-input/text-input.component.mjs +18 -0
  53. package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +77 -0
  54. package/esm2022/lib/components/molecules/title-block/types.mjs +2 -0
  55. package/esm2022/lib/components/organisms/banner/banner.component.mjs +75 -0
  56. package/esm2022/lib/components/organisms/banner/types.mjs +2 -0
  57. package/esm2022/lib/components/organisms/footer/footer.component.mjs +50 -0
  58. package/esm2022/lib/components/organisms/footer/types.mjs +2 -0
  59. package/esm2022/lib/components/organisms/form/factory.mjs +8 -0
  60. package/esm2022/lib/components/organisms/form/form-footer/form-footer.component.mjs +76 -0
  61. package/esm2022/lib/components/organisms/form/form.component.mjs +230 -0
  62. package/esm2022/lib/components/organisms/header/header.component.mjs +33 -0
  63. package/esm2022/lib/components/organisms/header/types.mjs +2 -0
  64. package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +34 -0
  65. package/esm2022/lib/components/organisms/no-content/types.mjs +2 -0
  66. package/esm2022/lib/components/organisms/toolbar/toolbar.component.mjs +168 -0
  67. package/esm2022/lib/components/organisms/toolbar/types.mjs +2 -0
  68. package/esm2022/lib/components/organisms/wizard/types.mjs +7 -0
  69. package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +107 -0
  70. package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +103 -0
  71. package/esm2022/lib/components/templates/simple/simple.component.mjs +64 -0
  72. package/esm2022/lib/components/templates/simple/types.mjs +2 -0
  73. package/esm2022/lib/components/types.mjs +8 -1
  74. package/esm2022/public-api.mjs +71 -4
  75. package/fesm2022/valtech-components.mjs +2529 -159
  76. package/fesm2022/valtech-components.mjs.map +1 -1
  77. package/lib/components/atoms/avatar/types.d.ts +1 -1
  78. package/lib/components/atoms/box/box.component.d.ts +12 -0
  79. package/lib/components/atoms/box/types.d.ts +7 -0
  80. package/lib/components/atoms/button/button.component.d.ts +1 -1
  81. package/lib/components/atoms/button/factory.d.ts +1 -1
  82. package/lib/components/atoms/display/display.component.d.ts +10 -0
  83. package/lib/components/atoms/display/types.d.ts +6 -0
  84. package/lib/components/atoms/divider/divider.component.d.ts +10 -0
  85. package/lib/components/atoms/divider/types.d.ts +5 -0
  86. package/lib/components/atoms/href/href.component.d.ts +15 -0
  87. package/lib/components/atoms/href/types.d.ts +9 -0
  88. package/lib/components/atoms/icon/icon.component.d.ts +10 -0
  89. package/lib/components/atoms/icon/types.d.ts +6 -0
  90. package/lib/components/atoms/image/image.component.d.ts +12 -0
  91. package/lib/components/atoms/image/types.d.ts +11 -0
  92. package/lib/components/atoms/progress-bar/progress-bar.component.d.ts +10 -0
  93. package/lib/components/atoms/progress-bar/types.d.ts +9 -0
  94. package/lib/components/atoms/text/text.component.d.ts +10 -0
  95. package/lib/components/atoms/text/types.d.ts +7 -0
  96. package/lib/components/atoms/title/title.component.d.ts +10 -0
  97. package/lib/components/atoms/title/types.d.ts +7 -0
  98. package/lib/components/molecules/alert-box/alert-box.component.d.ts +10 -0
  99. package/lib/components/molecules/alert-box/types.d.ts +8 -0
  100. package/lib/components/molecules/button-group/button-group.component.d.ts +13 -0
  101. package/lib/components/molecules/button-group/types.d.ts +6 -0
  102. package/lib/components/molecules/card/card.component.d.ts +16 -0
  103. package/lib/components/molecules/card/types.d.ts +33 -0
  104. package/lib/components/molecules/check-input/check-input.component.d.ts +8 -0
  105. package/lib/components/molecules/comment-input/comment-input.component.d.ts +10 -0
  106. package/lib/components/molecules/content-loader/content-loader.component.d.ts +10 -0
  107. package/lib/components/molecules/content-loader/types.d.ts +7 -0
  108. package/lib/components/molecules/date-input/date-input.component.d.ts +10 -0
  109. package/lib/components/molecules/email-input/email-input.component.d.ts +10 -0
  110. package/lib/components/molecules/file-input/file-input.component.d.ts +15 -0
  111. package/lib/components/molecules/hint/hint.component.d.ts +11 -0
  112. package/lib/components/molecules/hour-input/hour-input.component.d.ts +10 -0
  113. package/lib/components/molecules/link/link.component.d.ts +12 -0
  114. package/lib/components/molecules/link/types.d.ts +6 -0
  115. package/lib/components/molecules/links-cake/links-cake.component.d.ts +10 -0
  116. package/lib/components/molecules/links-cake/types.d.ts +6 -0
  117. package/lib/components/molecules/notes-box/notes-box.component.d.ts +10 -0
  118. package/lib/components/molecules/notes-box/types.d.ts +8 -0
  119. package/lib/components/molecules/number-input/number-input.component.d.ts +10 -0
  120. package/lib/components/molecules/password-input/password-input.component.d.ts +11 -0
  121. package/lib/components/molecules/pin-input/pin-input.component.d.ts +15 -0
  122. package/lib/components/molecules/progress-status/progress-status.component.d.ts +14 -0
  123. package/lib/components/molecules/progress-status/types.d.ts +10 -0
  124. package/lib/components/molecules/prompter/prompter.component.d.ts +12 -0
  125. package/lib/components/molecules/prompter/types.d.ts +11 -0
  126. package/lib/components/molecules/radio-input/radio-input.component.d.ts +10 -0
  127. package/lib/components/molecules/searchbar/searchbar.component.d.ts +14 -0
  128. package/lib/components/molecules/text-input/text-input.component.d.ts +10 -0
  129. package/lib/components/molecules/title-block/title-block.component.d.ts +10 -0
  130. package/lib/components/molecules/title-block/types.d.ts +12 -0
  131. package/lib/components/organisms/banner/banner.component.d.ts +14 -0
  132. package/lib/components/organisms/banner/types.d.ts +11 -0
  133. package/lib/components/organisms/footer/footer.component.d.ts +12 -0
  134. package/lib/components/organisms/footer/types.d.ts +6 -0
  135. package/lib/components/organisms/form/factory.d.ts +5 -0
  136. package/lib/components/organisms/form/form-footer/form-footer.component.d.ts +15 -0
  137. package/lib/components/organisms/form/form.component.d.ts +23 -0
  138. package/lib/components/organisms/header/header.component.d.ts +12 -0
  139. package/lib/components/organisms/header/types.d.ts +6 -0
  140. package/lib/components/organisms/no-content/no-content.component.d.ts +12 -0
  141. package/lib/components/organisms/no-content/types.d.ts +6 -0
  142. package/lib/components/organisms/toolbar/toolbar.component.d.ts +21 -0
  143. package/lib/components/organisms/toolbar/types.d.ts +11 -0
  144. package/lib/components/organisms/wizard/types.d.ts +20 -0
  145. package/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.d.ts +21 -0
  146. package/lib/components/organisms/wizard/wizard.component.d.ts +22 -0
  147. package/lib/components/templates/simple/simple.component.d.ts +7 -0
  148. package/lib/components/templates/simple/types.d.ts +7 -0
  149. package/lib/components/types.d.ts +37 -2
  150. package/package.json +1 -1
  151. package/public-api.d.ts +70 -3
  152. package/esm2022/lib/components/atoms/button/types.mjs +0 -2
  153. package/lib/components/atoms/button/types.d.ts +0 -22
@@ -0,0 +1,32 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { BoxComponent } from '../../atoms/box/box.component';
3
+ import { IconComponent } from '../../atoms/icon/icon.component';
4
+ import { TextComponent } from '../../atoms/text/text.component';
5
+ import * as i0 from "@angular/core";
6
+ export class AlertBoxComponent {
7
+ constructor() { }
8
+ ngOnInit() { }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AlertBoxComponent, isStandalone: true, selector: "val-alert-box", inputs: { props: "props" }, ngImport: i0, template: `
11
+ <val-box [props]="props.box">
12
+ <div class="content-container" body>
13
+ <val-icon [props]="props.icon"></val-icon>
14
+ <val-text class="text" [props]="props.text"></val-text>
15
+ </div>
16
+ </val-box>
17
+ `, isInline: true, styles: [".text{margin-left:.25rem}.content-container{display:flex;align-items:flex-start}\n"], dependencies: [{ kind: "component", type: BoxComponent, selector: "val-box", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: IconComponent, selector: "val-icon", inputs: ["props"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }] }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AlertBoxComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 'val-alert-box', standalone: true, imports: [BoxComponent, IconComponent, TextComponent], template: `
22
+ <val-box [props]="props.box">
23
+ <div class="content-container" body>
24
+ <val-icon [props]="props.icon"></val-icon>
25
+ <val-text class="text" [props]="props.text"></val-text>
26
+ </div>
27
+ </val-box>
28
+ `, styles: [".text{margin-left:.25rem}.content-container{display:flex;align-items:flex-start}\n"] }]
29
+ }], ctorParameters: () => [], propDecorators: { props: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FsZXJ0LWJveC9hbGVydC1ib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWlCaEUsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBSSxDQUFDOytHQU5GLGlCQUFpQjttR0FBakIsaUJBQWlCLHFHQVZsQjs7Ozs7OztHQU9ULDRKQVJTLFlBQVksNkZBQUUsYUFBYSx3RUFBRSxhQUFhOzs0RkFXekMsaUJBQWlCO2tCQWQ3QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxZQUMzQzs7Ozs7OztHQU9UO3dEQUtELEtBQUs7c0JBREosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm94Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvYm94L2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3RleHQvdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWxlcnRCb3hNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtYWxlcnQtYm94JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0JveENvbXBvbmVudCwgSWNvbkNvbXBvbmVudCwgVGV4dENvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPHZhbC1ib3ggW3Byb3BzXT1cInByb3BzLmJveFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY29udGFpbmVyXCIgYm9keT5cbiAgICAgICAgPHZhbC1pY29uIFtwcm9wc109XCJwcm9wcy5pY29uXCI+PC92YWwtaWNvbj5cbiAgICAgICAgPHZhbC10ZXh0IGNsYXNzPVwidGV4dFwiIFtwcm9wc109XCJwcm9wcy50ZXh0XCI+PC92YWwtdGV4dD5cbiAgICAgIDwvZGl2PlxuICAgIDwvdmFsLWJveD5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQtYm94LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFsZXJ0Qm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgcHJvcHM6IEFsZXJ0Qm94TWV0YWRhdGE7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCkge31cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9hbGVydC1ib3gvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJveE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vYXRvbXMvYm94L3R5cGVzJztcbmltcG9ydCB7IEljb25NZXRhZGF0YSB9IGZyb20gJy4uLy4uL2F0b21zL2ljb24vdHlwZXMnO1xuaW1wb3J0IHsgVGV4dE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vYXRvbXMvdGV4dC90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxlcnRCb3hNZXRhZGF0YSB7XG4gIGJveDogQm94TWV0YWRhdGE7XG4gIGljb246IEljb25NZXRhZGF0YTtcbiAgdGV4dDogVGV4dE1ldGFkYXRhO1xufVxuIl19
@@ -0,0 +1,49 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { ButtonComponent } from '../../atoms/button/button.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class ButtonGroupComponent {
7
+ constructor() {
8
+ this.onClick = new EventEmitter();
9
+ }
10
+ ngOnInit() { }
11
+ clickHandler(token) {
12
+ this.onClick.emit(token);
13
+ }
14
+ get Position() {
15
+ if (this.props.buttons.length === 1 && this.props.position === 'spaced') {
16
+ return 'right';
17
+ }
18
+ return this.props.position;
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ButtonGroupComponent, isStandalone: true, selector: "val-button-group", inputs: { props: "props" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `
22
+ <div [ngClass]="['group-container', Position]" [class.column]="props.columned" style="width: 100%;">
23
+ <val-button
24
+ *ngFor="let b of props.buttons"
25
+ [props]="b"
26
+ (click)="clickHandler(b?.token)"
27
+ [ngStyle]="{ width: props.buttons.length === 1 ? '100%' : 'auto' }"
28
+ ></val-button>
29
+ </div>
30
+ `, isInline: true, styles: ["val-button{display:inline-block}.group-container{width:100%}.group-container.left{text-align:left}.group-container.center{text-align:center}.group-container.right{text-align:right}.group-container.column{display:flex;flex-direction:column-reverse}.group-container.spaced{display:flex;justify-content:space-between}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["props"], outputs: ["onClick"] }] }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ButtonGroupComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'val-button-group', standalone: true, imports: [CommonModule, ButtonComponent], template: `
35
+ <div [ngClass]="['group-container', Position]" [class.column]="props.columned" style="width: 100%;">
36
+ <val-button
37
+ *ngFor="let b of props.buttons"
38
+ [props]="b"
39
+ (click)="clickHandler(b?.token)"
40
+ [ngStyle]="{ width: props.buttons.length === 1 ? '100%' : 'auto' }"
41
+ ></val-button>
42
+ </div>
43
+ `, styles: ["val-button{display:inline-block}.group-container{width:100%}.group-container.left{text-align:left}.group-container.center{text-align:center}.group-container.right{text-align:right}.group-container.column{display:flex;flex-direction:column-reverse}.group-container.spaced{display:flex;justify-content:space-between}\n"] }]
44
+ }], ctorParameters: () => [], propDecorators: { props: [{
45
+ type: Input
46
+ }], onClick: [{
47
+ type: Output
48
+ }] } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2J1dHRvbi1ncm91cC9idXR0b24tZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7O0FBa0J0RSxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CO1FBRkEsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFdEIsQ0FBQztJQUVoQixRQUFRLEtBQUksQ0FBQztJQUViLFlBQVksQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDeEUsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDN0IsQ0FBQzsrR0FyQlUsb0JBQW9CO21HQUFwQixvQkFBb0IseUlBWnJCOzs7Ozs7Ozs7R0FTVCxxWUFWUyxZQUFZLCtVQUFFLGVBQWU7OzRGQWE1QixvQkFBb0I7a0JBaEJoQyxTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLFlBQzlCOzs7Ozs7Ozs7R0FTVDt3REFLRCxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkdyb3VwTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWJ1dHRvbi1ncm91cCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEJ1dHRvbkNvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBbbmdDbGFzc109XCJbJ2dyb3VwLWNvbnRhaW5lcicsIFBvc2l0aW9uXVwiIFtjbGFzcy5jb2x1bW5dPVwicHJvcHMuY29sdW1uZWRcIiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiPlxuICAgICAgPHZhbC1idXR0b25cbiAgICAgICAgKm5nRm9yPVwibGV0IGIgb2YgcHJvcHMuYnV0dG9uc1wiXG4gICAgICAgIFtwcm9wc109XCJiXCJcbiAgICAgICAgKGNsaWNrKT1cImNsaWNrSGFuZGxlcihiPy50b2tlbilcIlxuICAgICAgICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBwcm9wcy5idXR0b25zLmxlbmd0aCA9PT0gMSA/ICcxMDAlJyA6ICdhdXRvJyB9XCJcbiAgICAgID48L3ZhbC1idXR0b24+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi1ncm91cC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Hcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpXG4gIHByb3BzOiBCdXR0b25Hcm91cE1ldGFkYXRhO1xuXG4gIEBPdXRwdXQoKVxuICBvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCkge31cblxuICBjbGlja0hhbmRsZXIodG9rZW4/OiBzdHJpbmcpIHtcbiAgICB0aGlzLm9uQ2xpY2suZW1pdCh0b2tlbik7XG4gIH1cblxuICBnZXQgUG9zaXRpb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5wcm9wcy5idXR0b25zLmxlbmd0aCA9PT0gMSAmJiB0aGlzLnByb3BzLnBvc2l0aW9uID09PSAnc3BhY2VkJykge1xuICAgICAgcmV0dXJuICdyaWdodCc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucHJvcHMucG9zaXRpb247XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbk1ldGFkYXRhIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnV0dG9uR3JvdXBNZXRhZGF0YSB7XG4gIGJ1dHRvbnM6IEJ1dHRvbk1ldGFkYXRhW107XG4gIHBvc2l0aW9uOiAnY2VudGVyJyB8ICdsZWZ0JyB8ICdyaWdodCcgfCAnc3BhY2VkJztcbiAgY29sdW1uZWQ6IGJvb2xlYW47XG59XG4iXX0=
@@ -0,0 +1,369 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { IonButton, IonButtons, IonCard, IonCardContent, IonCardHeader, IonCardSubtitle, IonCardTitle, IonCheckbox, IonIcon, } from '@ionic/angular/standalone';
4
+ import { AvatarComponent } from '../../atoms/avatar/avatar.component';
5
+ import { ButtonComponent } from '../../atoms/button/button.component';
6
+ import { ImageComponent } from '../../atoms/image/image.component';
7
+ import { TextComponent } from '../../atoms/text/text.component';
8
+ import { ToolbarActionType } from '../../types';
9
+ import { CardSection, CardType } from './types';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/common";
12
+ export class CardComponent {
13
+ constructor() {
14
+ this.onClick = new EventEmitter();
15
+ this.types = CardType;
16
+ this.actionTypes = ToolbarActionType;
17
+ this.sections = CardSection;
18
+ }
19
+ ngOnInit() { }
20
+ clickHandler(section, token) {
21
+ this.onClick.emit({ section, token });
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CardComponent, isStandalone: true, selector: "val-card", inputs: { metadata: "metadata" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `
25
+ <ion-card *ngIf="metadata.type === types.native">
26
+ <img alt="image" [src]="metadata.image" />
27
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle">
28
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
29
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
30
+ </ion-card-header>
31
+
32
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
33
+
34
+ <val-button
35
+ *ngFor="let b of metadata.footerActions"
36
+ [props]="b"
37
+ (click)="clickHandler(sections.footer, b.token)"
38
+ ></val-button>
39
+ </ion-card>
40
+
41
+ <ion-card
42
+ *ngIf="metadata.type === types.tappable"
43
+ (click)="clickHandler(sections.content, metadata.token)"
44
+ class="tapable"
45
+ >
46
+ <img alt="image" [src]="metadata.image" />
47
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle">
48
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
49
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
50
+ </ion-card-header>
51
+
52
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
53
+ </ion-card>
54
+
55
+ <ion-card
56
+ *ngIf="metadata.type === types.checker"
57
+ (click)="clickHandler(sections.content, metadata.token)"
58
+ class="tapable"
59
+ >
60
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle" class="checker">
61
+ <div>
62
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
63
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
64
+ </div>
65
+ <div>
66
+ <ion-checkbox [checked]="metadata.selected"></ion-checkbox>
67
+ </div>
68
+ </ion-card-header>
69
+
70
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
71
+ </ion-card>
72
+
73
+ <ion-card *ngIf="metadata.type === types.complex" class="complex">
74
+ <ion-card-header class="complex-header">
75
+ <ion-buttons style="display: flex; align-items: center" *ngIf="metadata.leftActions.length > 0">
76
+ <ng-container *ngFor="let action of metadata.leftActions">
77
+ <ion-button
78
+ *ngIf="action.type === actionTypes.ICON"
79
+ (click)="clickHandler(sections.headerLeft, action.token)"
80
+ >
81
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
82
+ </ion-button>
83
+ <val-avatar
84
+ style="margin-right: 4px; cursor: pointer"
85
+ *ngIf="action.type === actionTypes.AVATAR"
86
+ [props]="{ size: 'small', image: action.description, default: '' }"
87
+ (onClick)="clickHandler(sections.headerLeft, action.token)"
88
+ ></val-avatar>
89
+ <val-image
90
+ *ngIf="action.type === actionTypes.IMAGE"
91
+ [props]="action.image"
92
+ (click)="clickHandler(sections.headerLeft, action.token)"
93
+ ></val-image>
94
+ <ion-button
95
+ *ngIf="action.type === actionTypes.BUTTON"
96
+ (click)="clickHandler(sections.headerLeft, action.token)"
97
+ >
98
+ {{ action.description }}
99
+ </ion-button>
100
+ <div *ngIf="metadata.headerText">
101
+ <val-text
102
+ [props]="{ content: metadata.headerText, color: 'dark', bold: true, size: 'medium' }"
103
+ ></val-text>
104
+ </div>
105
+ </ng-container>
106
+ </ion-buttons>
107
+ <ion-buttons style="display: flex; align-items: center" *ngIf="metadata.rightActions.length > 0">
108
+ <ng-container *ngFor="let action of metadata.rightActions">
109
+ <ion-button
110
+ *ngIf="action.type === actionTypes.ICON"
111
+ (click)="clickHandler(sections.headerRight, action.token)"
112
+ >
113
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
114
+ </ion-button>
115
+ <val-avatar
116
+ style="margin-right: 4px; cursor: pointer"
117
+ *ngIf="action.type === actionTypes.AVATAR"
118
+ [props]="{ size: 'small', image: action.description, default: '' }"
119
+ (onClick)="clickHandler(sections.headerRight, action.token)"
120
+ ></val-avatar>
121
+ <val-image
122
+ *ngIf="action.type === actionTypes.IMAGE"
123
+ [props]="action.image"
124
+ (click)="clickHandler(sections.headerRight, action.token)"
125
+ ></val-image>
126
+ <ion-button
127
+ *ngIf="action.type === actionTypes.BUTTON"
128
+ (click)="clickHandler(sections.headerRight, action.token)"
129
+ >
130
+ {{ action.description }}
131
+ </ion-button>
132
+ </ng-container>
133
+ </ion-buttons>
134
+ </ion-card-header>
135
+
136
+ <div class="tapable" (click)="clickHandler(sections.content, metadata.token)">
137
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle" class="complex-header">
138
+ <div>
139
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
140
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
141
+ </div>
142
+ </ion-card-header>
143
+
144
+ <img alt="image" [src]="metadata.image" />
145
+ <ion-card-content *ngIf="metadata.content" class="complex-content">{{ metadata.content }}</ion-card-content>
146
+ </div>
147
+ <val-button
148
+ *ngFor="let b of metadata.footerActions"
149
+ [props]="b"
150
+ (click)="clickHandler(sections.footer, b.token)"
151
+ ></val-button>
152
+ <ion-buttons
153
+ style="display: flex; align-items: center; justify-content: flex-end; margin: 8px"
154
+ *ngIf="metadata.footerComplexActions.length > 0"
155
+ >
156
+ <ng-container *ngFor="let action of metadata.footerComplexActions">
157
+ <ion-button
158
+ *ngIf="action.type === actionTypes.ICON"
159
+ (click)="clickHandler(sections.footerExtra, action.token)"
160
+ >
161
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
162
+ </ion-button>
163
+ <val-avatar
164
+ style="margin-right: 4px; cursor: pointer"
165
+ *ngIf="action.type === actionTypes.AVATAR"
166
+ [props]="{ size: 'small', image: action.description, default: '' }"
167
+ (onClick)="clickHandler(sections.footerExtra, action.token)"
168
+ ></val-avatar>
169
+ <val-image
170
+ *ngIf="action.type === actionTypes.IMAGE"
171
+ [props]="action.image"
172
+ (click)="clickHandler(sections.footerExtra, action.token)"
173
+ ></val-image>
174
+ <ion-button
175
+ *ngIf="action.type === actionTypes.BUTTON"
176
+ (click)="clickHandler(sections.footerExtra, action.token)"
177
+ color="dark"
178
+ >
179
+ {{ action.description }}
180
+ </ion-button>
181
+ </ng-container>
182
+ </ion-buttons>
183
+ </ion-card>
184
+ `, isInline: true, styles: [".tapable{cursor:pointer}.checker{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.complex-header{padding:10px;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.complex-content{padding-left:10px;padding-top:4px;padding-bottom:10px}.complex{border-radius:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: AvatarComponent, selector: "val-avatar", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: ImageComponent, selector: "val-image", inputs: ["props"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }, { kind: "component", type: IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: IonCardSubtitle, selector: "ion-card-subtitle", inputs: ["color", "mode"] }, { kind: "component", type: IonCheckbox, selector: "ion-checkbox", inputs: ["checked", "color", "disabled", "indeterminate", "justify", "labelPlacement", "mode", "name", "value"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
185
+ }
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CardComponent, decorators: [{
187
+ type: Component,
188
+ args: [{ selector: 'val-card', standalone: true, imports: [
189
+ CommonModule,
190
+ ButtonComponent,
191
+ AvatarComponent,
192
+ ImageComponent,
193
+ TextComponent,
194
+ IonCard,
195
+ IonCardContent,
196
+ IonCardHeader,
197
+ IonCardTitle,
198
+ IonCardSubtitle,
199
+ IonCheckbox,
200
+ IonButtons,
201
+ IonButton,
202
+ IonIcon,
203
+ ], template: `
204
+ <ion-card *ngIf="metadata.type === types.native">
205
+ <img alt="image" [src]="metadata.image" />
206
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle">
207
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
208
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
209
+ </ion-card-header>
210
+
211
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
212
+
213
+ <val-button
214
+ *ngFor="let b of metadata.footerActions"
215
+ [props]="b"
216
+ (click)="clickHandler(sections.footer, b.token)"
217
+ ></val-button>
218
+ </ion-card>
219
+
220
+ <ion-card
221
+ *ngIf="metadata.type === types.tappable"
222
+ (click)="clickHandler(sections.content, metadata.token)"
223
+ class="tapable"
224
+ >
225
+ <img alt="image" [src]="metadata.image" />
226
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle">
227
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
228
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
229
+ </ion-card-header>
230
+
231
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
232
+ </ion-card>
233
+
234
+ <ion-card
235
+ *ngIf="metadata.type === types.checker"
236
+ (click)="clickHandler(sections.content, metadata.token)"
237
+ class="tapable"
238
+ >
239
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle" class="checker">
240
+ <div>
241
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
242
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
243
+ </div>
244
+ <div>
245
+ <ion-checkbox [checked]="metadata.selected"></ion-checkbox>
246
+ </div>
247
+ </ion-card-header>
248
+
249
+ <ion-card-content *ngIf="metadata.content">{{ metadata.content }}</ion-card-content>
250
+ </ion-card>
251
+
252
+ <ion-card *ngIf="metadata.type === types.complex" class="complex">
253
+ <ion-card-header class="complex-header">
254
+ <ion-buttons style="display: flex; align-items: center" *ngIf="metadata.leftActions.length > 0">
255
+ <ng-container *ngFor="let action of metadata.leftActions">
256
+ <ion-button
257
+ *ngIf="action.type === actionTypes.ICON"
258
+ (click)="clickHandler(sections.headerLeft, action.token)"
259
+ >
260
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
261
+ </ion-button>
262
+ <val-avatar
263
+ style="margin-right: 4px; cursor: pointer"
264
+ *ngIf="action.type === actionTypes.AVATAR"
265
+ [props]="{ size: 'small', image: action.description, default: '' }"
266
+ (onClick)="clickHandler(sections.headerLeft, action.token)"
267
+ ></val-avatar>
268
+ <val-image
269
+ *ngIf="action.type === actionTypes.IMAGE"
270
+ [props]="action.image"
271
+ (click)="clickHandler(sections.headerLeft, action.token)"
272
+ ></val-image>
273
+ <ion-button
274
+ *ngIf="action.type === actionTypes.BUTTON"
275
+ (click)="clickHandler(sections.headerLeft, action.token)"
276
+ >
277
+ {{ action.description }}
278
+ </ion-button>
279
+ <div *ngIf="metadata.headerText">
280
+ <val-text
281
+ [props]="{ content: metadata.headerText, color: 'dark', bold: true, size: 'medium' }"
282
+ ></val-text>
283
+ </div>
284
+ </ng-container>
285
+ </ion-buttons>
286
+ <ion-buttons style="display: flex; align-items: center" *ngIf="metadata.rightActions.length > 0">
287
+ <ng-container *ngFor="let action of metadata.rightActions">
288
+ <ion-button
289
+ *ngIf="action.type === actionTypes.ICON"
290
+ (click)="clickHandler(sections.headerRight, action.token)"
291
+ >
292
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
293
+ </ion-button>
294
+ <val-avatar
295
+ style="margin-right: 4px; cursor: pointer"
296
+ *ngIf="action.type === actionTypes.AVATAR"
297
+ [props]="{ size: 'small', image: action.description, default: '' }"
298
+ (onClick)="clickHandler(sections.headerRight, action.token)"
299
+ ></val-avatar>
300
+ <val-image
301
+ *ngIf="action.type === actionTypes.IMAGE"
302
+ [props]="action.image"
303
+ (click)="clickHandler(sections.headerRight, action.token)"
304
+ ></val-image>
305
+ <ion-button
306
+ *ngIf="action.type === actionTypes.BUTTON"
307
+ (click)="clickHandler(sections.headerRight, action.token)"
308
+ >
309
+ {{ action.description }}
310
+ </ion-button>
311
+ </ng-container>
312
+ </ion-buttons>
313
+ </ion-card-header>
314
+
315
+ <div class="tapable" (click)="clickHandler(sections.content, metadata.token)">
316
+ <ion-card-header *ngIf="metadata.title || metadata.overtitle" class="complex-header">
317
+ <div>
318
+ <ion-card-subtitle *ngIf="metadata.overtitle">{{ metadata.overtitle }}</ion-card-subtitle>
319
+ <ion-card-title *ngIf="metadata.title">{{ metadata.title }}</ion-card-title>
320
+ </div>
321
+ </ion-card-header>
322
+
323
+ <img alt="image" [src]="metadata.image" />
324
+ <ion-card-content *ngIf="metadata.content" class="complex-content">{{ metadata.content }}</ion-card-content>
325
+ </div>
326
+ <val-button
327
+ *ngFor="let b of metadata.footerActions"
328
+ [props]="b"
329
+ (click)="clickHandler(sections.footer, b.token)"
330
+ ></val-button>
331
+ <ion-buttons
332
+ style="display: flex; align-items: center; justify-content: flex-end; margin: 8px"
333
+ *ngIf="metadata.footerComplexActions.length > 0"
334
+ >
335
+ <ng-container *ngFor="let action of metadata.footerComplexActions">
336
+ <ion-button
337
+ *ngIf="action.type === actionTypes.ICON"
338
+ (click)="clickHandler(sections.footerExtra, action.token)"
339
+ >
340
+ <ion-icon slot="icon-only" [name]="action.description" color="dark"></ion-icon>
341
+ </ion-button>
342
+ <val-avatar
343
+ style="margin-right: 4px; cursor: pointer"
344
+ *ngIf="action.type === actionTypes.AVATAR"
345
+ [props]="{ size: 'small', image: action.description, default: '' }"
346
+ (onClick)="clickHandler(sections.footerExtra, action.token)"
347
+ ></val-avatar>
348
+ <val-image
349
+ *ngIf="action.type === actionTypes.IMAGE"
350
+ [props]="action.image"
351
+ (click)="clickHandler(sections.footerExtra, action.token)"
352
+ ></val-image>
353
+ <ion-button
354
+ *ngIf="action.type === actionTypes.BUTTON"
355
+ (click)="clickHandler(sections.footerExtra, action.token)"
356
+ color="dark"
357
+ >
358
+ {{ action.description }}
359
+ </ion-button>
360
+ </ng-container>
361
+ </ion-buttons>
362
+ </ion-card>
363
+ `, styles: [".tapable{cursor:pointer}.checker{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.complex-header{padding:10px;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.complex-content{padding-left:10px;padding-top:4px;padding-bottom:10px}.complex{border-radius:16px}\n"] }]
364
+ }], ctorParameters: () => [], propDecorators: { metadata: [{
365
+ type: Input
366
+ }], onClick: [{
367
+ type: Output
368
+ }] } });
369
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkL2NhcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLE9BQU8sRUFDUCxjQUFjLEVBQ2QsYUFBYSxFQUNiLGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLE9BQU8sR0FDUixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUE4QixXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFDOzs7QUF3TDVFLE1BQU0sT0FBTyxhQUFhO0lBVXhCO1FBTkEsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRTdDLFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUNoQyxhQUFRLEdBQUcsV0FBVyxDQUFDO0lBRVIsQ0FBQztJQUVoQixRQUFRLEtBQUksQ0FBQztJQUViLFlBQVksQ0FBQyxPQUFvQixFQUFFLEtBQWM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDOytHQWhCVSxhQUFhO21HQUFiLGFBQWEsdUlBbktkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0tULDhZQS9LQyxZQUFZLGdRQUNaLGVBQWUsZ0dBQ2YsZUFBZSxnR0FDZixjQUFjLHlFQUNkLGFBQWEsd0VBQ2IsT0FBTyx5TEFDUCxjQUFjLCtFQUNkLGFBQWEsc0dBQ2IsWUFBWSxzRkFDWixlQUFlLHlGQUNmLFdBQVcsMEtBQ1gsVUFBVSw4RUFDVixTQUFTLG9QQUNULE9BQU87OzRGQXFLRSxhQUFhO2tCQXRMekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixPQUFPO3dCQUNQLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxVQUFVO3dCQUNWLFNBQVM7d0JBQ1QsT0FBTztxQkFDUixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0tUO3dEQUlRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR04sT0FBTztzQkFETixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIElvbkJ1dHRvbixcbiAgSW9uQnV0dG9ucyxcbiAgSW9uQ2FyZCxcbiAgSW9uQ2FyZENvbnRlbnQsXG4gIElvbkNhcmRIZWFkZXIsXG4gIElvbkNhcmRTdWJ0aXRsZSxcbiAgSW9uQ2FyZFRpdGxlLFxuICBJb25DaGVja2JveCxcbiAgSW9uSWNvbixcbn0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvdGV4dC90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sYmFyQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENhcmRDbGlja0V2ZW50LCBDYXJkTWV0YWRhLCBDYXJkU2VjdGlvbiwgQ2FyZFR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNhcmQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgSW1hZ2VDb21wb25lbnQsXG4gICAgVGV4dENvbXBvbmVudCxcbiAgICBJb25DYXJkLFxuICAgIElvbkNhcmRDb250ZW50LFxuICAgIElvbkNhcmRIZWFkZXIsXG4gICAgSW9uQ2FyZFRpdGxlLFxuICAgIElvbkNhcmRTdWJ0aXRsZSxcbiAgICBJb25DaGVja2JveCxcbiAgICBJb25CdXR0b25zLFxuICAgIElvbkJ1dHRvbixcbiAgICBJb25JY29uLFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpb24tY2FyZCAqbmdJZj1cIm1ldGFkYXRhLnR5cGUgPT09IHR5cGVzLm5hdGl2ZVwiPlxuICAgICAgPGltZyBhbHQ9XCJpbWFnZVwiIFtzcmNdPVwibWV0YWRhdGEuaW1hZ2VcIiAvPlxuICAgICAgPGlvbi1jYXJkLWhlYWRlciAqbmdJZj1cIm1ldGFkYXRhLnRpdGxlIHx8IG1ldGFkYXRhLm92ZXJ0aXRsZVwiPlxuICAgICAgICA8aW9uLWNhcmQtdGl0bGUgKm5nSWY9XCJtZXRhZGF0YS50aXRsZVwiPnt7IG1ldGFkYXRhLnRpdGxlIH19PC9pb24tY2FyZC10aXRsZT5cbiAgICAgICAgPGlvbi1jYXJkLXN1YnRpdGxlICpuZ0lmPVwibWV0YWRhdGEub3ZlcnRpdGxlXCI+e3sgbWV0YWRhdGEub3ZlcnRpdGxlIH19PC9pb24tY2FyZC1zdWJ0aXRsZT5cbiAgICAgIDwvaW9uLWNhcmQtaGVhZGVyPlxuXG4gICAgICA8aW9uLWNhcmQtY29udGVudCAqbmdJZj1cIm1ldGFkYXRhLmNvbnRlbnRcIj57eyBtZXRhZGF0YS5jb250ZW50IH19PC9pb24tY2FyZC1jb250ZW50PlxuXG4gICAgICA8dmFsLWJ1dHRvblxuICAgICAgICAqbmdGb3I9XCJsZXQgYiBvZiBtZXRhZGF0YS5mb290ZXJBY3Rpb25zXCJcbiAgICAgICAgW3Byb3BzXT1cImJcIlxuICAgICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmZvb3RlciwgYi50b2tlbilcIlxuICAgICAgPjwvdmFsLWJ1dHRvbj5cbiAgICA8L2lvbi1jYXJkPlxuXG4gICAgPGlvbi1jYXJkXG4gICAgICAqbmdJZj1cIm1ldGFkYXRhLnR5cGUgPT09IHR5cGVzLnRhcHBhYmxlXCJcbiAgICAgIChjbGljayk9XCJjbGlja0hhbmRsZXIoc2VjdGlvbnMuY29udGVudCwgbWV0YWRhdGEudG9rZW4pXCJcbiAgICAgIGNsYXNzPVwidGFwYWJsZVwiXG4gICAgPlxuICAgICAgPGltZyBhbHQ9XCJpbWFnZVwiIFtzcmNdPVwibWV0YWRhdGEuaW1hZ2VcIiAvPlxuICAgICAgPGlvbi1jYXJkLWhlYWRlciAqbmdJZj1cIm1ldGFkYXRhLnRpdGxlIHx8IG1ldGFkYXRhLm92ZXJ0aXRsZVwiPlxuICAgICAgICA8aW9uLWNhcmQtdGl0bGUgKm5nSWY9XCJtZXRhZGF0YS50aXRsZVwiPnt7IG1ldGFkYXRhLnRpdGxlIH19PC9pb24tY2FyZC10aXRsZT5cbiAgICAgICAgPGlvbi1jYXJkLXN1YnRpdGxlICpuZ0lmPVwibWV0YWRhdGEub3ZlcnRpdGxlXCI+e3sgbWV0YWRhdGEub3ZlcnRpdGxlIH19PC9pb24tY2FyZC1zdWJ0aXRsZT5cbiAgICAgIDwvaW9uLWNhcmQtaGVhZGVyPlxuXG4gICAgICA8aW9uLWNhcmQtY29udGVudCAqbmdJZj1cIm1ldGFkYXRhLmNvbnRlbnRcIj57eyBtZXRhZGF0YS5jb250ZW50IH19PC9pb24tY2FyZC1jb250ZW50PlxuICAgIDwvaW9uLWNhcmQ+XG5cbiAgICA8aW9uLWNhcmRcbiAgICAgICpuZ0lmPVwibWV0YWRhdGEudHlwZSA9PT0gdHlwZXMuY2hlY2tlclwiXG4gICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmNvbnRlbnQsIG1ldGFkYXRhLnRva2VuKVwiXG4gICAgICBjbGFzcz1cInRhcGFibGVcIlxuICAgID5cbiAgICAgIDxpb24tY2FyZC1oZWFkZXIgKm5nSWY9XCJtZXRhZGF0YS50aXRsZSB8fCBtZXRhZGF0YS5vdmVydGl0bGVcIiBjbGFzcz1cImNoZWNrZXJcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aW9uLWNhcmQtc3VidGl0bGUgKm5nSWY9XCJtZXRhZGF0YS5vdmVydGl0bGVcIj57eyBtZXRhZGF0YS5vdmVydGl0bGUgfX08L2lvbi1jYXJkLXN1YnRpdGxlPlxuICAgICAgICAgIDxpb24tY2FyZC10aXRsZSAqbmdJZj1cIm1ldGFkYXRhLnRpdGxlXCI+e3sgbWV0YWRhdGEudGl0bGUgfX08L2lvbi1jYXJkLXRpdGxlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aW9uLWNoZWNrYm94IFtjaGVja2VkXT1cIm1ldGFkYXRhLnNlbGVjdGVkXCI+PC9pb24tY2hlY2tib3g+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9pb24tY2FyZC1oZWFkZXI+XG5cbiAgICAgIDxpb24tY2FyZC1jb250ZW50ICpuZ0lmPVwibWV0YWRhdGEuY29udGVudFwiPnt7IG1ldGFkYXRhLmNvbnRlbnQgfX08L2lvbi1jYXJkLWNvbnRlbnQ+XG4gICAgPC9pb24tY2FyZD5cblxuICAgIDxpb24tY2FyZCAqbmdJZj1cIm1ldGFkYXRhLnR5cGUgPT09IHR5cGVzLmNvbXBsZXhcIiBjbGFzcz1cImNvbXBsZXhcIj5cbiAgICAgIDxpb24tY2FyZC1oZWFkZXIgY2xhc3M9XCJjb21wbGV4LWhlYWRlclwiPlxuICAgICAgICA8aW9uLWJ1dHRvbnMgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyXCIgKm5nSWY9XCJtZXRhZGF0YS5sZWZ0QWN0aW9ucy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIG1ldGFkYXRhLmxlZnRBY3Rpb25zXCI+XG4gICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICAqbmdJZj1cImFjdGlvbi50eXBlID09PSBhY3Rpb25UeXBlcy5JQ09OXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrSGFuZGxlcihzZWN0aW9ucy5oZWFkZXJMZWZ0LCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBbbmFtZV09XCJhY3Rpb24uZGVzY3JpcHRpb25cIiBjb2xvcj1cImRhcmtcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPHZhbC1hdmF0YXJcbiAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDRweDsgY3Vyc29yOiBwb2ludGVyXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJhY3Rpb24udHlwZSA9PT0gYWN0aW9uVHlwZXMuQVZBVEFSXCJcbiAgICAgICAgICAgICAgW3Byb3BzXT1cInsgc2l6ZTogJ3NtYWxsJywgaW1hZ2U6IGFjdGlvbi5kZXNjcmlwdGlvbiwgZGVmYXVsdDogJycgfVwiXG4gICAgICAgICAgICAgIChvbkNsaWNrKT1cImNsaWNrSGFuZGxlcihzZWN0aW9ucy5oZWFkZXJMZWZ0LCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICAgID48L3ZhbC1hdmF0YXI+XG4gICAgICAgICAgICA8dmFsLWltYWdlXG4gICAgICAgICAgICAgICpuZ0lmPVwiYWN0aW9uLnR5cGUgPT09IGFjdGlvblR5cGVzLklNQUdFXCJcbiAgICAgICAgICAgICAgW3Byb3BzXT1cImFjdGlvbi5pbWFnZVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbGlja0hhbmRsZXIoc2VjdGlvbnMuaGVhZGVyTGVmdCwgYWN0aW9uLnRva2VuKVwiXG4gICAgICAgICAgICA+PC92YWwtaW1hZ2U+XG4gICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICAqbmdJZj1cImFjdGlvbi50eXBlID09PSBhY3Rpb25UeXBlcy5CVVRUT05cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmhlYWRlckxlZnQsIGFjdGlvbi50b2tlbilcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBhY3Rpb24uZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtZXRhZGF0YS5oZWFkZXJUZXh0XCI+XG4gICAgICAgICAgICAgIDx2YWwtdGV4dFxuICAgICAgICAgICAgICAgIFtwcm9wc109XCJ7IGNvbnRlbnQ6IG1ldGFkYXRhLmhlYWRlclRleHQsIGNvbG9yOiAnZGFyaycsIGJvbGQ6IHRydWUsIHNpemU6ICdtZWRpdW0nIH1cIlxuICAgICAgICAgICAgICA+PC92YWwtdGV4dD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2lvbi1idXR0b25zPlxuICAgICAgICA8aW9uLWJ1dHRvbnMgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyXCIgKm5nSWY9XCJtZXRhZGF0YS5yaWdodEFjdGlvbnMubGVuZ3RoID4gMFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBtZXRhZGF0YS5yaWdodEFjdGlvbnNcIj5cbiAgICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiYWN0aW9uLnR5cGUgPT09IGFjdGlvblR5cGVzLklDT05cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmhlYWRlclJpZ2h0LCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBbbmFtZV09XCJhY3Rpb24uZGVzY3JpcHRpb25cIiBjb2xvcj1cImRhcmtcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPHZhbC1hdmF0YXJcbiAgICAgICAgICAgICAgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDRweDsgY3Vyc29yOiBwb2ludGVyXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJhY3Rpb24udHlwZSA9PT0gYWN0aW9uVHlwZXMuQVZBVEFSXCJcbiAgICAgICAgICAgICAgW3Byb3BzXT1cInsgc2l6ZTogJ3NtYWxsJywgaW1hZ2U6IGFjdGlvbi5kZXNjcmlwdGlvbiwgZGVmYXVsdDogJycgfVwiXG4gICAgICAgICAgICAgIChvbkNsaWNrKT1cImNsaWNrSGFuZGxlcihzZWN0aW9ucy5oZWFkZXJSaWdodCwgYWN0aW9uLnRva2VuKVwiXG4gICAgICAgICAgICA+PC92YWwtYXZhdGFyPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICAqbmdJZj1cImFjdGlvbi50eXBlID09PSBhY3Rpb25UeXBlcy5JTUFHRVwiXG4gICAgICAgICAgICAgIFtwcm9wc109XCJhY3Rpb24uaW1hZ2VcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmhlYWRlclJpZ2h0LCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICAgID48L3ZhbC1pbWFnZT5cbiAgICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiYWN0aW9uLnR5cGUgPT09IGFjdGlvblR5cGVzLkJVVFRPTlwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbGlja0hhbmRsZXIoc2VjdGlvbnMuaGVhZGVyUmlnaHQsIGFjdGlvbi50b2tlbilcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBhY3Rpb24uZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9pb24tYnV0dG9ucz5cbiAgICAgIDwvaW9uLWNhcmQtaGVhZGVyPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwidGFwYWJsZVwiIChjbGljayk9XCJjbGlja0hhbmRsZXIoc2VjdGlvbnMuY29udGVudCwgbWV0YWRhdGEudG9rZW4pXCI+XG4gICAgICAgIDxpb24tY2FyZC1oZWFkZXIgKm5nSWY9XCJtZXRhZGF0YS50aXRsZSB8fCBtZXRhZGF0YS5vdmVydGl0bGVcIiBjbGFzcz1cImNvbXBsZXgtaGVhZGVyXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxpb24tY2FyZC1zdWJ0aXRsZSAqbmdJZj1cIm1ldGFkYXRhLm92ZXJ0aXRsZVwiPnt7IG1ldGFkYXRhLm92ZXJ0aXRsZSB9fTwvaW9uLWNhcmQtc3VidGl0bGU+XG4gICAgICAgICAgICA8aW9uLWNhcmQtdGl0bGUgKm5nSWY9XCJtZXRhZGF0YS50aXRsZVwiPnt7IG1ldGFkYXRhLnRpdGxlIH19PC9pb24tY2FyZC10aXRsZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9pb24tY2FyZC1oZWFkZXI+XG5cbiAgICAgICAgPGltZyBhbHQ9XCJpbWFnZVwiIFtzcmNdPVwibWV0YWRhdGEuaW1hZ2VcIiAvPlxuICAgICAgICA8aW9uLWNhcmQtY29udGVudCAqbmdJZj1cIm1ldGFkYXRhLmNvbnRlbnRcIiBjbGFzcz1cImNvbXBsZXgtY29udGVudFwiPnt7IG1ldGFkYXRhLmNvbnRlbnQgfX08L2lvbi1jYXJkLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDx2YWwtYnV0dG9uXG4gICAgICAgICpuZ0Zvcj1cImxldCBiIG9mIG1ldGFkYXRhLmZvb3RlckFjdGlvbnNcIlxuICAgICAgICBbcHJvcHNdPVwiYlwiXG4gICAgICAgIChjbGljayk9XCJjbGlja0hhbmRsZXIoc2VjdGlvbnMuZm9vdGVyLCBiLnRva2VuKVwiXG4gICAgICA+PC92YWwtYnV0dG9uPlxuICAgICAgPGlvbi1idXR0b25zXG4gICAgICAgIHN0eWxlPVwiZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgbWFyZ2luOiA4cHhcIlxuICAgICAgICAqbmdJZj1cIm1ldGFkYXRhLmZvb3RlckNvbXBsZXhBY3Rpb25zLmxlbmd0aCA+IDBcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgbWV0YWRhdGEuZm9vdGVyQ29tcGxleEFjdGlvbnNcIj5cbiAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJhY3Rpb24udHlwZSA9PT0gYWN0aW9uVHlwZXMuSUNPTlwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmZvb3RlckV4dHJhLCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aW9uLWljb24gc2xvdD1cImljb24tb25seVwiIFtuYW1lXT1cImFjdGlvbi5kZXNjcmlwdGlvblwiIGNvbG9yPVwiZGFya1wiPjwvaW9uLWljb24+XG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgIDx2YWwtYXZhdGFyXG4gICAgICAgICAgICBzdHlsZT1cIm1hcmdpbi1yaWdodDogNHB4OyBjdXJzb3I6IHBvaW50ZXJcIlxuICAgICAgICAgICAgKm5nSWY9XCJhY3Rpb24udHlwZSA9PT0gYWN0aW9uVHlwZXMuQVZBVEFSXCJcbiAgICAgICAgICAgIFtwcm9wc109XCJ7IHNpemU6ICdzbWFsbCcsIGltYWdlOiBhY3Rpb24uZGVzY3JpcHRpb24sIGRlZmF1bHQ6ICcnIH1cIlxuICAgICAgICAgICAgKG9uQ2xpY2spPVwiY2xpY2tIYW5kbGVyKHNlY3Rpb25zLmZvb3RlckV4dHJhLCBhY3Rpb24udG9rZW4pXCJcbiAgICAgICAgICA+PC92YWwtYXZhdGFyPlxuICAgICAgICAgIDx2YWwtaW1hZ2VcbiAgICAgICAgICAgICpuZ0lmPVwiYWN0aW9uLnR5cGUgPT09IGFjdGlvblR5cGVzLklNQUdFXCJcbiAgICAgICAgICAgIFtwcm9wc109XCJhY3Rpb24uaW1hZ2VcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrSGFuZGxlcihzZWN0aW9ucy5mb290ZXJFeHRyYSwgYWN0aW9uLnRva2VuKVwiXG4gICAgICAgICAgPjwvdmFsLWltYWdlPlxuICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cImFjdGlvbi50eXBlID09PSBhY3Rpb25UeXBlcy5CVVRUT05cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrSGFuZGxlcihzZWN0aW9ucy5mb290ZXJFeHRyYSwgYWN0aW9uLnRva2VuKVwiXG4gICAgICAgICAgICBjb2xvcj1cImRhcmtcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IGFjdGlvbi5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2lvbi1idXR0b25zPlxuICAgIDwvaW9uLWNhcmQ+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIG1ldGFkYXRhOiBDYXJkTWV0YWRhO1xuXG4gIEBPdXRwdXQoKVxuICBvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxDYXJkQ2xpY2tFdmVudD4oKTtcblxuICB0eXBlcyA9IENhcmRUeXBlO1xuICBhY3Rpb25UeXBlcyA9IFRvb2xiYXJBY3Rpb25UeXBlO1xuICBzZWN0aW9ucyA9IENhcmRTZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgY2xpY2tIYW5kbGVyKHNlY3Rpb246IENhcmRTZWN0aW9uLCB0b2tlbj86IHN0cmluZykge1xuICAgIHRoaXMub25DbGljay5lbWl0KHsgc2VjdGlvbiwgdG9rZW4gfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,16 @@
1
+ export var CardType;
2
+ (function (CardType) {
3
+ CardType["native"] = "native";
4
+ CardType["checker"] = "checker";
5
+ CardType["tappable"] = "tappable";
6
+ CardType["complex"] = "complex";
7
+ })(CardType || (CardType = {}));
8
+ export var CardSection;
9
+ (function (CardSection) {
10
+ CardSection[CardSection["headerLeft"] = 0] = "headerLeft";
11
+ CardSection[CardSection["headerRight"] = 1] = "headerRight";
12
+ CardSection[CardSection["content"] = 2] = "content";
13
+ CardSection[CardSection["footer"] = 3] = "footer";
14
+ CardSection[CardSection["footerExtra"] = 4] = "footerExtra";
15
+ })(CardSection || (CardSection = {}));
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jYXJkL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBTixJQUFZLFFBS1g7QUFMRCxXQUFZLFFBQVE7SUFDbEIsNkJBQWlCLENBQUE7SUFDakIsK0JBQW1CLENBQUE7SUFDbkIsaUNBQXFCLENBQUE7SUFDckIsK0JBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUxXLFFBQVEsS0FBUixRQUFRLFFBS25CO0FBT0QsTUFBTSxDQUFOLElBQVksV0FNWDtBQU5ELFdBQVksV0FBVztJQUNyQix5REFBVSxDQUFBO0lBQ1YsMkRBQVcsQ0FBQTtJQUNYLG1EQUFPLENBQUE7SUFDUCxpREFBTSxDQUFBO0lBQ04sMkRBQVcsQ0FBQTtBQUNiLENBQUMsRUFOVyxXQUFXLEtBQVgsV0FBVyxRQU10QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbk1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgVG9vbGJhckFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGVudW0gQ2FyZFR5cGUge1xuICBuYXRpdmUgPSAnbmF0aXZlJyxcbiAgY2hlY2tlciA9ICdjaGVja2VyJyxcbiAgdGFwcGFibGUgPSAndGFwcGFibGUnLFxuICBjb21wbGV4ID0gJ2NvbXBsZXgnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhcmRDbGlja0V2ZW50IHtcbiAgc2VjdGlvbjogQ2FyZFNlY3Rpb247XG4gIHRva2VuPzogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBDYXJkU2VjdGlvbiB7XG4gIGhlYWRlckxlZnQsXG4gIGhlYWRlclJpZ2h0LFxuICBjb250ZW50LFxuICBmb290ZXIsXG4gIGZvb3RlckV4dHJhLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhcmRNZXRhZGEge1xuICB0b2tlbj86IHN0cmluZztcbiAgdHlwZTogQ2FyZFR5cGU7XG4gIHRpdGxlPzogc3RyaW5nO1xuICBvdmVydGl0bGU/OiBzdHJpbmc7XG4gIGNvbnRlbnQ/OiBzdHJpbmc7XG4gIGltYWdlPzogc3RyaW5nO1xuICBmb290ZXJBY3Rpb25zOiBCdXR0b25NZXRhZGF0YVtdO1xuICBmb290ZXJDb21wbGV4QWN0aW9uczogVG9vbGJhckFjdGlvbltdO1xuICBsZWZ0QWN0aW9uczogVG9vbGJhckFjdGlvbltdO1xuICByaWdodEFjdGlvbnM6IFRvb2xiYXJBY3Rpb25bXTtcbiAgc2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGhlYWRlclRleHQ/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component } from '@angular/core';
3
+ import { IonCheckbox } from '@ionic/angular/standalone';
4
+ import * as i0 from "@angular/core";
5
+ export class CheckInputComponent {
6
+ constructor() { }
7
+ ngOnInit() { }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CheckInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CheckInputComponent, isStandalone: true, selector: "val-check-input", ngImport: i0, template: ` <ion-checkbox>I agree to the terms and conditions</ion-checkbox> `, isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonCheckbox, selector: "ion-checkbox", inputs: ["checked", "color", "disabled", "indeterminate", "justify", "labelPlacement", "mode", "name", "value"] }] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CheckInputComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'val-check-input', standalone: true, imports: [CommonModule, IonCheckbox], template: ` <ion-checkbox>I agree to the terms and conditions</ion-checkbox> ` }]
14
+ }], ctorParameters: () => [] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2staW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY2hlY2staW5wdXQvY2hlY2staW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFTeEQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBSSxDQUFDOytHQUhGLG1CQUFtQjttR0FBbkIsbUJBQW1CLDJFQUhwQixvRUFBb0UseUVBRHBFLFlBQVksK0JBQUUsV0FBVzs7NEZBSXhCLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLFlBQzFCLG9FQUFvRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uQ2hlY2tib3ggfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNoZWNrLWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uQ2hlY2tib3hdLFxuICB0ZW1wbGF0ZTogYCA8aW9uLWNoZWNrYm94PkkgYWdyZWUgdG8gdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zPC9pb24tY2hlY2tib3g+IGAsXG4gIHN0eWxlVXJsczogWycuL2NoZWNrLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKSB7fVxufVxuIl19
@@ -0,0 +1,23 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { ReactiveFormsModule } from '@angular/forms';
4
+ import { IonCheckbox, IonTextarea } from '@ionic/angular/standalone';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/forms";
7
+ export class CommentInputComponent {
8
+ constructor() { }
9
+ ngOnInit() { }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CommentInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CommentInputComponent, isStandalone: true, selector: "val-comment-input", inputs: { props: "props" }, ngImport: i0, template: `
12
+ <ion-textarea [formControl]="props.control" [counter]="true" [maxlength]="props.range.max"></ion-textarea>
13
+ `, isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }] }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CommentInputComponent, decorators: [{
16
+ type: Component,
17
+ args: [{ selector: 'val-comment-input', standalone: true, imports: [CommonModule, ReactiveFormsModule, IonCheckbox, IonTextarea], template: `
18
+ <ion-textarea [formControl]="props.control" [counter]="true" [maxlength]="props.range.max"></ion-textarea>
19
+ ` }]
20
+ }], ctorParameters: () => [], propDecorators: { props: [{
21
+ type: Input
22
+ }] } });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb21tZW50LWlucHV0L2NvbW1lbnQtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFZckUsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQyxnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBSSxDQUFDOytHQUxGLHFCQUFxQjttR0FBckIscUJBQXFCLHlHQUx0Qjs7R0FFVCx5RUFIUyxZQUFZLDhCQUFFLG1CQUFtQiw2ZEFBZSxXQUFXOzs0RkFNMUQscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxZQUM1RDs7R0FFVDt3REFJUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW9uQ2hlY2tib3gsIElvblRleHRhcmVhIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBJbnB1dE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY29tbWVudC1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIElvbkNoZWNrYm94LCBJb25UZXh0YXJlYV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi10ZXh0YXJlYSBbZm9ybUNvbnRyb2xdPVwicHJvcHMuY29udHJvbFwiIFtjb3VudGVyXT1cInRydWVcIiBbbWF4bGVuZ3RoXT1cInByb3BzLnJhbmdlLm1heFwiPjwvaW9uLXRleHRhcmVhPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9jb21tZW50LWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbW1lbnRJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHByb3BzOiBJbnB1dE1ldGFkYXRhO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHt9XG59XG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { IonSpinner, IonText } from '@ionic/angular/standalone';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class ContentLoaderComponent {
7
+ constructor() { }
8
+ ngOnInit() { }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ContentLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ContentLoaderComponent, isStandalone: true, selector: "val-content-loader", inputs: { props: "props" }, ngImport: i0, template: `
11
+ <div [ngClass]="['spinner-wrapper', props.size]">
12
+ <ion-spinner [ngClass]="[props.size]" [name]="props.name" [color]="props.color"></ion-spinner>
13
+ <ion-text [color]="props.color">
14
+ <p>{{ props.text }}</p>
15
+ </ion-text>
16
+ </div>
17
+ `, isInline: true, styles: [".small{width:1.5rem;height:1.5rem}.medium{width:2.375rem;height:2.375rem}.large{width:3rem;height:3rem}.spinner-wrapper{width:100%;text-align:center}.spinner-wrapper.small{height:4.5rem;padding-top:1.5rem;font-size:.75rem;line-height:1.25rem;font-weight:400}.spinner-wrapper.medium{height:6.125rem;padding-top:2rem;font-size:.875rem;line-height:1.5rem;font-weight:400}@media (min-width: 768px){.spinner-wrapper.medium{font-size:1rem;line-height:1.5rem}}.spinner-wrapper.large{height:6.75rem;padding-top:2.625rem;font-size:1rem;line-height:1.5rem;font-weight:400}@media (min-width: 768px){.spinner-wrapper.large{font-size:1.125rem;line-height:1.5rem}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ContentLoaderComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 'val-content-loader', standalone: true, imports: [CommonModule, IonSpinner, IonText], template: `
22
+ <div [ngClass]="['spinner-wrapper', props.size]">
23
+ <ion-spinner [ngClass]="[props.size]" [name]="props.name" [color]="props.color"></ion-spinner>
24
+ <ion-text [color]="props.color">
25
+ <p>{{ props.text }}</p>
26
+ </ion-text>
27
+ </div>
28
+ `, styles: [".small{width:1.5rem;height:1.5rem}.medium{width:2.375rem;height:2.375rem}.large{width:3rem;height:3rem}.spinner-wrapper{width:100%;text-align:center}.spinner-wrapper.small{height:4.5rem;padding-top:1.5rem;font-size:.75rem;line-height:1.25rem;font-weight:400}.spinner-wrapper.medium{height:6.125rem;padding-top:2rem;font-size:.875rem;line-height:1.5rem;font-weight:400}@media (min-width: 768px){.spinner-wrapper.medium{font-size:1rem;line-height:1.5rem}}.spinner-wrapper.large{height:6.75rem;padding-top:2.625rem;font-size:1rem;line-height:1.5rem;font-weight:400}@media (min-width: 768px){.spinner-wrapper.large{font-size:1.125rem;line-height:1.5rem}}\n"] }]
29
+ }], ctorParameters: () => [], propDecorators: { props: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1sb2FkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvY29udGVudC1sb2FkZXIvY29udGVudC1sb2FkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFpQmhFLE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsZ0JBQWUsQ0FBQztJQUVoQixRQUFRLEtBQUksQ0FBQzsrR0FORixzQkFBc0I7bUdBQXRCLHNCQUFzQiwwR0FWdkI7Ozs7Ozs7R0FPVCxxdEJBUlMsWUFBWSw2SEFBRSxVQUFVLHlHQUFFLE9BQU87OzRGQVdoQyxzQkFBc0I7a0JBZGxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLFlBQ2xDOzs7Ozs7O0dBT1Q7d0RBS0QsS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uU3Bpbm5lciwgSW9uVGV4dCB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgQ29udGVudExvYWRlck1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1jb250ZW50LWxvYWRlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvblNwaW5uZXIsIElvblRleHRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgW25nQ2xhc3NdPVwiWydzcGlubmVyLXdyYXBwZXInLCBwcm9wcy5zaXplXVwiPlxuICAgICAgPGlvbi1zcGlubmVyIFtuZ0NsYXNzXT1cIltwcm9wcy5zaXplXVwiIFtuYW1lXT1cInByb3BzLm5hbWVcIiBbY29sb3JdPVwicHJvcHMuY29sb3JcIj48L2lvbi1zcGlubmVyPlxuICAgICAgPGlvbi10ZXh0IFtjb2xvcl09XCJwcm9wcy5jb2xvclwiPlxuICAgICAgICA8cD57eyBwcm9wcy50ZXh0IH19PC9wPlxuICAgICAgPC9pb24tdGV4dD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGVudC1sb2FkZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudExvYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpXG4gIHByb3BzOiBDb250ZW50TG9hZGVyTWV0YWRhdGE7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25Jbml0KCkge31cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb250ZW50LWxvYWRlci90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudExvYWRlck1ldGFkYXRhIHtcbiAgY29sb3I6IENvbG9yO1xuICBzaXplOiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnO1xuICBuYW1lOiAnY2lyY3VsYXInIHwgJ2NyZXNjZW50JyB8ICdkb3RzJyB8ICdsaW5lcy1zaGFycCc7XG4gIHRleHQ6IHN0cmluZztcbn1cbiJdfQ==