otimus-library 0.2.48 → 0.2.50

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 (201) hide show
  1. package/esm2022/lib/components/oc-accordion/oc-accordion.component.mjs +48 -0
  2. package/esm2022/lib/components/oc-accordion-item/oc-accordion-item.component.mjs +35 -0
  3. package/esm2022/lib/components/oc-autocomplete/oc-autocomplete.component.mjs +275 -0
  4. package/esm2022/lib/components/oc-badge/oc-badge.component.mjs +30 -0
  5. package/esm2022/lib/components/oc-checkbox/oc-checkbox.component.mjs +133 -0
  6. package/esm2022/lib/components/oc-chip/oc-chip.component.mjs +45 -0
  7. package/esm2022/lib/components/oc-filter/oc-filter.component.mjs +39 -0
  8. package/esm2022/lib/components/oc-input/oc-input.component.mjs +97 -0
  9. package/esm2022/lib/components/oc-key-value/oc-key-value.component.mjs +29 -0
  10. package/esm2022/lib/components/oc-log/oc-log.component.mjs +22 -0
  11. package/esm2022/lib/components/oc-menu/oc-menu.component.mjs +81 -0
  12. package/esm2022/lib/components/oc-modal/oc-modal.component.mjs +85 -0
  13. package/esm2022/lib/components/oc-modal-footer/oc-modal-footer.component.mjs +23 -0
  14. package/esm2022/lib/components/oc-not-found/oc-not-found.component.mjs +11 -0
  15. package/esm2022/lib/components/oc-pagination/oc-pagination.component.mjs +49 -0
  16. package/esm2022/lib/components/oc-profile/oc-profile.component.mjs +38 -0
  17. package/esm2022/lib/components/oc-step/oc-step.component.mjs +49 -0
  18. package/esm2022/lib/components/oc-stepper/oc-stepper.component.mjs +90 -0
  19. package/esm2022/lib/components/oc-tab/oc-tab.component.mjs +20 -0
  20. package/esm2022/lib/components/oc-tabs/oc-tabs.component.mjs +42 -0
  21. package/esm2022/lib/components/oc-toast/oc-toast.component.mjs +17 -0
  22. package/esm2022/lib/components/oc-toggle/oc-toggle.component.mjs +34 -0
  23. package/esm2022/lib/directives/oc-tooltip/oc-tooltip.directive.mjs +117 -0
  24. package/esm2022/lib/interfaces/oc-autocomplete.mjs +2 -0
  25. package/esm2022/lib/interfaces/oc-menu.mjs +2 -0
  26. package/esm2022/lib/interfaces/oc-style-theme.mjs +2 -0
  27. package/esm2022/lib/interfaces/oc-toast.mjs +2 -0
  28. package/esm2022/lib/otimus-library.component.mjs +19 -0
  29. package/esm2022/lib/otimus-library.service.mjs +14 -0
  30. package/esm2022/lib/services/internationalization.service.mjs +68 -0
  31. package/esm2022/lib/services/oc-toast.service.mjs +81 -0
  32. package/esm2022/lib/services/style-theme.service.mjs +21 -0
  33. package/esm2022/otimus-library.mjs +5 -0
  34. package/esm2022/public-api.mjs +30 -0
  35. package/fesm2022/otimus-library.mjs +1513 -0
  36. package/fesm2022/otimus-library.mjs.map +1 -0
  37. package/index.d.ts +5 -0
  38. package/lib/components/oc-accordion/oc-accordion.component.d.ts +18 -0
  39. package/lib/components/oc-accordion-item/oc-accordion-item.component.d.ts +12 -0
  40. package/lib/components/oc-autocomplete/oc-autocomplete.component.d.ts +68 -0
  41. package/lib/components/oc-badge/oc-badge.component.d.ts +11 -0
  42. package/lib/components/oc-checkbox/oc-checkbox.component.d.ts +35 -0
  43. package/lib/components/oc-chip/oc-chip.component.d.ts +14 -0
  44. package/lib/components/oc-filter/oc-filter.component.d.ts +17 -0
  45. package/lib/components/oc-input/oc-input.component.d.ts +31 -0
  46. package/lib/components/oc-key-value/oc-key-value.component.d.ts +14 -0
  47. package/lib/components/oc-log/oc-log.component.d.ts +7 -0
  48. package/lib/components/oc-menu/oc-menu.component.d.ts +20 -0
  49. package/lib/components/oc-modal/oc-modal.component.d.ts +30 -0
  50. package/lib/components/oc-modal-footer/oc-modal-footer.component.d.ts +8 -0
  51. package/lib/components/oc-not-found/oc-not-found.component.d.ts +5 -0
  52. package/lib/components/oc-pagination/oc-pagination.component.d.ts +14 -0
  53. package/lib/components/oc-profile/oc-profile.component.d.ts +12 -0
  54. package/lib/components/oc-step/oc-step.component.d.ts +22 -0
  55. package/lib/components/oc-stepper/oc-stepper.component.d.ts +24 -0
  56. package/lib/components/oc-tab/oc-tab.component.d.ts +8 -0
  57. package/lib/components/oc-tabs/oc-tabs.component.d.ts +18 -0
  58. package/lib/components/oc-toast/oc-toast.component.d.ts +8 -0
  59. package/lib/components/oc-toggle/oc-toggle.component.d.ts +12 -0
  60. package/lib/directives/oc-tooltip/oc-tooltip.directive.d.ts +20 -0
  61. package/lib/interfaces/oc-autocomplete.d.ts +5 -0
  62. package/lib/interfaces/oc-menu.d.ts +9 -0
  63. package/lib/interfaces/oc-style-theme.d.ts +2 -0
  64. package/lib/interfaces/oc-toast.d.ts +8 -0
  65. package/lib/otimus-library.component.d.ts +5 -0
  66. package/lib/otimus-library.service.d.ts +6 -0
  67. package/lib/services/internationalization.service.d.ts +17 -0
  68. package/lib/services/oc-toast.service.d.ts +14 -0
  69. package/lib/services/style-theme.service.d.ts +8 -0
  70. package/package.json +13 -4
  71. package/public-api.d.ts +26 -0
  72. package/ng-package.json +0 -12
  73. package/src/assets/images/loading.svg +0 -0
  74. package/src/assets/images/not-found-bg.jpg +0 -0
  75. package/src/lib/components/oc-accordion/oc-accordion.component.html +0 -3
  76. package/src/lib/components/oc-accordion/oc-accordion.component.scss +0 -4
  77. package/src/lib/components/oc-accordion/oc-accordion.component.ts +0 -44
  78. package/src/lib/components/oc-accordion-item/oc-accordion-item.component.html +0 -19
  79. package/src/lib/components/oc-accordion-item/oc-accordion-item.component.scss +0 -86
  80. package/src/lib/components/oc-accordion-item/oc-accordion-item.component.ts +0 -27
  81. package/src/lib/components/oc-accordion-item/styles/oc-accordion-item.shui-component.scss +0 -41
  82. package/src/lib/components/oc-autocomplete/oc-autocomplete.component.html +0 -66
  83. package/src/lib/components/oc-autocomplete/oc-autocomplete.component.scss +0 -157
  84. package/src/lib/components/oc-autocomplete/oc-autocomplete.component.ts +0 -277
  85. package/src/lib/components/oc-badge/oc-badge.component.html +0 -7
  86. package/src/lib/components/oc-badge/oc-badge.component.scss +0 -125
  87. package/src/lib/components/oc-badge/oc-badge.component.ts +0 -22
  88. package/src/lib/components/oc-checkbox/oc-checkbox.component.html +0 -30
  89. package/src/lib/components/oc-checkbox/oc-checkbox.component.scss +0 -103
  90. package/src/lib/components/oc-checkbox/oc-checkbox.component.ts +0 -132
  91. package/src/lib/components/oc-checkbox/styles/oc-checkbox.shui-component.scss +0 -21
  92. package/src/lib/components/oc-chip/oc-chip.component.html +0 -20
  93. package/src/lib/components/oc-chip/oc-chip.component.scss +0 -102
  94. package/src/lib/components/oc-chip/oc-chip.component.ts +0 -32
  95. package/src/lib/components/oc-filter/oc-filter.component.html +0 -22
  96. package/src/lib/components/oc-filter/oc-filter.component.scss +0 -78
  97. package/src/lib/components/oc-filter/oc-filter.component.spec.ts +0 -23
  98. package/src/lib/components/oc-filter/oc-filter.component.ts +0 -30
  99. package/src/lib/components/oc-input/oc-input.component.html +0 -21
  100. package/src/lib/components/oc-input/oc-input.component.scss +0 -3
  101. package/src/lib/components/oc-input/oc-input.component.ts +0 -100
  102. package/src/lib/components/oc-key-value/oc-key-value.component.html +0 -12
  103. package/src/lib/components/oc-key-value/oc-key-value.component.scss +0 -26
  104. package/src/lib/components/oc-key-value/oc-key-value.component.ts +0 -23
  105. package/src/lib/components/oc-key-value/styles/oc-key-value.shui-component.scss +0 -26
  106. package/src/lib/components/oc-log/oc-log.component.html +0 -18
  107. package/src/lib/components/oc-log/oc-log.component.scss +0 -61
  108. package/src/lib/components/oc-log/oc-log.component.ts +0 -15
  109. package/src/lib/components/oc-menu/oc-menu.component.html +0 -31
  110. package/src/lib/components/oc-menu/oc-menu.component.scss +0 -101
  111. package/src/lib/components/oc-menu/oc-menu.component.ts +0 -84
  112. package/src/lib/components/oc-modal/oc-modal.component.html +0 -54
  113. package/src/lib/components/oc-modal/oc-modal.component.scss +0 -204
  114. package/src/lib/components/oc-modal/oc-modal.component.ts +0 -82
  115. package/src/lib/components/oc-modal/styles/oc-modal.shui-component.scss +0 -3
  116. package/src/lib/components/oc-modal-footer/oc-modal-footer.component.html +0 -11
  117. package/src/lib/components/oc-modal-footer/oc-modal-footer.component.scss +0 -27
  118. package/src/lib/components/oc-modal-footer/oc-modal-footer.component.ts +0 -15
  119. package/src/lib/components/oc-not-found/oc-not-found.component.html +0 -14
  120. package/src/lib/components/oc-not-found/oc-not-found.component.scss +0 -153
  121. package/src/lib/components/oc-not-found/oc-not-found.component.spec.ts +0 -23
  122. package/src/lib/components/oc-not-found/oc-not-found.component.ts +0 -12
  123. package/src/lib/components/oc-pagination/oc-pagination.component.html +0 -32
  124. package/src/lib/components/oc-pagination/oc-pagination.component.scss +0 -80
  125. package/src/lib/components/oc-pagination/oc-pagination.component.ts +0 -46
  126. package/src/lib/components/oc-profile/oc-profile.component.html +0 -17
  127. package/src/lib/components/oc-profile/oc-profile.component.scss +0 -80
  128. package/src/lib/components/oc-profile/oc-profile.component.ts +0 -38
  129. package/src/lib/components/oc-step/oc-step.component.html +0 -32
  130. package/src/lib/components/oc-step/oc-step.component.scss +0 -106
  131. package/src/lib/components/oc-step/oc-step.component.ts +0 -39
  132. package/src/lib/components/oc-step/styles/oc-step.shui-component.scss +0 -52
  133. package/src/lib/components/oc-stepper/oc-stepper.component.html +0 -3
  134. package/src/lib/components/oc-stepper/oc-stepper.component.scss +0 -9
  135. package/src/lib/components/oc-stepper/oc-stepper.component.ts +0 -86
  136. package/src/lib/components/oc-tab/oc-tab.component.html +0 -3
  137. package/src/lib/components/oc-tab/oc-tab.component.scss +0 -0
  138. package/src/lib/components/oc-tab/oc-tab.component.ts +0 -15
  139. package/src/lib/components/oc-table/oc-table.component.html +0 -62
  140. package/src/lib/components/oc-table/oc-table.component.scss +0 -2
  141. package/src/lib/components/oc-table/oc-table.component.ts +0 -51
  142. package/src/lib/components/oc-tabs/oc-tabs.component.html +0 -13
  143. package/src/lib/components/oc-tabs/oc-tabs.component.scss +0 -47
  144. package/src/lib/components/oc-tabs/oc-tabs.component.ts +0 -46
  145. package/src/lib/components/oc-tabs/styles/oc-tabs.shui-component.scss +0 -25
  146. package/src/lib/components/oc-toast/oc-toast.component.html +0 -46
  147. package/src/lib/components/oc-toast/oc-toast.component.scss +0 -133
  148. package/src/lib/components/oc-toast/oc-toast.component.ts +0 -15
  149. package/src/lib/components/oc-toggle/oc-toggle.component.html +0 -4
  150. package/src/lib/components/oc-toggle/oc-toggle.component.scss +0 -73
  151. package/src/lib/components/oc-toggle/oc-toggle.component.spec.ts +0 -23
  152. package/src/lib/components/oc-toggle/oc-toggle.component.ts +0 -32
  153. package/src/lib/directives/oc-tooltip/oc-tooltip.directive.ts +0 -108
  154. package/src/lib/interfaces/internal/languages.ts +0 -16
  155. package/src/lib/interfaces/oc-autocomplete.ts +0 -6
  156. package/src/lib/interfaces/oc-menu.ts +0 -10
  157. package/src/lib/interfaces/oc-style-theme.ts +0 -3
  158. package/src/lib/interfaces/oc-table.ts +0 -12
  159. package/src/lib/interfaces/oc-toast.ts +0 -8
  160. package/src/lib/otimus-library.component.ts +0 -16
  161. package/src/lib/otimus-library.service.ts +0 -9
  162. package/src/lib/services/internationalization.service.ts +0 -73
  163. package/src/lib/services/oc-toast.service.ts +0 -107
  164. package/src/lib/services/style-theme.service.ts +0 -19
  165. package/src/public-api.ts +0 -30
  166. package/tsconfig.lib.json +0 -14
  167. package/tsconfig.lib.prod.json +0 -10
  168. package/tsconfig.spec.json +0 -14
  169. /package/{src/assets → assets}/fonts/siemens/SH-Bree-Headline-Oblique.woff +0 -0
  170. /package/{src/assets → assets}/fonts/siemens/SH-Bree-Headline-Oblique.woff2 +0 -0
  171. /package/{src/assets → assets}/fonts/siemens/SH-Bree-Headline-Regular.woff +0 -0
  172. /package/{src/assets → assets}/fonts/siemens/SH-Bree-Headline-Regular.woff2 +0 -0
  173. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Black.woff +0 -0
  174. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Black.woff2 +0 -0
  175. /package/{src/assets → assets}/fonts/siemens/SiemensSans-BlackItalic.woff +0 -0
  176. /package/{src/assets → assets}/fonts/siemens/SiemensSans-BlackItalic.woff2 +0 -0
  177. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Bold.woff +0 -0
  178. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Bold.woff2 +0 -0
  179. /package/{src/assets → assets}/fonts/siemens/SiemensSans-BoldItalic.woff +0 -0
  180. /package/{src/assets → assets}/fonts/siemens/SiemensSans-BoldItalic.woff2 +0 -0
  181. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Italic.woff +0 -0
  182. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Italic.woff2 +0 -0
  183. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Roman.woff +0 -0
  184. /package/{src/assets → assets}/fonts/siemens/SiemensSans-Roman.woff2 +0 -0
  185. /package/{src/styles → styles}/colors.scss +0 -0
  186. /package/{src/styles → styles}/components/buttons/buttons.scss +0 -0
  187. /package/{src/styles → styles}/components/buttons/buttons.shui.scss +0 -0
  188. /package/{src/styles → styles}/components/index.scss +0 -0
  189. /package/{src/styles → styles}/components/inputs/inputs.scss +0 -0
  190. /package/{src/styles → styles}/components/inputs/inputs.shui.scss +0 -0
  191. /package/{src/styles → styles}/components/table/table.scss +0 -0
  192. /package/{src/styles → styles}/components/table/table.shui.scss +0 -0
  193. /package/{src/styles → styles}/components/tooltip.scss +0 -0
  194. /package/{src/styles → styles}/grid.scss +0 -0
  195. /package/{src/styles → styles}/patterns/shui/colors.shui.scss +0 -0
  196. /package/{src/styles → styles}/patterns/shui/fonts.shui.scss +0 -0
  197. /package/{src/styles → styles}/patterns/shui/index.shui.scss +0 -0
  198. /package/{src/styles → styles}/patterns/shui/variables.shui.scss +0 -0
  199. /package/{src/styles → styles}/states.scss +0 -0
  200. /package/{src/styles → styles}/styles.scss +0 -0
  201. /package/{src/styles → styles}/variables.scss +0 -0
@@ -0,0 +1,48 @@
1
+ import { Component, ContentChildren, Input } from '@angular/core';
2
+ import { OcAccordionItemComponent } from '../oc-accordion-item/oc-accordion-item.component';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../services/style-theme.service";
6
+ export class OcAccordionComponent {
7
+ constructor(styleThemeService) {
8
+ this.styleThemeService = styleThemeService;
9
+ this.ocAlternate = true;
10
+ this.ocStyle = 'otimus';
11
+ }
12
+ ngAfterViewInit() {
13
+ this.items.forEach((item, i) => {
14
+ item.ocStyle = this.styleThemeService.getStyleTheme() || this.ocStyle;
15
+ item.closeAllItems.subscribe(() => this.closeAllItems());
16
+ });
17
+ }
18
+ closeAllItems() {
19
+ if (this.ocAlternate) {
20
+ this.items.forEach((item) => (item.ocIsOpen = false));
21
+ }
22
+ }
23
+ alternateToIndex(index) {
24
+ this.items.forEach((item, i) => {
25
+ if (i === index) {
26
+ item.ocIsOpen = true;
27
+ return;
28
+ }
29
+ item.ocIsOpen = false;
30
+ });
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAccordionComponent, deps: [{ token: i1.StyleThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: OcAccordionComponent, isStandalone: true, selector: "oc-accordion", inputs: { ocAlternate: "ocAlternate", ocCurrentIndex: "ocCurrentIndex", ocStyle: "ocStyle" }, queries: [{ propertyName: "items", predicate: OcAccordionItemComponent }], ngImport: i0, template: "<div>\n <ng-content></ng-content>\n</div>", styles: [".oc-accordion{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAccordionComponent, decorators: [{
36
+ type: Component,
37
+ args: [{ selector: 'oc-accordion', standalone: true, imports: [CommonModule, OcAccordionItemComponent], template: "<div>\n <ng-content></ng-content>\n</div>", styles: [".oc-accordion{display:flex;flex-direction:column}\n"] }]
38
+ }], ctorParameters: () => [{ type: i1.StyleThemeService }], propDecorators: { items: [{
39
+ type: ContentChildren,
40
+ args: [OcAccordionItemComponent]
41
+ }], ocAlternate: [{
42
+ type: Input
43
+ }], ocCurrentIndex: [{
44
+ type: Input
45
+ }], ocStyle: [{
46
+ type: Input
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1hY2NvcmRpb24vb2MtYWNjb3JkaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1hY2NvcmRpb24vb2MtYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUE7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUE7QUFDM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7QUFXOUMsTUFBTSxPQUFPLG9CQUFvQjtJQU0vQixZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUovQyxnQkFBVyxHQUFZLElBQUksQ0FBQTtRQUUzQixZQUFPLEdBQXFCLFFBQVEsQ0FBQTtJQUVjLENBQUM7SUFFNUQsZUFBZTtRQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUE7WUFDckUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUE7UUFDMUQsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUN2RCxDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWE7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO2dCQUNwQixPQUFNO1lBQ1IsQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO1FBQ3ZCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzsrR0E3QlUsb0JBQW9CO21HQUFwQixvQkFBb0IsNExBQ2Qsd0JBQXdCLDZCQ2QzQyw0Q0FFTSw0R0RPTSxZQUFZOzs0RkFJWCxvQkFBb0I7a0JBUGhDLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSx3QkFBd0IsQ0FBQztzRkFLTixLQUFLO3NCQUEvQyxlQUFlO3VCQUFDLHdCQUF3QjtnQkFDaEMsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBJbnB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE9jQWNjb3JkaW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL29jLWFjY29yZGlvbi1pdGVtL29jLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudCdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE9jU3R5bGVUaGVtZVR5cGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL29jLXN0eWxlLXRoZW1lJ1xuaW1wb3J0IHsgU3R5bGVUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zdHlsZS10aGVtZS5zZXJ2aWNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvYy1hY2NvcmRpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBPY0FjY29yZGlvbkl0ZW1Db21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vb2MtYWNjb3JkaW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL29jLWFjY29yZGlvbi5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIE9jQWNjb3JkaW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBDb250ZW50Q2hpbGRyZW4oT2NBY2NvcmRpb25JdGVtQ29tcG9uZW50KSBpdGVtcyE6IFF1ZXJ5TGlzdDxPY0FjY29yZGlvbkl0ZW1Db21wb25lbnQ+XG4gIEBJbnB1dCgpIG9jQWx0ZXJuYXRlOiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSBvY0N1cnJlbnRJbmRleD86IG51bWJlclxuICBASW5wdXQoKSBvY1N0eWxlOiBPY1N0eWxlVGhlbWVUeXBlID0gJ290aW11cydcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0eWxlVGhlbWVTZXJ2aWNlOiBTdHlsZVRoZW1lU2VydmljZSkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtcy5mb3JFYWNoKChpdGVtLCBpKSA9PiB7XG4gICAgICBpdGVtLm9jU3R5bGUgPSB0aGlzLnN0eWxlVGhlbWVTZXJ2aWNlLmdldFN0eWxlVGhlbWUoKSB8fCB0aGlzLm9jU3R5bGVcbiAgICAgIGl0ZW0uY2xvc2VBbGxJdGVtcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZUFsbEl0ZW1zKCkpXG4gICAgfSlcbiAgfVxuXG4gIGNsb3NlQWxsSXRlbXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub2NBbHRlcm5hdGUpIHtcbiAgICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gKGl0ZW0ub2NJc09wZW4gPSBmYWxzZSkpXG4gICAgfVxuICB9XG5cbiAgYWx0ZXJuYXRlVG9JbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtcy5mb3JFYWNoKChpdGVtLCBpKSA9PiB7XG4gICAgICBpZiAoaSA9PT0gaW5kZXgpIHtcbiAgICAgICAgaXRlbS5vY0lzT3BlbiA9IHRydWVcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBpdGVtLm9jSXNPcGVuID0gZmFsc2VcbiAgICB9KVxuICB9XG59XG4iLCI8ZGl2PlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj4iXX0=
@@ -0,0 +1,35 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class OcAccordionItemComponent {
6
+ constructor() {
7
+ this.ocIsOpen = false;
8
+ this.ocTitle = '';
9
+ this.ocStyle = 'otimus';
10
+ this.closeAllItems = new EventEmitter();
11
+ }
12
+ toggle() {
13
+ if (this.ocIsOpen) {
14
+ this.ocIsOpen = !this.ocIsOpen;
15
+ return;
16
+ }
17
+ this.closeAllItems.emit();
18
+ this.ocIsOpen = !this.ocIsOpen;
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAccordionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OcAccordionItemComponent, isStandalone: true, selector: "oc-accordion-item", inputs: { ocIsOpen: "ocIsOpen", ocTitle: "ocTitle", ocStyle: "ocStyle" }, outputs: { closeAllItems: "closeAllItems" }, ngImport: i0, template: "<div class=\"oc-accordion-item\" [ngClass]=\"{\n 'shui': ocStyle === 'shui'\n}\">\n <div class=\"item-header\" [ngClass]=\"{\n open: ocIsOpen\n }\" (click)=\"toggle()\">\n <h3>{{ocTitle}}</h3>\n <span class=\"material-symbols-outlined\">\n keyboard_control_key\n </span>\n </div>\n @if (ocIsOpen) {\n <div class=\"oc-content\" [ngClass]=\"{\n open: ocIsOpen\n }\">\n <ng-content></ng-content>\n </div>\n }\n</div>", styles: [".oc-accordion-item{width:100%}.oc-accordion-item .item-header{cursor:pointer;transition:.1s ease;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-radius:1rem}.oc-accordion-item .item-header h3{color:#353535;padding:0;margin:0}.oc-accordion-item .item-header span{transition:.3s ease;color:#7e8485}.oc-accordion-item .item-header:hover{background-color:#f8f9ff}.oc-accordion-item .item-header:active{transform:scale(.99)}.oc-accordion-item .item-header.open{background-color:#f8f9ff;border-bottom-left-radius:0;border-bottom-right-radius:0}.oc-accordion-item .item-header.open h3{color:#5505a2}.oc-accordion-item .item-header.open span{color:#00dda3;transform:rotate(180deg)}.oc-accordion-item .closed,.oc-accordion-item closed *{display:none}.oc-accordion-item .oc-content{animation:show-up .15s ease;padding:2rem 1.5rem 2.5rem;border-radius:0 0 16px 16px}.oc-accordion-item .oc-content.open{background-color:#f8f9ff}@keyframes show-up{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.oc-accordion-item.shui{width:100%}.oc-accordion-item.shui .item-header{border-radius:0}.oc-accordion-item.shui .item-header h3{color:#000000bf}.oc-accordion-item.shui .item-header span{color:#7d7d7d}.oc-accordion-item.shui .item-header:hover,.oc-accordion-item.shui .item-header.open{background-color:#f5f5f5}.oc-accordion-item.shui .item-header.open h3{color:#0169b2}.oc-accordion-item.shui .item-header.open span{color:#099}.oc-accordion-item.shui .oc-content{border-radius:0}.oc-accordion-item.shui .oc-content.open{background-color:#f5f5f566}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAccordionItemComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'oc-accordion-item', standalone: true, imports: [CommonModule], template: "<div class=\"oc-accordion-item\" [ngClass]=\"{\n 'shui': ocStyle === 'shui'\n}\">\n <div class=\"item-header\" [ngClass]=\"{\n open: ocIsOpen\n }\" (click)=\"toggle()\">\n <h3>{{ocTitle}}</h3>\n <span class=\"material-symbols-outlined\">\n keyboard_control_key\n </span>\n </div>\n @if (ocIsOpen) {\n <div class=\"oc-content\" [ngClass]=\"{\n open: ocIsOpen\n }\">\n <ng-content></ng-content>\n </div>\n }\n</div>", styles: [".oc-accordion-item{width:100%}.oc-accordion-item .item-header{cursor:pointer;transition:.1s ease;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-radius:1rem}.oc-accordion-item .item-header h3{color:#353535;padding:0;margin:0}.oc-accordion-item .item-header span{transition:.3s ease;color:#7e8485}.oc-accordion-item .item-header:hover{background-color:#f8f9ff}.oc-accordion-item .item-header:active{transform:scale(.99)}.oc-accordion-item .item-header.open{background-color:#f8f9ff;border-bottom-left-radius:0;border-bottom-right-radius:0}.oc-accordion-item .item-header.open h3{color:#5505a2}.oc-accordion-item .item-header.open span{color:#00dda3;transform:rotate(180deg)}.oc-accordion-item .closed,.oc-accordion-item closed *{display:none}.oc-accordion-item .oc-content{animation:show-up .15s ease;padding:2rem 1.5rem 2.5rem;border-radius:0 0 16px 16px}.oc-accordion-item .oc-content.open{background-color:#f8f9ff}@keyframes show-up{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.oc-accordion-item.shui{width:100%}.oc-accordion-item.shui .item-header{border-radius:0}.oc-accordion-item.shui .item-header h3{color:#000000bf}.oc-accordion-item.shui .item-header span{color:#7d7d7d}.oc-accordion-item.shui .item-header:hover,.oc-accordion-item.shui .item-header.open{background-color:#f5f5f5}.oc-accordion-item.shui .item-header.open h3{color:#0169b2}.oc-accordion-item.shui .item-header.open span{color:#099}.oc-accordion-item.shui .oc-content{border-radius:0}.oc-accordion-item.shui .oc-content.open{background-color:#f5f5f566}\n"] }]
26
+ }], propDecorators: { ocIsOpen: [{
27
+ type: Input
28
+ }], ocTitle: [{
29
+ type: Input
30
+ }], ocStyle: [{
31
+ type: Input
32
+ }], closeAllItems: [{
33
+ type: Output
34
+ }] } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3RpbXVzLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL29jLWFjY29yZGlvbi1pdGVtL29jLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1hY2NvcmRpb24taXRlbS9vYy1hY2NvcmRpb24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7OztBQVdyRixNQUFNLE9BQU8sd0JBQXdCO0lBUHJDO1FBUVcsYUFBUSxHQUFZLEtBQUssQ0FBQTtRQUN6QixZQUFPLEdBQVcsRUFBRSxDQUFBO1FBQ3BCLFlBQU8sR0FBcUIsUUFBUSxDQUFBO1FBQ25DLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQTtLQVU3QztJQVJXLE1BQU07UUFDZCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQTtZQUM5QixPQUFNO1FBQ1IsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDaEMsQ0FBQzsrR0FiVSx3QkFBd0I7bUdBQXhCLHdCQUF3QixvTUNackMsK2JBa0JNLDJtRERWTSxZQUFZOzs0RkFJWCx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzs4QkFLZCxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE9jU3R5bGVUaGVtZVR5cGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL29jLXN0eWxlLXRoZW1lJ1xuaW1wb3J0IHsgU3R5bGVUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zdHlsZS10aGVtZS5zZXJ2aWNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvYy1hY2NvcmRpb24taXRlbScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vb2MtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vb2MtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBPY0FjY29yZGlvbkl0ZW1Db21wb25lbnQge1xuICBASW5wdXQoKSBvY0lzT3BlbjogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIG9jVGl0bGU6IHN0cmluZyA9ICcnXG4gIEBJbnB1dCgpIG9jU3R5bGU6IE9jU3R5bGVUaGVtZVR5cGUgPSAnb3RpbXVzJ1xuICBAT3V0cHV0KCkgY2xvc2VBbGxJdGVtcyA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub2NJc09wZW4pIHtcbiAgICAgIHRoaXMub2NJc09wZW4gPSAhdGhpcy5vY0lzT3BlblxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuY2xvc2VBbGxJdGVtcy5lbWl0KClcbiAgICB0aGlzLm9jSXNPcGVuID0gIXRoaXMub2NJc09wZW5cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm9jLWFjY29yZGlvbi1pdGVtXCIgW25nQ2xhc3NdPVwie1xuICAnc2h1aSc6IG9jU3R5bGUgPT09ICdzaHVpJ1xufVwiPlxuICA8ZGl2IGNsYXNzPVwiaXRlbS1oZWFkZXJcIiBbbmdDbGFzc109XCJ7XG4gICAgb3Blbjogb2NJc09wZW5cbiAgfVwiIChjbGljayk9XCJ0b2dnbGUoKVwiPlxuICAgIDxoMz57e29jVGl0bGV9fTwvaDM+XG4gICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCI+XG4gICAgICBrZXlib2FyZF9jb250cm9sX2tleVxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIEBpZiAob2NJc09wZW4pIHtcbiAgPGRpdiBjbGFzcz1cIm9jLWNvbnRlbnRcIiBbbmdDbGFzc109XCJ7XG4gICAgb3Blbjogb2NJc09wZW5cbiAgfVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIH1cbjwvZGl2PiJdfQ==
@@ -0,0 +1,275 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, HostBinding, Input, Output, ViewChild, } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { InternationalizationService } from '../../services/internationalization.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../services/internationalization.service";
7
+ import * as i2 from "../../services/style-theme.service";
8
+ import * as i3 from "@angular/common";
9
+ import * as i4 from "@angular/forms";
10
+ export class OcAutocompleteComponent {
11
+ constructor(renderer, el, translateService, styleThemeService, cdr) {
12
+ this.renderer = renderer;
13
+ this.el = el;
14
+ this.translateService = translateService;
15
+ this.styleThemeService = styleThemeService;
16
+ this.cdr = cdr;
17
+ this.ocSize = 'medium';
18
+ this.ocData = [];
19
+ this.ocValue = '';
20
+ this.ocClearOnChange = false;
21
+ this.ocRequired = false;
22
+ this.ocAllowNotListedValue = false;
23
+ this.ocLoading = false;
24
+ this.ocSemanticLike = false; // deprecated. Prefer using ocStyleTheme instead
25
+ this.ocStyle = 'otimus';
26
+ this.ocHasDeleteButton = false;
27
+ this.ocValueChange = new EventEmitter();
28
+ this.ocChange = new EventEmitter();
29
+ this.ocOptionNotFound = new EventEmitter();
30
+ this.ocClick = new EventEmitter();
31
+ this.hasSuffix = false;
32
+ this.hasPrefix = false;
33
+ this.isOptionsShown = false;
34
+ this.filteredData = [];
35
+ this.selectedValue = {
36
+ name: '',
37
+ value: null,
38
+ };
39
+ }
40
+ get computedWidth() {
41
+ return this.ocWidth ? this.ocWidth : null;
42
+ }
43
+ get computedMinWidth() {
44
+ return this.ocMinWidth || '0';
45
+ }
46
+ get computedMaxWidth() {
47
+ return this.ocMaxWidth || '100%';
48
+ }
49
+ ngOnChanges(changes) {
50
+ if (this.ocPrefix) {
51
+ this.hasPrefix = true;
52
+ }
53
+ if (this.ocSuffix) {
54
+ this.hasSuffix = true;
55
+ }
56
+ this.formatOcValueType();
57
+ this.loadOptions();
58
+ this.cdr.detectChanges();
59
+ }
60
+ ngOnInit() {
61
+ if (this.ocValue === undefined) {
62
+ this.ocValue = null;
63
+ }
64
+ }
65
+ ngAfterViewInit() {
66
+ this.ocStyle = this.styleThemeService.getStyleTheme() || this.ocStyle;
67
+ if (this.ocPrefix) {
68
+ this.hasPrefix = true;
69
+ }
70
+ if (this.ocSuffix) {
71
+ this.hasSuffix = true;
72
+ }
73
+ this.formatOcValueType();
74
+ this.loadOptions();
75
+ this.translateService.getTranslationsByLanguage();
76
+ this.cdr.detectChanges();
77
+ }
78
+ ngAfterContentChecked() {
79
+ if (this.ocPrefix) {
80
+ this.hasPrefix = true;
81
+ }
82
+ if (this.ocSuffix) {
83
+ this.hasSuffix = true;
84
+ }
85
+ }
86
+ formatOcValueType() {
87
+ if (this.ocValue) {
88
+ return `${this.ocValue}`;
89
+ }
90
+ return null;
91
+ }
92
+ getTranslation(code) {
93
+ return this.translateService.getTranslation(code);
94
+ }
95
+ loadOptions() {
96
+ this.formatOcValueType();
97
+ setTimeout(() => {
98
+ this.filteredData = this.ocData;
99
+ const inputBox = this.el.nativeElement;
100
+ const found = this.ocData.find((el) => el.value == this.ocValue);
101
+ if (found) {
102
+ this.selectedValue = found;
103
+ this.ocValue = found.name;
104
+ }
105
+ if (inputBox) {
106
+ const inputElement = inputBox.querySelector('input');
107
+ if (inputElement && !this.ocSemanticLike && ['otimus', 'shui'].includes(this.ocStyle)) {
108
+ this.renderer.setAttribute(inputElement, 'placeholder', '');
109
+ this.renderer.setAttribute(inputElement, 'required', this.ocRequired.toString());
110
+ }
111
+ }
112
+ }, 50);
113
+ }
114
+ closeOnClickOut() {
115
+ this.renderer.listen('window', 'click', (e) => {
116
+ if (this.input && this.options) {
117
+ if (e.target !== this.input.nativeElement && e.target !== this.options.nativeElement) {
118
+ this.isOptionsShown = false;
119
+ }
120
+ }
121
+ this.findByTyping();
122
+ });
123
+ }
124
+ findByTyping() {
125
+ if (!this.ocValue || !this.ocValue?.toString().trim().length) {
126
+ this.ocChange.emit(null);
127
+ this.ocOptionNotFound.emit();
128
+ }
129
+ const foundValue = this.ocData.find((data) => data.name.toString().toLowerCase() === this.ocValue?.toString().toLowerCase() ||
130
+ data.value.toString().toLowerCase() === this.ocValue?.toString().toLowerCase());
131
+ if (!foundValue) {
132
+ this.selectedValue = {
133
+ name: '',
134
+ value: null,
135
+ };
136
+ if (!this.ocAllowNotListedValue) {
137
+ this.ocValue = '';
138
+ }
139
+ this.filteredData = this.ocData;
140
+ return;
141
+ }
142
+ this.selectedValue = foundValue;
143
+ }
144
+ filterData(name) {
145
+ this.isOptionsShown = true;
146
+ this.filteredData = this.ocData.filter((data) => {
147
+ return this.getFormattedName(data.name)?.includes(this.getFormattedName(name));
148
+ });
149
+ }
150
+ getFormattedName(str) {
151
+ return str
152
+ ?.toLowerCase()
153
+ .normalize('NFD')
154
+ .replace(/[\u0300-\u036f]/g, ''); // Remove marcas diacríticas
155
+ }
156
+ toggleOptions() {
157
+ this.closeOnClickOut();
158
+ this.isOptionsShown = !this.isOptionsShown;
159
+ }
160
+ selectValue(value) {
161
+ const foundValue = this.ocData.find((data) => data.value == value);
162
+ if (!foundValue) {
163
+ this.selectedValue = {
164
+ name: '',
165
+ value: null,
166
+ };
167
+ this.cdr.detectChanges();
168
+ return;
169
+ }
170
+ this.selectedValue = foundValue;
171
+ if (this.ocClearOnChange) {
172
+ this.ocValue = '';
173
+ this.filteredData = this.ocData;
174
+ }
175
+ else {
176
+ this.ocValue = foundValue.name;
177
+ }
178
+ this.isOptionsShown = false;
179
+ this.ocChange.emit(this.selectedValue.value);
180
+ this.cdr.detectChanges();
181
+ }
182
+ clearValue() {
183
+ this.selectedValue = {
184
+ name: '',
185
+ value: null,
186
+ };
187
+ this.ocValue = '';
188
+ this.filteredData = this.ocData;
189
+ }
190
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAutocompleteComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.InternationalizationService }, { token: i2.StyleThemeService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
191
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OcAutocompleteComponent, isStandalone: true, selector: "oc-autocomplete", inputs: { ocPlaceholder: "ocPlaceholder", ocError: "ocError", ocSize: "ocSize", ocData: "ocData", ocValue: "ocValue", ocClearOnChange: "ocClearOnChange", ocWidth: "ocWidth", ocMinWidth: "ocMinWidth", ocMaxWidth: "ocMaxWidth", ocOptionsMaxHeight: "ocOptionsMaxHeight", ocOptionsWidth: "ocOptionsWidth", ocRequired: "ocRequired", ocMaxResults: "ocMaxResults", ocAllowNotListedValue: "ocAllowNotListedValue", ocNoAvailableOptionsText: "ocNoAvailableOptionsText", ocTypeForMoreResultsText: "ocTypeForMoreResultsText", ocLoading: "ocLoading", ocSemanticLike: "ocSemanticLike", ocStyle: "ocStyle", ocTabIndex: "ocTabIndex", ocHasDeleteButton: "ocHasDeleteButton" }, outputs: { ocValueChange: "ocValueChange", ocChange: "ocChange", ocOptionNotFound: "ocOptionNotFound", ocClick: "ocClick" }, host: { properties: { "style.width": "this.computedWidth", "style.min-width": "this.computedMinWidth", "style.max-width": "this.computedMaxWidth" } }, providers: [InternationalizationService], queries: [{ propertyName: "ocPrefix", first: true, predicate: ["ocPrefix"], descendants: true }, { propertyName: "ocSuffix", first: true, predicate: ["ocSuffix"], descendants: true }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "options", first: true, predicate: ["options"], descendants: true }, { propertyName: "outerDiv", first: true, predicate: ["outerDiv"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"{\n 'oc-input-box': !ocSemanticLike && ocStyle === 'otimus',\n small: ocSize === 'small',\n large: ocSize === 'large',\n error: !!ocError,\n prefix: hasPrefix,\n suffix: hasSuffix || ocHasDeleteButton,\n shui: ocStyle === 'shui',\n 'shui-input-box': ocStyle === 'shui',\n }\">\n <ng-content></ng-content>\n <input [placeholder]=\"ocPlaceholder\" #input (click)=\"toggleOptions(); ocClick.emit()\" type=\"text\"\n (input)=\"filterData(ocValue)\" [(ngModel)]=\"ocValue\" (ngModelChange)=\"ocValue = $event; ocValueChange.emit($event)\"\n [ngClass]=\"{\n 'semantic-input': ocSemanticLike || ocStyle === 'semantic',\n }\" [tabindex]=\"ocTabIndex\" />\n @if (!ocSemanticLike && ocStyle !== 'semantic') {\n <label>\n <span [innerHTML]=\"ocPlaceholder\"></span>\n @if (ocRequired) {\n <span class=\"oc color error\">*</span>\n }\n </label>\n }\n <small *ngIf=\"ocError\" class=\"error-msg\">{{ ocError }}</small>\n <ng-content select=\"ocPrefix\"></ng-content>\n @if (ocHasDeleteButton) {\n <button class=\"oc-has-close-button oc suffix\" (click)=\"clearValue()\">\n <span class=\"material-symbols-outlined\">backspace</span>\n </button>\n }\n <ng-content select=\"ocSuffix\"></ng-content>\n\n <div class=\"oc-options-div\">\n @if (isOptionsShown && !ocLoading) {\n <ul #options class=\"oc-options\" [ngStyle]=\"{\n 'max-height': ocOptionsMaxHeight,\n width: ocOptionsWidth,\n }\">\n @if (!filteredData.length) {\n <li class=\"no-options\">\n {{ ocNoAvailableOptionsText || 'Nenhum resultado dispon\u00EDvel' }}\n </li>\n } @else {\n @for (data of filteredData; track data.value; let i = $index) {\n @if (!ocMaxResults || i < ocMaxResults) { <li>\n <button type=\"button\" (click)=\"selectValue(data.value)\">\n {{ data.name }}\n </button>\n </li>\n }\n }\n @if (ocMaxResults && filteredData.length > ocMaxResults) {\n <li class=\"no-options\">\n {{ ocTypeForMoreResultsText || 'Digite para ver mais resultados' }}\n </li>\n }\n }\n </ul>\n } @else if (isOptionsShown && ocLoading) {\n <div class=\"oc-options loader\">\n <span class=\"material-symbols-outlined loading\"> progress_activity </span>\n </div>\n }\n </div>\n</div>", styles: ["@charset \"UTF-8\";.oc-input-box.prefix .material-symbols-outlined{position:absolute;left:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.oc-input-box.suffix .material-symbols-outlined,.oc-input-box.suffix .oc.suffix{position:absolute;right:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.oc-input-box{position:relative;margin-top:.5rem}.oc-input-box select *{background-color:#f8f9ff}.oc-input-box label{position:absolute;left:0;top:0;padding:.5rem .7rem;font-size:.85rem;color:#8f9596;pointer-events:none;transition:.3s ease;border-radius:.5rem;white-space:nowrap}.oc-input-box label .oc.color.error{font-weight:700;margin-left:.2rem}.oc-input-box.prefix .material-symbols-outlined,.oc-input-box.prefix .oc.suffix{padding:.5rem .7rem}.oc-input-box.prefix input{padding-left:1.75rem}.oc-input-box.prefix label{padding:.7rem 2.5rem}.oc-input-box.suffix .material-symbols-outlined,.oc-input-box.suffix .oc.suffix{padding:.5rem .7rem}.oc-input-box.suffix input{padding-right:1.75rem}.oc-input-box.suffix label{padding:.7rem}.oc-input-box input,.oc-input-box textarea,.oc-input-box select{font-size:1rem;border-radius:.7rem;background-color:#f8f9ff;border:1px solid #d1d5db;outline:none;padding:.6rem .9rem;width:100%;transition:.3s ease;color:#7e8485;font-weight:500}.oc-input-box input:focus,.oc-input-box textarea:focus,.oc-input-box select:focus{border:1px solid #00dda3;box-shadow:0 4px 3.2px #00dda314}.oc-input-box input:not(:placeholder-shown)~label,.oc-input-box input:focus~label,.oc-input-box textarea:not(:placeholder-shown)~label,.oc-input-box textarea:focus~label,.oc-input-box select:valid~label,.oc-input-box select:focus~label{transform:translateY(-.855rem) translate(.6rem);color:#1e0832;background-color:#f8f9ff;padding:1px 7px;font-weight:500}.error input,.error textarea,.error select{border:1px solid #ed3a3a;box-shadow:0 4px 6.1px #a1000014}.oc-input-box.small input,.oc-input-box.small textarea,.oc-input-box.small select{padding:.3rem .7rem;border-radius:.5rem}.oc-input-box.small.prefix .material-symbols-outlined{padding:.35rem .7rem;font-size:1.25rem}.oc-input-box.small.prefix label{padding:.45rem 2.5rem}.oc-input-box.small.suffix .material-symbols-outlined{padding:.35rem .7rem}.oc-input-box.small.suffix label{padding:.45rem .7rem}.oc-input-box.small label{padding:.5rem .7rem}.oc-input-box.small input:focus~label,.oc-input-box.small input:not(:placeholder-shown)~label,.oc-input-box.small textarea:focus~label,.oc-input-box.small textarea:not(:placeholder-shown)~label,.oc-input-box.small select:focus~label,.oc-input-box.small select:valid~label{transform:translateY(-.99rem) translate(.6rem);color:#7e8485;background-color:#fff;padding:1px 7px;font-weight:500}.oc-input-box.large input,.oc-input-box.large textarea,.oc-input-box.large select{padding:1rem;border-radius:1rem}.oc-input-box.large label,.oc-input-box.large.prefix .material-symbols-outlined{padding:1rem .7rem}.oc-input-box.large.prefix input{padding-left:2.5rem}.oc-input-box.large.prefix label{padding:1.1rem 2.5rem}.oc-input-box.large.suffix .material-symbols-outlined{padding:.9rem .7rem}.oc-input-box.large.suffix input{padding-right:2.5rem}.oc-input-box.large.suffix label{padding:1.1rem .7rem}.oc-input-box.large input:focus~label,.oc-input-box.large input:not(:placeholder-shown)~label,.oc-input-box.large textarea:focus~label,.oc-input-box.large textarea:not(:placeholder-shown)~label,.oc-input-box.large select:focus~label,.oc-input-box.large select:valid~label{transform:translateY(-.77rem) translate(.6rem);color:#7e8485;background-color:#fff;padding:1px 7px;font-weight:500}.shui-input-box.prefix .material-symbols-outlined{position:absolute;left:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.shui-input-box.suffix .material-symbols-outlined,.shui-input-box.suffix .oc.suffix{position:absolute;right:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.shui-input-box{position:relative;margin-top:.5rem}.shui-input-box select *{background-color:#ebebeb}.shui-input-box label{position:absolute;left:0;top:0;padding:.5rem .7rem;font-size:.85rem;color:#000;pointer-events:none;transition:.3s ease;border-radius:.5rem;white-space:nowrap}.shui-input-box.prefix{z-index:5}.shui-input-box.prefix .material-symbols-outlined,.shui-input-box.prefix .oc.suffix{padding:.5rem .7rem}.shui-input-box.prefix input{padding-left:1.75rem}.shui-input-box.prefix label{padding:.7rem 2.5rem}.shui-input-box.suffix{z-index:5}.shui-input-box.suffix .material-symbols-outlined,.shui-input-box.suffix .oc.suffix{padding:.5rem .7rem}.shui-input-box.suffix input{padding-right:1.75rem}.shui-input-box.suffix label{padding:.7rem}.shui-input-box input,.shui-input-box textarea,.shui-input-box select{font-size:1rem;background-color:#ebebeb;border:none;outline:none;padding:1rem .9rem .2rem;width:100%;transition:.3s ease;color:#000;font-weight:400;height:41px;min-width:100%}.shui-input-box textarea{height:inherit;padding-top:20px}.shui-input-box input:not(:placeholder-shown)~label,.shui-input-box input:focus~label,.shui-input-box textarea:not(:placeholder-shown)~label,.shui-input-box textarea:focus~label,.shui-input-box select:valid~label,.shui-input-box select:focus~label{transform:translate(.45rem);background-color:#ebebeb;width:95%;padding:1px 7px 0;font-size:.7rem;font-weight:500}.shui-input-box input:focus~label,.shui-input-box textarea:focus~label,.shui-input-box select:valid~label,.shui-input-box select:focus~label{color:#0169b2}.shui-input-box:before{display:block;content:\"\";position:absolute;bottom:0;height:1px;width:100%;background-color:#7d7d7d;transition:.4s ease;width:0;background-color:#0169b2}.shui-input-box:focus-within:before{width:100%}.error input,.error textarea,.error select{border:1px solid #e7001d;box-shadow:0 4px 6.1px #a1000014}.error:before{width:0!important}.error small,.error label{color:#ed3a3a!important;font-weight:600}.shui-input-box.small input,.shui-input-box.small textarea,.shui-input-box.small select{max-height:36px;padding-top:1rem}.shui-input-box.small.prefix{z-index:5}.shui-input-box.small.prefix .material-symbols-outlined{padding:.35rem .7rem;font-size:1.25rem;color:#0169b2}.shui-input-box.small.prefix label{padding:.45rem 2.5rem}.shui-input-box.small.suffix{z-index:5}.shui-input-box.small.suffix .material-symbols-outlined{padding:.35rem .7rem;color:#0169b2}.shui-input-box.small.suffix label{padding:.45rem .7rem}.shui-input-box.large input,.shui-input-box.large textarea,.shui-input-box.large select{height:46px}.shui-input-box.large label{padding:1rem .7rem}.shui-input-box.large.prefix{z-index:5}.shui-input-box.large.prefix .material-symbols-outlined{padding:1rem .7rem}.shui-input-box.large.prefix input{padding-left:2.5rem}.shui-input-box.large.prefix label{padding:1.1rem 2.5rem}.shui-input-box.large.suffix{z-index:5}.shui-input-box.large.suffix .material-symbols-outlined{padding:.9rem .7rem}.shui-input-box.large.suffix input{padding-right:2.5rem}.shui-input-box.large.suffix label{padding:1.1rem .7rem}.oc.suffix,.oc.prefix,.material-symbols-outlined{z-index:5!important}.oc-input-box{position:relative}.oc-options-div{position:absolute;width:100%}.oc-has-close-button-input{padding-right:60px}.oc-has-close-button{display:flex;justify-content:center;align-items:center;position:absolute;right:.5rem!important;top:8%;height:84%;width:2.2rem;border:2px solid transparent;border-radius:.5rem;background-color:transparent;padding:0!important;transition:border-color .2s ease,box-shadow .2s ease}.oc-has-close-button:hover{border:2px solid #8f9596;box-shadow:0 4px 8.7px #00000021;cursor:pointer}.oc-has-close-button span{padding:0!important;margin:.3rem}.oc-options{display:flex;flex-direction:column;list-style:none;max-height:40vh;background-color:#f8f9ff;border:2px solid #ffffff;box-shadow:0 4px 8.7px #00000021;padding:0;margin-block-start:0;border-radius:.5rem;overflow:hidden;width:100%;position:absolute;top:50%;overflow-y:auto;z-index:15}.oc-options>li{padding:0;margin:0}.oc-options>li button{width:100%;text-align:left;padding:.6rem;border:none;background-color:#f8f9ff;cursor:pointer}.oc-options>li button:hover{filter:brightness(.9)}.no-options{padding:.6rem!important;color:#8f9596}.oc-options.loader{display:flex;align-items:center;justify-content:center}.oc-options.loader span{width:24px;margin:3rem;color:#5505a2}.loading{animation:spinLoad .5s linear infinite}.semantic-input{display:inline-block;width:100%;padding:10px 12px;font-size:14px;line-height:1.5;color:#333;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 1px 2px #22242626;transition:border-color .2s ease,box-shadow .2s ease}.semantic-input:hover{border-color:#b3b3b3}.semantic-input:focus{border-color:#85b7d9;box-shadow:0 0 0 2px #22242626;outline:none}.semantic-input:disabled{background-color:#f9f9f9;color:#b3b3b3;border-color:#ddd;cursor:not-allowed}@keyframes spinLoad{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
192
+ }
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcAutocompleteComponent, decorators: [{
194
+ type: Component,
195
+ args: [{ selector: 'oc-autocomplete', standalone: true, imports: [CommonModule, FormsModule], providers: [InternationalizationService], host: {
196
+ '[style.width]': 'computedWidth',
197
+ '[style.min-width]': 'computedMinWidth',
198
+ '[style.max-width]': 'computedMaxWidth',
199
+ }, changeDetection: ChangeDetectionStrategy.Default, template: "<div [ngClass]=\"{\n 'oc-input-box': !ocSemanticLike && ocStyle === 'otimus',\n small: ocSize === 'small',\n large: ocSize === 'large',\n error: !!ocError,\n prefix: hasPrefix,\n suffix: hasSuffix || ocHasDeleteButton,\n shui: ocStyle === 'shui',\n 'shui-input-box': ocStyle === 'shui',\n }\">\n <ng-content></ng-content>\n <input [placeholder]=\"ocPlaceholder\" #input (click)=\"toggleOptions(); ocClick.emit()\" type=\"text\"\n (input)=\"filterData(ocValue)\" [(ngModel)]=\"ocValue\" (ngModelChange)=\"ocValue = $event; ocValueChange.emit($event)\"\n [ngClass]=\"{\n 'semantic-input': ocSemanticLike || ocStyle === 'semantic',\n }\" [tabindex]=\"ocTabIndex\" />\n @if (!ocSemanticLike && ocStyle !== 'semantic') {\n <label>\n <span [innerHTML]=\"ocPlaceholder\"></span>\n @if (ocRequired) {\n <span class=\"oc color error\">*</span>\n }\n </label>\n }\n <small *ngIf=\"ocError\" class=\"error-msg\">{{ ocError }}</small>\n <ng-content select=\"ocPrefix\"></ng-content>\n @if (ocHasDeleteButton) {\n <button class=\"oc-has-close-button oc suffix\" (click)=\"clearValue()\">\n <span class=\"material-symbols-outlined\">backspace</span>\n </button>\n }\n <ng-content select=\"ocSuffix\"></ng-content>\n\n <div class=\"oc-options-div\">\n @if (isOptionsShown && !ocLoading) {\n <ul #options class=\"oc-options\" [ngStyle]=\"{\n 'max-height': ocOptionsMaxHeight,\n width: ocOptionsWidth,\n }\">\n @if (!filteredData.length) {\n <li class=\"no-options\">\n {{ ocNoAvailableOptionsText || 'Nenhum resultado dispon\u00EDvel' }}\n </li>\n } @else {\n @for (data of filteredData; track data.value; let i = $index) {\n @if (!ocMaxResults || i < ocMaxResults) { <li>\n <button type=\"button\" (click)=\"selectValue(data.value)\">\n {{ data.name }}\n </button>\n </li>\n }\n }\n @if (ocMaxResults && filteredData.length > ocMaxResults) {\n <li class=\"no-options\">\n {{ ocTypeForMoreResultsText || 'Digite para ver mais resultados' }}\n </li>\n }\n }\n </ul>\n } @else if (isOptionsShown && ocLoading) {\n <div class=\"oc-options loader\">\n <span class=\"material-symbols-outlined loading\"> progress_activity </span>\n </div>\n }\n </div>\n</div>", styles: ["@charset \"UTF-8\";.oc-input-box.prefix .material-symbols-outlined{position:absolute;left:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.oc-input-box.suffix .material-symbols-outlined,.oc-input-box.suffix .oc.suffix{position:absolute;right:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.oc-input-box{position:relative;margin-top:.5rem}.oc-input-box select *{background-color:#f8f9ff}.oc-input-box label{position:absolute;left:0;top:0;padding:.5rem .7rem;font-size:.85rem;color:#8f9596;pointer-events:none;transition:.3s ease;border-radius:.5rem;white-space:nowrap}.oc-input-box label .oc.color.error{font-weight:700;margin-left:.2rem}.oc-input-box.prefix .material-symbols-outlined,.oc-input-box.prefix .oc.suffix{padding:.5rem .7rem}.oc-input-box.prefix input{padding-left:1.75rem}.oc-input-box.prefix label{padding:.7rem 2.5rem}.oc-input-box.suffix .material-symbols-outlined,.oc-input-box.suffix .oc.suffix{padding:.5rem .7rem}.oc-input-box.suffix input{padding-right:1.75rem}.oc-input-box.suffix label{padding:.7rem}.oc-input-box input,.oc-input-box textarea,.oc-input-box select{font-size:1rem;border-radius:.7rem;background-color:#f8f9ff;border:1px solid #d1d5db;outline:none;padding:.6rem .9rem;width:100%;transition:.3s ease;color:#7e8485;font-weight:500}.oc-input-box input:focus,.oc-input-box textarea:focus,.oc-input-box select:focus{border:1px solid #00dda3;box-shadow:0 4px 3.2px #00dda314}.oc-input-box input:not(:placeholder-shown)~label,.oc-input-box input:focus~label,.oc-input-box textarea:not(:placeholder-shown)~label,.oc-input-box textarea:focus~label,.oc-input-box select:valid~label,.oc-input-box select:focus~label{transform:translateY(-.855rem) translate(.6rem);color:#1e0832;background-color:#f8f9ff;padding:1px 7px;font-weight:500}.error input,.error textarea,.error select{border:1px solid #ed3a3a;box-shadow:0 4px 6.1px #a1000014}.oc-input-box.small input,.oc-input-box.small textarea,.oc-input-box.small select{padding:.3rem .7rem;border-radius:.5rem}.oc-input-box.small.prefix .material-symbols-outlined{padding:.35rem .7rem;font-size:1.25rem}.oc-input-box.small.prefix label{padding:.45rem 2.5rem}.oc-input-box.small.suffix .material-symbols-outlined{padding:.35rem .7rem}.oc-input-box.small.suffix label{padding:.45rem .7rem}.oc-input-box.small label{padding:.5rem .7rem}.oc-input-box.small input:focus~label,.oc-input-box.small input:not(:placeholder-shown)~label,.oc-input-box.small textarea:focus~label,.oc-input-box.small textarea:not(:placeholder-shown)~label,.oc-input-box.small select:focus~label,.oc-input-box.small select:valid~label{transform:translateY(-.99rem) translate(.6rem);color:#7e8485;background-color:#fff;padding:1px 7px;font-weight:500}.oc-input-box.large input,.oc-input-box.large textarea,.oc-input-box.large select{padding:1rem;border-radius:1rem}.oc-input-box.large label,.oc-input-box.large.prefix .material-symbols-outlined{padding:1rem .7rem}.oc-input-box.large.prefix input{padding-left:2.5rem}.oc-input-box.large.prefix label{padding:1.1rem 2.5rem}.oc-input-box.large.suffix .material-symbols-outlined{padding:.9rem .7rem}.oc-input-box.large.suffix input{padding-right:2.5rem}.oc-input-box.large.suffix label{padding:1.1rem .7rem}.oc-input-box.large input:focus~label,.oc-input-box.large input:not(:placeholder-shown)~label,.oc-input-box.large textarea:focus~label,.oc-input-box.large textarea:not(:placeholder-shown)~label,.oc-input-box.large select:focus~label,.oc-input-box.large select:valid~label{transform:translateY(-.77rem) translate(.6rem);color:#7e8485;background-color:#fff;padding:1px 7px;font-weight:500}.shui-input-box.prefix .material-symbols-outlined{position:absolute;left:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.shui-input-box.suffix .material-symbols-outlined,.shui-input-box.suffix .oc.suffix{position:absolute;right:0;font-size:1.5rem;-webkit-user-select:none;user-select:none}.shui-input-box{position:relative;margin-top:.5rem}.shui-input-box select *{background-color:#ebebeb}.shui-input-box label{position:absolute;left:0;top:0;padding:.5rem .7rem;font-size:.85rem;color:#000;pointer-events:none;transition:.3s ease;border-radius:.5rem;white-space:nowrap}.shui-input-box.prefix{z-index:5}.shui-input-box.prefix .material-symbols-outlined,.shui-input-box.prefix .oc.suffix{padding:.5rem .7rem}.shui-input-box.prefix input{padding-left:1.75rem}.shui-input-box.prefix label{padding:.7rem 2.5rem}.shui-input-box.suffix{z-index:5}.shui-input-box.suffix .material-symbols-outlined,.shui-input-box.suffix .oc.suffix{padding:.5rem .7rem}.shui-input-box.suffix input{padding-right:1.75rem}.shui-input-box.suffix label{padding:.7rem}.shui-input-box input,.shui-input-box textarea,.shui-input-box select{font-size:1rem;background-color:#ebebeb;border:none;outline:none;padding:1rem .9rem .2rem;width:100%;transition:.3s ease;color:#000;font-weight:400;height:41px;min-width:100%}.shui-input-box textarea{height:inherit;padding-top:20px}.shui-input-box input:not(:placeholder-shown)~label,.shui-input-box input:focus~label,.shui-input-box textarea:not(:placeholder-shown)~label,.shui-input-box textarea:focus~label,.shui-input-box select:valid~label,.shui-input-box select:focus~label{transform:translate(.45rem);background-color:#ebebeb;width:95%;padding:1px 7px 0;font-size:.7rem;font-weight:500}.shui-input-box input:focus~label,.shui-input-box textarea:focus~label,.shui-input-box select:valid~label,.shui-input-box select:focus~label{color:#0169b2}.shui-input-box:before{display:block;content:\"\";position:absolute;bottom:0;height:1px;width:100%;background-color:#7d7d7d;transition:.4s ease;width:0;background-color:#0169b2}.shui-input-box:focus-within:before{width:100%}.error input,.error textarea,.error select{border:1px solid #e7001d;box-shadow:0 4px 6.1px #a1000014}.error:before{width:0!important}.error small,.error label{color:#ed3a3a!important;font-weight:600}.shui-input-box.small input,.shui-input-box.small textarea,.shui-input-box.small select{max-height:36px;padding-top:1rem}.shui-input-box.small.prefix{z-index:5}.shui-input-box.small.prefix .material-symbols-outlined{padding:.35rem .7rem;font-size:1.25rem;color:#0169b2}.shui-input-box.small.prefix label{padding:.45rem 2.5rem}.shui-input-box.small.suffix{z-index:5}.shui-input-box.small.suffix .material-symbols-outlined{padding:.35rem .7rem;color:#0169b2}.shui-input-box.small.suffix label{padding:.45rem .7rem}.shui-input-box.large input,.shui-input-box.large textarea,.shui-input-box.large select{height:46px}.shui-input-box.large label{padding:1rem .7rem}.shui-input-box.large.prefix{z-index:5}.shui-input-box.large.prefix .material-symbols-outlined{padding:1rem .7rem}.shui-input-box.large.prefix input{padding-left:2.5rem}.shui-input-box.large.prefix label{padding:1.1rem 2.5rem}.shui-input-box.large.suffix{z-index:5}.shui-input-box.large.suffix .material-symbols-outlined{padding:.9rem .7rem}.shui-input-box.large.suffix input{padding-right:2.5rem}.shui-input-box.large.suffix label{padding:1.1rem .7rem}.oc.suffix,.oc.prefix,.material-symbols-outlined{z-index:5!important}.oc-input-box{position:relative}.oc-options-div{position:absolute;width:100%}.oc-has-close-button-input{padding-right:60px}.oc-has-close-button{display:flex;justify-content:center;align-items:center;position:absolute;right:.5rem!important;top:8%;height:84%;width:2.2rem;border:2px solid transparent;border-radius:.5rem;background-color:transparent;padding:0!important;transition:border-color .2s ease,box-shadow .2s ease}.oc-has-close-button:hover{border:2px solid #8f9596;box-shadow:0 4px 8.7px #00000021;cursor:pointer}.oc-has-close-button span{padding:0!important;margin:.3rem}.oc-options{display:flex;flex-direction:column;list-style:none;max-height:40vh;background-color:#f8f9ff;border:2px solid #ffffff;box-shadow:0 4px 8.7px #00000021;padding:0;margin-block-start:0;border-radius:.5rem;overflow:hidden;width:100%;position:absolute;top:50%;overflow-y:auto;z-index:15}.oc-options>li{padding:0;margin:0}.oc-options>li button{width:100%;text-align:left;padding:.6rem;border:none;background-color:#f8f9ff;cursor:pointer}.oc-options>li button:hover{filter:brightness(.9)}.no-options{padding:.6rem!important;color:#8f9596}.oc-options.loader{display:flex;align-items:center;justify-content:center}.oc-options.loader span{width:24px;margin:3rem;color:#5505a2}.loading{animation:spinLoad .5s linear infinite}.semantic-input{display:inline-block;width:100%;padding:10px 12px;font-size:14px;line-height:1.5;color:#333;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 1px 2px #22242626;transition:border-color .2s ease,box-shadow .2s ease}.semantic-input:hover{border-color:#b3b3b3}.semantic-input:focus{border-color:#85b7d9;box-shadow:0 0 0 2px #22242626;outline:none}.semantic-input:disabled{background-color:#f9f9f9;color:#b3b3b3;border-color:#ddd;cursor:not-allowed}@keyframes spinLoad{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
200
+ }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.InternationalizationService }, { type: i2.StyleThemeService }, { type: i0.ChangeDetectorRef }], propDecorators: { input: [{
201
+ type: ViewChild,
202
+ args: ['input']
203
+ }], options: [{
204
+ type: ViewChild,
205
+ args: ['options']
206
+ }], outerDiv: [{
207
+ type: ViewChild,
208
+ args: ['outerDiv']
209
+ }], ocPrefix: [{
210
+ type: ContentChild,
211
+ args: ['ocPrefix']
212
+ }], ocSuffix: [{
213
+ type: ContentChild,
214
+ args: ['ocSuffix']
215
+ }], ocPlaceholder: [{
216
+ type: Input
217
+ }], ocError: [{
218
+ type: Input
219
+ }], ocSize: [{
220
+ type: Input
221
+ }], ocData: [{
222
+ type: Input
223
+ }], ocValue: [{
224
+ type: Input
225
+ }], ocClearOnChange: [{
226
+ type: Input
227
+ }], ocWidth: [{
228
+ type: Input
229
+ }], ocMinWidth: [{
230
+ type: Input
231
+ }], ocMaxWidth: [{
232
+ type: Input
233
+ }], ocOptionsMaxHeight: [{
234
+ type: Input
235
+ }], ocOptionsWidth: [{
236
+ type: Input
237
+ }], ocRequired: [{
238
+ type: Input
239
+ }], ocMaxResults: [{
240
+ type: Input
241
+ }], ocAllowNotListedValue: [{
242
+ type: Input
243
+ }], ocNoAvailableOptionsText: [{
244
+ type: Input
245
+ }], ocTypeForMoreResultsText: [{
246
+ type: Input
247
+ }], ocLoading: [{
248
+ type: Input
249
+ }], ocSemanticLike: [{
250
+ type: Input
251
+ }], ocStyle: [{
252
+ type: Input
253
+ }], ocTabIndex: [{
254
+ type: Input
255
+ }], ocHasDeleteButton: [{
256
+ type: Input
257
+ }], ocValueChange: [{
258
+ type: Output
259
+ }], ocChange: [{
260
+ type: Output
261
+ }], ocOptionNotFound: [{
262
+ type: Output
263
+ }], ocClick: [{
264
+ type: Output
265
+ }], computedWidth: [{
266
+ type: HostBinding,
267
+ args: ['style.width']
268
+ }], computedMinWidth: [{
269
+ type: HostBinding,
270
+ args: ['style.min-width']
271
+ }], computedMaxWidth: [{
272
+ type: HostBinding,
273
+ args: ['style.max-width']
274
+ }] } });
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1hdXRvY29tcGxldGUvb2MtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1hdXRvY29tcGxldGUvb2MtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBR0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBRVosWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUdOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTtBQUV0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkNBQTZDLENBQUE7Ozs7OztBQWtCekYsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxZQUNVLFFBQW1CLEVBQ25CLEVBQWMsRUFDZCxnQkFBNkMsRUFDN0MsaUJBQW9DLEVBQ3BDLEdBQXNCO1FBSnRCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBNkI7UUFDN0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQVd2QixXQUFNLEdBQWlDLFFBQVEsQ0FBQTtRQUMvQyxXQUFNLEdBQXlCLEVBQUUsQ0FBQTtRQUNqQyxZQUFPLEdBQVEsRUFBRSxDQUFBO1FBQ2pCLG9CQUFlLEdBQVksS0FB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QXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFhSCxhQUFhO3NCQURoQixXQUFXO3VCQUFDLGFBQWE7Z0JBTXRCLGdCQUFnQjtzQkFEbkIsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBTTFCLGdCQUFnQjtzQkFEbkIsV0FBVzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBPY0F1dG9Db21wbGV0ZVR5cGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL29jLWF1dG9jb21wbGV0ZSdcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBJbnRlcm5hdGlvbmFsaXphdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pbnRlcm5hdGlvbmFsaXphdGlvbi5zZXJ2aWNlJ1xuaW1wb3J0IHsgT2NTdHlsZVRoZW1lVHlwZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvb2Mtc3R5bGUtdGhlbWUnXG5pbXBvcnQgeyBTdHlsZVRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0eWxlLXRoZW1lLnNlcnZpY2UnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29jLWF1dG9jb21wbGV0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbSW50ZXJuYXRpb25hbGl6YXRpb25TZXJ2aWNlXSxcbiAgaG9zdDoge1xuICAgICdbc3R5bGUud2lkdGhdJzogJ2NvbXB1dGVkV2lkdGgnLFxuICAgICdbc3R5bGUubWluLXdpZHRoXSc6ICdjb21wdXRlZE1pbldpZHRoJyxcbiAgICAnW3N0eWxlLm1heC13aWR0aF0nOiAnY29tcHV0ZWRNYXhXaWR0aCcsXG4gIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9vYy1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vb2MtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxufSlcbmV4cG9ydCBjbGFzcyBPY0F1dG9jb21wbGV0ZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50Q2hlY2tlZCwgT25Jbml0XG57XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogSW50ZXJuYXRpb25hbGl6YXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgc3R5bGVUaGVtZVNlcnZpY2U6IFN0eWxlVGhlbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dCE6IEVsZW1lbnRSZWZcbiAgQFZpZXdDaGlsZCgnb3B0aW9ucycpIG9wdGlvbnMhOiBFbGVtZW50UmVmXG4gIEBWaWV3Q2hpbGQoJ291dGVyRGl2Jykgb3V0ZXJEaXYhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PlxuXG4gIEBDb250ZW50Q2hpbGQoJ29jUHJlZml4Jykgb2NQcmVmaXg6IGFueVxuICBAQ29udGVudENoaWxkKCdvY1N1ZmZpeCcpIG9jU3VmZml4OiBhbnlcbiAgQElucHV0KCkgb2NQbGFjZWhvbGRlcj86IHN0cmluZ1xuICBASW5wdXQoKSBvY0Vycm9yPzogc3RyaW5nXG4gIEBJbnB1dCgpIG9jU2l6ZTogJ3NtYWxsJyB8ICdsYXJnZScgfCAnbWVkaXVtJyA9ICdtZWRpdW0nXG4gIEBJbnB1dCgpIG9jRGF0YTogT2NBdXRvQ29tcGxldGVUeXBlW10gPSBbXVxuICBASW5wdXQoKSBvY1ZhbHVlOiBhbnkgPSAnJ1xuICBASW5wdXQoKSBvY0NsZWFyT25DaGFuZ2U6IGJvb2xlYW4gPSBmYWxzZVxuICBASW5wdXQoKSBvY1dpZHRoPzogc3RyaW5nXG4gIEBJbnB1dCgpIG9jTWluV2lkdGg/OiBzdHJpbmdcbiAgQElucHV0KCkgb2NNYXhXaWR0aD86IHN0cmluZ1xuICBASW5wdXQoKSBvY09wdGlvbnNNYXhIZWlnaHQ/OiBzdHJpbmdcbiAgQElucHV0KCkgb2NPcHRpb25zV2lkdGg/OiBzdHJpbmdcbiAgQElucHV0KCkgb2NSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIG9jTWF4UmVzdWx0cz86IG51bWJlclxuICBASW5wdXQoKSBvY0FsbG93Tm90TGlzdGVkVmFsdWU6IGJvb2xlYW4gPSBmYWxzZVxuICBASW5wdXQoKSBvY05vQXZhaWxhYmxlT3B0aW9uc1RleHQ/OiBzdHJpbmdcbiAgQElucHV0KCkgb2NUeXBlRm9yTW9yZVJlc3VsdHNUZXh0Pzogc3RyaW5nXG4gIEBJbnB1dCgpIG9jTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIG9jU2VtYW50aWNMaWtlOiBib29sZWFuID0gZmFsc2UgLy8gZGVwcmVjYXRlZC4gUHJlZmVyIHVzaW5nIG9jU3R5bGVUaGVtZSBpbnN0ZWFkXG4gIEBJbnB1dCgpIG9jU3R5bGU6IE9jU3R5bGVUaGVtZVR5cGUgPSAnb3RpbXVzJ1xuICBASW5wdXQoKSBvY1RhYkluZGV4PzogbnVtYmVyXG5cbiAgQElucHV0KCkgb2NIYXNEZWxldGVCdXR0b24/OiBib29sZWFuID0gZmFsc2VcblxuICBAT3V0cHV0KCkgb2NWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG4gIEBPdXRwdXQoKSBvY0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgbnVsbD4oKVxuICBAT3V0cHV0KCkgb2NPcHRpb25Ob3RGb3VuZCA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICBAT3V0cHV0KCkgb2NDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIGhhc1N1ZmZpeDogYm9vbGVhbiA9IGZhbHNlXG4gIGhhc1ByZWZpeDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgaXNPcHRpb25zU2hvd246IGJvb2xlYW4gPSBmYWxzZVxuICBmaWx0ZXJlZERhdGE6IE9jQXV0b0NvbXBsZXRlVHlwZVtdID0gW11cbiAgc2VsZWN0ZWRWYWx1ZTogT2NBdXRvQ29tcGxldGVUeXBlID0ge1xuICAgIG5hbWU6ICcnLFxuICAgIHZhbHVlOiBudWxsLFxuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gIGdldCBjb21wdXRlZFdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLm9jV2lkdGggPyB0aGlzLm9jV2lkdGggOiBudWxsXG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi13aWR0aCcpXG4gIGdldCBjb21wdXRlZE1pbldpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLm9jTWluV2lkdGggfHwgJzAnXG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1heC13aWR0aCcpXG4gIGdldCBjb21wdXRlZE1heFdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLm9jTWF4V2lkdGggfHwgJzEwMCUnXG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub2NQcmVmaXgpIHtcbiAgICAgIHRoaXMuaGFzUHJlZml4ID0gdHJ1ZVxuICAgIH1cbiAgICBpZiAodGhpcy5vY1N1ZmZpeCkge1xuICAgICAgdGhpcy5oYXNTdWZmaXggPSB0cnVlXG4gICAgfVxuICAgIHRoaXMuZm9ybWF0T2NWYWx1ZVR5cGUoKVxuICAgIHRoaXMubG9hZE9wdGlvbnMoKVxuXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vY1ZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMub2NWYWx1ZSA9IG51bGxcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vY1N0eWxlID0gdGhpcy5zdHlsZVRoZW1lU2VydmljZS5nZXRTdHlsZVRoZW1lKCkgfHwgdGhpcy5vY1N0eWxlXG4gICAgaWYgKHRoaXMub2NQcmVmaXgpIHtcbiAgICAgIHRoaXMuaGFzUHJlZml4ID0gdHJ1ZVxuICAgIH1cbiAgICBpZiAodGhpcy5vY1N1ZmZpeCkge1xuICAgICAgdGhpcy5oYXNTdWZmaXggPSB0cnVlXG4gICAgfVxuICAgIHRoaXMuZm9ybWF0T2NWYWx1ZVR5cGUoKVxuICAgIHRoaXMubG9hZE9wdGlvbnMoKVxuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5nZXRUcmFuc2xhdGlvbnNCeUxhbmd1YWdlKClcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vY1ByZWZpeCkge1xuICAgICAgdGhpcy5oYXNQcmVmaXggPSB0cnVlXG4gICAgfVxuICAgIGlmICh0aGlzLm9jU3VmZml4KSB7XG4gICAgICB0aGlzLmhhc1N1ZmZpeCA9IHRydWVcbiAgICB9XG4gIH1cblxuICBmb3JtYXRPY1ZhbHVlVHlwZSgpIHtcbiAgICBpZiAodGhpcy5vY1ZhbHVlKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5vY1ZhbHVlfWBcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGdldFRyYW5zbGF0aW9uKGNvZGU6IG51bWJlciB8IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0VHJhbnNsYXRpb24oY29kZSlcbiAgfVxuXG4gIGxvYWRPcHRpb25zKCkge1xuICAgIHRoaXMuZm9ybWF0T2NWYWx1ZVR5cGUoKVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLm9jRGF0YVxuICAgICAgY29uc3QgaW5wdXRCb3ggPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcblxuICAgICAgY29uc3QgZm91bmQgPSB0aGlzLm9jRGF0YS5maW5kKChlbCkgPT4gZWwudmFsdWUgPT0gdGhpcy5vY1ZhbHVlKVxuICAgICAgaWYgKGZvdW5kKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IGZvdW5kXG4gICAgICAgIHRoaXMub2NWYWx1ZSA9IGZvdW5kLm5hbWVcbiAgICAgIH1cblxuICAgICAgaWYgKGlucHV0Qm94KSB7XG4gICAgICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IGlucHV0Qm94LnF1ZXJ5U2VsZWN0b3IoJ2lucHV0JylcblxuICAgICAgICBpZiAoaW5wdXRFbGVtZW50ICYmICF0aGlzLm9jU2VtYW50aWNMaWtlICYmIFsnb3RpbXVzJywgJ3NodWknXS5pbmNsdWRlcyh0aGlzLm9jU3R5bGUpKSB7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoaW5wdXRFbGVtZW50LCAncGxhY2Vob2xkZXInLCAnJylcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbnB1dEVsZW1lbnQsICdyZXF1aXJlZCcsIHRoaXMub2NSZXF1aXJlZC50b1N0cmluZygpKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgNTApXG4gIH1cblxuICBjbG9zZU9uQ2xpY2tPdXQoKSB7XG4gICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oJ3dpbmRvdycsICdjbGljaycsIChlOiBFdmVudCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5vcHRpb25zKSB7XG4gICAgICAgIGlmIChlLnRhcmdldCAhPT0gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50ICYmIGUudGFyZ2V0ICE9PSB0aGlzLm9wdGlvbnMubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgIHRoaXMuaXNPcHRpb25zU2hvd24gPSBmYWxzZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmZpbmRCeVR5cGluZygpXG4gICAgfSlcbiAgfVxuXG4gIGZpbmRCeVR5cGluZygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMub2NWYWx1ZSB8fCAhdGhpcy5vY1ZhbHVlPy50b1N0cmluZygpLnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgIHRoaXMub2NDaGFuZ2UuZW1pdChudWxsKVxuICAgICAgdGhpcy5vY09wdGlvbk5vdEZvdW5kLmVtaXQoKVxuICAgIH1cbiAgICBjb25zdCBmb3VuZFZhbHVlID0gdGhpcy5vY0RhdGEuZmluZChcbiAgICAgIChkYXRhKSA9PlxuICAgICAgICBkYXRhLm5hbWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSB0aGlzLm9jVmFsdWU/LnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSB8fFxuICAgICAgICBkYXRhLnZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5vY1ZhbHVlPy50b1N0cmluZygpLnRvTG93ZXJDYXNlKClcbiAgICApXG5cbiAgICBpZiAoIWZvdW5kVmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHtcbiAgICAgICAgbmFtZTogJycsXG4gICAgICAgIHZhbHVlOiBudWxsLFxuICAgICAgfVxuICAgICAgaWYgKCF0aGlzLm9jQWxsb3dOb3RMaXN0ZWRWYWx1ZSkge1xuICAgICAgICB0aGlzLm9jVmFsdWUgPSAnJ1xuICAgICAgfVxuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLm9jRGF0YVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IGZvdW5kVmFsdWVcbiAgfVxuXG4gIGZpbHRlckRhdGEobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5pc09wdGlvbnNTaG93biA9IHRydWVcbiAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IHRoaXMub2NEYXRhLmZpbHRlcigoZGF0YSkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Rm9ybWF0dGVkTmFtZShkYXRhLm5hbWUpPy5pbmNsdWRlcyh0aGlzLmdldEZvcm1hdHRlZE5hbWUobmFtZSkpXG4gICAgfSlcbiAgfVxuXG4gIGdldEZvcm1hdHRlZE5hbWUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzdHJcbiAgICAgID8udG9Mb3dlckNhc2UoKVxuICAgICAgLm5vcm1hbGl6ZSgnTkZEJylcbiAgICAgIC5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCAnJykgLy8gUmVtb3ZlIG1hcmNhcyBkaWFjcsOtdGljYXNcbiAgfVxuXG4gIHRvZ2dsZU9wdGlvbnMoKSB7XG4gICAgdGhpcy5jbG9zZU9uQ2xpY2tPdXQoKVxuICAgIHRoaXMuaXNPcHRpb25zU2hvd24gPSAhdGhpcy5pc09wdGlvbnNTaG93blxuICB9XG5cbiAgc2VsZWN0VmFsdWUodmFsdWU6IGFueSkge1xuICAgIGNvbnN0IGZvdW5kVmFsdWUgPSB0aGlzLm9jRGF0YS5maW5kKChkYXRhKSA9PiBkYXRhLnZhbHVlID09IHZhbHVlKVxuXG4gICAgaWYgKCFmb3VuZFZhbHVlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB7XG4gICAgICAgIG5hbWU6ICcnLFxuICAgICAgICB2YWx1ZTogbnVsbCxcbiAgICAgIH1cblxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSBmb3VuZFZhbHVlXG4gICAgaWYgKHRoaXMub2NDbGVhck9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9jVmFsdWUgPSAnJ1xuICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSB0aGlzLm9jRGF0YVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9jVmFsdWUgPSBmb3VuZFZhbHVlLm5hbWVcbiAgICB9XG5cbiAgICB0aGlzLmlzT3B0aW9uc1Nob3duID0gZmFsc2VcblxuICAgIHRoaXMub2NDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkVmFsdWUudmFsdWUpXG5cbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIGNsZWFyVmFsdWUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0ge1xuICAgICAgbmFtZTogJycsXG4gICAgICB2YWx1ZTogbnVsbCxcbiAgICB9XG4gICAgdGhpcy5vY1ZhbHVlID0gJydcbiAgICB0aGlzLmZpbHRlcmVkRGF0YSA9IHRoaXMub2NEYXRhXG4gIH1cbn1cbiIsIjxkaXYgW25nQ2xhc3NdPVwie1xuICAgICdvYy1pbnB1dC1ib3gnOiAhb2NTZW1hbnRpY0xpa2UgJiYgb2NTdHlsZSA9PT0gJ290aW11cycsXG4gICAgc21hbGw6IG9jU2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICBsYXJnZTogb2NTaXplID09PSAnbGFyZ2UnLFxuICAgIGVycm9yOiAhIW9jRXJyb3IsXG4gICAgcHJlZml4OiBoYXNQcmVmaXgsXG4gICAgc3VmZml4OiBoYXNTdWZmaXggfHwgb2NIYXNEZWxldGVCdXR0b24sXG4gICAgc2h1aTogb2NTdHlsZSA9PT0gJ3NodWknLFxuICAgICdzaHVpLWlucHV0LWJveCc6IG9jU3R5bGUgPT09ICdzaHVpJyxcbiAgfVwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDxpbnB1dCBbcGxhY2Vob2xkZXJdPVwib2NQbGFjZWhvbGRlclwiICNpbnB1dCAoY2xpY2spPVwidG9nZ2xlT3B0aW9ucygpOyBvY0NsaWNrLmVtaXQoKVwiIHR5cGU9XCJ0ZXh0XCJcbiAgICAoaW5wdXQpPVwiZmlsdGVyRGF0YShvY1ZhbHVlKVwiIFsobmdNb2RlbCldPVwib2NWYWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9jVmFsdWUgPSAkZXZlbnQ7IG9jVmFsdWVDaGFuZ2UuZW1pdCgkZXZlbnQpXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2VtYW50aWMtaW5wdXQnOiBvY1NlbWFudGljTGlrZSB8fCBvY1N0eWxlID09PSAnc2VtYW50aWMnLFxuICAgIH1cIiBbdGFiaW5kZXhdPVwib2NUYWJJbmRleFwiIC8+XG4gIEBpZiAoIW9jU2VtYW50aWNMaWtlICYmIG9jU3R5bGUgIT09ICdzZW1hbnRpYycpIHtcbiAgPGxhYmVsPlxuICAgIDxzcGFuIFtpbm5lckhUTUxdPVwib2NQbGFjZWhvbGRlclwiPjwvc3Bhbj5cbiAgICBAaWYgKG9jUmVxdWlyZWQpIHtcbiAgICA8c3BhbiBjbGFzcz1cIm9jIGNvbG9yIGVycm9yXCI+Kjwvc3Bhbj5cbiAgICB9XG4gIDwvbGFiZWw+XG4gIH1cbiAgPHNtYWxsICpuZ0lmPVwib2NFcnJvclwiIGNsYXNzPVwiZXJyb3ItbXNnXCI+e3sgb2NFcnJvciB9fTwvc21hbGw+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIm9jUHJlZml4XCI+PC9uZy1jb250ZW50PlxuICBAaWYgKG9jSGFzRGVsZXRlQnV0dG9uKSB7XG4gIDxidXR0b24gY2xhc3M9XCJvYy1oYXMtY2xvc2UtYnV0dG9uIG9jIHN1ZmZpeFwiIChjbGljayk9XCJjbGVhclZhbHVlKClcIj5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj5iYWNrc3BhY2U8L3NwYW4+XG4gIDwvYnV0dG9uPlxuICB9XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIm9jU3VmZml4XCI+PC9uZy1jb250ZW50PlxuXG4gIDxkaXYgY2xhc3M9XCJvYy1vcHRpb25zLWRpdlwiPlxuICAgIEBpZiAoaXNPcHRpb25zU2hvd24gJiYgIW9jTG9hZGluZykge1xuICAgIDx1bCAjb3B0aW9ucyBjbGFzcz1cIm9jLW9wdGlvbnNcIiBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgJ21heC1oZWlnaHQnOiBvY09wdGlvbnNNYXhIZWlnaHQsXG4gICAgICAgICAgd2lkdGg6IG9jT3B0aW9uc1dpZHRoLFxuICAgICAgICB9XCI+XG4gICAgICBAaWYgKCFmaWx0ZXJlZERhdGEubGVuZ3RoKSB7XG4gICAgICA8bGkgY2xhc3M9XCJuby1vcHRpb25zXCI+XG4gICAgICAgIHt7IG9jTm9BdmFpbGFibGVPcHRpb25zVGV4dCB8fCAnTmVuaHVtIHJlc3VsdGFkbyBkaXNwb27DrXZlbCcgfX1cbiAgICAgIDwvbGk+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgIEBmb3IgKGRhdGEgb2YgZmlsdGVyZWREYXRhOyB0cmFjayBkYXRhLnZhbHVlOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgQGlmICghb2NNYXhSZXN1bHRzIHx8IGkgPCBvY01heFJlc3VsdHMpIHsgPGxpPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic2VsZWN0VmFsdWUoZGF0YS52YWx1ZSlcIj5cbiAgICAgICAgICB7eyBkYXRhLm5hbWUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgKG9jTWF4UmVzdWx0cyAmJiBmaWx0ZXJlZERhdGEubGVuZ3RoID4gb2NNYXhSZXN1bHRzKSB7XG4gICAgICAgIDxsaSBjbGFzcz1cIm5vLW9wdGlvbnNcIj5cbiAgICAgICAgICB7eyBvY1R5cGVGb3JNb3JlUmVzdWx0c1RleHQgfHwgJ0RpZ2l0ZSBwYXJhIHZlciBtYWlzIHJlc3VsdGFkb3MnIH19XG4gICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICAgICAgfVxuICAgIDwvdWw+XG4gICAgfSBAZWxzZSBpZiAoaXNPcHRpb25zU2hvd24gJiYgb2NMb2FkaW5nKSB7XG4gICAgPGRpdiBjbGFzcz1cIm9jLW9wdGlvbnMgbG9hZGVyXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgbG9hZGluZ1wiPiBwcm9ncmVzc19hY3Rpdml0eSA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class OcBadgeComponent {
6
+ constructor() {
7
+ this.ocSize = 'small';
8
+ this.ocColor = 'notification';
9
+ this.ocWaved = false;
10
+ this.classList = [];
11
+ }
12
+ ngOnInit() {
13
+ this.classList.push(this.ocSize, this.ocColor);
14
+ if (this.ocWaved)
15
+ this.classList.push('waved');
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: OcBadgeComponent, isStandalone: true, selector: "oc-badge", inputs: { ocSize: "ocSize", ocColor: "ocColor", ocWaved: "ocWaved" }, ngImport: i0, template: "<div>\n <div class=\"oc-badge\" [ngClass]=\"classList\">\n <ng-content>\n \n </ng-content>\n </div>\n</div>\n", styles: [".oc-badge{border-radius:50%;display:flex;justify-content:center;align-items:center;color:#f8f9ff}.oc-badge>*{color:#f8f9ff;font-weight:600}.notification{background-color:#ed3a3a}.brand-g{background-color:#00dda3}.brand-p{background-color:#5505a2}.success{background-color:#4ab858}.warning{background-color:#ebbc2e}.small{width:22px;height:22px;font-size:1rem}.medium{width:28px;height:28px;font-size:1.25rem}.large{width:34px;height:34px;font-size:1.5rem}.waved{position:relative;z-index:2}.waved:before,.waved:after{z-index:-1;content:\"\";position:absolute;top:0;border-radius:50%;width:100%;height:100%;animation:wave infinite 2s}.waved:after{animation-delay:.6s}.waved.notification:before,.waved.notification:after{background-color:#ed3a3a}.waved.brand-g:before,.waved.brand-g:after{background-color:#00dda3}.waved.brand-p:before,.waved.brand-p:after{background-color:#5505a2}.waved.success:before,.waved.success:after{background-color:#4ab858}.waved.warning:before,.waved.warning:after{background-color:#ebbc2e}@keyframes wave{0%{transform:scale(0)}to{opacity:0;transform:scale(2)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OcBadgeComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'oc-badge', standalone: true, imports: [CommonModule], template: "<div>\n <div class=\"oc-badge\" [ngClass]=\"classList\">\n <ng-content>\n \n </ng-content>\n </div>\n</div>\n", styles: [".oc-badge{border-radius:50%;display:flex;justify-content:center;align-items:center;color:#f8f9ff}.oc-badge>*{color:#f8f9ff;font-weight:600}.notification{background-color:#ed3a3a}.brand-g{background-color:#00dda3}.brand-p{background-color:#5505a2}.success{background-color:#4ab858}.warning{background-color:#ebbc2e}.small{width:22px;height:22px;font-size:1rem}.medium{width:28px;height:28px;font-size:1.25rem}.large{width:34px;height:34px;font-size:1.5rem}.waved{position:relative;z-index:2}.waved:before,.waved:after{z-index:-1;content:\"\";position:absolute;top:0;border-radius:50%;width:100%;height:100%;animation:wave infinite 2s}.waved:after{animation-delay:.6s}.waved.notification:before,.waved.notification:after{background-color:#ed3a3a}.waved.brand-g:before,.waved.brand-g:after{background-color:#00dda3}.waved.brand-p:before,.waved.brand-p:after{background-color:#5505a2}.waved.success:before,.waved.success:after{background-color:#4ab858}.waved.warning:before,.waved.warning:after{background-color:#ebbc2e}@keyframes wave{0%{transform:scale(0)}to{opacity:0;transform:scale(2)}}\n"] }]
23
+ }], propDecorators: { ocSize: [{
24
+ type: Input
25
+ }], ocColor: [{
26
+ type: Input
27
+ }], ocWaved: [{
28
+ type: Input
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3RpbXVzLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL29jLWJhZGdlL29jLWJhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy1iYWRnZS9vYy1iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7OztBQVN6RCxNQUFNLE9BQU8sZ0JBQWdCO0lBUDdCO1FBUVcsV0FBTSxHQUFpQyxPQUFPLENBQUE7UUFDOUMsWUFBTyxHQUFtRSxjQUFjLENBQUE7UUFDeEYsWUFBTyxHQUFZLEtBQUssQ0FBQTtRQUVqQyxjQUFTLEdBQWEsRUFBRSxDQUFBO0tBTXpCO0lBSkMsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQzlDLElBQUcsSUFBSSxDQUFDLE9BQU87WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUMvQyxDQUFDOytHQVZVLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDBJQ1Y3Qix3SEFPQSwwbkNERFksWUFBWTs7NEZBSVgsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLFVBQVUsY0FDUixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7OEJBS2QsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29jLWJhZGdlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9vYy1iYWRnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9vYy1iYWRnZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgT2NCYWRnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIG9jU2l6ZTogJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyA9ICdzbWFsbCdcbiAgQElucHV0KCkgb2NDb2xvcjogJ25vdGlmaWNhdGlvbicgfCAnYnJhbmQtZycgfCAnYnJhbmQtcCcgfCAnc3VjY2VzcycgfCAnd2FybmluZycgPSAnbm90aWZpY2F0aW9uJ1xuICBASW5wdXQoKSBvY1dhdmVkOiBib29sZWFuID0gZmFsc2VcblxuICBjbGFzc0xpc3Q6IHN0cmluZ1tdID0gW11cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsYXNzTGlzdC5wdXNoKHRoaXMub2NTaXplLCB0aGlzLm9jQ29sb3IpXG4gICAgaWYodGhpcy5vY1dhdmVkKSB0aGlzLmNsYXNzTGlzdC5wdXNoKCd3YXZlZCcpXG4gIH1cbn1cbiIsIjxkaXY+XG4gIDxkaXYgY2xhc3M9XCJvYy1iYWRnZVwiIFtuZ0NsYXNzXT1cImNsYXNzTGlzdFwiPlxuICAgIDxuZy1jb250ZW50PlxuICBcbiAgICA8L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=