valtech-components 2.0.13 → 2.0.15

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 (65) hide show
  1. package/ng-package.json +9 -0
  2. package/package.json +6 -14
  3. package/src/lib/assets/fonts/Khula-Bold.ttf +0 -0
  4. package/src/lib/assets/fonts/Khula-ExtraBold.ttf +0 -0
  5. package/src/lib/assets/fonts/Khula-Light.ttf +0 -0
  6. package/src/lib/assets/fonts/Khula-Regular.ttf +0 -0
  7. package/src/lib/assets/fonts/Khula-SemiBold.ttf +0 -0
  8. package/src/lib/assets/fonts/OFL.txt +93 -0
  9. package/src/lib/components/atoms/button/button.component.scss +5 -0
  10. package/src/lib/components/atoms/button/button.component.ts +54 -0
  11. package/src/lib/components/atoms/button/factory.ts +378 -0
  12. package/src/lib/components/atoms/button/types.ts +24 -0
  13. package/src/lib/components/types.ts +84 -0
  14. package/src/lib/services/download.service.ts +58 -0
  15. package/src/lib/services/lang-provider/components/lang-settings.ts +14 -0
  16. package/src/lib/services/lang-provider/components/theme-settings.ts +16 -0
  17. package/src/lib/services/lang-provider/content.ts +15 -0
  18. package/src/lib/services/lang-provider/lang-provider.service.ts +38 -0
  19. package/src/lib/services/lang-provider/types.ts +25 -0
  20. package/src/lib/services/local-storage.service.ts +18 -0
  21. package/src/lib/services/theme.service.ts +102 -0
  22. package/{lib/services/types.d.ts → src/lib/services/types.ts} +3 -1
  23. package/src/lib/shared/constants/storage.ts +2 -0
  24. package/src/lib/shared/utils/dom.ts +20 -0
  25. package/{public-api.d.ts → src/public-api.ts} +11 -0
  26. package/styles/fonts.scss +34 -0
  27. package/styles/overrides.scss +1 -0
  28. package/styles/utils.scss +5 -0
  29. package/tsconfig.lib.json +14 -0
  30. package/tsconfig.lib.prod.json +10 -0
  31. package/tsconfig.spec.json +14 -0
  32. package/esm2022/lib/components/atoms/button/button.component.mjs +0 -69
  33. package/esm2022/lib/components/atoms/button/factory.mjs +0 -217
  34. package/esm2022/lib/components/atoms/button/types.mjs +0 -2
  35. package/esm2022/lib/components/types.mjs +0 -29
  36. package/esm2022/lib/services/download.service.mjs +0 -63
  37. package/esm2022/lib/services/lang-provider/components/lang-settings.mjs +0 -13
  38. package/esm2022/lib/services/lang-provider/components/theme-settings.mjs +0 -15
  39. package/esm2022/lib/services/lang-provider/content.mjs +0 -8
  40. package/esm2022/lib/services/lang-provider/lang-provider.service.mjs +0 -39
  41. package/esm2022/lib/services/lang-provider/types.mjs +0 -14
  42. package/esm2022/lib/services/local-storage.service.mjs +0 -16
  43. package/esm2022/lib/services/theme.service.mjs +0 -97
  44. package/esm2022/lib/services/types.mjs +0 -3
  45. package/esm2022/lib/shared/constants/storage.mjs +0 -3
  46. package/esm2022/lib/shared/utils/dom.mjs +0 -17
  47. package/esm2022/public-api.mjs +0 -18
  48. package/esm2022/valtech-components.mjs +0 -5
  49. package/fesm2022/valtech-components.mjs +0 -565
  50. package/fesm2022/valtech-components.mjs.map +0 -1
  51. package/index.d.ts +0 -5
  52. package/lib/components/atoms/button/button.component.d.ts +0 -20
  53. package/lib/components/atoms/button/factory.d.ts +0 -71
  54. package/lib/components/atoms/button/types.d.ts +0 -22
  55. package/lib/components/types.d.ts +0 -78
  56. package/lib/services/download.service.d.ts +0 -8
  57. package/lib/services/lang-provider/components/lang-settings.d.ts +0 -3
  58. package/lib/services/lang-provider/components/theme-settings.d.ts +0 -3
  59. package/lib/services/lang-provider/content.d.ts +0 -6
  60. package/lib/services/lang-provider/lang-provider.service.d.ts +0 -17
  61. package/lib/services/lang-provider/types.d.ts +0 -15
  62. package/lib/services/local-storage.service.d.ts +0 -6
  63. package/lib/services/theme.service.d.ts +0 -27
  64. package/lib/shared/constants/storage.d.ts +0 -2
  65. package/lib/shared/utils/dom.d.ts +0 -3
@@ -1,217 +0,0 @@
1
- export const Icon = (name, slot) => {
2
- return {
3
- name,
4
- slot,
5
- };
6
- };
7
- /* name convention: COLOR FILL SIZE [optionals: SHAPE EXPAND ICON HREF/DOWNLOAD] TYPE */
8
- export const BaseDefault = (text, type) => {
9
- return {
10
- color: 'primary',
11
- state: 'ENABLED',
12
- text,
13
- size: 'default',
14
- type,
15
- };
16
- };
17
- export const ClearDefault = (text, type) => {
18
- return { ...BaseDefault(text, type), fill: 'clear' };
19
- };
20
- export const ClearDefaultRound = (text, type) => {
21
- return { ...ClearDefault(text, type), shape: 'round' };
22
- };
23
- export const SolidDefault = (text, type) => {
24
- return { ...BaseDefault(text, type), fill: 'solid' };
25
- };
26
- export const SolidDefaultRound = (text, type) => {
27
- return { ...SolidDefault(text, type), shape: 'round' };
28
- };
29
- export const OutlineDefault = (text, type) => {
30
- return { ...BaseDefault(text, type), fill: 'outline' };
31
- };
32
- export const OutlineDefaultRound = (text, type) => {
33
- return { ...OutlineDefault(text, type), shape: 'round' };
34
- };
35
- export const ClearDefaultFull = (text, type) => {
36
- return { ...ClearDefault(text, type), expand: 'full' };
37
- };
38
- export const ClearDefaultRoundFull = (text, type) => {
39
- return { ...ClearDefaultRound(text, type), expand: 'full' };
40
- };
41
- export const ClearDefaultBlock = (text, type) => {
42
- return { ...ClearDefault(text, type), expand: 'block' };
43
- };
44
- export const ClearDefaultRoundBlock = (text, type) => {
45
- return { ...ClearDefaultRound(text, type), expand: 'block' };
46
- };
47
- export const SolidDefaultFull = (text, type) => {
48
- return { ...SolidDefault(text, type), expand: 'full' };
49
- };
50
- export const SolidDefaultRoundFull = (text, type) => {
51
- return { ...SolidDefaultRound(text, type), expand: 'full' };
52
- };
53
- export const SolidDefaultBlock = (text, type) => {
54
- return { ...SolidDefault(text, type), expand: 'block' };
55
- };
56
- export const SolidDefaultRoundBlock = (text, type) => {
57
- return { ...SolidDefaultRound(text, type), expand: 'block' };
58
- };
59
- export const OutlineDefaultFull = (text, type) => {
60
- return { ...OutlineDefault(text, type), expand: 'full' };
61
- };
62
- export const OutlineDefaultRoundFull = (text, type) => {
63
- return { ...OutlineDefaultRound(text, type), expand: 'full' };
64
- };
65
- export const OutlineDefaultBlock = (text, type) => {
66
- return { ...OutlineDefault(text, type), expand: 'block' };
67
- };
68
- export const OutlineDefaultRoundBlock = (text, type) => {
69
- return { ...OutlineDefaultRound(text, type), expand: 'block' };
70
- };
71
- export const SolidDefaultButton = (text) => {
72
- return SolidDefault(text, 'button');
73
- };
74
- export const SolidSmallButton = (text) => {
75
- return { ...SolidDefault(text, 'button'), size: 'small' };
76
- };
77
- export const SolidLargeButton = (text) => {
78
- return { ...SolidDefault(text, 'button'), size: 'large' };
79
- };
80
- export const SolidDefaultRoundButton = (text) => {
81
- return SolidDefaultRound(text, 'button');
82
- };
83
- export const SolidSmallRoundButton = (text) => {
84
- return { ...SolidDefaultRound(text, 'button'), size: 'small' };
85
- };
86
- export const SolidLargeRoundButton = (text) => {
87
- return { ...SolidDefaultRound(text, 'button'), size: 'large' };
88
- };
89
- export const SolidFullButton = (text) => {
90
- return SolidDefaultFull(text, 'button');
91
- };
92
- export const SolidBlockButton = (text) => {
93
- return SolidDefaultBlock(text, 'button');
94
- };
95
- /** PRIMARY */
96
- export const PrimarySolidDefaultRoundButton = (text) => {
97
- return { ...SolidDefaultRoundButton(text), color: 'primary' };
98
- };
99
- export const PrimarySolidDefaultRoundIconButton = (text, icon) => {
100
- return { ...PrimarySolidDefaultRoundButton(text), icon };
101
- };
102
- export const PrimarySolidDefaultRoundHrefButton = (text, href, target) => {
103
- return { ...PrimarySolidDefaultRoundButton(text), href, target };
104
- };
105
- export const PrimarySolidDefaultRoundIconHrefButton = (text, icon, href, target) => {
106
- return { ...PrimarySolidDefaultRoundIconButton(text, icon), href, target };
107
- };
108
- export const PrimarySolidSmallRoundButton = (text) => {
109
- return { ...SolidSmallRoundButton(text), color: 'primary' };
110
- };
111
- export const PrimarySolidSmallRoundIconButton = (text, icon) => {
112
- return { ...PrimarySolidSmallRoundButton(text), icon };
113
- };
114
- export const PrimarySolidSmallRoundHrefButton = (text, href, target) => {
115
- return { ...PrimarySolidSmallRoundButton(text), href, target };
116
- };
117
- export const PrimarySolidSmallRoundIconHrefButton = (text, icon, href, target) => {
118
- return { ...PrimarySolidSmallRoundIconButton(text, icon), href, target };
119
- };
120
- export const PrimarySolidLargeRoundButton = (text) => {
121
- return { ...SolidLargeRoundButton(text), color: 'primary' };
122
- };
123
- export const PrimarySolidLargeRoundIconButton = (text, icon) => {
124
- return { ...PrimarySolidLargeRoundButton(text), icon };
125
- };
126
- export const PrimarySolidLargeRoundHrefButton = (text, href, target) => {
127
- return { ...PrimarySolidLargeRoundButton(text), href, target };
128
- };
129
- export const PrimarySolidLargeRoundIconHrefButton = (text, icon, href, target) => {
130
- return { ...PrimarySolidLargeRoundIconButton(text, icon), href, target };
131
- };
132
- export const PrimarySolidBlockButton = (text) => {
133
- return { ...SolidBlockButton(text), color: 'primary' };
134
- };
135
- export const PrimarySolidBlockIconButton = (text, icon) => {
136
- return { ...PrimarySolidBlockButton(text), icon };
137
- };
138
- export const PrimarySolidBlockHrefButton = (text, href, target) => {
139
- return { ...PrimarySolidBlockButton(text), href, target };
140
- };
141
- export const PrimarySolidBlockIconHrefButton = (text, icon, href, target) => {
142
- return { ...PrimarySolidBlockIconButton(text, icon), href, target };
143
- };
144
- export const PrimarySolidFullButton = (text) => {
145
- return { ...SolidFullButton(text), color: 'primary' };
146
- };
147
- export const PrimarySolidFullIconButton = (text, icon) => {
148
- return { ...PrimarySolidFullButton(text), icon };
149
- };
150
- export const PrimarySolidFullHrefButton = (text, href, target) => {
151
- return { ...PrimarySolidFullButton(text), href, target };
152
- };
153
- export const PrimarySolidFullIconHrefButton = (text, icon, href, target) => {
154
- return { ...PrimarySolidFullIconButton(text, icon), href, target };
155
- };
156
- /** SECONDARY */
157
- export const SecondarySolidDefaultRoundButton = (text) => {
158
- return { ...SolidDefaultRoundButton(text), color: 'secondary' };
159
- };
160
- export const SecondarySolidDefaultRoundIconButton = (text, icon) => {
161
- return { ...SecondarySolidDefaultRoundButton(text), icon };
162
- };
163
- export const SecondarySolidDefaultRoundHrefButton = (text, href, target) => {
164
- return { ...SecondarySolidDefaultRoundButton(text), href, target };
165
- };
166
- export const SecondarySolidDefaultRoundIconHrefButton = (text, icon, href, target) => {
167
- return { ...SecondarySolidDefaultRoundIconButton(text, icon), href, target };
168
- };
169
- export const SecondarySolidSmallRoundButton = (text) => {
170
- return { ...SolidSmallRoundButton(text), color: 'secondary' };
171
- };
172
- export const SecondarySolidSmallRoundIconButton = (text, icon) => {
173
- return { ...SecondarySolidSmallRoundButton(text), icon };
174
- };
175
- export const SecondarySolidSmallRoundHrefButton = (text, href, target) => {
176
- return { ...SecondarySolidSmallRoundButton(text), href, target };
177
- };
178
- export const SecondarySolidSmallRoundIconHrefButton = (text, icon, href, target) => {
179
- return { ...SecondarySolidSmallRoundIconButton(text, icon), href, target };
180
- };
181
- export const SecondarySolidLargeRoundButton = (text) => {
182
- return { ...SolidLargeRoundButton(text), color: 'secondary' };
183
- };
184
- export const SecondarySolidLargeRoundIconButton = (text, icon) => {
185
- return { ...SecondarySolidLargeRoundButton(text), icon };
186
- };
187
- export const SecondarySolidLargeRoundHrefButton = (text, href, target) => {
188
- return { ...SecondarySolidLargeRoundButton(text), href, target };
189
- };
190
- export const SecondarySolidLargeRoundIconHrefButton = (text, icon, href, target) => {
191
- return { ...SecondarySolidLargeRoundIconButton(text, icon), href, target };
192
- };
193
- export const SecondarySolidFullButton = (text) => {
194
- return { ...SolidFullButton(text), color: 'secondary' };
195
- };
196
- export const SecondarySolidFullIconButton = (text, icon) => {
197
- return { ...SecondarySolidFullButton(text), icon };
198
- };
199
- export const SecondarySolidFullHrefButton = (text, href, target) => {
200
- return { ...SecondarySolidFullButton(text), href, target };
201
- };
202
- export const SecondarySolidFullIconHrefButton = (text, icon, href, target) => {
203
- return { ...SecondarySolidFullIconButton(text, icon), href, target };
204
- };
205
- export const SecondarySolidBlockButton = (text) => {
206
- return { ...SolidBlockButton(text), color: 'secondary' };
207
- };
208
- export const SecondarySolidBlockIconButton = (text, icon) => {
209
- return { ...SecondarySolidBlockButton(text), icon };
210
- };
211
- export const SecondarySolidBlockHrefButton = (text, href, target) => {
212
- return { ...SecondarySolidBlockButton(text), href, target };
213
- };
214
- export const SecondarySolidBlockIconHrefButton = (text, icon, href, target) => {
215
- return { ...SecondarySolidBlockIconButton(text, icon), href, target };
216
- };
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBWSxFQUFFLElBQXFCLEVBQWMsRUFBRTtJQUN0RSxPQUFPO1FBQ0wsSUFBSTtRQUNKLElBQUk7S0FDTCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsd0ZBQXdGO0FBRXhGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLElBQVksRUFBRSxJQUFtQyxFQUFrQixFQUFFO0lBQy9GLE9BQU87UUFDTCxLQUFLLEVBQUUsU0FBUztRQUNoQixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJO1FBQ0osSUFBSSxFQUFFLFNBQVM7UUFDZixJQUFJO0tBQ0wsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLElBQVksRUFBRSxJQUFtQyxFQUFrQixFQUFFO0lBQ2hHLE9BQU8sRUFBRSxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO0FBQ3ZELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsSUFBWSxFQUFFLElBQW1DLEVBQWtCLEVBQUU7SUFDckcsT0FBTyxFQUFFLEdBQUcsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7QUFDekQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBWSxFQUFFLElBQW1DLEVBQWtCLEVBQUU7SUFDaEcsT0FBTyxFQUFFLEdBQUcsV0FBVyxDQUFD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QU0sRUFBRSxDQUFDO0FBQ3hFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1dHRvbk1ldGFkYXRhLCBJY29uTWV0YWRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBJY29uID0gKG5hbWU6IHN0cmluZywgc2xvdDogJ3N0YXJ0JyB8ICdlbmQnKTogSWNvbk1ldGFkYSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBzbG90LFxuICB9O1xufTtcblxuLyogbmFtZSBjb252ZW50aW9uOiBDT0xPUiBGSUxMIFNJWkUgW29wdGlvbmFsczogU0hBUEUgRVhQQU5EIElDT04gSFJFRi9ET1dOTE9BRF0gVFlQRSAqL1xuXG5leHBvcnQgY29uc3QgQmFzZURlZmF1bHQgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHtcbiAgICBjb2xvcjogJ3ByaW1hcnknLFxuICAgIHN0YXRlOiAnRU5BQkxFRCcsXG4gICAgdGV4dCxcbiAgICBzaXplOiAnZGVmYXVsdCcsXG4gICAgdHlwZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBDbGVhckRlZmF1bHQgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uQmFzZURlZmF1bHQodGV4dCwgdHlwZSksIGZpbGw6ICdjbGVhcicgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBDbGVhckRlZmF1bHRSb3VuZCA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5DbGVhckRlZmF1bHQodGV4dCwgdHlwZSksIHNoYXBlOiAncm91bmQnIH07XG59O1xuXG5leHBvcnQgY29uc3QgU29saWREZWZhdWx0ID0gKHRleHQ6IHN0cmluZywgdHlwZTogJ2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLkJhc2VEZWZhdWx0KHRleHQsIHR5cGUpLCBmaWxsOiAnc29saWQnIH07XG59O1xuXG5leHBvcnQgY29uc3QgU29saWREZWZhdWx0Um91bmQgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWREZWZhdWx0KHRleHQsIHR5cGUpLCBzaGFwZTogJ3JvdW5kJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IE91dGxpbmVEZWZhdWx0ID0gKHRleHQ6IHN0cmluZywgdHlwZTogJ2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLkJhc2VEZWZhdWx0KHRleHQsIHR5cGUpLCBmaWxsOiAnb3V0bGluZScgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBPdXRsaW5lRGVmYXVsdFJvdW5kID0gKHRleHQ6IHN0cmluZywgdHlwZTogJ2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLk91dGxpbmVEZWZhdWx0KHRleHQsIHR5cGUpLCBzaGFwZTogJ3JvdW5kJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IENsZWFyRGVmYXVsdEZ1bGwgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uQ2xlYXJEZWZhdWx0KHRleHQsIHR5cGUpLCBleHBhbmQ6ICdmdWxsJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IENsZWFyRGVmYXVsdFJvdW5kRnVsbCA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5DbGVhckRlZmF1bHRSb3VuZCh0ZXh0LCB0eXBlKSwgZXhwYW5kOiAnZnVsbCcgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBDbGVhckRlZmF1bHRCbG9jayA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5DbGVhckRlZmF1bHQodGV4dCwgdHlwZSksIGV4cGFuZDogJ2Jsb2NrJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IENsZWFyRGVmYXVsdFJvdW5kQmxvY2sgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uQ2xlYXJEZWZhdWx0Um91bmQodGV4dCwgdHlwZSksIGV4cGFuZDogJ2Jsb2NrJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkRGVmYXVsdEZ1bGwgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWREZWZhdWx0KHRleHQsIHR5cGUpLCBleHBhbmQ6ICdmdWxsJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkRGVmYXVsdFJvdW5kRnVsbCA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZERlZmF1bHRSb3VuZCh0ZXh0LCB0eXBlKSwgZXhwYW5kOiAnZnVsbCcgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTb2xpZERlZmF1bHRCbG9jayA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZERlZmF1bHQodGV4dCwgdHlwZSksIGV4cGFuZDogJ2Jsb2NrJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkRGVmYXVsdFJvdW5kQmxvY2sgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWREZWZhdWx0Um91bmQodGV4dCwgdHlwZSksIGV4cGFuZDogJ2Jsb2NrJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IE91dGxpbmVEZWZhdWx0RnVsbCA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5PdXRsaW5lRGVmYXVsdCh0ZXh0LCB0eXBlKSwgZXhwYW5kOiAnZnVsbCcgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBPdXRsaW5lRGVmYXVsdFJvdW5kRnVsbCA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5PdXRsaW5lRGVmYXVsdFJvdW5kKHRleHQsIHR5cGUpLCBleHBhbmQ6ICdmdWxsJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IE91dGxpbmVEZWZhdWx0QmxvY2sgPSAodGV4dDogc3RyaW5nLCB0eXBlOiAnYnV0dG9uJyB8ICdzdWJtaXQnIHwgJ3Jlc2V0Jyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uT3V0bGluZURlZmF1bHQodGV4dCwgdHlwZSksIGV4cGFuZDogJ2Jsb2NrJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IE91dGxpbmVEZWZhdWx0Um91bmRCbG9jayA9ICh0ZXh0OiBzdHJpbmcsIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5PdXRsaW5lRGVmYXVsdFJvdW5kKHRleHQsIHR5cGUpLCBleHBhbmQ6ICdibG9jaycgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTb2xpZERlZmF1bHRCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4gU29saWREZWZhdWx0KHRleHQsICdidXR0b24nKTtcbn07XG5cbmV4cG9ydCBjb25zdCBTb2xpZFNtYWxsQnV0dG9uID0gKHRleHQ6IHN0cmluZyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWREZWZhdWx0KHRleHQsICdidXR0b24nKSwgc2l6ZTogJ3NtYWxsJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkTGFyZ2VCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZERlZmF1bHQodGV4dCwgJ2J1dHRvbicpLCBzaXplOiAnbGFyZ2UnIH07XG59O1xuXG5leHBvcnQgY29uc3QgU29saWREZWZhdWx0Um91bmRCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4gU29saWREZWZhdWx0Um91bmQodGV4dCwgJ2J1dHRvbicpO1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkU21hbGxSb3VuZEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkRGVmYXVsdFJvdW5kKHRleHQsICdidXR0b24nKSwgc2l6ZTogJ3NtYWxsJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkTGFyZ2VSb3VuZEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkRGVmYXVsdFJvdW5kKHRleHQsICdidXR0b24nKSwgc2l6ZTogJ2xhcmdlJyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNvbGlkRnVsbEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiBTb2xpZERlZmF1bHRGdWxsKHRleHQsICdidXR0b24nKTtcbn07XG5cbmV4cG9ydCBjb25zdCBTb2xpZEJsb2NrQnV0dG9uID0gKHRleHQ6IHN0cmluZyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIFNvbGlkRGVmYXVsdEJsb2NrKHRleHQsICdidXR0b24nKTtcbn07XG5cbi8qKiBQUklNQVJZICovXG5cbmV4cG9ydCBjb25zdCBQcmltYXJ5U29saWREZWZhdWx0Um91bmRCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZERlZmF1bHRSb3VuZEJ1dHRvbih0ZXh0KSwgY29sb3I6ICdwcmltYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZERlZmF1bHRSb3VuZEljb25CdXR0b24gPSAodGV4dDogc3RyaW5nLCBpY29uOiBJY29uTWV0YWRhKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5QcmltYXJ5U29saWREZWZhdWx0Um91bmRCdXR0b24odGV4dCksIGljb24gfTtcbn07XG5cbmV4cG9ydCBjb25zdCBQcmltYXJ5U29saWREZWZhdWx0Um91bmRIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlByaW1hcnlTb2xpZERlZmF1bHRSb3VuZEJ1dHRvbih0ZXh0KSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkRGVmYXVsdFJvdW5kSWNvbkhyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaWNvbjogSWNvbk1ldGFkYSxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkRGVmYXVsdFJvdW5kSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkU21hbGxSb3VuZEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkU21hbGxSb3VuZEJ1dHRvbih0ZXh0KSwgY29sb3I6ICdwcmltYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZFNtYWxsUm91bmRJY29uQnV0dG9uID0gKHRleHQ6IHN0cmluZywgaWNvbjogSWNvbk1ldGFkYSk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkU21hbGxSb3VuZEJ1dHRvbih0ZXh0KSwgaWNvbiB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZFNtYWxsUm91bmRIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlByaW1hcnlTb2xpZFNtYWxsUm91bmRCdXR0b24odGV4dCksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZFNtYWxsUm91bmRJY29uSHJlZkJ1dHRvbiA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBpY29uOiBJY29uTWV0YWRhLFxuICBocmVmOiBzdHJpbmcsXG4gIHRhcmdldDogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnLFxuKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5QcmltYXJ5U29saWRTbWFsbFJvdW5kSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkTGFyZ2VSb3VuZEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkTGFyZ2VSb3VuZEJ1dHRvbih0ZXh0KSwgY29sb3I6ICdwcmltYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZExhcmdlUm91bmRJY29uQnV0dG9uID0gKHRleHQ6IHN0cmluZywgaWNvbjogSWNvbk1ldGFkYSk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkTGFyZ2VSb3VuZEJ1dHRvbih0ZXh0KSwgaWNvbiB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZExhcmdlUm91bmRIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlByaW1hcnlTb2xpZExhcmdlUm91bmRCdXR0b24odGV4dCksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZExhcmdlUm91bmRJY29uSHJlZkJ1dHRvbiA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBpY29uOiBJY29uTWV0YWRhLFxuICBocmVmOiBzdHJpbmcsXG4gIHRhcmdldDogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnLFxuKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5QcmltYXJ5U29saWRMYXJnZVJvdW5kSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkQmxvY2tCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZEJsb2NrQnV0dG9uKHRleHQpLCBjb2xvcjogJ3ByaW1hcnknIH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkQmxvY2tJY29uQnV0dG9uID0gKHRleHQ6IHN0cmluZywgaWNvbjogSWNvbk1ldGFkYSk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkQmxvY2tCdXR0b24odGV4dCksIGljb24gfTtcbn07XG5cbmV4cG9ydCBjb25zdCBQcmltYXJ5U29saWRCbG9ja0hyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkQmxvY2tCdXR0b24odGV4dCksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFByaW1hcnlTb2xpZEJsb2NrSWNvbkhyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaWNvbjogSWNvbk1ldGFkYSxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkQmxvY2tJY29uQnV0dG9uKHRleHQsIGljb24pLCBocmVmLCB0YXJnZXQgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBQcmltYXJ5U29saWRGdWxsQnV0dG9uID0gKHRleHQ6IHN0cmluZyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWRGdWxsQnV0dG9uKHRleHQpLCBjb2xvcjogJ3ByaW1hcnknIH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkRnVsbEljb25CdXR0b24gPSAodGV4dDogc3RyaW5nLCBpY29uOiBJY29uTWV0YWRhKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5QcmltYXJ5U29saWRGdWxsQnV0dG9uKHRleHQpLCBpY29uIH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkRnVsbEhyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uUHJpbWFyeVNvbGlkRnVsbEJ1dHRvbih0ZXh0KSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgUHJpbWFyeVNvbGlkRnVsbEljb25IcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGljb246IEljb25NZXRhZGEsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlByaW1hcnlTb2xpZEZ1bGxJY29uQnV0dG9uKHRleHQsIGljb24pLCBocmVmLCB0YXJnZXQgfTtcbn07XG5cbi8qKiBTRUNPTkRBUlkgKi9cblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkRGVmYXVsdFJvdW5kQnV0dG9uID0gKHRleHQ6IHN0cmluZyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWREZWZhdWx0Um91bmRCdXR0b24odGV4dCksIGNvbG9yOiAnc2Vjb25kYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkRGVmYXVsdFJvdW5kSWNvbkJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcsIGljb246IEljb25NZXRhZGEpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkRGVmYXVsdFJvdW5kQnV0dG9uKHRleHQpLCBpY29uIH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWREZWZhdWx0Um91bmRIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkRGVmYXVsdFJvdW5kQnV0dG9uKHRleHQpLCBocmVmLCB0YXJnZXQgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTZWNvbmRhcnlTb2xpZERlZmF1bHRSb3VuZEljb25IcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGljb246IEljb25NZXRhZGEsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkRGVmYXVsdFJvdW5kSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWRTbWFsbFJvdW5kQnV0dG9uID0gKHRleHQ6IHN0cmluZyk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU29saWRTbWFsbFJvdW5kQnV0dG9uKHRleHQpLCBjb2xvcjogJ3NlY29uZGFyeScgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTZWNvbmRhcnlTb2xpZFNtYWxsUm91bmRJY29uQnV0dG9uID0gKHRleHQ6IHN0cmluZywgaWNvbjogSWNvbk1ldGFkYSk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU2Vjb25kYXJ5U29saWRTbWFsbFJvdW5kQnV0dG9uKHRleHQpLCBpY29uIH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWRTbWFsbFJvdW5kSHJlZkJ1dHRvbiA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBocmVmOiBzdHJpbmcsXG4gIHRhcmdldDogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnLFxuKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5TZWNvbmRhcnlTb2xpZFNtYWxsUm91bmRCdXR0b24odGV4dCksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkU21hbGxSb3VuZEljb25IcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGljb246IEljb25NZXRhZGEsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkU21hbGxSb3VuZEljb25CdXR0b24odGV4dCwgaWNvbiksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkTGFyZ2VSb3VuZEJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkTGFyZ2VSb3VuZEJ1dHRvbih0ZXh0KSwgY29sb3I6ICdzZWNvbmRhcnknIH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWRMYXJnZVJvdW5kSWNvbkJ1dHRvbiA9ICh0ZXh0OiBzdHJpbmcsIGljb246IEljb25NZXRhZGEpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkTGFyZ2VSb3VuZEJ1dHRvbih0ZXh0KSwgaWNvbiB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkTGFyZ2VSb3VuZEhyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU2Vjb25kYXJ5U29saWRMYXJnZVJvdW5kQnV0dG9uKHRleHQpLCBocmVmLCB0YXJnZXQgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTZWNvbmRhcnlTb2xpZExhcmdlUm91bmRJY29uSHJlZkJ1dHRvbiA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBpY29uOiBJY29uTWV0YWRhLFxuICBocmVmOiBzdHJpbmcsXG4gIHRhcmdldDogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnLFxuKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5TZWNvbmRhcnlTb2xpZExhcmdlUm91bmRJY29uQnV0dG9uKHRleHQsIGljb24pLCBocmVmLCB0YXJnZXQgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTZWNvbmRhcnlTb2xpZEZ1bGxCdXR0b24gPSAodGV4dDogc3RyaW5nKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5Tb2xpZEZ1bGxCdXR0b24odGV4dCksIGNvbG9yOiAnc2Vjb25kYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkRnVsbEljb25CdXR0b24gPSAodGV4dDogc3RyaW5nLCBpY29uOiBJY29uTWV0YWRhKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5TZWNvbmRhcnlTb2xpZEZ1bGxCdXR0b24odGV4dCksIGljb24gfTtcbn07XG5cbmV4cG9ydCBjb25zdCBTZWNvbmRhcnlTb2xpZEZ1bGxIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkRnVsbEJ1dHRvbih0ZXh0KSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWRGdWxsSWNvbkhyZWZCdXR0b24gPSAoXG4gIHRleHQ6IHN0cmluZyxcbiAgaWNvbjogSWNvbk1ldGFkYSxcbiAgaHJlZjogc3RyaW5nLFxuICB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19zZWxmJyB8ICdfcGFyZW50JyB8ICdfdG9wJyxcbik6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU2Vjb25kYXJ5U29saWRGdWxsSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuXG5leHBvcnQgY29uc3QgU2Vjb25kYXJ5U29saWRCbG9ja0J1dHRvbiA9ICh0ZXh0OiBzdHJpbmcpOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNvbGlkQmxvY2tCdXR0b24odGV4dCksIGNvbG9yOiAnc2Vjb25kYXJ5JyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkQmxvY2tJY29uQnV0dG9uID0gKHRleHQ6IHN0cmluZywgaWNvbjogSWNvbk1ldGFkYSk6IEJ1dHRvbk1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHsgLi4uU2Vjb25kYXJ5U29saWRCbG9ja0J1dHRvbih0ZXh0KSwgaWNvbiB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkQmxvY2tIcmVmQnV0dG9uID0gKFxuICB0ZXh0OiBzdHJpbmcsXG4gIGhyZWY6IHN0cmluZyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCcsXG4pOiBCdXR0b25NZXRhZGF0YSA9PiB7XG4gIHJldHVybiB7IC4uLlNlY29uZGFyeVNvbGlkQmxvY2tCdXR0b24odGV4dCksIGhyZWYsIHRhcmdldCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZGFyeVNvbGlkQmxvY2tJY29uSHJlZkJ1dHRvbiA9IChcbiAgdGV4dDogc3RyaW5nLFxuICBpY29uOiBJY29uTWV0YWRhLFxuICBocmVmOiBzdHJpbmcsXG4gIHRhcmdldDogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnLFxuKTogQnV0dG9uTWV0YWRhdGEgPT4ge1xuICByZXR1cm4geyAuLi5TZWNvbmRhcnlTb2xpZEJsb2NrSWNvbkJ1dHRvbih0ZXh0LCBpY29uKSwgaHJlZiwgdGFyZ2V0IH07XG59O1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3IgfSBmcm9tICdAaW9uaWMvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25UeXBlLCBDb21wb25lbnRTdGF0ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJY29uTWV0YWRhIHtcbiAgbmFtZTogc3RyaW5nO1xuICBzbG90OiAnc3RhcnQnIHwgJ2VuZCc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnV0dG9uTWV0YWRhdGEge1xuICBhY3Rpb25UeXBlPzogQWN0aW9uVHlwZTtcbiAgZXhwYW5kPzogJ2Z1bGwnIHwgJ2Jsb2NrJztcbiAgaHJlZj86IHN0cmluZztcbiAgdGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xuICBkb3dubG9hZD86IHN0cmluZztcbiAgY29sb3I6IENvbG9yO1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG4gIHRleHQ6IHN0cmluZztcbiAgaWNvbj86IEljb25NZXRhZGE7XG4gIHNoYXBlPzogJ3JvdW5kJztcbiAgc2l6ZT86ICdzbWFsbCcgfCAnZGVmYXVsdCcgfCAnbGFyZ2UnO1xuICBmaWxsPzogJ2NsZWFyJyB8ICdvdXRsaW5lJyB8ICdzb2xpZCcgfCAnZGVmYXVsdCc7XG4gIHR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgfCAncmVzZXQnO1xuICB0b2tlbj86IHN0cmluZztcbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- const ENABLED = 'ENABLED';
2
- const DISABLED = 'DISABLED';
3
- const WORKING = 'WORKING';
4
- const ERROR = 'ERROR';
5
- export const ComponentStates = { ENABLED, DISABLED, WORKING, ERROR };
6
- export var ActionType;
7
- (function (ActionType) {
8
- ActionType[ActionType["BROWSER_NEW_TAB"] = 0] = "BROWSER_NEW_TAB";
9
- ActionType[ActionType["BROWSER_DOWNLOAD"] = 1] = "BROWSER_DOWNLOAD";
10
- ActionType[ActionType["NATIVE_DOWNLOAD"] = 2] = "NATIVE_DOWNLOAD";
11
- ActionType[ActionType["APP_NAVIGATION"] = 3] = "APP_NAVIGATION";
12
- ActionType[ActionType["BROWSER_NAVIGATION"] = 4] = "BROWSER_NAVIGATION";
13
- })(ActionType || (ActionType = {}));
14
- export var InputType;
15
- (function (InputType) {
16
- InputType[InputType["TEXT"] = 0] = "TEXT";
17
- InputType[InputType["EMAIL"] = 1] = "EMAIL";
18
- InputType[InputType["PASSWORD"] = 2] = "PASSWORD";
19
- InputType[InputType["COMMENT"] = 3] = "COMMENT";
20
- InputType[InputType["NUMBER"] = 4] = "NUMBER";
21
- InputType[InputType["PIN_CODE"] = 5] = "PIN_CODE";
22
- InputType[InputType["DATE"] = 6] = "DATE";
23
- InputType[InputType["HOUR"] = 7] = "HOUR";
24
- InputType[InputType["CHECK"] = 8] = "CHECK";
25
- InputType[InputType["RADIO"] = 9] = "RADIO";
26
- InputType[InputType["SELECT"] = 10] = "SELECT";
27
- InputType[InputType["FILE"] = 11] = "FILE";
28
- })(InputType || (InputType = {}));
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxHQUFtQixTQUFTLENBQUM7QUFDMUMsTUFBTSxRQUFRLEdBQW1CLFVBQVUsQ0FBQztBQUM1QyxNQUFNLE9BQU8sR0FBbUIsU0FBUyxDQUFDO0FBQzFDLE1BQU0sS0FBSyxHQUFtQixPQUFPLENBQUM7QUFDdEMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFFckUsTUFBTSxDQUFOLElBQVksVUFNWDtBQU5ELFdBQVksVUFBVTtJQUNwQixpRUFBZSxDQUFBO0lBQ2YsbUVBQWdCLENBQUE7SUFDaEIsaUVBQWUsQ0FBQTtJQUNmLCtEQUFjLENBQUE7SUFDZCx1RUFBa0IsQ0FBQTtBQUNwQixDQUFDLEVBTlcsVUFBVSxLQUFWLFVBQVUsUUFNckI7QUFRRCxNQUFNLENBQU4sSUFBWSxTQWFYO0FBYkQsV0FBWSxTQUFTO0lBQ25CLHlDQUFJLENBQUE7SUFDSiwyQ0FBSyxDQUFBO0lBQ0wsaURBQVEsQ0FBQTtJQUNSLCtDQUFPLENBQUE7SUFDUCw2Q0FBTSxDQUFBO0lBQ04saURBQVEsQ0FBQTtJQUNSLHlDQUFJLENBQUE7SUFDSix5Q0FBSSxDQUFBO0lBQ0osMkNBQUssQ0FBQTtJQUNMLDJDQUFLLENBQUE7SUFDTCw4Q0FBTSxDQUFBO0lBQ04sMENBQUksQ0FBQTtBQUNOLENBQUMsRUFiVyxTQUFTLEtBQVQsU0FBUyxRQWFwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBCdXR0b25NZXRhZGF0YSB9IGZyb20gXCIuL2F0b21zL2J1dHRvbi90eXBlc1wiO1xuXG5leHBvcnQgdHlwZSBDb21wb25lbnRTdGF0ZSA9ICdFTkFCTEVEJyB8ICdESVNBQkxFRCcgfCAnV09SS0lORycgfCAnRVJST1InO1xuY29uc3QgRU5BQkxFRDogQ29tcG9uZW50U3RhdGUgPSAnRU5BQkxFRCc7XG5jb25zdCBESVNBQkxFRDogQ29tcG9uZW50U3RhdGUgPSAnRElTQUJMRUQnO1xuY29uc3QgV09SS0lORzogQ29tcG9uZW50U3RhdGUgPSAnV09SS0lORyc7XG5jb25zdCBFUlJPUjogQ29tcG9uZW50U3RhdGUgPSAnRVJST1InO1xuZXhwb3J0IGNvbnN0IENvbXBvbmVudFN0YXRlcyA9IHsgRU5BQkxFRCwgRElTQUJMRUQsIFdPUktJTkcsIEVSUk9SIH07XG5cbmV4cG9ydCBlbnVtIEFjdGlvblR5cGUge1xuICBCUk9XU0VSX05FV19UQUIsXG4gIEJST1dTRVJfRE9XTkxPQUQsXG4gIE5BVElWRV9ET1dOTE9BRCxcbiAgQVBQX05BVklHQVRJT04sXG4gIEJST1dTRVJfTkFWSUdBVElPTixcbn1cblxuZXhwb3J0IHR5cGUgQWN0aW9uID0ge1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICB0eXBlOiBBY3Rpb25UeXBlO1xuICBzb3VyY2U6IHN0cmluZztcbn07XG5cbmV4cG9ydCBlbnVtIElucHV0VHlwZSB7XG4gIFRFWFQsXG4gIEVNQUlMLFxuICBQQVNTV09SRCxcbiAgQ09NTUVOVCxcbiAgTlVNQkVSLFxuICBQSU5fQ09ERSxcbiAgREFURSxcbiAgSE9VUixcbiAgQ0hFQ0ssXG4gIFJBRElPLFxuICBTRUxFQ1QsXG4gIEZJTEUsXG59XG5cbmV4cG9ydCB0eXBlIElucHV0T3B0aW9uID0ge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgb3JkZXI6IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIElucHV0TWV0YWRhdGEgPSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgaGludDogc3RyaW5nO1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICB0eXBlOiBJbnB1dFR5cGU7XG4gIG9yZGVyOiBudW1iZXI7XG4gIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW107XG4gIG9wdGlvbnM/OiBJbnB1dE9wdGlvbltdO1xuICByYW5nZT86IHtcbiAgICBtaW46IG51bWJlcjtcbiAgICBtYXg6IG51bWJlcjtcbiAgfTtcbiAgZXJyb3JzOiB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xuICB2YWx1ZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEZvcm1TZWN0aW9uID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIG9yZGVyOiBudW1iZXI7XG4gIGZpZWxkczogSW5wdXRNZXRhZGF0YVtdO1xufTtcblxuZXhwb3J0IHR5cGUgRm9ybVN1Ym1pdCA9IHtcbiAgZmllbGRzOiB7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH1bXTtcbiAgdG9rZW4/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBGb3JtTWV0YWRhdGEgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2VjdGlvbnM6IEZvcm1TZWN0aW9uW107XG4gIGFjdGlvbnM6IEJ1dHRvbk1ldGFkYXRhO1xuICBzdGF0ZTogQ29tcG9uZW50U3RhdGU7XG59O1xuXG4iXX0=
@@ -1,63 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class DownloadService {
4
- getFileNameFromUrl(url) {
5
- try {
6
- const pathSegments = url.split('/');
7
- const lastSegment = pathSegments[pathSegments.length - 1];
8
- const fileName = decodeURIComponent(lastSegment);
9
- return fileName;
10
- }
11
- catch (error) {
12
- console.error('Error al obtener nombre de archivo: ', JSON.stringify(error));
13
- return 'filename';
14
- }
15
- }
16
- openNewTab(url) {
17
- if (url) {
18
- const fileName = this.getFileNameFromUrl(url);
19
- const link = document.createElement('a');
20
- link.href = url;
21
- link.download = fileName;
22
- link.target = '_blank';
23
- document.body.appendChild(link);
24
- link.click();
25
- document.body.removeChild(link);
26
- }
27
- else {
28
- console.error('La URL no está definida');
29
- }
30
- }
31
- downloadLinkFromBrowser(url) {
32
- console.log('trying to download file from url');
33
- if (url) {
34
- fetch(url)
35
- .then((response) => response.blob())
36
- .then((blob) => {
37
- const url = window.URL.createObjectURL(blob);
38
- const link = document.createElement('a');
39
- link.href = url;
40
- const fileName = this.getFileNameFromUrl(url);
41
- link.download = `${+new Date()}-${fileName}`;
42
- link.target = '_self';
43
- link.click();
44
- window.URL.revokeObjectURL(url);
45
- })
46
- .catch((error) => {
47
- console.error('Error al descargar el archivo:', JSON.stringify(error));
48
- });
49
- }
50
- else {
51
- console.error('La URL no está definida');
52
- }
53
- }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DownloadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
55
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DownloadService, providedIn: 'root' }); }
56
- }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DownloadService, decorators: [{
58
- type: Injectable,
59
- args: [{
60
- providedIn: 'root',
61
- }]
62
- }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2Rvd25sb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGVBQWU7SUFDMUIsa0JBQWtCLENBQUMsR0FBVztRQUM1QixJQUFJLENBQUM7WUFDSCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFELE1BQU0sUUFBUSxHQUFHLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxzQ0FBc0MsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDN0UsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNwQixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzlDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7WUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUM7WUFDdkIsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2IsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFXO1FBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0NBQWtDLENBQUMsQ0FBQztRQUNoRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDUCxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDbkMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2IsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO2dCQUVoQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDO2dCQUN0QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBRWIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3pFLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7K0dBbkRVLGVBQWU7bUhBQWYsZUFBZSxjQUZkLE1BQU07OzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRG93bmxvYWRTZXJ2aWNlIHtcbiAgZ2V0RmlsZU5hbWVGcm9tVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGF0aFNlZ21lbnRzID0gdXJsLnNwbGl0KCcvJyk7XG4gICAgICBjb25zdCBsYXN0U2VnbWVudCA9IHBhdGhTZWdtZW50c1twYXRoU2VnbWVudHMubGVuZ3RoIC0gMV07XG4gICAgICBjb25zdCBmaWxlTmFtZSA9IGRlY29kZVVSSUNvbXBvbmVudChsYXN0U2VnbWVudCk7XG4gICAgICByZXR1cm4gZmlsZU5hbWU7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFsIG9idGVuZXIgbm9tYnJlIGRlIGFyY2hpdm86ICcsIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XG4gICAgICByZXR1cm4gJ2ZpbGVuYW1lJztcbiAgICB9XG4gIH1cblxuICBvcGVuTmV3VGFiKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHVybCkge1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSB0aGlzLmdldEZpbGVOYW1lRnJvbVVybCh1cmwpO1xuICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICAgIGxpbmsuaHJlZiA9IHVybDtcbiAgICAgIGxpbmsuZG93bmxvYWQgPSBmaWxlTmFtZTtcbiAgICAgIGxpbmsudGFyZ2V0ID0gJ19ibGFuayc7XG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xuICAgICAgbGluay5jbGljaygpO1xuICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignTGEgVVJMIG5vIGVzdMOhIGRlZmluaWRhJyk7XG4gICAgfVxuICB9XG5cbiAgZG93bmxvYWRMaW5rRnJvbUJyb3dzZXIodXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZygndHJ5aW5nIHRvIGRvd25sb2FkIGZpbGUgZnJvbSB1cmwnKTtcbiAgICBpZiAodXJsKSB7XG4gICAgICBmZXRjaCh1cmwpXG4gICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuYmxvYigpKVxuICAgICAgICAudGhlbigoYmxvYikgPT4ge1xuICAgICAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICAgICAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgICAgbGluay5ocmVmID0gdXJsO1xuXG4gICAgICAgICAgY29uc3QgZmlsZU5hbWUgPSB0aGlzLmdldEZpbGVOYW1lRnJvbVVybCh1cmwpO1xuICAgICAgICAgIGxpbmsuZG93bmxvYWQgPSBgJHsrbmV3IERhdGUoKX0tJHtmaWxlTmFtZX1gO1xuICAgICAgICAgIGxpbmsudGFyZ2V0ID0gJ19zZWxmJztcbiAgICAgICAgICBsaW5rLmNsaWNrKCk7XG5cbiAgICAgICAgICB3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYWwgZGVzY2FyZ2FyIGVsIGFyY2hpdm86JywgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0xhIFVSTCBubyBlc3TDoSBkZWZpbmlkYScpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,13 +0,0 @@
1
- import { TextContent } from '../types';
2
- const text = {
3
- es: {
4
- spanish: 'Español',
5
- english: 'Inglés',
6
- },
7
- en: {
8
- spanish: 'Spanish',
9
- english: 'English',
10
- },
11
- };
12
- export default new TextContent(text);
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy1zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvY29tcG9uZW50cy9sYW5nLXNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpELE1BQU0sSUFBSSxHQUFxQjtJQUM3QixFQUFFLEVBQUU7UUFDRixPQUFPLEVBQUUsU0FBUztRQUNsQixPQUFPLEVBQUUsUUFBUTtLQUNsQjtJQUNELEVBQUUsRUFBRTtRQUNGLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLE9BQU8sRUFBRSxTQUFTO0tBQ25CO0NBQ0YsQ0FBQztBQUVGLGVBQWUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZXNDb250ZW50LCBUZXh0Q29udGVudCB9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgdGV4dDogTGFuZ3VhZ2VzQ29udGVudCA9IHtcbiAgZXM6IHtcbiAgICBzcGFuaXNoOiAnRXNwYcOxb2wnLFxuICAgIGVuZ2xpc2g6ICdJbmdsw6lzJyxcbiAgfSxcbiAgZW46IHtcbiAgICBzcGFuaXNoOiAnU3BhbmlzaCcsXG4gICAgZW5nbGlzaDogJ0VuZ2xpc2gnLFxuICB9LFxufTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IFRleHRDb250ZW50KHRleHQpO1xuIl19
@@ -1,15 +0,0 @@
1
- import { TextContent } from "../types";
2
- const text = {
3
- es: {
4
- light: 'Siempre claro',
5
- dark: 'Siempre oscuro',
6
- auto: 'Automático',
7
- },
8
- en: {
9
- light: 'Always light',
10
- dark: 'Always dark',
11
- auto: 'System settings',
12
- },
13
- };
14
- export default new TextContent(text);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9sYW5nLXByb3ZpZGVyL2NvbXBvbmVudHMvdGhlbWUtc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekQsTUFBTSxJQUFJLEdBQXFCO0lBQzdCLEVBQUUsRUFBRTtRQUNGLEtBQUssRUFBRSxlQUFlO1FBQ3RCLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsSUFBSSxFQUFFLFlBQVk7S0FDbkI7SUFDRCxFQUFFLEVBQUU7UUFDRixLQUFLLEVBQUUsY0FBYztRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixJQUFJLEVBQUUsaUJBQWlCO0tBQ3hCO0NBQ0YsQ0FBQztBQUVGLGVBQWUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZXNDb250ZW50LCBUZXh0Q29udGVudCB9IGZyb20gXCIuLi90eXBlc1wiO1xuXG5jb25zdCB0ZXh0OiBMYW5ndWFnZXNDb250ZW50ID0ge1xuICBlczoge1xuICAgIGxpZ2h0OiAnU2llbXByZSBjbGFybycsXG4gICAgZGFyazogJ1NpZW1wcmUgb3NjdXJvJyxcbiAgICBhdXRvOiAnQXV0b23DoXRpY28nLFxuICB9LFxuICBlbjoge1xuICAgIGxpZ2h0OiAnQWx3YXlzIGxpZ2h0JyxcbiAgICBkYXJrOiAnQWx3YXlzIGRhcmsnLFxuICAgIGF1dG86ICdTeXN0ZW0gc2V0dGluZ3MnLFxuICB9LFxufTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IFRleHRDb250ZW50KHRleHQpO1xuIl19
@@ -1,8 +0,0 @@
1
- import LangSettings from './components/lang-settings';
2
- import ThemeSettings from './components/theme-settings';
3
- const content = {
4
- LangSettings,
5
- ThemeSettings,
6
- };
7
- export default content;
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2xhbmctcHJvdmlkZXIvY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLGFBQWEsTUFBTSw2QkFBNkIsQ0FBQztBQVF4RCxNQUFNLE9BQU8sR0FBYTtJQUN4QixZQUFZO0lBQ1osYUFBYTtDQUNkLENBQUM7QUFFRixlQUFlLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBMYW5nU2V0dGluZ3MgZnJvbSAnLi9jb21wb25lbnRzL2xhbmctc2V0dGluZ3MnO1xuaW1wb3J0IFRoZW1lU2V0dGluZ3MgZnJvbSAnLi9jb21wb25lbnRzL3RoZW1lLXNldHRpbmdzJztcbmltcG9ydCB7IFRleHRDb250ZW50IH0gZnJvbSAnLi90eXBlcyc7XG5cblxuZXhwb3J0IGludGVyZmFjZSBQcm92aWRlciB7XG4gIFt4OiBzdHJpbmddOiBUZXh0Q29udGVudDtcbn1cblxuY29uc3QgY29udGVudDogUHJvdmlkZXIgPSB7XG4gIExhbmdTZXR0aW5ncyxcbiAgVGhlbWVTZXR0aW5ncyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNvbnRlbnQ7XG4iXX0=
@@ -1,39 +0,0 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { LangOption } from './types';
4
- import { LocalStorageService } from '../local-storage.service';
5
- import { LANG } from '../../shared/constants/storage';
6
- import { ValtechConfigService } from '../types';
7
- import * as i0 from "@angular/core";
8
- export class LangService {
9
- constructor(config) {
10
- this.default = LangOption.ES;
11
- console.log('injected config: ', config);
12
- this.content = config.content;
13
- this.config = config;
14
- const current = LocalStorageService.get(LANG);
15
- this.selectedLang = new BehaviorSubject(current || this.default);
16
- }
17
- Text(className) {
18
- return this.content[className].Content[this.selectedLang.value];
19
- }
20
- get Lang() {
21
- return this.selectedLang.value;
22
- }
23
- set Lang(lang) {
24
- this.selectedLang.next(lang);
25
- LocalStorageService.set(LANG, lang);
26
- }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LangService, deps: [{ token: ValtechConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
28
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LangService, providedIn: 'root' }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LangService, decorators: [{
31
- type: Injectable,
32
- args: [{
33
- providedIn: 'root',
34
- }]
35
- }], ctorParameters: () => [{ type: undefined, decorators: [{
36
- type: Inject,
37
- args: [ValtechConfigService]
38
- }] }] });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy1wcm92aWRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLFNBQVMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEQsT0FBTyxFQUFpQixvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFLL0QsTUFBTSxPQUFPLFdBQVc7SUFNdEIsWUFBMEMsTUFBcUI7UUFKL0QsWUFBTyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFLdEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQWEsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQWlCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsSUFBZ0I7UUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsbUJBQW1CLENBQUMsR0FBRyxDQUFhLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDOytHQXpCVSxXQUFXLGtCQU1GLG9CQUFvQjttSEFON0IsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPYyxNQUFNOzJCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJy4vY29udGVudCc7XG5pbXBvcnQgeyBMYW5nT3B0aW9uLCBMYW5ndWFnZVRleHQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTEFORyB9IGZyb20gJy4uLy4uL3NoYXJlZC9jb25zdGFudHMvc3RvcmFnZSc7XG5pbXBvcnQgeyBWYWx0ZWNoQ29uZmlnLCBWYWx0ZWNoQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3R5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExhbmdTZXJ2aWNlIHtcbiAgY29udGVudDogUHJvdmlkZXI7XG4gIGRlZmF1bHQgPSBMYW5nT3B0aW9uLkVTO1xuICBzZWxlY3RlZExhbmc6IEJlaGF2aW9yU3ViamVjdDxMYW5nT3B0aW9uPjtcbiAgY29uZmlnOiBWYWx0ZWNoQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVmFsdGVjaENvbmZpZ1NlcnZpY2UpIGNvbmZpZzogVmFsdGVjaENvbmZpZykge1xuICAgIGNvbnNvbGUubG9nKCdpbmplY3RlZCBjb25maWc6ICcsIGNvbmZpZyk7XG4gICAgdGhpcy5jb250ZW50ID0gY29uZmlnLmNvbnRlbnQ7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgY29uc3QgY3VycmVudCA9IExvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0PExhbmdPcHRpb24+KExBTkcpO1xuICAgIHRoaXMuc2VsZWN0ZWRMYW5nID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMYW5nT3B0aW9uPihjdXJyZW50IHx8IHRoaXMuZGVmYXVsdCk7XG4gIH1cblxuICBUZXh0KGNsYXNzTmFtZTogc3RyaW5nKTogTGFuZ3VhZ2VUZXh0IHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50W2NsYXNzTmFtZV0uQ29udGVudFt0aGlzLnNlbGVjdGVkTGFuZy52YWx1ZV07XG4gIH1cblxuICBnZXQgTGFuZygpOiBMYW5nT3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZExhbmcudmFsdWU7XG4gIH1cblxuICBzZXQgTGFuZyhsYW5nOiBMYW5nT3B0aW9uKSB7XG4gICAgdGhpcy5zZWxlY3RlZExhbmcubmV4dChsYW5nKTtcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldDxMYW5nT3B0aW9uPihMQU5HLCBsYW5nKTtcbiAgfVxufVxuIl19
@@ -1,14 +0,0 @@
1
- export class TextContent {
2
- constructor(text) {
3
- this.text = text;
4
- }
5
- get Content() {
6
- return this.text;
7
- }
8
- }
9
- export var LangOption;
10
- (function (LangOption) {
11
- LangOption["ES"] = "es";
12
- LangOption["EN"] = "en";
13
- })(LangOption || (LangOption = {}));
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9sYW5nLXByb3ZpZGVyL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sT0FBTyxXQUFXO0lBRXRCLFlBQVksSUFBc0I7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQU4sSUFBWSxVQUdYO0FBSEQsV0FBWSxVQUFVO0lBQ3BCLHVCQUFTLENBQUE7SUFDVCx1QkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLFVBQVUsS0FBVixVQUFVLFFBR3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiLi9jb250ZW50XCI7XG5cbmV4cG9ydCB0eXBlIExhbmd1YWdlVGV4dCA9IHtcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTGFuZ3VhZ2VzQ29udGVudCA9IHtcbiAgW2tleTogc3RyaW5nXTogTGFuZ3VhZ2VUZXh0O1xufTtcblxuZXhwb3J0IGNsYXNzIFRleHRDb250ZW50IHtcbiAgdGV4dDogTGFuZ3VhZ2VzQ29udGVudDtcbiAgY29uc3RydWN0b3IodGV4dDogTGFuZ3VhZ2VzQ29udGVudCkge1xuICAgIHRoaXMudGV4dCA9IHRleHQ7XG4gIH1cblxuICBnZXQgQ29udGVudCgpOiBMYW5ndWFnZXNDb250ZW50IHtcbiAgICByZXR1cm4gdGhpcy50ZXh0O1xuICB9XG59XG5cbmV4cG9ydCBlbnVtIExhbmdPcHRpb24ge1xuICBFUyA9ICdlcycsXG4gIEVOID0gJ2VuJyxcbn1cbiJdfQ==
@@ -1,16 +0,0 @@
1
- export class LocalStorageService {
2
- static set(reference, value) {
3
- localStorage.setItem(reference, JSON.stringify(value));
4
- }
5
- static get(reference) {
6
- const value = localStorage.getItem(reference);
7
- return JSON.parse(value);
8
- }
9
- static remove(reference) {
10
- localStorage.removeItem(reference);
11
- }
12
- static clear() {
13
- localStorage.clear();
14
- }
15
- }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsTUFBTSxDQUFDLEdBQUcsQ0FBSSxTQUFpQixFQUFFLEtBQVE7UUFDdkMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRyxDQUFJLFNBQWlCO1FBQzdCLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBTSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQWlCO1FBQzdCLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLO1FBQ1YsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIHtcbiAgc3RhdGljIHNldDxUPihyZWZlcmVuY2U6IHN0cmluZywgdmFsdWU6IFQpOiB2b2lkIHtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShyZWZlcmVuY2UsIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG4gIH1cblxuICBzdGF0aWMgZ2V0PFQ+KHJlZmVyZW5jZTogc3RyaW5nKTogVCB7XG4gICAgY29uc3QgdmFsdWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShyZWZlcmVuY2UpO1xuICAgIHJldHVybiBKU09OLnBhcnNlKHZhbHVlKSBhcyBUO1xuICB9XG5cbiAgc3RhdGljIHJlbW92ZShyZWZlcmVuY2U6IHN0cmluZyk6IHZvaWQge1xuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHJlZmVyZW5jZSk7XG4gIH1cblxuICBzdGF0aWMgY2xlYXIoKSB7XG4gICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,97 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { LocalStorageService } from './local-storage.service';
4
- import { THEME } from '../shared/constants/storage';
5
- import * as i0 from "@angular/core";
6
- export var ThemeOption;
7
- (function (ThemeOption) {
8
- ThemeOption["LIGHT"] = "light";
9
- ThemeOption["DARK"] = "dark";
10
- ThemeOption["AUTO"] = "auto";
11
- })(ThemeOption || (ThemeOption = {}));
12
- export class ThemeService {
13
- constructor() {
14
- this.lightToggle = false;
15
- this.darkToggle = false;
16
- this.autoToggle = false;
17
- this.currentOption = ThemeOption.AUTO;
18
- this.themeOptions = ThemeOption;
19
- this.prefersDark = false;
20
- this.default = ThemeOption.AUTO;
21
- const current = LocalStorageService.get(THEME);
22
- console.log('💡 ThemeConfig current::: ', current);
23
- this.theme = new BehaviorSubject(current || this.default);
24
- this.currentOption = this.Theme;
25
- console.log('💡 ThemeConfig this.currentOption::: ', this.currentOption);
26
- this.toggleUserPreference(this.currentOption);
27
- const prefersDarkQuery = window.matchMedia('(prefers-color-scheme: dark)');
28
- this.prefersDark = prefersDarkQuery.matches;
29
- this.handleAutoConfiguration();
30
- prefersDarkQuery.addEventListener('change', (mediaQuery) => {
31
- console.log('💡 ThemeConfig addEventListener change::: ', mediaQuery);
32
- this.prefersDark = mediaQuery.matches;
33
- this.handleAutoConfiguration();
34
- });
35
- }
36
- handleAutoConfiguration() {
37
- if (this.prefersDark && this.currentOption === ThemeOption.AUTO) {
38
- console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
39
- this.toggleUserPreference(ThemeOption.AUTO);
40
- }
41
- if (!this.prefersDark && this.currentOption === ThemeOption.AUTO) {
42
- console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
43
- this.toggleUserPreference(ThemeOption.AUTO);
44
- }
45
- }
46
- handleDarkPreference() {
47
- this.toggleTheme(ThemeOption.DARK, true);
48
- this.toggleTheme(ThemeOption.LIGHT, false);
49
- }
50
- handleLightPreference() {
51
- this.toggleTheme(ThemeOption.LIGHT, true);
52
- this.toggleTheme(ThemeOption.DARK, false);
53
- }
54
- get Theme() {
55
- return this.theme.value;
56
- }
57
- set Theme(theme) {
58
- this.theme.next(theme);
59
- LocalStorageService.set(THEME, theme);
60
- }
61
- toggleTheme(name, shouldAdd) {
62
- console.log('toggleTheme::: ', name, shouldAdd);
63
- document.body.classList.toggle(name, shouldAdd);
64
- }
65
- toggleUserPreference(option) {
66
- this.currentOption = option;
67
- this.Theme = option;
68
- this.lightToggle = option === ThemeOption.LIGHT;
69
- this.darkToggle = option === ThemeOption.DARK;
70
- this.autoToggle = option === ThemeOption.AUTO;
71
- switch (option) {
72
- case ThemeOption.LIGHT:
73
- this.handleLightPreference();
74
- break;
75
- case ThemeOption.DARK:
76
- this.handleDarkPreference();
77
- break;
78
- case ThemeOption.AUTO:
79
- if (this.prefersDark) {
80
- this.handleDarkPreference();
81
- }
82
- else {
83
- this.handleLightPreference();
84
- }
85
- break;
86
- }
87
- }
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
89
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ThemeService, providedIn: 'root' }); }
90
- }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ThemeService, decorators: [{
92
- type: Injectable,
93
- args: [{
94
- providedIn: 'root',
95
- }]
96
- }], ctorParameters: () => [] });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFcEQsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQiw4QkFBZSxDQUFBO0lBQ2YsNEJBQWEsQ0FBQTtJQUNiLDRCQUFhLENBQUE7QUFDZixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFLRCxNQUFNLE9BQU8sWUFBWTtJQVV2QjtRQVRBLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixrQkFBYSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDakMsaUJBQVksR0FBRyxXQUFXLENBQUM7UUFDM0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsWUFBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFJekIsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFjLEtBQUssQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLGVBQWUsQ0FBYyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxh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LFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQztRQUU5QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1lBQ2YsS0FBSyxXQUFXLENBQUMsS0FBSztnQkFDcEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQzdCLE1BQU07WUFDUixLQUFLLFdBQVcsQ0FBQyxJQUFJO2dCQUNuQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDNUIsTUFBTTtZQUNSLEtBQUssV0FBVyxDQUFDLElBQUk7Z0JBQ25CLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNyQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDOUIsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUMvQixDQUFDO2dCQUNELE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQzsrR0F0RlUsWUFBWTttSEFBWixZQUFZLGNBRlgsTUFBTTs7NEZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBUSEVNRSB9IGZyb20gJy4uL3NoYXJlZC9jb25zdGFudHMvc3RvcmFnZSc7XG5cbmV4cG9ydCBlbnVtIFRoZW1lT3B0aW9uIHtcbiAgTElHSFQgPSAnbGlnaHQnLFxuICBEQVJLID0gJ2RhcmsnLFxuICBBVVRPID0gJ2F1dG8nLFxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVGhlbWVTZXJ2aWNlIHtcbiAgbGlnaHRUb2dnbGUgPSBmYWxzZTtcbiAgZGFya1RvZ2dsZSA9IGZhbHNlO1xuICBhdXRvVG9nZ2xlID0gZmFsc2U7XG4gIGN1cnJlbnRPcHRpb24gPSBUaGVtZU9wdGlvbi5BVVRPO1xuICB0aGVtZU9wdGlvbnMgPSBUaGVtZU9wdGlvbjtcbiAgcHJlZmVyc0RhcmsgPSBmYWxzZTtcbiAgZGVmYXVsdCA9IFRoZW1lT3B0aW9uLkFVVE87XG4gIHRoZW1lOiBCZWhhdmlvclN1YmplY3Q8VGhlbWVPcHRpb24+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGN1cnJlbnQgPSBMb2NhbFN0b3JhZ2VTZXJ2aWNlLmdldDxUaGVtZU9wdGlvbj4oVEhFTUUpO1xuICAgIGNvbnNvbGUubG9nKCfwn5KhIFRoZW1lQ29uZmlnIGN1cnJlbnQ6OjogJywgY3VycmVudCk7XG4gICAgdGhpcy50aGVtZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VGhlbWVPcHRpb24+KGN1cnJlbnQgfHwgdGhpcy5kZWZhdWx0KTtcbiAgICB0aGlzLmN1cnJlbnRPcHRpb24gPSB0aGlzLlRoZW1lO1xuICAgIGNvbnNvbGUubG9nKCfwn5KhIFRoZW1lQ29uZmlnIHRoaXMuY3VycmVudE9wdGlvbjo6OiAnLCB0aGlzLmN1cnJlbnRPcHRpb24pO1xuICAgIHRoaXMudG9nZ2xlVXNlclByZWZlcmVuY2UodGhpcy5jdXJyZW50T3B0aW9uKTtcblxuICAgIGNvbnN0IHByZWZlcnNEYXJrUXVlcnkgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpO1xuICAgIHRoaXMucHJlZmVyc0RhcmsgPSBwcmVmZXJzRGFya1F1ZXJ5Lm1hdGNoZXM7XG4gICAgdGhpcy5oYW5kbGVBdXRvQ29uZmlndXJhdGlvbigpO1xuXG4gICAgcHJlZmVyc0RhcmtRdWVyeS5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCAobWVkaWFRdWVyeSkgPT4ge1xuICAgICAgY29uc29sZS5sb2coJ/CfkqEgVGhlbWVDb25maWcgYWRkRXZlbnRMaXN0ZW5lciBjaGFuZ2U6OjogJywgbWVkaWFRdWVyeSk7XG4gICAgICB0aGlzLnByZWZlcnNEYXJrID0gbWVkaWFRdWVyeS5tYXRjaGVzO1xuICAgICAgdGhpcy5oYW5kbGVBdXRvQ29uZmlndXJhdGlvbigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVBdXRvQ29uZmlndXJhdGlvbigpIHtcbiAgICBpZiAodGhpcy5wcmVmZXJzRGFyayAmJiB0aGlzLmN1cnJlbnRPcHRpb24gPT09IFRoZW1lT3B0aW9uLkFVVE8pIHtcbiAgICAgIGNvbnNvbGUubG9nKCfwn5KhIFRoZW1lQ29uZmlnIHByZWZlcnNEYXJrOjo6ICcsIHRoaXMucHJlZmVyc0RhcmspO1xuICAgICAgdGhpcy50b2dnbGVVc2VyUHJlZmVyZW5jZShUaGVtZU9wdGlvbi5BVVRPKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLnByZWZlcnNEYXJrICYmIHRoaXMuY3VycmVudE9wdGlvbiA9PT0gVGhlbWVPcHRpb24uQVVUTykge1xuICAgICAgY29uc29sZS5sb2coJ/CfkqEgVGhlbWVDb25maWcgcHJlZmVyc0Rhcms6OjogJywgdGhpcy5wcmVmZXJzRGFyayk7XG4gICAgICB0aGlzLnRvZ2dsZVVzZXJQcmVmZXJlbmNlKFRoZW1lT3B0aW9uLkFVVE8pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlRGFya1ByZWZlcmVuY2UoKSB7XG4gICAgdGhpcy50b2dnbGVUaGVtZShUaGVtZU9wdGlvbi5EQVJLLCB0cnVlKTtcbiAgICB0aGlzLnRvZ2dsZVRoZW1lKFRoZW1lT3B0aW9uLkxJR0hULCBmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUxpZ2h0UHJlZmVyZW5jZSgpIHtcbiAgICB0aGlzLnRvZ2dsZVRoZW1lKFRoZW1lT3B0aW9uLkxJR0hULCB0cnVlKTtcbiAgICB0aGlzLnRvZ2dsZVRoZW1lKFRoZW1lT3B0aW9uLkRBUkssIGZhbHNlKTtcbiAgfVxuXG4gIGdldCBUaGVtZSgpOiBUaGVtZU9wdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWUudmFsdWU7XG4gIH1cblxuICBzZXQgVGhlbWUodGhlbWU6IFRoZW1lT3B0aW9uKSB7XG4gICAgdGhpcy50aGVtZS5uZXh0KHRoZW1lKTtcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldDxUaGVtZU9wdGlvbj4oVEhFTUUsIHRoZW1lKTtcbiAgfVxuXG4gIHRvZ2dsZVRoZW1lKG5hbWU6IHN0cmluZywgc2hvdWxkQWRkOiBib29sZWFuKSB7XG4gICAgY29uc29sZS5sb2coJ3RvZ2dsZVRoZW1lOjo6ICcsIG5hbWUsIHNob3VsZEFkZCk7XG4gICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QudG9nZ2xlKG5hbWUsIHNob3VsZEFkZCk7XG4gIH1cblxuICB0b2dnbGVVc2VyUHJlZmVyZW5jZShvcHRpb246IFRoZW1lT3B0aW9uKSB7XG4gICAgdGhpcy5jdXJyZW50T3B0aW9uID0gb3B0aW9uO1xuICAgIHRoaXMuVGhlbWUgPSBvcHRpb247XG4gICAgdGhpcy5saWdodFRvZ2dsZSA9IG9wdGlvbiA9PT0gVGhlbWVPcHRpb24uTElHSFQ7XG4gICAgdGhpcy5kYXJrVG9nZ2xlID0gb3B0aW9uID09PSBUaGVtZU9wdGlvbi5EQVJLO1xuICAgIHRoaXMuYXV0b1RvZ2dsZSA9IG9wdGlvbiA9PT0gVGhlbWVPcHRpb24uQVVUTztcblxuICAgIHN3aXRjaCAob3B0aW9uKSB7XG4gICAgICBjYXNlIFRoZW1lT3B0aW9uLkxJR0hUOlxuICAgICAgICB0aGlzLmhhbmRsZUxpZ2h0UHJlZmVyZW5jZSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVGhlbWVPcHRpb24uREFSSzpcbiAgICAgICAgdGhpcy5oYW5kbGVEYXJrUHJlZmVyZW5jZSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVGhlbWVPcHRpb24uQVVUTzpcbiAgICAgICAgaWYgKHRoaXMucHJlZmVyc0RhcmspIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZURhcmtQcmVmZXJlbmNlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVMaWdodFByZWZlcmVuY2UoKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbn1cbiJdfQ==