@firestitch/filter 12.13.3 → 13.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/app/classes/actions-controller.d.ts +41 -41
  2. package/app/components/action-button/action-button.component.d.ts +9 -9
  3. package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
  4. package/app/components/actions/actions.component.d.ts +8 -8
  5. package/app/components/filter/filter.component.d.ts +192 -192
  6. package/app/components/filter-chip/filter-chip.component.d.ts +26 -26
  7. package/app/components/filter-chip-content/filter-chip-content.component.d.ts +18 -18
  8. package/app/components/filter-chips/filter-chips.component.d.ts +10 -10
  9. package/app/components/filter-drawer/filter-drawer.component.d.ts +30 -30
  10. package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +15 -15
  11. package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +14 -13
  12. package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +16 -16
  13. package/app/components/filters-item/base-item/base-item.component.d.ts +25 -25
  14. package/app/components/filters-item/checkbox/checkbox.component.d.ts +11 -11
  15. package/app/components/filters-item/chips/chips.component.d.ts +13 -13
  16. package/app/components/filters-item/date/date.component.d.ts +20 -20
  17. package/app/components/filters-item/date-range/date-range.component.d.ts +15 -15
  18. package/app/components/filters-item/filter-item.component.d.ts +39 -39
  19. package/app/components/filters-item/range/range.component.d.ts +15 -15
  20. package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +6 -6
  21. package/app/components/filters-item/select/groups/groups.component.d.ts +12 -12
  22. package/app/components/filters-item/select/multiple/multiple.component.d.ts +15 -15
  23. package/app/components/filters-item/select/select.component.d.ts +23 -23
  24. package/app/components/filters-item/select/simple/simple.component.d.ts +14 -14
  25. package/app/components/filters-item/text/text.component.d.ts +19 -19
  26. package/app/components/filters-item/week/week.component.d.ts +12 -12
  27. package/app/components/saved-filter-edit/saved-filter-edit.component.d.ts +18 -18
  28. package/app/components/saved-filters-menu/saved-filters-menu.component.d.ts +23 -23
  29. package/app/consts/query-param-delimiter.d.ts +1 -1
  30. package/app/directives/focus-to-item/focus-to-item.directive.d.ts +27 -27
  31. package/app/directives/status-bar/status-bar.directive.d.ts +8 -8
  32. package/app/enums/action-mode.enum.d.ts +5 -5
  33. package/app/enums/action-type.enum.d.ts +9 -9
  34. package/app/enums/button-style.d.ts +9 -9
  35. package/app/enums/index.d.ts +6 -6
  36. package/app/enums/item-date-mode.enum.d.ts +5 -5
  37. package/app/enums/item-type.enum.d.ts +15 -15
  38. package/app/enums/picker-view-type.enum.d.ts +7 -7
  39. package/app/fs-filter.module.d.ts +65 -65
  40. package/app/helpers/build-query-params.d.ts +3 -3
  41. package/app/helpers/compare.d.ts +2 -2
  42. package/app/helpers/create-filter-item.d.ts +14 -14
  43. package/app/helpers/find-value.d.ts +1 -1
  44. package/app/helpers/get-range-name.d.ts +1 -1
  45. package/app/helpers/parse-date.d.ts +1 -1
  46. package/app/helpers/parse-item-value-from-stored.d.ts +1 -1
  47. package/app/helpers/query-param-transformers.d.ts +2 -2
  48. package/app/helpers/restore-items.d.ts +12 -12
  49. package/app/helpers/try-convert-to-number.d.ts +1 -1
  50. package/app/injectors/filter-config.d.ts +2 -2
  51. package/app/injectors/filter-drawer-data.d.ts +2 -2
  52. package/app/injectors/filter-drawer-overlay.d.ts +2 -2
  53. package/app/interfaces/action.interface.d.ts +70 -70
  54. package/app/interfaces/config.interface.d.ts +62 -62
  55. package/app/interfaces/external-params.interface.d.ts +3 -3
  56. package/app/interfaces/filter.interface.d.ts +4 -4
  57. package/app/interfaces/items/autocomplete-chips.interface.d.ts +15 -15
  58. package/app/interfaces/items/autocomplete.interface.d.ts +9 -9
  59. package/app/interfaces/items/base.interface.d.ts +29 -29
  60. package/app/interfaces/items/checkbox.interface.d.ts +7 -7
  61. package/app/interfaces/items/chips.interface.d.ts +6 -6
  62. package/app/interfaces/items/date-range.interface.d.ts +8 -8
  63. package/app/interfaces/items/date.interface.d.ts +7 -7
  64. package/app/interfaces/items/range.interface.d.ts +13 -13
  65. package/app/interfaces/items/select.interface.d.ts +20 -20
  66. package/app/interfaces/items/text.interface.d.ts +9 -9
  67. package/app/interfaces/items/week.interface.d.ts +7 -7
  68. package/app/interfaces/saved-filters.interface.d.ts +18 -18
  69. package/app/interfaces/update-filter-item.interface.d.ts +4 -4
  70. package/app/models/action-menu-item.model.d.ts +23 -23
  71. package/app/models/action.model.d.ts +47 -47
  72. package/app/models/filter-config.d.ts +30 -30
  73. package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
  74. package/app/models/items/autocomplete-chips-item.d.ts +20 -20
  75. package/app/models/items/autocomplete-item.d.ts +11 -11
  76. package/app/models/items/base-item.d.ts +80 -79
  77. package/app/models/items/checkbox-item.d.ts +17 -17
  78. package/app/models/items/chips-item.d.ts +18 -18
  79. package/app/models/items/date/base-date-item.d.ts +14 -14
  80. package/app/models/items/date-item.d.ts +8 -8
  81. package/app/models/items/date-range/base-date-range-item.d.ts +21 -21
  82. package/app/models/items/date-range-item.d.ts +6 -6
  83. package/app/models/items/date-time-item.d.ts +7 -7
  84. package/app/models/items/date-time-range-item.d.ts +6 -6
  85. package/app/models/items/range-item.d.ts +23 -23
  86. package/app/models/items/select/base-select-item.d.ts +13 -13
  87. package/app/models/items/select/multiple-select-item.d.ts +14 -14
  88. package/app/models/items/select/simple-select-item.d.ts +14 -14
  89. package/app/models/items/select-item.d.ts +8 -8
  90. package/app/models/items/text-item.d.ts +15 -15
  91. package/app/models/items/week-item.d.ts +18 -18
  92. package/app/pipes/remove-isolate-value.pipe.d.ts +8 -8
  93. package/app/providers/filter-meta.d.ts +5 -5
  94. package/app/services/external-params/persistance-params-controller.service.d.ts +22 -22
  95. package/app/services/external-params/query-params-controller.service.d.ts +24 -24
  96. package/app/services/external-params/saved-filters-controller.service.d.ts +40 -40
  97. package/app/services/external-params-controller.service.d.ts +42 -42
  98. package/app/services/filter-overlay.service.d.ts +34 -34
  99. package/app/services/focus-controller.service.d.ts +18 -18
  100. package/app/services/items-store.service.d.ts +67 -67
  101. package/{esm2015/app/classes/actions-controller.js → esm2020/app/classes/actions-controller.mjs} +127 -127
  102. package/esm2020/app/components/action-button/action-button.component.mjs +24 -0
  103. package/esm2020/app/components/action-kebab-actions/action-kebab-actions.component.mjs +17 -0
  104. package/esm2020/app/components/actions/actions.component.mjs +26 -0
  105. package/esm2020/app/components/filter/filter.component.mjs +572 -0
  106. package/esm2020/app/components/filter-chip/filter-chip.component.mjs +86 -0
  107. package/{esm2015/app/components/filter-chip-content/filter-chip-content.component.js → esm2020/app/components/filter-chip-content/filter-chip-content.component.mjs} +79 -84
  108. package/esm2020/app/components/filter-chips/filter-chips.component.mjs +23 -0
  109. package/esm2020/app/components/filter-drawer/filter-drawer.component.mjs +71 -0
  110. package/esm2020/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +41 -0
  111. package/esm2020/app/components/filters-item/autocomplete/autocomplete.component.mjs +27 -0
  112. package/esm2020/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +42 -0
  113. package/{esm2015/app/components/filters-item/base-item/base-item.component.js → esm2020/app/components/filters-item/base-item/base-item.component.mjs} +63 -63
  114. package/esm2020/app/components/filters-item/checkbox/checkbox.component.mjs +21 -0
  115. package/esm2020/app/components/filters-item/chips/chips.component.mjs +28 -0
  116. package/esm2020/app/components/filters-item/date/date.component.mjs +43 -0
  117. package/esm2020/app/components/filters-item/date-range/date-range.component.mjs +34 -0
  118. package/esm2020/app/components/filters-item/filter-item.component.mjs +80 -0
  119. package/esm2020/app/components/filters-item/range/range.component.mjs +45 -0
  120. package/esm2020/app/components/filters-item/select/backdrop/backdrop.component.mjs +12 -0
  121. package/esm2020/app/components/filters-item/select/groups/groups.component.mjs +30 -0
  122. package/esm2020/app/components/filters-item/select/multiple/multiple.component.mjs +57 -0
  123. package/esm2020/app/components/filters-item/select/select.component.mjs +51 -0
  124. package/esm2020/app/components/filters-item/select/simple/simple.component.mjs +43 -0
  125. package/esm2020/app/components/filters-item/text/text.component.mjs +49 -0
  126. package/esm2020/app/components/filters-item/week/week.component.mjs +25 -0
  127. package/esm2020/app/components/saved-filter-edit/saved-filter-edit.component.mjs +55 -0
  128. package/esm2020/app/components/saved-filters-menu/saved-filters-menu.component.mjs +51 -0
  129. package/{esm2015/app/consts/query-param-delimiter.js → esm2020/app/consts/query-param-delimiter.mjs} +1 -1
  130. package/{esm2015/app/directives/focus-to-item/focus-to-item.directive.js → esm2020/app/directives/focus-to-item/focus-to-item.directive.mjs} +130 -130
  131. package/{esm2015/app/directives/status-bar/status-bar.directive.js → esm2020/app/directives/status-bar/status-bar.directive.mjs} +16 -16
  132. package/{esm2015/app/enums/action-mode.enum.js → esm2020/app/enums/action-mode.enum.mjs} +6 -6
  133. package/{esm2015/app/enums/action-type.enum.js → esm2020/app/enums/action-type.enum.mjs} +10 -10
  134. package/{esm2015/app/enums/button-style.js → esm2020/app/enums/button-style.mjs} +10 -10
  135. package/{esm2015/app/enums/index.js → esm2020/app/enums/index.mjs} +6 -6
  136. package/{esm2015/app/enums/item-date-mode.enum.js → esm2020/app/enums/item-date-mode.enum.mjs} +6 -6
  137. package/{esm2015/app/enums/item-type.enum.js → esm2020/app/enums/item-type.enum.mjs} +16 -16
  138. package/{esm2015/app/enums/picker-view-type.enum.js → esm2020/app/enums/picker-view-type.enum.mjs} +8 -8
  139. package/{esm2015/app/fs-filter.module.js → esm2020/app/fs-filter.module.mjs} +244 -241
  140. package/{esm2015/app/helpers/build-query-params.js → esm2020/app/helpers/build-query-params.mjs} +31 -31
  141. package/{esm2015/app/helpers/compare.js → esm2020/app/helpers/compare.mjs} +37 -37
  142. package/{esm2015/app/helpers/create-filter-item.js → esm2020/app/helpers/create-filter-item.mjs} +54 -54
  143. package/{esm2015/app/helpers/find-value.js → esm2020/app/helpers/find-value.mjs} +12 -12
  144. package/{esm2015/app/helpers/get-range-name.js → esm2020/app/helpers/get-range-name.mjs} +8 -8
  145. package/{esm2015/app/helpers/parse-date.js → esm2020/app/helpers/parse-date.mjs} +7 -7
  146. package/{esm2015/app/helpers/parse-item-value-from-stored.js → esm2020/app/helpers/parse-item-value-from-stored.mjs} +81 -81
  147. package/{esm2015/app/helpers/query-param-transformers.js → esm2020/app/helpers/query-param-transformers.mjs} +8 -8
  148. package/{esm2015/app/helpers/restore-items.js → esm2020/app/helpers/restore-items.mjs} +48 -48
  149. package/{esm2015/app/helpers/try-convert-to-number.js → esm2020/app/helpers/try-convert-to-number.mjs} +5 -5
  150. package/{esm2015/app/injectors/filter-config.js → esm2020/app/injectors/filter-config.mjs} +2 -2
  151. package/{esm2015/app/injectors/filter-drawer-data.js → esm2020/app/injectors/filter-drawer-data.mjs} +2 -2
  152. package/{esm2015/app/injectors/filter-drawer-overlay.js → esm2020/app/injectors/filter-drawer-overlay.mjs} +2 -2
  153. package/{esm2015/app/interfaces/action.interface.js → esm2020/app/interfaces/action.interface.mjs} +1 -1
  154. package/{esm2015/app/interfaces/config.interface.js → esm2020/app/interfaces/config.interface.mjs} +1 -1
  155. package/{esm2015/app/interfaces/external-params.interface.js → esm2020/app/interfaces/external-params.interface.mjs} +1 -1
  156. package/{esm2015/app/interfaces/filter.interface.js → esm2020/app/interfaces/filter.interface.mjs} +1 -1
  157. package/{esm2015/app/interfaces/items/autocomplete-chips.interface.js → esm2020/app/interfaces/items/autocomplete-chips.interface.mjs} +1 -1
  158. package/{esm2015/app/interfaces/items/autocomplete.interface.js → esm2020/app/interfaces/items/autocomplete.interface.mjs} +1 -1
  159. package/{esm2015/app/interfaces/items/base.interface.js → esm2020/app/interfaces/items/base.interface.mjs} +1 -1
  160. package/{esm2015/app/interfaces/items/checkbox.interface.js → esm2020/app/interfaces/items/checkbox.interface.mjs} +1 -1
  161. package/{esm2015/app/interfaces/items/chips.interface.js → esm2020/app/interfaces/items/chips.interface.mjs} +1 -1
  162. package/{esm2015/app/interfaces/items/date-range.interface.js → esm2020/app/interfaces/items/date-range.interface.mjs} +1 -1
  163. package/{esm2015/app/interfaces/items/date.interface.js → esm2020/app/interfaces/items/date.interface.mjs} +1 -1
  164. package/{esm2015/app/interfaces/items/range.interface.js → esm2020/app/interfaces/items/range.interface.mjs} +1 -1
  165. package/{esm2015/app/interfaces/items/select.interface.js → esm2020/app/interfaces/items/select.interface.mjs} +1 -1
  166. package/{esm2015/app/interfaces/items/text.interface.js → esm2020/app/interfaces/items/text.interface.mjs} +1 -1
  167. package/{esm2015/app/interfaces/items/week.interface.js → esm2020/app/interfaces/items/week.interface.mjs} +1 -1
  168. package/{esm2015/app/interfaces/saved-filters.interface.js → esm2020/app/interfaces/saved-filters.interface.mjs} +1 -1
  169. package/{esm2015/app/interfaces/update-filter-item.interface.js → esm2020/app/interfaces/update-filter-item.interface.mjs} +1 -1
  170. package/{esm2015/app/models/action-menu-item.model.js → esm2020/app/models/action-menu-item.model.mjs} +66 -66
  171. package/esm2020/app/models/action.model.mjs +108 -0
  172. package/esm2020/app/models/filter-config.mjs +66 -0
  173. package/esm2020/app/models/items/autocomplete/base-autocomplete-item.mjs +14 -0
  174. package/esm2020/app/models/items/autocomplete-chips-item.mjs +61 -0
  175. package/{esm2015/app/models/items/autocomplete-item.js → esm2020/app/models/items/autocomplete-item.mjs} +33 -33
  176. package/esm2020/app/models/items/base-item.mjs +237 -0
  177. package/{esm2015/app/models/items/checkbox-item.js → esm2020/app/models/items/checkbox-item.mjs} +50 -50
  178. package/{esm2015/app/models/items/chips-item.js → esm2020/app/models/items/chips-item.mjs} +84 -84
  179. package/{esm2015/app/models/items/date/base-date-item.js → esm2020/app/models/items/date/base-date-item.mjs} +47 -47
  180. package/{esm2015/app/models/items/date-item.js → esm2020/app/models/items/date-item.mjs} +19 -19
  181. package/esm2020/app/models/items/date-range/base-date-range-item.mjs +135 -0
  182. package/{esm2015/app/models/items/date-range-item.js → esm2020/app/models/items/date-range-item.mjs} +6 -6
  183. package/esm2020/app/models/items/date-time-item.mjs +10 -0
  184. package/{esm2015/app/models/items/date-time-range-item.js → esm2020/app/models/items/date-time-range-item.mjs} +6 -6
  185. package/esm2020/app/models/items/range-item.mjs +83 -0
  186. package/esm2020/app/models/items/select/base-select-item.mjs +37 -0
  187. package/esm2020/app/models/items/select/multiple-select-item.mjs +88 -0
  188. package/esm2020/app/models/items/select/simple-select-item.mjs +66 -0
  189. package/{esm2015/app/models/items/select-item.js → esm2020/app/models/items/select-item.mjs} +10 -10
  190. package/{esm2015/app/models/items/text-item.js → esm2020/app/models/items/text-item.mjs} +34 -34
  191. package/esm2020/app/models/items/week-item.mjs +94 -0
  192. package/{esm2015/app/pipes/remove-isolate-value.pipe.js → esm2020/app/pipes/remove-isolate-value.pipe.mjs} +21 -21
  193. package/{esm2015/app/providers/filter-meta.js → esm2020/app/providers/filter-meta.mjs} +9 -9
  194. package/esm2020/app/services/external-params/persistance-params-controller.service.mjs +58 -0
  195. package/{esm2015/app/services/external-params/query-params-controller.service.js → esm2020/app/services/external-params/query-params-controller.service.mjs} +67 -67
  196. package/esm2020/app/services/external-params/saved-filters-controller.service.mjs +164 -0
  197. package/esm2020/app/services/external-params-controller.service.mjs +162 -0
  198. package/{esm2015/app/services/filter-overlay.service.js → esm2020/app/services/filter-overlay.service.mjs} +119 -119
  199. package/{esm2015/app/services/focus-controller.service.js → esm2020/app/services/focus-controller.service.mjs} +30 -30
  200. package/esm2020/app/services/items-store.service.mjs +337 -0
  201. package/{esm2015/firestitch-filter.js → esm2020/firestitch-filter.mjs} +4 -4
  202. package/{esm2015/public_api.js → esm2020/public_api.mjs} +36 -36
  203. package/fesm2015/{firestitch-filter.js → firestitch-filter.mjs} +4247 -4359
  204. package/fesm2015/firestitch-filter.mjs.map +1 -0
  205. package/fesm2020/firestitch-filter.mjs +4442 -0
  206. package/fesm2020/firestitch-filter.mjs.map +1 -0
  207. package/firestitch-filter.d.ts +5 -5
  208. package/package.json +20 -7
  209. package/public_api.d.ts +40 -40
  210. package/bundles/firestitch-filter.umd.js +0 -5746
  211. package/bundles/firestitch-filter.umd.js.map +0 -1
  212. package/esm2015/app/components/action-button/action-button.component.js +0 -28
  213. package/esm2015/app/components/action-kebab-actions/action-kebab-actions.component.js +0 -22
  214. package/esm2015/app/components/actions/actions.component.js +0 -31
  215. package/esm2015/app/components/filter/filter.component.js +0 -577
  216. package/esm2015/app/components/filter-chip/filter-chip.component.js +0 -91
  217. package/esm2015/app/components/filter-chips/filter-chips.component.js +0 -27
  218. package/esm2015/app/components/filter-drawer/filter-drawer.component.js +0 -76
  219. package/esm2015/app/components/filter-drawer-actions/filter-drawer-actions.component.js +0 -44
  220. package/esm2015/app/components/filters-item/autocomplete/autocomplete.component.js +0 -30
  221. package/esm2015/app/components/filters-item/autocompletechips/autocompletechips.component.js +0 -45
  222. package/esm2015/app/components/filters-item/checkbox/checkbox.component.js +0 -25
  223. package/esm2015/app/components/filters-item/chips/chips.component.js +0 -32
  224. package/esm2015/app/components/filters-item/date/date.component.js +0 -46
  225. package/esm2015/app/components/filters-item/date-range/date-range.component.js +0 -37
  226. package/esm2015/app/components/filters-item/filter-item.component.js +0 -84
  227. package/esm2015/app/components/filters-item/range/range.component.js +0 -48
  228. package/esm2015/app/components/filters-item/select/backdrop/backdrop.component.js +0 -17
  229. package/esm2015/app/components/filters-item/select/groups/groups.component.js +0 -33
  230. package/esm2015/app/components/filters-item/select/multiple/multiple.component.js +0 -61
  231. package/esm2015/app/components/filters-item/select/select.component.js +0 -55
  232. package/esm2015/app/components/filters-item/select/simple/simple.component.js +0 -47
  233. package/esm2015/app/components/filters-item/text/text.component.js +0 -54
  234. package/esm2015/app/components/filters-item/week/week.component.js +0 -28
  235. package/esm2015/app/components/saved-filter-edit/saved-filter-edit.component.js +0 -55
  236. package/esm2015/app/components/saved-filters-menu/saved-filters-menu.component.js +0 -58
  237. package/esm2015/app/models/action.model.js +0 -109
  238. package/esm2015/app/models/filter-config.js +0 -67
  239. package/esm2015/app/models/items/autocomplete/base-autocomplete-item.js +0 -15
  240. package/esm2015/app/models/items/autocomplete-chips-item.js +0 -62
  241. package/esm2015/app/models/items/base-item.js +0 -241
  242. package/esm2015/app/models/items/date-range/base-date-range-item.js +0 -137
  243. package/esm2015/app/models/items/date-time-item.js +0 -10
  244. package/esm2015/app/models/items/range-item.js +0 -84
  245. package/esm2015/app/models/items/select/base-select-item.js +0 -34
  246. package/esm2015/app/models/items/select/multiple-select-item.js +0 -89
  247. package/esm2015/app/models/items/select/simple-select-item.js +0 -66
  248. package/esm2015/app/models/items/week-item.js +0 -94
  249. package/esm2015/app/services/external-params/persistance-params-controller.service.js +0 -58
  250. package/esm2015/app/services/external-params/saved-filters-controller.service.js +0 -165
  251. package/esm2015/app/services/external-params-controller.service.js +0 -163
  252. package/esm2015/app/services/items-store.service.js +0 -341
  253. package/fesm2015/firestitch-filter.js.map +0 -1
@@ -1,89 +0,0 @@
1
- import { filter, isArrayEqual } from '@firestitch/common';
2
- import { clone } from 'lodash-es';
3
- import { arraysAreEquals } from '../../../helpers/compare';
4
- import { BaseSelectItem } from './base-select-item';
5
- export class MultipleSelectItem extends BaseSelectItem {
6
- constructor(itemConfig, _persistedValues, _filter) {
7
- super(itemConfig, _persistedValues, _filter);
8
- }
9
- get value() {
10
- var _a;
11
- let value = clone(this.model);
12
- if (this.isolateOptionNotSelected) {
13
- value = (_a = this.values) === null || _a === void 0 ? void 0 : _a.map((v) => v.value);
14
- }
15
- else if (!Array.isArray(value) || value.length === 0 || value.indexOf('__all') > -1) {
16
- value = undefined;
17
- }
18
- return value;
19
- }
20
- get isChipVisible() {
21
- return Array.isArray(this.model) && this.model.length > 0;
22
- }
23
- get isolateOptionNotSelected() {
24
- const modelValue = this.model;
25
- const isolate = this.isolate;
26
- return isolate && !isolate.enabled && (modelValue === null || modelValue === void 0 ? void 0 : modelValue.length) === 0;
27
- }
28
- getChipsContent(type = null) {
29
- const options = this.model.reduce((acc, key) => {
30
- const itemValue = this.values.find((val) => val.value === key);
31
- let itemLabel;
32
- if (itemValue) {
33
- itemLabel = itemValue.name;
34
- }
35
- else if (this.isolate && this.isolate.enabled) {
36
- itemLabel = this.isolate.label;
37
- }
38
- if (!acc.includes(itemLabel)) {
39
- acc.push(itemLabel);
40
- }
41
- return acc;
42
- }, []);
43
- return options.join(', ');
44
- }
45
- _init() {
46
- super._init();
47
- const values = this.values.map((itemv) => itemv.value);
48
- const wrongDefaultValue = !this.model && !Array.isArray(this.defaultValue);
49
- /**
50
- * When multiple select is in isolate mode and have no options selected
51
- * it should send to the server all it's possible values,
52
- * but should not show them as selected in interfaces as well as in query params & persistance
53
- *
54
- * Code below prevents filling model with values from query params if query params contain all possible values
55
- */
56
- const isolate = !wrongDefaultValue
57
- && !this.isolateOptionNotSelected
58
- && arraysAreEquals(this.model, values);
59
- if (wrongDefaultValue || isolate) {
60
- this.model = [];
61
- }
62
- }
63
- _setModel(value) {
64
- if (Array.isArray(value)) {
65
- value = value.map((val) => {
66
- if (isNaN(val)) {
67
- return val;
68
- }
69
- return +val;
70
- });
71
- }
72
- super._setModel(value);
73
- }
74
- _validateModel() {
75
- const possibleValues = filter(this.model || [], (item) => {
76
- return this.values.find((value) => {
77
- return value.value === item;
78
- });
79
- });
80
- if (!isArrayEqual(this.model, possibleValues)) {
81
- this.model = possibleValues;
82
- }
83
- }
84
- _clearValue(defaultValue = undefined) {
85
- super._clearValue(defaultValue);
86
- this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : [];
87
- }
88
- }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUtc2VsZWN0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9pdGVtcy9zZWxlY3QvbXVsdGlwbGUtc2VsZWN0LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBR2xDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUczRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHcEQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGNBQWM7SUFFcEQsWUFDRSxVQUFtQyxFQUNuQyxnQkFBcUIsRUFDckIsT0FBd0I7UUFFeEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBVyxLQUFLOztRQUNkLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFOUIsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUU7WUFDakMsS0FBSyxHQUFHLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUM7YUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ3JGLEtBQUssR0FBRyxTQUFTLENBQUM7U0FDbkI7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxJQUFX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TUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNoQyxPQUFPLEtBQUssQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLEVBQUU7WUFDN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRVMsV0FBVyxDQUFDLGVBQXdCLFNBQVM7UUFDckQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVoQyxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksYUFBWixZQUFZLGNBQVosWUFBWSxHQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXIsIGlzQXJyYXlFcXVhbCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5cbmltcG9ydCB7IGNsb25lIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHR5cGUgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IGFycmF5c0FyZUVxdWFscyB9IGZyb20gJy4uLy4uLy4uL2hlbHBlcnMvY29tcGFyZSc7XG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnU2VsZWN0SXRlbSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvaXRlbXMvc2VsZWN0LmludGVyZmFjZSc7XG5cbmltcG9ydCB7IEJhc2VTZWxlY3RJdGVtIH0gZnJvbSAnLi9iYXNlLXNlbGVjdC1pdGVtJztcblxuXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVTZWxlY3RJdGVtIGV4dGVuZHMgQmFzZVNlbGVjdEl0ZW0ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGl0ZW1Db25maWc6IElGaWx0ZXJDb25maWdTZWxlY3RJdGVtLFxuICAgIF9wZXJzaXN0ZWRWYWx1ZXM6IGFueSxcbiAgICBfZmlsdGVyOiBGaWx0ZXJDb21wb25lbnQsXG4gICkge1xuICAgIHN1cGVyKGl0ZW1Db25maWcsIF9wZXJzaXN0ZWRWYWx1ZXMsIF9maWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpIHtcbiAgICBsZXQgdmFsdWUgPSBjbG9uZSh0aGlzLm1vZGVsKTtcblxuICAgIGlmICh0aGlzLmlzb2xhdGVPcHRpb25Ob3RTZWxlY3RlZCkge1xuICAgICAgdmFsdWUgPSB0aGlzLnZhbHVlcz8ubWFwKCh2KSA9PiB2LnZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB2YWx1ZS5sZW5ndGggPT09IDAgfHwgdmFsdWUuaW5kZXhPZignX19hbGwnKSA+IC0xKSB7XG4gICAgICB2YWx1ZSA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzQ2hpcFZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodGhpcy5tb2RlbCkgJiYgdGhpcy5tb2RlbC5sZW5ndGggPiAwO1xuICB9XG5cbiAgcHVibGljIGdldCBpc29sYXRlT3B0aW9uTm90U2VsZWN0ZWQoKSB7XG4gICAgY29uc3QgbW9kZWxWYWx1ZSA9IHRoaXMubW9kZWw7XG4gICAgY29uc3QgaXNvbGF0ZSA9IHRoaXMuaXNvbGF0ZTtcblxuICAgIHJldHVybiBpc29sYXRlICYmICFpc29sYXRlLmVuYWJsZWQgJiYgbW9kZWxWYWx1ZT8ubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgcHVibGljIGdldENoaXBzQ29udGVudCh0eXBlID0gbnVsbCk6IHN0cmluZyB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMubW9kZWwucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgY29uc3QgaXRlbVZhbHVlID0gdGhpcy52YWx1ZXMuZmluZCgodmFsKSA9PiB2YWwudmFsdWUgPT09IGtleSk7XG4gICAgICBsZXQgaXRlbUxhYmVsOiBzdHJpbmc7XG5cbiAgICAgIGlmIChpdGVtVmFsdWUpIHtcbiAgICAgICAgaXRlbUxhYmVsID0gaXRlbVZhbHVlLm5hbWU7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNvbGF0ZSAmJiB0aGlzLmlzb2xhdGUuZW5hYmxlZCkge1xuICAgICAgICBpdGVtTGFiZWwgPSB0aGlzLmlzb2xhdGUubGFiZWw7XG4gICAgICB9XG5cbiAgICAgIGlmICghYWNjLmluY2x1ZGVzKGl0ZW1MYWJlbCkpIHtcbiAgICAgICAgYWNjLnB1c2goaXRlbUxhYmVsKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gb3B0aW9ucy5qb2luKCcsICcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9pbml0KCkge1xuICAgIHN1cGVyLl9pbml0KCk7XG5cbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLnZhbHVlcy5tYXAoKGl0ZW12KSA9PiBpdGVtdi52YWx1ZSk7XG4gICAgY29uc3Qgd3JvbmdEZWZhdWx0VmFsdWUgPSAhdGhpcy5tb2RlbCAmJiAhQXJyYXkuaXNBcnJheSh0aGlzLmRlZmF1bHRWYWx1ZSk7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIG11bHRpcGxlIHNlbGVjdCBpcyBpbiBpc29sYXRlIG1vZGUgYW5kIGhhdmUgbm8gb3B0aW9ucyBzZWxlY3RlZFxuICAgICAqIGl0IHNob3VsZCBzZW5kIHRvIHRoZSBzZXJ2ZXIgYWxsIGl0J3MgcG9zc2libGUgdmFsdWVzLFxuICAgICAqIGJ1dCBzaG91bGQgbm90IHNob3cgdGhlbSBhcyBzZWxlY3RlZCBpbiBpbnRlcmZhY2VzIGFzIHdlbGwgYXMgaW4gcXVlcnkgcGFyYW1zICYgcGVyc2lzdGFuY2VcbiAgICAgKlxuICAgICAqIENvZGUgYmVsb3cgcHJldmVudHMgZmlsbGluZyBtb2RlbCB3aXRoIHZhbHVlcyBmcm9tIHF1ZXJ5IHBhcmFtcyBpZiBxdWVyeSBwYXJhbXMgY29udGFpbiBhbGwgcG9zc2libGUgdmFsdWVzXG4gICAgICovXG4gICAgY29uc3QgaXNvbGF0ZSA9ICF3cm9uZ0RlZmF1bHRWYWx1ZVxuICAgICAgJiYgIXRoaXMuaXNvbGF0ZU9wdGlvbk5vdFNlbGVjdGVkXG4gICAgICAmJiBhcnJheXNBcmVFcXVhbHModGhpcy5tb2RlbCwgdmFsdWVzKTtcblxuICAgIGlmICh3cm9uZ0RlZmF1bHRWYWx1ZSB8fCBpc29sYXRlKSB7XG4gICAgICB0aGlzLm1vZGVsID0gW107XG4gICAgfVxuICB9XG4gIHByb3RlY3RlZCBfc2V0TW9kZWwodmFsdWUpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUubWFwKCh2YWwpID0+IHtcbiAgICAgICAgaWYgKGlzTmFOKHZhbCkpIHtcbiAgICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICt2YWw7XG5cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHN1cGVyLl9zZXRNb2RlbCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3ZhbGlkYXRlTW9kZWwoKSB7XG4gICAgY29uc3QgcG9zc2libGVWYWx1ZXMgPSBmaWx0ZXIodGhpcy5tb2RlbCB8fCBbXSwgKGl0ZW0pID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlcy5maW5kKCh2YWx1ZSkgPT4ge1xuICAgICAgICByZXR1cm4gdmFsdWUudmFsdWUgPT09IGl0ZW07XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGlmICghaXNBcnJheUVxdWFsKHRoaXMubW9kZWwsIHBvc3NpYmxlVmFsdWVzKSkge1xuICAgICAgdGhpcy5tb2RlbCA9IHBvc3NpYmxlVmFsdWVzO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWU6IHVua25vd24gPSB1bmRlZmluZWQpIHtcbiAgICBzdXBlci5fY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWUpO1xuXG4gICAgdGhpcy5tb2RlbCA9IGRlZmF1bHRWYWx1ZSA/PyBbXTtcbiAgfVxufVxuIl19
@@ -1,66 +0,0 @@
1
- import { findValue } from '../../../helpers/find-value';
2
- import { BaseSelectItem } from './base-select-item';
3
- export class SimpleSelectItem extends BaseSelectItem {
4
- constructor(itemConfig, _persistedValues, _filter) {
5
- super(itemConfig, _persistedValues, _filter);
6
- }
7
- get value() {
8
- let value = this.model;
9
- if (value === '__all' || value === undefined) {
10
- value = undefined;
11
- }
12
- return value;
13
- }
14
- getChipsContent(type = null) {
15
- if (this.children) {
16
- const itemValue = findValue(this.values, this.model, this.children);
17
- return itemValue && itemValue.name;
18
- }
19
- const itemValue = this.values.find((val) => val.value === this.model);
20
- if (itemValue) {
21
- return itemValue.name;
22
- }
23
- else if (this.isolate) {
24
- return this.isolate.label;
25
- }
26
- }
27
- get isChipVisible() {
28
- return this.model !== '__all' && this.model !== undefined;
29
- }
30
- _init() {
31
- super._init();
32
- if (this.model === undefined && this.defaultValue === undefined) {
33
- this._model = '__all';
34
- }
35
- }
36
- get isolateOptionNotSelected() {
37
- const modelValue = this.model;
38
- const isolate = this.isolate;
39
- return isolate && !isolate.enabled && (modelValue === null || modelValue === void 0 ? void 0 : modelValue.length) === 0;
40
- }
41
- _setModel(value) {
42
- if (value) {
43
- if (!isNaN(value)) {
44
- value = +value;
45
- }
46
- }
47
- super._setModel(value);
48
- }
49
- _validateModel() {
50
- const item = this.values.find((value) => {
51
- return value.value == this.model;
52
- });
53
- const value = item ? item.value : '__all';
54
- if (this._model !== value) {
55
- this.model = value;
56
- }
57
- }
58
- _clearValue(defaultValue = undefined) {
59
- super._clearValue(defaultValue);
60
- const value = Array.isArray(this.values) && this.values.some((val) => val.value === '__all')
61
- ? '__all'
62
- : undefined;
63
- this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : value;
64
- }
65
- }
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXNlbGVjdC1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvaXRlbXMvc2VsZWN0L3NpbXBsZS1zZWxlY3QtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3BELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxjQUFjO0lBRWxELFlBQ0UsVUFBbUMsRUFDbkMsZ0JBQXFCLEVBQ3JCLE9BQXdCO1FBRXhCLEtBQUssQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFdkIsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDNUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztTQUNuQjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLGVBQWUsQ0FBQyxJQUFJLEdBQUcsSUFBSTtRQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFcEUsT0FBTyxTQUFTLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQztTQUNwQztRQUNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RSxJQUFJLFNBQVMsRUFBRTtZQUNiLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQztTQUN2QjthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1NBQzNCO0lBRUgsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQzVELENBQUM7SUFFUyxLQUFLO1FBQ2IsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWQsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtZQUMvRCxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRCxJQUFjLHdCQUF3QjtRQUNwQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzlCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFN0IsT0FBTyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLE1BQU0sTUFBSyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVTLFNBQVMsQ0FBQyxLQUFLO1FBQ3ZCLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakIsS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDO2FBQ2hCO1NBQ0Y7UUFFRCxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFUyxjQUFjO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDdEMsT0FBTyxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUUxQyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssS0FBSyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVTLFdBQVcsQ0FBQyxlQUF3QixTQUFTO1FBQ3JELEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFaEMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDO1lBQzFGLENBQUMsQ0FBQyxPQUFPO1lBQ1QsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUVkLElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxhQUFaLFlBQVksY0FBWixZQUFZLEdBQUksS0FBSyxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBmaW5kVmFsdWUgfSBmcm9tICcuLi8uLi8uLi9oZWxwZXJzL2ZpbmQtdmFsdWUnO1xuaW1wb3J0IHsgSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL3NlbGVjdC5pbnRlcmZhY2UnO1xuXG5pbXBvcnQgeyBCYXNlU2VsZWN0SXRlbSB9IGZyb20gJy4vYmFzZS1zZWxlY3QtaXRlbSc7XG5cblxuZXhwb3J0IGNsYXNzIFNpbXBsZVNlbGVjdEl0ZW0gZXh0ZW5kcyBCYXNlU2VsZWN0SXRlbSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaXRlbUNvbmZpZzogSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0sXG4gICAgX3BlcnNpc3RlZFZhbHVlczogYW55LFxuICAgIF9maWx0ZXI6IEZpbHRlckNvbXBvbmVudCxcbiAgKSB7XG4gICAgc3VwZXIoaXRlbUNvbmZpZywgX3BlcnNpc3RlZFZhbHVlcywgX2ZpbHRlcik7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCkge1xuICAgIGxldCB2YWx1ZSA9IHRoaXMubW9kZWw7XG5cbiAgICBpZiAodmFsdWUgPT09ICdfX2FsbCcgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldENoaXBzQ29udGVudCh0eXBlID0gbnVsbCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY2hpbGRyZW4pIHtcbiAgICAgIGNvbnN0IGl0ZW1WYWx1ZSA9IGZpbmRWYWx1ZSh0aGlzLnZhbHVlcywgdGhpcy5tb2RlbCwgdGhpcy5jaGlsZHJlbik7XG5cbiAgICAgIHJldHVybiBpdGVtVmFsdWUgJiYgaXRlbVZhbHVlLm5hbWU7XG4gICAgfVxuICAgIGNvbnN0IGl0ZW1WYWx1ZSA9IHRoaXMudmFsdWVzLmZpbmQoKHZhbCkgPT4gdmFsLnZhbHVlID09PSB0aGlzLm1vZGVsKTtcblxuICAgIGlmIChpdGVtVmFsdWUpIHtcbiAgICAgIHJldHVybiBpdGVtVmFsdWUubmFtZTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNvbGF0ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNvbGF0ZS5sYWJlbDtcbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNDaGlwVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbCAhPT0gJ19fYWxsJyAmJiB0aGlzLm1vZGVsICE9PSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2luaXQoKSB7XG4gICAgc3VwZXIuX2luaXQoKTtcblxuICAgIGlmICh0aGlzLm1vZGVsID09PSB1bmRlZmluZWQgJiYgdGhpcy5kZWZhdWx0VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5fbW9kZWwgPSAnX19hbGwnO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgaXNvbGF0ZU9wdGlvbk5vdFNlbGVjdGVkKCkge1xuICAgIGNvbnN0IG1vZGVsVmFsdWUgPSB0aGlzLm1vZGVsO1xuICAgIGNvbnN0IGlzb2xhdGUgPSB0aGlzLmlzb2xhdGU7XG5cbiAgICByZXR1cm4gaXNvbGF0ZSAmJiAhaXNvbGF0ZS5lbmFibGVkICYmIG1vZGVsVmFsdWU/Lmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBfc2V0TW9kZWwodmFsdWUpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGlmICghaXNOYU4odmFsdWUpKSB7XG4gICAgICAgIHZhbHVlID0gK3ZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHN1cGVyLl9zZXRNb2RlbCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3ZhbGlkYXRlTW9kZWwoKSB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMudmFsdWVzLmZpbmQoKHZhbHVlKSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUudmFsdWUgPT0gdGhpcy5tb2RlbDtcbiAgICB9KTtcblxuICAgIGNvbnN0IHZhbHVlID0gaXRlbSA/IGl0ZW0udmFsdWUgOiAnX19hbGwnO1xuXG4gICAgaWYgKHRoaXMuX21vZGVsICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5tb2RlbCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWU6IHVua25vd24gPSB1bmRlZmluZWQpIHtcbiAgICBzdXBlci5fY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWUpO1xuXG4gICAgY29uc3QgdmFsdWUgPSBBcnJheS5pc0FycmF5KHRoaXMudmFsdWVzKSAmJiB0aGlzLnZhbHVlcy5zb21lKCh2YWwpID0+IHZhbC52YWx1ZSA9PT0gJ19fYWxsJylcbiAgICAgID8gJ19fYWxsJ1xuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLm1vZGVsID0gZGVmYXVsdFZhbHVlID8/IHZhbHVlO1xuICB9XG59XG4iXX0=
@@ -1,94 +0,0 @@
1
- import { isEmpty } from '@firestitch/common';
2
- import { simpleFormat } from '@firestitch/date';
3
- import { formatPeriodObject } from '@firestitch/datepicker';
4
- import { isDate, isValid, parseISO } from 'date-fns';
5
- import { clone, isObject, isString } from 'lodash-es';
6
- import { getRangeName } from '../../helpers/get-range-name';
7
- import { parseDate } from '../../helpers/parse-date';
8
- import { BaseItem } from './base-item';
9
- export class WeekItem extends BaseItem {
10
- static create(config, filter) {
11
- return new WeekItem(config, null, filter);
12
- }
13
- get value() {
14
- let value = clone(this.model);
15
- if (!isObject(this.model) ||
16
- (isEmpty(this.model.from, { zero: true }) && isEmpty(this.model.to, { zero: true }))) {
17
- value = undefined;
18
- }
19
- if (isEmpty(value, { zero: true })) {
20
- return undefined;
21
- }
22
- let from = value.from;
23
- let to = value.to;
24
- const period = value.period;
25
- value = {};
26
- if (from) {
27
- if (isString(from)) {
28
- from = parseISO(from);
29
- }
30
- if (isValid(from) && isDate(from)) {
31
- value.from = from;
32
- }
33
- }
34
- if (to) {
35
- if (isString(to)) {
36
- to = parseISO(to);
37
- }
38
- if (isValid(to) && isDate(to)) {
39
- value.to = to;
40
- }
41
- }
42
- if (period) {
43
- value.period = isString(period) ? parseInt(period, 10) : period;
44
- }
45
- return value;
46
- }
47
- get queryObject() {
48
- const value = this.value;
49
- const name = this.name;
50
- const paramFromName = getRangeName('camel', name, 'from');
51
- const paramToName = getRangeName('camel', name, 'to');
52
- const paramPeriodName = `${name}Period`;
53
- return {
54
- [paramFromName]: (value === null || value === void 0 ? void 0 : value.from) || undefined,
55
- [paramToName]: (value === null || value === void 0 ? void 0 : value.to) || undefined,
56
- [paramPeriodName]: (value === null || value === void 0 ? void 0 : value.period) || undefined,
57
- };
58
- }
59
- get persistanceObject() {
60
- const query = this.queryObject;
61
- const name = this.name;
62
- const paramFromName = getRangeName('camel', name, 'from');
63
- const paramFromValue = query[paramFromName] && simpleFormat(query[paramFromName]) || query[paramFromName];
64
- const paramToName = getRangeName('camel', name, 'to');
65
- const paramToValue = query[paramToName] && simpleFormat(query[paramToName]) || query[paramToName];
66
- const paramPeriodName = `${name}Period`;
67
- return {
68
- [paramFromName]: paramFromValue,
69
- [paramToName]: paramToValue,
70
- [paramPeriodName]: query[paramPeriodName],
71
- };
72
- }
73
- getChipsContent(type = null) {
74
- return formatPeriodObject(this.value);
75
- }
76
- _validateModel() { }
77
- _setModel(value) {
78
- if (value) {
79
- value.from = parseDate(value.from);
80
- value.to = parseDate(value.to);
81
- value.period = parseInt(value.period, 10) || undefined;
82
- }
83
- super._setModel(value);
84
- }
85
- _parseConfig(item) {
86
- super._parseConfig(item);
87
- this.seedDate = item.seedDate;
88
- }
89
- _init() { }
90
- _clearValue(defaultValue = undefined) {
91
- this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : undefined;
92
- }
93
- }
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vlay1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvaXRlbXMvd2Vlay1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUd0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3JELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHdkMsTUFBTSxPQUFPLFFBQVMsU0FBUSxRQUErQjtJQUlwRCxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQTZCLEVBQUUsTUFBdUI7UUFDekUsT0FBTyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN2QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUs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R0FBSSxTQUFTLENBQUM7SUFDekMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5pbXBvcnQgeyBzaW1wbGVGb3JtYXQgfSBmcm9tICdAZmlyZXN0aXRjaC9kYXRlJztcbmltcG9ydCB7IGZvcm1hdFBlcmlvZE9iamVjdCB9IGZyb20gJ0BmaXJlc3RpdGNoL2RhdGVwaWNrZXInO1xuXG5pbXBvcnQgeyBpc0RhdGUsIGlzVmFsaWQsIHBhcnNlSVNPIH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgY2xvbmUsIGlzT2JqZWN0LCBpc1N0cmluZyB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB0eXBlIHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBnZXRSYW5nZU5hbWUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2dldC1yYW5nZS1uYW1lJztcbmltcG9ydCB7IHBhcnNlRGF0ZSB9IGZyb20gJy4uLy4uL2hlbHBlcnMvcGFyc2UtZGF0ZSc7XG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnV2Vla0l0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL3dlZWsuaW50ZXJmYWNlJztcblxuaW1wb3J0IHsgQmFzZUl0ZW0gfSBmcm9tICcuL2Jhc2UtaXRlbSc7XG5cblxuZXhwb3J0IGNsYXNzIFdlZWtJdGVtIGV4dGVuZHMgQmFzZUl0ZW08SUZpbHRlckNvbmZpZ1dlZWtJdGVtPiB7XG5cbiAgcHVibGljIHNlZWREYXRlOiBEYXRlO1xuXG4gIHB1YmxpYyBzdGF0aWMgY3JlYXRlKGNvbmZpZzogSUZpbHRlckNvbmZpZ1dlZWtJdGVtLCBmaWx0ZXI6IEZpbHRlckNvbXBvbmVudCkge1xuICAgIHJldHVybiBuZXcgV2Vla0l0ZW0oY29uZmlnLCBudWxsLCBmaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpIHtcbiAgICBsZXQgdmFsdWUgPSBjbG9uZSh0aGlzLm1vZGVsKTtcblxuICAgIGlmICghaXNPYmplY3QodGhpcy5tb2RlbCkgfHxcbiAgICAgIChpc0VtcHR5KHRoaXMubW9kZWwuZnJvbSwgeyB6ZXJvOiB0cnVlIH0pICYmIGlzRW1wdHkodGhpcy5tb2RlbC50bywgeyB6ZXJvOiB0cnVlIH0pKSkge1xuICAgICAgdmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKGlzRW1wdHkodmFsdWUsIHsgemVybzogdHJ1ZSB9KSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBsZXQgZnJvbSA9IHZhbHVlLmZyb207XG4gICAgbGV0IHRvID0gdmFsdWUudG87XG4gICAgY29uc3QgcGVyaW9kID0gdmFsdWUucGVyaW9kO1xuXG4gICAgdmFsdWUgPSB7fTtcblxuICAgIGlmIChmcm9tKSB7XG4gICAgICBpZiAoaXNTdHJpbmcoZnJvbSkpIHtcbiAgICAgICAgZnJvbSA9IHBhcnNlSVNPKGZyb20pO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNWYWxpZChmcm9tKSAmJiBpc0RhdGUoZnJvbSkpIHtcbiAgICAgICAgdmFsdWUuZnJvbSA9IGZyb207XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRvKSB7XG4gICAgICBpZiAoaXNTdHJpbmcodG8pKSB7XG4gICAgICAgIHRvID0gcGFyc2VJU08odG8pO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNWYWxpZCh0bykgJiYgaXNEYXRlKHRvKSkge1xuICAgICAgICB2YWx1ZS50byA9IHRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwZXJpb2QpIHtcbiAgICAgIHZhbHVlLnBlcmlvZCA9IGlzU3RyaW5nKHBlcmlvZCkgPyBwYXJzZUludChwZXJpb2QsIDEwKSA6IHBlcmlvZDtcbiAgICB9XG5cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcXVlcnlPYmplY3QoKSB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlO1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWU7XG4gICAgY29uc3QgcGFyYW1Gcm9tTmFtZSA9IGdldFJhbmdlTmFtZSgnY2FtZWwnLCBuYW1lLCAnZnJvbScpO1xuICAgIGNvbnN0IHBhcmFtVG9OYW1lID0gZ2V0UmFuZ2VOYW1lKCdjYW1lbCcsIG5hbWUsICd0bycpO1xuICAgIGNvbnN0IHBhcmFtUGVyaW9kTmFtZSA9IGAke25hbWV9UGVyaW9kYDtcblxuICAgIHJldHVybiB7XG4gICAgICBbcGFyYW1Gcm9tTmFtZV06IHZhbHVlPy5mcm9tIHx8IHVuZGVmaW5lZCxcbiAgICAgIFtwYXJhbVRvTmFtZV06IHZhbHVlPy50byB8fCB1bmRlZmluZWQsXG4gICAgICBbcGFyYW1QZXJpb2ROYW1lXTogdmFsdWU/LnBlcmlvZCB8fCB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGVyc2lzdGFuY2VPYmplY3QoKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gICAgY29uc3QgcXVlcnkgPSB0aGlzLnF1ZXJ5T2JqZWN0O1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWU7XG4gICAgY29uc3QgcGFyYW1Gcm9tTmFtZSA9IGdldFJhbmdlTmFtZSgnY2FtZWwnLCBuYW1lLCAnZnJvbScpO1xuICAgIGNvbnN0IHBhcmFtRnJvbVZhbHVlID0gcXVlcnlbcGFyYW1Gcm9tTmFtZV0gJiYgc2ltcGxlRm9ybWF0KHF1ZXJ5W3BhcmFtRnJvbU5hbWVdKSB8fCBxdWVyeVtwYXJhbUZyb21OYW1lXTtcbiAgICBjb25zdCBwYXJhbVRvTmFtZSA9IGdldFJhbmdlTmFtZSgnY2FtZWwnLCBuYW1lLCAndG8nKTtcbiAgICBjb25zdCBwYXJhbVRvVmFsdWUgPSBxdWVyeVtwYXJhbVRvTmFtZV0gJiYgc2ltcGxlRm9ybWF0KHF1ZXJ5W3BhcmFtVG9OYW1lXSkgfHwgcXVlcnlbcGFyYW1Ub05hbWVdO1xuICAgIGNvbnN0IHBhcmFtUGVyaW9kTmFtZSA9IGAke25hbWV9UGVyaW9kYDtcblxuICAgIHJldHVybiB7XG4gICAgICBbcGFyYW1Gcm9tTmFtZV06IHBhcmFtRnJvbVZhbHVlLFxuICAgICAgW3BhcmFtVG9OYW1lXTogcGFyYW1Ub1ZhbHVlLFxuICAgICAgW3BhcmFtUGVyaW9kTmFtZV06IHF1ZXJ5W3BhcmFtUGVyaW9kTmFtZV0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGlwc0NvbnRlbnQodHlwZSA9IG51bGwpOiBzdHJpbmcge1xuICAgIHJldHVybiBmb3JtYXRQZXJpb2RPYmplY3QodGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3ZhbGlkYXRlTW9kZWwoKSB7IH1cblxuICBwcm90ZWN0ZWQgX3NldE1vZGVsKHZhbHVlKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB2YWx1ZS5mcm9tID0gcGFyc2VEYXRlKHZhbHVlLmZyb20pO1xuICAgICAgdmFsdWUudG8gPSBwYXJzZURhdGUodmFsdWUudG8pO1xuICAgICAgdmFsdWUucGVyaW9kID0gcGFyc2VJbnQodmFsdWUucGVyaW9kLCAxMCkgfHwgdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHN1cGVyLl9zZXRNb2RlbCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3BhcnNlQ29uZmlnKGl0ZW06IElGaWx0ZXJDb25maWdXZWVrSXRlbSkge1xuICAgIHN1cGVyLl9wYXJzZUNvbmZpZyhpdGVtKTtcblxuICAgIHRoaXMuc2VlZERhdGUgPSBpdGVtLnNlZWREYXRlO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9pbml0KCkgeyB9XG5cbiAgcHJvdGVjdGVkIF9jbGVhclZhbHVlKGRlZmF1bHRWYWx1ZTogdW5rbm93biA9IHVuZGVmaW5lZCkge1xuICAgIHRoaXMubW9kZWwgPSBkZWZhdWx0VmFsdWUgPz8gdW5kZWZpbmVkO1xuICB9XG59XG4iXX0=
@@ -1,58 +0,0 @@
1
- import { Injectable, Optional } from '@angular/core';
2
- import { Location } from '@angular/common';
3
- import { ActivatedRoute } from '@angular/router';
4
- import { MatDialogRef } from '@angular/material/dialog';
5
- import { DrawerRef } from '@firestitch/drawer';
6
- import { FsPersistanceStore } from '@firestitch/store';
7
- import { getNormalizedPath } from '@firestitch/common';
8
- import { FsStore } from '@firestitch/store';
9
- import { restoreItems } from '../../helpers/restore-items';
10
- import { FsFilterItemsStore } from '../items-store.service';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@firestitch/store";
13
- import * as i2 from "@angular/router";
14
- import * as i3 from "@angular/common";
15
- import * as i4 from "../items-store.service";
16
- import * as i5 from "@angular/material/dialog";
17
- import * as i6 from "@firestitch/drawer";
18
- const FILTER_STORE_KEY = 'fs-filter-persist';
19
- export class PersistanceParamsController extends FsPersistanceStore {
20
- constructor(_store, _route, _location, _itemsStore, _dialogRef, _drawerRef) {
21
- super(_store, _route);
22
- this._location = _location;
23
- this._itemsStore = _itemsStore;
24
- this._dialogRef = _dialogRef;
25
- this._drawerRef = _drawerRef;
26
- this.STORE_KEY = FILTER_STORE_KEY;
27
- }
28
- init(persistanceConfig, namespace, paramsCase) {
29
- this._paramsCase = paramsCase;
30
- namespace = namespace !== null && namespace !== void 0 ? namespace : getNormalizedPath(this._location);
31
- const persistanceDisabled = !!this._dialogRef || !!this._drawerRef;
32
- this.setConfig(persistanceConfig, namespace, persistanceDisabled);
33
- }
34
- restore() {
35
- if (!this.enabled) {
36
- return;
37
- }
38
- super.restore();
39
- const items = [
40
- ...this._itemsStore.items,
41
- this._itemsStore.sortByItem,
42
- this._itemsStore.sortDirectionItem,
43
- ].filter((item) => !!item);
44
- if (this._value) {
45
- this._value.data = restoreItems(this._value.data, items, this._paramsCase);
46
- }
47
- }
48
- }
49
- PersistanceParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PersistanceParamsController, deps: [{ token: i1.FsStore }, { token: i2.ActivatedRoute }, { token: i3.Location }, { token: i4.FsFilterItemsStore }, { token: i5.MatDialogRef, optional: true }, { token: i6.DrawerRef, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
50
- PersistanceParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PersistanceParamsController });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PersistanceParamsController, decorators: [{
52
- type: Injectable
53
- }], ctorParameters: function () { return [{ type: i1.FsStore }, { type: i2.ActivatedRoute }, { type: i3.Location }, { type: i4.FsFilterItemsStore }, { type: i5.MatDialogRef, decorators: [{
54
- type: Optional
55
- }] }, { type: i6.DrawerRef, decorators: [{
56
- type: Optional
57
- }] }]; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc2lzdGFuY2UtcGFyYW1zLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvZXh0ZXJuYWwtcGFyYW1zL3BlcnNpc3RhbmNlLXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7O0FBRTVELE1BQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7QUFJN0MsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGtCQUF1QztJQUt0RixZQUNFLE1BQWUsRUFDZixNQUFzQixFQUNkLFNBQW1CLEVBQ25CLFdBQStCLEVBQ25CLFVBQWlDLEVBQ2pDLFVBQThCO1FBRWxELEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFMZCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUF1QjtRQUNqQyxlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQVQxQyxjQUFTLEdBQUcsZ0JBQWdCLENBQUM7SUFZdkMsQ0FBQztJQUVNLElBQUksQ0FDVCxpQkFBc0MsRUFDdEMsU0FBaUIsRUFDakIsVUFBNkI7UUFFN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFFOUIsU0FBUyxHQUFHLFNBQVMsYUFBVCxTQUFTLGNBQVQsU0FBUyxHQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBRW5FLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixPQUFPO1NBQ1I7UUFFRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFaEIsTUFBTSxLQUFLLEdBQUc7WUFDWixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSztZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUI7U0FDbkMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxZQUFZLENBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUNoQixLQUFLLEVBQ0wsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7eUhBakRVLDJCQUEyQjs2SEFBM0IsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVU7OzBCQVdOLFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgRHJhd2VyUmVmIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZHJhd2VyJztcbmltcG9ydCB7IEZzUGVyc2lzdGFuY2VTdG9yZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3N0b3JlJztcbmltcG9ydCB7IGdldE5vcm1hbGl6ZWRQYXRoIH0gZnJvbSAnQGZpcmVzdGl0Y2gvY29tbW9uJztcbmltcG9ydCB7IEZzU3RvcmUgfSBmcm9tICdAZmlyZXN0aXRjaC9zdG9yZSc7XG5cbmltcG9ydCB7IEZzRmlsdGVyUGVyc2lzdGFuY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgcmVzdG9yZUl0ZW1zIH0gZnJvbSAnLi4vLi4vaGVscGVycy9yZXN0b3JlLWl0ZW1zJztcbmltcG9ydCB7IEZzRmlsdGVySXRlbXNTdG9yZSB9IGZyb20gJy4uL2l0ZW1zLXN0b3JlLnNlcnZpY2UnO1xuXG5jb25zdCBGSUxURVJfU1RPUkVfS0VZID0gJ2ZzLWZpbHRlci1wZXJzaXN0JztcblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVyc2lzdGFuY2VQYXJhbXNDb250cm9sbGVyIGV4dGVuZHMgRnNQZXJzaXN0YW5jZVN0b3JlPEZzRmlsdGVyUGVyc2lzdGFuY2U+IHtcblxuICBwcm90ZWN0ZWQgU1RPUkVfS0VZID0gRklMVEVSX1NUT1JFX0tFWTtcbiAgcHJvdGVjdGVkIF9wYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBfc3RvcmU6IEZzU3RvcmUsXG4gICAgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIF9sb2NhdGlvbjogTG9jYXRpb24sXG4gICAgcHJpdmF0ZSBfaXRlbXNTdG9yZTogRnNGaWx0ZXJJdGVtc1N0b3JlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPHVua25vd24+LFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RyYXdlclJlZjogRHJhd2VyUmVmPHVua25vd24+LFxuICApIHtcbiAgICBzdXBlcihfc3RvcmUsIF9yb3V0ZSk7XG4gIH1cblxuICBwdWJsaWMgaW5pdChcbiAgICBwZXJzaXN0YW5jZUNvbmZpZzogRnNGaWx0ZXJQZXJzaXN0YW5jZSxcbiAgICBuYW1lc3BhY2U6IHN0cmluZyxcbiAgICBwYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJyxcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5fcGFyYW1zQ2FzZSA9IHBhcmFtc0Nhc2U7XG5cbiAgICBuYW1lc3BhY2UgPSBuYW1lc3BhY2UgPz8gZ2V0Tm9ybWFsaXplZFBhdGgodGhpcy5fbG9jYXRpb24pO1xuICAgIGNvbnN0IHBlcnNpc3RhbmNlRGlzYWJsZWQgPSAhIXRoaXMuX2RpYWxvZ1JlZiB8fCAhIXRoaXMuX2RyYXdlclJlZjtcblxuICAgIHRoaXMuc2V0Q29uZmlnKHBlcnNpc3RhbmNlQ29uZmlnLCBuYW1lc3BhY2UsIHBlcnNpc3RhbmNlRGlzYWJsZWQpO1xuICB9XG5cbiAgcHVibGljIHJlc3RvcmUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzdXBlci5yZXN0b3JlKCk7XG5cbiAgICBjb25zdCBpdGVtcyA9IFtcbiAgICAgIC4uLnRoaXMuX2l0ZW1zU3RvcmUuaXRlbXMsXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnRCeUl0ZW0sXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnREaXJlY3Rpb25JdGVtLFxuICAgIF0uZmlsdGVyKChpdGVtKSA9PiAhIWl0ZW0pO1xuXG4gICAgaWYgKHRoaXMuX3ZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZS5kYXRhID0gcmVzdG9yZUl0ZW1zKFxuICAgICAgICB0aGlzLl92YWx1ZS5kYXRhLFxuICAgICAgICBpdGVtcyxcbiAgICAgICAgdGhpcy5fcGFyYW1zQ2FzZVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -1,165 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
- import { BehaviorSubject, Subject } from 'rxjs';
4
- import { distinctUntilChanged, take, takeUntil, tap, } from 'rxjs/operators';
5
- import { FsFilterSavedFilterEditComponent } from '../../components/saved-filter-edit/saved-filter-edit.component';
6
- import { restoreItems } from '../../helpers/restore-items';
7
- import { buildQueryParams } from '../../helpers/build-query-params';
8
- import { FsFilterItemsStore } from '../items-store.service';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "../items-store.service";
11
- import * as i2 from "@angular/material/dialog";
12
- export class SavedFiltersController {
13
- constructor(_itemsStore, _dialog) {
14
- this._itemsStore = _itemsStore;
15
- this._dialog = _dialog;
16
- this._savedFilters$ = new BehaviorSubject([]);
17
- this._activeFilter$ = new BehaviorSubject(null);
18
- this._enabled$ = new BehaviorSubject(false);
19
- this._destroy$ = new Subject();
20
- }
21
- get enabled() {
22
- return this._enabled$.getValue();
23
- }
24
- get enabled$() {
25
- return this._enabled$
26
- .pipe(distinctUntilChanged());
27
- }
28
- get savedFilters() {
29
- return this._savedFilters$.getValue();
30
- }
31
- get savedFilters$() {
32
- return this._savedFilters$
33
- .pipe(distinctUntilChanged());
34
- }
35
- get activeFilter() {
36
- return this._activeFilter$.getValue();
37
- }
38
- get activeFilter$() {
39
- return this._activeFilter$
40
- .pipe(distinctUntilChanged());
41
- }
42
- get activeFilterData() {
43
- var _a;
44
- return (_a = this._activeFilter$.getValue()) === null || _a === void 0 ? void 0 : _a.filters;
45
- }
46
- set savedFilters(filters) {
47
- this._savedFilters$.next(filters);
48
- }
49
- ngOnDestroy() {
50
- this._destroy$.next();
51
- this._destroy$.complete();
52
- }
53
- init(remoteParamsConfig, paramsCase) {
54
- if (!remoteParamsConfig) {
55
- this._setEnabledStatus(false);
56
- return;
57
- }
58
- this._setEnabledStatus(true);
59
- this._paramsCase = paramsCase;
60
- this._config = remoteParamsConfig;
61
- }
62
- initSavedFilters(filters) {
63
- filters = [...filters];
64
- filters.forEach((savedFilter) => {
65
- savedFilter.filters = restoreItems(savedFilter.filters, this._itemsStore.items, this._paramsCase);
66
- });
67
- this.savedFilters = filters;
68
- }
69
- load() {
70
- return this._config.load()
71
- .pipe(tap((response) => {
72
- this.initSavedFilters(response);
73
- }));
74
- }
75
- save(savedFilter) {
76
- return this._config.save(savedFilter);
77
- }
78
- order(savedFilters) {
79
- return this._config.order(savedFilters)
80
- .pipe(tap((response) => {
81
- this.savedFilters = [
82
- ...response,
83
- ];
84
- }));
85
- }
86
- delete(savedFilter) {
87
- return this._config.delete(savedFilter)
88
- .pipe(tap((response) => {
89
- this.savedFilters = this.savedFilters
90
- .filter((f) => f.id !== response.id);
91
- }));
92
- }
93
- setActiveFilter(savedFilter) {
94
- if (savedFilter) {
95
- const existingFilter = this.savedFilters
96
- .find((f) => f.id === savedFilter.id);
97
- if (!existingFilter) {
98
- throw new Error('Saved filter cannot be activated, because it does not exists. Filter ID = ' + savedFilter.id);
99
- }
100
- this._activeFilter$.next(existingFilter);
101
- }
102
- else {
103
- this._activeFilter$.next(null);
104
- }
105
- }
106
- openSavedFilterEditDialog() {
107
- const params = buildQueryParams(this._itemsStore.valuesAsQuery(), this._itemsStore.items);
108
- const values = this._itemsStore.values(true);
109
- const dialogConfig = {
110
- data: {
111
- params: params,
112
- savedFilters: this.savedFilters,
113
- saveCallback: this.save.bind(this),
114
- },
115
- };
116
- this._dialog
117
- .open(FsFilterSavedFilterEditComponent, dialogConfig)
118
- .beforeClosed()
119
- .pipe(take(1), takeUntil(this._destroy$))
120
- .subscribe((updatedFilter) => {
121
- if (updatedFilter) {
122
- // get already saved related filter object
123
- const savedFilter = this.savedFilters
124
- .find((f) => f.id === updatedFilter.id);
125
- // restore values from query string
126
- updatedFilter.filters = restoreItems(updatedFilter.filters, this._itemsStore.items, this._paramsCase);
127
- if (savedFilter) {
128
- Object.assign(savedFilter, updatedFilter);
129
- }
130
- else {
131
- this.resetActiveFilter();
132
- this.savedFilters = [
133
- ...this.savedFilters,
134
- updatedFilter
135
- ];
136
- }
137
- this.updateActiveFilter();
138
- }
139
- });
140
- }
141
- updateActiveFilter() {
142
- // Lookup active filter
143
- const acitveFilter = this.savedFilters
144
- .find((f) => f.active);
145
- if (acitveFilter) {
146
- this.setActiveFilter(acitveFilter);
147
- }
148
- }
149
- resetActiveFilter() {
150
- // Reset all previously activated filters
151
- this.savedFilters.forEach((savedFilter) => {
152
- savedFilter.active = false;
153
- });
154
- this.setActiveFilter(null);
155
- }
156
- _setEnabledStatus(value) {
157
- this._enabled$.next(value);
158
- }
159
- }
160
- SavedFiltersController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SavedFiltersController, deps: [{ token: i1.FsFilterItemsStore }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable });
161
- SavedFiltersController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SavedFiltersController });
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SavedFiltersController, decorators: [{
163
- type: Injectable
164
- }], ctorParameters: function () { return [{ type: i1.FsFilterItemsStore }, { type: i2.MatDialog }]; } });
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtZmlsdGVycy1jb250cm9sbGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NlcnZpY2VzL2V4dGVybmFsLXBhcmFtcy9zYXZlZC1maWx0ZXJzLWNvbnRyb2xsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLElBQUksRUFDSixTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLGdDQUFnQyxFQUNqQyxNQUFNLGdFQUFnRSxDQUFDO0FBTXhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7OztBQUk1RCxNQUFNLE9BQU8sc0JBQXNCO0lBYWpDLFlBQ1UsV0FBK0IsRUFDL0IsT0FBa0I7UUFEbEIsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQy9CLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFYbEIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBdUIsRUFBRSxDQUFDLENBQUM7UUFDL0QsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBcUIsSUFBSSxDQUFDLENBQUM7UUFFL0QsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBSWxELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBS3JDLENBQUM7SUFFSixJQUFXLE9BQU87UUFD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RUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXpCLElBQUksWUFBWSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLHlDQUF5QztRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3hDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRU8saUJBQWlCLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM1QixDQUFDOztvSEF2TlUsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICBGc0ZpbHRlclNhdmVkRmlsdGVyRWRpdENvbXBvbmVudFxufSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3NhdmVkLWZpbHRlci1lZGl0L3NhdmVkLWZpbHRlci1lZGl0LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJRmlsdGVyU2F2ZWRGaWx0ZXIsXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWdcbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9zYXZlZC1maWx0ZXJzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJRmlsdGVyRXh0ZXJuYWxQYXJhbXMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2V4dGVybmFsLXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgcmVzdG9yZUl0ZW1zIH0gZnJvbSAnLi4vLi4vaGVscGVycy9yZXN0b3JlLWl0ZW1zJztcbmltcG9ydCB7IGJ1aWxkUXVlcnlQYXJhbXMgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2J1aWxkLXF1ZXJ5LXBhcmFtcyc7XG5pbXBvcnQgeyBGc0ZpbHRlckl0ZW1zU3RvcmUgfSBmcm9tICcuLi9pdGVtcy1zdG9yZS5zZXJ2aWNlJztcblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2F2ZWRGaWx0ZXJzQ29udHJvbGxlciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHJvdGVjdGVkIF9jb25maWc6IElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWc7XG5cbiAgcHJvdGVjdGVkIF9zYXZlZEZpbHRlcnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJRmlsdGVyU2F2ZWRGaWx0ZXJbXT4oW10pO1xuICBwcm90ZWN0ZWQgX2FjdGl2ZUZpbHRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGaWx0ZXJTYXZlZEZpbHRlcj4obnVsbCk7XG5cbiAgcHJvdGVjdGVkIF9lbmFibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBfcGFyYW1zQ2FzZTogJ3NuYWtlJyB8ICdjYW1lbCc7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2l0ZW1zU3RvcmU6IEZzRmlsdGVySXRlbXNTdG9yZSxcbiAgICBwcml2YXRlIF9kaWFsb2c6IE1hdERpYWxvZyxcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZCQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNhdmVkRmlsdGVycygpOiBJRmlsdGVyU2F2ZWRGaWx0ZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3NhdmVkRmlsdGVycyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2F2ZWRGaWx0ZXJzJCgpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX3NhdmVkRmlsdGVycyRcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlRmlsdGVyKCk6IElGaWx0ZXJTYXZlZEZpbHRlciB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUZpbHRlciQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlRmlsdGVyJCgpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcj4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVGaWx0ZXIkXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZUZpbHRlckRhdGEoKTogSUZpbHRlckV4dGVybmFsUGFyYW1zIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlRmlsdGVyJC5nZXRWYWx1ZSgpPy5maWx0ZXJzO1xuICB9XG5cbiAgcHVibGljIHNldCBzYXZlZEZpbHRlcnMoZmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW10pIHtcbiAgICB0aGlzLl9zYXZlZEZpbHRlcnMkLm5leHQoZmlsdGVycyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdChcbiAgICByZW1vdGVQYXJhbXNDb25maWc6IElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG4gICAgcGFyYW1zQ2FzZTogJ3NuYWtlJyB8ICdjYW1lbCcsXG4gICk6IHZvaWQge1xuICAgIGlmICghcmVtb3RlUGFyYW1zQ29uZmlnKSB7XG4gICAgICB0aGlzLl9zZXRFbmFibGVkU3RhdHVzKGZhbHNlKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9zZXRFbmFibGVkU3RhdHVzKHRydWUpO1xuXG4gICAgdGhpcy5fcGFyYW1zQ2FzZSA9IHBhcmFtc0Nhc2U7XG4gICAgdGhpcy5fY29uZmlnID0gcmVtb3RlUGFyYW1zQ29uZmlnO1xuICB9XG5cbiAgcHVibGljIGluaXRTYXZlZEZpbHRlcnMoZmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW10pOiB2b2lkIHtcbiAgICBmaWx0ZXJzID0gWy4uLmZpbHRlcnNdO1xuICAgIGZpbHRlcnMuZm9yRWFjaCgoc2F2ZWRGaWx0ZXIpID0+IHtcbiAgICAgIHNhdmVkRmlsdGVyLmZpbHRlcnMgPSByZXN0b3JlSXRlbXMoXG4gICAgICAgIHNhdmVkRmlsdGVyLmZpbHRlcnMsXG4gICAgICAgIHRoaXMuX2l0ZW1zU3RvcmUuaXRlbXMsXG4gICAgICAgIHRoaXMuX3BhcmFtc0Nhc2VcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNhdmVkRmlsdGVycyA9IGZpbHRlcnM7XG4gIH1cblxuICBwdWJsaWMgbG9hZCgpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5sb2FkKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0U2F2ZWRGaWx0ZXJzKHJlc3BvbnNlKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHNhdmUoc2F2ZWRGaWx0ZXI6IElGaWx0ZXJTYXZlZEZpbHRlcik6IE9ic2VydmFibGU8SUZpbHRlclNhdmVkRmlsdGVyPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5zYXZlKHNhdmVkRmlsdGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBvcmRlcihzYXZlZEZpbHRlcnM6IElGaWx0ZXJTYXZlZEZpbHRlcltdKTogT2JzZXJ2YWJsZTxJRmlsdGVyU2F2ZWRGaWx0ZXJbXT4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcub3JkZXIoc2F2ZWRGaWx0ZXJzKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0aGlzLnNhdmVkRmlsdGVycyA9IFtcbiAgICAgICAgICAgIC4uLnJlc3BvbnNlLFxuICAgICAgICAgIF07XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZShzYXZlZEZpbHRlcjogSUZpbHRlclNhdmVkRmlsdGVyKTogT2JzZXJ2YWJsZTxJRmlsdGVyU2F2ZWRGaWx0ZXI+IHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLmRlbGV0ZShzYXZlZEZpbHRlcilcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5zYXZlZEZpbHRlcnMgPSB0aGlzLnNhdmVkRmlsdGVyc1xuICAgICAgICAgICAgLmZpbHRlcigoZikgPT4gZi5pZCAhPT0gcmVzcG9uc2UuaWQpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3RpdmVGaWx0ZXIoc2F2ZWRGaWx0ZXI6IElGaWx0ZXJTYXZlZEZpbHRlcik6IHZvaWQge1xuICAgIGlmIChzYXZlZEZpbHRlcikge1xuICAgICAgY29uc3QgZXhpc3RpbmdGaWx0ZXIgPSB0aGlzLnNhdmVkRmlsdGVyc1xuICAgICAgICAuZmluZCgoZikgPT4gZi5pZCA9PT0gc2F2ZWRGaWx0ZXIuaWQpO1xuXG4gICAgICBpZiAoIWV4aXN0aW5nRmlsdGVyKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignU2F2ZWQgZmlsdGVyIGNhbm5vdCBiZSBhY3RpdmF0ZWQsIGJlY2F1c2UgaXQgZG9lcyBub3QgZXhpc3RzLiBGaWx0ZXIgSUQgPSAnICsgc2F2ZWRGaWx0ZXIuaWQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9hY3RpdmVGaWx0ZXIkLm5leHQoZXhpc3RpbmdGaWx0ZXIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9hY3RpdmVGaWx0ZXIkLm5leHQobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9wZW5TYXZlZEZpbHRlckVkaXREaWFsb2coKTogdm9pZCB7XG4gICAgY29uc3QgcGFyYW1zID0gYnVpbGRRdWVyeVBhcmFtcyhcbiAgICAgIHRoaXMuX2l0ZW1zU3RvcmUudmFsdWVzQXNRdWVyeSgpLFxuICAgICAgdGhpcy5faXRlbXNTdG9yZS5pdGVtcyxcbiAgICApO1xuICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuX2l0ZW1zU3RvcmUudmFsdWVzKHRydWUpO1xuXG4gICAgY29uc3QgZGlhbG9nQ29uZmlnID0ge1xuICAgICAgZGF0YToge1xuICAgICAgICBwYXJhbXM6IHBhcmFtcyxcbiAgICAgICAgc2F2ZWRGaWx0ZXJzOiB0aGlzLnNhdmVkRmlsdGVycyxcbiAgICAgICAgc2F2ZUNhbGxiYWNrOiB0aGlzLnNhdmUuYmluZCh0aGlzKSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHRoaXMuX2RpYWxvZ1xuICAgICAgLm9wZW4oRnNGaWx0ZXJTYXZlZEZpbHRlckVkaXRDb21wb25lbnQsIGRpYWxvZ0NvbmZpZylcbiAgICAgIC5iZWZvcmVDbG9zZWQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2UoMSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh1cGRhdGVkRmlsdGVyOiBJRmlsdGVyU2F2ZWRGaWx0ZXIgfCBudWxsKSA9PiB7XG4gICAgICAgIGlmICh1cGRhdGVkRmlsdGVyKSB7XG4gICAgICAgICAgLy8gZ2V0IGFscmVhZHkgc2F2ZWQgcmVsYXRlZCBmaWx0ZXIgb2JqZWN0XG4gICAgICAgICAgY29uc3Qgc2F2ZWRGaWx0ZXIgPSB0aGlzLnNhdmVkRmlsdGVyc1xuICAgICAgICAgICAgLmZpbmQoKGYpID0+IGYuaWQgPT09IHVwZGF0ZWRGaWx0ZXIuaWQpXG5cbiAgICAgICAgICAvLyByZXN0b3JlIHZhbHVlcyBmcm9tIHF1ZXJ5IHN0cmluZ1xuICAgICAgICAgIHVwZGF0ZWRGaWx0ZXIuZmlsdGVycyA9IHJlc3RvcmVJdGVtcyhcbiAgICAgICAgICAgIHVwZGF0ZWRGaWx0ZXIuZmlsdGVycyxcbiAgICAgICAgICAgIHRoaXMuX2l0ZW1zU3RvcmUuaXRlbXMsXG4gICAgICAgICAgICB0aGlzLl9wYXJhbXNDYXNlXG4gICAgICAgICAgKTtcblxuXG4gICAgICAgICAgaWYgKHNhdmVkRmlsdGVyKSB7XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHNhdmVkRmlsdGVyLCB1cGRhdGVkRmlsdGVyKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldEFjdGl2ZUZpbHRlcigpO1xuICAgICAgICAgICAgdGhpcy5zYXZlZEZpbHRlcnMgPSBbXG4gICAgICAgICAgICAgIC4uLnRoaXMuc2F2ZWRGaWx0ZXJzLFxuICAgICAgICAgICAgICB1cGRhdGVkRmlsdGVyXG4gICAgICAgICAgICBdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudXBkYXRlQWN0aXZlRmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG5cblxuICB9XG5cbiAgcHVibGljIHVwZGF0ZUFjdGl2ZUZpbHRlcigpOiB2b2lkIHtcbiAgICAvLyBMb29rdXAgYWN0aXZlIGZpbHRlclxuICAgIGNvbnN0IGFjaXR2ZUZpbHRlciA9IHRoaXMuc2F2ZWRGaWx0ZXJzXG4gICAgICAuZmluZCgoZikgPT4gZi5hY3RpdmUpO1xuXG4gICAgaWYgKGFjaXR2ZUZpbHRlcikge1xuICAgICAgdGhpcy5zZXRBY3RpdmVGaWx0ZXIoYWNpdHZlRmlsdGVyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVzZXRBY3RpdmVGaWx0ZXIoKTogdm9pZCB7XG4gICAgLy8gUmVzZXQgYWxsIHByZXZpb3VzbHkgYWN0aXZhdGVkIGZpbHRlcnNcbiAgICB0aGlzLnNhdmVkRmlsdGVycy5mb3JFYWNoKChzYXZlZEZpbHRlcikgPT4ge1xuICAgICAgc2F2ZWRGaWx0ZXIuYWN0aXZlID0gZmFsc2U7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNldEFjdGl2ZUZpbHRlcihudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldEVuYWJsZWRTdGF0dXModmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9lbmFibGVkJC5uZXh0KHZhbHVlKVxuICB9XG59XG4iXX0=