@osovitny/anatoly 1.0.1

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 (98) hide show
  1. package/README.md +0 -0
  2. package/bundles/osovitny-anatoly.umd.js +2065 -0
  3. package/bundles/osovitny-anatoly.umd.js.map +1 -0
  4. package/bundles/osovitny-anatoly.umd.min.js +16 -0
  5. package/bundles/osovitny-anatoly.umd.min.js.map +1 -0
  6. package/esm2015/lib/billing/billing.module.js +62 -0
  7. package/esm2015/lib/billing/components/buyaccess/buyaccess-button.component.js +123 -0
  8. package/esm2015/lib/billing/components/subscriptions/subscribe-plan-button.component.js +97 -0
  9. package/esm2015/lib/billing/components/subscriptions/upgrade-plan-button.component.js +84 -0
  10. package/esm2015/lib/billing/index.js +6 -0
  11. package/esm2015/lib/billing/services/base-billing-api.service.js +116 -0
  12. package/esm2015/lib/core/consts.js +15 -0
  13. package/esm2015/lib/core/core.module.js +47 -0
  14. package/esm2015/lib/core/index.js +12 -0
  15. package/esm2015/lib/core/services/appcontext.service.js +123 -0
  16. package/esm2015/lib/core/services/base-api.service.js +154 -0
  17. package/esm2015/lib/core/services/base-go.service.js +58 -0
  18. package/esm2015/lib/core/services/base-gridedit.service.js +202 -0
  19. package/esm2015/lib/identity/components/signin-button.component.js +38 -0
  20. package/esm2015/lib/identity/components/signout-button.component.js +38 -0
  21. package/esm2015/lib/identity/components/signup-button.component.js +39 -0
  22. package/esm2015/lib/identity/identity.module.js +43 -0
  23. package/esm2015/lib/identity/index.js +6 -0
  24. package/esm2015/lib/ui/components/base-edit.component.js +102 -0
  25. package/esm2015/lib/ui/components/base.component.js +57 -0
  26. package/esm2015/lib/ui/components/content-header/content-header.component.js +44 -0
  27. package/esm2015/lib/ui/components/html-editor/html-editor.component.js +267 -0
  28. package/esm2015/lib/ui/components/validation/form-validation-summary.component.js +51 -0
  29. package/esm2015/lib/ui/components/validation/item-validation-summary.component.js +45 -0
  30. package/esm2015/lib/ui/components/validation/validation-summary.component.js +93 -0
  31. package/esm2015/lib/ui/index.js +11 -0
  32. package/esm2015/lib/ui/ui.module.js +72 -0
  33. package/esm2015/osovitny-anatoly.js +9 -0
  34. package/esm2015/public-api.js +9 -0
  35. package/esm5/lib/billing/billing.module.js +66 -0
  36. package/esm5/lib/billing/components/buyaccess/buyaccess-button.component.js +128 -0
  37. package/esm5/lib/billing/components/subscriptions/subscribe-plan-button.component.js +100 -0
  38. package/esm5/lib/billing/components/subscriptions/upgrade-plan-button.component.js +86 -0
  39. package/esm5/lib/billing/index.js +6 -0
  40. package/esm5/lib/billing/services/base-billing-api.service.js +135 -0
  41. package/esm5/lib/core/consts.js +15 -0
  42. package/esm5/lib/core/core.module.js +51 -0
  43. package/esm5/lib/core/index.js +12 -0
  44. package/esm5/lib/core/services/appcontext.service.js +140 -0
  45. package/esm5/lib/core/services/base-api.service.js +205 -0
  46. package/esm5/lib/core/services/base-go.service.js +59 -0
  47. package/esm5/lib/core/services/base-gridedit.service.js +240 -0
  48. package/esm5/lib/identity/components/signin-button.component.js +41 -0
  49. package/esm5/lib/identity/components/signout-button.component.js +41 -0
  50. package/esm5/lib/identity/components/signup-button.component.js +41 -0
  51. package/esm5/lib/identity/identity.module.js +47 -0
  52. package/esm5/lib/identity/index.js +6 -0
  53. package/esm5/lib/ui/components/base-edit.component.js +137 -0
  54. package/esm5/lib/ui/components/base.component.js +72 -0
  55. package/esm5/lib/ui/components/content-header/content-header.component.js +51 -0
  56. package/esm5/lib/ui/components/html-editor/html-editor.component.js +309 -0
  57. package/esm5/lib/ui/components/validation/form-validation-summary.component.js +59 -0
  58. package/esm5/lib/ui/components/validation/item-validation-summary.component.js +49 -0
  59. package/esm5/lib/ui/components/validation/validation-summary.component.js +106 -0
  60. package/esm5/lib/ui/index.js +11 -0
  61. package/esm5/lib/ui/ui.module.js +76 -0
  62. package/esm5/osovitny-anatoly.js +9 -0
  63. package/esm5/public-api.js +9 -0
  64. package/fesm2015/osovitny-anatoly.js +1622 -0
  65. package/fesm2015/osovitny-anatoly.js.map +1 -0
  66. package/fesm5/osovitny-anatoly.js +1877 -0
  67. package/fesm5/osovitny-anatoly.js.map +1 -0
  68. package/lib/billing/billing.module.d.ts +2 -0
  69. package/lib/billing/components/buyaccess/buyaccess-button.component.d.ts +16 -0
  70. package/lib/billing/components/subscriptions/subscribe-plan-button.component.d.ts +15 -0
  71. package/lib/billing/components/subscriptions/upgrade-plan-button.component.d.ts +9 -0
  72. package/lib/billing/index.d.ts +1 -0
  73. package/lib/billing/services/base-billing-api.service.d.ts +9 -0
  74. package/lib/core/consts.d.ts +5 -0
  75. package/lib/core/core.module.d.ts +2 -0
  76. package/lib/core/index.d.ts +5 -0
  77. package/lib/core/services/appcontext.service.d.ts +14 -0
  78. package/lib/core/services/base-api.service.d.ts +18 -0
  79. package/lib/core/services/base-go.service.d.ts +7 -0
  80. package/lib/core/services/base-gridedit.service.d.ts +19 -0
  81. package/lib/identity/components/signin-button.component.d.ts +4 -0
  82. package/lib/identity/components/signout-button.component.d.ts +4 -0
  83. package/lib/identity/components/signup-button.component.d.ts +4 -0
  84. package/lib/identity/identity.module.d.ts +2 -0
  85. package/lib/identity/index.d.ts +1 -0
  86. package/lib/ui/components/base-edit.component.d.ts +14 -0
  87. package/lib/ui/components/base.component.d.ts +7 -0
  88. package/lib/ui/components/content-header/content-header.component.d.ts +5 -0
  89. package/lib/ui/components/html-editor/html-editor.component.d.ts +22 -0
  90. package/lib/ui/components/validation/form-validation-summary.component.d.ts +6 -0
  91. package/lib/ui/components/validation/item-validation-summary.component.d.ts +6 -0
  92. package/lib/ui/components/validation/validation-summary.component.d.ts +6 -0
  93. package/lib/ui/index.d.ts +4 -0
  94. package/lib/ui/ui.module.d.ts +2 -0
  95. package/osovitny-anatoly.d.ts +4 -0
  96. package/osovitny-anatoly.metadata.json +1 -0
  97. package/package.json +22 -0
  98. package/public-api.d.ts +4 -0
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ /*
6
+ <file>
7
+ Authors:
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 23 Apr 2018
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2019 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Component, Input } from '@angular/core';
21
+ var ContentHeaderComponent = /** @class */ (function () {
22
+ function ContentHeaderComponent() {
23
+ }
24
+ /**
25
+ * @return {?}
26
+ */
27
+ ContentHeaderComponent.prototype.ngOnInit = /**
28
+ * @return {?}
29
+ */
30
+ function () {
31
+ if (this.title == null) {
32
+ this.title = '';
33
+ }
34
+ };
35
+ ContentHeaderComponent.decorators = [
36
+ { type: Component, args: [{
37
+ selector: 'anatoly-content-header',
38
+ template: "<h2 class=\"page-header\">\r\n {{title}}\r\n <!--<small>Optional {{title}}</small>-->\r\n</h2>\r\n"
39
+ }] }
40
+ ];
41
+ ContentHeaderComponent.propDecorators = {
42
+ title: [{ type: Input }]
43
+ };
44
+ return ContentHeaderComponent;
45
+ }());
46
+ export { ContentHeaderComponent };
47
+ if (false) {
48
+ /** @type {?} */
49
+ ContentHeaderComponent.prototype.title;
50
+ }
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG9zb3ZpdG55L2FuYXRvbHkvIiwic291cmNlcyI6WyJsaWIvdWkvY29tcG9uZW50cy9jb250ZW50LWhlYWRlci9jb250ZW50LWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdCQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RDtJQUFBO0lBYUEsQ0FBQzs7OztJQUxDLHlDQUFROzs7SUFBUjtRQUNFLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDOztnQkFaRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsZ0hBQThDO2lCQUMvQzs7O3dCQUdFLEtBQUs7O0lBT1IsNkJBQUM7Q0FBQSxBQWJELElBYUM7U0FSWSxzQkFBc0I7OztJQUNqQyx1Q0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBBdXRob3JzOlxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjMgQXByIDIwMThcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxOSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1jb250ZW50LWhlYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRlbnQtaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIENvbnRlbnRIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICh0aGlzLnRpdGxlID09IG51bGwpIHtcclxuICAgICAgICB0aGlzLnRpdGxlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,309 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import * as tslib_1 from "tslib";
6
+ /*
7
+ <file>
8
+ Authors:
9
+ Anatoly Osovitny
10
+ Vadim Osovitny
11
+
12
+ Created:
13
+ 12 Dec 2017
14
+
15
+ Version:
16
+ 1.0
17
+
18
+ Copyright (c) 2016-2019 Osovitny Inc. All rights reserved.
19
+ </file>
20
+ */
21
+ //Node
22
+ import { Component, Input } from '@angular/core';
23
+ //Custom
24
+ import { BaseEditComponent } from '../base-edit.component';
25
+ var HtmlEditorComponent = /** @class */ (function (_super) {
26
+ tslib_1.__extends(HtmlEditorComponent, _super);
27
+ function HtmlEditorComponent() {
28
+ var _this = _super !== null && _super.apply(this, arguments) || this;
29
+ _this._defaultEditorOptions = {
30
+ placeholderText: 'Edit Your Content Here',
31
+ charCounterCount: true,
32
+ heightMin: 100,
33
+ toolbarInline: false,
34
+ toolbarButtons: [
35
+ 'fullscreen', 'bold', 'italic', 'underline', 'strikeThrough', 'subscript', 'superscript', '|',
36
+ 'fontFamily', 'fontSize', 'color', 'inlineStyle', 'paragraphStyle', '|',
37
+ 'paragraphFormat', 'align', 'formatOL', 'formatUL', 'outdent', 'indent', 'quote', '-',
38
+ 'insertLink', 'insertImage', 'insertTable', '|',
39
+ 'emoticons', 'specialCharacters', 'insertHR', 'selectAll', 'clearFormatting', '|',
40
+ 'print', 'help', 'html', '|', 'undo', 'redo'
41
+ ],
42
+ /*
43
+ Upload:
44
+ https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload
45
+ */
46
+ imageUploadURL: '/api/HtmlEditor/UploadImage',
47
+ imageAllowedTypes: ['jpeg', 'jpg', 'png'],
48
+ imageUploadParams: { uploadType: '', uploadParentId: '' },
49
+ //Events
50
+ events: {
51
+ 'image.beforeUpload': (/**
52
+ * @param {?} images
53
+ * @return {?}
54
+ */
55
+ function (images) {
56
+ /** @type {?} */
57
+ var editor = this;
58
+ alert("v3 image.beforeUpload editor.opts.imageUploadParams.uploadType" + editor.opts.imageUploadParams.uploadType);
59
+ })
60
+ }
61
+ };
62
+ _this._editorInitialized = false;
63
+ //General params
64
+ _this.editorId = '';
65
+ _this.editorLabelText = 'Html';
66
+ _this.editorOptions = {};
67
+ //Form based params
68
+ _this.isFormBased = '1';
69
+ _this.editorFormKey = 'html';
70
+ return _this;
71
+ }
72
+ /**
73
+ * @return {?}
74
+ */
75
+ HtmlEditorComponent.prototype.ngOnInit = /**
76
+ * @return {?}
77
+ */
78
+ function () {
79
+ /** @type {?} */
80
+ var opt = this.editorOptions;
81
+ if (typeof this.editorOptions == "string") {
82
+ opt = JSON.parse(this.editorOptions);
83
+ }
84
+ /** @type {?} */
85
+ var newOptions = $.extend({}, this._defaultEditorOptions, opt);
86
+ /** @type {?} */
87
+ var key = ((/** @type {?} */ (window))).__froalaEditor_Key;
88
+ if (key) {
89
+ newOptions = $.extend({}, JSON.parse('{ "key": "' + key + '" }'), newOptions);
90
+ }
91
+ this.options = newOptions;
92
+ };
93
+ /**
94
+ * @return {?}
95
+ */
96
+ HtmlEditorComponent.prototype.ngAfterViewInit = /**
97
+ * @return {?}
98
+ */
99
+ function () {
100
+ this.initializeEditor();
101
+ };
102
+ /**
103
+ * @param {?} control
104
+ * @return {?}
105
+ */
106
+ HtmlEditorComponent.prototype.initializeControl = /**
107
+ * @param {?} control
108
+ * @return {?}
109
+ */
110
+ function (control) {
111
+ this._control = control;
112
+ };
113
+ /**
114
+ * @private
115
+ * @return {?}
116
+ */
117
+ HtmlEditorComponent.prototype.initializeEditor = /**
118
+ * @private
119
+ * @return {?}
120
+ */
121
+ function () {
122
+ if (this._editorInitialized) {
123
+ return;
124
+ }
125
+ if (this._control) {
126
+ this._control.initialize();
127
+ //v2 BEGIN
128
+ /** @type {?} */
129
+ var jQueryEditor = this.getJQueryEditor();
130
+ /** @type {?} */
131
+ var that = this;
132
+ jQueryEditor.on('froalaEditor.image.beforeUpload', (/**
133
+ * @param {?} e
134
+ * @param {?} editor
135
+ * @param {?} images
136
+ * @return {?}
137
+ */
138
+ function (e, editor, images) {
139
+ /** @type {?} */
140
+ var options = that.options;
141
+ editor.opts.imageUploadParams.uploadType = options.imageUploadParams.uploadType;
142
+ editor.opts.imageUploadParams.uploadParentId = options.imageUploadParams.uploadParentId;
143
+ }));
144
+ //v2 END
145
+ this._editorInitialized = true;
146
+ }
147
+ };
148
+ /**
149
+ * @private
150
+ * @return {?}
151
+ */
152
+ HtmlEditorComponent.prototype.getJQueryEditor = /**
153
+ * @private
154
+ * @return {?}
155
+ */
156
+ function () {
157
+ /** @type {?} */
158
+ var jQueryEditor = $('.htmleditor-' + this.editorId);
159
+ return jQueryEditor;
160
+ };
161
+ /**
162
+ * @private
163
+ * @return {?}
164
+ */
165
+ HtmlEditorComponent.prototype.getEditor = /**
166
+ * @private
167
+ * @return {?}
168
+ */
169
+ function () {
170
+ if (this._control)
171
+ return this._control.getEditor();
172
+ return null;
173
+ };
174
+ //Public Funcs
175
+ //Public Funcs
176
+ /**
177
+ * @param {?} uploadType
178
+ * @param {?} uploadParentId
179
+ * @return {?}
180
+ */
181
+ HtmlEditorComponent.prototype.setUploadParams =
182
+ //Public Funcs
183
+ /**
184
+ * @param {?} uploadType
185
+ * @param {?} uploadParentId
186
+ * @return {?}
187
+ */
188
+ function (uploadType, uploadParentId) {
189
+ /** @type {?} */
190
+ var that = this;
191
+ /** @type {?} */
192
+ var timeOut = 1000;
193
+ if (this._editorInitialized) {
194
+ timeOut = 0;
195
+ }
196
+ setTimeout((/**
197
+ * @return {?}
198
+ */
199
+ function () {
200
+ /** @type {?} */
201
+ var newOptions = { imageUploadParams: { uploadType: '', uploadParentId: '' } };
202
+ newOptions.imageUploadParams.uploadType = uploadType;
203
+ newOptions.imageUploadParams.uploadParentId = uploadParentId;
204
+ that.options = $.extend({}, that.options, newOptions);
205
+ }), timeOut);
206
+ };
207
+ /**
208
+ * @param {?} content
209
+ * @return {?}
210
+ */
211
+ HtmlEditorComponent.prototype.setHtml = /**
212
+ * @param {?} content
213
+ * @return {?}
214
+ */
215
+ function (content) {
216
+ if (this.isFormBased == "1") {
217
+ return;
218
+ }
219
+ this.initializeEditor();
220
+ //v2
221
+ /** @type {?} */
222
+ var editor = this.getJQueryEditor();
223
+ if (typeof (editor) == "undefined" || editor == null) {
224
+ return;
225
+ }
226
+ editor.froalaEditor('html.set', content);
227
+ /*
228
+ //v3
229
+ var editor = this.getEditor();
230
+ if (typeof (editor) == "undefined" || editor == null) {
231
+ return;
232
+ }
233
+
234
+ editor.html.set(content);
235
+ */
236
+ };
237
+ /**
238
+ * @return {?}
239
+ */
240
+ HtmlEditorComponent.prototype.getHtml = /**
241
+ * @return {?}
242
+ */
243
+ function () {
244
+ if (this.isFormBased == "1") {
245
+ return;
246
+ }
247
+ //v2
248
+ /** @type {?} */
249
+ var editor = this.getJQueryEditor();
250
+ if (typeof (editor) == "undefined" || editor == null) {
251
+ return "";
252
+ }
253
+ return editor.froalaEditor('html.get');
254
+ /*
255
+ //v3
256
+ var editor = this.getEditor();
257
+ if (typeof (editor) == "undefined" || editor == null) {
258
+ return "";
259
+ }
260
+
261
+ return editor.html.get(false);
262
+ */
263
+ };
264
+ HtmlEditorComponent.decorators = [
265
+ { type: Component, args: [{
266
+ selector: 'anatoly-html-editor',
267
+ template: "<div [ngSwitch]=\"isFormBased\">\r\n <ng-template ngSwitchCase=\"0\">\r\n <label>{{ editorLabelText }}</label>\r\n <textarea id=\"htmleditor-{{editorId}}\" class=\"htmleditor-{{editorId}}\" \r\n [froalaEditor]=\"options\" (froalaInit)=\"initializeControl($event)\">\r\n </textarea>\r\n </ng-template>\r\n\r\n <ng-template ngSwitchCase=\"1\">\r\n <div [formGroup]=\"formGroup\">\r\n <div class=\"form-group\" [ngClass]=\"{'has-error': isItemInvalid(editorFormKey) }\">\r\n <label class=\"control-label\">{{ editorLabelText }}</label>\r\n <textarea id=\"htmleditor-{{editorId}}\" class=\"htmleditor-{{editorId}}\"\r\n [formControlName]=\"editorFormKey\"\r\n [froalaEditor]=\"options\" (froalaInit)=\"initializeControl($event)\">\r\n </textarea>\r\n <anatoly-item-validation-summary [formGroup]=\"formGroup\"\r\n [formSubmitted]=\"formSubmitted\"\r\n [key]=\"editorFormKey\"\r\n [title]=\"editorLabelText\">\r\n </anatoly-item-validation-summary>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n"
268
+ }] }
269
+ ];
270
+ HtmlEditorComponent.propDecorators = {
271
+ editorId: [{ type: Input }],
272
+ editorLabelText: [{ type: Input }],
273
+ editorOptions: [{ type: Input }],
274
+ isFormBased: [{ type: Input }],
275
+ editorFormKey: [{ type: Input }]
276
+ };
277
+ return HtmlEditorComponent;
278
+ }(BaseEditComponent));
279
+ export { HtmlEditorComponent };
280
+ if (false) {
281
+ /**
282
+ * @type {?}
283
+ * @private
284
+ */
285
+ HtmlEditorComponent.prototype._defaultEditorOptions;
286
+ /**
287
+ * @type {?}
288
+ * @private
289
+ */
290
+ HtmlEditorComponent.prototype._control;
291
+ /**
292
+ * @type {?}
293
+ * @private
294
+ */
295
+ HtmlEditorComponent.prototype._editorInitialized;
296
+ /** @type {?} */
297
+ HtmlEditorComponent.prototype.options;
298
+ /** @type {?} */
299
+ HtmlEditorComponent.prototype.editorId;
300
+ /** @type {?} */
301
+ HtmlEditorComponent.prototype.editorLabelText;
302
+ /** @type {?} */
303
+ HtmlEditorComponent.prototype.editorOptions;
304
+ /** @type {?} */
305
+ HtmlEditorComponent.prototype.isFormBased;
306
+ /** @type {?} */
307
+ HtmlEditorComponent.prototype.editorFormKey;
308
+ }
309
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG9zb3ZpdG55L2FuYXRvbHkvIiwic291cmNlcyI6WyJsaWIvdWkvY29tcG9uZW50cy9odG1sLWVkaXRvci9odG1sLWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFM0Q7SUFLeUMsK0NBQWlCO0lBTDFEO1FBQUEscUVBb0xDO1FBOUtTLDJCQUFxQixHQUFXO1lBQ3RDLGVBQWUsRUFBRSx3QkFBd0I7WUFDekMsZ0JBQWdCLEVBQUUsSUFBSTtZQUN0QixTQUFTLEVBQUUsR0FBRztZQUNkLGFBQWEsRUFBRSxLQUFLO1lBRXBCLGNBQWMsRUFBRTtnQkFDZCxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsR0FBRztnQkFDN0YsWUFBWSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLEdBQUc7Z0JBQ3ZFLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUc7Z0JBRXJGLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLEdBQUc7Z0JBQy9DLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLEdBQUc7Z0JBQ2pGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTTthQUM3Qzs7Ozs7WUFNRCxjQUFjLEVBQUUsNkJBQTZCO1lBQzdDLGlCQUFpQixF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Ozs7O0lBRU0scUNBQU87OztJQUFkO1FBQ0UsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLEdBQUcsRUFBRTtZQUMzQixPQUFPO1NBQ1I7OztZQUdHLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ25DLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFdBQVcsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFO1lBQ3BELE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFFRCxPQUFPLE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFdkM7Ozs7Ozs7O1VBUUU7SUFDSixDQUFDOztnQkFuTEYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLHl0Q0FBMkM7aUJBQzVDOzs7MkJBNkNFLEtBQUs7a0NBQ0wsS0FBSztnQ0FDTCxLQUFLOzhCQUdMLEtBQUs7Z0NBQ0wsS0FBSzs7SUE4SFIsMEJBQUM7Q0FBQSxBQXBMRCxDQUt5QyxpQkFBaUIsR0ErS3pEO1NBL0tZLG1CQUFtQjs7Ozs7O0lBQzlCLG9EQWdDQzs7Ozs7SUFHRCx1Q0FBaUI7Ozs7O0lBQ2pCLGlEQUE0Qzs7SUFHNUMsc0NBQWU7O0lBR2YsdUNBQStCOztJQUMvQiw4Q0FBMEM7O0lBQzFDLDRDQUFvQzs7SUFHcEMsMENBQW1DOztJQUNuQyw0Q0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBBdXRob3JzOlxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDEyIERlYyAyMDE3XHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMTkgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0N1c3RvbVxyXG5pbXBvcnQgeyBCYXNlRWRpdENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtZWRpdC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LWh0bWwtZWRpdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaHRtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgSHRtbEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VFZGl0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBwcml2YXRlIF9kZWZhdWx0RWRpdG9yT3B0aW9uczogT2JqZWN0ID0ge1xyXG4gICAgcGxhY2Vob2xkZXJUZXh0OiAnRWRpdCBZb3VyIENvbnRlbnQgSGVyZScsXHJcbiAgICBjaGFyQ291bnRlckNvdW50OiB0cnVlLFxyXG4gICAgaGVpZ2h0TWluOiAxMDAsXHJcbiAgICB0b29sYmFySW5saW5lOiBmYWxzZSxcclxuXHJcbiAgICB0b29sYmFyQnV0dG9uczogW1xyXG4gICAgICAnZnVsbHNjcmVlbicsICdib2xkJywgJ2l0YWxpYycsICd1bmRlcmxpbmUnLCAnc3RyaWtlVGhyb3VnaCcsICdzdWJzY3JpcHQnLCAnc3VwZXJzY3JpcHQnLCAnfCcsXHJcbiAgICAgICdmb250RmFtaWx5JywgJ2ZvbnRTaXplJywgJ2NvbG9yJywgJ2lubGluZVN0eWxlJywgJ3BhcmFncmFwaFN0eWxlJywgJ3wnLFxyXG4gICAgICAncGFyYWdyYXBoRm9ybWF0JywgJ2FsaWduJywgJ2Zvcm1hdE9MJywgJ2Zvcm1hdFVMJywgJ291dGRlbnQnLCAnaW5kZW50JywgJ3F1b3RlJywgJy0nLFxyXG5cclxuICAgICAgJ2luc2VydExpbmsnLCAnaW5zZXJ0SW1hZ2UnLCAnaW5zZXJ0VGFibGUnLCAnfCcsXHJcbiAgICAgICdlbW90aWNvbnMnLCAnc3BlY2lhbENoYXJhY3RlcnMnLCAnaW5zZXJ0SFInLCAnc2VsZWN0QWxsJywgJ2NsZWFyRm9ybWF0dGluZycsICd8JyxcclxuICAgICAgJ3ByaW50JywgJ2hlbHAnLCAnaHRtbCcsICd8JywgJ3VuZG8nLCAncmVkbydcclxuICAgIF0sXHJcblxyXG4gICAgLypcclxuICAgICAgVXBsb2FkOlxyXG4gICAgICBodHRwczovL3d3dy5mcm9hbGEuY29tL3d5c2l3eWctZWRpdG9yL2RvY3MvY29uY2VwdHMvaW1hZ2UvdXBsb2FkXHJcbiAgICAqL1xyXG4gICAgaW1hZ2VVcGxvYWRVUkw6ICcvYXBpL0h0bWxFZGl0b3IvVXBsb2FkSW1hZ2UnLFxyXG4gICAgaW1hZ2VBbGxvd2VkVHlwZXM6IFsnanBlZycsICdqcGcnLCAncG5nJ10sXHJcbiAgICBpbWFnZVVwbG9hZFBhcmFtczogeyB1cGxvYWRUeXBlOiAnJywgdXBsb2FkUGFyZW50SWQ6ICcnIH0sXHJcblxyXG4gICAgLy9FdmVudHNcclxuICAgIGV2ZW50czoge1xyXG4gICAgICAnaW1hZ2UuYmVmb3JlVXBsb2FkJzogZnVuY3Rpb24gKGltYWdlcykge1xyXG4gICAgICAgIGxldCBlZGl0b3IgPSB0aGlzO1xyXG5cclxuICAgICAgICBhbGVydChcInYzIGltYWdlLmJlZm9yZVVwbG9hZCBlZGl0b3Iub3B0cy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRUeXBlXCIgKyBlZGl0b3Iub3B0cy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRUeXBlKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL1ByaXZhdGUgbWVtYmVyc1xyXG4gIHByaXZhdGUgX2NvbnRyb2w7XHJcbiAgcHJpdmF0ZSBfZWRpdG9ySW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLy9QdWJsaWMgbWVtYmVyc1xyXG4gIHB1YmxpYyBvcHRpb25zO1xyXG5cclxuICAvL0dlbmVyYWwgcGFyYW1zXHJcbiAgQElucHV0KCkgZWRpdG9ySWQ6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIGVkaXRvckxhYmVsVGV4dDogc3RyaW5nID0gJ0h0bWwnO1xyXG4gIEBJbnB1dCgpIGVkaXRvck9wdGlvbnM6IE9iamVjdCA9IHt9O1xyXG5cclxuICAvL0Zvcm0gYmFzZWQgcGFyYW1zXHJcbiAgQElucHV0KCkgaXNGb3JtQmFzZWQ6IHN0cmluZyA9ICcxJztcclxuICBASW5wdXQoKSBlZGl0b3JGb3JtS2V5OiBzdHJpbmcgPSAnaHRtbCc7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdmFyIG9wdCA9IHRoaXMuZWRpdG9yT3B0aW9ucztcclxuICAgIGlmICh0eXBlb2YgdGhpcy5lZGl0b3JPcHRpb25zID09IFwic3RyaW5nXCIpIHtcclxuICAgICAgICBvcHQgPSBKU09OLnBhcnNlKHRoaXMuZWRpdG9yT3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIG5ld09wdGlvbnMgPSAkLmV4dGVuZCh7fSwgdGhpcy5fZGVmYXVsdEVkaXRvck9wdGlvbnMsIG9wdCk7XHJcbiAgICB2YXIga2V5ID0gKDxhbnk+d2luZG93KS5fX2Zyb2FsYUVkaXRvcl9LZXk7XHJcbiAgICBpZiAoa2V5KSB7XHJcbiAgICAgIG5ld09wdGlvbnMgPSAkLmV4dGVuZCh7fSwgSlNPTi5wYXJzZSgneyBcImtleVwiOiBcIicgKyBrZXkgKyAnXCIgfScpLCBuZXdPcHRpb25zKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm9wdGlvbnMgPSBuZXdPcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5pbml0aWFsaXplRWRpdG9yKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5pdGlhbGl6ZUNvbnRyb2woY29udHJvbCkge1xyXG4gICAgdGhpcy5fY29udHJvbCA9IGNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRpYWxpemVFZGl0b3IoKSB7XHJcbiAgICBpZiAodGhpcy5fZWRpdG9ySW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcclxuICAgICAgICB0aGlzLl9jb250cm9sLmluaXRpYWxpemUoKTtcclxuXHJcbiAgICAgICAgLy92MiBCRUdJTlxyXG4gICAgICAgIHZhciBqUXVlcnlFZGl0b3IgPSB0aGlzLmdldEpRdWVyeUVkaXRvcigpO1xyXG4gICAgICAgIHZhciB0aGF0ID0gdGhpcztcclxuICAgICAgICBqUXVlcnlFZGl0b3Iub24oJ2Zyb2FsYUVkaXRvci5pbWFnZS5iZWZvcmVVcGxvYWQnLCBmdW5jdGlvbiAoZSwgZWRpdG9yLCBpbWFnZXMpIHtcclxuICAgICAgICAgIHZhciBvcHRpb25zOiBhbnkgPSB0aGF0Lm9wdGlvbnM7XHJcblxyXG4gICAgICAgICAgZWRpdG9yLm9wdHMuaW1hZ2VVcGxvYWRQYXJhbXMudXBsb2FkVHlwZSA9IG9wdGlvbnMuaW1hZ2VVcGxvYWRQYXJhbXMudXBsb2FkVHlwZTtcclxuICAgICAgICAgIGVkaXRvci5vcHRzLmltYWdlVXBsb2FkUGFyYW1zLnVwbG9hZFBhcmVudElkID0gb3B0aW9ucy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRQYXJlbnRJZDtcclxuICAgICAgICB9KTtcclxuICAgICAgICAvL3YyIEVORFxyXG5cclxuICAgICAgICB0aGlzLl9lZGl0b3JJbml0aWFsaXplZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEpRdWVyeUVkaXRvcigpIHtcclxuICAgIHZhciBqUXVlcnlFZGl0b3I6IGFueSA9ICQoJy5odG1sZWRpdG9yLScgKyB0aGlzLmVkaXRvcklkKTtcclxuICAgIHJldHVybiBqUXVlcnlFZGl0b3I7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEVkaXRvcigpIHtcclxuICAgIGlmICh0aGlzLl9jb250cm9sKVxyXG4gICAgICByZXR1cm4gdGhpcy5fY29udHJvbC5nZXRFZGl0b3IoKTtcclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vUHVibGljIEZ1bmNzXHJcbiAgcHVibGljIHNldFVwbG9hZFBhcmFtcyh1cGxvYWRUeXBlLCB1cGxvYWRQYXJlbnRJZCkge1xyXG4gICAgdmFyIHRoYXQgPSB0aGlzO1xyXG4gICAgdmFyIHRpbWVPdXQgPSAxMDAwO1xyXG5cclxuICAgIGlmICh0aGlzLl9lZGl0b3JJbml0aWFsaXplZCkge1xyXG4gICAgICAgIHRpbWVPdXQgPSAwO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xyXG4gICAgICB2YXIgbmV3T3B0aW9uczogYW55ID0geyBpbWFnZVVwbG9hZFBhcmFtczogeyB1cGxvYWRUeXBlOiAnJywgdXBsb2FkUGFyZW50SWQ6ICcnIH0gfTtcclxuICAgICAgbmV3T3B0aW9ucy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRUeXBlID0gdXBsb2FkVHlwZTtcclxuICAgICAgbmV3T3B0aW9ucy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRQYXJlbnRJZCA9IHVwbG9hZFBhcmVudElkO1xyXG4gICAgICB0aGF0Lm9wdGlvbnMgPSAkLmV4dGVuZCh7fSwgdGhhdC5vcHRpb25zLCBuZXdPcHRpb25zKTtcclxuICAgIH0sIHRpbWVPdXQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldEh0bWwoY29udGVudCkge1xyXG4gICAgaWYgKHRoaXMuaXNGb3JtQmFzZWQgPT0gXCIxXCIpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5pdGlhbGl6ZUVkaXRvcigpO1xyXG5cclxuICAgIC8vdjJcclxuICAgIHZhciBlZGl0b3IgPSB0aGlzLmdldEpRdWVyeUVkaXRvcigpO1xyXG4gICAgaWYgKHR5cGVvZiAoZWRpdG9yKSA9PSBcInVuZGVmaW5lZFwiIHx8IGVkaXRvciA9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBlZGl0b3IuZnJvYWxhRWRpdG9yKCdodG1sLnNldCcsIGNvbnRlbnQpO1xyXG5cclxuICAgIC8qXHJcbiAgICAvL3YzXHJcbiAgICB2YXIgZWRpdG9yID0gdGhpcy5nZXRFZGl0b3IoKTtcclxuICAgIGlmICh0eXBlb2YgKGVkaXRvcikgPT0gXCJ1bmRlZmluZWRcIiB8fCBlZGl0b3IgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgZWRpdG9yLmh0bWwuc2V0KGNvbnRlbnQpO1xyXG4gICAgKi9cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRIdG1sKCkge1xyXG4gICAgaWYgKHRoaXMuaXNGb3JtQmFzZWQgPT0gXCIxXCIpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vdjJcclxuICAgIHZhciBlZGl0b3IgPSB0aGlzLmdldEpRdWVyeUVkaXRvcigpO1xyXG4gICAgaWYgKHR5cGVvZiAoZWRpdG9yKSA9PSBcInVuZGVmaW5lZFwiIHx8IGVkaXRvciA9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBlZGl0b3IuZnJvYWxhRWRpdG9yKCdodG1sLmdldCcpO1xyXG5cclxuICAgIC8qXHJcbiAgICAvL3YzXHJcbiAgICB2YXIgZWRpdG9yID0gdGhpcy5nZXRFZGl0b3IoKTtcclxuICAgIGlmICh0eXBlb2YgKGVkaXRvcikgPT0gXCJ1bmRlZmluZWRcIiB8fCBlZGl0b3IgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZWRpdG9yLmh0bWwuZ2V0KGZhbHNlKTtcclxuICAgICovXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import * as tslib_1 from "tslib";
6
+ /*
7
+ <file>
8
+ Authors:
9
+ Vadim Osovitny
10
+
11
+ Created:
12
+ 7 Dec 2017
13
+
14
+ Version:
15
+ 1.0
16
+
17
+ Copyright (c) 2016-2019 Osovitny Inc. All rights reserved.
18
+ </file>
19
+ */
20
+ //Node
21
+ import { Component, Input } from '@angular/core';
22
+ import { ValidationSummaryComponent } from "./validation-summary.component";
23
+ var FormValidationSummaryComponent = /** @class */ (function (_super) {
24
+ tslib_1.__extends(FormValidationSummaryComponent, _super);
25
+ function FormValidationSummaryComponent() {
26
+ var _this = _super.call(this) || this;
27
+ _this.visible = false;
28
+ return _this;
29
+ }
30
+ /**
31
+ * @return {?}
32
+ */
33
+ FormValidationSummaryComponent.prototype.getErrors = /**
34
+ * @return {?}
35
+ */
36
+ function () {
37
+ /** @type {?} */
38
+ var messages = this.getFormValidationMessages();
39
+ return messages;
40
+ };
41
+ FormValidationSummaryComponent.decorators = [
42
+ { type: Component, args: [{
43
+ selector: 'anatoly-form-validation-summary',
44
+ template: "<div class=\"callout callout-danger\" *ngIf=\"visible\">\r\n <h4 class=\"box-title\">There are problems with the form</h4>\r\n <p *ngFor=\"let error of getErrors()\"><span class=\"help-block \" style=\"color:white\">{{error}}</span></p>\r\n</div>\r\n"
45
+ }] }
46
+ ];
47
+ /** @nocollapse */
48
+ FormValidationSummaryComponent.ctorParameters = function () { return []; };
49
+ FormValidationSummaryComponent.propDecorators = {
50
+ visible: [{ type: Input }]
51
+ };
52
+ return FormValidationSummaryComponent;
53
+ }(ValidationSummaryComponent));
54
+ export { FormValidationSummaryComponent };
55
+ if (false) {
56
+ /** @type {?} */
57
+ FormValidationSummaryComponent.prototype.visible;
58
+ }
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG9zb3ZpdG55L2FuYXRvbHkvIiwic291cmNlcyI6WyJsaWIvdWkvY29tcG9uZW50cy92YWxpZGF0aW9uL2Zvcm0tdmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdCQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU1RTtJQUtvRCwwREFBMEI7SUFHNUU7UUFBQSxZQUNFLGlCQUFPLFNBQ1I7UUFKUSxhQUFPLEdBQVksS0FBSyxDQUFDOztJQUlsQyxDQUFDOzs7O0lBRUQsa0RBQVM7OztJQUFUOztZQUNNLFFBQVEsR0FBRyxJQUFJLENBQUMseUJBQXlCLEVBQUU7UUFDL0MsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs7Z0JBZkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxpQ0FBaUM7b0JBQzNDLHdRQUF1RDtpQkFDeEQ7Ozs7OzBCQUdFLEtBQUs7O0lBVVIscUNBQUM7Q0FBQSxBQWhCRCxDQUtvRCwwQkFBMEIsR0FXN0U7U0FYWSw4QkFBOEI7OztJQUN6QyxpREFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDcgRGVjIDIwMTdcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxOSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50IH0gZnJvbSBcIi4vdmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LWZvcm0tdmFsaWRhdGlvbi1zdW1tYXJ5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRm9ybVZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50IGV4dGVuZHMgVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXJyb3JzKCk6IHN0cmluZ1tdIHtcclxuICAgIHZhciBtZXNzYWdlcyA9IHRoaXMuZ2V0Rm9ybVZhbGlkYXRpb25NZXNzYWdlcygpO1xyXG4gICAgcmV0dXJuIG1lc3NhZ2VzO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import * as tslib_1 from "tslib";
6
+ /*
7
+ <file>
8
+ Authors:
9
+ Vadim Osovitny
10
+
11
+ Created:
12
+ 6 Dec 2017
13
+
14
+ Version:
15
+ 1.0
16
+
17
+ Copyright (c) 2016-2019 Osovitny Inc. All rights reserved.
18
+ </file>
19
+ */
20
+ //Node
21
+ import { Component, Input } from '@angular/core';
22
+ import { ValidationSummaryComponent } from "./validation-summary.component";
23
+ var ItemValidationSummaryComponent = /** @class */ (function (_super) {
24
+ tslib_1.__extends(ItemValidationSummaryComponent, _super);
25
+ function ItemValidationSummaryComponent() {
26
+ return _super.call(this) || this;
27
+ }
28
+ ItemValidationSummaryComponent.decorators = [
29
+ { type: Component, args: [{
30
+ selector: 'anatoly-item-validation-summary',
31
+ template: "<ul class=\"list-unstyled\" *ngIf=\"isItemInvalid(key)\">\r\n <li *ngFor=\"let error of getValidationMessages(formGroup.get(key), title)\">\r\n <span class=\"help-block\">{{ error }}</span>\r\n </li>\r\n</ul>"
32
+ }] }
33
+ ];
34
+ /** @nocollapse */
35
+ ItemValidationSummaryComponent.ctorParameters = function () { return []; };
36
+ ItemValidationSummaryComponent.propDecorators = {
37
+ key: [{ type: Input }],
38
+ title: [{ type: Input }]
39
+ };
40
+ return ItemValidationSummaryComponent;
41
+ }(ValidationSummaryComponent));
42
+ export { ItemValidationSummaryComponent };
43
+ if (false) {
44
+ /** @type {?} */
45
+ ItemValidationSummaryComponent.prototype.key;
46
+ /** @type {?} */
47
+ ItemValidationSummaryComponent.prototype.title;
48
+ }
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG9zb3ZpdG55L2FuYXRvbHkvIiwic291cmNlcyI6WyJsaWIvdWkvY29tcG9uZW50cy92YWxpZGF0aW9uL2l0ZW0tdmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdCQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU1RTtJQUtvRCwwREFBMEI7SUFJNUU7ZUFDRSxpQkFBTztJQUNULENBQUM7O2dCQVhGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsaUNBQWlDO29CQUMzQyxpT0FBdUQ7aUJBQ3hEOzs7OztzQkFHRSxLQUFLO3dCQUNMLEtBQUs7O0lBS1IscUNBQUM7Q0FBQSxBQVpELENBS29ELDBCQUEwQixHQU83RTtTQVBZLDhCQUE4Qjs7O0lBQ3pDLDZDQUFxQjs7SUFDckIsK0NBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICA2IERlYyAyMDE3XHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMTkgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gXCIuL3ZhbGlkYXRpb24tc3VtbWFyeS5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1pdGVtLXZhbGlkYXRpb24tc3VtbWFyeScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2l0ZW0tdmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEl0ZW1WYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCBleHRlbmRzIFZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBrZXk6IHN0cmluZztcclxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,106 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import * as tslib_1 from "tslib";
6
+ /*
7
+ <file>
8
+ Authors:
9
+ Vadim Osovitny
10
+
11
+ Created:
12
+ 8 Dec 2017
13
+
14
+ Version:
15
+ 1.0
16
+
17
+ Copyright (c) 2016-2019 Osovitny Inc. All rights reserved.
18
+ </file>
19
+ */
20
+ //Custom
21
+ import { BaseEditComponent } from '../base-edit.component';
22
+ var ValidationSummaryComponent = /** @class */ (function (_super) {
23
+ tslib_1.__extends(ValidationSummaryComponent, _super);
24
+ function ValidationSummaryComponent() {
25
+ return _super.call(this) || this;
26
+ }
27
+ /**
28
+ * @return {?}
29
+ */
30
+ ValidationSummaryComponent.prototype.getFormValidationMessages = /**
31
+ * @return {?}
32
+ */
33
+ function () {
34
+ var _this = this;
35
+ /** @type {?} */
36
+ var messages = [];
37
+ Object.keys(this.formGroup.controls).forEach((/**
38
+ * @param {?} k
39
+ * @return {?}
40
+ */
41
+ function (k) {
42
+ /** @type {?} */
43
+ var control = _this.formGroup.controls[k];
44
+ if (((/** @type {?} */ (control))).controls != null) {
45
+ Object.keys(((/** @type {?} */ (control))).controls).forEach((/**
46
+ * @param {?} k
47
+ * @return {?}
48
+ */
49
+ function (k) {
50
+ /** @type {?} */
51
+ var child = ((/** @type {?} */ (control))).controls[k];
52
+ _this.getValidationMessages(child, k).forEach((/**
53
+ * @param {?} m
54
+ * @return {?}
55
+ */
56
+ function (m) { return messages.push(m); }));
57
+ }));
58
+ }
59
+ else {
60
+ _this.getValidationMessages(control, k).forEach((/**
61
+ * @param {?} m
62
+ * @return {?}
63
+ */
64
+ function (m) { return messages.push(m); }));
65
+ }
66
+ }));
67
+ return messages;
68
+ };
69
+ /**
70
+ * @param {?} state
71
+ * @param {?=} thingName
72
+ * @return {?}
73
+ */
74
+ ValidationSummaryComponent.prototype.getValidationMessages = /**
75
+ * @param {?} state
76
+ * @param {?=} thingName
77
+ * @return {?}
78
+ */
79
+ function (state, thingName) {
80
+ /** @type {?} */
81
+ var thing = state.path || thingName;
82
+ /** @type {?} */
83
+ var messages = [];
84
+ if (state.errors) {
85
+ for (var errorName in state.errors) {
86
+ if (state.errors.hasOwnProperty(errorName)) {
87
+ switch (errorName) {
88
+ case 'required':
89
+ messages.push(thing + " is required");
90
+ break;
91
+ case 'minlength':
92
+ messages.push(thing + " must be at least " + state.errors['minlength'].requiredLength + " characters");
93
+ break;
94
+ case 'pattern':
95
+ messages.push(thing + " contains illegal characters");
96
+ break;
97
+ }
98
+ }
99
+ }
100
+ }
101
+ return messages;
102
+ };
103
+ return ValidationSummaryComponent;
104
+ }(BaseEditComponent));
105
+ export { ValidationSummaryComponent };
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bvc292aXRueS9hbmF0b2x5LyIsInNvdXJjZXMiOlsibGliL3VpL2NvbXBvbmVudHMvdmFsaWRhdGlvbi92YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTNEO0lBQWdELHNEQUFpQjtJQUMvRDtlQUNFLGlCQUFPO0lBQ1QsQ0FBQzs7OztJQUVELDhEQUF5Qjs7O0lBQXpCO1FBQUEsaUJBa0JDOztZQWpCSyxRQUFRLEdBQWEsRUFBRTtRQUUzQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTzs7OztRQUFDLFVBQUEsQ0FBQzs7Z0JBQ3hDLE9BQU8sR0FBRyxLQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFFeEMsSUFBSSxDQUFDLG1CQUFXLE9BQU8sRUFBQSxDQUFDLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRTtnQkFDdkMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLG1CQUFXLE9BQU8sRUFBQSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTzs7OztnQkFBQyxVQUFBLENBQUM7O3dCQUM5QyxLQUFLLEdBQUcsQ0FBQyxtQkFBVyxPQUFPLEVBQUEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzVDLEtBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTzs7OztvQkFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQWhCLENBQWdCLEVBQUMsQ0FBQztnQkFDdEUsQ0FBQyxFQUFDLENBQUM7YUFDTjtpQkFDSTtnQkFDRCxLQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU87Ozs7Z0JBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFoQixDQUFnQixFQUFDLENBQUM7YUFDekU7UUFDSCxDQUFDLEVBQUMsQ0FBQztRQUVILE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7Ozs7OztJQUVELDBEQUFxQjs7Ozs7SUFBckIsVUFBc0IsS0FBVSxFQUFFLFNBQWtCOztZQUM5QyxLQUFLLEdBQVcsS0FBSyxDQUFDLElBQUksSUFBSSxTQUFTOztZQUN2QyxRQUFRLEdBQWEsRUFBRTtRQUUzQixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDZCxLQUFLLElBQUksU0FBUyxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7Z0JBQ2xDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQzFDLFFBQVEsU0FBUyxFQUFFO3dCQUNqQixLQUFLLFVBQVU7NEJBQ2IsUUFBUSxDQUFDLElBQUksQ0FBSSxLQUFLLGlCQUFjLENBQUMsQ0FBQzs0QkFDdEMsTUFBTTt3QkFFUixLQUFLLFdBQVc7NEJBQ2QsUUFBUSxDQUFDLElBQUksQ0FBSSxLQUFLLDBCQUFxQixLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGNBQWMsZ0JBQWEsQ0FBQyxDQUFDOzRCQUNsRyxNQUFNO3dCQUVSLEtBQUssU0FBUzs0QkFDWixRQUFRLENBQUMsSUFBSSxDQUFJLEtBQUssaUNBQThCLENBQUMsQ0FBQzs0QkFDdEQsTUFBTTtxQkFDVDtpQkFDRjthQUNGO1NBQ0o7UUFFRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBQ0gsaUNBQUM7QUFBRCxDQUFDLEFBbkRELENBQWdELGlCQUFpQixHQW1EaEUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDggRGVjIDIwMTdcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxOSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG4vL0N1c3RvbVxyXG5pbXBvcnQgeyBCYXNlRWRpdENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtZWRpdC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25TdW1tYXJ5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUVkaXRDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIGdldEZvcm1WYWxpZGF0aW9uTWVzc2FnZXMoKTogc3RyaW5nW10ge1xyXG4gICAgbGV0IG1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIE9iamVjdC5rZXlzKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKGsgPT4ge1xyXG4gICAgICB2YXIgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW2tdO1xyXG5cclxuICAgICAgaWYgKCg8Rm9ybUdyb3VwPmNvbnRyb2wpLmNvbnRyb2xzICE9IG51bGwpIHtcclxuICAgICAgICAgIE9iamVjdC5rZXlzKCg8Rm9ybUdyb3VwPmNvbnRyb2wpLmNvbnRyb2xzKS5mb3JFYWNoKGsgPT4ge1xyXG4gICAgICAgICAgICB2YXIgY2hpbGQgPSAoPEZvcm1Hcm91cD5jb250cm9sKS5jb250cm9sc1trXTtcclxuICAgICAgICAgICAgdGhpcy5nZXRWYWxpZGF0aW9uTWVzc2FnZXMoY2hpbGQsIGspLmZvckVhY2gobSA9PiBtZXNzYWdlcy5wdXNoKG0pKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5nZXRWYWxpZGF0aW9uTWVzc2FnZXMoY29udHJvbCwgaykuZm9yRWFjaChtID0+IG1lc3NhZ2VzLnB1c2gobSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gbWVzc2FnZXM7XHJcbiAgfVxyXG5cclxuICBnZXRWYWxpZGF0aW9uTWVzc2FnZXMoc3RhdGU6IGFueSwgdGhpbmdOYW1lPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgdGhpbmc6IHN0cmluZyA9IHN0YXRlLnBhdGggfHwgdGhpbmdOYW1lO1xyXG4gICAgbGV0IG1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIGlmIChzdGF0ZS5lcnJvcnMpIHtcclxuICAgICAgICBmb3IgKGxldCBlcnJvck5hbWUgaW4gc3RhdGUuZXJyb3JzKSB7XHJcbiAgICAgICAgICBpZiAoc3RhdGUuZXJyb3JzLmhhc093blByb3BlcnR5KGVycm9yTmFtZSkpIHtcclxuICAgICAgICAgICAgc3dpdGNoIChlcnJvck5hbWUpIHtcclxuICAgICAgICAgICAgICBjYXNlICdyZXF1aXJlZCc6XHJcbiAgICAgICAgICAgICAgICBtZXNzYWdlcy5wdXNoKGAke3RoaW5nfSBpcyByZXF1aXJlZGApO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICAgIGNhc2UgJ21pbmxlbmd0aCc6XHJcbiAgICAgICAgICAgICAgICBtZXNzYWdlcy5wdXNoKGAke3RoaW5nfSBtdXN0IGJlIGF0IGxlYXN0ICR7c3RhdGUuZXJyb3JzWydtaW5sZW5ndGgnXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVyc2ApO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICAgIGNhc2UgJ3BhdHRlcm4nOlxyXG4gICAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXJzYCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbWVzc2FnZXM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ export { AnatolyUIModule } from './ui.module';
6
+ //Base Components
7
+ export { BaseComponent } from './components/base.component';
8
+ export { BaseEditComponent } from './components/base-edit.component';
9
+ //Components
10
+ export { HtmlEditorComponent } from './components/html-editor/html-editor.component';
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ab3Nvdml0bnkvYW5hdG9seS8iLCJzb3VyY2VzIjpbImxpYi91aS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUdyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEFuYXRvbHlVSU1vZHVsZSB9IGZyb20gJy4vdWkubW9kdWxlJztcclxuXHJcbi8vQmFzZSBDb21wb25lbnRzXHJcbmV4cG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYmFzZS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBCYXNlRWRpdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9iYXNlLWVkaXQuY29tcG9uZW50JztcclxuXHJcbi8vQ29tcG9uZW50c1xyXG5leHBvcnQgeyBIdG1sRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2h0bWwtZWRpdG9yL2h0bWwtZWRpdG9yLmNvbXBvbmVudCc7Il19