@dflat-core/web 1.0.0-beta

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 (555) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +94 -0
  3. package/assets/bootswatch.scss +100 -0
  4. package/assets/buttons.scss +70 -0
  5. package/assets/components/datagrid.scss +138 -0
  6. package/assets/components/fonts.scss +24 -0
  7. package/assets/components/login.scss +59 -0
  8. package/assets/components/menu.scss +0 -0
  9. package/assets/components/modals.scss +62 -0
  10. package/assets/components/select.scss +387 -0
  11. package/assets/fonts/ErasITC-Bold/ErasITC-Bold.eot +0 -0
  12. package/assets/fonts/ErasITC-Bold/ErasITC-Bold.svg +748 -0
  13. package/assets/fonts/ErasITC-Bold/ErasITC-Bold.ttf +0 -0
  14. package/assets/fonts/ErasITC-Bold/ErasITC-Bold.woff +0 -0
  15. package/assets/fonts/SegoeUI/SegoeUI.eot +0 -0
  16. package/assets/fonts/SegoeUI/SegoeUI.svg +15203 -0
  17. package/assets/fonts/SegoeUI/SegoeUI.ttf +0 -0
  18. package/assets/fonts/SegoeUI/SegoeUI.woff +0 -0
  19. package/assets/fonts/SegoeUI/preview.html +132 -0
  20. package/assets/fonts/SegoeUI/styles.css +7 -0
  21. package/assets/fonts/SegoeUI-Light/SegoeUI-Light.eot +0 -0
  22. package/assets/fonts/SegoeUI-Light/SegoeUI-Light.svg +27429 -0
  23. package/assets/fonts/SegoeUI-Light/SegoeUI-Light.ttf +0 -0
  24. package/assets/fonts/SegoeUI-Light/SegoeUI-Light.woff +0 -0
  25. package/assets/fonts/SegoeUI-Light/preview.html +132 -0
  26. package/assets/fonts/SegoeUI-Light/styles.css +7 -0
  27. package/assets/forms.scss +342 -0
  28. package/assets/images/Algerie.png +0 -0
  29. package/assets/images/Burkina Faso.png +0 -0
  30. package/assets/images/Cameroun.png +0 -0
  31. package/assets/images/Cara/303/257bes.png +0 -0
  32. package/assets/images/Congo.png +0 -0
  33. package/assets/images/C/303/264te d'Ivoire.png +0 -0
  34. package/assets/images/France.png +0 -0
  35. package/assets/images/Gabon.png +0 -0
  36. package/assets/images/Ile Maurice.png +0 -0
  37. package/assets/images/LogoMarsow.svg +1 -0
  38. package/assets/images/Maroc.png +0 -0
  39. package/assets/images/Menu.svg +3 -0
  40. package/assets/images/R/303/251union.png +0 -0
  41. package/assets/images/S/303/251n/303/251gal.png +0 -0
  42. package/assets/images/Tunisie.png +0 -0
  43. package/assets/images/Unchecked.svg +25 -0
  44. package/assets/images/account.svg +3 -0
  45. package/assets/images/adresslabel1.svg +3 -0
  46. package/assets/images/adresslabel2.svg +3 -0
  47. package/assets/images/allergen.svg +3 -0
  48. package/assets/images/arrow-up-1-9.svg +1 -0
  49. package/assets/images/attention.svg +3 -0
  50. package/assets/images/backward.svg +1 -0
  51. package/assets/images/ban.svg +1 -0
  52. package/assets/images/book-open.svg +1 -0
  53. package/assets/images/book-solid.svg +2 -0
  54. package/assets/images/border-all.svg +1 -0
  55. package/assets/images/boxes-packing-solid.svg +2 -0
  56. package/assets/images/calculator-solid.svg +1 -0
  57. package/assets/images/calendar.svg +3 -0
  58. package/assets/images/chatting.svg +3 -0
  59. package/assets/images/check.svg +3 -0
  60. package/assets/images/checkmark.png +0 -0
  61. package/assets/images/circle-check-solid.svg +2 -0
  62. package/assets/images/circle-info.svg +1 -0
  63. package/assets/images/circle-radiation-solid.svg +2 -0
  64. package/assets/images/circle-solid.svg +1 -0
  65. package/assets/images/circlecheck.svg +3 -0
  66. package/assets/images/circlecross.svg +3 -0
  67. package/assets/images/circleminus.svg +3 -0
  68. package/assets/images/circleplus.svg +3 -0
  69. package/assets/images/circularoption.svg +1 -0
  70. package/assets/images/circularoptionselected.svg +1 -0
  71. package/assets/images/classification-tool.svg +3 -0
  72. package/assets/images/click-collect.svg +1 -0
  73. package/assets/images/clientlocation.svg +9 -0
  74. package/assets/images/cloud-arrow-down-solid.svg +1 -0
  75. package/assets/images/cloud-arrow-up-solid.svg +1 -0
  76. package/assets/images/contact.svg +3 -0
  77. package/assets/images/cross.svg +3 -0
  78. package/assets/images/delivery-square.svg +32 -0
  79. package/assets/images/delivery.svg +3 -0
  80. package/assets/images/deliverymanlocation.svg +28 -0
  81. package/assets/images/dolly-solid.svg +1 -0
  82. package/assets/images/down.svg +3 -0
  83. package/assets/images/download.svg +1 -0
  84. package/assets/images/edition.svg +3 -0
  85. package/assets/images/email.svg +3 -0
  86. package/assets/images/emptyheart.svg +3 -0
  87. package/assets/images/emptystar.svg +3 -0
  88. package/assets/images/erase.svg +1 -0
  89. package/assets/images/error.png +0 -0
  90. package/assets/images/error.svg +1 -0
  91. package/assets/images/favicon.ico +0 -0
  92. package/assets/images/file-arrow-down-solid.svg +2 -0
  93. package/assets/images/file-arrow-up-solid.svg +1 -0
  94. package/assets/images/file-csv-solid.svg +2 -0
  95. package/assets/images/file-excel-solid.svg +2 -0
  96. package/assets/images/file-export-solid.svg +1 -0
  97. package/assets/images/file-image-solid.svg +2 -0
  98. package/assets/images/file-invoice-solid.svg +2 -0
  99. package/assets/images/file-lines-solid.svg +2 -0
  100. package/assets/images/file-pdf-solid.svg +2 -0
  101. package/assets/images/file-solid.svg +2 -0
  102. package/assets/images/file-word-solid.svg +2 -0
  103. package/assets/images/file-zipper-solid.svg +2 -0
  104. package/assets/images/files-o.svg +1 -0
  105. package/assets/images/filter-circle-xmark-solid.svg +1 -0
  106. package/assets/images/filter-solid.svg +2 -0
  107. package/assets/images/filter.svg +3 -0
  108. package/assets/images/filter1.svg +3 -0
  109. package/assets/images/filter2.svg +3 -0
  110. package/assets/images/filterdelete.svg +3 -0
  111. package/assets/images/folder.svg +3 -0
  112. package/assets/images/forward.svg +1 -0
  113. package/assets/images/fullheart.svg +3 -0
  114. package/assets/images/fullstar.svg +3 -0
  115. package/assets/images/halfstar.svg +3 -0
  116. package/assets/images/hand-point-down.svg +1 -0
  117. package/assets/images/hand-point-left.svg +1 -0
  118. package/assets/images/hand-point-right.svg +1 -0
  119. package/assets/images/hand-point-up.svg +1 -0
  120. package/assets/images/history.svg +4 -0
  121. package/assets/images/home.svg +3 -0
  122. package/assets/images/info-circle.svg +1 -0
  123. package/assets/images/information.png +0 -0
  124. package/assets/images/ingredient.svg +3 -0
  125. package/assets/images/left.svg +3 -0
  126. package/assets/images/location.svg +3 -0
  127. package/assets/images/map-marker.svg +6 -0
  128. package/assets/images/map.svg +3 -0
  129. package/assets/images/minus.svg +3 -0
  130. package/assets/images/neworder.svg +3 -0
  131. package/assets/images/notification.svg +3 -0
  132. package/assets/images/ordercollected.svg +3 -0
  133. package/assets/images/orderconfirmed.svg +8 -0
  134. package/assets/images/orderdelivered.svg +3 -0
  135. package/assets/images/orderindelivering.svg +3 -0
  136. package/assets/images/orderinpreparation.svg +3 -0
  137. package/assets/images/orderprepared.svg +3 -0
  138. package/assets/images/orderrefused.svg +8 -0
  139. package/assets/images/pencil.svg +1 -0
  140. package/assets/images/picture-editor-V3.svg +11 -0
  141. package/assets/images/picture-export-v3.svg +5 -0
  142. package/assets/images/picture-import-v3.svg +5 -0
  143. package/assets/images/plus-square.svg +1 -0
  144. package/assets/images/plus.svg +3 -0
  145. package/assets/images/power-off.svg +1 -0
  146. package/assets/images/print.svg +3 -0
  147. package/assets/images/refresh.svg +1 -0
  148. package/assets/images/return.svg +40 -0
  149. package/assets/images/right.svg +3 -0
  150. package/assets/images/sale.svg +3 -0
  151. package/assets/images/save.svg +2 -0
  152. package/assets/images/schedule.svg +3 -0
  153. package/assets/images/search-sprite.png +0 -0
  154. package/assets/images/search.svg +3 -0
  155. package/assets/images/selection.svg +3 -0
  156. package/assets/images/separator_back.png +0 -0
  157. package/assets/images/setting.svg +3 -0
  158. package/assets/images/ship-solid.svg +1 -0
  159. package/assets/images/shoppingbag.svg +3 -0
  160. package/assets/images/squareoption.svg +1 -0
  161. package/assets/images/squareoptionselected.svg +1 -0
  162. package/assets/images/star-of-life-solid.svg +2 -0
  163. package/assets/images/step-backward.svg +7 -0
  164. package/assets/images/step-forward.svg +7 -0
  165. package/assets/images/store-square.svg +19 -0
  166. package/assets/images/store.png +0 -0
  167. package/assets/images/store.svg +3 -0
  168. package/assets/images/storelocation.svg +6 -0
  169. package/assets/images/table-columns.svg +1 -0
  170. package/assets/images/tag.svg +22 -0
  171. package/assets/images/times-circle-solid.svg +1 -0
  172. package/assets/images/trash-o.svg +3 -0
  173. package/assets/images/triangle-down.svg +3 -0
  174. package/assets/images/triangle-up.svg +3 -0
  175. package/assets/images/truck-solid.svg +1 -0
  176. package/assets/images/up.svg +3 -0
  177. package/assets/images/upload.svg +1 -0
  178. package/assets/images/user-square.svg +10 -0
  179. package/assets/images/user.svg +13 -0
  180. package/assets/images/warning.png +0 -0
  181. package/assets/images/warning.svg +5 -0
  182. package/assets/images/watch.svg +3 -0
  183. package/assets/modals.scss +104 -0
  184. package/assets/property.scss +113 -0
  185. package/assets/shared.scss +157 -0
  186. package/assets/site.scss +374 -0
  187. package/assets/text.scss +162 -0
  188. package/assets/variables.scss +91 -0
  189. package/core/index.d.ts +6 -0
  190. package/core/lib/array.function.d.ts +8 -0
  191. package/core/lib/core.module.d.ts +9 -0
  192. package/core/lib/global/EnvironmentBase.d.ts +7 -0
  193. package/core/lib/nameof.function.d.ts +4 -0
  194. package/core/lib/services/ensuremoduleloadedonceguard.d.ts +3 -0
  195. package/core/lib/services/utilities.service.d.ts +87 -0
  196. package/core-data/index.d.ts +3 -0
  197. package/core-data/lib/core-data.module.d.ts +7 -0
  198. package/core-data/lib/services/data-service.d.ts +68 -0
  199. package/core-data/lib/services/entity-data-service.d.ts +37 -0
  200. package/core-model/index.d.ts +4 -0
  201. package/core-model/lib/core-model.module.d.ts +7 -0
  202. package/core-model/lib/interface.d.ts +140 -0
  203. package/core-model/lib/model/interface.generated.d.ts +286 -0
  204. package/core-model/lib/model/model.d.ts +38 -0
  205. package/core-services/index.d.ts +23 -0
  206. package/core-services/lib/core-services.module.d.ts +10 -0
  207. package/core-services/lib/model/model.d.ts +25 -0
  208. package/core-services/lib/services/app-keys.d.ts +15 -0
  209. package/core-services/lib/services/appConfig.service.d.ts +8 -0
  210. package/core-services/lib/services/auth-guard.service.d.ts +18 -0
  211. package/core-services/lib/services/auth.interceptor.d.ts +15 -0
  212. package/core-services/lib/services/auth.service.d.ts +67 -0
  213. package/core-services/lib/services/breadcrumb.service.d.ts +14 -0
  214. package/core-services/lib/services/busmessage.service.d.ts +19 -0
  215. package/core-services/lib/services/can-activate-guard.service.d.ts +12 -0
  216. package/core-services/lib/services/filter.service.d.ts +15 -0
  217. package/core-services/lib/services/geolocation.service.d.ts +29 -0
  218. package/core-services/lib/services/headers.service.d.ts +15 -0
  219. package/core-services/lib/services/hub.service.d.ts +33 -0
  220. package/core-services/lib/services/local-store-manager.service.d.ts +50 -0
  221. package/core-services/lib/services/menu.service.d.ts +27 -0
  222. package/core-services/lib/services/message.service.d.ts +14 -0
  223. package/core-services/lib/services/notifications.service.d.ts +14 -0
  224. package/core-services/lib/services/permission.service.d.ts +12 -0
  225. package/core-services/lib/services/screen.service.d.ts +14 -0
  226. package/core-services/lib/services/server-url.d.ts +12 -0
  227. package/core-services/lib/services/string.function.d.ts +1 -0
  228. package/core-services/lib/services/user.service.d.ts +22 -0
  229. package/core-ux/index.d.ts +144 -0
  230. package/core-ux/lib/components/actions/actions-content.component.d.ts +10 -0
  231. package/core-ux/lib/components/actions/actions.component.d.ts +57 -0
  232. package/core-ux/lib/components/actions/extended-action/extended-action.component.d.ts +34 -0
  233. package/core-ux/lib/components/base-editor/base-editor.component.d.ts +93 -0
  234. package/core-ux/lib/components/base-item-list/base-item-list.component.d.ts +21 -0
  235. package/core-ux/lib/components/basefilter/basefilter.component.d.ts +275 -0
  236. package/core-ux/lib/components/breadcrumb/breadcrumb.component.d.ts +12 -0
  237. package/core-ux/lib/components/datagrid-custom/datagrid-cell/datagrid-cell.component.d.ts +32 -0
  238. package/core-ux/lib/components/datagrid-custom/datagrid-custom.component.d.ts +159 -0
  239. package/core-ux/lib/components/datagrid-custom/datagrid-sorter.component.d.ts +15 -0
  240. package/core-ux/lib/components/datapage/layout-page/page-layout.component.d.ts +13 -0
  241. package/core-ux/lib/components/datapage/old/old.datapage.component.d.ts +10 -0
  242. package/core-ux/lib/components/datapage/old-layout-handler.directive.d.ts +31 -0
  243. package/core-ux/lib/components/dynamic-components/dynamic-field/dynamic-field.component.d.ts +41 -0
  244. package/core-ux/lib/components/dynamic-components/dynamic-filter/dynamic-filter-extra.component.d.ts +27 -0
  245. package/core-ux/lib/components/dynamic-components/dynamic-filter/dynamic-filter-panel.component.d.ts +8 -0
  246. package/core-ux/lib/components/dynamic-components/dynamic-filter/dynamic-filter.component.d.ts +54 -0
  247. package/core-ux/lib/components/dynamic-components/dynamic-form/dynamic-form.component.d.ts +122 -0
  248. package/core-ux/lib/components/filtersummary/filtersummary.component.d.ts +27 -0
  249. package/core-ux/lib/components/form-password/form-password.component.d.ts +9 -0
  250. package/core-ux/lib/components/grid-row/grid-row.component.d.ts +12 -0
  251. package/core-ux/lib/components/image-display/image.component.d.ts +20 -0
  252. package/core-ux/lib/components/input-selector/input-selector.component.d.ts +50 -0
  253. package/core-ux/lib/components/input-tree-selector/input-tree-selector.component.d.ts +25 -0
  254. package/core-ux/lib/components/logs/logs.component.d.ts +32 -0
  255. package/core-ux/lib/components/menu/menu.component.d.ts +39 -0
  256. package/core-ux/lib/components/menu-dashboard/menu-dashboard.component.d.ts +15 -0
  257. package/core-ux/lib/components/paginator/paginator.component.d.ts +17 -0
  258. package/core-ux/lib/components/parameter-field/parameter-field.component.d.ts +13 -0
  259. package/core-ux/lib/components/parameter-field/parameter-types/base-array-parameter-type.component.d.ts +16 -0
  260. package/core-ux/lib/components/parameter-field/parameter-types/base-parameter-type.component.d.ts +21 -0
  261. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-bool/parameter-type-bool.component.d.ts +9 -0
  262. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-bool-array/parameter-type-bool-array.component.d.ts +12 -0
  263. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-date/parameter-type-date.component.d.ts +16 -0
  264. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-date-array/parameter-type-date-array.component.d.ts +17 -0
  265. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-number/parameter-type-number.component.d.ts +6 -0
  266. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-number-array/parameter-type-number-array.component.d.ts +6 -0
  267. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-password/parameter-type-password.component.d.ts +9 -0
  268. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-text/parameter-type-text.component.d.ts +7 -0
  269. package/core-ux/lib/components/parameter-field/parameter-types/parameter-type-text-array/parameter-type-text-array.component.d.ts +6 -0
  270. package/core-ux/lib/components/property-grid/property-grid.component.d.ts +125 -0
  271. package/core-ux/lib/components/search-results/search-results.component.d.ts +7 -0
  272. package/core-ux/lib/components/tab/tab.component.d.ts +14 -0
  273. package/core-ux/lib/components/tabset/tabset.component.d.ts +15 -0
  274. package/core-ux/lib/components/text-viewer/text-viewer.component.d.ts +21 -0
  275. package/core-ux/lib/components/time-picker/time-picker.component.d.ts +27 -0
  276. package/core-ux/lib/components/tree/tree.component.d.ts +39 -0
  277. package/core-ux/lib/components/validation-error/validation-error.component.d.ts +8 -0
  278. package/core-ux/lib/components/wizard/wizard-step/wizard-step.component.d.ts +26 -0
  279. package/core-ux/lib/components/wizard/wizard.component.d.ts +29 -0
  280. package/core-ux/lib/core-ux.module.d.ts +102 -0
  281. package/core-ux/lib/directives/addclass.directive.d.ts +11 -0
  282. package/core-ux/lib/directives/collapse.directive.d.ts +34 -0
  283. package/core-ux/lib/directives/draggable.directive.d.ts +39 -0
  284. package/core-ux/lib/directives/droppable.directive.d.ts +55 -0
  285. package/core-ux/lib/directives/editMode.directive.d.ts +8 -0
  286. package/core-ux/lib/directives/focusable.directive.d.ts +16 -0
  287. package/core-ux/lib/directives/insertion.directive.d.ts +8 -0
  288. package/core-ux/lib/directives/onEnter.directive.d.ts +11 -0
  289. package/core-ux/lib/directives/tab-heading.d.ts +8 -0
  290. package/core-ux/lib/directives/tab-transclude.d.ts +11 -0
  291. package/core-ux/lib/directives/tooltip.directive.d.ts +16 -0
  292. package/core-ux/lib/directives/validate-on-enter.directive.d.ts +10 -0
  293. package/core-ux/lib/directives/viewMode.directive.d.ts +8 -0
  294. package/core-ux/lib/layout/default/default-layout.d.ts +36 -0
  295. package/core-ux/lib/layout/login/login-layout.d.ts +9 -0
  296. package/core-ux/lib/log.service.d.ts +8 -0
  297. package/core-ux/lib/modals/confirm-modal/confirm-modal.component.d.ts +17 -0
  298. package/core-ux/lib/modals/dialog/dialog.component.d.ts +57 -0
  299. package/core-ux/lib/modals/dialog-component.tokens.d.ts +3 -0
  300. package/core-ux/lib/modals/export-data-modal/export-data-modal.component.d.ts +11 -0
  301. package/core-ux/lib/modals/track-record-modal/track-record-modal.component.d.ts +21 -0
  302. package/core-ux/lib/modals/validation-modal/validation-modal.component.d.ts +24 -0
  303. package/core-ux/lib/model/datagrid.d.ts +194 -0
  304. package/core-ux/lib/model/model.d.ts +222 -0
  305. package/core-ux/lib/model/tree.d.ts +12 -0
  306. package/core-ux/lib/pipes/euro.pipe.d.ts +9 -0
  307. package/core-ux/lib/pipes/todefine.pipe.d.ts +8 -0
  308. package/core-ux/lib/pipes/tofixedsizeinteger.pipe.d.ts +8 -0
  309. package/core-ux/lib/services/action.service.d.ts +42 -0
  310. package/core-ux/lib/services/alert.service.d.ts +51 -0
  311. package/core-ux/lib/services/application.service.d.ts +73 -0
  312. package/core-ux/lib/services/can-deactivate-guard.d.ts +12 -0
  313. package/core-ux/lib/services/drag.service.d.ts +54 -0
  314. package/core-ux/lib/services/fire-authentication.service.d.ts +13 -0
  315. package/core-ux/lib/services/image.service.d.ts +15 -0
  316. package/core-ux/lib/services/modal-state.service.d.ts +26 -0
  317. package/core-ux/lib/services/modal.service.d.ts +30 -0
  318. package/core-ux/lib/services/presentation-profile.token.d.ts +40 -0
  319. package/core-ux/lib/services/selectorMapperBase.service.d.ts +36 -0
  320. package/core-ux/lib/v2/components/actions-panel/action-panel.component.d.ts +48 -0
  321. package/core-ux/lib/v2/components/base-component/base-component.d.ts +80 -0
  322. package/core-ux/lib/v2/components/cell-renderer/cell-renderer.component.d.ts +11 -0
  323. package/core-ux/lib/v2/components/data-grid/data-grid.component.d.ts +104 -0
  324. package/core-ux/lib/v2/components/data-grid/grid-field-descriptor/grid-field.component.d.ts +55 -0
  325. package/core-ux/lib/v2/components/data-list/data-list.component.d.ts +29 -0
  326. package/core-ux/lib/v2/components/editor-tab/editor-tab.component.d.ts +15 -0
  327. package/core-ux/lib/v2/components/editor-tabset/editor-tabset.component.d.ts +18 -0
  328. package/core-ux/lib/v2/components/field-descriptor/field.component.d.ts +61 -0
  329. package/core-ux/lib/v2/components/filter-form/filter-form.component.d.ts +12 -0
  330. package/core-ux/lib/v2/components/filter-summary/filter-summary.component.d.ts +34 -0
  331. package/core-ux/lib/v2/components/new-editor/new-editor.component.d.ts +66 -0
  332. package/core-ux/lib/v2/components/new-paginator/new-paginator.component.d.ts +31 -0
  333. package/core-ux/lib/v2/components/orderable/orderable-modal.component.d.ts +36 -0
  334. package/core-ux/lib/v2/components/orderable/orderable-modal.service.d.ts +11 -0
  335. package/core-ux/lib/v2/components/orderable/orderable.interface.d.ts +52 -0
  336. package/core-ux/lib/v2/components/property-editor/property-editor-component.d.ts +89 -0
  337. package/core-ux/lib/v2/components/selector/selector-registry.service.d.ts +9 -0
  338. package/core-ux/lib/v2/components/selector/selector.component.d.ts +33 -0
  339. package/core-ux/lib/v2/components/selector/selector.model.d.ts +19 -0
  340. package/core-ux/lib/v2/components/standard-page-layout/standard-page-layout.component.d.ts +29 -0
  341. package/core-ux/lib/v2/directives/base-shortcut.directive.d.ts +15 -0
  342. package/core-ux/lib/v2/directives/hide-on-threshold.directive.d.ts +20 -0
  343. package/core-ux/lib/v2/directives/layout-handler.directive.d.ts +54 -0
  344. package/core-ux/lib/v2/directives/row-ref.directive.d.ts +21 -0
  345. package/core-ux/lib/v2/models/aggregation-model.d.ts +8 -0
  346. package/core-ux/lib/v2/models/contexts/action-context.d.ts +66 -0
  347. package/core-ux/lib/v2/models/contexts/action-handler-context.d.ts +49 -0
  348. package/core-ux/lib/v2/models/contexts/base-form-context.d.ts +42 -0
  349. package/core-ux/lib/v2/models/contexts/change-detection-context.d.ts +41 -0
  350. package/core-ux/lib/v2/models/contexts/data-context.d.ts +25 -0
  351. package/core-ux/lib/v2/models/contexts/data-grid-style-context.d.ts +36 -0
  352. package/core-ux/lib/v2/models/contexts/editor-context.d.ts +30 -0
  353. package/core-ux/lib/v2/models/contexts/entity-config-context.d.ts +49 -0
  354. package/core-ux/lib/v2/models/contexts/filter-context.d.ts +49 -0
  355. package/core-ux/lib/v2/models/contexts/layout-context.d.ts +57 -0
  356. package/core-ux/lib/v2/models/contexts/logger-context.d.ts +5 -0
  357. package/core-ux/lib/v2/models/contexts/section-context.d.ts +73 -0
  358. package/core-ux/lib/v2/models/contexts/selection-context.d.ts +45 -0
  359. package/core-ux/lib/v2/models/entity-facade.d.ts +35 -0
  360. package/core-ux/lib/v2/models/guards/facade-load-guard.d.ts +35 -0
  361. package/core-ux/lib/v2/models/guards/filter-lifecycle-guard.d.ts +29 -0
  362. package/core-ux/lib/v2/models/states/sorting-state.d.ts +14 -0
  363. package/core-ux/lib/v2/models/utilities/action-definition.d.ts +38 -0
  364. package/core-ux/lib/v2/models/utilities/change-utilities.d.ts +11 -0
  365. package/core-ux/lib/v2/models/utilities/entity-updater.d.ts +11 -0
  366. package/core-ux/lib/v2/models/utilities/form-wrapper.d.ts +30 -0
  367. package/core-ux/lib/v2/models/utilities/row-registry.d.ts +15 -0
  368. package/core-ux/lib/v2/models/utilities/selection-styler.d.ts +15 -0
  369. package/core-ux/lib/v2/pipes/gridstyle.pipe.d.ts +15 -0
  370. package/core-ux/lib/v2/services/app-config.service.d.ts +22 -0
  371. package/core-ux/lib/v2/services/entity-facade-registry.service.d.ts +28 -0
  372. package/core-ux/lib/v2/services/facade-modal.service.d.ts +21 -0
  373. package/core-ux/lib/v2/services/layout.service.d.ts +93 -0
  374. package/core-ux/lib/v2/services/property-change-bus.service.d.ts +9 -0
  375. package/core-ux/lib/v2/services/selection.service.d.ts +23 -0
  376. package/core-ux/lib/v2/services/test.service.d.ts +7 -0
  377. package/core-ux/lib/v2/services/validation.service.d.ts +10 -0
  378. package/core-ux/lib/v2/services/view-model-loader.service.d.ts +13 -0
  379. package/fesm2022/dflat-core-web-core-data.mjs +431 -0
  380. package/fesm2022/dflat-core-web-core-data.mjs.map +1 -0
  381. package/fesm2022/dflat-core-web-core-model.mjs +245 -0
  382. package/fesm2022/dflat-core-web-core-model.mjs.map +1 -0
  383. package/fesm2022/dflat-core-web-core-services.mjs +1568 -0
  384. package/fesm2022/dflat-core-web-core-services.mjs.map +1 -0
  385. package/fesm2022/dflat-core-web-core-ux.mjs +16294 -0
  386. package/fesm2022/dflat-core-web-core-ux.mjs.map +1 -0
  387. package/fesm2022/dflat-core-web-core.mjs +743 -0
  388. package/fesm2022/dflat-core-web-core.mjs.map +1 -0
  389. package/fesm2022/dflat-core-web-system-data.mjs +1031 -0
  390. package/fesm2022/dflat-core-web-system-data.mjs.map +1 -0
  391. package/fesm2022/dflat-core-web-system-model.mjs +283 -0
  392. package/fesm2022/dflat-core-web-system-model.mjs.map +1 -0
  393. package/fesm2022/dflat-core-web-system-root.mjs +289 -0
  394. package/fesm2022/dflat-core-web-system-root.mjs.map +1 -0
  395. package/fesm2022/dflat-core-web-system-ux.mjs +5677 -0
  396. package/fesm2022/dflat-core-web-system-ux.mjs.map +1 -0
  397. package/fesm2022/dflat-core-web.mjs +18 -0
  398. package/fesm2022/dflat-core-web.mjs.map +1 -0
  399. package/index.d.ts +1 -0
  400. package/package.json +82 -0
  401. package/scss/core-ux.scss +5 -0
  402. package/scss/images/circle-info.svg +1 -0
  403. package/scss/images/circlecross.svg +3 -0
  404. package/scss/images/circularoptionselected.svg +1 -0
  405. package/scss/images/error.png +0 -0
  406. package/scss/images/filter.svg +2 -0
  407. package/scss/images/information.png +0 -0
  408. package/scss/images/pen-solid.svg +1 -0
  409. package/scss/images/search-sprite.png +0 -0
  410. package/scss/images/search.svg +3 -0
  411. package/scss/images/warning.png +0 -0
  412. package/scss/layout/default/default-layout.scss +270 -0
  413. package/scss/layout/login/login-layout.scss +204 -0
  414. package/scss/styles/drag-and-drop.scss +36 -0
  415. package/scss/styles/forms.scss +94 -0
  416. package/scss/styles/shared.scss +222 -0
  417. package/system-data/index.d.ts +50 -0
  418. package/system-data/lib/data-services/account-service.generated.d.ts +20 -0
  419. package/system-data/lib/data-services/action-service.generated.d.ts +15 -0
  420. package/system-data/lib/data-services/address-service.generated.d.ts +10 -0
  421. package/system-data/lib/data-services/checkout-service.generated.d.ts +13 -0
  422. package/system-data/lib/data-services/company-service.generated.d.ts +10 -0
  423. package/system-data/lib/data-services/config-service.generated.d.ts +18 -0
  424. package/system-data/lib/data-services/country-service.generated.d.ts +10 -0
  425. package/system-data/lib/data-services/currency-service.generated.d.ts +10 -0
  426. package/system-data/lib/data-services/custom-field-group-entity-service.generated.d.ts +10 -0
  427. package/system-data/lib/data-services/custom-field-group-item-service.generated.d.ts +13 -0
  428. package/system-data/lib/data-services/custom-field-group-service.generated.d.ts +10 -0
  429. package/system-data/lib/data-services/custom-field-options-service.generated.d.ts +10 -0
  430. package/system-data/lib/data-services/custom-field-service.generated.d.ts +10 -0
  431. package/system-data/lib/data-services/error-category-service.generated.d.ts +12 -0
  432. package/system-data/lib/data-services/exchange-rate-detail-service.generated.d.ts +35 -0
  433. package/system-data/lib/data-services/exchange-rate-service.generated.d.ts +10 -0
  434. package/system-data/lib/data-services/file-service.generated.d.ts +26 -0
  435. package/system-data/lib/data-services/keyword-service.generated.d.ts +12 -0
  436. package/system-data/lib/data-services/meta-entity-field-service.generated.d.ts +10 -0
  437. package/system-data/lib/data-services/meta-entity-keyword-service.generated.d.ts +10 -0
  438. package/system-data/lib/data-services/meta-entity-service.generated.d.ts +10 -0
  439. package/system-data/lib/data-services/news-service.generated.d.ts +13 -0
  440. package/system-data/lib/data-services/parameter-service.generated.d.ts +10 -0
  441. package/system-data/lib/data-services/parameter-value-service.generated.d.ts +10 -0
  442. package/system-data/lib/data-services/permission-service.generated.d.ts +12 -0
  443. package/system-data/lib/data-services/permission-view-service.generated.d.ts +10 -0
  444. package/system-data/lib/data-services/plugin-parameter-value-service.generated.d.ts +10 -0
  445. package/system-data/lib/data-services/presentation-profile-item-service.generated.d.ts +14 -0
  446. package/system-data/lib/data-services/presentation-profile-service.generated.d.ts +13 -0
  447. package/system-data/lib/data-services/rating-service.generated.d.ts +14 -0
  448. package/system-data/lib/data-services/rating-summary-service.generated.d.ts +10 -0
  449. package/system-data/lib/data-services/rating-view-service.generated.d.ts +10 -0
  450. package/system-data/lib/data-services/request-result-service.generated.d.ts +12 -0
  451. package/system-data/lib/data-services/request-service.generated.d.ts +10 -0
  452. package/system-data/lib/data-services/resource-key-service.generated.d.ts +10 -0
  453. package/system-data/lib/data-services/resource-language-service.generated.d.ts +10 -0
  454. package/system-data/lib/data-services/resource-translation-view-service.generated.d.ts +10 -0
  455. package/system-data/lib/data-services/role-service.generated.d.ts +10 -0
  456. package/system-data/lib/data-services/subcompany-service.generated.d.ts +10 -0
  457. package/system-data/lib/data-services/supplier-service.generated.d.ts +10 -0
  458. package/system-data/lib/data-services/synchronized-company-service.generated.d.ts +10 -0
  459. package/system-data/lib/data-services/tva-rate-service.generated.d.ts +10 -0
  460. package/system-data/lib/data-services/user-account-company-service.generated.d.ts +10 -0
  461. package/system-data/lib/data-services/user-account-service.generated.d.ts +10 -0
  462. package/system-data/lib/data-services/user-favorite-service.generated.d.ts +10 -0
  463. package/system-data/lib/data-services/user-group-definition-service.generated.d.ts +10 -0
  464. package/system-data/lib/data-services/user-group-service.generated.d.ts +10 -0
  465. package/system-data/lib/data-services/user-role-service.generated.d.ts +10 -0
  466. package/system-data/lib/system-data.module.d.ts +9 -0
  467. package/system-model/index.d.ts +3 -0
  468. package/system-model/lib/model/interface.generated.d.ts +1162 -0
  469. package/system-model/lib/model/model.d.ts +11 -0
  470. package/system-model/lib/system-model.module.d.ts +7 -0
  471. package/system-root/index.d.ts +5 -0
  472. package/system-root/lib/system-entity-keys.d.ts +36 -0
  473. package/system-root/lib/system-menu-item-provider.d.ts +28 -0
  474. package/system-root/lib/system-menu-service.d.ts +13 -0
  475. package/system-root/lib/system-permissions.generated.d.ts +128 -0
  476. package/system-root/lib/system-root.module.d.ts +7 -0
  477. package/system-ux/index.d.ts +76 -0
  478. package/system-ux/lib/activate/activate.component.d.ts +36 -0
  479. package/system-ux/lib/address/address-editor.component.d.ts +12 -0
  480. package/system-ux/lib/address/address.component.d.ts +15 -0
  481. package/system-ux/lib/company/company-editor.component.d.ts +12 -0
  482. package/system-ux/lib/company/company.component.d.ts +19 -0
  483. package/system-ux/lib/components/image-upload/image-upload.component.d.ts +99 -0
  484. package/system-ux/lib/config/config-component.d.ts +22 -0
  485. package/system-ux/lib/config/datawarehouse-supply/dw-supply.component.d.ts +14 -0
  486. package/system-ux/lib/country/country-editor.component.d.ts +12 -0
  487. package/system-ux/lib/country/country.component.d.ts +14 -0
  488. package/system-ux/lib/currency/currency-editor.component.d.ts +12 -0
  489. package/system-ux/lib/currency/currency.component.d.ts +14 -0
  490. package/system-ux/lib/custom-field/custom-field-editor.component.d.ts +13 -0
  491. package/system-ux/lib/custom-field/custom-field.component.d.ts +19 -0
  492. package/system-ux/lib/custom-field-group/custom-field-group-editor.component.d.ts +14 -0
  493. package/system-ux/lib/custom-field-group/custom-field-group-entity/custom-field-group-entity-editor.component.d.ts +13 -0
  494. package/system-ux/lib/custom-field-group/custom-field-group-entity/custom-field-group-entity.component.d.ts +19 -0
  495. package/system-ux/lib/custom-field-group/custom-field-group-item/custom-field-group-item-editor.component.d.ts +12 -0
  496. package/system-ux/lib/custom-field-group/custom-field-group-item/custom-field-group-item.component.d.ts +27 -0
  497. package/system-ux/lib/custom-field-group/custom-field-group.component.d.ts +23 -0
  498. package/system-ux/lib/custom-field-options/custom-field-options-editor.component.d.ts +17 -0
  499. package/system-ux/lib/custom-field-options/custom-field-options.component.d.ts +22 -0
  500. package/system-ux/lib/entity-files/entity-files.component.d.ts +37 -0
  501. package/system-ux/lib/exchange-rate/exchange-rate-detail.component.d.ts +17 -0
  502. package/system-ux/lib/exchange-rate/exchange-rate-editor.component.d.ts +25 -0
  503. package/system-ux/lib/exchange-rate/exchange-rate.component.d.ts +18 -0
  504. package/system-ux/lib/global-parameter/global-parameter.component.d.ts +15 -0
  505. package/system-ux/lib/login/login.component.d.ts +37 -0
  506. package/system-ux/lib/meta-entity/meta-entity.component.d.ts +22 -0
  507. package/system-ux/lib/meta-entity-field/meta-entity-field-editor.component.d.ts +12 -0
  508. package/system-ux/lib/meta-entity-field/meta-entity-field.component.d.ts +20 -0
  509. package/system-ux/lib/news/news-component.d.ts +16 -0
  510. package/system-ux/lib/news/news-editor.component.d.ts +28 -0
  511. package/system-ux/lib/permission/permission-component.d.ts +16 -0
  512. package/system-ux/lib/permission/permission-editor.component.d.ts +12 -0
  513. package/system-ux/lib/presentation-profile/pp-facade.service.d.ts +39 -0
  514. package/system-ux/lib/presentation-profile/presentation-profile-action-service.d.ts +16 -0
  515. package/system-ux/lib/presentation-profile/presentation-profile-column-grid/presentation-profile-column.component.d.ts +73 -0
  516. package/system-ux/lib/presentation-profile/presentation-profile-column-grid/presentation-profile-items.component.d.ts +50 -0
  517. package/system-ux/lib/presentation-profile/presentation-profile-resolver.service.d.ts +34 -0
  518. package/system-ux/lib/presentation-profile/presentation-profile-transformer.d.ts +48 -0
  519. package/system-ux/lib/presentation-profile/presentation-profile.component.d.ts +16 -0
  520. package/system-ux/lib/presentation-profile/presentation-profile.service.d.ts +58 -0
  521. package/system-ux/lib/request/request-editor.component.d.ts +12 -0
  522. package/system-ux/lib/request/request.component.d.ts +20 -0
  523. package/system-ux/lib/request-results/request-results.component.d.ts +15 -0
  524. package/system-ux/lib/reset-password/reset-password.component.d.ts +32 -0
  525. package/system-ux/lib/resource-key/resource-key.component.d.ts +18 -0
  526. package/system-ux/lib/resource-language/resource-language.component.d.ts +16 -0
  527. package/system-ux/lib/resource-language/resourcelanguage-editor.component.d.ts +12 -0
  528. package/system-ux/lib/resource-translation/resource-translation-editor.component.d.ts +12 -0
  529. package/system-ux/lib/resource-translation/resource-translation.component.d.ts +16 -0
  530. package/system-ux/lib/role/role-component.d.ts +14 -0
  531. package/system-ux/lib/role/role-editor.component.d.ts +27 -0
  532. package/system-ux/lib/services/custom-field-action-service.d.ts +25 -0
  533. package/system-ux/lib/services/custom-field-service.d.ts +21 -0
  534. package/system-ux/lib/services/rates-action-service.d.ts +28 -0
  535. package/system-ux/lib/services/select-user-company-action-service.d.ts +23 -0
  536. package/system-ux/lib/services/system-section.service.d.ts +12 -0
  537. package/system-ux/lib/services/system-selector-mapper.service.d.ts +24 -0
  538. package/system-ux/lib/services/user-action-service.d.ts +20 -0
  539. package/system-ux/lib/sub-company/sub-company.component.d.ts +15 -0
  540. package/system-ux/lib/supplier/supplier-editor.component.d.ts +12 -0
  541. package/system-ux/lib/supplier/supplier.component.d.ts +16 -0
  542. package/system-ux/lib/synchronised-company/synchronised-company.component.d.ts +16 -0
  543. package/system-ux/lib/system-ux.module.d.ts +88 -0
  544. package/system-ux/lib/tva-rate/tva-rate-detail.component.d.ts +17 -0
  545. package/system-ux/lib/tva-rate/tva-rate-editor.component.d.ts +25 -0
  546. package/system-ux/lib/tva-rate/tva-rate.component.d.ts +17 -0
  547. package/system-ux/lib/user-account/user-account-component.d.ts +18 -0
  548. package/system-ux/lib/user-account/user-account-editor.component.d.ts +12 -0
  549. package/system-ux/lib/user-account-profile/user-account-profile.component.d.ts +31 -0
  550. package/system-ux/lib/user-company/user-company-component.d.ts +21 -0
  551. package/system-ux/lib/user-group/user-group-definition.component.d.ts +18 -0
  552. package/system-ux/lib/user-group/user-group-editor.component.d.ts +12 -0
  553. package/system-ux/lib/user-group/user-group.component.d.ts +16 -0
  554. package/system-ux/lib/user-permission/user-permission-component.d.ts +14 -0
  555. package/system-ux/lib/user-role/user-role-component.d.ts +20 -0
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class TestService {
3
+ constructor();
4
+ test(loc: string): void;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TestService, never>;
6
+ static ɵprov: i0.ɵɵInjectableDeclaration<TestService>;
7
+ }
@@ -0,0 +1,10 @@
1
+ import { AbstractControl, ValidatorFn } from '@angular/forms';
2
+ import { FieldDescriptor, FieldValidators } from '@dflat-core/web/core-model';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ValidationService {
5
+ getFieldValidators(field: FieldDescriptor): any[];
6
+ getValidationErrors(control: AbstractControl, field: FieldDescriptor): string;
7
+ getValidators(fieldValidators: FieldValidators): ValidatorFn[];
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ValidationService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDeclaration<ValidationService>;
10
+ }
@@ -0,0 +1,13 @@
1
+ import { EntityViewModel, EntityViewModelWithFields } from "@dflat-core/web/core-model";
2
+ import { EntityFacadeRegistryService } from "./entity-facade-registry.service";
3
+ import { Guid } from "guid-typescript";
4
+ import { Observable } from "rxjs";
5
+ import * as i0 from "@angular/core";
6
+ export declare class ViewModelLoaderService<TData extends EntityViewModel> {
7
+ private facades;
8
+ constructor(facades: EntityFacadeRegistryService);
9
+ getViewModel$(entityKey: string, guid: Guid, isStandalone?: boolean, id?: string | number): Observable<EntityViewModelWithFields<TData>>;
10
+ private createNew;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<ViewModelLoaderService<any>, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<ViewModelLoaderService<any>>;
13
+ }
@@ -0,0 +1,431 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { Injectable, NgModule, Directive } from '@angular/core';
4
+ import * as i1 from '@dflat-core/web/core';
5
+ import { Utilities } from '@dflat-core/web/core';
6
+ import * as i3 from '@dflat-core/web/core-services';
7
+ import * as i2 from '@angular/common/http';
8
+ import { HttpParams } from '@angular/common/http';
9
+ import { map } from 'rxjs/operators';
10
+
11
+ class DataService {
12
+ constructor(env, httpClient, headerService) {
13
+ this.env = env;
14
+ this.headerService = headerService;
15
+ this.baseUrl = this.env.apiUrl;
16
+ this.httpClient = httpClient;
17
+ }
18
+ getFormattedParams(params) {
19
+ // Dans le cas d'un tableau, parcours tous les éléments du tableau pour formatter les
20
+ let result;
21
+ if (Array.isArray(params)) {
22
+ if (params.length > 0 && typeof (params[0]) === 'number')
23
+ return JSON.stringify(params);
24
+ result = [];
25
+ params.forEach(entity => {
26
+ result.push(this.getFormattedParams(entity));
27
+ });
28
+ return JSON.stringify(result);
29
+ }
30
+ result = {};
31
+ for (let key in params) {
32
+ if (params.hasOwnProperty(key)) {
33
+ let val = params[key];
34
+ if (val !== undefined && val !== null) {
35
+ //Handle the Date javascript object
36
+ if (val instanceof Date) {
37
+ val = `${Utilities.Format2Digits(val.getFullYear())}-${Utilities.Format2Digits(val.getMonth() + 1)}-${Utilities.Format2Digits(val.getDate())}T00:00:00.000Z`;
38
+ }
39
+ result[key] = val;
40
+ }
41
+ }
42
+ }
43
+ return result;
44
+ // }
45
+ // else {
46
+ // result = params;
47
+ // }
48
+ // for (let key in params) {
49
+ // if (params.hasOwnProperty(key)) {
50
+ // let val = params[key];
51
+ // if (val !== undefined && val !== null) {
52
+ // //Handle the Date javascript object
53
+ // if (val instanceof Date) {
54
+ // val = `${Utilities.Format2Digits(val.getFullYear())}-${Utilities.Format2Digits(val.getMonth() + 1)}-${Utilities.Format2Digits(val.getDate())}T00:00:00.000Z`;
55
+ // }
56
+ // else if (Array.isArray(val)) {
57
+ // let tmpResult = [];
58
+ // val.forEach(entity => {
59
+ // tmpResult.push(this.getFormattedParams(entity));
60
+ // });
61
+ // val = JSON.stringify(tmpResult);
62
+ // // val.forEach(element => {
63
+ // // val[element] = this.getFormattedParams(element);
64
+ // // });
65
+ // }
66
+ // else if (typeof val === 'object') {
67
+ // let valCopie = Object.assign({}, val);
68
+ // val = this.getFormattedParams(valCopie);
69
+ // }
70
+ // if (Array.isArray(params)) {
71
+ // result = val;
72
+ // }
73
+ // else {
74
+ // result[key] = val;
75
+ // }
76
+ // }
77
+ // }
78
+ // }
79
+ // return result;
80
+ }
81
+ getUrlQueryParams(filter) {
82
+ let requestParams = new HttpParams();
83
+ let formattedFilter = this.getFormattedParams(filter);
84
+ for (let key in formattedFilter) {
85
+ if (formattedFilter.hasOwnProperty(key)) {
86
+ let vals = formattedFilter[key];
87
+ if (Array.isArray(vals) && vals.length > 0) {
88
+ for (let key2 in vals) {
89
+ requestParams = requestParams.append(key, vals[key2]);
90
+ }
91
+ }
92
+ else if (typeof vals === 'object') {
93
+ requestParams = requestParams.set(key, JSON.stringify(vals));
94
+ }
95
+ else {
96
+ requestParams = requestParams.set(key, vals);
97
+ }
98
+ }
99
+ }
100
+ return requestParams;
101
+ }
102
+ /*getUrlQueryArrayParams(filter: any): HttpParams {
103
+ let requestParams = new HttpParams();
104
+ let formattedFilter = this.getFormattedParams(filter);
105
+ for (let key in formattedFilter) {
106
+ if (formattedFilter.hasOwnProperty(key)) {
107
+ let vals = formattedFilter[key];
108
+ for (let key2 in vals) {
109
+ requestParams = requestParams.append(key, vals[key2]);
110
+ }
111
+ }
112
+ }
113
+ return requestParams;
114
+ }*/
115
+ getViewFilterDescriptors(entityKey) {
116
+ let _url = this.baseUrl + `/${entityKey}/GetFilterDescriptors`;
117
+ return this.httpClient.get(_url);
118
+ }
119
+ getViewColumns(entityKey) {
120
+ let _url = this.baseUrl + `/${entityKey}/GetGridColumns`;
121
+ return this.httpClient.get(_url);
122
+ }
123
+ search(entityKey, filter) {
124
+ let _url = this.baseUrl + `/${entityKey}/Search`;
125
+ let requestParams = this.getUrlQueryParams(filter);
126
+ return this.httpClient.get(_url, { params: requestParams });
127
+ }
128
+ getDetails(entityKey, id) {
129
+ let _url = this.baseUrl + `/${entityKey}/GetDetails?`;
130
+ if (id === undefined || id === null)
131
+ throw new Error("The parameter 'id' must be defined and cannot be null.");
132
+ else
133
+ _url += "id=" + encodeURI("" + id);
134
+ _url = _url.replace(/[?&]$/, "");
135
+ return this.httpClient.get(_url);
136
+ }
137
+ getEmptyFilter(entityKey) {
138
+ let _url = this.baseUrl + `/${entityKey}/GetEmptyFilter`;
139
+ return this.httpClient.get(_url, {});
140
+ }
141
+ /**
142
+ * fonction "async" liant le front(Angular) et le back(C#)
143
+ * - Principalement appelée par "src.app.core.layout.BaseEditorComponent.loadEntityViewModel()" lorsque l'on cherche à afficher un Objet de type "EntityViewModel"
144
+ * - C'est elle qui lance l'appel à la fonction "back" BaseFilterController.GetEntityViewModel<TData>(id).
145
+ * - Puis elle crée un observable avec la réponse qu'elle obtient du "back"
146
+ *
147
+ * @async
148
+ * @function
149
+ * @name getEntityViewModel<TData>
150
+ * @param {string} entityKey
151
+ * @param {number} id
152
+ * @returns {(Observable)EntityViewModelWithFields<TData>}
153
+ * @memberof DataService
154
+ * @summary Demande les données d'une entité au back(C#) à travers "getEntityViewModel".
155
+ * @see {@link src.app.core.layout.BaseEditorComponent.loadEntityViewModel()} for more information
156
+ * @throws new Error("The parameter 'id' must be defined and cannot be null.") if (id === undefined ou id === null)
157
+ */
158
+ getEntityViewModel(entityKey, id) {
159
+ let _url = this.baseUrl + `/${entityKey}/GetEntityViewModel?`;
160
+ if (id === undefined || id === null)
161
+ throw new Error("The parameter 'id' must be defined and cannot be null.");
162
+ else
163
+ _url += "id=" + encodeURI("" + id);
164
+ _url = _url.replace(/[?&]$/, "");
165
+ return this.httpClient.get(_url).pipe(map((resp) => resp));
166
+ }
167
+ getExtendedProperties(entityKey, entityIds) {
168
+ let _url = this.baseUrl + `/${entityKey}/GetExtendedProperties`;
169
+ let requestParams = this.getUrlQueryParams({ entityIds: entityIds });
170
+ return this.httpClient.get(_url, { params: requestParams });
171
+ }
172
+ getExtendedActions(entityKey) {
173
+ const _url = this.baseUrl + `/${entityKey}/GetExtendedActions`;
174
+ return this.httpClient.get(_url, {});
175
+ }
176
+ getTrackRecordProperties(entityKey, entityIds) {
177
+ let _url = this.baseUrl + `/${entityKey}/GetTrackRecordProperties`;
178
+ let requestParams = this.getUrlQueryParams({ entityIds: entityIds });
179
+ return this.httpClient.get(_url, { params: requestParams });
180
+ }
181
+ saveEntity(entityKey, entity) {
182
+ let _url = this.baseUrl + `/${entityKey}/SaveEntity`;
183
+ return this.httpClient.post(_url, this.getFormattedParams(entity));
184
+ }
185
+ deleteEntity(entityKey, entity) {
186
+ let _url = this.baseUrl + `/${entityKey}/DeleteEntity`;
187
+ return this.httpClient.post(_url, this.getFormattedParams(entity));
188
+ }
189
+ deleteEntities(entityKey, entities) {
190
+ let _url = this.baseUrl + `/${entityKey}/DeleteEntities`;
191
+ return this.httpClient.post(_url, this.getFormattedParams(entities));
192
+ }
193
+ saveEntities(entityKey, entities) {
194
+ let _url = this.baseUrl + `/${entityKey}/saveEntities`;
195
+ let toSave = [];
196
+ entities.forEach(entity => {
197
+ toSave.push(this.getFormattedParams(entity));
198
+ });
199
+ return this.httpClient.post(_url, JSON.stringify(toSave));
200
+ }
201
+ SaveEntityWithSpecifics(entityKey, DataToSave) {
202
+ let _url = this.baseUrl + `/${entityKey}/SaveEntityWithSpecifics`;
203
+ return this.httpClient.post(_url, this.getFormattedParams(DataToSave));
204
+ }
205
+ exportAll(entityKey, filter) {
206
+ let _url = this.baseUrl + `/${entityKey}/ExportAll`;
207
+ let requestParams = this.getUrlQueryParams(filter);
208
+ return this.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' })
209
+ .pipe(map((r) => this.getFileInfo(r)));
210
+ }
211
+ exportResults(entityKey, exportModel) {
212
+ let _url = this.baseUrl + `/${entityKey}/ExportResults`;
213
+ const _body = JSON.stringify(exportModel);
214
+ return this.httpClient.post(_url, _body, { observe: 'response', responseType: 'blob' })
215
+ .pipe(map((r) => this.getFileInfo(r)));
216
+ }
217
+ getFileInfo(resp) {
218
+ var type = resp.headers.get("Content-Type");
219
+ let b = new Blob([resp.body], { type: type });
220
+ return {
221
+ fileBlob: b,
222
+ fileName: (resp.headers.get("Content-Disposition") || "").split(";")[1].trim().split("=")[1].replace(/['"]/g, '')
223
+ };
224
+ }
225
+ uploadFileToExtract(file, inputId, correlationId) {
226
+ return this.uploadFiles("/DataImport/PostImportFile", [file], { inputId: inputId, correlationId: correlationId });
227
+ }
228
+ uploadFilesWithParams(files, customParams, forceMultipleFiles = false) {
229
+ const _url = this.baseUrl + "/DataImport/PostFiles";
230
+ let formData = new FormData();
231
+ if (files.length == 1 && !forceMultipleFiles) {
232
+ formData.append('file', files[0]);
233
+ }
234
+ else {
235
+ for (var i = 0; i < files.length; i++) {
236
+ formData.append('files', files[i]);
237
+ }
238
+ }
239
+ formData.append('data', JSON.stringify(customParams.dataModel));
240
+ let params = new HttpParams();
241
+ return this.httpClient.post(_url, formData, {
242
+ params,
243
+ reportProgress: true,
244
+ observe: 'body',
245
+ headers: this.headerService.authFileUploadHeaders()
246
+ });
247
+ }
248
+ uploadFiles(url, files, customParams, forceMultipleFiles = false) {
249
+ const _url = this.baseUrl + url;
250
+ let formData = new FormData();
251
+ if (files.length == 1 && !forceMultipleFiles) {
252
+ formData.append('file', files[0]);
253
+ }
254
+ else {
255
+ for (var i = 0; i < files.length; i++) {
256
+ formData.append('files', files[i]);
257
+ }
258
+ }
259
+ if (customParams) {
260
+ for (let p in customParams) {
261
+ if (customParams.hasOwnProperty(p)) {
262
+ formData.append(p, customParams[p]);
263
+ }
264
+ }
265
+ }
266
+ let params = new HttpParams();
267
+ return this.httpClient.post(_url, formData, {
268
+ params,
269
+ reportProgress: true,
270
+ observe: 'body',
271
+ headers: this.headerService.authFileUploadHeaders()
272
+ });
273
+ }
274
+ uploadFilesWithEvents(url, files, customParams, forceMultipleFiles = false) {
275
+ const _url = this.baseUrl + url;
276
+ let formData = new FormData();
277
+ if (files.length == 1 && !forceMultipleFiles) {
278
+ formData.append('file', files[0]);
279
+ }
280
+ else {
281
+ for (var i = 0; i < files.length; i++) {
282
+ formData.append('files', files[i]);
283
+ }
284
+ }
285
+ if (customParams) {
286
+ for (let p in customParams) {
287
+ if (customParams.hasOwnProperty(p)) {
288
+ formData.append(p, customParams[p]);
289
+ }
290
+ }
291
+ }
292
+ let params = new HttpParams();
293
+ return this.httpClient.post(_url, formData, {
294
+ params,
295
+ reportProgress: true,
296
+ observe: 'events',
297
+ headers: this.headerService.authFileUploadHeaders()
298
+ });
299
+ }
300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: DataService, deps: [{ token: i1.EnvironmentBase }, { token: i2.HttpClient }, { token: i3.HeadersService }], target: i0.ɵɵFactoryTarget.Injectable }); }
301
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: DataService }); }
302
+ }
303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: DataService, decorators: [{
304
+ type: Injectable
305
+ }], ctorParameters: () => [{ type: i1.EnvironmentBase }, { type: i2.HttpClient }, { type: i3.HeadersService }] });
306
+
307
+ class CoreDataModule {
308
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: CoreDataModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
309
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: CoreDataModule, imports: [CommonModule] }); }
310
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: CoreDataModule, providers: [DataService], imports: [CommonModule] }); }
311
+ }
312
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: CoreDataModule, decorators: [{
313
+ type: NgModule,
314
+ args: [{
315
+ imports: [CommonModule],
316
+ providers: [DataService]
317
+ }]
318
+ }] });
319
+
320
+ class EntityDataService {
321
+ constructor(dataService) {
322
+ this.dataService = dataService;
323
+ }
324
+ deleteEntities(sources) {
325
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/DeleteEntities`;
326
+ const requestParams = this.dataService.getFormattedParams(sources);
327
+ return this.dataService.httpClient.post(_url, requestParams);
328
+ }
329
+ deleteEntity(source) {
330
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/DeleteEntity`;
331
+ const requestParams = this.dataService.getFormattedParams(source);
332
+ return this.dataService.httpClient.post(_url, requestParams);
333
+ }
334
+ exportAll(filter) {
335
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ExportAll`;
336
+ const requestParams = this.dataService.getFormattedParams(filter);
337
+ return this.dataService.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' }).pipe(map((r) => this.dataService.getFileInfo(r)));
338
+ }
339
+ exportResults(model) {
340
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ExportResults`;
341
+ const requestParams = this.dataService.getFormattedParams(model);
342
+ return this.dataService.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' }).pipe(map((r) => this.dataService.getFileInfo(r)));
343
+ }
344
+ getAlternateEntityViewModel(id) {
345
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetAlternateEntityViewModel`;
346
+ const requestParams = this.dataService.getUrlQueryParams({ id: id });
347
+ return this.dataService.httpClient.get(_url, { params: requestParams });
348
+ }
349
+ getCacheManager() {
350
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetCacheManager`;
351
+ return this.dataService.httpClient.get(_url, {});
352
+ }
353
+ getColumns() {
354
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetColumns`;
355
+ return this.dataService.httpClient.get(_url, {});
356
+ }
357
+ getDetails(id) {
358
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetDetails`;
359
+ const requestParams = this.dataService.getUrlQueryParams({ id: id });
360
+ return this.dataService.httpClient.get(_url, { params: requestParams });
361
+ }
362
+ getEmptyFilter() {
363
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetEmptyFilter`;
364
+ return this.dataService.httpClient.get(_url, {});
365
+ }
366
+ getEntityViewModel(id) {
367
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetEntityViewModel`;
368
+ const requestParams = this.dataService.getUrlQueryParams({ id: id });
369
+ return this.dataService.httpClient.get(_url, { params: requestParams });
370
+ }
371
+ getExtendedActions() {
372
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetExtendedActions`;
373
+ return this.dataService.httpClient.get(_url, {});
374
+ }
375
+ getExtendedProperties(entityIds) {
376
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetExtendedProperties`;
377
+ const requestParams = this.dataService.getUrlQueryParams({ entityIds: entityIds });
378
+ return this.dataService.httpClient.get(_url, { params: requestParams });
379
+ }
380
+ getFilterDescriptors() {
381
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetFilterDescriptors`;
382
+ return this.dataService.httpClient.get(_url, {});
383
+ }
384
+ getSortColumn(col) {
385
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetSortColumn`;
386
+ const requestParams = this.dataService.getUrlQueryParams({ col: col });
387
+ return this.dataService.httpClient.get(_url, { params: requestParams });
388
+ }
389
+ getTrackRecordProperties(entityIds) {
390
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetTrackRecordProperties`;
391
+ const requestParams = this.dataService.getUrlQueryParams({ entityIds: entityIds });
392
+ return this.dataService.httpClient.get(_url, { params: requestParams });
393
+ }
394
+ saveEntities(sources) {
395
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntities`;
396
+ const requestParams = this.dataService.getFormattedParams(sources);
397
+ return this.dataService.httpClient.post(_url, requestParams);
398
+ }
399
+ saveEntity(source) {
400
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntity`;
401
+ const requestParams = this.dataService.getFormattedParams(source);
402
+ return this.dataService.httpClient.post(_url, requestParams);
403
+ }
404
+ saveEntityWithSpecifics(source) {
405
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntityWithSpecifics`;
406
+ const requestParams = this.dataService.getFormattedParams(source);
407
+ return this.dataService.httpClient.post(_url, requestParams);
408
+ }
409
+ search(filter) {
410
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/Search`;
411
+ const requestParams = this.dataService.getFormattedParams(filter);
412
+ return this.dataService.httpClient.get(_url, { params: requestParams });
413
+ }
414
+ toggleFavorite(filter) {
415
+ const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ToggleFavorite`;
416
+ const requestParams = this.dataService.getFormattedParams(filter);
417
+ return this.dataService.httpClient.post(_url, requestParams);
418
+ }
419
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: EntityDataService, deps: [{ token: DataService }], target: i0.ɵɵFactoryTarget.Directive }); }
420
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: EntityDataService, isStandalone: true, ngImport: i0 }); }
421
+ }
422
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: EntityDataService, decorators: [{
423
+ type: Directive
424
+ }], ctorParameters: () => [{ type: DataService }] });
425
+
426
+ /**
427
+ * Generated bundle index. Do not edit.
428
+ */
429
+
430
+ export { CoreDataModule, DataService, EntityDataService };
431
+ //# sourceMappingURL=dflat-core-web-core-data.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dflat-core-web-core-data.mjs","sources":["../../core-data/src/lib/services/data-service.ts","../../core-data/src/lib/core-data.module.ts","../../core-data/src/lib/services/entity-data-service.ts","../../core-data/src/dflat-core-web-core-data.ts"],"sourcesContent":["import { EnvironmentBase, Utilities } from '@dflat-core/web/core';\nimport { ActionDescriptor, ColumnDescriptor, EntityViewModelWithFields, EntityWithSpecifics, ExtendedProperty, FilterDescriptor, PagedList, SaveResult, SaveResults, TrackRecordProperty } from '@dflat-core/web/core-model';\nimport { HeadersService } from '@dflat-core/web/core-services';\nimport { HttpClient, HttpParams, HttpResponse } from '@angular/common/http';\nimport { Injectable, Type } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n\n@Injectable()\nexport class DataService {\n\n baseUrl = this.env.apiUrl;\n httpClient: HttpClient;\n data: any[];\n constructor(\n private env: EnvironmentBase,\n httpClient: HttpClient,\n private headerService: HeadersService) {\n this.httpClient = httpClient\n }\n\n getFormattedParams(params: any): any {\n\n // Dans le cas d'un tableau, parcours tous les éléments du tableau pour formatter les\n let result: any;\n\n\n if (Array.isArray(params)) {\n if (params.length > 0 && typeof (params[0]) === 'number')\n return JSON.stringify(params);\n\n result = [];\n params.forEach(entity => {\n result.push(this.getFormattedParams(entity));\n });\n return JSON.stringify(result);\n }\n result = {};\n for (let key in params) {\n if (params.hasOwnProperty(key)) {\n let val = params[key];\n if (val !== undefined && val !== null) {\n //Handle the Date javascript object\n if (val instanceof Date) {\n val = `${Utilities.Format2Digits(val.getFullYear())}-${Utilities.Format2Digits(val.getMonth() + 1)}-${Utilities.Format2Digits(val.getDate())}T00:00:00.000Z`;\n }\n result[key] = val;\n }\n }\n }\n return result;\n\n\n\n // }\n // else {\n // result = params;\n // }\n // for (let key in params) {\n // if (params.hasOwnProperty(key)) {\n // let val = params[key];\n // if (val !== undefined && val !== null) {\n // //Handle the Date javascript object\n // if (val instanceof Date) {\n // val = `${Utilities.Format2Digits(val.getFullYear())}-${Utilities.Format2Digits(val.getMonth() + 1)}-${Utilities.Format2Digits(val.getDate())}T00:00:00.000Z`;\n // }\n // else if (Array.isArray(val)) {\n // let tmpResult = [];\n // val.forEach(entity => {\n // tmpResult.push(this.getFormattedParams(entity));\n // });\n // val = JSON.stringify(tmpResult);\n // // val.forEach(element => {\n // // val[element] = this.getFormattedParams(element);\n // // });\n // }\n // else if (typeof val === 'object') {\n // let valCopie = Object.assign({}, val);\n // val = this.getFormattedParams(valCopie);\n // }\n\n // if (Array.isArray(params)) {\n // result = val;\n // }\n // else {\n // result[key] = val;\n // }\n\n // }\n // }\n // }\n // return result;\n }\n\n\n getUrlQueryParams(filter: any): HttpParams {\n let requestParams = new HttpParams();\n let formattedFilter = this.getFormattedParams(filter);\n for (let key in formattedFilter) {\n if (formattedFilter.hasOwnProperty(key)) {\n let vals = formattedFilter[key];\n if (Array.isArray(vals) && vals.length > 0)\n {\n for (let key2 in vals) {\n requestParams = requestParams.append(key, vals[key2]);\n }\n }\n else if (typeof vals === 'object') {\n requestParams = requestParams.set(key, JSON.stringify(vals));\n }\n else\n {\n requestParams = requestParams.set(key, vals);\n }\n }\n }\n return requestParams;\n }\n\n /*getUrlQueryArrayParams(filter: any): HttpParams {\n let requestParams = new HttpParams();\n let formattedFilter = this.getFormattedParams(filter);\n for (let key in formattedFilter) {\n if (formattedFilter.hasOwnProperty(key)) {\n let vals = formattedFilter[key];\n for (let key2 in vals) {\n requestParams = requestParams.append(key, vals[key2]);\n }\n }\n }\n return requestParams;\n }*/\n\n getViewFilterDescriptors(entityKey: string): Observable<FilterDescriptor[]> {\n let _url = this.baseUrl + `/${entityKey}/GetFilterDescriptors`;\n return this.httpClient.get<FilterDescriptor[]>(_url);\n }\n\n getViewColumns(entityKey: string): Observable<ColumnDescriptor[]> {\n let _url = this.baseUrl + `/${entityKey}/GetGridColumns`;\n return this.httpClient.get<ColumnDescriptor[]>(_url);\n }\n\n search<TData>(entityKey: string, filter: any): Observable<PagedList<TData>> {\n let _url = this.baseUrl + `/${entityKey}/Search`;\n let requestParams = this.getUrlQueryParams(filter);\n return this.httpClient.get<PagedList<TData>>(_url, { params: requestParams });\n }\n\n getDetails<TData>(entityKey: string, id: number): Observable<TData> {\n let _url = this.baseUrl + `/${entityKey}/GetDetails?`;\n if (id === undefined || id === null)\n throw new Error(\"The parameter 'id' must be defined and cannot be null.\");\n else\n _url += \"id=\" + encodeURI(\"\" + id);\n\n _url = _url.replace(/[?&]$/, \"\");\n\n return this.httpClient.get<TData>(_url);\n }\n\n getEmptyFilter<T>(entityKey: string): Observable<T> {\n let _url = this.baseUrl + `/${entityKey}/GetEmptyFilter`;\n return this.httpClient.get<T>(_url, {});\n }\n\n /**\n * fonction \"async\" liant le front(Angular) et le back(C#)\n * - Principalement appelée par \"src.app.core.layout.BaseEditorComponent.loadEntityViewModel()\" lorsque l'on cherche à afficher un Objet de type \"EntityViewModel\"\n * - C'est elle qui lance l'appel à la fonction \"back\" BaseFilterController.GetEntityViewModel<TData>(id).\n * - Puis elle crée un observable avec la réponse qu'elle obtient du \"back\"\n *\n * @async\n * @function\n * @name getEntityViewModel<TData>\n * @param {string} entityKey\n * @param {number} id\n * @returns {(Observable)EntityViewModelWithFields<TData>}\n * @memberof DataService\n * @summary Demande les données d'une entité au back(C#) à travers \"getEntityViewModel\".\n * @see {@link src.app.core.layout.BaseEditorComponent.loadEntityViewModel()} for more information\n * @throws new Error(\"The parameter 'id' must be defined and cannot be null.\") if (id === undefined ou id === null)\n */\n getEntityViewModel<TData>(entityKey: string, id: number): Observable<EntityViewModelWithFields<TData>> {\n let _url = this. baseUrl + `/${entityKey}/GetEntityViewModel?`;\n if (id === undefined || id === null)\n throw new Error(\"The parameter 'id' must be defined and cannot be null.\");\n else\n _url += \"id=\" + encodeURI(\"\" + id);\n\n _url = _url.replace(/[?&]$/, \"\");\n\n return this.httpClient.get(_url).pipe(\n map((resp: Response) => <EntityViewModelWithFields<TData>>resp));\n }\n\n getExtendedProperties(entityKey: string, entityIds: number[]): Observable<ExtendedProperty[]> {\n let _url = this.baseUrl + `/${entityKey}/GetExtendedProperties`;\n\n let requestParams = this.getUrlQueryParams({ entityIds: entityIds });\n return this.httpClient.get<ExtendedProperty[]>(_url, { params: requestParams });\n }\n\n getExtendedActions (entityKey: string) : Observable<ActionDescriptor[]> {\n const _url = this.baseUrl + `/${entityKey}/GetExtendedActions`;\n return this.httpClient.get<ActionDescriptor[]>(_url, {});\n }\n \n getTrackRecordProperties(entityKey: string, entityIds: number[]): Observable<TrackRecordProperty[]> {\n let _url = this.baseUrl + `/${entityKey}/GetTrackRecordProperties`;\n\n let requestParams = this.getUrlQueryParams({ entityIds: entityIds });\n return this.httpClient.get<TrackRecordProperty[]>(_url, { params: requestParams });\n }\n\n saveEntity<TData>(entityKey: string, entity: TData): Observable<SaveResult> {\n let _url = this.baseUrl + `/${entityKey}/SaveEntity`;\n return this.httpClient.post<SaveResult>(_url, this.getFormattedParams(entity));\n }\n\n deleteEntity<TData>(entityKey: string, entity: TData): Observable<SaveResult> {\n let _url = this.baseUrl + `/${entityKey}/DeleteEntity`;\n return this.httpClient.post<SaveResult>(_url, this.getFormattedParams(entity));\n }\n\n deleteEntities<TData>(entityKey: string, entities: TData[]): Observable<SaveResults<TData>> {\n let _url = this.baseUrl + `/${entityKey}/DeleteEntities`;\n return this.httpClient.post<SaveResults<TData>>(_url, this.getFormattedParams(entities));\n }\n\n saveEntities<TData>(entityKey: string, entities: TData[]): Observable<SaveResults<TData>> {\n let _url = this.baseUrl + `/${entityKey}/saveEntities`;\n let toSave = [];\n entities.forEach(entity => {\n toSave.push(this.getFormattedParams(entity));\n });\n return this.httpClient.post<SaveResults<TData>>(_url, JSON.stringify(toSave));\n }\n\n\n\n SaveEntityWithSpecifics<TData>(entityKey: string, DataToSave: EntityWithSpecifics<TData>): Observable<{ success: boolean, rowVersion?: Date }> {\n let _url = this.baseUrl + `/${entityKey}/SaveEntityWithSpecifics`;\n return this.httpClient.post<{ success: boolean, rowVersion?: Date }>(_url, this.getFormattedParams(DataToSave));\n }\n\n exportAll<TData>(entityKey: string, filter: any) {\n let _url = this.baseUrl + `/${entityKey}/ExportAll`;\n let requestParams = this.getUrlQueryParams(filter);\n\n return this.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' })\n .pipe(map((r: HttpResponse<Blob>) => this.getFileInfo(r)))\n }\n\n exportResults<TData>(entityKey: string, exportModel: any) {\n let _url = this.baseUrl + `/${entityKey}/ExportResults`;\n const _body = JSON.stringify(exportModel);\n\n return this.httpClient.post(_url, _body, { observe: 'response', responseType: 'blob' })\n .pipe(map((r: HttpResponse<Blob>) => this.getFileInfo(r)));\n }\n\n public getFileInfo(resp: HttpResponse<Blob>): { fileBlob: Blob, fileName: string } {\n var type = resp.headers.get(\"Content-Type\");\n let b = new Blob([resp.body], { type: type });\n return {\n fileBlob: b,\n fileName: (resp.headers.get(\"Content-Disposition\") || \"\").split(\";\")[1].trim().split(\"=\")[1].replace(/['\"]/g, '')\n };\n }\n\n uploadFileToExtract(file: File, inputId: number, correlationId: string) {\n return this.uploadFiles(\"/DataImport/PostImportFile\", [file], { inputId: inputId, correlationId: correlationId });\n }\n\n uploadFilesWithParams(files: File[], customParams?: {}, forceMultipleFiles: boolean = false): Observable<any> {\n\n const _url = this.baseUrl + \"/DataImport/PostFiles\";\n\n let formData = new FormData();\n if (files.length == 1 && !forceMultipleFiles) {\n formData.append('file', files[0]);\n }\n else {\n for (var i = 0; i < files.length; i++) {\n formData.append('files', files[i]);\n }\n }\n\n formData.append('data', JSON.stringify((customParams as any).dataModel));\n let params = new HttpParams();\n\n return this.httpClient.post(_url, formData, {\n params,\n reportProgress: true,\n observe: 'body',\n headers: this.headerService.authFileUploadHeaders()\n });\n }\n\n uploadFiles(url: string, files: File[], customParams?: {}, forceMultipleFiles: boolean = false): Observable<any> {\n\n const _url = this.baseUrl + url;\n\n let formData = new FormData();\n if (files.length == 1 && !forceMultipleFiles) {\n formData.append('file', files[0]);\n }\n else {\n for (var i = 0; i < files.length; i++) {\n formData.append('files', files[i]);\n }\n }\n\n if (customParams) {\n for (let p in customParams) {\n if (customParams.hasOwnProperty(p)) {\n formData.append(p, customParams[p]);\n }\n }\n }\n\n let params = new HttpParams();\n\n\n return this.httpClient.post(_url, formData, {\n params,\n reportProgress: true,\n observe: 'body',\n headers: this.headerService.authFileUploadHeaders()\n });\n }\n\n uploadFilesWithEvents(url: string, files: File[], customParams?: {}, forceMultipleFiles: boolean = false): Observable<any> {\n\n const _url = this.baseUrl + url;\n\n let formData = new FormData();\n if (files.length == 1 && !forceMultipleFiles) {\n formData.append('file', files[0]);\n }\n else {\n for (var i = 0; i < files.length; i++) {\n formData.append('files', files[i]);\n }\n }\n\n if (customParams) {\n for (let p in customParams) {\n if (customParams.hasOwnProperty(p)) {\n formData.append(p, customParams[p]);\n }\n }\n }\n\n let params = new HttpParams();\n return this.httpClient.post<any>(_url, formData, {\n params,\n reportProgress: true,\n observe: 'events',\n headers: this.headerService.authFileUploadHeaders()\n });\n\n }\n}\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { DataService } from './services/data-service';\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n providers: [DataService]\r\n})\r\nexport class CoreDataModule {}\r\n","import { ActionDescriptor, ColumnDescriptor, EntityViewModel, EntityViewModelWithFields, EntityWithSpecifics, ExportModel, ExtendedProperty, FilterDescriptor, FilterViewModel, PagedList, SaveResult, SaveResults, TrackRecordProperty } from '@dflat-core/web/core-model';\n\nimport { DataService } from './data-service';\nimport { HttpResponse } from '@angular/common/http';\nimport { Directive } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n@Directive()\nexport abstract class EntityDataService<TData extends EntityViewModel, TFilter extends FilterViewModel> \n{\n abstract getEntityKey(): string;\n\n constructor(protected dataService : DataService) {}\n deleteEntities (sources:TData[]) : Observable<SaveResults<TData>> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/DeleteEntities`;\n const requestParams = this.dataService.getFormattedParams(sources);\n return this.dataService.httpClient.post<SaveResults<TData>>(_url, requestParams);\n }\n\n deleteEntity (source:TData) : Observable<SaveResult> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/DeleteEntity`;\n const requestParams = this.dataService.getFormattedParams(source);\n return this.dataService.httpClient.post<SaveResult>(_url, requestParams);\n }\n\n exportAll (filter:TFilter) {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ExportAll`;\n const requestParams = this.dataService.getFormattedParams(filter);\n return this.dataService.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' }).pipe(map((r: HttpResponse<Blob>) => this.dataService.getFileInfo(r)));\n }\n\n exportResults (model:ExportModel<TFilter>) {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ExportResults`;\n const requestParams = this.dataService.getFormattedParams(model);\n return this.dataService.httpClient.get(_url, { observe: 'response', params: requestParams, withCredentials: true, responseType: 'blob' }).pipe(map((r: HttpResponse<Blob>) => this.dataService.getFileInfo(r)));\n }\n\n getAlternateEntityViewModel (id:number) : Observable<EntityViewModelWithFields<TData>> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetAlternateEntityViewModel`;\n const requestParams = this.dataService.getUrlQueryParams({ id:id });\n return this.dataService.httpClient.get<EntityViewModelWithFields<TData>>(_url, { params: requestParams });\n }\n\n getCacheManager () : Observable<TData[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetCacheManager`;\n return this.dataService.httpClient.get<TData[]>(_url, {});\n }\n\n getColumns () : Observable<ColumnDescriptor[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetColumns`;\n return this.dataService.httpClient.get<ColumnDescriptor[]>(_url, {});\n }\n\n getDetails (id:number) : Observable<TData> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetDetails`;\n const requestParams = this.dataService.getUrlQueryParams({ id:id });\n return this.dataService.httpClient.get<TData>(_url, { params: requestParams });\n }\n\n getEmptyFilter () : Observable<TFilter> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetEmptyFilter`;\n return this.dataService.httpClient.get<TFilter>(_url, {});\n }\n\n getEntityViewModel (id:number) : Observable<EntityViewModelWithFields<TData>> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetEntityViewModel`;\n const requestParams = this.dataService.getUrlQueryParams({ id:id });\n return this.dataService.httpClient.get<EntityViewModelWithFields<TData>>(_url, { params: requestParams });\n }\n\n getExtendedActions () : Observable<ActionDescriptor[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetExtendedActions`;\n return this.dataService.httpClient.get<ActionDescriptor[]>(_url, {});\n }\n\n getExtendedProperties (entityIds:number[]) : Observable<ExtendedProperty[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetExtendedProperties`;\n const requestParams = this.dataService.getUrlQueryParams({ entityIds:entityIds });\n return this.dataService.httpClient.get<ExtendedProperty[]>(_url, { params: requestParams });\n }\n\n getFilterDescriptors () : Observable<FilterDescriptor[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetFilterDescriptors`;\n return this.dataService.httpClient.get<FilterDescriptor[]>(_url, {});\n }\n\n getSortColumn (col:string) : Observable<string> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetSortColumn`;\n const requestParams = this.dataService.getUrlQueryParams({ col:col });\n return this.dataService.httpClient.get<string>(_url, { params: requestParams });\n }\n\n getTrackRecordProperties (entityIds:number[]) : Observable<TrackRecordProperty[]> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/GetTrackRecordProperties`;\n const requestParams = this.dataService.getUrlQueryParams({ entityIds:entityIds });\n return this.dataService.httpClient.get<TrackRecordProperty[]>(_url, { params: requestParams });\n }\n \n saveEntities (sources:TData[]) : Observable<SaveResults<TData>> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntities`;\n const requestParams = this.dataService.getFormattedParams(sources);\n return this.dataService.httpClient.post<SaveResults<TData>>(_url, requestParams);\n }\n\n saveEntity (source:TData) : Observable<SaveResult> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntity`;\n const requestParams = this.dataService.getFormattedParams(source);\n return this.dataService.httpClient.post<SaveResult>(_url, requestParams);\n }\n\n saveEntityWithSpecifics (source:EntityWithSpecifics<TData>) : Observable<any> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/SaveEntityWithSpecifics`;\n const requestParams = this.dataService.getFormattedParams(source);\n return this.dataService.httpClient.post<any>(_url, requestParams);\n }\n\n search (filter:TFilter) : Observable<PagedList<TData>> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/Search`;\n const requestParams = this.dataService.getFormattedParams(filter);\n return this.dataService.httpClient.get<PagedList<TData>>(_url, { params: requestParams });\n }\n\n toggleFavorite (filter:TFilter) : Observable<any> {\n const _url = this.dataService.baseUrl + `/${this.getEntityKey()}/ToggleFavorite`;\n const requestParams = this.dataService.getFormattedParams(filter);\n return this.dataService.httpClient.post<any>(_url, requestParams);\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DataService"],"mappings":"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"}