ngx-ode-ui 4.6.0-dev-produit.3 → 4.6.0-dev-integration.2

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 (226) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/bundles/ngx-ode-ui.umd.js +5804 -0
  3. package/bundles/ngx-ode-ui.umd.js.map +1 -0
  4. package/bundles/ngx-ode-ui.umd.min.js +17 -0
  5. package/bundles/ngx-ode-ui.umd.min.js.map +1 -0
  6. package/esm2015/lib/components/datepicker/datepicker.component.js +261 -0
  7. package/esm2015/lib/components/dropdown/dropdown.component.js +76 -0
  8. package/esm2015/lib/components/ellipsis/ellipsis.component.js +98 -0
  9. package/esm2015/lib/components/form-errors/form-errors.component.js +65 -0
  10. package/esm2015/lib/components/form-field/form-field.component.js +40 -0
  11. package/esm2015/lib/components/item-tree/item-tree.component.js +289 -0
  12. package/esm2015/lib/components/lightbox/lightbox.component.js +129 -0
  13. package/esm2015/lib/components/lightbox-confirm/lightbox-confirm.component.js +65 -0
  14. package/esm2015/lib/components/list/list.component.js +140 -0
  15. package/esm2015/lib/components/list-checkable/list-checkable.component.js +137 -0
  16. package/esm2015/lib/components/message-box/message-box.component.js +153 -0
  17. package/esm2015/lib/components/message-sticker/message-sticker.component.js +81 -0
  18. package/esm2015/lib/components/mono-select/mono-select.component.js +164 -0
  19. package/esm2015/lib/components/multi-combo/multi-combo.component.js +255 -0
  20. package/esm2015/lib/components/multi-select/multi-select.component.js +214 -0
  21. package/esm2015/lib/components/panel-section/panel-section.component.js +38 -0
  22. package/esm2015/lib/components/portal/portal.component.js +27 -0
  23. package/esm2015/lib/components/push-panel/push-panel.component.js +81 -0
  24. package/esm2015/lib/components/search-input/search-input.component.js +176 -0
  25. package/esm2015/lib/components/search-toolbar/search-toolbar.component.js +84 -0
  26. package/esm2015/lib/components/side-layout/side-layout.component.js +39 -0
  27. package/esm2015/lib/components/side-panel/side-panel.component.js +76 -0
  28. package/esm2015/lib/components/spinner-cube/spinner-cube.component.js +67 -0
  29. package/esm2015/lib/components/table/pager.component.js +95 -0
  30. package/esm2015/lib/components/tooltip/tooltip.component.js +172 -0
  31. package/esm2015/lib/components/upload-files/upload-files.component.js +112 -0
  32. package/esm2015/lib/components/value-editable/simple-select.component.js +57 -0
  33. package/esm2015/lib/components/wizard/wizard.component.js +225 -0
  34. package/esm2015/lib/directives/anchor.directive.js +34 -0
  35. package/esm2015/lib/directives/drag-and-drop-files.directive.js +126 -0
  36. package/esm2015/lib/directives/dynamic-component/component-descriptor.model.js +34 -0
  37. package/esm2015/lib/directives/dynamic-component/dynamic-component.directive.js +100 -0
  38. package/esm2015/lib/directives/dynamictemplate.directive.js +159 -0
  39. package/esm2015/lib/directives/object-url.directive.js +53 -0
  40. package/esm2015/lib/ngx-ode-ui.module.js +188 -0
  41. package/esm2015/lib/pipes/bytes.pipe.js +27 -0
  42. package/esm2015/lib/pipes/filter.pipe.js +141 -0
  43. package/esm2015/lib/pipes/flattenObjArray.pipe.js +52 -0
  44. package/esm2015/lib/pipes/keys.pipe.js +27 -0
  45. package/esm2015/lib/pipes/length.pipe.js +22 -0
  46. package/esm2015/lib/pipes/limit.pipe.js +24 -0
  47. package/esm2015/lib/pipes/localizedDate.pipe.js +44 -0
  48. package/esm2015/lib/pipes/orderBy.pipe.js +269 -0
  49. package/esm2015/lib/pipes/store.pipe.js +24 -0
  50. package/esm2015/lib/services/dynamicModuleImports.service.js +19 -0
  51. package/esm2015/lib/services/inputFile.service.js +80 -0
  52. package/esm2015/lib/services/labels.service.js +54 -0
  53. package/esm2015/lib/services/spinner.service.js +163 -0
  54. package/esm2015/lib/utils/math.js +49 -0
  55. package/esm2015/lib/utils/string.js +29 -0
  56. package/esm2015/lib/utils/testing.js +20 -0
  57. package/esm2015/ngx-ode-ui.js +12 -0
  58. package/esm2015/public-api.js +59 -0
  59. package/esm5/lib/components/datepicker/datepicker.component.js +292 -0
  60. package/esm5/lib/components/dropdown/dropdown.component.js +81 -0
  61. package/esm5/lib/components/ellipsis/ellipsis.component.js +106 -0
  62. package/esm5/lib/components/form-errors/form-errors.component.js +73 -0
  63. package/esm5/lib/components/form-field/form-field.component.js +41 -0
  64. package/esm5/lib/components/item-tree/item-tree.component.js +345 -0
  65. package/esm5/lib/components/lightbox/lightbox.component.js +141 -0
  66. package/esm5/lib/components/lightbox-confirm/lightbox-confirm.component.js +67 -0
  67. package/esm5/lib/components/list/list.component.js +146 -0
  68. package/esm5/lib/components/list-checkable/list-checkable.component.js +148 -0
  69. package/esm5/lib/components/message-box/message-box.component.js +190 -0
  70. package/esm5/lib/components/message-sticker/message-sticker.component.js +92 -0
  71. package/esm5/lib/components/mono-select/mono-select.component.js +192 -0
  72. package/esm5/lib/components/multi-combo/multi-combo.component.js +294 -0
  73. package/esm5/lib/components/multi-select/multi-select.component.js +258 -0
  74. package/esm5/lib/components/panel-section/panel-section.component.js +40 -0
  75. package/esm5/lib/components/portal/portal.component.js +28 -0
  76. package/esm5/lib/components/push-panel/push-panel.component.js +91 -0
  77. package/esm5/lib/components/search-input/search-input.component.js +199 -0
  78. package/esm5/lib/components/search-toolbar/search-toolbar.component.js +93 -0
  79. package/esm5/lib/components/side-layout/side-layout.component.js +41 -0
  80. package/esm5/lib/components/side-panel/side-panel.component.js +85 -0
  81. package/esm5/lib/components/spinner-cube/spinner-cube.component.js +76 -0
  82. package/esm5/lib/components/table/pager.component.js +113 -0
  83. package/esm5/lib/components/tooltip/tooltip.component.js +188 -0
  84. package/esm5/lib/components/upload-files/upload-files.component.js +133 -0
  85. package/esm5/lib/components/value-editable/simple-select.component.js +59 -0
  86. package/esm5/lib/components/wizard/wizard.component.js +161 -0
  87. package/esm5/lib/directives/anchor.directive.js +39 -0
  88. package/esm5/lib/directives/drag-and-drop-files.directive.js +146 -0
  89. package/esm5/lib/directives/dynamic-component/component-descriptor.model.js +44 -0
  90. package/esm5/lib/directives/dynamic-component/dynamic-component.directive.js +109 -0
  91. package/esm5/lib/directives/dynamictemplate.directive.js +175 -0
  92. package/esm5/lib/directives/object-url.directive.js +62 -0
  93. package/esm5/lib/ngx-ode-ui.module.js +199 -0
  94. package/esm5/lib/pipes/bytes.pipe.js +37 -0
  95. package/esm5/lib/pipes/filter.pipe.js +179 -0
  96. package/esm5/lib/pipes/flattenObjArray.pipe.js +62 -0
  97. package/esm5/lib/pipes/keys.pipe.js +36 -0
  98. package/esm5/lib/pipes/length.pipe.js +30 -0
  99. package/esm5/lib/pipes/limit.pipe.js +35 -0
  100. package/esm5/lib/pipes/localizedDate.pipe.js +49 -0
  101. package/esm5/lib/pipes/orderBy.pipe.js +280 -0
  102. package/esm5/lib/pipes/store.pipe.js +35 -0
  103. package/esm5/lib/services/dynamicModuleImports.service.js +21 -0
  104. package/esm5/lib/services/inputFile.service.js +98 -0
  105. package/esm5/lib/services/labels.service.js +68 -0
  106. package/esm5/lib/services/spinner.service.js +195 -0
  107. package/esm5/lib/utils/math.js +49 -0
  108. package/esm5/lib/utils/string.js +29 -0
  109. package/esm5/lib/utils/testing.js +20 -0
  110. package/esm5/ngx-ode-ui.js +12 -0
  111. package/esm5/public-api.js +59 -0
  112. package/fesm2015/ngx-ode-ui.js +5027 -0
  113. package/fesm2015/ngx-ode-ui.js.map +1 -0
  114. package/fesm5/ngx-ode-ui.js +5560 -0
  115. package/fesm5/ngx-ode-ui.js.map +1 -0
  116. package/lib/components/datepicker/datepicker.component.d.ts +2 -7
  117. package/lib/components/dropdown/dropdown.component.d.ts +0 -3
  118. package/lib/components/ellipsis/ellipsis.component.d.ts +1 -4
  119. package/lib/components/form-errors/form-errors.component.d.ts +0 -3
  120. package/lib/components/form-field/form-field.component.d.ts +0 -3
  121. package/lib/components/item-tree/item-tree.component.d.ts +1 -5
  122. package/lib/components/lightbox/lightbox.component.d.ts +1 -5
  123. package/lib/components/lightbox-confirm/lightbox-confirm.component.d.ts +0 -3
  124. package/lib/components/list/list.component.d.ts +1 -5
  125. package/lib/components/list-checkable/list-checkable.component.d.ts +1 -5
  126. package/lib/components/message-box/message-box.component.d.ts +4 -8
  127. package/lib/components/message-sticker/message-sticker.component.d.ts +0 -3
  128. package/lib/components/mono-select/mono-select.component.d.ts +0 -3
  129. package/lib/components/multi-combo/multi-combo.component.d.ts +1 -4
  130. package/lib/components/multi-select/multi-select.component.d.ts +0 -3
  131. package/lib/components/panel-section/panel-section.component.d.ts +0 -3
  132. package/lib/components/portal/portal.component.d.ts +0 -3
  133. package/lib/components/push-panel/push-panel.component.d.ts +1 -4
  134. package/lib/components/search-input/search-input.component.d.ts +1 -5
  135. package/lib/components/search-toolbar/search-toolbar.component.d.ts +0 -3
  136. package/lib/components/side-layout/side-layout.component.d.ts +0 -3
  137. package/lib/components/side-panel/side-panel.component.d.ts +1 -4
  138. package/lib/components/spinner-cube/spinner-cube.component.d.ts +1 -5
  139. package/lib/components/table/pager.component.d.ts +0 -3
  140. package/lib/components/tooltip/tooltip.component.d.ts +0 -3
  141. package/lib/components/upload-files/upload-files.component.d.ts +0 -3
  142. package/lib/components/value-editable/simple-select.component.d.ts +0 -3
  143. package/lib/components/wizard/wizard.component.d.ts +0 -5
  144. package/lib/directives/anchor.directive.d.ts +0 -3
  145. package/lib/directives/drag-and-drop-files.directive.d.ts +0 -3
  146. package/lib/directives/dynamic-component/dynamic-component.directive.d.ts +0 -3
  147. package/lib/directives/dynamictemplate.directive.d.ts +1 -4
  148. package/lib/directives/object-url.directive.d.ts +0 -3
  149. package/lib/ngx-ode-ui.module.d.ts +2 -53
  150. package/lib/pipes/bytes.pipe.d.ts +0 -3
  151. package/lib/pipes/filter.pipe.d.ts +0 -3
  152. package/lib/pipes/flattenObjArray.pipe.d.ts +0 -3
  153. package/lib/pipes/keys.pipe.d.ts +0 -3
  154. package/lib/pipes/length.pipe.d.ts +0 -3
  155. package/lib/pipes/limit.pipe.d.ts +0 -3
  156. package/lib/pipes/localizedDate.pipe.d.ts +0 -3
  157. package/lib/pipes/orderBy.pipe.d.ts +0 -3
  158. package/lib/pipes/store.pipe.d.ts +0 -3
  159. package/lib/services/dynamicModuleImports.service.d.ts +0 -3
  160. package/lib/services/inputFile.service.d.ts +0 -3
  161. package/lib/services/labels.service.d.ts +0 -3
  162. package/lib/services/spinner.service.d.ts +1 -4
  163. package/ngx-ode-ui.d.ts +6 -0
  164. package/ngx-ode-ui.metadata.json +1 -0
  165. package/package.json +17 -29
  166. package/public-api.d.ts +0 -3
  167. package/esm2020/lib/components/datepicker/datepicker.component.mjs +0 -148
  168. package/esm2020/lib/components/dropdown/dropdown.component.mjs +0 -55
  169. package/esm2020/lib/components/ellipsis/ellipsis.component.mjs +0 -53
  170. package/esm2020/lib/components/form-errors/form-errors.component.mjs +0 -35
  171. package/esm2020/lib/components/form-field/form-field.component.mjs +0 -24
  172. package/esm2020/lib/components/item-tree/item-tree.component.mjs +0 -170
  173. package/esm2020/lib/components/lightbox/lightbox.component.mjs +0 -70
  174. package/esm2020/lib/components/lightbox-confirm/lightbox-confirm.component.mjs +0 -43
  175. package/esm2020/lib/components/list/list.component.mjs +0 -88
  176. package/esm2020/lib/components/list-checkable/list-checkable.component.mjs +0 -79
  177. package/esm2020/lib/components/message-box/message-box.component.mjs +0 -92
  178. package/esm2020/lib/components/message-sticker/message-sticker.component.mjs +0 -51
  179. package/esm2020/lib/components/mono-select/mono-select.component.mjs +0 -83
  180. package/esm2020/lib/components/multi-combo/multi-combo.component.mjs +0 -166
  181. package/esm2020/lib/components/multi-select/multi-select.component.mjs +0 -104
  182. package/esm2020/lib/components/panel-section/panel-section.component.mjs +0 -23
  183. package/esm2020/lib/components/portal/portal.component.mjs +0 -15
  184. package/esm2020/lib/components/push-panel/push-panel.component.mjs +0 -43
  185. package/esm2020/lib/components/search-input/search-input.component.mjs +0 -87
  186. package/esm2020/lib/components/search-toolbar/search-toolbar.component.mjs +0 -56
  187. package/esm2020/lib/components/side-layout/side-layout.component.mjs +0 -23
  188. package/esm2020/lib/components/side-panel/side-panel.component.mjs +0 -41
  189. package/esm2020/lib/components/spinner-cube/spinner-cube.component.mjs +0 -31
  190. package/esm2020/lib/components/table/pager.component.mjs +0 -48
  191. package/esm2020/lib/components/tooltip/tooltip.component.mjs +0 -104
  192. package/esm2020/lib/components/upload-files/upload-files.component.mjs +0 -59
  193. package/esm2020/lib/components/value-editable/simple-select.component.mjs +0 -29
  194. package/esm2020/lib/components/wizard/wizard.component.mjs +0 -152
  195. package/esm2020/lib/directives/anchor.directive.mjs +0 -27
  196. package/esm2020/lib/directives/drag-and-drop-files.directive.mjs +0 -82
  197. package/esm2020/lib/directives/dynamic-component/component-descriptor.model.mjs +0 -15
  198. package/esm2020/lib/directives/dynamic-component/dynamic-component.directive.mjs +0 -58
  199. package/esm2020/lib/directives/dynamictemplate.directive.mjs +0 -83
  200. package/esm2020/lib/directives/object-url.directive.mjs +0 -28
  201. package/esm2020/lib/ngx-ode-ui.module.mjs +0 -282
  202. package/esm2020/lib/pipes/bytes.pipe.mjs +0 -20
  203. package/esm2020/lib/pipes/filter.pipe.mjs +0 -97
  204. package/esm2020/lib/pipes/flattenObjArray.pipe.mjs +0 -35
  205. package/esm2020/lib/pipes/keys.pipe.mjs +0 -20
  206. package/esm2020/lib/pipes/length.pipe.mjs +0 -17
  207. package/esm2020/lib/pipes/limit.pipe.mjs +0 -17
  208. package/esm2020/lib/pipes/localizedDate.pipe.mjs +0 -23
  209. package/esm2020/lib/pipes/orderBy.pipe.mjs +0 -161
  210. package/esm2020/lib/pipes/replace.pipe.mjs +0 -20
  211. package/esm2020/lib/pipes/store.pipe.mjs +0 -17
  212. package/esm2020/lib/services/dynamicModuleImports.service.mjs +0 -13
  213. package/esm2020/lib/services/inputFile.service.mjs +0 -56
  214. package/esm2020/lib/services/labels.service.mjs +0 -32
  215. package/esm2020/lib/services/spinner.service.mjs +0 -76
  216. package/esm2020/lib/utils/math.mjs +0 -19
  217. package/esm2020/lib/utils/string.mjs +0 -11
  218. package/esm2020/lib/utils/testing.mjs +0 -7
  219. package/esm2020/ngx-ode-ui.mjs +0 -5
  220. package/esm2020/public-api.mjs +0 -57
  221. package/fesm2015/ngx-ode-ui.mjs +0 -2954
  222. package/fesm2015/ngx-ode-ui.mjs.map +0 -1
  223. package/fesm2020/ngx-ode-ui.mjs +0 -2952
  224. package/fesm2020/ngx-ode-ui.mjs.map +0 -1
  225. package/index.d.ts +0 -5
  226. package/lib/pipes/replace.pipe.d.ts +0 -8
@@ -0,0 +1,190 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/components/message-box/message-box.component.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import * as tslib_1 from "tslib";
7
+ import { HostBinding } from '@angular/core';
8
+ import { Component, ElementRef, EventEmitter, Input, Output, Injector } from '@angular/core';
9
+ import { OdeComponent } from 'ngx-ode-core';
10
+ /** @type {?} */
11
+ export var icons = {
12
+ info: 'fa-question-circle',
13
+ warning: 'fa-exclamation-circle',
14
+ danger: 'fa-ban',
15
+ success: 'fa-check-circle'
16
+ };
17
+ var MessageBoxComponent = /** @class */ (function (_super) {
18
+ tslib_1.__extends(MessageBoxComponent, _super);
19
+ function MessageBoxComponent(eltRef, injector) {
20
+ var _this = _super.call(this, injector) || this;
21
+ _this.eltRef = eltRef;
22
+ _this._position = 'inherit';
23
+ /**
24
+ * `gravity` set the relative position of the message box if its position is 'absolute'.
25
+ * No effect when position is 'inherit'.
26
+ */
27
+ _this.gravity = 'left';
28
+ _this.hidden = false;
29
+ return _this;
30
+ }
31
+ Object.defineProperty(MessageBoxComponent.prototype, "messages", {
32
+ get: /**
33
+ * @return {?}
34
+ */
35
+ function () {
36
+ return this._messages;
37
+ },
38
+ set: /**
39
+ * @param {?} value
40
+ * @return {?}
41
+ */
42
+ function (value) {
43
+ var e_1, _a;
44
+ this._messages = [];
45
+ try {
46
+ for (var value_1 = tslib_1.__values(value), value_1_1 = value_1.next(); !value_1_1.done; value_1_1 = value_1.next()) {
47
+ var message = value_1_1.value;
48
+ if (typeof message == 'string') {
49
+ this._messages.push([message, {}]);
50
+ }
51
+ else if (typeof message == 'object') {
52
+ this._messages.push(message);
53
+ }
54
+ }
55
+ }
56
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
57
+ finally {
58
+ try {
59
+ if (value_1_1 && !value_1_1.done && (_a = value_1.return)) _a.call(value_1);
60
+ }
61
+ finally { if (e_1) throw e_1.error; }
62
+ }
63
+ },
64
+ enumerable: true,
65
+ configurable: true
66
+ });
67
+ Object.defineProperty(MessageBoxComponent.prototype, "position", {
68
+ set: /**
69
+ * @param {?} value
70
+ * @return {?}
71
+ */
72
+ function (value) {
73
+ this._position = value;
74
+ },
75
+ enumerable: true,
76
+ configurable: true
77
+ });
78
+ Object.defineProperty(MessageBoxComponent.prototype, "isGravityLeft", {
79
+ get: /**
80
+ * @return {?}
81
+ */
82
+ function () { return this.gravity === 'left'; },
83
+ enumerable: true,
84
+ configurable: true
85
+ });
86
+ Object.defineProperty(MessageBoxComponent.prototype, "isGravityRight", {
87
+ get: /**
88
+ * @return {?}
89
+ */
90
+ function () { return this.gravity === 'right'; },
91
+ enumerable: true,
92
+ configurable: true
93
+ });
94
+ /**
95
+ * @return {?}
96
+ */
97
+ MessageBoxComponent.prototype.canHide = /**
98
+ * @return {?}
99
+ */
100
+ function () {
101
+ if (this._position == 'absolute') {
102
+ return true;
103
+ }
104
+ return false;
105
+ };
106
+ /**
107
+ * @return {?}
108
+ */
109
+ MessageBoxComponent.prototype.hide = /**
110
+ * @return {?}
111
+ */
112
+ function () {
113
+ this.hidden = true;
114
+ this.hideEvent.emit();
115
+ };
116
+ /**
117
+ * @return {?}
118
+ */
119
+ MessageBoxComponent.prototype.ngOnInit = /**
120
+ * @return {?}
121
+ */
122
+ function () {
123
+ _super.prototype.ngOnInit.call(this);
124
+ if (this.type == undefined) {
125
+ throw new Error('MessageSticker : type\' property must be set');
126
+ }
127
+ this.eltRef.nativeElement.style.position = this._position;
128
+ if (this._position == 'absolute') {
129
+ this.eltRef.nativeElement.style.width = '450px';
130
+ // TODO: Maybe use a static counter to push on top the last open MessageBox ?
131
+ this.eltRef.nativeElement.style.zIndex = '10';
132
+ }
133
+ };
134
+ MessageBoxComponent.decorators = [
135
+ { type: Component, args: [{
136
+ selector: 'message-box',
137
+ template: "<article class=\"message is-{{type}}\" [hidden]=\"hidden\">\n <div *ngIf=\"header\" class=\"message-header\">\n <p>\n <i *ngIf=\"canHide()\" (click)=\"hide()\" class=\"fa fa-times-circle\"></i>\n {{header | translate}}\n </p>\n </div>\n <div class=\"message-body\">\n <i *ngIf=\"canHide() && !header\" (click)=\"hide()\" class=\"fa fa-times-circle\"></i>\n <p *ngFor=\"let message of messages\">\n <s5l [s5l-params]=\"message[1]\">{{message[0]}}</s5l>\n </p>\n </div>\n</article>\n",
138
+ styles: [":host{font-size:initial;position:inherit;top:-5px}:host.gravity-left{right:-5px}:host.gravity-right{left:-5px}:host .message{border:1px solid}i.fa-times-circle{display:inline-flex;float:right;cursor:pointer;font-weight:700}"]
139
+ }] }
140
+ ];
141
+ /** @nocollapse */
142
+ MessageBoxComponent.ctorParameters = function () { return [
143
+ { type: ElementRef },
144
+ { type: Injector }
145
+ ]; };
146
+ MessageBoxComponent.propDecorators = {
147
+ type: [{ type: Input }],
148
+ header: [{ type: Input }],
149
+ messages: [{ type: Input }],
150
+ position: [{ type: Input }],
151
+ gravity: [{ type: Input }],
152
+ isGravityLeft: [{ type: HostBinding, args: ['class.gravity-left',] }],
153
+ isGravityRight: [{ type: HostBinding, args: ['class.gravity-right',] }],
154
+ hideEvent: [{ type: Output, args: ['onHide',] }]
155
+ };
156
+ return MessageBoxComponent;
157
+ }(OdeComponent));
158
+ export { MessageBoxComponent };
159
+ if (false) {
160
+ /** @type {?} */
161
+ MessageBoxComponent.prototype.type;
162
+ /** @type {?} */
163
+ MessageBoxComponent.prototype.header;
164
+ /**
165
+ * @type {?}
166
+ * @private
167
+ */
168
+ MessageBoxComponent.prototype._messages;
169
+ /**
170
+ * @type {?}
171
+ * @private
172
+ */
173
+ MessageBoxComponent.prototype._position;
174
+ /**
175
+ * `gravity` set the relative position of the message box if its position is 'absolute'.
176
+ * No effect when position is 'inherit'.
177
+ * @type {?}
178
+ */
179
+ MessageBoxComponent.prototype.gravity;
180
+ /** @type {?} */
181
+ MessageBoxComponent.prototype.hidden;
182
+ /** @type {?} */
183
+ MessageBoxComponent.prototype.hideEvent;
184
+ /**
185
+ * @type {?}
186
+ * @private
187
+ */
188
+ MessageBoxComponent.prototype.eltRef;
189
+ }
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW9kZS11aS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL21lc3NhZ2UtYm94L21lc3NhZ2UtYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUk1QyxNQUFNLEtBQU8sS0FBSyxHQUFHO0lBQ2pCLElBQUksRUFBRyxvQkFBb0I7SUFDM0IsT0FBTyxFQUFHLHVCQUF1QjtJQUNqQyxNQUFNLEVBQUcsUUFBUTtJQUNqQixPQUFPLEVBQUcsaUJBQWlCO0NBQzlCO0FBRUQ7SUFLeUMsK0NBQVk7SUFDakQsNkJBQ1ksTUFBa0IsRUFDMUIsUUFBa0I7UUFGdEIsWUFHTSxrQkFBTSxRQUFRLENBQUMsU0FDaEI7UUFITyxZQUFNLEdBQU4sTUFBTSxDQUFZO1FBMkJ0QixlQUFTLEdBQTJCLFNBQVMsQ0FBQzs7Ozs7UUFTN0MsYUFBTyxHQUFxQixNQUFNLENBQUM7UUFJNUMsWUFBTSxHQUFHLEtBQUssQ0FBQzs7SUFyQ1gsQ0FBQztJQVFMLHNCQUFhLHlDQUFROzs7O1FBWXJCO1lBQ0ksT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzFCLENBQUM7Ozs7O1FBZEQsVUFBc0IsS0FBZ0M7O1lBQ2xELElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDOztnQkFFcEIsS0FBc0IsSUFBQSxVQUFBLGlCQUFBLEtBQUssQ0FBQSw0QkFBQSwrQ0FBRTtvQkFBeEIsSUFBTSxPQUFPLGtCQUFBO29CQUNkLElBQUksT0FBTyxPQUFPLElBQUksUUFBUSxFQUFFO3dCQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUN0Qzt5QkFDSSxJQUFJLE9BQU8sT0FBTyxJQUFJLFFBQVEsRUFBRTt3QkFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7cUJBQ2hDO2lCQUNKOzs7Ozs7Ozs7UUFDTCxDQUFDOzs7T0FBQTtJQU1ELHNCQUFhLHlDQUFROzs7OztRQUFyQixVQUFzQixLQUE2QjtZQUMvQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQU9ELHNCQUF1Qyw4Q0FBYTs7OztRQUFwRCxjQUF5RCxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssTUFBTSxDQUFBLENBQUMsQ0FBQzs7O09BQUE7SUFDekYsc0JBQXdDLCtDQUFjOzs7O1FBQXRELGNBQTJELE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUEsQ0FBQyxDQUFDOzs7T0FBQTs7OztJQUk1RixxQ0FBTzs7O0lBQVA7UUFDSSxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksVUFBVSxFQUFFO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzs7O0lBQ0Qsa0NBQUk7OztJQUFKO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDOzs7O0lBRUQsc0NBQVE7OztJQUFSO1FBQ0ksaUJBQU0sUUFBUSxXQUFFLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLFNBQVMsRUFBRTtZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7U0FDbkU7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDMUQsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLFVBQVUsRUFBRTtZQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztZQUNoRCw2RUFBNkU7WUFDN0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7U0FDakQ7SUFFTCxDQUFDOztnQkF4RUosU0FBUyxTQUFDO29CQUNQLFFBQVEsRUFBRSxhQUFhO29CQUN2QiwrZ0JBQTJDOztpQkFFOUM7Ozs7Z0JBaEJtQixVQUFVO2dCQUF1QyxRQUFROzs7dUJBd0J4RSxLQUFLO3lCQUNMLEtBQUs7MkJBS0wsS0FBSzsyQkFpQkwsS0FBSzswQkFRTCxLQUFLO2dDQUNMLFdBQVcsU0FBQyxvQkFBb0I7aUNBQ2hDLFdBQVcsU0FBQyxxQkFBcUI7NEJBR2pDLE1BQU0sU0FBQyxRQUFROztJQXlCcEIsMEJBQUM7Q0FBQSxBQXpFRCxDQUt5QyxZQUFZLEdBb0VwRDtTQXBFWSxtQkFBbUI7OztJQU81QixtQ0FBMkI7O0lBQzNCLHFDQUF3Qjs7Ozs7SUFJeEIsd0NBQWtDOzs7OztJQWlCbEMsd0NBQXNEOzs7Ozs7SUFTdEQsc0NBQTRDOztJQUk1QyxxQ0FBZTs7SUFDZix3Q0FBZ0Q7Ozs7O0lBekM1QyxxQ0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9kZUNvbXBvbmVudCB9IGZyb20gJ25neC1vZGUtY29yZSc7XG5cbmV4cG9ydCB0eXBlIE1lc3NhZ2VUeXBlID0gJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2Rhbmdlcic7XG5cbmV4cG9ydCBjb25zdCBpY29ucyA9IHtcbiAgICBpbmZvIDogJ2ZhLXF1ZXN0aW9uLWNpcmNsZScsXG4gICAgd2FybmluZyA6ICdmYS1leGNsYW1hdGlvbi1jaXJjbGUnLFxuICAgIGRhbmdlciA6ICdmYS1iYW4nLFxuICAgIHN1Y2Nlc3MgOiAnZmEtY2hlY2stY2lyY2xlJ1xufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtZXNzYWdlLWJveCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lc3NhZ2UtYm94LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9tZXNzYWdlLWJveC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VCb3hDb21wb25lbnQgZXh0ZW5kcyBPZGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVsdFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yKSAge1xuICAgICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICAgICAgfVxuXG4gICAgQElucHV0KCkgdHlwZTogTWVzc2FnZVR5cGU7XG4gICAgQElucHV0KCkgaGVhZGVyOiBzdHJpbmc7XG5cbiAgICAvLyB0eXBlIChzdHJpbmcgfCBbc3RyaW5nLE9iamVjdF0pW10gZW5hYmxlIHRvIHBhc3MgYW4gYXJyYXkgb2YgU3RyaW5nIHdoZXJlIFN0cmluZyBpcyBpMThuIGtleVxuICAgIC8vIG9yIGFuIGFycmF5IG9mIHR1cGxlPFN0cmluZywgT2JqZWN0PiB3aGVyZSBTdHJpbmcgaXMgaTE4biBrZXkgYW5kIE9iamVjdCBpcyAxMThuIHBhcmFtc1xuICAgIHByaXZhdGUgX21lc3NhZ2VzOiBbc3RyaW5nLCB7fV1bXTtcbiAgICBASW5wdXQoKSBzZXQgbWVzc2FnZXModmFsdWU6IChzdHJpbmcgfCBbc3RyaW5nLCB7fV0pW10pIHtcbiAgICAgICAgdGhpcy5fbWVzc2FnZXMgPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2YgdmFsdWUpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbWVzc2FnZSA9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHRoaXMuX21lc3NhZ2VzLnB1c2goW21lc3NhZ2UsIHt9XSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0eXBlb2YgbWVzc2FnZSA9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgIHRoaXMuX21lc3NhZ2VzLnB1c2gobWVzc2FnZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IG1lc3NhZ2VzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWVzc2FnZXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcG9zaXRpb246ICdhYnNvbHV0ZScgfCAnaW5oZXJpdCcgPSAnaW5oZXJpdCc7XG4gICAgQElucHV0KCkgc2V0IHBvc2l0aW9uKHZhbHVlOiAnYWJzb2x1dGUnIHwgJ2luaGVyaXQnKSB7XG4gICAgICAgIHRoaXMuX3Bvc2l0aW9uID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYGdyYXZpdHlgIHNldCB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2YgdGhlIG1lc3NhZ2UgYm94IGlmIGl0cyBwb3NpdGlvbiBpcyAnYWJzb2x1dGUnLlxuICAgICAqIE5vIGVmZmVjdCB3aGVuIHBvc2l0aW9uIGlzICdpbmhlcml0Jy5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBncmF2aXR5OiAnbGVmdCcgfCAncmlnaHQnID0gJ2xlZnQnO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZ3Jhdml0eS1sZWZ0JykgZ2V0IGlzR3Jhdml0eUxlZnQoKSB7IHJldHVybiB0aGlzLmdyYXZpdHkgPT09ICdsZWZ0JyB9XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ncmF2aXR5LXJpZ2h0JykgZ2V0IGlzR3Jhdml0eVJpZ2h0KCkgeyByZXR1cm4gdGhpcy5ncmF2aXR5ID09PSAncmlnaHQnIH1cblxuICAgIGhpZGRlbiA9IGZhbHNlO1xuICAgIEBPdXRwdXQoJ29uSGlkZScpIGhpZGVFdmVudDogRXZlbnRFbWl0dGVyPHZvaWQ+O1xuICAgIGNhbkhpZGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLl9wb3NpdGlvbiA9PSAnYWJzb2x1dGUnKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGhpZGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGlkZGVuID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5oaWRlRXZlbnQuZW1pdCgpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBpZiAodGhpcy50eXBlID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXNzYWdlU3RpY2tlciA6IHR5cGVcXCcgcHJvcGVydHkgbXVzdCBiZSBzZXQnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVsdFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gdGhpcy5fcG9zaXRpb247XG4gICAgICAgIGlmICh0aGlzLl9wb3NpdGlvbiA9PSAnYWJzb2x1dGUnKSB7XG4gICAgICAgICAgICB0aGlzLmVsdFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLndpZHRoID0gJzQ1MHB4JztcbiAgICAgICAgICAgIC8vIFRPRE86IE1heWJlIHVzZSBhIHN0YXRpYyBjb3VudGVyIHRvIHB1c2ggb24gdG9wIHRoZSBsYXN0IG9wZW4gTWVzc2FnZUJveCA/XG4gICAgICAgICAgICB0aGlzLmVsdFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLnpJbmRleCA9ICcxMCc7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuIl19
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/components/message-sticker/message-sticker.component.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import * as tslib_1 from "tslib";
7
+ import { OdeComponent } from 'ngx-ode-core';
8
+ import { Component, EventEmitter, Input, ViewChild, Injector } from '@angular/core';
9
+ import { icons, MessageBoxComponent } from '../message-box/message-box.component';
10
+ import { DynamicComponentDirective } from '../../directives/dynamic-component/dynamic-component.directive';
11
+ import { ComponentDescriptor } from '../../directives/dynamic-component/component-descriptor.model';
12
+ var MessageStickerComponent = /** @class */ (function (_super) {
13
+ tslib_1.__extends(MessageStickerComponent, _super);
14
+ function MessageStickerComponent(injector) {
15
+ var _this = _super.call(this, injector) || this;
16
+ _this.gravity = 'left';
17
+ _this.icons = icons;
18
+ return _this;
19
+ }
20
+ /**
21
+ * @return {?}
22
+ */
23
+ MessageStickerComponent.prototype.ngOnInit = /**
24
+ * @return {?}
25
+ */
26
+ function () {
27
+ _super.prototype.ngOnInit.call(this);
28
+ if (this.type === undefined) {
29
+ throw new Error('MessageSticker : type\' property must be set');
30
+ }
31
+ };
32
+ /**
33
+ * @return {?}
34
+ */
35
+ MessageStickerComponent.prototype.newMessageBox = /**
36
+ * @return {?}
37
+ */
38
+ function () {
39
+ return new ComponentDescriptor(MessageBoxComponent, {
40
+ type: this.type,
41
+ header: this.header,
42
+ messages: this.messages,
43
+ position: 'absolute',
44
+ gravity: this.gravity,
45
+ hideEvent: new EventEmitter()
46
+ });
47
+ };
48
+ /**
49
+ * @return {?}
50
+ */
51
+ MessageStickerComponent.prototype.loadMessageBox = /**
52
+ * @return {?}
53
+ */
54
+ function () {
55
+ this.dComponent.load();
56
+ };
57
+ MessageStickerComponent.decorators = [
58
+ { type: Component, args: [{
59
+ selector: 'ode-message-sticker',
60
+ template: "<i (click)=\"loadMessageBox()\" class=\"fa {{icons[type]}} is-{{type}}\"></i>\n<span message-box-anchor>\n <ng-container [dynamic-component]=\"newMessageBox()\"></ng-container>\n </span>\n",
61
+ styles: [":host{display:inline;padding-left:.2em}span[message-box-anchor]{position:absolute;z-index:8}i{cursor:pointer}"]
62
+ }] }
63
+ ];
64
+ /** @nocollapse */
65
+ MessageStickerComponent.ctorParameters = function () { return [
66
+ { type: Injector }
67
+ ]; };
68
+ MessageStickerComponent.propDecorators = {
69
+ type: [{ type: Input }],
70
+ header: [{ type: Input }],
71
+ messages: [{ type: Input }],
72
+ gravity: [{ type: Input }],
73
+ dComponent: [{ type: ViewChild, args: [DynamicComponentDirective, { static: false },] }]
74
+ };
75
+ return MessageStickerComponent;
76
+ }(OdeComponent));
77
+ export { MessageStickerComponent };
78
+ if (false) {
79
+ /** @type {?} */
80
+ MessageStickerComponent.prototype.type;
81
+ /** @type {?} */
82
+ MessageStickerComponent.prototype.header;
83
+ /** @type {?} */
84
+ MessageStickerComponent.prototype.messages;
85
+ /** @type {?} */
86
+ MessageStickerComponent.prototype.gravity;
87
+ /** @type {?} */
88
+ MessageStickerComponent.prototype.dComponent;
89
+ /** @type {?} */
90
+ MessageStickerComponent.prototype.icons;
91
+ }
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1zdGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1vZGUtdWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tZXNzYWdlLXN0aWNrZXIvbWVzc2FnZS1zdGlja2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sRUFBQyxLQUFLLEVBQUUsbUJBQW1CLEVBQWMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUMzRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUVwRztJQUs2QyxtREFBWTtJQVNyRCxpQ0FBWSxRQUFrQjtRQUE5QixZQUNJLGtCQUFNLFFBQVEsQ0FBQyxTQUNsQjtRQVBRLGFBQU8sR0FBcUIsTUFBTSxDQUFDO1FBR25DLFdBQUssR0FBRyxLQUFLLENBQUM7O0lBSXZCLENBQUM7Ozs7SUFFRCwwQ0FBUTs7O0lBQVI7UUFDSSxpQkFBTSxRQUFRLFdBQUUsQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztTQUNuRTtJQUNMLENBQUM7Ozs7SUFFRCwrQ0FBYTs7O0lBQWI7UUFDSSxPQUFPLElBQUksbUJBQW1CLENBQUMsbUJBQW1CLEVBQUU7WUFDaEQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixRQUFRLEVBQUUsVUFBVTtZQUNwQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsU0FBUyxFQUFFLElBQUksWUFBWSxFQUFRO1NBQ3RDLENBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxnREFBYzs7O0lBQWQ7UUFDSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7O2dCQXRDSixTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsME5BQStDOztpQkFFbEQ7Ozs7Z0JBVDJELFFBQVE7Ozt1QkFXL0QsS0FBSzt5QkFDTCxLQUFLOzJCQUNMLEtBQUs7MEJBQ0wsS0FBSzs2QkFDTCxTQUFTLFNBQUMseUJBQXlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztJQTZCM0QsOEJBQUM7Q0FBQSxBQXZDRCxDQUs2QyxZQUFZLEdBa0N4RDtTQWxDWSx1QkFBdUI7OztJQUNoQyx1Q0FBMkI7O0lBQzNCLHlDQUF3Qjs7SUFDeEIsMkNBQTZDOztJQUM3QywwQ0FBNEM7O0lBQzVDLDZDQUErRjs7SUFFL0Ysd0NBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2RlQ29tcG9uZW50IH0gZnJvbSAnbmd4LW9kZS1jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2ljb25zLCBNZXNzYWdlQm94Q29tcG9uZW50LCBNZXNzYWdlVHlwZX0gZnJvbSAnLi4vbWVzc2FnZS1ib3gvbWVzc2FnZS1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNDb21wb25lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb21wb25lbnREZXNjcmlwdG9yIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9keW5hbWljLWNvbXBvbmVudC9jb21wb25lbnQtZGVzY3JpcHRvci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnb2RlLW1lc3NhZ2Utc3RpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lc3NhZ2Utc3RpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbWVzc2FnZS1zdGlja2VyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWVzc2FnZVN0aWNrZXJDb21wb25lbnQgZXh0ZW5kcyBPZGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHR5cGU6IE1lc3NhZ2VUeXBlO1xuICAgIEBJbnB1dCgpIGhlYWRlcjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG1lc3NhZ2VzOiAoc3RyaW5nIHwgW3N0cmluZywge31dKVtdO1xuICAgIEBJbnB1dCgpIGdyYXZpdHk6ICdsZWZ0JyB8ICdyaWdodCcgPSAnbGVmdCc7XG4gICAgQFZpZXdDaGlsZChEeW5hbWljQ29tcG9uZW50RGlyZWN0aXZlLCB7IHN0YXRpYzogZmFsc2UgfSkgZENvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudERpcmVjdGl2ZTtcblxuICAgIHJlYWRvbmx5IGljb25zID0gaWNvbnM7XG5cbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBpZiAodGhpcy50eXBlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTWVzc2FnZVN0aWNrZXIgOiB0eXBlXFwnIHByb3BlcnR5IG11c3QgYmUgc2V0Jyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZXdNZXNzYWdlQm94KCk6IENvbXBvbmVudERlc2NyaXB0b3Ige1xuICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudERlc2NyaXB0b3IoTWVzc2FnZUJveENvbXBvbmVudCwge1xuICAgICAgICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgICAgICAgaGVhZGVyOiB0aGlzLmhlYWRlcixcbiAgICAgICAgICAgIG1lc3NhZ2VzOiB0aGlzLm1lc3NhZ2VzLFxuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICBncmF2aXR5OiB0aGlzLmdyYXZpdHksXG4gICAgICAgICAgICBoaWRlRXZlbnQ6IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBsb2FkTWVzc2FnZUJveCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kQ29tcG9uZW50LmxvYWQoKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,192 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/components/mono-select/mono-select.component.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import * as tslib_1 from "tslib";
7
+ import { Component, ElementRef, forwardRef, Input, Injector } from '@angular/core';
8
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
9
+ import { OdeComponent } from 'ngx-ode-core';
10
+ /**
11
+ * @template K
12
+ */
13
+ var MonoSelectComponent = /** @class */ (function (_super) {
14
+ tslib_1.__extends(MonoSelectComponent, _super);
15
+ function MonoSelectComponent(elementRef, injector) {
16
+ var _this = _super.call(this, injector) || this;
17
+ _this.elementRef = elementRef;
18
+ _this.placeholder = 'monoselect.placeholder.default';
19
+ _this.options = [];
20
+ _this.translateOptions = true;
21
+ _this.opened = false;
22
+ _this.selectedOption = null;
23
+ _this.disabled = false;
24
+ _this.onChange = (/**
25
+ * @param {?} _
26
+ * @return {?}
27
+ */
28
+ function (_) {
29
+ });
30
+ _this.onTouched = (/**
31
+ * @return {?}
32
+ */
33
+ function () {
34
+ });
35
+ return _this;
36
+ }
37
+ /**
38
+ * @param {?=} option
39
+ * @return {?}
40
+ */
41
+ MonoSelectComponent.prototype.optionClicked = /**
42
+ * @param {?=} option
43
+ * @return {?}
44
+ */
45
+ function (option) {
46
+ this.selectedOption = option;
47
+ this.opened = false;
48
+ this.onChange(this.selectedOption != null ? this.selectedOption.value : null);
49
+ };
50
+ /**
51
+ * @param {?} event
52
+ * @return {?}
53
+ */
54
+ MonoSelectComponent.prototype.onClickOnDocument = /**
55
+ * @param {?} event
56
+ * @return {?}
57
+ */
58
+ function (event) {
59
+ if (this.opened &&
60
+ !this.elementRef.nativeElement.querySelector('.lct-form-select').contains(event.target)) {
61
+ this.opened = false;
62
+ }
63
+ return true;
64
+ };
65
+ /**
66
+ * @return {?}
67
+ */
68
+ MonoSelectComponent.prototype.onClickOnHost = /**
69
+ * @return {?}
70
+ */
71
+ function () {
72
+ if (!this.opened && !this.disabled) {
73
+ this.opened = true;
74
+ }
75
+ else {
76
+ this.opened = false;
77
+ }
78
+ };
79
+ /**
80
+ * @param {?} fn
81
+ * @return {?}
82
+ */
83
+ MonoSelectComponent.prototype.registerOnChange = /**
84
+ * @param {?} fn
85
+ * @return {?}
86
+ */
87
+ function (fn) {
88
+ this.onChange = fn;
89
+ };
90
+ /**
91
+ * @param {?} fn
92
+ * @return {?}
93
+ */
94
+ MonoSelectComponent.prototype.registerOnTouched = /**
95
+ * @param {?} fn
96
+ * @return {?}
97
+ */
98
+ function (fn) {
99
+ this.onTouched = fn;
100
+ };
101
+ /**
102
+ * @param {?} isDisabled
103
+ * @return {?}
104
+ */
105
+ MonoSelectComponent.prototype.setDisabledState = /**
106
+ * @param {?} isDisabled
107
+ * @return {?}
108
+ */
109
+ function (isDisabled) {
110
+ this.disabled = isDisabled;
111
+ };
112
+ /**
113
+ * @param {?} obj
114
+ * @return {?}
115
+ */
116
+ MonoSelectComponent.prototype.writeValue = /**
117
+ * @param {?} obj
118
+ * @return {?}
119
+ */
120
+ function (obj) {
121
+ this.selectedOption = this.options.find((/**
122
+ * @param {?} option
123
+ * @return {?}
124
+ */
125
+ function (option) { return option.value === obj; }));
126
+ this.onChange(this.selectedOption ? this.selectedOption.value : null);
127
+ };
128
+ MonoSelectComponent.decorators = [
129
+ { type: Component, args: [{
130
+ selector: 'ode-mono-select',
131
+ template: "<div class=\"form-select lct-form-select\" [ngClass]=\"{'form-select--opened': opened, 'form-select--disabled': disabled}\">\n <ul>\n <li class=\"form-select__options--selected lct-form-select__options--selected\">\n <strong>{{selectedOption ? ((translateOptions == true) ? (selectedOption.label | translate) : selectedOption.label) : (placeholder | translate)}}</strong>\n <ul class=\"form-select__list lct-form-select__list\" *ngIf=\"opened\">\n <li class=\"form-select__options lct-form-select__options\"\n (click)=\"$event.stopPropagation(); optionClicked()\">{{placeholder | translate}}</li>\n <li class=\"form-select__options lct-form-select__options\"\n *ngFor=\"let option of options\"\n (click)=\"$event.stopPropagation(); optionClicked(option)\">{{(translateOptions == true) ? (option.label | translate) : option.label}}</li>\n </ul>\n </li>\n </ul>\n</div>\n",
132
+ providers: [{
133
+ provide: NG_VALUE_ACCESSOR,
134
+ useExisting: forwardRef((/**
135
+ * @return {?}
136
+ */
137
+ function () { return MonoSelectComponent; })),
138
+ multi: true
139
+ }],
140
+ host: {
141
+ '(document:click)': 'onClickOnDocument($event)',
142
+ '(click)': 'onClickOnHost()'
143
+ }
144
+ }] }
145
+ ];
146
+ /** @nocollapse */
147
+ MonoSelectComponent.ctorParameters = function () { return [
148
+ { type: ElementRef },
149
+ { type: Injector }
150
+ ]; };
151
+ MonoSelectComponent.propDecorators = {
152
+ placeholder: [{ type: Input }],
153
+ options: [{ type: Input }],
154
+ trackByFn: [{ type: Input }],
155
+ translateOptions: [{ type: Input }],
156
+ disabled: [{ type: Input }]
157
+ };
158
+ return MonoSelectComponent;
159
+ }(OdeComponent));
160
+ export { MonoSelectComponent };
161
+ if (false) {
162
+ /** @type {?} */
163
+ MonoSelectComponent.prototype.placeholder;
164
+ /** @type {?} */
165
+ MonoSelectComponent.prototype.options;
166
+ /** @type {?} */
167
+ MonoSelectComponent.prototype.trackByFn;
168
+ /** @type {?} */
169
+ MonoSelectComponent.prototype.translateOptions;
170
+ /** @type {?} */
171
+ MonoSelectComponent.prototype.opened;
172
+ /** @type {?} */
173
+ MonoSelectComponent.prototype.selectedOption;
174
+ /** @type {?} */
175
+ MonoSelectComponent.prototype.disabled;
176
+ /**
177
+ * @type {?}
178
+ * @private
179
+ */
180
+ MonoSelectComponent.prototype.onChange;
181
+ /**
182
+ * @type {?}
183
+ * @private
184
+ */
185
+ MonoSelectComponent.prototype.onTouched;
186
+ /**
187
+ * @type {?}
188
+ * @private
189
+ */
190
+ MonoSelectComponent.prototype.elementRef;
191
+ }
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uby1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW9kZS11aS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL21vbm8tc2VsZWN0L21vbm8tc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQXVCLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQUU1QztJQWE0QywrQ0FBWTtJQTBCcEQsNkJBQW9CLFVBQXNCLEVBQUUsUUFBa0I7UUFBOUQsWUFDSSxrQkFBTSxRQUFRLENBQUMsU0FDbEI7UUFGbUIsZ0JBQVUsR0FBVixVQUFVLENBQVk7UUF4Qm5DLGlCQUFXLEdBQUcsZ0NBQWdDLENBQUM7UUFHL0MsYUFBTyxHQUEyQixFQUFFLENBQUM7UUFNckMsc0JBQWdCLEdBQVksSUFBSSxDQUFDO1FBRWpDLFlBQU0sR0FBRyxLQUFLLENBQUM7UUFFZixvQkFBYyxHQUFvQixJQUFJLENBQUM7UUFHdkMsY0FBUSxHQUFHLEtBQUssQ0FBQztRQTRCaEIsY0FBUTs7OztRQUFHLFVBQUMsQ0FBSTtRQUN4QixDQUFDLEVBQUE7UUFFTyxlQUFTOzs7UUFBRztRQUNwQixDQUFDLEVBQUE7O0lBdEJELENBQUM7Ozs7O0lBUk0sMkNBQWE7Ozs7SUFBcEIsVUFBcUIsTUFBd0I7UUFDekMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xGLENBQUM7Ozs7O0lBTU0sK0NBQWlCOzs7O0lBQXhCLFVBQXlCLEtBQWlCO1FBQ3RDLElBQUksSUFBSSxDQUFDLE1BQU07WUFDWCxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekYsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDdkI7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzs7O0lBRU0sMkNBQWE7OztJQUFwQjtRQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztTQUN0QjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDdkI7SUFDTCxDQUFDOzs7OztJQVFELDhDQUFnQjs7OztJQUFoQixVQUFpQixFQUFPO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7Ozs7O0lBRUQsK0NBQWlCOzs7O0lBQWpCLFVBQWtCLEVBQU87UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7Ozs7SUFFRCw4Q0FBZ0I7Ozs7SUFBaEIsVUFBaUIsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQzs7Ozs7SUFFRCx3Q0FBVTs7OztJQUFWLFVBQVcsR0FBTTtRQUNiLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxNQUFNLENBQUMsS0FBSyxLQUFLLEdBQUcsRUFBcEIsQ0FBb0IsRUFBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFFLENBQUM7O2dCQWhGSixTQUFTLFNBQUM7b0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsdTdCQUEyQztvQkFDM0MsU0FBUyxFQUFFLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozs0QkFBQyxjQUFNLE9BQUEsbUJBQW1CLEVBQW5CLENBQW1CLEVBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUM7b0JBQ0YsSUFBSSxFQUFFO3dCQUNGLGtCQUFrQixFQUFFLDJCQUEyQjt3QkFDL0MsU0FBUyxFQUFFLGlCQUFpQjtxQkFDL0I7aUJBQ0o7Ozs7Z0JBakJtQixVQUFVO2dCQUFxQixRQUFROzs7OEJBbUJ0RCxLQUFLOzBCQUdMLEtBQUs7NEJBR0wsS0FBSzttQ0FHTCxLQUFLOzJCQU9MLEtBQUs7O0lBbURWLDBCQUFDO0NBQUEsQUFqRkQsQ0FhNEMsWUFBWSxHQW9FdkQ7U0FwRVksbUJBQW1COzs7SUFDNUIsMENBQ3NEOztJQUV0RCxzQ0FDNEM7O0lBRTVDLHdDQUNzRDs7SUFFdEQsK0NBQ3dDOztJQUV4QyxxQ0FBc0I7O0lBRXRCLDZDQUE4Qzs7SUFFOUMsdUNBQ3dCOzs7OztJQTRCeEIsdUNBQ0M7Ozs7O0lBRUQsd0NBQ0M7Ozs7O0lBeEJXLHlDQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSW5wdXQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtTZWxlY3RPcHRpb259IGZyb20gJy4uL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IE9kZUNvbXBvbmVudCB9IGZyb20gJ25neC1vZGUtY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnb2RlLW1vbm8tc2VsZWN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbW9uby1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTW9ub1NlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhkb2N1bWVudDpjbGljayknOiAnb25DbGlja09uRG9jdW1lbnQoJGV2ZW50KScsXG4gICAgICAgICcoY2xpY2spJzogJ29uQ2xpY2tPbkhvc3QoKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vbm9TZWxlY3RDb21wb25lbnQ8Sz4gZXh0ZW5kcyBPZGVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnbW9ub3NlbGVjdC5wbGFjZWhvbGRlci5kZWZhdWx0JztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG9wdGlvbnM6IEFycmF5PFNlbGVjdE9wdGlvbjxLPj4gPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHRyYWNrQnlGbjogKG9wdGlvblZhbHVlOiBLKSA9PiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0cmFuc2xhdGVPcHRpb25zOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHB1YmxpYyBvcGVuZWQgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBzZWxlY3RlZE9wdGlvbjogU2VsZWN0T3B0aW9uPEs+ID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgb3B0aW9uQ2xpY2tlZChvcHRpb24/OiBTZWxlY3RPcHRpb248Sz4pIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE9wdGlvbiA9IG9wdGlvbjtcbiAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnNlbGVjdGVkT3B0aW9uICE9IG51bGwgPyB0aGlzLnNlbGVjdGVkT3B0aW9uLnZhbHVlIDogbnVsbCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrT25Eb2N1bWVudChldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5vcGVuZWQgJiZcbiAgICAgICAgICAgICF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcubGN0LWZvcm0tc2VsZWN0JykuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25DbGlja09uSG9zdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLm9wZW5lZCAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5vcGVuZWQgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25DaGFuZ2UgPSAoXzogSykgPT4ge1xuICAgIH1cblxuICAgIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKG9iajogSyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkT3B0aW9uID0gdGhpcy5vcHRpb25zLmZpbmQob3B0aW9uID0+IG9wdGlvbi52YWx1ZSA9PT0gb2JqKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnNlbGVjdGVkT3B0aW9uID8gdGhpcy5zZWxlY3RlZE9wdGlvbi52YWx1ZSA6IG51bGwpO1xuICAgIH1cbn1cbiJdfQ==