ng2-logger 13.1.19 → 13.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/README.md +192 -192
  2. package/assets/shared/shared_folder_info.txt +7 -0
  3. package/browser/README.md +24 -24
  4. package/browser/esm2020/lib/backend-logging.mjs +93 -93
  5. package/browser/esm2020/lib/display.mjs +96 -96
  6. package/browser/esm2020/lib/index.mjs +6 -6
  7. package/browser/esm2020/lib/level.mjs +32 -32
  8. package/browser/esm2020/lib/log.mjs +160 -160
  9. package/browser/esm2020/lib/logger.mjs +236 -236
  10. package/browser/esm2020/ng2-logger.mjs +4 -4
  11. package/browser/esm2020/public-api.mjs +1 -1
  12. package/browser/fesm2015/ng2-logger.mjs +514 -514
  13. package/browser/fesm2020/ng2-logger.mjs +514 -514
  14. package/browser/lib/backend-logging.d.ts +3 -3
  15. package/browser/lib/display.d.ts +3 -3
  16. package/browser/lib/index.d.ts +3 -3
  17. package/browser/lib/level.d.ts +20 -20
  18. package/browser/lib/log.d.ts +24 -24
  19. package/browser/lib/logger.d.ts +80 -80
  20. package/browser/ng2-logger.d.ts +4 -4
  21. package/client/README.md +24 -24
  22. package/client/esm2020/lib/backend-logging.mjs +93 -93
  23. package/client/esm2020/lib/display.mjs +96 -96
  24. package/client/esm2020/lib/index.mjs +6 -6
  25. package/client/esm2020/lib/level.mjs +32 -32
  26. package/client/esm2020/lib/log.mjs +160 -160
  27. package/client/esm2020/lib/logger.mjs +236 -236
  28. package/client/esm2020/ng2-logger.mjs +4 -4
  29. package/client/esm2020/public-api.mjs +1 -1
  30. package/client/fesm2015/ng2-logger.mjs +514 -514
  31. package/client/fesm2020/ng2-logger.mjs +514 -514
  32. package/client/lib/backend-logging.d.ts +3 -3
  33. package/client/lib/display.d.ts +3 -3
  34. package/client/lib/index.d.ts +3 -3
  35. package/client/lib/level.d.ts +20 -20
  36. package/client/lib/log.d.ts +24 -24
  37. package/client/lib/logger.d.ts +80 -80
  38. package/client/ng2-logger.d.ts +4 -4
  39. package/client/package.json +269 -25
  40. package/index.d.ts +1 -1
  41. package/index.js.map +1 -1
  42. package/lib/backend-logging.d.ts +4 -4
  43. package/lib/backend-logging.js.map +1 -1
  44. package/lib/display.d.ts +4 -4
  45. package/lib/display.js.map +1 -1
  46. package/lib/index.d.ts +4 -4
  47. package/lib/index.js.map +1 -1
  48. package/lib/level.d.ts +21 -21
  49. package/lib/level.js.map +1 -1
  50. package/lib/log.d.ts +25 -25
  51. package/lib/log.js.map +1 -1
  52. package/lib/logger.d.ts +81 -81
  53. package/lib/logger.js.map +1 -1
  54. package/package.json +4 -4
  55. package/package.json_devDependencies.json +184 -184
  56. package/package.json_tnp.json5 +51 -51
  57. package/tmp-environment.json +36 -36
  58. package/websql/README.md +24 -24
  59. package/websql/esm2020/lib/backend-logging.mjs +93 -93
  60. package/websql/esm2020/lib/display.mjs +96 -96
  61. package/websql/esm2020/lib/index.mjs +6 -6
  62. package/websql/esm2020/lib/level.mjs +32 -32
  63. package/websql/esm2020/lib/log.mjs +160 -160
  64. package/websql/esm2020/lib/logger.mjs +236 -236
  65. package/websql/esm2020/ng2-logger.mjs +4 -4
  66. package/websql/esm2020/public-api.mjs +1 -1
  67. package/websql/fesm2015/ng2-logger.mjs +514 -514
  68. package/websql/fesm2020/ng2-logger.mjs +514 -514
  69. package/websql/lib/backend-logging.d.ts +3 -3
  70. package/websql/lib/display.d.ts +3 -3
  71. package/websql/lib/index.d.ts +3 -3
  72. package/websql/lib/level.d.ts +20 -20
  73. package/websql/lib/log.d.ts +24 -24
  74. package/websql/lib/logger.d.ts +80 -80
  75. package/websql/ng2-logger.d.ts +4 -4
  76. package/app/index.d.ts +0 -4
  77. package/app/index.js +0 -19
  78. package/app/index.js.map +0 -1
  79. package/app/ng2-logger.component.d.ts +0 -5
  80. package/app/ng2-logger.component.js +0 -33
  81. package/app/ng2-logger.component.js.map +0 -1
  82. package/app/ng2-logger.module.d.ts +0 -2
  83. package/app/ng2-logger.module.js +0 -30
  84. package/app/ng2-logger.module.js.map +0 -1
@@ -1,237 +1,237 @@
1
- import { Level } from './level';
2
- import { Display } from './display';
3
- import { Helpers } from 'tnp-core/websql';
4
- export class Logger {
5
- constructor(name, color, developmentMode, allowed, isMuted, fixedWidth) {
6
- this.name = name;
7
- this.color = color;
8
- this.developmentMode = developmentMode;
9
- this.allowed = allowed;
10
- this.isMuted = isMuted;
11
- this.fixedWidth = fixedWidth;
12
- /** @deprecated Use data(...)
13
- * @see data
14
- */
15
- this.d = (name, ...data) => this._data(name, data);
16
- /** @deprecated Use error(...)
17
- * @see error
18
- */
19
- this.er = (name, ...data) => this._error(name, data);
20
- /** @deprecated Use info(...)
21
- * @see info
22
- */
23
- this.i = (name, ...data) => this._info(name, data);
24
- /** @deprecated Use warn(...)
25
- * @see warn
26
- */
27
- this.w = (name, ...data) => this._warn(name, data);
28
- /**
29
- * Logs message and data with the level=data
30
- * @param message The message
31
- * @param otherParams Additional parameters
32
- */
33
- this.data = (message, ...otherParams) => { return this._data(message, otherParams); };
34
- /**
35
- * Logs message and data with the level=error
36
- * @param message The message
37
- * @param otherParams Additional parameters
38
- */
39
- this.error = (message, ...otherParams) => this._error(message, otherParams);
40
- /**
41
- * Logs message and data with the level=info
42
- * @param message The message
43
- * @param otherParams Additional parameters
44
- */
45
- this.info = (message, ...otherParams) => this._info(message, otherParams);
46
- /**
47
- * Logs message and data with the level=success
48
- * @param message The message
49
- * @param otherParams Additional parameters
50
- */
51
- this.success = (message, ...otherParams) => this._success(message, otherParams);
52
- /**
53
- * Logs message and data with the level=taskStarted
54
- * @param message The message
55
- * @param otherParams Additional parameters
56
- */
57
- this.taskStarted = (message, ...otherParams) => this._taskStarted(message, otherParams);
58
- /**
59
- * Logs message and data with the level=taskDone
60
- * @param message The message
61
- * @param otherParams Additional parameters
62
- */
63
- this.taskDone = (message, ...otherParams) => this._taskDone(message, otherParams);
64
- /**
65
- * Logs message and data with the level=warn
66
- * @param message The message
67
- * @param otherParams Additional parameters
68
- */
69
- this.warn = (message, ...otherParams) => this._warn(message, otherParams);
70
- }
71
- setLevel(l) {
72
- this._level = l;
73
- return this;
74
- }
75
- get isProductionMode() {
76
- return !this.developmentMode;
77
- }
78
- setProductionMode(productionMode) {
79
- this.developmentMode = !productionMode;
80
- return this;
81
- }
82
- mute() {
83
- this.isMuted = true;
84
- return this;
85
- }
86
- onlyWhen(expression) {
87
- if (typeof expression === 'function') {
88
- this.isMuted = !expression();
89
- }
90
- else if (typeof expression === 'boolean') {
91
- this.isMuted = !expression;
92
- }
93
- }
94
- _data(name, ...data) {
95
- if (this.isMuted)
96
- return this;
97
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
98
- && !Helpers.contain(this.allowed, Level.DATA))
99
- return this;
100
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.DATA)) {
101
- // @ts-ignore
102
- Display.msg.apply(void 0, [
103
- name,
104
- ...data,
105
- this.name,
106
- this.color,
107
- Level.DATA,
108
- this.fixedWidth,
109
- this.isProductionMode,
110
- ]);
111
- }
112
- return this;
113
- }
114
- _error(name, ...data) {
115
- if (this.isMuted)
116
- return this;
117
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
118
- && !Helpers.contain(this.allowed, Level.ERROR))
119
- return this;
120
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.ERROR)) {
121
- // @ts-ignore
122
- Display.msg.apply(void 0, [
123
- name,
124
- ...data,
125
- this.name,
126
- this.color,
127
- Level.ERROR,
128
- this.fixedWidth,
129
- this.isProductionMode,
130
- ]);
131
- }
132
- return this;
133
- }
134
- _info(name, ...data) {
135
- if (this.isMuted)
136
- return this;
137
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
138
- && !Helpers.contain(this.allowed, Level.INFO))
139
- return this;
140
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.INFO)) {
141
- // @ts-ignore
142
- Display.msg.apply(void 0, [
143
- name,
144
- ...data,
145
- this.name,
146
- this.color,
147
- Level.INFO,
148
- this.fixedWidth,
149
- this.isProductionMode,
150
- ]);
151
- }
152
- return this;
153
- }
154
- _success(name, ...data) {
155
- if (this.isMuted)
156
- return this;
157
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
158
- && !Helpers.contain(this.allowed, Level.SUCCESS))
159
- return this;
160
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.SUCCESS)) {
161
- // @ts-ignore
162
- Display.msg.apply(void 0, [
163
- name,
164
- ...data,
165
- this.name,
166
- this.color,
167
- Level.SUCCESS,
168
- this.fixedWidth,
169
- this.isProductionMode,
170
- ]);
171
- }
172
- return this;
173
- }
174
- _taskStarted(name, ...data) {
175
- if (this.isMuted)
176
- return this;
177
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
178
- && !Helpers.contain(this.allowed, Level.TASK_STARTED))
179
- return this;
180
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.TASK_STARTED)) {
181
- // @ts-ignore
182
- Display.msg.apply(void 0, [
183
- name,
184
- ...data,
185
- this.name,
186
- this.color,
187
- Level.TASK_STARTED,
188
- this.fixedWidth,
189
- this.isProductionMode,
190
- ]);
191
- }
192
- return this;
193
- }
194
- _taskDone(name, ...data) {
195
- if (this.isMuted)
196
- return this;
197
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
198
- && !Helpers.contain(this.allowed, Level.TASK_DONE))
199
- return this;
200
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.TASK_DONE)) {
201
- // @ts-ignore
202
- Display.msg.apply(void 0, [
203
- name,
204
- ...data,
205
- this.name,
206
- this.color,
207
- Level.TASK_DONE,
208
- this.fixedWidth,
209
- this.isProductionMode,
210
- ]);
211
- }
212
- return this;
213
- }
214
- _warn(name, ...data) {
215
- if (this.isMuted)
216
- return this;
217
- if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
218
- && !Helpers.contain(this.allowed, Level.WARN))
219
- return this;
220
- if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.WARN)) {
221
- // @ts-ignore
222
- Display.msg.apply(void 0, [
223
- name,
224
- ...data,
225
- this.name,
226
- this.color,
227
- Level.WARN,
228
- this.fixedWidth,
229
- this.isProductionMode,
230
- ]);
231
- }
232
- return this;
233
- }
234
- }
235
- ;
236
- ({}); // @--end-of-file-for-module=ng2-logger lib/logger.ts
1
+ import { Level } from './level';
2
+ import { Display } from './display';
3
+ import { Helpers } from 'tnp-core/websql';
4
+ export class Logger {
5
+ constructor(name, color, developmentMode, allowed, isMuted, fixedWidth) {
6
+ this.name = name;
7
+ this.color = color;
8
+ this.developmentMode = developmentMode;
9
+ this.allowed = allowed;
10
+ this.isMuted = isMuted;
11
+ this.fixedWidth = fixedWidth;
12
+ /** @deprecated Use data(...)
13
+ * @see data
14
+ */
15
+ this.d = (name, ...data) => this._data(name, data);
16
+ /** @deprecated Use error(...)
17
+ * @see error
18
+ */
19
+ this.er = (name, ...data) => this._error(name, data);
20
+ /** @deprecated Use info(...)
21
+ * @see info
22
+ */
23
+ this.i = (name, ...data) => this._info(name, data);
24
+ /** @deprecated Use warn(...)
25
+ * @see warn
26
+ */
27
+ this.w = (name, ...data) => this._warn(name, data);
28
+ /**
29
+ * Logs message and data with the level=data
30
+ * @param message The message
31
+ * @param otherParams Additional parameters
32
+ */
33
+ this.data = (message, ...otherParams) => { return this._data(message, otherParams); };
34
+ /**
35
+ * Logs message and data with the level=error
36
+ * @param message The message
37
+ * @param otherParams Additional parameters
38
+ */
39
+ this.error = (message, ...otherParams) => this._error(message, otherParams);
40
+ /**
41
+ * Logs message and data with the level=info
42
+ * @param message The message
43
+ * @param otherParams Additional parameters
44
+ */
45
+ this.info = (message, ...otherParams) => this._info(message, otherParams);
46
+ /**
47
+ * Logs message and data with the level=success
48
+ * @param message The message
49
+ * @param otherParams Additional parameters
50
+ */
51
+ this.success = (message, ...otherParams) => this._success(message, otherParams);
52
+ /**
53
+ * Logs message and data with the level=taskStarted
54
+ * @param message The message
55
+ * @param otherParams Additional parameters
56
+ */
57
+ this.taskStarted = (message, ...otherParams) => this._taskStarted(message, otherParams);
58
+ /**
59
+ * Logs message and data with the level=taskDone
60
+ * @param message The message
61
+ * @param otherParams Additional parameters
62
+ */
63
+ this.taskDone = (message, ...otherParams) => this._taskDone(message, otherParams);
64
+ /**
65
+ * Logs message and data with the level=warn
66
+ * @param message The message
67
+ * @param otherParams Additional parameters
68
+ */
69
+ this.warn = (message, ...otherParams) => this._warn(message, otherParams);
70
+ }
71
+ setLevel(l) {
72
+ this._level = l;
73
+ return this;
74
+ }
75
+ get isProductionMode() {
76
+ return !this.developmentMode;
77
+ }
78
+ setProductionMode(productionMode) {
79
+ this.developmentMode = !productionMode;
80
+ return this;
81
+ }
82
+ mute() {
83
+ this.isMuted = true;
84
+ return this;
85
+ }
86
+ onlyWhen(expression) {
87
+ if (typeof expression === 'function') {
88
+ this.isMuted = !expression();
89
+ }
90
+ else if (typeof expression === 'boolean') {
91
+ this.isMuted = !expression;
92
+ }
93
+ }
94
+ _data(name, ...data) {
95
+ if (this.isMuted)
96
+ return this;
97
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
98
+ && !Helpers.contain(this.allowed, Level.DATA))
99
+ return this;
100
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.DATA)) {
101
+ // @ts-ignore
102
+ Display.msg.apply(void 0, [
103
+ name,
104
+ ...data,
105
+ this.name,
106
+ this.color,
107
+ Level.DATA,
108
+ this.fixedWidth,
109
+ this.isProductionMode,
110
+ ]);
111
+ }
112
+ return this;
113
+ }
114
+ _error(name, ...data) {
115
+ if (this.isMuted)
116
+ return this;
117
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
118
+ && !Helpers.contain(this.allowed, Level.ERROR))
119
+ return this;
120
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.ERROR)) {
121
+ // @ts-ignore
122
+ Display.msg.apply(void 0, [
123
+ name,
124
+ ...data,
125
+ this.name,
126
+ this.color,
127
+ Level.ERROR,
128
+ this.fixedWidth,
129
+ this.isProductionMode,
130
+ ]);
131
+ }
132
+ return this;
133
+ }
134
+ _info(name, ...data) {
135
+ if (this.isMuted)
136
+ return this;
137
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
138
+ && !Helpers.contain(this.allowed, Level.INFO))
139
+ return this;
140
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.INFO)) {
141
+ // @ts-ignore
142
+ Display.msg.apply(void 0, [
143
+ name,
144
+ ...data,
145
+ this.name,
146
+ this.color,
147
+ Level.INFO,
148
+ this.fixedWidth,
149
+ this.isProductionMode,
150
+ ]);
151
+ }
152
+ return this;
153
+ }
154
+ _success(name, ...data) {
155
+ if (this.isMuted)
156
+ return this;
157
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
158
+ && !Helpers.contain(this.allowed, Level.SUCCESS))
159
+ return this;
160
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.SUCCESS)) {
161
+ // @ts-ignore
162
+ Display.msg.apply(void 0, [
163
+ name,
164
+ ...data,
165
+ this.name,
166
+ this.color,
167
+ Level.SUCCESS,
168
+ this.fixedWidth,
169
+ this.isProductionMode,
170
+ ]);
171
+ }
172
+ return this;
173
+ }
174
+ _taskStarted(name, ...data) {
175
+ if (this.isMuted)
176
+ return this;
177
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
178
+ && !Helpers.contain(this.allowed, Level.TASK_STARTED))
179
+ return this;
180
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.TASK_STARTED)) {
181
+ // @ts-ignore
182
+ Display.msg.apply(void 0, [
183
+ name,
184
+ ...data,
185
+ this.name,
186
+ this.color,
187
+ Level.TASK_STARTED,
188
+ this.fixedWidth,
189
+ this.isProductionMode,
190
+ ]);
191
+ }
192
+ return this;
193
+ }
194
+ _taskDone(name, ...data) {
195
+ if (this.isMuted)
196
+ return this;
197
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
198
+ && !Helpers.contain(this.allowed, Level.TASK_DONE))
199
+ return this;
200
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.TASK_DONE)) {
201
+ // @ts-ignore
202
+ Display.msg.apply(void 0, [
203
+ name,
204
+ ...data,
205
+ this.name,
206
+ this.color,
207
+ Level.TASK_DONE,
208
+ this.fixedWidth,
209
+ this.isProductionMode,
210
+ ]);
211
+ }
212
+ return this;
213
+ }
214
+ _warn(name, ...data) {
215
+ if (this.isMuted)
216
+ return this;
217
+ if (this.allowed.length >= 1 && Helpers.contain(this.allowed, Level.__NOTHING)
218
+ && !Helpers.contain(this.allowed, Level.WARN))
219
+ return this;
220
+ if (this.allowed.length === 0 || Helpers.contain(this.allowed, Level.WARN)) {
221
+ // @ts-ignore
222
+ Display.msg.apply(void 0, [
223
+ name,
224
+ ...data,
225
+ this.name,
226
+ this.color,
227
+ Level.WARN,
228
+ this.fixedWidth,
229
+ this.isProductionMode,
230
+ ]);
231
+ }
232
+ return this;
233
+ }
234
+ }
235
+ ;
236
+ ({}); // @--end-of-file-for-module=ng2-logger lib/logger.ts
237
237
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvbmcyLWxvZ2dlci9wcm9qZWN0cy9uZzItbG9nZ2VyL3NyYy9saWIvbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUMsTUFBTSxPQUFPLE1BQU07SUFzQmpCLFlBQ1UsSUFBWSxFQUNiLEtBQWEsRUFDWixlQUF3QixFQUN4QixPQUFnQixFQUNoQixPQUFnQixFQUNqQixVQUE4QjtRQUw3QixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ2IsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNaLG9CQUFlLEdBQWYsZUFBZSxDQUFTO1FBQ3hCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQXlKdkM7O1VBRUU7UUFDRixNQUFDLEdBQUcsQ0FBQyxJQUFrQixFQUFFLEdBQUcsSUFBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuRTs7VUFFRTtRQUVGLE9BQUUsR0FBRyxDQUFDLElBQWtCLEVBQUUsR0FBRyxJQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJFOztVQUVFO1FBQ0YsTUFBQyxHQUFHLENBQUMsSUFBa0IsRUFBRSxHQUFHLElBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFbkU7O1VBRUU7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TztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDO2VBQ3pFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUU3RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzFFLGFBQWE7WUFDYixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDeEIsSUFBSTtnQkFDSixHQUFHLElBQUk7Z0JBQ1AsSUFBSSxDQUFDLElBQUk7Z0JBQ1QsSUFBSSxDQUFDLEtBQUs7Z0JBQ1YsS0FBSyxDQUFDLElBQUk7Z0JBQ1YsSUFBSSxDQUFDLFVBQVU7Z0JBQ2YsSUFBSSxDQUFDLGdCQUFnQjthQUN0QixDQUFDLENBQUE7U0FDSDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQTBFRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscURBQXFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGV2ZWwgfSBmcm9tICcuL2xldmVsJztcbmltcG9ydCB7IERpc3BsYXkgfSBmcm9tICcuL2Rpc3BsYXknO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5cbmV4cG9ydCBjbGFzcyBMb2dnZXIge1xuXG4gIHByaXZhdGUgX2xldmVsOiBMZXZlbDtcbiAgcHVibGljIHNldExldmVsKGw6IExldmVsKSB7XG4gICAgdGhpcy5fbGV2ZWwgPSBsO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1Byb2R1Y3Rpb25Nb2RlKCkge1xuICAgIHJldHVybiAhdGhpcy5kZXZlbG9wbWVudE1vZGU7XG4gIH1cblxuICBwdWJsaWMgc2V0UHJvZHVjdGlvbk1vZGUocHJvZHVjdGlvbk1vZGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRldmVsb3BtZW50TW9kZSA9ICFwcm9kdWN0aW9uTW9kZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBtdXRlKCkge1xuICAgIHRoaXMuaXNNdXRlZCA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgY29sb3I6IHN0cmluZyxcbiAgICBwcml2YXRlIGRldmVsb3BtZW50TW9kZTogYm9vbGVhbixcbiAgICBwcml2YXRlIGFsbG93ZWQ6IExldmVsW10sXG4gICAgcHJpdmF0ZSBpc011dGVkOiBib29sZWFuLFxuICAgIHB1YmxpYyBmaXhlZFdpZHRoOiBudW1iZXIgfCB1bmRlZmluZWRcbiAgKSB7IH1cblxuICBvbmx5V2hlbihleHByZXNzaW9uOiAoKCkgPT4gYm9vbGVhbikgfCBib29sZWFuKSB7XG4gICAgaWYgKHR5cGVvZiBleHByZXNzaW9uID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLmlzTXV0ZWQgPSAhZXhwcmVzc2lvbigpXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZXhwcmVzc2lvbiA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aGlzLmlzTXV0ZWQgPSAhZXhwcmVzc2lvbjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kYXRhKG5hbWU6IHN0cmluZywgLi4uZGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5pc011dGVkKSByZXR1cm4gdGhpcztcbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA+PSAxICYmIEhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLl9fTk9USElORylcbiAgICAgICYmICFIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5EQVRBKSkgcmV0dXJuIHRoaXM7XG5cbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5EQVRBKSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgRGlzcGxheS5tc2cuYXBwbHkodm9pZCAwLCBbXG4gICAgICAgIG5hbWUsXG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHRoaXMubmFtZSxcbiAgICAgICAgdGhpcy5jb2xvcixcbiAgICAgICAgTGV2ZWwuREFUQSxcbiAgICAgICAgdGhpcy5maXhlZFdpZHRoLFxuICAgICAgICB0aGlzLmlzUHJvZHVjdGlvbk1vZGUsXG4gICAgICBdKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuXG4gIHByaXZhdGUgX2Vycm9yKG5hbWU6IHN0cmluZywgLi4uZGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5pc011dGVkKSByZXR1cm4gdGhpcztcbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA+PSAxICYmIEhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLl9fTk9USElORylcbiAgICAgICYmICFIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5FUlJPUikpIHJldHVybiB0aGlzO1xuXG4gICAgaWYgKHRoaXMuYWxsb3dlZC5sZW5ndGggPT09IDAgfHwgSGVscGVycy5jb250YWluKHRoaXMuYWxsb3dlZCwgTGV2ZWwuRVJST1IpKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBEaXNwbGF5Lm1zZy5hcHBseSh2b2lkIDAsIFtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgdGhpcy5uYW1lLFxuICAgICAgICB0aGlzLmNvbG9yLFxuICAgICAgICBMZXZlbC5FUlJPUixcbiAgICAgICAgdGhpcy5maXhlZFdpZHRoLFxuICAgICAgICB0aGlzLmlzUHJvZHVjdGlvbk1vZGUsXG4gICAgICBdKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIF9pbmZvKG5hbWU6IHN0cmluZywgLi4uZGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5pc011dGVkKSByZXR1cm4gdGhpcztcbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA+PSAxICYmIEhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLl9fTk9USElORylcbiAgICAgICYmICFIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5JTkZPKSkgcmV0dXJuIHRoaXM7XG5cbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5JTkZPKSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgRGlzcGxheS5tc2cuYXBwbHkodm9pZCAwLCBbXG4gICAgICAgIG5hbWUsXG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHRoaXMubmFtZSxcbiAgICAgICAgdGhpcy5jb2xvcixcbiAgICAgICAgTGV2ZWwuSU5GTyxcbiAgICAgICAgdGhpcy5maXhlZFdpZHRoLFxuICAgICAgICB0aGlzLmlzUHJvZHVjdGlvbk1vZGUsXG4gICAgICBdKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIF9zdWNjZXNzKG5hbWU6IHN0cmluZywgLi4uZGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5pc011dGVkKSByZXR1cm4gdGhpcztcbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA+PSAxICYmIEhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLl9fTk9USElORylcbiAgICAgICYmICFIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5TVUNDRVNTKSkgcmV0dXJuIHRoaXM7XG5cbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5TVUNDRVNTKSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgRGlzcGxheS5tc2cuYXBwbHkodm9pZCAwLCBbXG4gICAgICAgIG5hbWUsXG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHRoaXMubmFtZSxcbiAgICAgICAgdGhpcy5jb2xvcixcbiAgICAgICAgTGV2ZWwuU1VDQ0VTUyxcbiAgICAgICAgdGhpcy5maXhlZFdpZHRoLFxuICAgICAgICB0aGlzLmlzUHJvZHVjdGlvbk1vZGUsXG4gICAgICBdKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIF90YXNrU3RhcnRlZChuYW1lOiBzdHJpbmcsIC4uLmRhdGE6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuaXNNdXRlZCkgcmV0dXJuIHRoaXM7XG4gICAgaWYgKHRoaXMuYWxsb3dlZC5sZW5ndGggPj0gMSAmJiBIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5fX05PVEhJTkcpXG4gICAgICAmJiAhSGVscGVycy5jb250YWluKHRoaXMuYWxsb3dlZCwgTGV2ZWwuVEFTS19TVEFSVEVEKSkgcmV0dXJuIHRoaXM7XG5cbiAgICBpZiAodGhpcy5hbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBIZWxwZXJzLmNvbnRhaW4odGhpcy5hbGxvd2VkLCBMZXZlbC5UQVNLX1NUQVJURUQpKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBEaXNwbGF5Lm1zZy5hcHBseSh2b2lkIDAsIFtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgdGhpcy5uYW1lLFxuICAgICAgICB0aGlzLmNvbG9yLFxuICAgICAgICBMZXZlbC5UQVNLX1NUQVJURUQsXG4gICAgICAgIHRoaXMuZml4ZWRXaWR0aCxcbiAgICAgICAgdGhpcy5pc1Byb2R1Y3Rpb25Nb2RlLFxuICAgICAgXSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGFza0RvbmUobmFtZTogc3RyaW5nLCAuLi5kYXRhOiBhbnlbXSkge1xuICAgIGlmICh0aGlzLmlzTXV0ZWQpIHJldHVybiB0aGlzO1xuICAgIGlmICh0aGlzLmFsbG93ZWQubGVuZ3RoID49IDEgJiYgSGVscGVycy5jb250YWluKHRoaXMuYWxsb3dlZCwgTGV2ZWwuX19OT1RISU5HKVxuICAgICAgJiYgIUhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLlRBU0tfRE9ORSkpIHJldHVybiB0aGlzO1xuXG4gICAgaWYgKHRoaXMuYWxsb3dlZC5sZW5ndGggPT09IDAgfHwgSGVscGVycy5jb250YWluKHRoaXMuYWxsb3dlZCwgTGV2ZWwuVEFTS19ET05FKSkge1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgRGlzcGxheS5tc2cuYXBwbHkodm9pZCAwLCBbXG4gICAgICAgIG5hbWUsXG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHRoaXMubmFtZSxcbiAgICAgICAgdGhpcy5jb2xvcixcbiAgICAgICAgTGV2ZWwuVEFTS19ET05FLFxuICAgICAgICB0aGlzLmZpeGVkV2lkdGgsXG4gICAgICAgIHRoaXMuaXNQcm9kdWN0aW9uTW9kZSxcbiAgICAgIF0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgX3dhcm4obmFtZTogc3RyaW5nLCAuLi5kYXRhOiBhbnlbXSkge1xuICAgIGlmICh0aGlzLmlzTXV0ZWQpIHJldHVybiB0aGlzO1xuICAgIGlmICh0aGlzLmFsbG93ZWQubGVuZ3RoID49IDEgJiYgSGVscGVycy5jb250YWluKHRoaXMuYWxsb3dlZCwgTGV2ZWwuX19OT1RISU5HKVxuICAgICAgJiYgIUhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLldBUk4pKSByZXR1cm4gdGhpcztcblxuICAgIGlmICh0aGlzLmFsbG93ZWQubGVuZ3RoID09PSAwIHx8IEhlbHBlcnMuY29udGFpbih0aGlzLmFsbG93ZWQsIExldmVsLldBUk4pKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBEaXNwbGF5Lm1zZy5hcHBseSh2b2lkIDAsIFtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgdGhpcy5uYW1lLFxuICAgICAgICB0aGlzLmNvbG9yLFxuICAgICAgICBMZXZlbC5XQVJOLFxuICAgICAgICB0aGlzLmZpeGVkV2lkdGgsXG4gICAgICAgIHRoaXMuaXNQcm9kdWN0aW9uTW9kZSxcbiAgICAgIF0pXG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cblxuICAvKiogQGRlcHJlY2F0ZWQgVXNlIGRhdGEoLi4uKVxuICAgKiBAc2VlIGRhdGFcbiAgKi9cbiAgZCA9IChuYW1lOiBzdHJpbmcgfCBhbnksIC4uLmRhdGE6IGFueVtdKSA9PiB0aGlzLl9kYXRhKG5hbWUsIGRhdGEpO1xuXG4gIC8qKiBAZGVwcmVjYXRlZCBVc2UgZXJyb3IoLi4uKVxuICAgKiBAc2VlIGVycm9yXG4gICovXG5cbiAgZXIgPSAobmFtZTogc3RyaW5nIHwgYW55LCAuLi5kYXRhOiBhbnlbXSkgPT4gdGhpcy5fZXJyb3IobmFtZSwgZGF0YSk7XG5cbiAgLyoqIEBkZXByZWNhdGVkIFVzZSBpbmZvKC4uLilcbiAgICogQHNlZSBpbmZvXG4gICovXG4gIGkgPSAobmFtZTogc3RyaW5nIHwgYW55LCAuLi5kYXRhOiBhbnlbXSkgPT4gdGhpcy5faW5mbyhuYW1lLCBkYXRhKTtcblxuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHdhcm4oLi4uKVxuICAgKiBAc2VlIHdhcm5cbiAgKi9cbiAgdyA9IChuYW1lOiBzdHJpbmcgfCBhbnksIC4uLmRhdGE6IGFueVtdKSA9PiB0aGlzLl93YXJuKG5hbWUsIGRhdGEpO1xuXG4gIC8qKlxuICAgKiBMb2dzIG1lc3NhZ2UgYW5kIGRhdGEgd2l0aCB0aGUgbGV2ZWw9ZGF0YVxuICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gb3RoZXJQYXJhbXMgQWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAqL1xuICBkYXRhID0gKG1lc3NhZ2U6IHN0cmluZywgLi4ub3RoZXJQYXJhbXM6IGFueVtdKSA9PiB7IHJldHVybiB0aGlzLl9kYXRhKG1lc3NhZ2UsIG90aGVyUGFyYW1zKTsgfTtcblxuICAvKipcbiAgICogTG9ncyBtZXNzYWdlIGFuZCBkYXRhIHdpdGggdGhlIGxldmVsPWVycm9yXG4gICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlXG4gICAqIEBwYXJhbSBvdGhlclBhcmFtcyBBZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICovXG4gIGVycm9yID0gKG1lc3NhZ2U6IHN0cmluZywgLi4ub3RoZXJQYXJhbXM6IGFueVtdKSA9PiB0aGlzLl9lcnJvcihtZXNzYWdlLCBvdGhlclBhcmFtcyk7XG5cbiAgLyoqXG4gICAqIExvZ3MgbWVzc2FnZSBhbmQgZGF0YSB3aXRoIHRoZSBsZXZlbD1pbmZvXG4gICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlXG4gICAqIEBwYXJhbSBvdGhlclBhcmFtcyBBZGRpdGlvbmFsIHBhcmFtZXRlcnNcbiAgICovXG4gIGluZm8gPSAobWVzc2FnZTogc3RyaW5nLCAuLi5vdGhlclBhcmFtczogYW55W10pID0+IHRoaXMuX2luZm8obWVzc2FnZSwgb3RoZXJQYXJhbXMpO1xuXG4gIC8qKlxuICAgKiBMb2dzIG1lc3NhZ2UgYW5kIGRhdGEgd2l0aCB0aGUgbGV2ZWw9c3VjY2Vzc1xuICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gb3RoZXJQYXJhbXMgQWRkaXRpb25hbCBwYXJhbWV0ZXJzXG4gICAqL1xuICBzdWNjZXNzID0gKG1lc3NhZ2U6IHN0cmluZywgLi4ub3RoZXJQYXJhbXM6IGFueVtdKSA9PiB0aGlzLl9zdWNjZXNzKG1lc3NhZ2UsIG90aGVyUGFyYW1zKTtcblxuXG4gIC8qKlxuICAqIExvZ3MgbWVzc2FnZSBhbmQgZGF0YSB3aXRoIHRoZSBsZXZlbD10YXNrU3RhcnRlZFxuICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlXG4gICogQHBhcmFtIG90aGVyUGFyYW1zIEFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAqL1xuICB0YXNrU3RhcnRlZCA9IChtZXNzYWdlOiBzdHJpbmcsIC4uLm90aGVyUGFyYW1zOiBhbnlbXSkgPT4gdGhpcy5fdGFza1N0YXJ0ZWQobWVzc2FnZSwgb3RoZXJQYXJhbXMpO1xuXG4gIC8qKlxuICAqIExvZ3MgbWVzc2FnZSBhbmQgZGF0YSB3aXRoIHRoZSBsZXZlbD10YXNrRG9uZVxuICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBtZXNzYWdlXG4gICogQHBhcmFtIG90aGVyUGFyYW1zIEFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAqL1xuICB0YXNrRG9uZSA9IChtZXNzYWdlPzogc3RyaW5nLCAuLi5vdGhlclBhcmFtczogYW55W10pID0+IHRoaXMuX3Rhc2tEb25lKG1lc3NhZ2UsIG90aGVyUGFyYW1zKTtcblxuICAvKipcbiAgICogTG9ncyBtZXNzYWdlIGFuZCBkYXRhIHdpdGggdGhlIGxldmVsPXdhcm5cbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIG90aGVyUGFyYW1zIEFkZGl0aW9uYWwgcGFyYW1ldGVyc1xuICAgKi9cbiAgd2FybiA9IChtZXNzYWdlOiBzdHJpbmcsIC4uLm90aGVyUGFyYW1zOiBhbnlbXSkgPT4gdGhpcy5fd2FybihtZXNzYWdlLCBvdGhlclBhcmFtcyk7XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPW5nMi1sb2dnZXIgbGliL2xvZ2dlci50cyJdfQ==
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmcyLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUtd2Vic3FsL25nMi1sb2dnZXIvcHJvamVjdHMvbmcyLWxvZ2dlci9zcmMvbmcyLWxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,2 +1,2 @@
1
- export * from './lib';
1
+ export * from './lib';
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUtd2Vic3FsL25nMi1sb2dnZXIvcHJvamVjdHMvbmcyLWxvZ2dlci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliJztcbiJdfQ==