@sarasanalytics-com/design-system 0.0.9 → 0.0.10

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 (160) hide show
  1. package/esm2022/interfaces/avatar-interface.mjs +2 -0
  2. package/esm2022/interfaces/button-interface.mjs +2 -0
  3. package/esm2022/interfaces/chip-interface.mjs +2 -0
  4. package/esm2022/interfaces/grid-interface.mjs +2 -0
  5. package/esm2022/interfaces/select-interface.mjs +2 -0
  6. package/esm2022/interfaces/tab-interface.mjs +2 -0
  7. package/esm2022/lib/avatar/avatar.component.mjs +56 -0
  8. package/esm2022/lib/button/button.component.mjs +84 -0
  9. package/esm2022/lib/calendar-header/calendar-header.component.mjs +168 -0
  10. package/esm2022/lib/card/card-footer-actions/card-footer-actions.component.mjs +11 -0
  11. package/esm2022/lib/card/card-icon/card-icon.component.mjs +11 -0
  12. package/esm2022/lib/card/card-title-actions/card-title-actions.component.mjs +11 -0
  13. package/esm2022/lib/card/card.component.mjs +53 -0
  14. package/esm2022/lib/chips/chips.component.mjs +62 -0
  15. package/esm2022/lib/component-library.component.mjs +19 -0
  16. package/esm2022/lib/component-library.service.mjs +14 -0
  17. package/esm2022/lib/datepicker/datepicker.component.mjs +40 -0
  18. package/esm2022/lib/form-input/form-input.component.mjs +152 -0
  19. package/esm2022/lib/form-select/form-select.component.mjs +59 -0
  20. package/esm2022/lib/grid-cell/grid-cell.component.mjs +84 -0
  21. package/esm2022/lib/header/header.component.mjs +37 -0
  22. package/esm2022/lib/icon/icon.component.mjs +50 -0
  23. package/esm2022/lib/icon/icon.service.mjs +29 -0
  24. package/esm2022/lib/left-nav/left-nav.component.mjs +117 -0
  25. package/esm2022/lib/stepper/stepper.component.mjs +64 -0
  26. package/esm2022/lib/tabs/tabs.component.mjs +38 -0
  27. package/esm2022/lib/toast/toast.component.mjs +100 -0
  28. package/esm2022/lib/tool-tip/tool-tip.component.mjs +41 -0
  29. package/esm2022/public-api.mjs +30 -0
  30. package/esm2022/sarasanalytics-com-design-system.mjs +5 -0
  31. package/esm2022/utils/validators.mjs +70 -0
  32. package/fesm2022/sarasanalytics-com-design-system.mjs +1274 -0
  33. package/fesm2022/sarasanalytics-com-design-system.mjs.map +1 -0
  34. package/index.d.ts +5 -0
  35. package/interfaces/avatar-interface.d.ts +6 -0
  36. package/interfaces/button-interface.d.ts +12 -0
  37. package/interfaces/chip-interface.d.ts +11 -0
  38. package/interfaces/grid-interface.d.ts +24 -0
  39. package/interfaces/select-interface.d.ts +20 -0
  40. package/interfaces/tab-interface.d.ts +6 -0
  41. package/lib/avatar/avatar.component.d.ts +18 -0
  42. package/lib/button/button.component.d.ts +26 -0
  43. package/lib/calendar-header/calendar-header.component.d.ts +31 -0
  44. package/lib/card/card-footer-actions/card-footer-actions.component.d.ts +5 -0
  45. package/lib/card/card-icon/card-icon.component.d.ts +5 -0
  46. package/lib/card/card-title-actions/card-title-actions.component.d.ts +5 -0
  47. package/lib/card/card.component.d.ts +17 -0
  48. package/lib/chips/chips.component.d.ts +22 -0
  49. package/lib/component-library.component.d.ts +5 -0
  50. package/lib/component-library.service.d.ts +6 -0
  51. package/lib/datepicker/datepicker.component.d.ts +9 -0
  52. package/lib/form-input/form-input.component.d.ts +62 -0
  53. package/lib/form-select/form-select.component.d.ts +17 -0
  54. package/lib/grid-cell/grid-cell.component.d.ts +20 -0
  55. package/lib/header/header.component.d.ts +14 -0
  56. package/lib/icon/icon.component.d.ts +16 -0
  57. package/lib/icon/icon.service.d.ts +11 -0
  58. package/lib/left-nav/left-nav.component.d.ts +38 -0
  59. package/lib/stepper/stepper.component.d.ts +17 -0
  60. package/lib/tabs/tabs.component.d.ts +15 -0
  61. package/lib/toast/toast.component.d.ts +33 -0
  62. package/lib/tool-tip/tool-tip.component.d.ts +15 -0
  63. package/package.json +15 -2
  64. package/{src/public-api.ts → public-api.d.ts} +1 -8
  65. package/utils/validators.d.ts +3 -0
  66. package/ng-package.json +0 -8
  67. package/src/interfaces/avatar-interface.ts +0 -6
  68. package/src/interfaces/button-interface.ts +0 -12
  69. package/src/interfaces/chip-interface.ts +0 -11
  70. package/src/interfaces/grid-interface.ts +0 -24
  71. package/src/interfaces/select-interface.ts +0 -20
  72. package/src/interfaces/tab-interface.ts +0 -6
  73. package/src/lib/avatar/avatar.component.css +0 -48
  74. package/src/lib/avatar/avatar.component.html +0 -5
  75. package/src/lib/avatar/avatar.component.spec.ts +0 -23
  76. package/src/lib/avatar/avatar.component.ts +0 -50
  77. package/src/lib/button/button.component.css +0 -145
  78. package/src/lib/button/button.component.html +0 -11
  79. package/src/lib/button/button.component.spec.ts +0 -23
  80. package/src/lib/button/button.component.ts +0 -68
  81. package/src/lib/calendar-header/calendar-header.component.css +0 -67
  82. package/src/lib/calendar-header/calendar-header.component.html +0 -20
  83. package/src/lib/calendar-header/calendar-header.component.spec.ts +0 -23
  84. package/src/lib/calendar-header/calendar-header.component.ts +0 -191
  85. package/src/lib/card/card-body/card-body.component.css +0 -0
  86. package/src/lib/card/card-body/card-body.component.html +0 -1
  87. package/src/lib/card/card-body/card-body.component.spec.ts +0 -23
  88. package/src/lib/card/card-body/card-body.component.ts +0 -12
  89. package/src/lib/card/card-footer-actions/card-footer-actions.component.css +0 -4
  90. package/src/lib/card/card-footer-actions/card-footer-actions.component.html +0 -3
  91. package/src/lib/card/card-footer-actions/card-footer-actions.component.spec.ts +0 -23
  92. package/src/lib/card/card-footer-actions/card-footer-actions.component.ts +0 -12
  93. package/src/lib/card/card-icon/card-icon.component.css +0 -0
  94. package/src/lib/card/card-icon/card-icon.component.html +0 -1
  95. package/src/lib/card/card-icon/card-icon.component.spec.ts +0 -23
  96. package/src/lib/card/card-icon/card-icon.component.ts +0 -12
  97. package/src/lib/card/card-title-actions/card-title-actions.component.css +0 -3
  98. package/src/lib/card/card-title-actions/card-title-actions.component.html +0 -1
  99. package/src/lib/card/card-title-actions/card-title-actions.component.spec.ts +0 -23
  100. package/src/lib/card/card-title-actions/card-title-actions.component.ts +0 -12
  101. package/src/lib/card/card.component.css +0 -84
  102. package/src/lib/card/card.component.html +0 -34
  103. package/src/lib/card/card.component.spec.ts +0 -23
  104. package/src/lib/card/card.component.ts +0 -33
  105. package/src/lib/chips/chips.component.css +0 -129
  106. package/src/lib/chips/chips.component.html +0 -17
  107. package/src/lib/chips/chips.component.spec.ts +0 -23
  108. package/src/lib/chips/chips.component.ts +0 -54
  109. package/src/lib/component-library.component.spec.ts +0 -23
  110. package/src/lib/component-library.component.ts +0 -16
  111. package/src/lib/component-library.service.spec.ts +0 -16
  112. package/src/lib/component-library.service.ts +0 -9
  113. package/src/lib/datepicker/datepicker.component.css +0 -33
  114. package/src/lib/datepicker/datepicker.component.html +0 -11
  115. package/src/lib/datepicker/datepicker.component.spec.ts +0 -23
  116. package/src/lib/datepicker/datepicker.component.ts +0 -36
  117. package/src/lib/form-input/form-input.component.css +0 -109
  118. package/src/lib/form-input/form-input.component.html +0 -27
  119. package/src/lib/form-input/form-input.component.spec.ts +0 -23
  120. package/src/lib/form-input/form-input.component.ts +0 -196
  121. package/src/lib/form-select/form-select.component.css +0 -157
  122. package/src/lib/form-select/form-select.component.html +0 -38
  123. package/src/lib/form-select/form-select.component.spec.ts +0 -23
  124. package/src/lib/form-select/form-select.component.ts +0 -54
  125. package/src/lib/grid-cell/grid-cell.component.css +0 -78
  126. package/src/lib/grid-cell/grid-cell.component.html +0 -31
  127. package/src/lib/grid-cell/grid-cell.component.spec.ts +0 -23
  128. package/src/lib/grid-cell/grid-cell.component.ts +0 -89
  129. package/src/lib/header/header.component.css +0 -62
  130. package/src/lib/header/header.component.html +0 -23
  131. package/src/lib/header/header.component.spec.ts +0 -23
  132. package/src/lib/header/header.component.ts +0 -28
  133. package/src/lib/icon/icon.component.css +0 -21
  134. package/src/lib/icon/icon.component.html +0 -5
  135. package/src/lib/icon/icon.component.ts +0 -49
  136. package/src/lib/icon/icon.service.ts +0 -27
  137. package/src/lib/left-nav/left-nav.component.css +0 -106
  138. package/src/lib/left-nav/left-nav.component.html +0 -48
  139. package/src/lib/left-nav/left-nav.component.spec.ts +0 -23
  140. package/src/lib/left-nav/left-nav.component.ts +0 -146
  141. package/src/lib/stepper/stepper.component.css +0 -96
  142. package/src/lib/stepper/stepper.component.html +0 -14
  143. package/src/lib/stepper/stepper.component.spec.ts +0 -23
  144. package/src/lib/stepper/stepper.component.ts +0 -61
  145. package/src/lib/tabs/tabs.component.css +0 -100
  146. package/src/lib/tabs/tabs.component.html +0 -16
  147. package/src/lib/tabs/tabs.component.spec.ts +0 -23
  148. package/src/lib/tabs/tabs.component.ts +0 -37
  149. package/src/lib/toast/toast.component.css +0 -107
  150. package/src/lib/toast/toast.component.html +0 -29
  151. package/src/lib/toast/toast.component.spec.ts +0 -23
  152. package/src/lib/toast/toast.component.ts +0 -87
  153. package/src/lib/tool-tip/tool-tip.component.css +0 -139
  154. package/src/lib/tool-tip/tool-tip.component.html +0 -31
  155. package/src/lib/tool-tip/tool-tip.component.spec.ts +0 -23
  156. package/src/lib/tool-tip/tool-tip.component.ts +0 -37
  157. package/src/utils/validators.ts +0 -68
  158. package/tsconfig.lib.json +0 -14
  159. package/tsconfig.lib.prod.json +0 -10
  160. package/tsconfig.spec.json +0 -14
@@ -0,0 +1,100 @@
1
+ import { Component, EventEmitter } from '@angular/core';
2
+ import { ButtonComponent } from '../button/button.component';
3
+ import { Input, Output } from '@angular/core';
4
+ import { MatIcon } from '@angular/material/icon';
5
+ import { NgIf } from '@angular/common';
6
+ import { CommonModule } from '@angular/common';
7
+ import { IconComponent } from '../icon/icon.component';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/common";
10
+ export class ToastComponent {
11
+ constructor() {
12
+ this.finishPercentage = -1;
13
+ this.statusIcon = '';
14
+ this.filled = true;
15
+ this.width = '';
16
+ this.toastEvent = new EventEmitter();
17
+ this.firstButton = new EventEmitter();
18
+ this.secondButton = new EventEmitter();
19
+ this.closed = new EventEmitter();
20
+ this.toastStyles = { backgroundColor: 'transparent', color: '', width: this.width + '%' };
21
+ }
22
+ ngOnChanges(changes) {
23
+ if (changes && (changes['status'] || changes['filled'])) {
24
+ this.statusIcon = toastInfo[this.status].icon;
25
+ this.toastStyles.backgroundColor = toastInfo[this.status].bgColor;
26
+ this.toastStyles.color = toastInfo[this.status].color;
27
+ }
28
+ if (changes && changes['width']) {
29
+ this.toastStyles.width = typeof this.width === 'number' ? this.width + '%' : this.width;
30
+ }
31
+ if (this.finishPercentage > 100)
32
+ this.finishPercentage = 100;
33
+ }
34
+ clicked(num) {
35
+ if (num == 0)
36
+ this.firstButton.emit();
37
+ else if (num == 1)
38
+ this.secondButton.emit();
39
+ else if (num == 2)
40
+ this.closed.emit();
41
+ }
42
+ closeToast() {
43
+ this.toastEvent.emit({
44
+ type: 'TOAST_CLOSED',
45
+ params: {}
46
+ });
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: ToastComponent, isStandalone: true, selector: "sa-toast", inputs: { finishPercentage: "finishPercentage", heading: "heading", subHeading: "subHeading", statusIcon: "statusIcon", status: "status", firstButtonName: "firstButtonName", secondButtonName: "secondButtonName", closable: "closable", filled: "filled", width: "width" }, outputs: { toastEvent: "toastEvent", firstButton: "firstButton", secondButton: "secondButton", closed: "closed" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"toast\" [ngStyle]=\"toastStyles\">\n <div class=\"content\">\n <div class=\"toast-icon {{status}}\">\n <sa-icon [icon]=\"statusIcon\" size=\"32\"></sa-icon>\n <!-- <img [src]=\"statusIcon\" alt=\"\"> -->\n </div>\n <div class=\"head-subhead\">\n <p class=\"heading\">{{heading}}</p>\n <p class=\"subheading\">{{subHeading}}</p>\n </div>\n @if(closable){\n <!-- <img class=\"cross\" (click)=\"closeToast()\" [src]=\"crossmark\" alt=\"\"> -->\n <sa-icon class=\"cross\" icon=\"crossmark\" size=\"24\" (click)=\"closeToast()\"></sa-icon>\n }\n </div>\n <div class=\"controls\">\n <sa-button *ngIf=\"firstButtonName\" (onClickEvent)=\"clicked(0)\" [text]=\"firstButtonName\" type=\"transparent\"\n size=\"medium\" state=\"default\">\n </sa-button>\n <sa-button *ngIf=\"secondButtonName\" (onClickEvent)=\"clicked(1)\" [text]=\"secondButtonName\" type=\"outline\"\n size=\"medium\" state=\"default\">\n </sa-button>\n </div>\n\n <div *ngIf=\"finishPercentage >= 0\" class=\"progress-bar\">\n <div class=\"progress-done\" [style.width]=\"finishPercentage+'%'\"></div>\n <div class=\"progress-left\" [style.width]=\"100-finishPercentage+'%'\"></div>\n </div>\n</div>", styles: [".toast{display:flex;width:max-content;flex-direction:column;justify-content:center;align-items:center;padding:var(--small-16px, 16px);gap:var(--small-16px, 16px);border-radius:var(--small-8px, 8px);border:1px solid var(--grey-50, #E9EAEB);background:var(--structural-white, #FFF);box-shadow:0 0 12px #0000000d;font-family:var(--font)}.cross{cursor:pointer}.heading{width:359px;font-size:16px;font-style:normal;font-weight:600;line-height:24px;letter-spacing:.15px}.toast-icon{display:flex;justify-content:center;border-radius:50%}.positive{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-success-50);background-color:var(--semantic-success-50)}.negative{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-error-50);background-color:var(--semantic-error-50)}.tentative{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-yellow-50);background-color:var(--semantic-yellow-50)}.toast-icon img{width:24px;height:24px}.subheading{font-size:16px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.5px;color:var(--text-mediumemphasis, #697079)}.heading,.subheading{margin:0}.content{display:flex;justify-content:center;align-items:flex-start;gap:var(--small-12px, 12px)}.head-subhead{justify-content:space-between;display:flex;flex-direction:column;gap:var(--small-4px, 4px)}.controls{width:100%;display:flex;justify-content:flex-end;align-items:center;gap:var(--small-12px, 12px)}.progress-bar{display:flex;width:100%}.progress-done{height:3px;background-color:var(--primary-500);border-radius:2px}.progress-left{height:3px;background-color:#c5c5c5;border-top-right-radius:2px;border-bottom-right-radius:2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "iconPosition", "href", "hrefTarget", "isSubmit"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["icon", "size", "color"] }] }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ToastComponent, decorators: [{
52
+ type: Component,
53
+ args: [{ selector: 'sa-toast', standalone: true, imports: [CommonModule, ButtonComponent, IconComponent, ButtonComponent, MatIcon, NgIf], template: "<div class=\"toast\" [ngStyle]=\"toastStyles\">\n <div class=\"content\">\n <div class=\"toast-icon {{status}}\">\n <sa-icon [icon]=\"statusIcon\" size=\"32\"></sa-icon>\n <!-- <img [src]=\"statusIcon\" alt=\"\"> -->\n </div>\n <div class=\"head-subhead\">\n <p class=\"heading\">{{heading}}</p>\n <p class=\"subheading\">{{subHeading}}</p>\n </div>\n @if(closable){\n <!-- <img class=\"cross\" (click)=\"closeToast()\" [src]=\"crossmark\" alt=\"\"> -->\n <sa-icon class=\"cross\" icon=\"crossmark\" size=\"24\" (click)=\"closeToast()\"></sa-icon>\n }\n </div>\n <div class=\"controls\">\n <sa-button *ngIf=\"firstButtonName\" (onClickEvent)=\"clicked(0)\" [text]=\"firstButtonName\" type=\"transparent\"\n size=\"medium\" state=\"default\">\n </sa-button>\n <sa-button *ngIf=\"secondButtonName\" (onClickEvent)=\"clicked(1)\" [text]=\"secondButtonName\" type=\"outline\"\n size=\"medium\" state=\"default\">\n </sa-button>\n </div>\n\n <div *ngIf=\"finishPercentage >= 0\" class=\"progress-bar\">\n <div class=\"progress-done\" [style.width]=\"finishPercentage+'%'\"></div>\n <div class=\"progress-left\" [style.width]=\"100-finishPercentage+'%'\"></div>\n </div>\n</div>", styles: [".toast{display:flex;width:max-content;flex-direction:column;justify-content:center;align-items:center;padding:var(--small-16px, 16px);gap:var(--small-16px, 16px);border-radius:var(--small-8px, 8px);border:1px solid var(--grey-50, #E9EAEB);background:var(--structural-white, #FFF);box-shadow:0 0 12px #0000000d;font-family:var(--font)}.cross{cursor:pointer}.heading{width:359px;font-size:16px;font-style:normal;font-weight:600;line-height:24px;letter-spacing:.15px}.toast-icon{display:flex;justify-content:center;border-radius:50%}.positive{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-success-50);background-color:var(--semantic-success-50)}.negative{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-error-50);background-color:var(--semantic-error-50)}.tentative{box-shadow:0 0 0 var(--small-4px, 4px) var(--semantic-yellow-50);background-color:var(--semantic-yellow-50)}.toast-icon img{width:24px;height:24px}.subheading{font-size:16px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.5px;color:var(--text-mediumemphasis, #697079)}.heading,.subheading{margin:0}.content{display:flex;justify-content:center;align-items:flex-start;gap:var(--small-12px, 12px)}.head-subhead{justify-content:space-between;display:flex;flex-direction:column;gap:var(--small-4px, 4px)}.controls{width:100%;display:flex;justify-content:flex-end;align-items:center;gap:var(--small-12px, 12px)}.progress-bar{display:flex;width:100%}.progress-done{height:3px;background-color:var(--primary-500);border-radius:2px}.progress-left{height:3px;background-color:#c5c5c5;border-top-right-radius:2px;border-bottom-right-radius:2px}\n"] }]
54
+ }], propDecorators: { finishPercentage: [{
55
+ type: Input
56
+ }], heading: [{
57
+ type: Input
58
+ }], subHeading: [{
59
+ type: Input
60
+ }], statusIcon: [{
61
+ type: Input
62
+ }], status: [{
63
+ type: Input
64
+ }], firstButtonName: [{
65
+ type: Input
66
+ }], secondButtonName: [{
67
+ type: Input
68
+ }], closable: [{
69
+ type: Input
70
+ }], filled: [{
71
+ type: Input
72
+ }], width: [{
73
+ type: Input
74
+ }], toastEvent: [{
75
+ type: Output
76
+ }], firstButton: [{
77
+ type: Output
78
+ }], secondButton: [{
79
+ type: Output
80
+ }], closed: [{
81
+ type: Output
82
+ }] } });
83
+ const toastInfo = {
84
+ 'success': {
85
+ icon: 'checkmark',
86
+ bgColor: '#EBF5E9',
87
+ color: '#246B16'
88
+ },
89
+ 'failure': {
90
+ icon: 'error-circle',
91
+ bgColor: '#F8E9E9',
92
+ color: '#861C15'
93
+ },
94
+ 'causion': {
95
+ icon: 'warning',
96
+ bgColor: '',
97
+ color: ''
98
+ }
99
+ };
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90b2FzdC90b2FzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3RvYXN0L3RvYXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFTdkQsTUFBTSxPQUFPLGNBQWM7SUFQM0I7UUFRVyxxQkFBZ0IsR0FBVyxDQUFDLENBQUMsQ0FBQztRQUc5QixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBS3hCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDdkIsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFFM0IsZUFBVSxHQUE4QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHdEMsZ0JBQVcsR0FBRyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsS0FBSyxF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O1FBQ1gsS0FBSyxFQUFFLEVBQUU7S0FDVjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NhLXRvYXN0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQnV0dG9uQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBCdXR0b25Db21wb25lbnQsIE1hdEljb24sIE5nSWZdLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9hc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdG9hc3QuY29tcG9uZW50LmNzcydcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBmaW5pc2hQZXJjZW50YWdlOiBudW1iZXIgPSAtMTtcbiAgQElucHV0KCkgaGVhZGluZzogc3RyaW5nO1xuICBASW5wdXQoKSBzdWJIZWFkaW5nOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN0YXR1c0ljb246IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBzdGF0dXM6ICdzdWNjZXNzJyB8ICdmYWlsdXJlJyB8ICdjYXV0aW9uJyB8ICdwb3NpdGl2ZScgfCAnbmVnYXRpdmUnIHwgJ3RlbnRhdGl2ZSc7XG4gIEBJbnB1dCgpIGZpcnN0QnV0dG9uTmFtZTogc3RyaW5nO1xuICBASW5wdXQoKSBzZWNvbmRCdXR0b25OYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsb3NhYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBmaWxsZWQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSB3aWR0aDogbnVtYmVyIHwgc3RyaW5nID0gJyc7XG5cbiAgQE91dHB1dCgpIHRvYXN0RXZlbnQ6IEV2ZW50RW1pdHRlcjxJVG9hc3RFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBmaXJzdEJ1dHRvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHNlY29uZEJ1dHRvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXG4gIHRvYXN0U3R5bGVzID0geyBiYWNrZ3JvdW5kQ29sb3I6ICd0cmFuc3BhcmVudCcsIGNvbG9yOiAnJywgd2lkdGg6IHRoaXMud2lkdGggKyAnJScgfTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMgJiYgKGNoYW5nZXNbJ3N0YXR1cyddIHx8IGNoYW5nZXNbJ2ZpbGxlZCddKSkge1xuICAgICAgdGhpcy5zdGF0dXNJY29uID0gdG9hc3RJbmZvW3RoaXMuc3RhdHVzXS5pY29uO1xuICAgICAgdGhpcy50b2FzdFN0eWxlcy5iYWNrZ3JvdW5kQ29sb3IgPSB0b2FzdEluZm9bdGhpcy5zdGF0dXNdLmJnQ29sb3I7XG4gICAgICB0aGlzLnRvYXN0U3R5bGVzLmNvbG9yID0gdG9hc3RJbmZvW3RoaXMuc3RhdHVzXS5jb2xvcjtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlc1snd2lkdGgnXSkge1xuICAgICAgdGhpcy50b2FzdFN0eWxlcy53aWR0aCA9IHR5cGVvZiB0aGlzLndpZHRoID09PSAnbnVtYmVyJyA/IHRoaXMud2lkdGggKyAnJScgOiB0aGlzLndpZHRoO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmZpbmlzaFBlcmNlbnRhZ2UgPiAxMDApIHRoaXMuZmluaXNoUGVyY2VudGFnZSA9IDEwMDtcblxuICB9XG5cbiAgY2xpY2tlZChudW06IG51bWJlcikge1xuICAgIGlmIChudW0gPT0gMCkgdGhpcy5maXJzdEJ1dHRvbi5lbWl0KCk7XG4gICAgZWxzZSBpZiAobnVtID09IDEpIHRoaXMuc2Vjb25kQnV0dG9uLmVtaXQoKTtcbiAgICBlbHNlIGlmIChudW0gPT0gMikgdGhpcy5jbG9zZWQuZW1pdCgpO1xuICB9XG5cbiAgY2xvc2VUb2FzdCgpIHtcbiAgICB0aGlzLnRvYXN0RXZlbnQuZW1pdCh7XG4gICAgICB0eXBlOiAnVE9BU1RfQ0xPU0VEJyxcbiAgICAgIHBhcmFtczoge31cbiAgICB9KVxuICB9XG5cbn1cblxuY29uc3QgdG9hc3RJbmZvOiBhbnkgPSB7XG4gICdzdWNjZXNzJzoge1xuICAgIGljb246ICdjaGVja21hcmsnLFxuICAgIGJnQ29sb3I6ICcjRUJGNUU5JyxcbiAgICBjb2xvcjogJyMyNDZCMTYnXG4gIH0sXG4gICdmYWlsdXJlJzoge1xuICAgIGljb246ICdlcnJvci1jaXJjbGUnLFxuICAgIGJnQ29sb3I6ICcjRjhFOUU5JyxcbiAgICBjb2xvcjogJyM4NjFDMTUnXG4gIH0sXG4gICdjYXVzaW9uJzoge1xuICAgIGljb246ICd3YXJuaW5nJyxcbiAgICBiZ0NvbG9yOiAnJyxcbiAgICBjb2xvcjogJydcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUb2FzdEV2ZW50IHtcbiAgdHlwZTogJ1RPQVNUX0NMT1NFRCcgfCAnQUNUSU9OX0NMSUNLRUQnO1xuICBldmVudD86IGFueTtcbiAgcGFyYW1zPzogYW55O1xufSIsIjxkaXYgY2xhc3M9XCJ0b2FzdFwiIFtuZ1N0eWxlXT1cInRvYXN0U3R5bGVzXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cInRvYXN0LWljb24ge3tzdGF0dXN9fVwiPlxuICAgICAgPHNhLWljb24gW2ljb25dPVwic3RhdHVzSWNvblwiIHNpemU9XCIzMlwiPjwvc2EtaWNvbj5cbiAgICAgIDwhLS0gPGltZyBbc3JjXT1cInN0YXR1c0ljb25cIiBhbHQ9XCJcIj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImhlYWQtc3ViaGVhZFwiPlxuICAgICAgPHAgY2xhc3M9XCJoZWFkaW5nXCI+e3toZWFkaW5nfX08L3A+XG4gICAgICA8cCBjbGFzcz1cInN1YmhlYWRpbmdcIj57e3N1YkhlYWRpbmd9fTwvcD5cbiAgICA8L2Rpdj5cbiAgICBAaWYoY2xvc2FibGUpe1xuICAgIDwhLS0gPGltZyBjbGFzcz1cImNyb3NzXCIgKGNsaWNrKT1cImNsb3NlVG9hc3QoKVwiIFtzcmNdPVwiY3Jvc3NtYXJrXCIgYWx0PVwiXCI+IC0tPlxuICAgIDxzYS1pY29uIGNsYXNzPVwiY3Jvc3NcIiBpY29uPVwiY3Jvc3NtYXJrXCIgc2l6ZT1cIjI0XCIgKGNsaWNrKT1cImNsb3NlVG9hc3QoKVwiPjwvc2EtaWNvbj5cbiAgICB9XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29udHJvbHNcIj5cbiAgICA8c2EtYnV0dG9uICpuZ0lmPVwiZmlyc3RCdXR0b25OYW1lXCIgKG9uQ2xpY2tFdmVudCk9XCJjbGlja2VkKDApXCIgW3RleHRdPVwiZmlyc3RCdXR0b25OYW1lXCIgdHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgIHNpemU9XCJtZWRpdW1cIiBzdGF0ZT1cImRlZmF1bHRcIj5cbiAgICA8L3NhLWJ1dHRvbj5cbiAgICA8c2EtYnV0dG9uICpuZ0lmPVwic2Vjb25kQnV0dG9uTmFtZVwiIChvbkNsaWNrRXZlbnQpPVwiY2xpY2tlZCgxKVwiIFt0ZXh0XT1cInNlY29uZEJ1dHRvbk5hbWVcIiB0eXBlPVwib3V0bGluZVwiXG4gICAgICBzaXplPVwibWVkaXVtXCIgc3RhdGU9XCJkZWZhdWx0XCI+XG4gICAgPC9zYS1idXR0b24+XG4gIDwvZGl2PlxuXG4gIDxkaXYgKm5nSWY9XCJmaW5pc2hQZXJjZW50YWdlID49IDBcIiBjbGFzcz1cInByb2dyZXNzLWJhclwiPlxuICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy1kb25lXCIgW3N0eWxlLndpZHRoXT1cImZpbmlzaFBlcmNlbnRhZ2UrJyUnXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInByb2dyZXNzLWxlZnRcIiBbc3R5bGUud2lkdGhdPVwiMTAwLWZpbmlzaFBlcmNlbnRhZ2UrJyUnXCI+PC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
@@ -0,0 +1,41 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { ButtonComponent } from '../button/button.component';
3
+ import { NgFor } from '@angular/common';
4
+ import { NgIf } from '@angular/common';
5
+ import * as i0 from "@angular/core";
6
+ export class ToolTipComponent {
7
+ constructor() {
8
+ this.toolTipSkipped = new EventEmitter();
9
+ this.toolTipSeen = new EventEmitter();
10
+ this.arrowIcon = "../assets/arrow.svg";
11
+ this.pointer = "../assets/pointer-polygon.svg";
12
+ this.msgInd = 0; // is the index of current message being displayed
13
+ }
14
+ updateMsgInd(k) {
15
+ this.msgInd += k;
16
+ if (this.msgInd < 0)
17
+ this.msgInd = 0;
18
+ if (this.msgInd > this.messages.length - 1) {
19
+ this.msgInd = this.messages.length - 1;
20
+ this.toolTipSeen.emit();
21
+ }
22
+ }
23
+ skipToolTip() {
24
+ this.toolTipSkipped.emit();
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ToolTipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: ToolTipComponent, isStandalone: true, selector: "sa-tool-tip", inputs: { messages: "messages", pointerPosition: "pointerPosition" }, outputs: { toolTipSkipped: "toolTipSkipped", toolTipSeen: "toolTipSeen" }, ngImport: i0, template: "<div class=\"tool-tip-vertical\">\n <div class=\"tool-tip-pointer-icon pointer-top\" *ngIf=\"pointerPosition == 'top'\"></div>\n <div class=\"tool-tip-horizontal\">\n <div class=\"tool-tip-pointer-icon pointer-left\" *ngIf=\"pointerPosition == 'left'\"></div>\n <div class=\"tool-tip\">\n <div class=\"tool-tip-content\">\n <div class=\"tool-tip-heading\">Heading</div>\n <div *ngFor=\"let msg of messages, let i = index\" class=\"tool-tip-message {{msgInd != i ? 'hidden-msg': ''}}\">\n {{msg}}\n </div>\n </div>\n <div class=\"tool-tip-break\">\n </div>\n <div class=\"tool-tip-controls\">\n <div class=\"tool-tip-navigate\">\n <img class=\"left-icon tool-tip-navigate-icon\" (click)=\"updateMsgInd(-1)\" [src]=\"arrowIcon\" alt=\"\">\n {{msgInd+1}} of {{messages.length}}\n <img class=\"right-icon tool-tip-navigate-icon\" (click)=\"updateMsgInd(1)\" [src]=\"arrowIcon\" alt=\"\">\n </div>\n <div class=\"tool-tip-control-buttons\">\n <sa-button (onClickEvent)=\"skipToolTip()\" class=\"skip-button\" text=\"Skip\" type=\"transparent\" size=\"medium\"\n state=\"default\"></sa-button>\n <sa-button (onClickEvent)=\"updateMsgInd(1)\" text=\"Next\" type=\"primary\" size=\"medium\" state=\"default\">\n </sa-button>\n </div>\n </div>\n </div>\n <div class=\"tool-tip-pointer-icon pointer-right\" *ngIf=\"pointerPosition == 'right'\"></div>\n </div>\n <div class=\"tool-tip-pointer-icon pointer-bottom\" *ngIf=\"pointerPosition == 'bottom'\"></div>\n</div>\n", styles: [".tool-tip-horizontal{display:flex;width:max-content;justify-content:center;align-items:center}.tool-tip-vertical{display:flex;flex-direction:column;width:max-content;justify-content:center;align-items:center}.tool-tip{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--small-16px, 16px);width:375px;height:auto;box-sizing:border-box;padding:var(--medium-20px, 20px) var(--medium-24px, 24px);border-radius:var(--small-4px, 4px);background:var(--grey-700, #161E27);font-family:var(--font)}.tool-tip-content{display:flex;width:100%;flex-direction:column;gap:var(--small-8px, 8px)}.tool-tip-heading{font-size:16px;font-style:normal;color:var(--text-white, #FFF);font-weight:600;line-height:24px;letter-spacing:.15px}.tool-tip-message{font-size:14px;color:var(--grey-50, #E9EAEB);font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}.tool-tip-controls{display:flex;width:100%;justify-content:space-between;font-size:11px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.5px}.tool-tip-navigate{color:var(--text-lowemphasis, #989DA3);display:flex;justify-content:center;align-items:center}.skip-button ::ng-deep .sa-button{color:var(--grey-100, #BABDC1)!important}.skip-button ::ng-deep .sa-button:hover{background-color:transparent}.tool-tip-navigate-icon{cursor:pointer}.left-icon{transform:rotate(180deg)}.tool-tip-control-buttons{display:flex;gap:4px}.tool-tip-break{width:100%;height:.5px;background:var(--grey-50, #E9EAEB)}.hidden-msg{display:none}.tool-tip-pointer-icon{display:flex;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:11px solid var(--grey-700, #161E27)}.pointer-left{transform:rotate(-90deg);margin-right:-3px}.pointer-right{transform:rotate(90deg);margin-left:-3px}.pointer-top{margin-bottom:-3px}.pointer-bottom{transform:rotate(180deg);margin-top:-3px}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "sa-button", inputs: ["id", "type", "state", "size", "text", "ImagePath", "iconPosition", "href", "hrefTarget", "isSubmit"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ToolTipComponent, decorators: [{
30
+ type: Component,
31
+ args: [{ selector: 'sa-tool-tip', standalone: true, imports: [ButtonComponent, NgFor, NgIf], template: "<div class=\"tool-tip-vertical\">\n <div class=\"tool-tip-pointer-icon pointer-top\" *ngIf=\"pointerPosition == 'top'\"></div>\n <div class=\"tool-tip-horizontal\">\n <div class=\"tool-tip-pointer-icon pointer-left\" *ngIf=\"pointerPosition == 'left'\"></div>\n <div class=\"tool-tip\">\n <div class=\"tool-tip-content\">\n <div class=\"tool-tip-heading\">Heading</div>\n <div *ngFor=\"let msg of messages, let i = index\" class=\"tool-tip-message {{msgInd != i ? 'hidden-msg': ''}}\">\n {{msg}}\n </div>\n </div>\n <div class=\"tool-tip-break\">\n </div>\n <div class=\"tool-tip-controls\">\n <div class=\"tool-tip-navigate\">\n <img class=\"left-icon tool-tip-navigate-icon\" (click)=\"updateMsgInd(-1)\" [src]=\"arrowIcon\" alt=\"\">\n {{msgInd+1}} of {{messages.length}}\n <img class=\"right-icon tool-tip-navigate-icon\" (click)=\"updateMsgInd(1)\" [src]=\"arrowIcon\" alt=\"\">\n </div>\n <div class=\"tool-tip-control-buttons\">\n <sa-button (onClickEvent)=\"skipToolTip()\" class=\"skip-button\" text=\"Skip\" type=\"transparent\" size=\"medium\"\n state=\"default\"></sa-button>\n <sa-button (onClickEvent)=\"updateMsgInd(1)\" text=\"Next\" type=\"primary\" size=\"medium\" state=\"default\">\n </sa-button>\n </div>\n </div>\n </div>\n <div class=\"tool-tip-pointer-icon pointer-right\" *ngIf=\"pointerPosition == 'right'\"></div>\n </div>\n <div class=\"tool-tip-pointer-icon pointer-bottom\" *ngIf=\"pointerPosition == 'bottom'\"></div>\n</div>\n", styles: [".tool-tip-horizontal{display:flex;width:max-content;justify-content:center;align-items:center}.tool-tip-vertical{display:flex;flex-direction:column;width:max-content;justify-content:center;align-items:center}.tool-tip{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--small-16px, 16px);width:375px;height:auto;box-sizing:border-box;padding:var(--medium-20px, 20px) var(--medium-24px, 24px);border-radius:var(--small-4px, 4px);background:var(--grey-700, #161E27);font-family:var(--font)}.tool-tip-content{display:flex;width:100%;flex-direction:column;gap:var(--small-8px, 8px)}.tool-tip-heading{font-size:16px;font-style:normal;color:var(--text-white, #FFF);font-weight:600;line-height:24px;letter-spacing:.15px}.tool-tip-message{font-size:14px;color:var(--grey-50, #E9EAEB);font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px}.tool-tip-controls{display:flex;width:100%;justify-content:space-between;font-size:11px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.5px}.tool-tip-navigate{color:var(--text-lowemphasis, #989DA3);display:flex;justify-content:center;align-items:center}.skip-button ::ng-deep .sa-button{color:var(--grey-100, #BABDC1)!important}.skip-button ::ng-deep .sa-button:hover{background-color:transparent}.tool-tip-navigate-icon{cursor:pointer}.left-icon{transform:rotate(180deg)}.tool-tip-control-buttons{display:flex;gap:4px}.tool-tip-break{width:100%;height:.5px;background:var(--grey-50, #E9EAEB)}.hidden-msg{display:none}.tool-tip-pointer-icon{display:flex;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:11px solid var(--grey-700, #161E27)}.pointer-left{transform:rotate(-90deg);margin-right:-3px}.pointer-right{transform:rotate(90deg);margin-left:-3px}.pointer-top{margin-bottom:-3px}.pointer-bottom{transform:rotate(180deg);margin-top:-3px}\n"] }]
32
+ }], propDecorators: { messages: [{
33
+ type: Input
34
+ }], pointerPosition: [{
35
+ type: Input
36
+ }], toolTipSkipped: [{
37
+ type: Output
38
+ }], toolTipSeen: [{
39
+ type: Output
40
+ }] } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbC10aXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi90b29sLXRpcC90b29sLXRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL3Rvb2wtdGlwL3Rvb2wtdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBU3ZDLE1BQU0sT0FBTyxnQkFBZ0I7SUFQN0I7UUFXWSxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDcEMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNDLGNBQVMsR0FBRyxxQkFBcUIsQ0FBQztRQUNsQyxZQUFPLEdBQUcsK0JBQStCLENBQUM7UUFFMUMsV0FBTSxHQUFXLENBQUMsQ0FBQyxDQUFHLGtEQUFrRDtLQWV6RTtJQWJDLFlBQVksQ0FBQyxDQUFTO1FBQ3BCLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQXRCVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQix3TkNaN0IsNmxEQStCQSxrNkREdkJZLGVBQWUsc09BQUUsS0FBSyxtSEFBRSxJQUFJOzsyRkFJM0IsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLGFBQWEsY0FDWCxJQUFJLFdBQ1AsQ0FBQyxlQUFlLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQzs4QkFLOUIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2EtdG9vbC10aXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQnV0dG9uQ29tcG9uZW50LCBOZ0ZvciwgTmdJZl0sXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sLXRpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi90b29sLXRpcC5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBUb29sVGlwQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbWVzc2FnZXM6IHN0cmluZ1tdO1xuICBASW5wdXQoKSBwb2ludGVyUG9zaXRpb246IHN0cmluZztcblxuICBAT3V0cHV0KCkgdG9vbFRpcFNraXBwZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSB0b29sVGlwU2VlbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgYXJyb3dJY29uID0gXCIuLi9hc3NldHMvYXJyb3cuc3ZnXCI7XG4gIHBvaW50ZXIgPSBcIi4uL2Fzc2V0cy9wb2ludGVyLXBvbHlnb24uc3ZnXCI7XG5cbiAgbXNnSW5kOiBudW1iZXIgPSAwOyAgIC8vIGlzIHRoZSBpbmRleCBvZiBjdXJyZW50IG1lc3NhZ2UgYmVpbmcgZGlzcGxheWVkXG5cbiAgdXBkYXRlTXNnSW5kKGs6IG51bWJlcikge1xuICAgIHRoaXMubXNnSW5kICs9IGs7XG4gICAgaWYgKHRoaXMubXNnSW5kIDwgMCkgdGhpcy5tc2dJbmQgPSAwO1xuICAgIGlmICh0aGlzLm1zZ0luZCA+IHRoaXMubWVzc2FnZXMubGVuZ3RoIC0gMSkge1xuICAgICAgdGhpcy5tc2dJbmQgPSB0aGlzLm1lc3NhZ2VzLmxlbmd0aCAtIDE7XG4gICAgICB0aGlzLnRvb2xUaXBTZWVuLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBza2lwVG9vbFRpcCgpIHtcbiAgICB0aGlzLnRvb2xUaXBTa2lwcGVkLmVtaXQoKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwidG9vbC10aXAtdmVydGljYWxcIj5cbiAgPGRpdiBjbGFzcz1cInRvb2wtdGlwLXBvaW50ZXItaWNvbiBwb2ludGVyLXRvcFwiICpuZ0lmPVwicG9pbnRlclBvc2l0aW9uID09ICd0b3AnXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJ0b29sLXRpcC1ob3Jpem9udGFsXCI+XG4gICAgPGRpdiBjbGFzcz1cInRvb2wtdGlwLXBvaW50ZXItaWNvbiBwb2ludGVyLWxlZnRcIiAqbmdJZj1cInBvaW50ZXJQb3NpdGlvbiA9PSAnbGVmdCdcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidG9vbC10aXBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0b29sLXRpcC1jb250ZW50XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sLXRpcC1oZWFkaW5nXCI+SGVhZGluZzwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBtc2cgb2YgbWVzc2FnZXMsIGxldCBpID0gaW5kZXhcIiBjbGFzcz1cInRvb2wtdGlwLW1lc3NhZ2Uge3ttc2dJbmQgIT0gaSA/ICdoaWRkZW4tbXNnJzogJyd9fVwiPlxuICAgICAgICAgIHt7bXNnfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0b29sLXRpcC1icmVha1wiPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidG9vbC10aXAtY29udHJvbHNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRvb2wtdGlwLW5hdmlnYXRlXCI+XG4gICAgICAgICAgPGltZyBjbGFzcz1cImxlZnQtaWNvbiB0b29sLXRpcC1uYXZpZ2F0ZS1pY29uXCIgKGNsaWNrKT1cInVwZGF0ZU1zZ0luZCgtMSlcIiBbc3JjXT1cImFycm93SWNvblwiIGFsdD1cIlwiPlxuICAgICAgICAgIHt7bXNnSW5kKzF9fSBvZiB7e21lc3NhZ2VzLmxlbmd0aH19XG4gICAgICAgICAgPGltZyBjbGFzcz1cInJpZ2h0LWljb24gdG9vbC10aXAtbmF2aWdhdGUtaWNvblwiIChjbGljayk9XCJ1cGRhdGVNc2dJbmQoMSlcIiBbc3JjXT1cImFycm93SWNvblwiIGFsdD1cIlwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRvb2wtdGlwLWNvbnRyb2wtYnV0dG9uc1wiPlxuICAgICAgICAgIDxzYS1idXR0b24gKG9uQ2xpY2tFdmVudCk9XCJza2lwVG9vbFRpcCgpXCIgY2xhc3M9XCJza2lwLWJ1dHRvblwiIHRleHQ9XCJTa2lwXCIgdHlwZT1cInRyYW5zcGFyZW50XCIgc2l6ZT1cIm1lZGl1bVwiXG4gICAgICAgICAgICBzdGF0ZT1cImRlZmF1bHRcIj48L3NhLWJ1dHRvbj5cbiAgICAgICAgICA8c2EtYnV0dG9uIChvbkNsaWNrRXZlbnQpPVwidXBkYXRlTXNnSW5kKDEpXCIgdGV4dD1cIk5leHRcIiB0eXBlPVwicHJpbWFyeVwiIHNpemU9XCJtZWRpdW1cIiBzdGF0ZT1cImRlZmF1bHRcIj5cbiAgICAgICAgICA8L3NhLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidG9vbC10aXAtcG9pbnRlci1pY29uIHBvaW50ZXItcmlnaHRcIiAqbmdJZj1cInBvaW50ZXJQb3NpdGlvbiA9PSAncmlnaHQnXCI+PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwidG9vbC10aXAtcG9pbnRlci1pY29uIHBvaW50ZXItYm90dG9tXCIgKm5nSWY9XCJwb2ludGVyUG9zaXRpb24gPT0gJ2JvdHRvbSdcIj48L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Public API Surface of component-library
3
+ */
4
+ export * from './lib/component-library.service';
5
+ export * from './lib/component-library.component';
6
+ export * from './lib/button/button.component';
7
+ export * from './lib/chips/chips.component';
8
+ export * from './lib/avatar/avatar.component';
9
+ export * from './lib/grid-cell/grid-cell.component';
10
+ export * from './lib/header/header.component';
11
+ export * from './lib/toast/toast.component';
12
+ export * from './lib/form-select/form-select.component';
13
+ export * from './lib/stepper/stepper.component';
14
+ export * from './lib/tool-tip/tool-tip.component';
15
+ export * from './lib/datepicker/datepicker.component';
16
+ export * from './lib/tabs/tabs.component';
17
+ export * from './interfaces/grid-interface';
18
+ export * from './interfaces/avatar-interface';
19
+ export * from './interfaces/button-interface';
20
+ export * from './interfaces/chip-interface';
21
+ export * from './interfaces/select-interface';
22
+ export * from './interfaces/tab-interface';
23
+ export * from './lib/icon/icon.component';
24
+ export * from './lib/left-nav/left-nav.component';
25
+ export * from './lib/form-input/form-input.component';
26
+ export * from './lib/card/card.component';
27
+ export * from './lib/card/card-icon/card-icon.component';
28
+ export * from './lib/card/card-footer-actions/card-footer-actions.component';
29
+ export * from './lib/card/card-title-actions/card-title-actions.component';
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBR0gsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDREQUE0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjb21wb25lbnQtbGlicmFyeVxuICovXG5cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50LWxpYnJhcnkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnQtbGlicmFyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hpcHMvY2hpcHMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dyaWQtY2VsbC9ncmlkLWNlbGwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLXNlbGVjdC9mb3JtLXNlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b29sLXRpcC90b29sLXRpcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJzL3RhYnMuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2dyaWQtaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9hdmF0YXItaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9idXR0b24taW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9jaGlwLWludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvc2VsZWN0LWludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvdGFiLWludGVyZmFjZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb24vaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGVmdC1uYXYvbGVmdC1uYXYuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2FyZC9jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jYXJkL2NhcmQtaWNvbi9jYXJkLWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NhcmQvY2FyZC1mb290ZXItYWN0aW9ucy9jYXJkLWZvb3Rlci1hY3Rpb25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jYXJkL2NhcmQtdGl0bGUtYWN0aW9ucy9jYXJkLXRpdGxlLWFjdGlvbnMuY29tcG9uZW50JzsiXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FyYXNhbmFseXRpY3MtY29tLWRlc2lnbi1zeXN0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvc2FyYXNhbmFseXRpY3MtY29tLWRlc2lnbi1zeXN0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,70 @@
1
+ export function phoneNumberValidator(dependent) {
2
+ return (control) => {
3
+ const dependentFormControl = dependent ? control.parent?.get(dependent) : null;
4
+ if (dependentFormControl && !!dependentFormControl.value?.length) {
5
+ console.log('validator', dependentFormControl.value);
6
+ if (dependentFormControl.value[0].id === 0) {
7
+ if (!/^\+1[2-9]\d{2}[2-9]\d{6}$/.test(control.value)) {
8
+ return { invalid: 'invalid phone number' };
9
+ }
10
+ }
11
+ }
12
+ return null;
13
+ };
14
+ }
15
+ /*
16
+ export function workEmailValidation(): AsyncValidatorFn {
17
+ return (control: AbstractControl): Observable<ValidationErrors | null> => {
18
+ if (!control.value) {
19
+ return of(null); // No value to validate
20
+ }
21
+
22
+ !control.pending && control.markAsPending();
23
+ // !control.touched && control.markAsTouched();
24
+ // return of({ invalid: 'Enter your work email' });
25
+ return of(null);
26
+ return new Observable((ob) => {
27
+ setTimeout(() => {
28
+ if (control.value === 'sairaj@gmail.com')
29
+ return ob.next(null)
30
+ return ob.next({ invalid: 'This is not a workemail' });
31
+ }, 500)
32
+ });
33
+
34
+ return of(control.value).pipe(
35
+ delay(500), // Simulate network delay
36
+
37
+ map(value => {
38
+ return of({ invalid: 'This is not a workemail' })//existingUsernames.includes(username) ? { usernameTaken: true } : null;
39
+ })
40
+ // catchError(() => of(null)) // Handle any errors
41
+ );
42
+ };
43
+ }*/
44
+ export function getValidationMessage(errors) {
45
+ if (errors) {
46
+ if (errors['minlength']) {
47
+ return `minimum ${errors['minlength']['requiredLength']} required`;
48
+ }
49
+ else if (errors['maxlength']) {
50
+ return `maximum ${errors['maxlength']['requiredLength']} characters`;
51
+ }
52
+ else if (errors['required']) {
53
+ return 'Input cannot be empty';
54
+ }
55
+ else if (errors['invalid']) {
56
+ return errors['invalid'];
57
+ }
58
+ else if (errors['email']) {
59
+ return 'Enter a valid email';
60
+ }
61
+ else if (errors['pattern']) {
62
+ return 'Enter a valid phone number';
63
+ }
64
+ else {
65
+ return 'Invalid input';
66
+ }
67
+ }
68
+ return 'Invalid input';
69
+ }
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy91dGlscy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxTQUFrQjtJQUNuRCxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLG9CQUFvQixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMvRSxJQUFJLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDL0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFckQsSUFBSSxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUN6QyxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLENBQUM7Z0JBQy9DLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUMsQ0FBQTtBQUNMLENBQUM7QUFDRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUFXO0lBQzVDLElBQUksTUFBTSxFQUFFLENBQUM7UUFDVCxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sV0FBVyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ3ZFLENBQUM7YUFBTSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQzdCLE9BQU8sV0FBVyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQ3pFLENBQUM7YUFBTSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sdUJBQXVCLENBQUM7UUFDbkMsQ0FBQzthQUFNLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDM0IsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsQ0FBQzthQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDekIsT0FBTyxxQkFBcUIsQ0FBQztRQUNqQyxDQUFDO2FBQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUMzQixPQUFPLDRCQUE0QixDQUFDO1FBQ3hDLENBQUM7YUFBTSxDQUFDO1lBQ0osT0FBTyxlQUFlLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEFzeW5jVmFsaWRhdG9yRm4sIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZGVib3VuY2VUaW1lLCBkZWxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcGhvbmVOdW1iZXJWYWxpZGF0b3IoZGVwZW5kZW50Pzogc3RyaW5nKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCBkZXBlbmRlbnRGb3JtQ29udHJvbCA9IGRlcGVuZGVudCA/IGNvbnRyb2wucGFyZW50Py5nZXQoZGVwZW5kZW50KSA6IG51bGw7XG4gICAgICAgIGlmIChkZXBlbmRlbnRGb3JtQ29udHJvbCAmJiAhIWRlcGVuZGVudEZvcm1Db250cm9sLnZhbHVlPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCd2YWxpZGF0b3InLCBkZXBlbmRlbnRGb3JtQ29udHJvbC52YWx1ZSk7XG5cbiAgICAgICAgICAgIGlmIChkZXBlbmRlbnRGb3JtQ29udHJvbC52YWx1ZVswXS5pZCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIGlmICghL15cXCsxWzItOV1cXGR7Mn1bMi05XVxcZHs2fSQvLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgaW52YWxpZDogJ2ludmFsaWQgcGhvbmUgbnVtYmVyJyB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59XG4vKlxuZXhwb3J0IGZ1bmN0aW9uIHdvcmtFbWFpbFZhbGlkYXRpb24oKTogQXN5bmNWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBPYnNlcnZhYmxlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPiA9PiB7XG4gICAgICAgIGlmICghY29udHJvbC52YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpOyAvLyBObyB2YWx1ZSB0byB2YWxpZGF0ZVxuICAgICAgICB9XG5cbiAgICAgICAgIWNvbnRyb2wucGVuZGluZyAmJiBjb250cm9sLm1hcmtBc1BlbmRpbmcoKTtcbiAgICAgICAgLy8gIWNvbnRyb2wudG91Y2hlZCAmJiBjb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgLy8gcmV0dXJuIG9mKHsgaW52YWxpZDogJ0VudGVyIHlvdXIgd29yayBlbWFpbCcgfSk7XG4gICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYikgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRyb2wudmFsdWUgPT09ICdzYWlyYWpAZ21haWwuY29tJylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9iLm5leHQobnVsbClcbiAgICAgICAgICAgICAgICByZXR1cm4gb2IubmV4dCh7IGludmFsaWQ6ICdUaGlzIGlzIG5vdCBhIHdvcmtlbWFpbCcgfSk7XG4gICAgICAgICAgICB9LCA1MDApXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBvZihjb250cm9sLnZhbHVlKS5waXBlKFxuICAgICAgICAgICAgZGVsYXkoNTAwKSwgLy8gU2ltdWxhdGUgbmV0d29yayBkZWxheVxuXG4gICAgICAgICAgICBtYXAodmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBvZih7IGludmFsaWQ6ICdUaGlzIGlzIG5vdCBhIHdvcmtlbWFpbCcgfSkvL2V4aXN0aW5nVXNlcm5hbWVzLmluY2x1ZGVzKHVzZXJuYW1lKSA/IHsgdXNlcm5hbWVUYWtlbjogdHJ1ZSB9IDogbnVsbDtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAvLyBjYXRjaEVycm9yKCgpID0+IG9mKG51bGwpKSAvLyBIYW5kbGUgYW55IGVycm9yc1xuICAgICAgICApO1xuICAgIH07XG59Ki9cbmV4cG9ydCBmdW5jdGlvbiBnZXRWYWxpZGF0aW9uTWVzc2FnZShlcnJvcnM6IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKGVycm9ycykge1xuICAgICAgICBpZiAoZXJyb3JzWydtaW5sZW5ndGgnXSkge1xuICAgICAgICAgICAgcmV0dXJuIGBtaW5pbXVtICR7ZXJyb3JzWydtaW5sZW5ndGgnXVsncmVxdWlyZWRMZW5ndGgnXX0gcmVxdWlyZWRgO1xuICAgICAgICB9IGVsc2UgaWYgKGVycm9yc1snbWF4bGVuZ3RoJ10pIHtcbiAgICAgICAgICAgIHJldHVybiBgbWF4aW11bSAke2Vycm9yc1snbWF4bGVuZ3RoJ11bJ3JlcXVpcmVkTGVuZ3RoJ119IGNoYXJhY3RlcnNgO1xuICAgICAgICB9IGVsc2UgaWYgKGVycm9yc1sncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgcmV0dXJuICdJbnB1dCBjYW5ub3QgYmUgZW1wdHknO1xuICAgICAgICB9IGVsc2UgaWYgKGVycm9yc1snaW52YWxpZCddKSB7XG4gICAgICAgICAgICByZXR1cm4gZXJyb3JzWydpbnZhbGlkJ107XG4gICAgICAgIH0gZWxzZSBpZiAoZXJyb3JzWydlbWFpbCddKSB7XG4gICAgICAgICAgICByZXR1cm4gJ0VudGVyIGEgdmFsaWQgZW1haWwnO1xuICAgICAgICB9IGVsc2UgaWYgKGVycm9yc1sncGF0dGVybiddKSB7XG4gICAgICAgICAgICByZXR1cm4gJ0VudGVyIGEgdmFsaWQgcGhvbmUgbnVtYmVyJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAnSW52YWxpZCBpbnB1dCc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuICdJbnZhbGlkIGlucHV0Jztcbn0iXX0=