@acorex/components 6.5.27 → 6.5.29

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 (631) hide show
  1. package/acorex-components.d.ts +5 -0
  2. package/esm2020/acorex-components.mjs +5 -0
  3. package/esm2020/lib/accordion/accordion.component.mjs +44 -0
  4. package/esm2020/lib/accordion/accordion.module.mjs +20 -0
  5. package/esm2020/lib/base/base-page.class.mjs +94 -0
  6. package/esm2020/lib/base/components.class.mjs +17 -0
  7. package/esm2020/lib/base/element.class.mjs +294 -0
  8. package/esm2020/lib/base/events.class.mjs +11 -0
  9. package/esm2020/lib/button/button.component.mjs +71 -0
  10. package/esm2020/lib/button/button.module.mjs +21 -0
  11. package/esm2020/lib/calendar/calendar-box/calendar-box.component.mjs +413 -0
  12. package/esm2020/lib/calendar/calendar-box/calendar-box.module.mjs +22 -0
  13. package/esm2020/lib/calendar/scheduler/scheduler-views.property.mjs +54 -0
  14. package/esm2020/lib/calendar/scheduler/scheduler.class.mjs +18 -0
  15. package/esm2020/lib/calendar/scheduler/scheduler.component.mjs +213 -0
  16. package/esm2020/lib/calendar/scheduler/scheduler.module.mjs +68 -0
  17. package/esm2020/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.mjs +132 -0
  18. package/esm2020/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.mjs +37 -0
  19. package/esm2020/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.mjs +47 -0
  20. package/esm2020/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.mjs +95 -0
  21. package/esm2020/lib/calendar/scheduler/views/month/scheduler-month-view.component.mjs +204 -0
  22. package/esm2020/lib/calendar/scheduler/views/scheduler-view.component.mjs +99 -0
  23. package/esm2020/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.mjs +77 -0
  24. package/esm2020/lib/checkbox/checkbox.component.mjs +98 -0
  25. package/esm2020/lib/checkbox/checkbox.module.mjs +20 -0
  26. package/esm2020/lib/color-picker/color-box/color-box.component.mjs +422 -0
  27. package/esm2020/lib/color-picker/color-picker.component.mjs +82 -0
  28. package/esm2020/lib/color-picker/color-picker.module.mjs +24 -0
  29. package/esm2020/lib/context-menu/context-menu.component.mjs +65 -0
  30. package/esm2020/lib/context-menu/context-menu.directive.mjs +135 -0
  31. package/esm2020/lib/context-menu/context-menu.module.mjs +20 -0
  32. package/esm2020/lib/data-filter/columns/filter-column-date.component.mjs +138 -0
  33. package/esm2020/lib/data-filter/columns/filter-column-number.component.mjs +117 -0
  34. package/esm2020/lib/data-filter/columns/filter-column-selection.component.mjs +74 -0
  35. package/esm2020/lib/data-filter/columns/filter-column-string.component.mjs +117 -0
  36. package/esm2020/lib/data-filter/filter-panel/filter-panel.component.mjs +258 -0
  37. package/esm2020/lib/data-filter/filter.class.mjs +44 -0
  38. package/esm2020/lib/data-filter/filter.module.mjs +90 -0
  39. package/esm2020/lib/data-filter/toolbar/filter-toolbar.component.mjs +166 -0
  40. package/esm2020/lib/data-list/core/data-list.component.mjs +40 -0
  41. package/esm2020/lib/data-list/list/list.component.mjs +124 -0
  42. package/esm2020/lib/data-list/list/list.module.mjs +22 -0
  43. package/esm2020/lib/data-list/list/toolbar-list-view.component.mjs +85 -0
  44. package/esm2020/lib/data-source/datasource.component.mjs +47 -0
  45. package/esm2020/lib/data-source/datasource.module.mjs +18 -0
  46. package/esm2020/lib/data-source/read-param.mjs +5 -0
  47. package/esm2020/lib/date-picker/date-picker.component.mjs +702 -0
  48. package/esm2020/lib/date-picker/date-picker.module.mjs +25 -0
  49. package/esm2020/lib/dialog/dialog.component.mjs +24 -0
  50. package/esm2020/lib/dialog/dialog.module.mjs +21 -0
  51. package/esm2020/lib/dialog/dialog.service.mjs +150 -0
  52. package/esm2020/lib/drawer/content.component.mjs +18 -0
  53. package/esm2020/lib/drawer/drawer-container.component.mjs +36 -0
  54. package/esm2020/lib/drawer/drawer.component.mjs +142 -0
  55. package/esm2020/lib/drawer/drawer.module.mjs +23 -0
  56. package/esm2020/lib/dropdown/dropdown.component.mjs +176 -0
  57. package/esm2020/lib/dropdown/dropdown.module.mjs +26 -0
  58. package/esm2020/lib/fieldset/fieldset.component.mjs +59 -0
  59. package/esm2020/lib/fieldset/fieldset.module.mjs +19 -0
  60. package/esm2020/lib/form-group/form-group.component.mjs +34 -0
  61. package/esm2020/lib/form-group/form-group.module.mjs +21 -0
  62. package/esm2020/lib/label/label.component.mjs +19 -0
  63. package/esm2020/lib/label/label.module.mjs +21 -0
  64. package/esm2020/lib/loading/loading-indicator.component.mjs +17 -0
  65. package/esm2020/lib/loading/loading-panel.component.mjs +44 -0
  66. package/esm2020/lib/loading/loading.module.mjs +21 -0
  67. package/esm2020/lib/loading/loading.service.mjs +45 -0
  68. package/esm2020/lib/menu/menu-item.component.mjs +47 -0
  69. package/esm2020/lib/menu/menu.component.mjs +86 -0
  70. package/esm2020/lib/menu/menu.module.mjs +22 -0
  71. package/esm2020/lib/menu/menu2.component.mjs +96 -0
  72. package/esm2020/lib/number-box/number-box.component.mjs +622 -0
  73. package/esm2020/lib/number-box/number-box.module.mjs +21 -0
  74. package/esm2020/lib/page/content.component.mjs +32 -0
  75. package/esm2020/lib/page/footer.component.mjs +19 -0
  76. package/esm2020/lib/page/page.component.mjs +53 -0
  77. package/esm2020/lib/page/page.module.mjs +22 -0
  78. package/esm2020/lib/panel-box/panel-box.component.mjs +88 -0
  79. package/esm2020/lib/panel-box/panel-box.module.mjs +19 -0
  80. package/esm2020/lib/password-box/password-box.component.mjs +31 -0
  81. package/esm2020/lib/password-box/password-box.module.mjs +23 -0
  82. package/esm2020/lib/popover/custom-cdk-overlay.service.mjs +48 -0
  83. package/esm2020/lib/popover/overlay.service.mjs +90 -0
  84. package/esm2020/lib/popover/popover.component.mjs +127 -0
  85. package/esm2020/lib/popover/popover.module.mjs +19 -0
  86. package/esm2020/lib/popup/popup.component.mjs +147 -0
  87. package/esm2020/lib/popup/popup.module.mjs +25 -0
  88. package/esm2020/lib/popup/popup.service.mjs +93 -0
  89. package/esm2020/lib/progress-bar/progress-bar.component.mjs +19 -0
  90. package/esm2020/lib/progress-bar/progress-bar.module.mjs +19 -0
  91. package/esm2020/lib/property-editor/editors/check-editor/check-editor.mjs +61 -0
  92. package/esm2020/lib/property-editor/editors/check-editor/check.module.mjs +22 -0
  93. package/esm2020/lib/property-editor/editors/color-editor/color.editor.mjs +38 -0
  94. package/esm2020/lib/property-editor/editors/color-editor/color.module.mjs +24 -0
  95. package/esm2020/lib/property-editor/editors/column-editor/column.editor.mjs +115 -0
  96. package/esm2020/lib/property-editor/editors/column-editor/column.module.mjs +32 -0
  97. package/esm2020/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.mjs +211 -0
  98. package/esm2020/lib/property-editor/editors/conditional-color-editor/conditional-color.module.mjs +78 -0
  99. package/esm2020/lib/property-editor/editors/date-editor/date.editor.mjs +51 -0
  100. package/esm2020/lib/property-editor/editors/date-editor/date.module.mjs +24 -0
  101. package/esm2020/lib/property-editor/editors/number-editor/number.editor.mjs +63 -0
  102. package/esm2020/lib/property-editor/editors/number-editor/number.module.mjs +24 -0
  103. package/esm2020/lib/property-editor/editors/range-editor/range.editor.mjs +140 -0
  104. package/esm2020/lib/property-editor/editors/range-editor/range.module.mjs +61 -0
  105. package/esm2020/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.mjs +72 -0
  106. package/esm2020/lib/property-editor/editors/selectbox-editor/selectbox.editor.mjs +71 -0
  107. package/esm2020/lib/property-editor/editors/selectbox-editor/selectbox.module.mjs +25 -0
  108. package/esm2020/lib/property-editor/editors/selection-editor/selection-editor.mjs +69 -0
  109. package/esm2020/lib/property-editor/editors/selection-editor/selection.module.mjs +22 -0
  110. package/esm2020/lib/property-editor/editors/switch-editor/number.editor.mjs +29 -0
  111. package/esm2020/lib/property-editor/editors/switch-editor/number.module.mjs +25 -0
  112. package/esm2020/lib/property-editor/editors/text-editor/text.editor.mjs +32 -0
  113. package/esm2020/lib/property-editor/editors/text-editor/text.module.mjs +24 -0
  114. package/esm2020/lib/property-editor/editors/textarea-editor/textarea.editor.mjs +32 -0
  115. package/esm2020/lib/property-editor/editors/textarea-editor/textarea.module.mjs +24 -0
  116. package/esm2020/lib/property-editor/editors/time-editor/time.editor.mjs +43 -0
  117. package/esm2020/lib/property-editor/editors/time-editor/time.module.mjs +24 -0
  118. package/esm2020/lib/property-editor/property-editor-renderer.directive.mjs +154 -0
  119. package/esm2020/lib/property-editor/property-editor.class.mjs +101 -0
  120. package/esm2020/lib/property-editor/property-editor.module.mjs +196 -0
  121. package/esm2020/lib/query-builder/query-builder-group.component.mjs +124 -0
  122. package/esm2020/lib/query-builder/query-builder-popup/query-builder-popup.component.mjs +171 -0
  123. package/esm2020/lib/query-builder/query-builder-rule.component.mjs +395 -0
  124. package/esm2020/lib/query-builder/query-builder.class.mjs +20 -0
  125. package/esm2020/lib/query-builder/query-builder.component.mjs +82 -0
  126. package/esm2020/lib/query-builder/query-builder.module.mjs +62 -0
  127. package/esm2020/lib/query-builder/query-builder.service.mjs +197 -0
  128. package/esm2020/lib/search-bar/search-bar.component.mjs +283 -0
  129. package/esm2020/lib/search-bar/search-bar.module.mjs +63 -0
  130. package/esm2020/lib/searchbox/searchbox.component.mjs +79 -0
  131. package/esm2020/lib/searchbox/searchbox.module.mjs +24 -0
  132. package/esm2020/lib/selectbox/selectbox.component.mjs +961 -0
  133. package/esm2020/lib/selectbox/selectbox.module.mjs +44 -0
  134. package/esm2020/lib/selectbox/selectbox2.component.mjs +574 -0
  135. package/esm2020/lib/selection-list/selection-list.component.mjs +108 -0
  136. package/esm2020/lib/selection-list/selection-list.module.mjs +21 -0
  137. package/esm2020/lib/switch/switch.component.mjs +51 -0
  138. package/esm2020/lib/switch/switch.module.mjs +20 -0
  139. package/esm2020/lib/tab-page/tab-page-Renderer.component.mjs +71 -0
  140. package/esm2020/lib/tab-page/tab-page-host.component.mjs +116 -0
  141. package/esm2020/lib/tab-page/tab-page.module.mjs +21 -0
  142. package/esm2020/lib/tab-page/tab-page.service.mjs +156 -0
  143. package/esm2020/lib/tab-strip/tab-strip.component.mjs +36 -0
  144. package/esm2020/lib/tab-strip/tab-strip.module.mjs +19 -0
  145. package/esm2020/lib/tab-view/dynamic-tabs.directive.mjs +24 -0
  146. package/esm2020/lib/tab-view/tab-view.component.mjs +105 -0
  147. package/esm2020/lib/tab-view/tab-view.module.mjs +21 -0
  148. package/esm2020/lib/tab-view/tab.component.mjs +30 -0
  149. package/esm2020/lib/textarea/textarea.component.mjs +26 -0
  150. package/esm2020/lib/textarea/textarea.module.mjs +21 -0
  151. package/esm2020/lib/textbox/textbox.component.mjs +39 -0
  152. package/esm2020/lib/textbox/textbox.module.mjs +24 -0
  153. package/esm2020/lib/time-picker/time-picker.component.mjs +943 -0
  154. package/esm2020/lib/time-picker/time-picker.module.mjs +22 -0
  155. package/esm2020/lib/toast/toast-message/toast-message.component.mjs +74 -0
  156. package/esm2020/lib/toast/toast-wrapper/toast-wrapper.component.mjs +13 -0
  157. package/esm2020/lib/toast/toast.module.mjs +21 -0
  158. package/esm2020/lib/toast/toast.service.mjs +44 -0
  159. package/esm2020/lib/toolbar/group-button/toolbar-group-button.component.mjs +78 -0
  160. package/esm2020/lib/toolbar/menu/toolbar-menu.component.mjs +57 -0
  161. package/esm2020/lib/toolbar/search/toolbar-search.component.mjs +54 -0
  162. package/esm2020/lib/toolbar/title/toolbar-title.component.mjs +47 -0
  163. package/esm2020/lib/toolbar/toolbar-item.mjs +6 -0
  164. package/esm2020/lib/toolbar/toolbar.component.mjs +13 -0
  165. package/esm2020/lib/toolbar/toolbar.module.mjs +40 -0
  166. package/esm2020/lib/tooltip/tooltip.directive.mjs +100 -0
  167. package/esm2020/lib/tooltip/tooltip.module.mjs +19 -0
  168. package/esm2020/lib/tree-side-menu/tree-side-menu.component.mjs +646 -0
  169. package/esm2020/lib/tree-side-menu/tree-side-menu.module.mjs +35 -0
  170. package/esm2020/lib/tree-view/tree-view.component.mjs +775 -0
  171. package/esm2020/lib/tree-view/tree-view.module.mjs +22 -0
  172. package/esm2020/lib/upload-file/upload-file.component.mjs +208 -0
  173. package/esm2020/lib/upload-file/upload-file.events.mjs +2 -0
  174. package/esm2020/lib/upload-file/upload-file.module.mjs +24 -0
  175. package/esm2020/lib/validation/validation-form.component.mjs +65 -0
  176. package/esm2020/lib/validation/validation-rule.widget.mjs +111 -0
  177. package/esm2020/lib/validation/validation.class.mjs +2 -0
  178. package/esm2020/lib/validation/validation.component.mjs +89 -0
  179. package/esm2020/lib/validation/validation.module.mjs +34 -0
  180. package/esm2020/public-api.mjs +158 -0
  181. package/fesm2015/acorex-components.mjs +15988 -0
  182. package/fesm2015/acorex-components.mjs.map +1 -0
  183. package/fesm2020/acorex-components.mjs +15923 -0
  184. package/fesm2020/acorex-components.mjs.map +1 -0
  185. package/lib/accordion/accordion.component.d.ts +13 -0
  186. package/lib/accordion/accordion.module.d.ts +9 -0
  187. package/lib/base/base-page.class.d.ts +46 -0
  188. package/lib/base/components.class.d.ts +10 -0
  189. package/lib/base/element.class.d.ts +106 -0
  190. package/lib/base/events.class.d.ts +18 -0
  191. package/lib/button/button.component.d.ts +21 -0
  192. package/lib/button/button.module.d.ts +8 -0
  193. package/lib/calendar/calendar-box/calendar-box.component.d.ts +81 -0
  194. package/lib/calendar/calendar-box/calendar-box.module.d.ts +11 -0
  195. package/lib/calendar/scheduler/scheduler-views.property.d.ts +19 -0
  196. package/{src/lib/calendar/scheduler/scheduler.class.ts → lib/calendar/scheduler/scheduler.class.d.ts} +6 -20
  197. package/lib/calendar/scheduler/scheduler.component.d.ts +39 -0
  198. package/lib/calendar/scheduler/scheduler.module.d.ts +21 -0
  199. package/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.d.ts +25 -0
  200. package/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.d.ts +14 -0
  201. package/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.d.ts +16 -0
  202. package/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.d.ts +26 -0
  203. package/lib/calendar/scheduler/views/month/scheduler-month-view.component.d.ts +37 -0
  204. package/lib/calendar/scheduler/views/scheduler-view.component.d.ts +28 -0
  205. package/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.d.ts +24 -0
  206. package/lib/checkbox/checkbox.component.d.ts +30 -0
  207. package/lib/checkbox/checkbox.module.d.ts +9 -0
  208. package/lib/color-picker/color-box/color-box.component.d.ts +25 -0
  209. package/lib/color-picker/color-picker.component.d.ts +30 -0
  210. package/lib/color-picker/color-picker.module.d.ts +13 -0
  211. package/lib/context-menu/context-menu.component.d.ts +22 -0
  212. package/lib/context-menu/context-menu.directive.d.ts +38 -0
  213. package/lib/context-menu/context-menu.module.d.ts +9 -0
  214. package/lib/data-filter/columns/filter-column-date.component.d.ts +22 -0
  215. package/lib/data-filter/columns/filter-column-number.component.d.ts +15 -0
  216. package/lib/data-filter/columns/filter-column-selection.component.d.ts +18 -0
  217. package/lib/data-filter/columns/filter-column-string.component.d.ts +15 -0
  218. package/lib/data-filter/filter-panel/filter-panel.component.d.ts +45 -0
  219. package/lib/data-filter/filter.class.d.ts +40 -0
  220. package/lib/data-filter/filter.module.d.ts +24 -0
  221. package/lib/data-filter/toolbar/filter-toolbar.component.d.ts +25 -0
  222. package/lib/data-list/core/data-list.component.d.ts +15 -0
  223. package/lib/data-list/list/list.component.d.ts +40 -0
  224. package/lib/data-list/list/list.module.d.ts +11 -0
  225. package/lib/data-list/list/toolbar-list-view.component.d.ts +17 -0
  226. package/lib/data-source/datasource.component.d.ts +16 -0
  227. package/lib/data-source/datasource.module.d.ts +7 -0
  228. package/{src/lib/data-source/read-param.ts → lib/data-source/read-param.d.ts} +3 -13
  229. package/lib/date-picker/date-picker.component.d.ts +81 -0
  230. package/lib/date-picker/date-picker.module.d.ts +14 -0
  231. package/lib/dialog/dialog.component.d.ts +14 -0
  232. package/lib/dialog/dialog.module.d.ts +10 -0
  233. package/lib/dialog/dialog.service.d.ts +36 -0
  234. package/lib/drawer/content.component.d.ts +7 -0
  235. package/lib/drawer/drawer-container.component.d.ts +10 -0
  236. package/lib/drawer/drawer.component.d.ts +34 -0
  237. package/lib/drawer/drawer.module.d.ts +10 -0
  238. package/lib/dropdown/dropdown.component.d.ts +38 -0
  239. package/lib/dropdown/dropdown.module.d.ts +13 -0
  240. package/lib/fieldset/fieldset.component.d.ts +11 -0
  241. package/lib/fieldset/fieldset.module.d.ts +8 -0
  242. package/lib/form-group/form-group.component.d.ts +14 -0
  243. package/lib/form-group/form-group.module.d.ts +8 -0
  244. package/lib/label/label.component.d.ts +9 -0
  245. package/lib/label/label.module.d.ts +8 -0
  246. package/lib/loading/loading-indicator.component.d.ts +9 -0
  247. package/lib/loading/loading-panel.component.d.ts +13 -0
  248. package/lib/loading/loading.module.d.ts +10 -0
  249. package/lib/loading/loading.service.d.ts +13 -0
  250. package/lib/menu/menu-item.component.d.ts +18 -0
  251. package/lib/menu/menu.component.d.ts +35 -0
  252. package/lib/menu/menu.module.d.ts +11 -0
  253. package/lib/menu/menu2.component.d.ts +21 -0
  254. package/lib/number-box/number-box.component.d.ts +52 -0
  255. package/lib/number-box/number-box.module.d.ts +10 -0
  256. package/lib/page/content.component.d.ts +8 -0
  257. package/lib/page/footer.component.d.ts +5 -0
  258. package/lib/page/page.component.d.ts +16 -0
  259. package/lib/page/page.module.d.ts +11 -0
  260. package/lib/panel-box/panel-box.component.d.ts +19 -0
  261. package/lib/panel-box/panel-box.module.d.ts +8 -0
  262. package/lib/password-box/password-box.component.d.ts +12 -0
  263. package/lib/password-box/password-box.module.d.ts +10 -0
  264. package/lib/popover/custom-cdk-overlay.service.d.ts +19 -0
  265. package/lib/popover/overlay.service.d.ts +31 -0
  266. package/lib/popover/popover.component.d.ts +34 -0
  267. package/lib/popover/popover.module.d.ts +8 -0
  268. package/lib/popup/popup.component.d.ts +40 -0
  269. package/lib/popup/popup.module.d.ts +13 -0
  270. package/lib/popup/popup.service.d.ts +22 -0
  271. package/lib/progress-bar/progress-bar.component.d.ts +7 -0
  272. package/lib/progress-bar/progress-bar.module.d.ts +8 -0
  273. package/lib/property-editor/editors/check-editor/check-editor.d.ts +19 -0
  274. package/lib/property-editor/editors/check-editor/check.module.d.ts +11 -0
  275. package/lib/property-editor/editors/color-editor/color.editor.d.ts +13 -0
  276. package/lib/property-editor/editors/color-editor/color.module.d.ts +12 -0
  277. package/lib/property-editor/editors/column-editor/column.editor.d.ts +34 -0
  278. package/lib/property-editor/editors/column-editor/column.module.d.ts +20 -0
  279. package/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.d.ts +44 -0
  280. package/lib/property-editor/editors/conditional-color-editor/conditional-color.module.d.ts +19 -0
  281. package/lib/property-editor/editors/date-editor/date.editor.d.ts +28 -0
  282. package/lib/property-editor/editors/date-editor/date.module.d.ts +12 -0
  283. package/lib/property-editor/editors/number-editor/number.editor.d.ts +20 -0
  284. package/lib/property-editor/editors/number-editor/number.module.d.ts +12 -0
  285. package/lib/property-editor/editors/range-editor/range.editor.d.ts +29 -0
  286. package/lib/property-editor/editors/range-editor/range.module.d.ts +18 -0
  287. package/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.d.ts +29 -0
  288. package/lib/property-editor/editors/selectbox-editor/selectbox.editor.d.ts +28 -0
  289. package/lib/property-editor/editors/selectbox-editor/selectbox.module.d.ts +14 -0
  290. package/lib/property-editor/editors/selection-editor/selection-editor.d.ts +25 -0
  291. package/lib/property-editor/editors/selection-editor/selection.module.d.ts +11 -0
  292. package/lib/property-editor/editors/switch-editor/number.editor.d.ts +11 -0
  293. package/lib/property-editor/editors/switch-editor/number.module.d.ts +13 -0
  294. package/lib/property-editor/editors/text-editor/text.editor.d.ts +18 -0
  295. package/lib/property-editor/editors/text-editor/text.module.d.ts +12 -0
  296. package/lib/property-editor/editors/textarea-editor/textarea.editor.d.ts +17 -0
  297. package/lib/property-editor/editors/textarea-editor/textarea.module.d.ts +12 -0
  298. package/lib/property-editor/editors/time-editor/time.editor.d.ts +17 -0
  299. package/lib/property-editor/editors/time-editor/time.module.d.ts +12 -0
  300. package/lib/property-editor/property-editor-renderer.directive.d.ts +30 -0
  301. package/lib/property-editor/property-editor.class.d.ts +92 -0
  302. package/lib/property-editor/property-editor.module.d.ts +21 -0
  303. package/lib/query-builder/query-builder-group.component.d.ts +33 -0
  304. package/lib/query-builder/query-builder-popup/query-builder-popup.component.d.ts +35 -0
  305. package/lib/query-builder/query-builder-rule.component.d.ts +45 -0
  306. package/lib/query-builder/query-builder.class.d.ts +45 -0
  307. package/lib/query-builder/query-builder.component.d.ts +27 -0
  308. package/lib/query-builder/query-builder.module.d.ts +23 -0
  309. package/lib/query-builder/query-builder.service.d.ts +18 -0
  310. package/lib/search-bar/search-bar.component.d.ts +61 -0
  311. package/lib/search-bar/search-bar.module.d.ts +18 -0
  312. package/lib/searchbox/searchbox.component.d.ts +22 -0
  313. package/lib/searchbox/searchbox.module.d.ts +13 -0
  314. package/lib/selectbox/selectbox.component.d.ts +118 -0
  315. package/lib/selectbox/selectbox.module.d.ts +15 -0
  316. package/lib/selectbox/selectbox2.component.d.ts +103 -0
  317. package/lib/selection-list/selection-list.component.d.ts +32 -0
  318. package/lib/selection-list/selection-list.module.d.ts +10 -0
  319. package/lib/switch/switch.component.d.ts +20 -0
  320. package/lib/switch/switch.module.d.ts +9 -0
  321. package/lib/tab-page/tab-page-Renderer.component.d.ts +16 -0
  322. package/lib/tab-page/tab-page-host.component.d.ts +25 -0
  323. package/lib/tab-page/tab-page.module.d.ts +10 -0
  324. package/lib/tab-page/tab-page.service.d.ts +30 -0
  325. package/lib/tab-strip/tab-strip.component.d.ts +28 -0
  326. package/lib/tab-strip/tab-strip.module.d.ts +8 -0
  327. package/lib/tab-view/dynamic-tabs.directive.d.ts +16 -0
  328. package/lib/tab-view/tab-view.component.d.ts +26 -0
  329. package/lib/tab-view/tab-view.module.d.ts +10 -0
  330. package/lib/tab-view/tab.component.d.ts +12 -0
  331. package/lib/textarea/textarea.component.d.ts +12 -0
  332. package/lib/textarea/textarea.module.d.ts +8 -0
  333. package/lib/textbox/textbox.component.d.ts +16 -0
  334. package/lib/textbox/textbox.module.d.ts +11 -0
  335. package/lib/time-picker/time-picker.component.d.ts +52 -0
  336. package/lib/time-picker/time-picker.module.d.ts +11 -0
  337. package/lib/toast/toast-message/toast-message.component.d.ts +18 -0
  338. package/lib/toast/toast-wrapper/toast-wrapper.component.d.ts +8 -0
  339. package/lib/toast/toast.module.d.ts +9 -0
  340. package/lib/toast/toast.service.d.ts +18 -0
  341. package/lib/toolbar/group-button/toolbar-group-button.component.d.ts +12 -0
  342. package/lib/toolbar/menu/toolbar-menu.component.d.ts +24 -0
  343. package/lib/toolbar/search/toolbar-search.component.d.ts +16 -0
  344. package/lib/toolbar/title/toolbar-title.component.d.ts +9 -0
  345. package/lib/toolbar/toolbar-item.d.ts +3 -0
  346. package/lib/toolbar/toolbar.component.d.ts +8 -0
  347. package/lib/toolbar/toolbar.module.d.ts +14 -0
  348. package/lib/tooltip/tooltip.directive.d.ts +21 -0
  349. package/lib/tooltip/tooltip.module.d.ts +8 -0
  350. package/lib/tree-side-menu/tree-side-menu.component.d.ts +111 -0
  351. package/lib/tree-side-menu/tree-side-menu.module.d.ts +11 -0
  352. package/lib/tree-view/tree-view.component.d.ts +121 -0
  353. package/lib/tree-view/tree-view.module.d.ts +11 -0
  354. package/lib/upload-file/upload-file.component.d.ts +42 -0
  355. package/lib/upload-file/upload-file.events.d.ts +10 -0
  356. package/lib/upload-file/upload-file.module.d.ts +13 -0
  357. package/lib/validation/validation-form.component.d.ts +19 -0
  358. package/lib/validation/validation-rule.widget.d.ts +23 -0
  359. package/lib/validation/validation.class.d.ts +16 -0
  360. package/lib/validation/validation.component.d.ts +25 -0
  361. package/lib/validation/validation.module.d.ts +11 -0
  362. package/package.json +32 -12
  363. package/{src/public-api.ts → public-api.d.ts} +2 -61
  364. package/karma.conf.js +0 -32
  365. package/ng-package.json +0 -10
  366. package/src/lib/accordion/accordion.component.ts +0 -43
  367. package/src/lib/accordion/accordion.module.ts +0 -11
  368. package/src/lib/accordion/api.ts +0 -2
  369. package/src/lib/base/base-page.class.ts +0 -116
  370. package/src/lib/base/components.class.ts +0 -9
  371. package/src/lib/base/element.class.ts +0 -344
  372. package/src/lib/base/events.class.ts +0 -32
  373. package/src/lib/button/button.component.html +0 -17
  374. package/src/lib/button/button.component.ts +0 -72
  375. package/src/lib/button/button.module.ts +0 -14
  376. package/src/lib/calendar/calendar-box/calendar-box.component.html +0 -68
  377. package/src/lib/calendar/calendar-box/calendar-box.component.ts +0 -461
  378. package/src/lib/calendar/calendar-box/calendar-box.module.ts +0 -16
  379. package/src/lib/calendar/scheduler/scheduler-views.property.ts +0 -38
  380. package/src/lib/calendar/scheduler/scheduler.component.html +0 -9
  381. package/src/lib/calendar/scheduler/scheduler.component.scss +0 -181
  382. package/src/lib/calendar/scheduler/scheduler.component.ts +0 -249
  383. package/src/lib/calendar/scheduler/scheduler.module.ts +0 -45
  384. package/src/lib/calendar/scheduler/toolbars/scheduler-toolbar-navigator.ts +0 -133
  385. package/src/lib/calendar/scheduler/toolbars/scheduler-toolbar-views.ts +0 -33
  386. package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.html +0 -43
  387. package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.scss +0 -66
  388. package/src/lib/calendar/scheduler/views/agenda/scheduler-agenda-view.component.ts +0 -50
  389. package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.html +0 -45
  390. package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.scss +0 -19
  391. package/src/lib/calendar/scheduler/views/daytime/scheduler-daytime-view.component.ts +0 -103
  392. package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.html +0 -39
  393. package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.scss +0 -55
  394. package/src/lib/calendar/scheduler/views/month/scheduler-month-view.component.ts +0 -233
  395. package/src/lib/calendar/scheduler/views/scheduler-view.component.ts +0 -124
  396. package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.html +0 -50
  397. package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.scss +0 -4
  398. package/src/lib/calendar/scheduler/views/timeline/scheduler-timeline-view.component.ts +0 -92
  399. package/src/lib/checkbox/checkbox.component.html +0 -22
  400. package/src/lib/checkbox/checkbox.component.ts +0 -107
  401. package/src/lib/checkbox/checkbox.module.ts +0 -11
  402. package/src/lib/color-picker/color-box/color-box.component.html +0 -37
  403. package/src/lib/color-picker/color-box/color-box.component.scss +0 -60
  404. package/src/lib/color-picker/color-box/color-box.component.ts +0 -438
  405. package/src/lib/color-picker/color-picker.component.html +0 -31
  406. package/src/lib/color-picker/color-picker.component.ts +0 -87
  407. package/src/lib/color-picker/color-picker.module.ts +0 -16
  408. package/src/lib/context-menu/context-menu.component.html +0 -42
  409. package/src/lib/context-menu/context-menu.component.ts +0 -78
  410. package/src/lib/context-menu/context-menu.directive.ts +0 -159
  411. package/src/lib/context-menu/context-menu.module.ts +0 -15
  412. package/src/lib/data-filter/columns/filter-column-date.component.ts +0 -123
  413. package/src/lib/data-filter/columns/filter-column-number.component.ts +0 -100
  414. package/src/lib/data-filter/columns/filter-column-selection.component.ts +0 -69
  415. package/src/lib/data-filter/columns/filter-column-string.component.ts +0 -100
  416. package/src/lib/data-filter/filter-panel/filter-panel.component.html +0 -120
  417. package/src/lib/data-filter/filter-panel/filter-panel.component.scss +0 -143
  418. package/src/lib/data-filter/filter-panel/filter-panel.component.ts +0 -266
  419. package/src/lib/data-filter/filter.class.ts +0 -73
  420. package/src/lib/data-filter/filter.module.ts +0 -52
  421. package/src/lib/data-filter/toolbar/filter-toolbar.component.html +0 -5
  422. package/src/lib/data-filter/toolbar/filter-toolbar.component.scss +0 -17
  423. package/src/lib/data-filter/toolbar/filter-toolbar.component.ts +0 -179
  424. package/src/lib/data-list/core/data-list.component.ts +0 -62
  425. package/src/lib/data-list/list/list.component.html +0 -32
  426. package/src/lib/data-list/list/list.component.scss +0 -64
  427. package/src/lib/data-list/list/list.component.ts +0 -149
  428. package/src/lib/data-list/list/list.module.ts +0 -14
  429. package/src/lib/data-list/list/toolbar-list-view.component.ts +0 -63
  430. package/src/lib/data-source/datasource.component.ts +0 -50
  431. package/src/lib/data-source/datasource.module.ts +0 -11
  432. package/src/lib/date-picker/date-picker.component.html +0 -30
  433. package/src/lib/date-picker/date-picker.component.scss +0 -5
  434. package/src/lib/date-picker/date-picker.component.ts +0 -720
  435. package/src/lib/date-picker/date-picker.module.ts +0 -17
  436. package/src/lib/dialog/dialog.component.html +0 -5
  437. package/src/lib/dialog/dialog.component.scss +0 -32
  438. package/src/lib/dialog/dialog.component.ts +0 -32
  439. package/src/lib/dialog/dialog.module.ts +0 -13
  440. package/src/lib/dialog/dialog.service.ts +0 -178
  441. package/src/lib/drawer/content.component.ts +0 -18
  442. package/src/lib/drawer/drawer-container.component.ts +0 -37
  443. package/src/lib/drawer/drawer.component.ts +0 -151
  444. package/src/lib/drawer/drawer.module.ts +0 -16
  445. package/src/lib/dropdown/dropdown.component.html +0 -26
  446. package/src/lib/dropdown/dropdown.component.scss +0 -8
  447. package/src/lib/dropdown/dropdown.component.ts +0 -197
  448. package/src/lib/dropdown/dropdown.module.ts +0 -19
  449. package/src/lib/fieldset/fieldset.component.html +0 -6
  450. package/src/lib/fieldset/fieldset.component.ts +0 -49
  451. package/src/lib/fieldset/fieldset.module.ts +0 -11
  452. package/src/lib/form-group/form-group.component.html +0 -15
  453. package/src/lib/form-group/form-group.component.ts +0 -39
  454. package/src/lib/form-group/form-group.module.ts +0 -14
  455. package/src/lib/label/label.component.html +0 -5
  456. package/src/lib/label/label.component.ts +0 -18
  457. package/src/lib/label/label.module.ts +0 -14
  458. package/src/lib/loading/loading-indicator.component.html +0 -27
  459. package/src/lib/loading/loading-indicator.component.ts +0 -16
  460. package/src/lib/loading/loading-panel.component.ts +0 -37
  461. package/src/lib/loading/loading.module.ts +0 -13
  462. package/src/lib/loading/loading.service.ts +0 -44
  463. package/src/lib/menu/menu-item.component.ts +0 -41
  464. package/src/lib/menu/menu.component.html +0 -74
  465. package/src/lib/menu/menu.component.ts +0 -111
  466. package/src/lib/menu/menu.module.ts +0 -13
  467. package/src/lib/menu/menu2.component.scss +0 -59
  468. package/src/lib/menu/menu2.component.ts +0 -98
  469. package/src/lib/number-box/number-box.component.html +0 -32
  470. package/src/lib/number-box/number-box.component.ts +0 -641
  471. package/src/lib/number-box/number-box.module.ts +0 -13
  472. package/src/lib/page/content.component.ts +0 -18
  473. package/src/lib/page/footer.component.ts +0 -13
  474. package/src/lib/page/page.component.ts +0 -43
  475. package/src/lib/page/page.module.ts +0 -14
  476. package/src/lib/panel-box/panel-box.component.html +0 -19
  477. package/src/lib/panel-box/panel-box.component.scss +0 -25
  478. package/src/lib/panel-box/panel-box.component.ts +0 -87
  479. package/src/lib/panel-box/panel-box.module.ts +0 -10
  480. package/src/lib/password-box/password-box.component.html +0 -22
  481. package/src/lib/password-box/password-box.component.ts +0 -30
  482. package/src/lib/password-box/password-box.module.ts +0 -16
  483. package/src/lib/popover/custom-cdk-overlay.service.ts +0 -82
  484. package/src/lib/popover/overlay.service.ts +0 -102
  485. package/src/lib/popover/popover.component.html +0 -5
  486. package/src/lib/popover/popover.component.scss +0 -9
  487. package/src/lib/popover/popover.component.ts +0 -130
  488. package/src/lib/popover/popover.module.ts +0 -11
  489. package/src/lib/popup/popup.component.html +0 -33
  490. package/src/lib/popup/popup.component.scss +0 -167
  491. package/src/lib/popup/popup.component.ts +0 -184
  492. package/src/lib/popup/popup.module.ts +0 -16
  493. package/src/lib/popup/popup.service.ts +0 -103
  494. package/src/lib/progress-bar/progress-bar.component.html +0 -5
  495. package/src/lib/progress-bar/progress-bar.component.ts +0 -10
  496. package/src/lib/progress-bar/progress-bar.module.ts +0 -11
  497. package/src/lib/property-editor/editors/check-editor/check-editor.ts +0 -44
  498. package/src/lib/property-editor/editors/check-editor/check.module.ts +0 -14
  499. package/src/lib/property-editor/editors/color-editor/color.editor.ts +0 -30
  500. package/src/lib/property-editor/editors/color-editor/color.module.ts +0 -20
  501. package/src/lib/property-editor/editors/column-editor/column.editor.html +0 -75
  502. package/src/lib/property-editor/editors/column-editor/column.editor.scss +0 -193
  503. package/src/lib/property-editor/editors/column-editor/column.editor.ts +0 -124
  504. package/src/lib/property-editor/editors/column-editor/column.module.ts +0 -28
  505. package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.html +0 -80
  506. package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.scss +0 -71
  507. package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.editor.ts +0 -232
  508. package/src/lib/property-editor/editors/conditional-color-editor/conditional-color.module.ts +0 -52
  509. package/src/lib/property-editor/editors/date-editor/date.editor.ts +0 -49
  510. package/src/lib/property-editor/editors/date-editor/date.module.ts +0 -20
  511. package/src/lib/property-editor/editors/number-editor/number.editor.ts +0 -46
  512. package/src/lib/property-editor/editors/number-editor/number.module.ts +0 -20
  513. package/src/lib/property-editor/editors/range-editor/range.editor.html +0 -67
  514. package/src/lib/property-editor/editors/range-editor/range.editor.scss +0 -68
  515. package/src/lib/property-editor/editors/range-editor/range.editor.ts +0 -153
  516. package/src/lib/property-editor/editors/range-editor/range.module.ts +0 -37
  517. package/src/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.html +0 -8
  518. package/src/lib/property-editor/editors/searchbar-selectbox-editor/searchbar-selectbox-editor.ts +0 -70
  519. package/src/lib/property-editor/editors/selectbox-editor/selectbox.editor.html +0 -8
  520. package/src/lib/property-editor/editors/selectbox-editor/selectbox.editor.ts +0 -77
  521. package/src/lib/property-editor/editors/selectbox-editor/selectbox.module.ts +0 -18
  522. package/src/lib/property-editor/editors/selection-editor/selection-editor.ts +0 -52
  523. package/src/lib/property-editor/editors/selection-editor/selection.module.ts +0 -14
  524. package/src/lib/property-editor/editors/switch-editor/number.editor.ts +0 -26
  525. package/src/lib/property-editor/editors/switch-editor/number.module.ts +0 -21
  526. package/src/lib/property-editor/editors/text-editor/text.editor.html +0 -5
  527. package/src/lib/property-editor/editors/text-editor/text.editor.ts +0 -31
  528. package/src/lib/property-editor/editors/text-editor/text.module.ts +0 -20
  529. package/src/lib/property-editor/editors/textarea-editor/textarea.editor.html +0 -9
  530. package/src/lib/property-editor/editors/textarea-editor/textarea.editor.ts +0 -37
  531. package/src/lib/property-editor/editors/textarea-editor/textarea.module.ts +0 -20
  532. package/src/lib/property-editor/editors/time-editor/time.editor.ts +0 -38
  533. package/src/lib/property-editor/editors/time-editor/time.module.ts +0 -20
  534. package/src/lib/property-editor/property-editor-renderer.directive.ts +0 -165
  535. package/src/lib/property-editor/property-editor.class.ts +0 -178
  536. package/src/lib/property-editor/property-editor.module.ts +0 -115
  537. package/src/lib/query-builder/query-builder-group.component.html +0 -68
  538. package/src/lib/query-builder/query-builder-group.component.ts +0 -122
  539. package/src/lib/query-builder/query-builder-popup/query-builder-popup.component.html +0 -82
  540. package/src/lib/query-builder/query-builder-popup/query-builder-popup.component.ts +0 -178
  541. package/src/lib/query-builder/query-builder-rule.component.html +0 -135
  542. package/src/lib/query-builder/query-builder-rule.component.ts +0 -390
  543. package/src/lib/query-builder/query-builder.class.ts +0 -53
  544. package/src/lib/query-builder/query-builder.component.html +0 -3
  545. package/src/lib/query-builder/query-builder.component.scss +0 -286
  546. package/src/lib/query-builder/query-builder.component.ts +0 -220
  547. package/src/lib/query-builder/query-builder.module.ts +0 -44
  548. package/src/lib/query-builder/query-builder.service.ts +0 -188
  549. package/src/lib/search-bar/search-bar.component.html +0 -30
  550. package/src/lib/search-bar/search-bar.component.scss +0 -114
  551. package/src/lib/search-bar/search-bar.component.ts +0 -287
  552. package/src/lib/search-bar/search-bar.module.ts +0 -33
  553. package/src/lib/searchbox/searchbox.component.html +0 -25
  554. package/src/lib/searchbox/searchbox.component.ts +0 -85
  555. package/src/lib/searchbox/searchbox.module.ts +0 -17
  556. package/src/lib/selectbox/selectbox.component.html +0 -100
  557. package/src/lib/selectbox/selectbox.component.ts +0 -984
  558. package/src/lib/selectbox/selectbox.module.ts +0 -31
  559. package/src/lib/selectbox/selectbox2.component.html +0 -78
  560. package/src/lib/selectbox/selectbox2.component.ts +0 -603
  561. package/src/lib/selection-list/selection-list.component.html +0 -21
  562. package/src/lib/selection-list/selection-list.component.ts +0 -115
  563. package/src/lib/selection-list/selection-list.module.ts +0 -13
  564. package/src/lib/switch/switch.component.html +0 -4
  565. package/src/lib/switch/switch.component.scss +0 -65
  566. package/src/lib/switch/switch.component.ts +0 -57
  567. package/src/lib/switch/switch.module.ts +0 -14
  568. package/src/lib/tab-page/tab-page-Renderer.component.ts +0 -70
  569. package/src/lib/tab-page/tab-page-host.component.ts +0 -110
  570. package/src/lib/tab-page/tab-page.module.ts +0 -13
  571. package/src/lib/tab-page/tab-page.service.ts +0 -176
  572. package/src/lib/tab-strip/tab-strip.component.html +0 -6
  573. package/src/lib/tab-strip/tab-strip.component.ts +0 -47
  574. package/src/lib/tab-strip/tab-strip.module.ts +0 -11
  575. package/src/lib/tab-view/dynamic-tabs.directive.ts +0 -17
  576. package/src/lib/tab-view/tab-view.component.html +0 -33
  577. package/src/lib/tab-view/tab-view.component.scss +0 -0
  578. package/src/lib/tab-view/tab-view.component.ts +0 -129
  579. package/src/lib/tab-view/tab-view.module.ts +0 -12
  580. package/src/lib/tab-view/tab.component.html +0 -8
  581. package/src/lib/tab-view/tab.component.ts +0 -15
  582. package/src/lib/textarea/textarea.component.html +0 -13
  583. package/src/lib/textarea/textarea.component.ts +0 -24
  584. package/src/lib/textarea/textarea.module.ts +0 -14
  585. package/src/lib/textbox/textbox.component.html +0 -22
  586. package/src/lib/textbox/textbox.component.ts +0 -38
  587. package/src/lib/textbox/textbox.module.ts +0 -16
  588. package/src/lib/time-picker/time-picker.component.html +0 -21
  589. package/src/lib/time-picker/time-picker.component.ts +0 -1003
  590. package/src/lib/time-picker/time-picker.module.ts +0 -15
  591. package/src/lib/toast/toast-message/toast-message.component.html +0 -17
  592. package/src/lib/toast/toast-message/toast-message.component.scss +0 -75
  593. package/src/lib/toast/toast-message/toast-message.component.ts +0 -64
  594. package/src/lib/toast/toast-wrapper/toast-wrapper.component.scss +0 -15
  595. package/src/lib/toast/toast-wrapper/toast-wrapper.component.ts +0 -13
  596. package/src/lib/toast/toast.module.ts +0 -12
  597. package/src/lib/toast/toast.service.ts +0 -64
  598. package/src/lib/toolbar/group-button/toolbar-group-button.component.ts +0 -54
  599. package/src/lib/toolbar/menu/toolbar-menu.component.html +0 -4
  600. package/src/lib/toolbar/menu/toolbar-menu.component.ts +0 -81
  601. package/src/lib/toolbar/search/toolbar-search.component.html +0 -4
  602. package/src/lib/toolbar/search/toolbar-search.component.scss +0 -24
  603. package/src/lib/toolbar/search/toolbar-search.component.ts +0 -61
  604. package/src/lib/toolbar/title/toolbar-title.component.ts +0 -35
  605. package/src/lib/toolbar/toolbar-item.ts +0 -4
  606. package/src/lib/toolbar/toolbar.component.html +0 -4
  607. package/src/lib/toolbar/toolbar.component.scss +0 -9
  608. package/src/lib/toolbar/toolbar.component.ts +0 -16
  609. package/src/lib/toolbar/toolbar.module.ts +0 -25
  610. package/src/lib/tooltip/tooltip.directive.ts +0 -101
  611. package/src/lib/tooltip/tooltip.module.ts +0 -11
  612. package/src/lib/tree-side-menu/tree-side-menu.component.html +0 -43
  613. package/src/lib/tree-side-menu/tree-side-menu.component.ts +0 -698
  614. package/src/lib/tree-side-menu/tree-side-menu.module.ts +0 -19
  615. package/src/lib/tree-view/tree-view.component.html +0 -46
  616. package/src/lib/tree-view/tree-view.component.ts +0 -835
  617. package/src/lib/tree-view/tree-view.module.ts +0 -16
  618. package/src/lib/upload-file/upload-file.component.html +0 -16
  619. package/src/lib/upload-file/upload-file.component.ts +0 -230
  620. package/src/lib/upload-file/upload-file.events.ts +0 -11
  621. package/src/lib/upload-file/upload-file.module.ts +0 -16
  622. package/src/lib/validation/validation-form.component.ts +0 -78
  623. package/src/lib/validation/validation-rule.widget.ts +0 -112
  624. package/src/lib/validation/validation.class.ts +0 -22
  625. package/src/lib/validation/validation.component.ts +0 -92
  626. package/src/lib/validation/validation.module.ts +0 -28
  627. package/src/test.ts +0 -28
  628. package/tsconfig.lib.json +0 -25
  629. package/tsconfig.lib.prod.json +0 -6
  630. package/tsconfig.spec.json +0 -17
  631. package/tslint.json +0 -17
@@ -0,0 +1,82 @@
1
+ import { AXBaseComponent } from '../base/element.class';
2
+ import { Component, Input, Output, EventEmitter, ElementRef, ViewEncapsulation, ViewChild } from '@angular/core';
3
+ import { AXQueryBuilderGroup } from './query-builder.class';
4
+ import { AXQueryBuilderGroupComponent } from './query-builder-group.component';
5
+ import { AXToastService } from '../toast/toast.service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../toast/toast.service";
8
+ import * as i2 from "./query-builder-group.component";
9
+ export class AXQueryBuilderComponent extends AXBaseComponent {
10
+ constructor(ref, toast) {
11
+ super();
12
+ this.ref = ref;
13
+ this.toast = toast;
14
+ this.mode = 'new';
15
+ this.rootGroup = new AXQueryBuilderGroup();
16
+ this.fields = [];
17
+ // @Input()
18
+ // mode: 'immediate' | 'click' = 'click';
19
+ this.onRuleChanged = new EventEmitter();
20
+ this.saved = false;
21
+ }
22
+ ngOnInit() {
23
+ this.rootGroup.condition = this.query.condition ? this.query.condition : 'AND';
24
+ this.rootGroup.items = this.query.items ? this.query.items : [];
25
+ }
26
+ getQueryBuilder() {
27
+ return { groups: this.rootGroup };
28
+ }
29
+ ruleChanged(e) {
30
+ this.onRuleChanged.emit({ component: this, groups: this.rootGroup });
31
+ }
32
+ saveRule() {
33
+ /// return this.queryGroup.saveRule();
34
+ return new Promise((resolve, reject) => {
35
+ this.saved = true;
36
+ for (let i = 0; i < this.rootGroup.items.length; i++) {
37
+ if (this.saved == true) {
38
+ this.findNullValue(this.rootGroup.items[i]);
39
+ }
40
+ }
41
+ if (this.saved == true) {
42
+ resolve(this.rootGroup);
43
+ }
44
+ else {
45
+ reject();
46
+ }
47
+ });
48
+ }
49
+ findNullValue(gr) {
50
+ if (this.saved == true) {
51
+ if (gr.condition) {
52
+ for (let i = 0; i < gr.items.length; i++) {
53
+ this.findNullValue(gr.items[i]);
54
+ }
55
+ }
56
+ else {
57
+ if (gr.onDemandLabel == '????|') {
58
+ this.saved = false;
59
+ this.toast.error('لطفا نام متغیر های مورد نیاز را کامل کنید');
60
+ }
61
+ }
62
+ }
63
+ }
64
+ }
65
+ AXQueryBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderComponent, deps: [{ token: i0.ElementRef }, { token: i1.AXToastService }], target: i0.ɵɵFactoryTarget.Component });
66
+ AXQueryBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: AXQueryBuilderComponent, selector: "ax-query-builder", inputs: { query: "query", mode: "mode", fields: "fields" }, outputs: { onRuleChanged: "onRuleChanged" }, viewQueries: [{ propertyName: "queryGroup", first: true, predicate: ["queryGroup"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\r\n (groupRuleChanged)=\"ruleChanged($event)\">\r\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;-webkit-padding-start:0px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{-webkit-margin-start:10px;margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;-webkit-margin-end:.5em;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{-webkit-margin-start:-50%;margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{-webkit-margin-start:10px;margin-inline-start:10px;-webkit-border-start:2px solid var(--ax-gray-light-color);border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{-webkit-margin-start:48px;margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"], components: [{ type: i2.AXQueryBuilderGroupComponent, selector: "ax-query-group", inputs: ["group", "parent", "fields", "mode"], outputs: ["groupRuleChanged"] }], encapsulation: i0.ViewEncapsulation.None });
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'ax-query-builder', encapsulation: ViewEncapsulation.None, template: "<ax-query-group #queryGroup [mode]=\"mode\" [group]=\"rootGroup\" [fields]=\"fields\"\r\n (groupRuleChanged)=\"ruleChanged($event)\">\r\n</ax-query-group>", styles: [".ax-query-group{display:flex;flex-direction:column;margin:5px;-webkit-padding-start:0px;padding-inline-start:0px}.ax-query-group .add-buttons{display:flex;margin:5px;flex-direction:row}.ax-query-group .add-buttons .handler{display:flex;align-items:center;background-color:var(--ax-primary-trans-light-color);color:var(--ax-primary-color);padding:5px;cursor:move;border:1px solid var(--ax-primary-trans-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .buttons-list{-webkit-margin-start:10px;margin-inline-start:10px;display:flex;align-items:center}.ax-query-group .buttons-list .button{cursor:pointer;-webkit-margin-end:.5em;margin-inline-end:.5em;width:2.3em;height:2.3em;display:flex;align-items:center;justify-content:center;border-radius:50px;position:relative}.ax-query-group .buttons-list .button ax-check-box{opacity:0;width:100%;height:100%;position:absolute;z-index:1;left:0;top:0}.ax-query-group .buttons-list .variable{color:var(--ax-warning-color);background:var(--ax-warning-trans-light-color)}.ax-query-group .buttons-list .variable.active-button{background:var(--ax-warning-light-color);color:var(--ax-white-color);opacity:.7}.ax-query-group .buttons-list .commit{color:var(--ax-success-color);background:var(--ax-success-trans-light-color)}.ax-query-group .buttons-list .remove{color:var(--ax-danger-color);background:var(--ax-danger-trans-light-color)}.ax-query-group .buttons-list .edit{color:var(--ax-primary-color);background:var(--ax-primary-trans-light-color)}.ax-query-group .group-item{transition:all .5s}.ax-query-group .group-item .condition{width:40px;display:flex;align-items:center;background:linear-gradient(180deg,rgba(2,0,36,0) 49%,var(--ax-gray-light-color) 49%,var(--ax-gray-light-color) 55%,rgba(0,212,255,0) 50%)}.ax-query-group .group-item .condition .text{-webkit-margin-start:-50%;margin-inline-start:-50%;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center}.ax-query-group .group-item .condition .text.OR{background:var(--ax-warning-color);color:var(--ax-warning-fore-color)}.ax-query-group .group-item .condition .text.AND{background:var(--ax-success-color);color:var(--ax-success-fore-color)}.ax-query-group .header{display:flex;flex-direction:row}.ax-query-group .header .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:5px;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .header .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);color:var(--ax-gray-dark-color);font-weight:700;cursor:pointer}.ax-query-group .header .detail{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .header .detail.OR{background-color:var(--ax-warning-trans-light-color)}.ax-query-group .header .detail.AND{background-color:var(--ax-success-trans-light-color)}.ax-query-group .rules{-webkit-margin-start:10px;margin-inline-start:10px;-webkit-border-start:2px solid var(--ax-gray-light-color);border-inline-start:2px solid var(--ax-gray-light-color)}.ax-query-group .rules .rules{-webkit-margin-start:48px;margin-inline-start:48px}.ax-query-group .ax-query-rule{display:flex;margin:5px;flex-direction:row;transition:all .5s}.ax-query-group .ax-query-rule .handler{display:flex;align-items:center;background-color:var(--ax-light-light-color);color:var(--ax-light-fore-color);padding:.5em;cursor:move;border:1px solid var(--ax-light-light-color);border-start-start-radius:4px;border-end-start-radius:4px}.ax-query-group .ax-query-rule .caption{padding:.5rem;background-color:var(--ax-gray-trans-light-color);border:1px solid var(--ax-gray-light-color);color:#333;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .caption.editable{width:200px}.ax-query-group .ax-query-rule .operator{border-top:1px solid var(--ax-gray-light-color);border-bottom:1px solid var(--ax-gray-light-color);background-color:var(--ax-gray-trans-light-color);padding:.5rem}.ax-query-group .ax-query-rule .operator.editable{width:200px}.ax-query-group .ax-query-rule .operator .text{color:var(--ax-primary-color);font-weight:700;-webkit-text-decoration:underline dashed;text-decoration:underline dashed;cursor:pointer}.ax-query-group .ax-query-rule .operator.radius{border-top-left-radius:4px;border-bottom-left-radius:4px;border:1px solid var(--ax-gray-light-color);border-right:none}.ax-query-group .ax-query-rule .value{padding:.5rem;background-color:var(--ax-light-light-color);color:#000;border:1px solid var(--ax-gray-light-color);border-right:none;border-start-end-radius:4px;border-end-end-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .value.editable{width:200px}.ax-query-group .ax-query-rule .add-rule{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;font-weight:700;cursor:pointer}.ax-query-group .ax-query-rule .add-rule:hover,.ax-query-group .ax-query-rule .add-group:hover{background-color:var(--ax-gray-light-color)}.ax-query-group .ax-query-rule .add-group,.ax-query-group .ax-query-rule .add-condition{border-top:1px dashed var(--ax-gray-light-color);border-bottom:1px dashed var(--ax-gray-light-color);color:var(--ax-gray-dark-color);padding:.5rem;border:1px dashed var(--ax-gray-light-color);border-top-left-radius:4px;border-bottom-left-radius:4px;cursor:pointer}.ax-query-group .ax-query-rule .add-condition.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.OR{background-color:var(--ax-warning-trans-light-color);color:var(--ax-warning-dark-color)}.ax-query-group .ax-query-rule .add-condition:hover.AND{background-color:var(--ax-success-trans-light-color);color:var(--ax-success-dark-color)}\n"] }]
70
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.AXToastService }]; }, propDecorators: { queryGroup: [{
71
+ type: ViewChild,
72
+ args: ['queryGroup']
73
+ }], query: [{
74
+ type: Input
75
+ }], mode: [{
76
+ type: Input
77
+ }], fields: [{
78
+ type: Input
79
+ }], onRuleChanged: [{
80
+ type: Output
81
+ }] } });
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpILE9BQU8sRUFBRSxtQkFBbUIsRUFBcUQsTUFBTSx1QkFBdUIsQ0FBQztBQUMvRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFReEQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGVBQWU7SUFnQjFELFlBQW9CLEdBQWUsRUFBVSxLQUFxQjtRQUNoRSxLQUFLLEVBQUUsQ0FBQztRQURVLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQVRsRSxTQUFJLEdBQW1CLEtBQUssQ0FBQztRQUU3QixjQUFTLEdBQXdCLElBQUksbUJBQW1CLEVBQUUsQ0FBQztRQVkzRCxXQUFNLEdBQVUsRUFBRSxDQUFDO1FBRW5CLFdBQVc7UUFDWCx5Q0FBeUM7UUFHekMsa0JBQWEsR0FBMkMsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFckcsVUFBSyxHQUFZLEtBQUssQ0FBQztJQVh2QixDQUFDO0lBUEQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQy9FLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFpQk0sZUFBZTtRQUNwQixPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTSxRQUFRO1FBQ2Isc0NBQXNDO1FBQ3RDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDcEQsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTtvQkFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUM3QzthQUNGO1lBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRTtnQkFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUN6QjtpQkFBTTtnQkFDTCxNQUFNLEVBQUUsQ0FBQzthQUNWO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFDLEVBQUU7UUFDZCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ3RCLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRTtnQkFDaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDakM7YUFDRjtpQkFBTTtnQkFDTCxJQUFJLEVBQUUsQ0FBQyxhQUFhLElBQUksT0FBTyxFQUFFO29CQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztvQkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsMkNBQTJDLENBQUMsQ0FBQztpQkFDL0Q7YUFDRjtTQUNGO0lBQ0gsQ0FBQzs7cUhBckVVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLGtTQ2JwQywrSkFFaUI7NEZEV0osdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLGtCQUFrQixpQkFHYixpQkFBaUIsQ0FBQyxJQUFJOzhIQUdaLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFHdkIsS0FBSztzQkFESixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFlTixNQUFNO3NCQURMLEtBQUs7Z0JBT04sYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9lbGVtZW50LmNsYXNzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIFZpZXdFbmNhcHN1bGF0aW9uLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhUcmFuc2xhdG9yLCBBWEh0bWxVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJHcm91cCwgQVhRdWVyeUJ1aWxkZXJHcm91cEV2ZW50LCBBWFF1ZXJ5QnVpbGRlckdyb3VwSXRlbSB9IGZyb20gJy4vcXVlcnktYnVpbGRlci5jbGFzcyc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi90b2FzdC90b2FzdC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtcXVlcnktYnVpbGRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3F1ZXJ5LWJ1aWxkZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudCBleHRlbmRzIEFYQmFzZUNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgncXVlcnlHcm91cCcpIHF1ZXJ5R3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcXVlcnk6IEFYUXVlcnlCdWlsZGVyR3JvdXA7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbW9kZTogJ25ldycgfCAnZWRpdCcgPSAnbmV3JztcclxuXHJcbiAgcm9vdEdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwID0gbmV3IEFYUXVlcnlCdWlsZGVyR3JvdXAoKTtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJvb3RHcm91cC5jb25kaXRpb24gPSB0aGlzLnF1ZXJ5LmNvbmRpdGlvbiA/IHRoaXMucXVlcnkuY29uZGl0aW9uIDogJ0FORCc7XHJcbiAgICB0aGlzLnJvb3RHcm91cC5pdGVtcyA9IHRoaXMucXVlcnkuaXRlbXMgPyB0aGlzLnF1ZXJ5Lml0ZW1zIDogW107XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSB0b2FzdDogQVhUb2FzdFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIGZpZWxkczogYW55W10gPSBbXTtcclxuXHJcbiAgLy8gQElucHV0KClcclxuICAvLyBtb2RlOiAnaW1tZWRpYXRlJyB8ICdjbGljaycgPSAnY2xpY2snO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBvblJ1bGVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhRdWVyeUJ1aWxkZXJHcm91cEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhRdWVyeUJ1aWxkZXJHcm91cEV2ZW50PigpO1xyXG5cclxuICBzYXZlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgZ2V0UXVlcnlCdWlsZGVyKCkge1xyXG4gICAgcmV0dXJuIHsgZ3JvdXBzOiB0aGlzLnJvb3RHcm91cCB9O1xyXG4gIH1cclxuXHJcbiAgcnVsZUNoYW5nZWQoZSkge1xyXG4gICAgdGhpcy5vblJ1bGVDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGdyb3VwczogdGhpcy5yb290R3JvdXAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2F2ZVJ1bGUoKSB7XHJcbiAgICAvLy8gcmV0dXJuIHRoaXMucXVlcnlHcm91cC5zYXZlUnVsZSgpO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5zYXZlZCA9IHRydWU7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5yb290R3JvdXAuaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAodGhpcy5zYXZlZCA9PSB0cnVlKSB7XHJcbiAgICAgICAgICB0aGlzLmZpbmROdWxsVmFsdWUodGhpcy5yb290R3JvdXAuaXRlbXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5zYXZlZCA9PSB0cnVlKSB7XHJcbiAgICAgICAgcmVzb2x2ZSh0aGlzLnJvb3RHcm91cCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVqZWN0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZmluZE51bGxWYWx1ZShncikge1xyXG4gICAgaWYgKHRoaXMuc2F2ZWQgPT0gdHJ1ZSkge1xyXG4gICAgICBpZiAoZ3IuY29uZGl0aW9uKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnci5pdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgdGhpcy5maW5kTnVsbFZhbHVlKGdyLml0ZW1zW2ldKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKGdyLm9uRGVtYW5kTGFiZWwgPT0gJz8/Pz98Jykge1xyXG4gICAgICAgICAgdGhpcy5zYXZlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy50b2FzdC5lcnJvcign2YTYt9mB2Kcg2YbYp9mFINmF2KrYutuM2LEg2YfYp9uMINmF2YjYsdivINmG24zYp9iyINix2Kcg2qnYp9mF2YQg2qnZhtuM2K8nKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHNlbGVjdGlvbkZpZWxkc0NoYW5nZWQoZSwgcnVsZXM6IEFYUXVlcnlCdWlsZGVyUnVsZSkge1xyXG4gIC8vXHJcbiAgLy8gICAgIHJ1bGVzLmRhdGFGaWVsZCA9IGUuc2VsZWN0ZWRJdGVtc1swXS5kYXRhRmllbGQ7XHJcbiAgLy8gICAgIHJ1bGVzLmNhcHRpb24gPSBlLnNlbGVjdGVkSXRlbXNbMF0uY2FwdGlvbjtcclxuICAvLyAgICAgcnVsZXMuZGF0YVR5cGUgPSBlLnNlbGVjdGVkSXRlbXNbMF0uZGF0YVR5cGU7XHJcblxyXG4gIC8vICAgICAvLyBUTyBETyBjaGFjayBkYXRhVHlwZSBGb3IgRGVmIG9wZXJhdG9yIGFuZCBWYWx1ZVxyXG4gIC8vICAgICBpZiAocnVsZXMuZGF0YVR5cGUgPT0gJ3N0cmluZycpIHtcclxuICAvLyAgICAgICAgIHJ1bGVzLm9wZXJhdG9yID0gdGhpcy5vcGVyYXRvclN0cmluZ0l0ZW1bMF0uaWQ7XHJcbiAgLy8gICAgICAgICBydWxlcy52YWx1ZSA9ICdudWxsJztcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBpZiAocnVsZXMuZGF0YVR5cGUgPT0gJ251bWJlcicpIHtcclxuICAvLyAgICAgICAgIHJ1bGVzLm9wZXJhdG9yID0gdGhpcy5vcGVyYXRvck51bWJlckl0ZW1bMF0uaWQ7XHJcbiAgLy8gICAgICAgICBydWxlcy52YWx1ZSA9ICcwJztcclxuICAvLyAgICAgfVxyXG5cclxuICAvLyAgICAgdGhpcy5vblJ1bGVDaGFuZ2VkLmVtaXQoeyBncm91cHM6IHRoaXMucm9vdEdyb3VwLCBxdWVyeVN0cmluZzogdGhpcy5nZXRRdWVyeURpc3BsYXkoKSwgY29tcG9uZW50OiB0aGlzLCBodG1sRWxlbWVudDogdGhpcy5yZWYubmF0aXZlRWxlbWVudCB9KVxyXG4gIC8vIH1cclxuXHJcbiAgLy8gc2VsZWN0aW9uT3BhcmF0b3JDaGFuZ2VkKGUsIHJ1bGVzOiBBWFF1ZXJ5QnVpbGRlclJ1bGUpIHtcclxuICAvLyAgICAgcnVsZXMub3BlcmF0b3IgPSBlLnNlbGVjdGVkSXRlbXNbMF0uaWQ7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwcm92aWRlRGF0YUZpZWxkcyA9IChlKSA9PiB7XHJcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gIC8vICAgICAgICAgcmVzb2x2ZSh0aGlzLmZpZWxkcyk7XHJcbiAgLy8gICAgIH0pO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gcHJvdmlkZURhdGFPcGVyYXRvclN0cmluZyA9IChlKSA9PiB7XHJcbiAgLy8gICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gIC8vICAgICAgICAgcmVzb2x2ZSh0aGlzLm9wZXJhdG9yU3RyaW5nSXRlbSk7XHJcbiAgLy8gICAgIH0pO1xyXG4gIC8vIH1cclxuICAvLyBwcm92aWRlRGF0YU9wZXJhdG9yTnVtYmVyID0gKGUpID0+IHtcclxuICAvLyAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgLy8gICAgICAgICByZXNvbHZlKHRoaXMub3BlcmF0b3JOdW1iZXJJdGVtKTtcclxuICAvLyAgICAgfSk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwcml2YXRlIGdldFF1ZXJ5RGlzcGxheShnciA9IHRoaXMubGlzdCwgX2NvbmRpdGlvbiA9IHRoaXMubGlzdFswXS5jb25kaXRpb24pIHtcclxuICAvLyAgICAgdmFyIGNhcDogc3RyaW5nID0gJygnO1xyXG5cclxuICAvLyAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBnci5sZW5ndGg7IGorKykge1xyXG4gIC8vICAgICAgICAgaWYgKGogPiAwKSB7XHJcbiAgLy8gICAgICAgICAgICAgY2FwID0gY2FwICsgX2NvbmRpdGlvbjtcclxuICAvLyAgICAgICAgIH1cclxuICAvLyAgICAgICAgIGNhcCA9IGNhcCArIFwiICggXCI7XHJcbiAgLy8gICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyW2pdLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgLy8gICAgICAgICAgICAgaWYgKGdyW2pdLml0ZW1zW2ldLnZhbHVlICYmIGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yICYmIGdyW2pdLml0ZW1zW2ldLmNhcHRpb24gfHwgKChncltqXS5pdGVtc1tpXS5vcGVyYXRvciA9PSBcImlzLWVtcHR5XCIgfHwgZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IgPT0gXCJpcy1ub3QtZW1wdHlcIikgJiYgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbikpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgdmFyIG9wcjogc3RyaW5nO1xyXG4gIC8vICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gXCJudW1iZXJcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVcIiB8fCBncltqXS5pdGVtc1tpXS5kYXRhVHlwZSA9PSBcImRhdGVUaW1lXCIpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIGxldCBkID0gdGhpcy5vcGVyYXRvck51bWJlckl0ZW0uZmlsdGVyKGMgPT4gYy5pZCA9PSBncltqXS5pdGVtc1tpXS5vcGVyYXRvcik7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBvcHIgPSBkWzBdLnRleHQ7XHJcbiAgLy8gICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBsZXQgZCA9IHRoaXMub3BlcmF0b3JTdHJpbmdJdGVtLmZpbHRlcihjID0+IGMuaWQgPT0gZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IpO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgb3ByID0gZFswXS50ZXh0O1xyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgLy8gICAgICAgICAgICAgICAgIGlmICgoZ3Jbal0uaXRlbXNbaV0ub3BlcmF0b3IgPT0gXCJpcy1lbXB0eVwiIHx8IGdyW2pdLml0ZW1zW2ldLm9wZXJhdG9yID09IFwiaXMtbm90LWVtcHR5XCIpKSB7XHJcblxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIGdyW2pdLmNvbmRpdGlvbjtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIH1cclxuICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIHZhciB2YWw6IHN0cmluZztcclxuXHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gJ2RhdGUnKSB7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmFsID0gbW9tZW50KGl0ZW0udmFsdWUpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ1lZWVkvTU0vREQnKTtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZ3Jbal0uaXRlbXNbaV0uZGF0YVR5cGUgPT0gJ2RhdGVUaW1lJykge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHZhbCA9IG1vbWVudChpdGVtLnZhbHVlKS5sb2NhbGUoJ2ZhJykuZm9ybWF0KCdISDptbSBZWVlZL01NL0REJyk7XHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgIHZhbCA9IGdyW2pdLml0ZW1zW2ldLnZhbHVlO1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IGdyW2pdLml0ZW1zLmxlbmd0aCAtIDEpIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIHZhbFxyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgPSBjYXAgKyBcIiBcIiArIFwiW1wiICsgZ3Jbal0uaXRlbXNbaV0uY2FwdGlvbiArIFwiXVwiICsgXCIgXCIgKyBvcHIgKyBcIiBcIiArIHZhbCArIFwiIFwiICsgZ3Jbal0uY29uZGl0aW9uXHJcbiAgLy8gICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgLy8gICAgICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgfVxyXG5cclxuICAvLyAgICAgICAgIGlmIChncltqXS5ncm91cHMgJiYgZ3Jbal0uZ3JvdXBzLmxlbmd0aCA+IDApIHtcclxuICAvLyAgICAgICAgICAgICBsZXQgYyA9IHRoaXMuZ2V0UXVlcnlEaXNwbGF5KGdyW2pdLmdyb3VwcywgZ3Jbal0uY29uZGl0aW9uKTtcclxuICAvLyAgICAgICAgICAgICBpZiAoYyAhPSBcIiggKSBcIikge1xyXG4gIC8vICAgICAgICAgICAgICAgICBpZiAoZ3Jbal0uaXRlbXMubGVuZ3RoID4gMCB8fCBqID4gMCkge1xyXG4gIC8vICAgICAgICAgICAgICAgICAgICAgY2FwID0gY2FwICsgXCIgXCIgKyBncltqXS5jb25kaXRpb24gKyBcIiBcIiArIGMgKyBcIiBcIjtcclxuICAvLyAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgICAgICAgICAgIGNhcCA9IGNhcCArIFwiIFwiICsgYyArIFwiIFwiO1xyXG4gIC8vICAgICAgICAgICAgICAgICB9XHJcblxyXG4gIC8vICAgICAgICAgICAgIH1cclxuICAvLyAgICAgICAgIH1cclxuXHJcbiAgLy8gICAgICAgICBjYXAgPSBjYXAgKyBcIiApIFwiO1xyXG4gIC8vICAgICB9O1xyXG5cclxuICAvLyAgICAgY2FwID0gY2FwICsgXCIgKSBcIjtcclxuICAvLyAgICAgcmV0dXJuIGNhcDtcclxuICAvLyB9XHJcblxyXG4gIC8vIGRlbGV0ZUdyb3VwKGdyb3VwT3V0OiBBWFF1ZXJ5QnVpbGRlckdyb3VwLCBncm91cEluOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XHJcbiAgLy8gICAgIGdyb3VwT3V0Lml0ZW1zID0gZ3JvdXBPdXQuaXRlbXMuZmlsdGVyKGMgPT4gYy5pZCAhPSBncm91cEluLmlkKTtcclxuICAvLyB9XHJcblxyXG4gIC8vIGRlbGV0ZVJ1bGUxKGdyb3VwOiBBWFF1ZXJ5QnVpbGRlckdyb3VwLCBydWxlOiBBWFF1ZXJ5QnVpbGRlclJ1bGUpIHtcclxuICAvLyAgICAgZ3JvdXAuaXRlbXMgPSBncm91cC5pdGVtcy5maWx0ZXIoYyA9PiBjLmlkICE9IHJ1bGUuaWQpO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gYWRkUnVsZShncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xyXG4gIC8vICAgICBjb25zdCBpdGVtOiBBWFF1ZXJ5QnVpbGRlclJ1bGUgPSBuZXcgQVhRdWVyeUJ1aWxkZXJSdWxlKCk7XHJcbiAgLy8gICAgIGdyb3VwLml0ZW1zLnB1c2goaXRlbSk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBhZGRHcm91cEFORChncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xyXG4gIC8vICAgICB0aGlzLmFkZEdyb3VwT25DbGljayhncm91cCk7XHJcbiAgLy8gICAgIGdyb3VwLmNvbmRpdGlvbiA9IFwiQU5EXCI7XHJcbiAgLy8gfVxyXG4gIC8vIGFkZEdyb3VwT1IoZ3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcclxuICAvLyAgICAgdGhpcy5hZGRHcm91cE9uQ2xpY2soZ3JvdXApO1xyXG4gIC8vICAgICBncm91cC5jb25kaXRpb24gPSBcIk9SXCI7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBhZGRHcm91cE9uQ2xpY2soZ3JvdXBzOiBBWFF1ZXJ5QnVpbGRlckdyb3VwKSB7XHJcbiAgLy8gICAgIGxldCByOiBBWFF1ZXJ5QnVpbGRlckdyb3VwID0gbmV3IEFYUXVlcnlCdWlsZGVyR3JvdXAoKTtcclxuICAvLyAgICAgci5jb25kaXRpb24gPSBcIlwiO1xyXG4gIC8vICAgICByLml0ZW1zID0gW107XHJcbiAgLy8gICAgIGlmIChncm91cHMuaXRlbXMgPT0gdW5kZWZpbmVkKSB7XHJcbiAgLy8gICAgICAgICBncm91cHMuaXRlbXMgPSBbXTtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBncm91cHMuaXRlbXMucHVzaChyKTtcclxuICAvLyB9XHJcbn1cclxuIiwiPGF4LXF1ZXJ5LWdyb3VwICNxdWVyeUdyb3VwIFttb2RlXT1cIm1vZGVcIiBbZ3JvdXBdPVwicm9vdEdyb3VwXCIgW2ZpZWxkc109XCJmaWVsZHNcIlxyXG4gICAgKGdyb3VwUnVsZUNoYW5nZWQpPVwicnVsZUNoYW5nZWQoJGV2ZW50KVwiPlxyXG48L2F4LXF1ZXJ5LWdyb3VwPiJdfQ==
@@ -0,0 +1,62 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { AXQueryBuilderComponent } from './query-builder.component';
3
+ import { AXButtonModule } from '../button/button.module';
4
+ import { CommonModule } from '@angular/common';
5
+ import { AXPanelBoxModule } from '../panel-box/panel-box.module';
6
+ import { AXSelectBoxModule } from '../selectbox/selectbox.module';
7
+ import { AXTextBoxModule } from '../textbox/textbox.module';
8
+ import { AXQueryBuilderRuleComponent } from './query-builder-rule.component';
9
+ import { AXQueryBuilderGroupComponent } from './query-builder-group.component';
10
+ import { AXTranslatorModule } from '@acorex/core';
11
+ import { AXNumberBoxModule } from '../number-box/number-box.module';
12
+ import { AXDataSourceModule } from '../data-source/datasource.module';
13
+ import { AXFormGroupModule } from '../form-group/form-group.module';
14
+ import { AXQueryBuilderPopupComponent } from './query-builder-popup/query-builder-popup.component';
15
+ import { AXLabelModule } from '../label/label.module';
16
+ import { AXCheckBoxModule } from '../checkbox/checkbox.module';
17
+ import { AXValidationModule } from '../validation/validation.module';
18
+ import { AXQueryBuilderService } from './query-builder.service';
19
+ import { AXDatePickerModule } from '../date-picker/date-picker.module';
20
+ import * as i0 from "@angular/core";
21
+ const MODUELS = [
22
+ CommonModule,
23
+ AXButtonModule,
24
+ AXPanelBoxModule,
25
+ AXSelectBoxModule,
26
+ AXDataSourceModule,
27
+ AXTextBoxModule,
28
+ AXNumberBoxModule,
29
+ AXFormGroupModule,
30
+ AXTranslatorModule,
31
+ AXLabelModule,
32
+ AXCheckBoxModule,
33
+ AXValidationModule,
34
+ AXDatePickerModule
35
+ ];
36
+ export class AXQueryBuilderModule {
37
+ }
38
+ AXQueryBuilderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
39
+ AXQueryBuilderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderModule, declarations: [AXQueryBuilderComponent, AXQueryBuilderGroupComponent, AXQueryBuilderRuleComponent, AXQueryBuilderPopupComponent], imports: [CommonModule,
40
+ AXButtonModule,
41
+ AXPanelBoxModule,
42
+ AXSelectBoxModule,
43
+ AXDataSourceModule,
44
+ AXTextBoxModule,
45
+ AXNumberBoxModule,
46
+ AXFormGroupModule,
47
+ AXTranslatorModule,
48
+ AXLabelModule,
49
+ AXCheckBoxModule,
50
+ AXValidationModule,
51
+ AXDatePickerModule], exports: [AXQueryBuilderComponent] });
52
+ AXQueryBuilderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderModule, providers: [AXQueryBuilderService], imports: [[MODUELS]] });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderModule, decorators: [{
54
+ type: NgModule,
55
+ args: [{
56
+ declarations: [AXQueryBuilderComponent, AXQueryBuilderGroupComponent, AXQueryBuilderRuleComponent, AXQueryBuilderPopupComponent],
57
+ imports: [MODUELS],
58
+ exports: [AXQueryBuilderComponent],
59
+ providers: [AXQueryBuilderService]
60
+ }]
61
+ }] });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDbkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUV2RSxNQUFNLE9BQU8sR0FBRztJQUNaLFlBQVk7SUFDWixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtDQUNyQixDQUFBO0FBU0QsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjttSEFBcEIsb0JBQW9CLGlCQU5kLHVCQUF1QixFQUFFLDRCQUE0QixFQUFFLDJCQUEyQixFQUFFLDRCQUE0QixhQWhCL0gsWUFBWTtRQUNaLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsa0JBQWtCLGFBTVIsdUJBQXVCO21IQUl4QixvQkFBb0IsYUFIbEIsQ0FBQyxxQkFBcUIsQ0FBQyxZQUZ6QixDQUFDLE9BQU8sQ0FBQzs0RkFLVCxvQkFBb0I7a0JBUGhDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQUUsMkJBQTJCLEVBQUUsNEJBQTRCLENBQUM7b0JBQ2hJLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ2xDLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNyQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBWFBhbmVsQm94TW9kdWxlIH0gZnJvbSAnLi4vcGFuZWwtYm94L3BhbmVsLWJveC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJy4uL3NlbGVjdGJveC9zZWxlY3Rib3gubW9kdWxlJztcclxuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnLi4vdGV4dGJveC90ZXh0Ym94Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyUnVsZUNvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1ydWxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhUcmFuc2xhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHsgQVhOdW1iZXJCb3hNb2R1bGUgfSBmcm9tICcuLi9udW1iZXItYm94L251bWJlci1ib3gubW9kdWxlJztcclxuaW1wb3J0IHsgQVhEYXRhU291cmNlTW9kdWxlIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UvZGF0YXNvdXJjZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWEZvcm1Hcm91cE1vZHVsZSB9IGZyb20gJy4uL2Zvcm0tZ3JvdXAvZm9ybS1ncm91cC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFF1ZXJ5QnVpbGRlclBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLXBvcHVwL3F1ZXJ5LWJ1aWxkZXItcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJy4uL2xhYmVsL2xhYmVsLm1vZHVsZSc7XHJcbmltcG9ydCB7IEFYQ2hlY2tCb3hNb2R1bGUgfSBmcm9tICcuLi9jaGVja2JveC9jaGVja2JveC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Nb2R1bGUgfSBmcm9tICcuLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24ubW9kdWxlJztcclxuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBWERhdGVQaWNrZXJNb2R1bGUgfSBmcm9tICcuLi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5tb2R1bGUnO1xyXG5cclxuY29uc3QgTU9EVUVMUyA9IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEFYQnV0dG9uTW9kdWxlLFxyXG4gICAgQVhQYW5lbEJveE1vZHVsZSxcclxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxyXG4gICAgQVhEYXRhU291cmNlTW9kdWxlLFxyXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxyXG4gICAgQVhOdW1iZXJCb3hNb2R1bGUsXHJcbiAgICBBWEZvcm1Hcm91cE1vZHVsZSxcclxuICAgIEFYVHJhbnNsYXRvck1vZHVsZSxcclxuICAgIEFYTGFiZWxNb2R1bGUsXHJcbiAgICBBWENoZWNrQm94TW9kdWxlLFxyXG4gICAgQVhWYWxpZGF0aW9uTW9kdWxlLFxyXG4gICAgQVhEYXRlUGlja2VyTW9kdWxlXHJcbl1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudCwgQVhRdWVyeUJ1aWxkZXJHcm91cENvbXBvbmVudCwgQVhRdWVyeUJ1aWxkZXJSdWxlQ29tcG9uZW50LCBBWFF1ZXJ5QnVpbGRlclBvcHVwQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFtNT0RVRUxTXSxcclxuICAgIGV4cG9ydHM6IFtBWFF1ZXJ5QnVpbGRlckNvbXBvbmVudF0sXHJcbiAgICBwcm92aWRlcnM6IFtBWFF1ZXJ5QnVpbGRlclNlcnZpY2VdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJNb2R1bGUgeyB9Il19
@@ -0,0 +1,197 @@
1
+ import { AXQueryBuilderGroup } from './query-builder.class';
2
+ import { Injectable } from '@angular/core';
3
+ import { AXPopupService } from '../popup/popup.service';
4
+ import { AXQueryBuilderPopupComponent } from './query-builder-popup/query-builder-popup.component';
5
+ import { AXToastService } from '../toast/toast.service';
6
+ import { AXDateTime } from '@acorex/core';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../popup/popup.service";
9
+ import * as i2 from "../toast/toast.service";
10
+ export class AXQueryBuilderService {
11
+ constructor(popup, toast) {
12
+ this.popup = popup;
13
+ this.toast = toast;
14
+ this.canOpen = false;
15
+ this.canRun = false;
16
+ }
17
+ runQuery(group, provideData) {
18
+ return new Promise((resolve) => {
19
+ this.canOpen = false;
20
+ for (let i = 0; i < group.items.length; i++) {
21
+ this.getNoValueRule(group.items[i]);
22
+ }
23
+ if (this.canOpen) {
24
+ this.canRun = true;
25
+ for (let i = 0; i < group.items.length; i++) {
26
+ if (this.canRun == true) {
27
+ this.findNullValue(group.items[i]);
28
+ }
29
+ }
30
+ if (this.canRun) {
31
+ this.popup.open(AXQueryBuilderPopupComponent, { data: { group: group, provideData: provideData }, title: 'دریافت مقادیر' }).then((c) => {
32
+ resolve(c);
33
+ });
34
+ }
35
+ }
36
+ else {
37
+ resolve(group);
38
+ }
39
+ });
40
+ }
41
+ findNullValue(gr) {
42
+ if (this.canRun == true) {
43
+ if (gr.condition) {
44
+ for (let i = 0; i < gr.items.length; i++) {
45
+ this.findNullValue(gr.items[i]);
46
+ }
47
+ }
48
+ else {
49
+ if (gr.onDemandLabel == '????|') {
50
+ this.canRun = false;
51
+ this.toast.error('لطفا نام متغیر های مورد نیاز را کامل کنید');
52
+ }
53
+ }
54
+ }
55
+ }
56
+ getNoValueRule(gr) {
57
+ // for (let i = 0; i < gr.items.length; i++) {
58
+ if (gr.condition) {
59
+ for (let i = 0; i < gr.items.length; i++) {
60
+ this.getNoValueRule(gr.items[i]);
61
+ }
62
+ }
63
+ else {
64
+ if (gr.onDemandLabel?.indexOf('????') == 0) {
65
+ this.canOpen = true;
66
+ }
67
+ }
68
+ // }
69
+ }
70
+ async getQueryStringSimple(group) {
71
+ return new Promise(async (resolve, reject) => {
72
+ var query;
73
+ if (group.items.length > 0) {
74
+ query = ' ( ';
75
+ }
76
+ var id = 0;
77
+ for await (const iterator of group.items) {
78
+ const item = group.items[id];
79
+ if (item.condition) {
80
+ await this.getQueryStringSimple(item).then((c) => {
81
+ query = query + c;
82
+ });
83
+ }
84
+ else {
85
+ let codeOperator = null;
86
+ switch (item.operator) {
87
+ case 'equal':
88
+ codeOperator = '==';
89
+ break;
90
+ case 'not-equal':
91
+ codeOperator = '!=';
92
+ break;
93
+ case 'not-null':
94
+ codeOperator = '!= null';
95
+ break;
96
+ case 'null':
97
+ codeOperator = '== null';
98
+ break;
99
+ case 'gt':
100
+ codeOperator = '>';
101
+ break;
102
+ case 'gte':
103
+ codeOperator = '>=';
104
+ break;
105
+ case 'lt':
106
+ codeOperator = '<';
107
+ break;
108
+ case 'lte':
109
+ codeOperator = '<=';
110
+ break;
111
+ case 'contains':
112
+ codeOperator = item.operator;
113
+ break;
114
+ case 'start-with':
115
+ codeOperator = item.operator;
116
+ break;
117
+ case 'end-with':
118
+ codeOperator = item.operator;
119
+ break;
120
+ default:
121
+ codeOperator = item.operator;
122
+ break;
123
+ }
124
+ if (item.dataType == 'datetime' && item.text && item.text != '' && item.text != null) {
125
+ query = query + ' ' + item.caption + ' ' + codeOperator + ' (' + AXDateTime.convert(item.text, 'jalali') + ')';
126
+ }
127
+ else if (item.dataType != 'datetime') {
128
+ query = query + ' ' + item.caption + ' ' + codeOperator + ' ' + item.text;
129
+ }
130
+ }
131
+ if (id !== group.items.length - 1 && query != ' ( ') {
132
+ query = query + ' ' + group.condition;
133
+ }
134
+ id += 1;
135
+ }
136
+ if (group.items.length > 0) {
137
+ query = query + ' ) ';
138
+ }
139
+ resolve(query);
140
+ });
141
+ }
142
+ getQueryString(group, type) {
143
+ let query = '';
144
+ switch (type) {
145
+ case 'simple':
146
+ if (group.items.length > 0) {
147
+ query = ' ( ';
148
+ }
149
+ for (let i = 0; i < group.items.length; i++) {
150
+ const item = group.items[i];
151
+ if (item instanceof AXQueryBuilderGroup) {
152
+ query = query + item.queryString;
153
+ }
154
+ else {
155
+ query = query + ' ' + item.caption + ' ' + item.operator + ' ' + item.value;
156
+ }
157
+ if (i !== group.items.length - 1 && query != ' ( ') {
158
+ query = query + ' ' + group.condition;
159
+ }
160
+ }
161
+ if (group.items.length > 0) {
162
+ query = query + ' ) ';
163
+ }
164
+ break;
165
+ case 'elastic':
166
+ if (group.items.length > 0) {
167
+ query = ' ( ';
168
+ }
169
+ for (let i = 0; i < group.items.length; i++) {
170
+ const item = group.items[i];
171
+ if (item instanceof AXQueryBuilderGroup) {
172
+ query = query + item.queryStringElastic;
173
+ }
174
+ else {
175
+ query = query + ' ' + item.dataField + ' ' + item.operator + ' ' + item.value;
176
+ }
177
+ if (i !== group.items.length - 1 && query != ' ( ') {
178
+ query = query + ' ' + group.condition;
179
+ }
180
+ }
181
+ if (group.items.length > 0) {
182
+ query = query + ' ) ';
183
+ }
184
+ break;
185
+ case 'sql':
186
+ break;
187
+ }
188
+ return query;
189
+ }
190
+ }
191
+ AXQueryBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderService, deps: [{ token: i1.AXPopupService }, { token: i2.AXToastService }], target: i0.ɵɵFactoryTarget.Injectable });
192
+ AXQueryBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderService, providedIn: 'root' });
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXQueryBuilderService, decorators: [{
194
+ type: Injectable,
195
+ args: [{ providedIn: 'root' }]
196
+ }], ctorParameters: function () { return [{ type: i1.AXPopupService }, { type: i2.AXToastService }]; } });
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvc3JjL2xpYi9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQTRCLE1BQU0sdUJBQXVCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDbkcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7QUFFMUMsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixLQUFxQixFQUFVLEtBQXFCO1FBQXBELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDeEUsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixXQUFNLEdBQVksS0FBSyxDQUFDO0lBRm9ELENBQUM7SUFHdEUsUUFBUSxDQUFDLEtBQTBCLEVBQUUsV0FBVztRQUNyRCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUMzQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyQztZ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LENBQUMsQ0FBQztvQkFDNUIsSUFBSSxJQUFJLFlBQVksbUJBQW1CLEVBQUU7d0JBQ3ZDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDO3FCQUN6Qzt5QkFBTTt3QkFDTCxLQUFLLEdBQUcsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO3FCQUMvRTtvQkFDRCxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLEtBQUssRUFBRTt3QkFDbEQsS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztxQkFDdkM7aUJBQ0Y7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQzFCLEtBQUssR0FBRyxLQUFLLEdBQUcsS0FBSyxDQUFDO2lCQUN2QjtnQkFFRCxNQUFNO1lBQ1IsS0FBSyxLQUFLO2dCQUNSLE1BQU07U0FDVDtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7bUhBbkxVLHFCQUFxQjt1SEFBckIscUJBQXFCLGNBRFIsTUFBTTs0RkFDbkIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUXVlcnlCdWlsZGVyR3JvdXAsIEFYUXVlcnlCdWlsZGVyU3RyaW5nVHlwZSB9IGZyb20gJy4vcXVlcnktYnVpbGRlci5jbGFzcyc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhQb3B1cFNlcnZpY2UgfSBmcm9tICcuLi9wb3B1cC9wb3B1cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQVhRdWVyeUJ1aWxkZXJQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vcXVlcnktYnVpbGRlci1wb3B1cC9xdWVyeS1idWlsZGVyLXBvcHVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFYVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vdG9hc3QvdG9hc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IEFYRGF0ZVRpbWUgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQVhRdWVyeUJ1aWxkZXJTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvcHVwOiBBWFBvcHVwU2VydmljZSwgcHJpdmF0ZSB0b2FzdDogQVhUb2FzdFNlcnZpY2UpIHsgfVxyXG4gIGNhbk9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjYW5SdW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgcnVuUXVlcnkoZ3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXAsIHByb3ZpZGVEYXRhKSB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcclxuICAgICAgdGhpcy5jYW5PcGVuID0gZmFsc2U7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ3JvdXAuaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICB0aGlzLmdldE5vVmFsdWVSdWxlKGdyb3VwLml0ZW1zW2ldKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jYW5PcGVuKSB7XHJcbiAgICAgICAgdGhpcy5jYW5SdW4gPSB0cnVlO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ3JvdXAuaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmICh0aGlzLmNhblJ1biA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmluZE51bGxWYWx1ZShncm91cC5pdGVtc1tpXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmNhblJ1bikge1xyXG4gICAgICAgICAgdGhpcy5wb3B1cC5vcGVuKEFYUXVlcnlCdWlsZGVyUG9wdXBDb21wb25lbnQsIHsgZGF0YTogeyBncm91cDogZ3JvdXAsIHByb3ZpZGVEYXRhOiBwcm92aWRlRGF0YSB9LCB0aXRsZTogJ9iv2LHbjNin2YHYqiDZhdmC2KfYr9uM2LEnIH0pLnRoZW4oKGMpID0+IHtcclxuICAgICAgICAgICAgcmVzb2x2ZShjKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXNvbHZlKGdyb3VwKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBmaW5kTnVsbFZhbHVlKGdyKSB7XHJcbiAgICBpZiAodGhpcy5jYW5SdW4gPT0gdHJ1ZSkge1xyXG4gICAgICBpZiAoZ3IuY29uZGl0aW9uKSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnci5pdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgdGhpcy5maW5kTnVsbFZhbHVlKGdyLml0ZW1zW2ldKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKGdyLm9uRGVtYW5kTGFiZWwgPT0gJz8/Pz98Jykge1xyXG4gICAgICAgICAgdGhpcy5jYW5SdW4gPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMudG9hc3QuZXJyb3IoJ9mE2LfZgdinINmG2KfZhSDZhdiq2LrbjNixINmH2KfbjCDZhdmI2LHYryDZhtuM2KfYsiDYsdinINqp2KfZhdmEINqp2YbbjNivJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE5vVmFsdWVSdWxlKGdyKSB7XHJcbiAgICAvLyBmb3IgKGxldCBpID0gMDsgaSA8IGdyLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBpZiAoZ3IuY29uZGl0aW9uKSB7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ3IuaXRlbXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICB0aGlzLmdldE5vVmFsdWVSdWxlKGdyLml0ZW1zW2ldKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGdyLm9uRGVtYW5kTGFiZWw/LmluZGV4T2YoJz8/Pz8nKSA9PSAwKSB7XHJcbiAgICAgICAgdGhpcy5jYW5PcGVuID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRRdWVyeVN0cmluZ1NpbXBsZShncm91cDogQVhRdWVyeUJ1aWxkZXJHcm91cCkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZz4oYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB2YXIgcXVlcnk6IHN0cmluZztcclxuICAgICAgaWYgKGdyb3VwLml0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBxdWVyeSA9ICcgKCAnO1xyXG4gICAgICB9XHJcbiAgICAgIHZhciBpZCA9IDA7XHJcbiAgICAgIGZvciBhd2FpdCAoY29uc3QgaXRlcmF0b3Igb2YgZ3JvdXAuaXRlbXMpIHtcclxuICAgICAgICBjb25zdCBpdGVtOiBhbnkgPSBncm91cC5pdGVtc1tpZF07XHJcblxyXG4gICAgICAgIGlmIChpdGVtLmNvbmRpdGlvbikge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5nZXRRdWVyeVN0cmluZ1NpbXBsZShpdGVtKS50aGVuKChjKSA9PiB7XHJcbiAgICAgICAgICAgIHF1ZXJ5ID0gcXVlcnkgKyBjO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGxldCBjb2RlT3BlcmF0b3I6IHN0cmluZyA9IG51bGw7XHJcbiAgICAgICAgICBzd2l0Y2ggKGl0ZW0ub3BlcmF0b3IpIHtcclxuICAgICAgICAgICAgY2FzZSAnZXF1YWwnOlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9ICc9PSc7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ25vdC1lcXVhbCc6XHJcbiAgICAgICAgICAgICAgY29kZU9wZXJhdG9yID0gJyE9JztcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnbm90LW51bGwnOlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9ICchPSBudWxsJztcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnbnVsbCc6XHJcbiAgICAgICAgICAgICAgY29kZU9wZXJhdG9yID0gJz09IG51bGwnO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdndCc6XHJcbiAgICAgICAgICAgICAgY29kZU9wZXJhdG9yID0gJz4nO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdndGUnOlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9ICc+PSc7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ2x0JzpcclxuICAgICAgICAgICAgICBjb2RlT3BlcmF0b3IgPSAnPCc7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ2x0ZSc6XHJcbiAgICAgICAgICAgICAgY29kZU9wZXJhdG9yID0gJzw9JztcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAnY29udGFpbnMnOlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9IGl0ZW0ub3BlcmF0b3I7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3N0YXJ0LXdpdGgnOlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9IGl0ZW0ub3BlcmF0b3I7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ2VuZC13aXRoJzpcclxuICAgICAgICAgICAgICBjb2RlT3BlcmF0b3IgPSBpdGVtLm9wZXJhdG9yO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgIGNvZGVPcGVyYXRvciA9IGl0ZW0ub3BlcmF0b3I7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoaXRlbS5kYXRhVHlwZSA9PSAnZGF0ZXRpbWUnICYmIGl0ZW0udGV4dCAmJiBpdGVtLnRleHQgIT0gJycgJiYgaXRlbS50ZXh0ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgcXVlcnkgPSBxdWVyeSArICcgJyArIGl0ZW0uY2FwdGlvbiArICcgJyArIGNvZGVPcGVyYXRvciArICcgKCcgKyBBWERhdGVUaW1lLmNvbnZlcnQoaXRlbS50ZXh0LCAnamFsYWxpJykgKyAnKSc7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGl0ZW0uZGF0YVR5cGUgIT0gJ2RhdGV0aW1lJykge1xyXG4gICAgICAgICAgICBxdWVyeSA9IHF1ZXJ5ICsgJyAnICsgaXRlbS5jYXB0aW9uICsgJyAnICsgY29kZU9wZXJhdG9yICsgJyAnICsgaXRlbS50ZXh0O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGlkICE9PSBncm91cC5pdGVtcy5sZW5ndGggLSAxICYmIHF1ZXJ5ICE9ICcgKCAnKSB7XHJcbiAgICAgICAgICBxdWVyeSA9IHF1ZXJ5ICsgJyAnICsgZ3JvdXAuY29uZGl0aW9uO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZCArPSAxO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChncm91cC5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgcXVlcnkgPSBxdWVyeSArICcgKSAnO1xyXG4gICAgICB9XHJcbiAgICAgIHJlc29sdmUocXVlcnkpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UXVlcnlTdHJpbmcoZ3JvdXA6IEFYUXVlcnlCdWlsZGVyR3JvdXAsIHR5cGU6IEFYUXVlcnlCdWlsZGVyU3RyaW5nVHlwZSk6IHN0cmluZyB7XHJcbiAgICBsZXQgcXVlcnkgPSAnJztcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdzaW1wbGUnOlxyXG4gICAgICAgIGlmIChncm91cC5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICBxdWVyeSA9ICcgKCAnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyb3VwLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBjb25zdCBpdGVtID0gZ3JvdXAuaXRlbXNbaV07XHJcbiAgICAgICAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcclxuICAgICAgICAgICAgcXVlcnkgPSBxdWVyeSArIGl0ZW0ucXVlcnlTdHJpbmc7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBxdWVyeSA9IHF1ZXJ5ICsgJyAnICsgaXRlbS5jYXB0aW9uICsgJyAnICsgaXRlbS5vcGVyYXRvciArICcgJyArIGl0ZW0udmFsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoaSAhPT0gZ3JvdXAuaXRlbXMubGVuZ3RoIC0gMSAmJiBxdWVyeSAhPSAnICggJykge1xyXG4gICAgICAgICAgICBxdWVyeSA9IHF1ZXJ5ICsgJyAnICsgZ3JvdXAuY29uZGl0aW9uO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZ3JvdXAuaXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgcXVlcnkgPSBxdWVyeSArICcgKSAnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ2VsYXN0aWMnOlxyXG4gICAgICAgIGlmIChncm91cC5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICBxdWVyeSA9ICcgKCAnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyb3VwLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBjb25zdCBpdGVtID0gZ3JvdXAuaXRlbXNbaV07XHJcbiAgICAgICAgICBpZiAoaXRlbSBpbnN0YW5jZW9mIEFYUXVlcnlCdWlsZGVyR3JvdXApIHtcclxuICAgICAgICAgICAgcXVlcnkgPSBxdWVyeSArIGl0ZW0ucXVlcnlTdHJpbmdFbGFzdGljO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcXVlcnkgPSBxdWVyeSArICcgJyArIGl0ZW0uZGF0YUZpZWxkICsgJyAnICsgaXRlbS5vcGVyYXRvciArICcgJyArIGl0ZW0udmFsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoaSAhPT0gZ3JvdXAuaXRlbXMubGVuZ3RoIC0gMSAmJiBxdWVyeSAhPSAnICggJykge1xyXG4gICAgICAgICAgICBxdWVyeSA9IHF1ZXJ5ICsgJyAnICsgZ3JvdXAuY29uZGl0aW9uO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZ3JvdXAuaXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgcXVlcnkgPSBxdWVyeSArICcgKSAnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3NxbCc6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHF1ZXJ5O1xyXG4gIH1cclxufVxyXG4iXX0=