@unifylib/ui-lib 1.1.3 → 1.1.4

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 (286) hide show
  1. package/esm2022/iq-ui-lib.mjs +5 -0
  2. package/esm2022/lib/base-model/SearchStrConfig.mjs +11 -0
  3. package/esm2022/lib/base-model/api-response.mjs +2 -0
  4. package/esm2022/lib/base-model/audit-log-entry.mjs +3 -0
  5. package/esm2022/lib/base-model/button-action-settings.mjs +16 -0
  6. package/esm2022/lib/base-model/column-def.model.mjs +28 -0
  7. package/esm2022/lib/base-model/do-action-request.mjs +8 -0
  8. package/esm2022/lib/base-model/field-action.mjs +6 -0
  9. package/esm2022/lib/base-model/field-filter.model.mjs +3 -0
  10. package/esm2022/lib/base-model/field-info.mjs +57 -0
  11. package/esm2022/lib/base-model/field-predicate.model.mjs +10 -0
  12. package/esm2022/lib/base-model/filter-request.mjs +13 -0
  13. package/esm2022/lib/base-model/filter.model.mjs +25 -0
  14. package/esm2022/lib/base-model/get-items-list.mjs +10 -0
  15. package/esm2022/lib/base-model/index.mjs +12 -0
  16. package/esm2022/lib/base-model/items-total.model.mjs +8 -0
  17. package/esm2022/lib/base-model/line-item.model.mjs +11 -0
  18. package/esm2022/lib/base-model/lookupItem.mjs +16 -0
  19. package/esm2022/lib/base-model/page-info.mjs +17 -0
  20. package/esm2022/lib/base-model/report-request.model.mjs +17 -0
  21. package/esm2022/lib/base-model/response-envelop.model.mjs +10 -0
  22. package/esm2022/lib/base-model/snack-message.model.mjs +11 -0
  23. package/esm2022/lib/base-model/table-column.interface.mjs +2 -0
  24. package/esm2022/lib/base-model/table-page-user-action.interface.mjs +21 -0
  25. package/esm2022/lib/base-model/workflow/workflow-steps.model.mjs +9 -0
  26. package/esm2022/lib/base-model/workflow/workflow.model.mjs +42 -0
  27. package/esm2022/lib/components/action-comment/action-comment.component.mjs +101 -0
  28. package/esm2022/lib/components/action-confirmation/action-confirmation.component.mjs +55 -0
  29. package/esm2022/lib/components/activity-report-form/activity-report-form.component.mjs +499 -0
  30. package/esm2022/lib/components/advanced-filter/field-filter/field-filter.component.mjs +41 -0
  31. package/esm2022/lib/components/advanced-filter/filter-builder/filter-builder.component.mjs +162 -0
  32. package/esm2022/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.mjs +70 -0
  33. package/esm2022/lib/components/audit-log-list/audit-log.component.mjs +99 -0
  34. package/esm2022/lib/components/auto-complete/auto-complete.component.mjs +292 -0
  35. package/esm2022/lib/components/base-form/base-form.component.mjs +297 -0
  36. package/esm2022/lib/components/base-form-canvas/base-form-canvas.component.mjs +591 -0
  37. package/esm2022/lib/components/base-input-dialog/base-input-dialog.component.mjs +72 -0
  38. package/esm2022/lib/components/base-table/base-table.component.mjs +514 -0
  39. package/esm2022/lib/components/button-actions/button-actions.component.mjs +70 -0
  40. package/esm2022/lib/components/editable-base-table/editable-base-table.component.mjs +496 -0
  41. package/esm2022/lib/components/equation-builder/equation-builder.component.mjs +112 -0
  42. package/esm2022/lib/components/item-line-editor/item-line-editor.component.mjs +299 -0
  43. package/esm2022/lib/components/multi-auto-complete/multi-auto-complete.component.mjs +278 -0
  44. package/esm2022/lib/components/paginator/paginator.component.mjs +91 -0
  45. package/esm2022/lib/components/report-details-dialog/report-details-dialog.component.mjs +102 -0
  46. package/esm2022/lib/components/report-form/report-form.component.mjs +498 -0
  47. package/esm2022/lib/components/search-bar/search-bar.component.mjs +62 -0
  48. package/esm2022/lib/components/section-form-canvas/section-form-canvas.component.mjs +81 -0
  49. package/esm2022/lib/components/shared/action-button/action-button.component.mjs +59 -0
  50. package/esm2022/lib/components/shared/action-card/action-card.component.mjs +93 -0
  51. package/esm2022/lib/components/shared/attachment-uploader/attachment-uploader.component.mjs +70 -0
  52. package/esm2022/lib/components/shared-list/shared-list.component.mjs +47 -0
  53. package/esm2022/lib/components/snackbar-static/snackbar-static.component.mjs +43 -0
  54. package/esm2022/lib/components/title-bar/title-bar.component.mjs +119 -0
  55. package/esm2022/lib/services/backend-service.mjs +240 -0
  56. package/esm2022/lib/services/index.mjs +4 -0
  57. package/esm2022/lib/services/top-panel.mjs +22 -0
  58. package/esm2022/lib/services/trigger-form.service.mjs +17 -0
  59. package/esm2022/lib/utils/base-utils.mjs +97 -0
  60. package/esm2022/lib/validators/date-range-validator.mjs +27 -0
  61. package/esm2022/lib/validators/index.mjs +4 -0
  62. package/esm2022/lib/validators/match-list.validator.mjs +9 -0
  63. package/esm2022/lib/validators/multi-email-validator.mjs +13 -0
  64. package/esm2022/public-api.mjs +29 -0
  65. package/esm2022/q-btech-ui-lib.mjs +5 -0
  66. package/esm2022/unifylib-ui-lib.mjs +5 -0
  67. package/fesm2022/iq-ui-lib.mjs +5625 -0
  68. package/fesm2022/iq-ui-lib.mjs.map +1 -0
  69. package/fesm2022/q-btech-ui-lib.mjs +5619 -0
  70. package/fesm2022/q-btech-ui-lib.mjs.map +1 -0
  71. package/fesm2022/unifylib-ui-lib.mjs +5625 -0
  72. package/fesm2022/unifylib-ui-lib.mjs.map +1 -0
  73. package/index.d.ts +5 -0
  74. package/lib/base-model/SearchStrConfig.d.ts +8 -0
  75. package/{src/lib/base-model/api-response.ts → lib/base-model/api-response.d.ts} +21 -23
  76. package/lib/base-model/audit-log-entry.d.ts +7 -0
  77. package/lib/base-model/button-action-settings.d.ts +15 -0
  78. package/lib/base-model/column-def.model.d.ts +11 -0
  79. package/lib/base-model/do-action-request.d.ts +10 -0
  80. package/lib/base-model/field-action.d.ts +6 -0
  81. package/lib/base-model/field-filter.model.d.ts +7 -0
  82. package/lib/base-model/field-info.d.ts +53 -0
  83. package/lib/base-model/field-predicate.model.d.ts +7 -0
  84. package/lib/base-model/filter-request.d.ts +15 -0
  85. package/lib/base-model/filter.model.d.ts +22 -0
  86. package/lib/base-model/get-items-list.d.ts +21 -0
  87. package/lib/base-model/index.d.ts +11 -0
  88. package/lib/base-model/items-total.model.d.ts +6 -0
  89. package/lib/base-model/line-item.model.d.ts +9 -0
  90. package/lib/base-model/lookupItem.d.ts +13 -0
  91. package/lib/base-model/page-info.d.ts +52 -0
  92. package/lib/base-model/report-request.model.d.ts +18 -0
  93. package/lib/base-model/response-envelop.model.d.ts +8 -0
  94. package/lib/base-model/snack-message.model.d.ts +7 -0
  95. package/lib/base-model/table-column.interface.d.ts +28 -0
  96. package/lib/base-model/table-page-user-action.interface.d.ts +14 -0
  97. package/lib/base-model/workflow/workflow-steps.model.d.ts +7 -0
  98. package/lib/base-model/workflow/workflow.model.d.ts +13 -0
  99. package/lib/components/action-comment/action-comment.component.d.ts +32 -0
  100. package/lib/components/action-confirmation/action-confirmation.component.d.ts +19 -0
  101. package/lib/components/activity-report-form/activity-report-form.component.d.ts +93 -0
  102. package/lib/components/advanced-filter/field-filter/field-filter.component.d.ts +20 -0
  103. package/lib/components/advanced-filter/filter-builder/filter-builder.component.d.ts +28 -0
  104. package/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.d.ts +25 -0
  105. package/lib/components/audit-log-list/audit-log.component.d.ts +36 -0
  106. package/lib/components/auto-complete/auto-complete.component.d.ts +51 -0
  107. package/lib/components/base-form/base-form.component.d.ts +59 -0
  108. package/lib/components/base-form-canvas/base-form-canvas.component.d.ts +124 -0
  109. package/lib/components/base-input-dialog/base-input-dialog.component.d.ts +23 -0
  110. package/lib/components/base-table/base-table.component.d.ts +128 -0
  111. package/lib/components/button-actions/button-actions.component.d.ts +17 -0
  112. package/lib/components/editable-base-table/editable-base-table.component.d.ts +106 -0
  113. package/lib/components/equation-builder/equation-builder.component.d.ts +23 -0
  114. package/lib/components/item-line-editor/item-line-editor.component.d.ts +64 -0
  115. package/lib/components/multi-auto-complete/multi-auto-complete.component.d.ts +51 -0
  116. package/lib/components/paginator/paginator.component.d.ts +26 -0
  117. package/lib/components/report-details-dialog/report-details-dialog.component.d.ts +34 -0
  118. package/lib/components/report-form/report-form.component.d.ts +92 -0
  119. package/lib/components/search-bar/search-bar.component.d.ts +29 -0
  120. package/lib/components/section-form-canvas/section-form-canvas.component.d.ts +27 -0
  121. package/lib/components/shared/action-button/action-button.component.d.ts +17 -0
  122. package/lib/components/shared/action-card/action-card.component.d.ts +37 -0
  123. package/lib/components/shared/attachment-uploader/attachment-uploader.component.d.ts +16 -0
  124. package/lib/components/shared-list/shared-list.component.d.ts +21 -0
  125. package/lib/components/snackbar-static/snackbar-static.component.d.ts +15 -0
  126. package/lib/components/title-bar/title-bar.component.d.ts +42 -0
  127. package/lib/services/backend-service.d.ts +59 -0
  128. package/{src/lib/services/index.ts → lib/services/index.d.ts} +3 -3
  129. package/lib/services/top-panel.d.ts +8 -0
  130. package/lib/services/trigger-form.service.d.ts +7 -0
  131. package/lib/utils/base-utils.d.ts +13 -0
  132. package/lib/validators/date-range-validator.d.ts +2 -0
  133. package/{src/lib/validators/index.ts → lib/validators/index.d.ts} +3 -3
  134. package/lib/validators/match-list.validator.d.ts +4 -0
  135. package/lib/validators/multi-email-validator.d.ts +6 -0
  136. package/package.json +27 -14
  137. package/{src/public-api.ts → public-api.d.ts} +25 -29
  138. package/ng-package.json +0 -7
  139. package/src/lib/base-model/SearchStrConfig.ts +0 -12
  140. package/src/lib/base-model/audit-log-entry.ts +0 -7
  141. package/src/lib/base-model/button-action-settings.ts +0 -29
  142. package/src/lib/base-model/column-def.model.ts +0 -34
  143. package/src/lib/base-model/do-action-request.ts +0 -11
  144. package/src/lib/base-model/feature-item.ts +0 -9
  145. package/src/lib/base-model/field-action.ts +0 -7
  146. package/src/lib/base-model/field-filter.model.ts +0 -7
  147. package/src/lib/base-model/field-info.ts +0 -102
  148. package/src/lib/base-model/field-predicate.model.ts +0 -7
  149. package/src/lib/base-model/filter-request.ts +0 -27
  150. package/src/lib/base-model/filter.model.ts +0 -49
  151. package/src/lib/base-model/get-items-list.ts +0 -24
  152. package/src/lib/base-model/index.ts +0 -11
  153. package/src/lib/base-model/items-total.model.ts +0 -12
  154. package/src/lib/base-model/line-item.model.ts +0 -18
  155. package/src/lib/base-model/lookupItem.ts +0 -21
  156. package/src/lib/base-model/null-snackmessage.ts +0 -9
  157. package/src/lib/base-model/page-info.ts +0 -54
  158. package/src/lib/base-model/report-request.model.ts +0 -33
  159. package/src/lib/base-model/response-envelop.model.ts +0 -15
  160. package/src/lib/base-model/snack-message.model.ts +0 -14
  161. package/src/lib/base-model/snackmessage-interface.ts +0 -7
  162. package/src/lib/base-model/table-column.interface.ts +0 -29
  163. package/src/lib/base-model/table-page-user-action.interface.ts +0 -33
  164. package/src/lib/base-model/workflow/workflow-steps.model.ts +0 -9
  165. package/src/lib/base-model/workflow/workflow.model.ts +0 -52
  166. package/src/lib/components/action-comment/action-comment.component.css +0 -52
  167. package/src/lib/components/action-comment/action-comment.component.html +0 -47
  168. package/src/lib/components/action-comment/action-comment.component.spec.ts +0 -23
  169. package/src/lib/components/action-comment/action-comment.component.ts +0 -102
  170. package/src/lib/components/action-confirmation/action-confirmation.component.css +0 -46
  171. package/src/lib/components/action-confirmation/action-confirmation.component.html +0 -32
  172. package/src/lib/components/action-confirmation/action-confirmation.component.spec.ts +0 -23
  173. package/src/lib/components/action-confirmation/action-confirmation.component.ts +0 -58
  174. package/src/lib/components/activity-report-form/activity-report-form.component.html +0 -110
  175. package/src/lib/components/activity-report-form/activity-report-form.component.scss +0 -69
  176. package/src/lib/components/activity-report-form/activity-report-form.component.spec.ts +0 -25
  177. package/src/lib/components/activity-report-form/activity-report-form.component.ts +0 -616
  178. package/src/lib/components/advanced-filter/field-filter/field-filter.component.html +0 -8
  179. package/src/lib/components/advanced-filter/field-filter/field-filter.component.scss +0 -0
  180. package/src/lib/components/advanced-filter/field-filter/field-filter.component.spec.ts +0 -25
  181. package/src/lib/components/advanced-filter/field-filter/field-filter.component.ts +0 -55
  182. package/src/lib/components/advanced-filter/filter-builder/filter-builder.component.html +0 -36
  183. package/src/lib/components/advanced-filter/filter-builder/filter-builder.component.scss +0 -130
  184. package/src/lib/components/advanced-filter/filter-builder/filter-builder.component.spec.ts +0 -25
  185. package/src/lib/components/advanced-filter/filter-builder/filter-builder.component.ts +0 -186
  186. package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.css +0 -51
  187. package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.html +0 -23
  188. package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.spec.ts +0 -23
  189. package/src/lib/components/audit-log-details-dialog/audit-log-details-dialog.component.ts +0 -69
  190. package/src/lib/components/audit-log-list/audit-log.component.html +0 -26
  191. package/src/lib/components/audit-log-list/audit-log.component.scss +0 -50
  192. package/src/lib/components/audit-log-list/audit-log.component.spec.ts +0 -25
  193. package/src/lib/components/audit-log-list/audit-log.component.ts +0 -114
  194. package/src/lib/components/auto-complete/auto-complete.component.css +0 -55
  195. package/src/lib/components/auto-complete/auto-complete.component.html +0 -45
  196. package/src/lib/components/auto-complete/auto-complete.component.spec.ts +0 -23
  197. package/src/lib/components/auto-complete/auto-complete.component.ts +0 -331
  198. package/src/lib/components/base-form/base-form.component.html +0 -59
  199. package/src/lib/components/base-form/base-form.component.scss +0 -68
  200. package/src/lib/components/base-form/base-form.component.spec.ts +0 -25
  201. package/src/lib/components/base-form/base-form.component.ts +0 -323
  202. package/src/lib/components/base-form-canvas/base-form-canvas.component.css +0 -196
  203. package/src/lib/components/base-form-canvas/base-form-canvas.component.html +0 -1095
  204. package/src/lib/components/base-form-canvas/base-form-canvas.component.spec.ts +0 -23
  205. package/src/lib/components/base-form-canvas/base-form-canvas.component.ts +0 -680
  206. package/src/lib/components/base-input-dialog/base-input-dialog.component.css +0 -67
  207. package/src/lib/components/base-input-dialog/base-input-dialog.component.html +0 -47
  208. package/src/lib/components/base-input-dialog/base-input-dialog.component.spec.ts +0 -23
  209. package/src/lib/components/base-input-dialog/base-input-dialog.component.ts +0 -77
  210. package/src/lib/components/base-table/base-table.component.html +0 -268
  211. package/src/lib/components/base-table/base-table.component.scss +0 -140
  212. package/src/lib/components/base-table/base-table.component.spec.ts +0 -25
  213. package/src/lib/components/base-table/base-table.component.ts +0 -621
  214. package/src/lib/components/button-actions/button-actions.component.html +0 -27
  215. package/src/lib/components/button-actions/button-actions.component.scss +0 -101
  216. package/src/lib/components/button-actions/button-actions.component.spec.ts +0 -23
  217. package/src/lib/components/button-actions/button-actions.component.ts +0 -70
  218. package/src/lib/components/editable-base-table/editable-base-table.component.html +0 -337
  219. package/src/lib/components/editable-base-table/editable-base-table.component.scss +0 -126
  220. package/src/lib/components/editable-base-table/editable-base-table.component.spec.ts +0 -25
  221. package/src/lib/components/editable-base-table/editable-base-table.component.ts +0 -579
  222. package/src/lib/components/equation-builder/equation-builder.component.css +0 -39
  223. package/src/lib/components/equation-builder/equation-builder.component.html +0 -31
  224. package/src/lib/components/equation-builder/equation-builder.component.spec.ts +0 -23
  225. package/src/lib/components/equation-builder/equation-builder.component.ts +0 -119
  226. package/src/lib/components/item-line-editor/item-line-editor.component.html +0 -102
  227. package/src/lib/components/item-line-editor/item-line-editor.component.scss +0 -152
  228. package/src/lib/components/item-line-editor/item-line-editor.component.spec.ts +0 -23
  229. package/src/lib/components/item-line-editor/item-line-editor.component.ts +0 -306
  230. package/src/lib/components/multi-auto-complete/multi-auto-complete.component.css +0 -19
  231. package/src/lib/components/multi-auto-complete/multi-auto-complete.component.html +0 -38
  232. package/src/lib/components/multi-auto-complete/multi-auto-complete.component.spec.ts +0 -23
  233. package/src/lib/components/multi-auto-complete/multi-auto-complete.component.ts +0 -315
  234. package/src/lib/components/paginator/paginator.component.css +0 -65
  235. package/src/lib/components/paginator/paginator.component.html +0 -30
  236. package/src/lib/components/paginator/paginator.component.ts +0 -87
  237. package/src/lib/components/report-details-dialog/report-details-dialog.component.css +0 -17
  238. package/src/lib/components/report-details-dialog/report-details-dialog.component.html +0 -16
  239. package/src/lib/components/report-details-dialog/report-details-dialog.component.spec.ts +0 -23
  240. package/src/lib/components/report-details-dialog/report-details-dialog.component.ts +0 -111
  241. package/src/lib/components/report-form/report-form.component.html +0 -92
  242. package/src/lib/components/report-form/report-form.component.scss +0 -51
  243. package/src/lib/components/report-form/report-form.component.spec.ts +0 -25
  244. package/src/lib/components/report-form/report-form.component.ts +0 -599
  245. package/src/lib/components/search-bar/search-bar.component.html +0 -51
  246. package/src/lib/components/search-bar/search-bar.component.scss +0 -63
  247. package/src/lib/components/search-bar/search-bar.component.spec.ts +0 -25
  248. package/src/lib/components/search-bar/search-bar.component.ts +0 -68
  249. package/src/lib/components/section-form-canvas/section-form-canvas.component.html +0 -43
  250. package/src/lib/components/section-form-canvas/section-form-canvas.component.scss +0 -81
  251. package/src/lib/components/section-form-canvas/section-form-canvas.component.spec.ts +0 -23
  252. package/src/lib/components/section-form-canvas/section-form-canvas.component.ts +0 -67
  253. package/src/lib/components/shared/action-button/action-button.component.html +0 -12
  254. package/src/lib/components/shared/action-button/action-button.component.scss +0 -45
  255. package/src/lib/components/shared/action-button/action-button.component.ts +0 -51
  256. package/src/lib/components/shared/action-card/action-card.component.html +0 -78
  257. package/src/lib/components/shared/action-card/action-card.component.scss +0 -238
  258. package/src/lib/components/shared/action-card/action-card.component.ts +0 -56
  259. package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.css +0 -135
  260. package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.html +0 -36
  261. package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.spec.ts +0 -23
  262. package/src/lib/components/shared/attachment-uploader/attachment-uploader.component.ts +0 -71
  263. package/src/lib/components/shared-list/shared-list.component.css +0 -0
  264. package/src/lib/components/shared-list/shared-list.component.html +0 -17
  265. package/src/lib/components/shared-list/shared-list.component.spec.ts +0 -23
  266. package/src/lib/components/shared-list/shared-list.component.ts +0 -53
  267. package/src/lib/components/snackbar-static/snackbar-static.component.html +0 -20
  268. package/src/lib/components/snackbar-static/snackbar-static.component.scss +0 -135
  269. package/src/lib/components/snackbar-static/snackbar-static.component.ts +0 -26
  270. package/src/lib/components/title-bar/title-bar.component.css +0 -0
  271. package/src/lib/components/title-bar/title-bar.component.css.map +0 -1
  272. package/src/lib/components/title-bar/title-bar.component.html +0 -35
  273. package/src/lib/components/title-bar/title-bar.component.scss +0 -126
  274. package/src/lib/components/title-bar/title-bar.component.spec.ts +0 -23
  275. package/src/lib/components/title-bar/title-bar.component.ts +0 -126
  276. package/src/lib/services/backend-service.ts +0 -287
  277. package/src/lib/services/top-panel.ts +0 -17
  278. package/src/lib/services/trigger-form.service.ts +0 -11
  279. package/src/lib/share-module/shared-module.ts +0 -10
  280. package/src/lib/utils/base-utils.ts +0 -102
  281. package/src/lib/validators/date-range-validator.ts +0 -31
  282. package/src/lib/validators/match-list.validator.ts +0 -10
  283. package/src/lib/validators/multi-email-validator.ts +0 -15
  284. package/tsconfig.lib.json +0 -15
  285. package/tsconfig.lib.prod.json +0 -11
  286. package/tsconfig.spec.json +0 -15
@@ -1,63 +0,0 @@
1
- ::ng-deep .search__button {
2
- display: flex;
3
- align-items: center;
4
- justify-content: center;
5
- height: 56px;
6
- margin-top: -6px;
7
-
8
- }
9
- .row {
10
- display: flex;
11
- flex-direction: row;
12
- width: 100%;
13
- }
14
-
15
- .column {
16
- display: flex;
17
- flex-direction: column;
18
- width: 100%;
19
- }
20
-
21
- .align-start-center {
22
- align-items: center;
23
- justify-content: flex-start;
24
- }
25
-
26
- .align-center-center {
27
- align-items: center;
28
- justify-content: center;
29
- }
30
-
31
- .gap-16 > * + * {
32
- margin-left: 16px;
33
- }
34
-
35
- .flex-50 {
36
- flex: 0 0 50%;
37
- }
38
-
39
- .flex-15 {
40
- flex: 0 0 15%;
41
- }
42
-
43
- .flex-10 {
44
- flex: 0 0 10%;
45
- }
46
-
47
- .search {
48
- width: 100%;
49
- padding: 0 16px;
50
- margin-bottom: 16px;
51
- }
52
-
53
- .search__button {
54
- margin-bottom: 6px;
55
- }
56
-
57
- .icon-search {
58
- height: 30px;
59
- width: 30px;
60
- font-size: 30px;
61
- margin-bottom: 15px;
62
- cursor: pointer;
63
- }
@@ -1,25 +0,0 @@
1
- import {async, ComponentFixture, TestBed} from '@angular/core/testing';
2
-
3
- import {SearchBarComponent} from './search-bar.component';
4
-
5
- describe('SearchBarComponent', () => {
6
- let component: SearchBarComponent;
7
- let fixture: ComponentFixture<SearchBarComponent>;
8
-
9
- beforeEach(async(() => {
10
- TestBed.configureTestingModule({
11
- declarations: [ SearchBarComponent ]
12
- })
13
- .compileComponents();
14
- }));
15
-
16
- beforeEach(() => {
17
- fixture = TestBed.createComponent(SearchBarComponent);
18
- component = fixture.componentInstance;
19
- fixture.detectChanges();
20
- });
21
-
22
- it('should create', () => {
23
- expect(component).toBeTruthy();
24
- });
25
- });
@@ -1,68 +0,0 @@
1
- import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';
2
- import {MatFormField, MatLabel} from "@angular/material/form-field";
3
- import {MatOption, MatSelect} from "@angular/material/select";
4
- import {FormsModule} from "@angular/forms";
5
- import {MatIcon} from "@angular/material/icon";
6
- import {MatInput} from "@angular/material/input";
7
- import {MatIconButton} from "@angular/material/button";
8
- import {NgForOf} from "@angular/common";
9
- import {TableColumn} from "../../base-model";
10
- import {TranslateModule} from "@ngx-translate/core";
11
- type SearchType = 'exact' | 'like';
12
- type SortType = 'ASC' | 'DESC';
13
- @Component({
14
- selector: 'ag-search-bar',
15
- templateUrl: './search-bar.component.html',
16
- standalone: true,
17
- imports: [
18
- MatFormField,
19
- MatSelect,
20
- MatOption,
21
- FormsModule,
22
- MatIcon,
23
- MatInput,
24
- MatIconButton,
25
- NgForOf,
26
- TranslateModule
27
- ],
28
- styleUrls: ['./search-bar.component.scss']
29
- })
30
- export class SearchBarComponent implements OnInit {
31
- @Input() columns: TableColumn<any>[];
32
- @Input() defaultSortKey: string = '';
33
-
34
- searchValue: string = '';
35
- searchType: SearchType = 'like';
36
- selectedSortKey: string = '';
37
- selectedSortType: SortType = 'ASC';
38
- @Output() searchTriggered = new EventEmitter<{
39
- searchValue: string;
40
- searchType: SearchType;
41
- sortKey: string;
42
- sortType: string;
43
- }>();
44
-
45
- onSearch() {
46
- this.selectedSortKey ||= this.defaultSortKey || this.columns[0]?.property;
47
-
48
- this.searchTriggered.emit({
49
- searchValue: this.searchValue,
50
- searchType: this.searchType,
51
- sortKey: this.selectedSortKey,
52
- sortType: this.selectedSortType
53
- });
54
- }
55
-
56
- labelKey(column: { label?: string; property: string }): string {
57
- return column.label || column.property;
58
- }
59
-
60
- ngOnInit(): void {
61
- }
62
-
63
- getColumns() {
64
- return this.columns.filter(
65
- (column) => ['text', 'date', 'localDateTime'].includes(column.type)
66
- );
67
- }
68
- }
@@ -1,43 +0,0 @@
1
- <mat-expansion-panel class="location-card"
2
- #panel="matExpansionPanel"
3
- [expanded]="isExpanded"
4
- [hideToggle]="hideToggle"
5
- (opened)="alwaysOpen ? panel.open() : null"
6
- (closed)="alwaysOpen ? panel.open() : null">
7
- <mat-expansion-panel-header class="card-header" (click)="toggleExpand()">
8
- <mat-panel-title>
9
- <h3 class="card-title" *ngIf="isTranslateTitle">
10
- {{ pageInfo.labelsSection + '.' + title | translate }}
11
- </h3>
12
- <h3 class="card-title" *ngIf="!isTranslateTitle">{{ title }}</h3>
13
- </mat-panel-title>
14
-
15
- <mat-panel-description class="panel-description">
16
- <div class="row flex-auto buttons-wrapper">
17
- <button
18
- mat-flat-button
19
- *ngFor="let btn of buttons"
20
- [color]="btn.color || 'primary'"
21
- (click)="onButtonClick(btn , key); $event.stopPropagation()"
22
- class="btn-none-background-primary action"
23
- [attr.id]="btn.id || ('section-btn-' + (btn.action || btn.label || btn.key))"
24
- >
25
- <div class="button-text">
26
- <mat-icon *ngIf="btn.icon">{{ btn.icon }}</mat-icon>
27
- <span>{{ btn.label | translate }}</span>
28
- </div>
29
- </button>
30
- </div>
31
- </mat-panel-description>
32
- </mat-expansion-panel-header>
33
- <div class="panel-body">
34
- <hr class="divider"/>
35
- <app-base-form-canvas
36
- [pageInfo]="pageInfo"
37
- [fields]="fields"
38
- [editable]="editable"
39
- [item]="item"
40
- (formUpdated)="formUpdated($event)"
41
- ></app-base-form-canvas>
42
- </div>
43
- </mat-expansion-panel>
@@ -1,81 +0,0 @@
1
- .location-card {
2
- border: 1px solid #dcdcdc;
3
- border-radius: 8px;
4
- background: #fff;
5
- margin: 18px auto;
6
- overflow: hidden;
7
-
8
- .mat-expansion-panel-header {
9
- padding: 0 15px;
10
- }
11
- .panel-body {
12
- padding: 0 15px;
13
- }
14
- .panel-description {
15
- justify-content: end !important;
16
- margin: 0 !important;
17
- }
18
-
19
- .card-header {
20
- display: flex;
21
- justify-content: space-between;
22
- align-items: center;
23
-
24
- .card-title {
25
- margin: 0;
26
- font-size: 18px;
27
- font-weight: 600;
28
- color: #222;
29
- }
30
-
31
- .btn-edit {
32
- width: 120px;
33
- min-height: 32px !important;
34
- border-radius: 9999px !important;
35
- font-size: 16px !important;
36
- }
37
-
38
- .expand-icon {
39
- color: #339dff;
40
- font-size: 16px;
41
- }
42
- }
43
-
44
- .divider {
45
- border: none;
46
- border-top: 2px solid var(--primary-color-3nd);
47
- margin: 0 ;
48
- }
49
- }
50
- .flex-auto {
51
- flex: 1 1 auto;
52
- display: flex;
53
- flex-direction: column;
54
- }
55
- .row {
56
- display: flex;
57
- flex-direction: row;
58
- width: 100%;
59
- }
60
- .gap-20 {
61
- gap: 20px;
62
- }
63
- .buttons-wrapper {
64
- display: inline-block;
65
- text-align-last: end;
66
- margin: 0 !important;
67
-
68
- }
69
- .buttons-wrapper .action {
70
- min-height: 44px !important;
71
- min-width: 135px !important;
72
- width: auto !important;
73
- }
74
- .button-text {
75
- span{
76
- font-size: 18px;
77
- }
78
- mat-icon {
79
- font-size: 18px !important;
80
- }
81
- }
@@ -1,23 +0,0 @@
1
- import { ComponentFixture, TestBed } from '@angular/core/testing';
2
-
3
- import { SectionFormCanvasComponent } from './section-form-canvas.component';
4
-
5
- describe('SectionFormCanvasComponent', () => {
6
- let component: SectionFormCanvasComponent;
7
- let fixture: ComponentFixture<SectionFormCanvasComponent>;
8
-
9
- beforeEach(async () => {
10
- await TestBed.configureTestingModule({
11
- imports: [SectionFormCanvasComponent]
12
- })
13
- .compileComponents();
14
-
15
- fixture = TestBed.createComponent(SectionFormCanvasComponent);
16
- component = fixture.componentInstance;
17
- fixture.detectChanges();
18
- });
19
-
20
- it('should create', () => {
21
- expect(component).toBeTruthy();
22
- });
23
- });
@@ -1,67 +0,0 @@
1
- import {Component, EventEmitter, Input, Output} from '@angular/core';
2
- import {MatIcon} from "@angular/material/icon";
3
- import {MatButton} from "@angular/material/button";
4
- import {ButtonActionSettings, FieldInfo, PageInfo} from "../../base-model";
5
- import {BaseFormComponent} from "../base-form/base-form.component";
6
- import {BaseFormCanvasComponent} from "../base-form-canvas/base-form-canvas.component";
7
- import {NgForOf, NgIf} from "@angular/common";
8
- import {TranslateModule} from "@ngx-translate/core";
9
- import {FormGroup} from "@angular/forms";
10
- import {
11
- MatExpansionPanel,
12
- MatExpansionPanelHeader,
13
- MatExpansionPanelDescription,
14
- MatExpansionPanelTitle
15
- } from "@angular/material/expansion";
16
-
17
- @Component({
18
- selector: 'lib-section-form-canvas',
19
- standalone: true,
20
- imports: [
21
- MatIcon,
22
- MatButton,
23
- BaseFormComponent,
24
- BaseFormCanvasComponent,
25
- NgIf,
26
- TranslateModule,
27
- MatExpansionPanel,
28
- MatExpansionPanelTitle,
29
- MatExpansionPanelDescription,
30
- MatExpansionPanelHeader,
31
- NgForOf
32
- ],
33
- templateUrl: './section-form-canvas.component.html',
34
- styleUrl: './section-form-canvas.component.scss'
35
- })
36
- export class SectionFormCanvasComponent {
37
-
38
- @Input() pageInfo: PageInfo;
39
- @Input() fields: FieldInfo[];
40
- @Input() itemId: number;
41
- @Input() editable: boolean;
42
- @Input() hideBackButton: boolean;
43
- @Input() item: any;
44
- @Input() title: string;
45
- @Input() isTranslateTitle: boolean;
46
- @Input() key: number;
47
- @Input() hideToggle: boolean = true;
48
- @Input() isExpanded: boolean = true;
49
- @Input() alwaysOpen: boolean = true;
50
- @Output() actionEdit: EventEmitter<any> = new EventEmitter();
51
- @Output() formEdit: EventEmitter<FormGroup> = new EventEmitter();
52
- @Input() buttons: ButtonActionSettings[] = [];
53
- @Output() buttonClicked = new EventEmitter<any>();
54
-
55
- formUpdated($event) {
56
- this.formEdit.emit($event);
57
-
58
- }
59
-
60
- toggleExpand() {
61
- this.isExpanded = !this.isExpanded;
62
- }
63
-
64
- onButtonClick(btn: ButtonActionSettings, sectionKey: number): void {
65
- this.buttonClicked.emit({...btn , sectionKey: sectionKey});
66
- }
67
- }
@@ -1,12 +0,0 @@
1
- <button
2
- class="action-button"
3
- (click)="onButtonClick()"
4
- [style.background]="buttonGradient"
5
- [attr.id]="id || (buttonTextKey ? ('action-button-' + buttonTextKey) : 'action-button')"
6
- type="button">
7
- <span class="button-texts">
8
- <span *ngIf="buttonTextKey">{{ buttonTextKey | translate }}</span>
9
- <span *ngIf="!buttonTextKey">{{ buttonText }}</span>
10
- </span>
11
- <mat-icon class="arrow-icon" [class.arrow-rtl]="isArabic">arrow_forward</mat-icon>
12
- </button>
@@ -1,45 +0,0 @@
1
- .action-button {
2
- display: flex;
3
- align-items: center;
4
- justify-content: center;
5
- gap: 16px;
6
- height: 62px;
7
- border-radius: 16px;
8
- border: none;
9
- position: relative;
10
- overflow: hidden;
11
- cursor: pointer;
12
- width: 100%;
13
- padding: 0;
14
- background-size: cover;
15
- background-position: center;
16
- margin-top: 15px;
17
-
18
- .button-texts {
19
- font-family: 'lusail-medium', sans-serif !important;
20
- font-weight: 500 !important;
21
- font-size: 24px !important;
22
- line-height: 1.2 !important;
23
- color: #2e2e2e !important;
24
- white-space: nowrap;
25
- position: relative;
26
- z-index: 1;
27
- }
28
-
29
- .arrow-icon {
30
- font-size: 24px !important;
31
- width: 24px;
32
- height: 30px;
33
- color: #2e2e2e;
34
- position: relative;
35
- z-index: 1;
36
-
37
- &.arrow-rtl {
38
- transform: rotate(180deg);
39
- }
40
- }
41
-
42
- &:hover {
43
- opacity: 0.9;
44
- }
45
- }
@@ -1,51 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, inject, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { MatIconModule } from '@angular/material/icon';
4
- import { TranslateModule, TranslateService } from '@ngx-translate/core';
5
- import { Subject, takeUntil, startWith } from 'rxjs';
6
-
7
- @Component({
8
- selector: 'lib-action-button',
9
- standalone: true,
10
- imports: [
11
- CommonModule,
12
- MatIconModule,
13
- TranslateModule
14
- ],
15
- templateUrl: './action-button.component.html',
16
- styleUrl: './action-button.component.scss'
17
- })
18
- export class ActionButtonComponent implements OnInit, OnDestroy {
19
- private readonly translateService = inject(TranslateService);
20
- private readonly destroy$ = new Subject<void>();
21
-
22
- @Input() buttonText: string = '';
23
- @Input() buttonTextKey?: string;
24
- @Input() buttonGradient: string = 'linear-gradient(90deg, #E4C9D0 0%, #8A1538 100%)';
25
- @Input() id?: string;
26
- @Output() buttonClick = new EventEmitter<void>();
27
-
28
- get isArabic(): boolean {
29
- const currentLang = this.translateService.currentLang
30
- || this.translateService.defaultLang
31
- || this.translateService.getBrowserLang()
32
- || 'en';
33
- return currentLang === 'ar';
34
- }
35
-
36
- ngOnInit(): void {
37
- this.translateService.onLangChange
38
- .pipe(takeUntil(this.destroy$))
39
- .subscribe(() => {
40
- });
41
- }
42
-
43
- ngOnDestroy(): void {
44
- this.destroy$.next();
45
- this.destroy$.complete();
46
- }
47
-
48
- onButtonClick(): void {
49
- this.buttonClick.emit();
50
- }
51
- }
@@ -1,78 +0,0 @@
1
- <div class="action-card"
2
- [class.extended-variant]="variant === 'extended'"
3
- [style.--top-border-gradient]="topBorderGradient || buttonGradient"
4
- [style.--top-border-height]="topBorderHeight + 'px'"
5
- [style.border-right-color]="borderRightColor || borderColor"
6
- [style.border-bottom-color]="borderBottomColor || borderColor"
7
- [style.border-left-color]="borderLeftColor || borderColor">
8
- <div class="card-content" [class.extended-content]="variant === 'extended'">
9
- <div class="main-content" [class.extended-main]="variant === 'extended'">
10
- <div class="header-section" [class.extended-header]="variant === 'extended'">
11
- <div class="header-top-wrapper" *ngIf="variant === 'default'">
12
- <div class="icon-wrapper"
13
- [style.color]="iconColor"
14
- [style.width.px]="iconSize"
15
- [style.height.px]="iconSize">
16
- <img *ngIf="iconSvg" [src]="iconSvg" alt="" class="icon-svg" [style.width.px]="iconSize" [style.height.px]="iconSize" />
17
- <mat-icon *ngIf="!iconSvg && icon" [style.font-size.px]="iconSize" [style.width.px]="iconSize" [style.height.px]="iconSize">{{ icon }}</mat-icon>
18
- </div>
19
- <div class="header-top">
20
- <h2 class="card-title">
21
- <span *ngIf="titleKey">{{ titleKey | translate }}</span>
22
- <span *ngIf="!titleKey">{{ title }}</span>
23
- </h2>
24
- </div>
25
- </div>
26
- <div class="icon-wrapper"
27
- *ngIf="variant === 'extended'"
28
- [style.color]="iconColor"
29
- [style.width.px]="iconSize"
30
- [style.height.px]="iconSize">
31
- <img *ngIf="iconSvg" [src]="iconSvg" alt="" class="icon-svg" [style.width.px]="iconSize" [style.height.px]="iconSize" />
32
- <mat-icon *ngIf="!iconSvg && icon" [style.font-size.px]="iconSize" [style.width.px]="iconSize" [style.height.px]="iconSize">{{ icon }}</mat-icon>
33
- </div>
34
- <div class="title-description-wrapper" *ngIf="variant === 'extended'">
35
- <h2 class="card-title">
36
- <span *ngIf="titleKey">{{ titleKey | translate }}</span>
37
- <span *ngIf="!titleKey">{{ title }}</span>
38
- </h2>
39
- <p class="card-description">
40
- <span *ngIf="descriptionKey">{{ descriptionKey | translate }}</span>
41
- <span *ngIf="!descriptionKey">{{ description }}</span>
42
- </p>
43
- </div>
44
- <p class="card-description" *ngIf="variant === 'default'">
45
- <span *ngIf="descriptionKey">{{ descriptionKey | translate }}</span>
46
- <span *ngIf="!descriptionKey">{{ description }}</span>
47
- </p>
48
- </div>
49
- <lib-action-button
50
- [buttonText]="buttonText"
51
- [buttonTextKey]="buttonTextKey"
52
- [buttonGradient]="buttonGradient"
53
- (buttonClick)="onButtonClick()">
54
- </lib-action-button>
55
- <div class="features-divider" *ngIf="showDivider && features && features.length > 0"></div>
56
-
57
- <div class="features-section" *ngIf="features && features.length > 0">
58
- <h3 class="features-heading" *ngIf="featuresHeading || featuresHeadingKey">
59
- <span *ngIf="featuresHeadingKey">{{ featuresHeadingKey | translate }}</span>
60
- <span *ngIf="!featuresHeadingKey">{{ featuresHeading }}</span>
61
- </h3>
62
- <div class="feature-item" *ngFor="let feature of features">
63
- <mat-icon class="feature-check-icon" [style.color]="featureCheckIconColor || iconColor">check_circle</mat-icon>
64
- <span class="feature-text">
65
- <span *ngIf="feature.textKey">{{ feature.textKey | translate }}</span>
66
- <span *ngIf="!feature.textKey">{{ feature.text }}</span>
67
- </span>
68
- </div>
69
- </div>
70
- </div>
71
- <div class="decorative-icon-wrapper" *ngIf="variant === 'default' && (icon || iconSvg)">
72
- <div class="decorative-icon">
73
- <img *ngIf="iconSvg" [src]="iconSvg" alt="" class="decorative-icon-svg" [style.filter]="'opacity(0.3)'" />
74
- <mat-icon *ngIf="!iconSvg && icon" [style.color]="decorativeIconColor">{{ icon }}</mat-icon>
75
- </div>
76
- </div>
77
- </div>
78
- </div>