ngx-wapp-components 1.0.49 → 1.0.51

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 (349) hide show
  1. package/ng-package.json +7 -0
  2. package/package.json +42 -51
  3. package/src/lib/button/w-button/w-button.component.html +85 -0
  4. package/src/lib/button/w-button/w-button.component.scss +218 -0
  5. package/src/lib/button/w-button/w-button.component.spec.ts +23 -0
  6. package/src/lib/button/w-button/w-button.component.ts +40 -0
  7. package/src/lib/button/w-buttons-footer/w-buttons-footer.component.html +3 -0
  8. package/src/lib/button/w-buttons-footer/w-buttons-footer.component.scss +11 -0
  9. package/src/lib/button/w-buttons-footer/w-buttons-footer.component.spec.ts +23 -0
  10. package/src/lib/button/w-buttons-footer/w-buttons-footer.component.ts +10 -0
  11. package/src/lib/button/w-select-button/w-select-button.component.html +29 -0
  12. package/src/lib/button/w-select-button/w-select-button.component.scss +65 -0
  13. package/src/lib/button/w-select-button/w-select-button.component.spec.ts +23 -0
  14. package/src/lib/button/w-select-button/w-select-button.component.ts +65 -0
  15. package/src/lib/button/w-toggle-button/w-toggle-button.component.html +33 -0
  16. package/src/lib/button/w-toggle-button/w-toggle-button.component.scss +112 -0
  17. package/src/lib/button/w-toggle-button/w-toggle-button.component.spec.ts +23 -0
  18. package/src/lib/button/w-toggle-button/w-toggle-button.component.ts +75 -0
  19. package/src/lib/edit/w-edit-calendar/w-edit-calendar.component.html +37 -0
  20. package/src/lib/edit/w-edit-calendar/w-edit-calendar.component.scss +59 -0
  21. package/src/lib/edit/w-edit-calendar/w-edit-calendar.component.spec.ts +23 -0
  22. package/src/lib/edit/w-edit-calendar/w-edit-calendar.component.ts +75 -0
  23. package/src/lib/edit/w-edit-checkbox/w-edit-checkbox.component.html +55 -0
  24. package/src/lib/edit/w-edit-checkbox/w-edit-checkbox.component.scss +72 -0
  25. package/src/lib/edit/w-edit-checkbox/w-edit-checkbox.component.spec.ts +23 -0
  26. package/src/lib/edit/w-edit-checkbox/w-edit-checkbox.component.ts +70 -0
  27. package/src/lib/edit/w-edit-input-number/w-edit-input-number.component.html +60 -0
  28. package/src/lib/edit/w-edit-input-number/w-edit-input-number.component.scss +260 -0
  29. package/src/lib/edit/w-edit-input-number/w-edit-input-number.component.spec.ts +23 -0
  30. package/src/lib/edit/w-edit-input-number/w-edit-input-number.component.ts +85 -0
  31. package/src/lib/edit/w-edit-input-text/w-edit-input-text.component.html +59 -0
  32. package/src/lib/edit/w-edit-input-text/w-edit-input-text.component.scss +247 -0
  33. package/src/lib/edit/w-edit-input-text/w-edit-input-text.component.spec.ts +23 -0
  34. package/src/lib/edit/w-edit-input-text/w-edit-input-text.component.ts +90 -0
  35. package/src/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.html +92 -0
  36. package/src/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.scss +234 -0
  37. package/src/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.spec.ts +23 -0
  38. package/src/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.ts +71 -0
  39. package/src/lib/edit/w-edit-multiselect/w-edit-multiselect.component.html +59 -0
  40. package/src/lib/edit/w-edit-multiselect/w-edit-multiselect.component.scss +227 -0
  41. package/src/lib/edit/w-edit-multiselect/w-edit-multiselect.component.spec.ts +23 -0
  42. package/src/lib/edit/w-edit-multiselect/w-edit-multiselect.component.ts +81 -0
  43. package/src/lib/edit/w-edit-select/w-edit-select.component.html +56 -0
  44. package/src/lib/edit/w-edit-select/w-edit-select.component.scss +166 -0
  45. package/src/lib/edit/w-edit-select/w-edit-select.component.spec.ts +23 -0
  46. package/src/lib/edit/w-edit-select/w-edit-select.component.ts +83 -0
  47. package/src/lib/edit/w-edit-toggle/w-edit-toggle.component.html +55 -0
  48. package/src/lib/edit/w-edit-toggle/w-edit-toggle.component.scss +55 -0
  49. package/src/lib/edit/w-edit-toggle/w-edit-toggle.component.spec.ts +23 -0
  50. package/src/lib/edit/w-edit-toggle/w-edit-toggle.component.ts +71 -0
  51. package/src/lib/edit/w-edit-treeselect/w-edit-treeselect.component.html +58 -0
  52. package/src/lib/edit/w-edit-treeselect/w-edit-treeselect.component.scss +176 -0
  53. package/src/lib/edit/w-edit-treeselect/w-edit-treeselect.component.spec.ts +23 -0
  54. package/src/lib/edit/w-edit-treeselect/w-edit-treeselect.component.ts +80 -0
  55. package/src/lib/file/w-image-cropper/w-image-cropper.component.html +150 -0
  56. package/src/lib/file/w-image-cropper/w-image-cropper.component.scss +59 -0
  57. package/src/lib/file/w-image-cropper/w-image-cropper.component.spec.ts +23 -0
  58. package/src/lib/file/w-image-cropper/w-image-cropper.component.ts +259 -0
  59. package/src/lib/file/w-image-file-uploader/w-image-file-uploader.component.html +100 -0
  60. package/src/lib/file/w-image-file-uploader/w-image-file-uploader.component.scss +77 -0
  61. package/src/lib/file/w-image-file-uploader/w-image-file-uploader.component.spec.ts +23 -0
  62. package/src/lib/file/w-image-file-uploader/w-image-file-uploader.component.ts +388 -0
  63. package/src/lib/file/w-preview-image/w-preview-image.component.css +0 -0
  64. package/src/lib/file/w-preview-image/w-preview-image.component.html +5 -0
  65. package/src/lib/file/w-preview-image/w-preview-image.component.spec.ts +23 -0
  66. package/src/lib/file/w-preview-image/w-preview-image.component.ts +17 -0
  67. package/src/lib/icons/icons.ts +116 -0
  68. package/src/lib/icons/wapping-icons/w-icons.component.ts +52 -0
  69. package/src/lib/layout/w-body/w-body.component.html +3 -0
  70. package/src/lib/layout/w-body/w-body.component.scss +13 -0
  71. package/src/lib/layout/w-body/w-body.component.spec.ts +23 -0
  72. package/src/lib/layout/w-body/w-body.component.ts +10 -0
  73. package/src/lib/layout/w-body-container/w-body-container.component.html +3 -0
  74. package/src/lib/layout/w-body-container/w-body-container.component.scss +58 -0
  75. package/src/lib/layout/w-body-container/w-body-container.component.spec.ts +23 -0
  76. package/src/lib/layout/w-body-container/w-body-container.component.ts +10 -0
  77. package/src/lib/layout/w-body-grid/w-body-grid.component.html +3 -0
  78. package/src/lib/layout/w-body-grid/w-body-grid.component.scss +59 -0
  79. package/src/lib/layout/w-body-grid/w-body-grid.component.spec.ts +23 -0
  80. package/src/lib/layout/w-body-grid/w-body-grid.component.ts +10 -0
  81. package/src/lib/layout/w-container/w-container.component.scss +9 -0
  82. package/src/lib/layout/w-container/w-container.component.ts +14 -0
  83. package/src/lib/layout/w-footer/w-footer.component.html +11 -0
  84. package/src/lib/layout/w-footer/w-footer.component.scss +17 -0
  85. package/src/lib/layout/w-footer/w-footer.component.spec.ts +23 -0
  86. package/src/lib/layout/w-footer/w-footer.component.ts +19 -0
  87. package/src/lib/layout/w-header-panel/w-header-panel.component.html +9 -0
  88. package/src/lib/layout/w-header-panel/w-header-panel.component.scss +29 -0
  89. package/src/lib/layout/w-header-panel/w-header-panel.component.spec.ts +23 -0
  90. package/src/lib/layout/w-header-panel/w-header-panel.component.ts +27 -0
  91. package/src/lib/layout/w-navbar/w-navbar.component.html +26 -0
  92. package/src/lib/layout/w-navbar/w-navbar.component.scss +26 -0
  93. package/src/lib/layout/w-navbar/w-navbar.component.spec.ts +23 -0
  94. package/src/lib/layout/w-navbar/w-navbar.component.ts +48 -0
  95. package/src/lib/layout/w-panel/w-panel.component.html +6 -0
  96. package/src/lib/layout/w-panel/w-panel.component.scss +72 -0
  97. package/src/lib/layout/w-panel/w-panel.component.spec.ts +23 -0
  98. package/src/lib/layout/w-panel/w-panel.component.ts +13 -0
  99. package/src/lib/layout/w-panel-grid/w-panel-grid.component.html +3 -0
  100. package/src/lib/layout/w-panel-grid/w-panel-grid.component.scss +58 -0
  101. package/src/lib/layout/w-panel-grid/w-panel-grid.component.spec.ts +23 -0
  102. package/src/lib/layout/w-panel-grid/w-panel-grid.component.ts +10 -0
  103. package/src/lib/layout/w-panel-title/w-panel-title.component.html +1 -0
  104. package/src/lib/layout/w-panel-title/w-panel-title.component.scss +6 -0
  105. package/src/lib/layout/w-panel-title/w-panel-title.component.spec.ts +23 -0
  106. package/src/lib/layout/w-panel-title/w-panel-title.component.ts +10 -0
  107. package/src/lib/logos/logos.ts +7 -0
  108. package/src/lib/logos/wapping-logos/w-logos.component.ts +47 -0
  109. package/src/lib/misc/w-filter-panel/w-filter-panel.component.html +303 -0
  110. package/src/lib/misc/w-filter-panel/w-filter-panel.component.scss +391 -0
  111. package/src/lib/misc/w-filter-panel/w-filter-panel.component.spec.ts +23 -0
  112. package/src/lib/misc/w-filter-panel/w-filter-panel.component.ts +388 -0
  113. package/src/lib/misc/w-filter-panel/w-list-field/w-list-field.component.html +21 -0
  114. package/src/lib/misc/w-filter-panel/w-list-field/w-list-field.component.scss +65 -0
  115. package/src/lib/misc/w-filter-panel/w-list-field/w-list-field.component.spec.ts +23 -0
  116. package/src/lib/misc/w-filter-panel/w-list-field/w-list-field.component.ts +73 -0
  117. package/src/lib/report/w-powerbi-report/w-powerbi-report.component.css +24 -0
  118. package/src/lib/report/w-powerbi-report/w-powerbi-report.component.html +52 -0
  119. package/src/lib/report/w-powerbi-report/w-powerbi-report.component.spec.ts +23 -0
  120. package/src/lib/report/w-powerbi-report/w-powerbi-report.component.ts +170 -0
  121. package/src/lib/search/w-autocomplete-search/w-autocomplete-search.component.html +92 -0
  122. package/src/lib/search/w-autocomplete-search/w-autocomplete-search.component.scss +142 -0
  123. package/src/lib/search/w-autocomplete-search/w-autocomplete-search.component.spec.ts +23 -0
  124. package/src/lib/search/w-autocomplete-search/w-autocomplete-search.component.ts +94 -0
  125. package/src/lib/search/w-input-search/w-input-search.component.html +130 -0
  126. package/src/lib/search/w-input-search/w-input-search.component.scss +158 -0
  127. package/src/lib/search/w-input-search/w-input-search.component.spec.ts +23 -0
  128. package/src/lib/search/w-input-search/w-input-search.component.ts +85 -0
  129. package/src/lib/shared/enums/enum.ts +12 -0
  130. package/src/lib/shared/models/back-button-config.model.ts +5 -0
  131. package/src/lib/shared/models/custom-button-config.model.ts +4 -0
  132. package/{lib/shared/models/embed-config.model.d.ts → src/lib/shared/models/embed-config.model.ts} +2 -2
  133. package/{lib/shared/models/enums.model.d.ts → src/lib/shared/models/enums.model.ts} +22 -18
  134. package/{lib/shared/models/filter-panel/field.model.d.ts → src/lib/shared/models/filter-panel/field.model.ts} +20 -2
  135. package/src/lib/shared/models/filter-panel/filter-field.models.ts +15 -0
  136. package/src/lib/shared/models/filter-panel/filter-panel-translations.model.ts +29 -0
  137. package/src/lib/shared/models/filter-panel/qb-filter-entity.model.ts +8 -0
  138. package/src/lib/shared/models/filter-panel/qb-filter-field.model.ts +12 -0
  139. package/src/lib/shared/models/filter-panel/qb-operators.model.ts +4 -0
  140. package/src/lib/shared/models/filter-panel/qb-panel-filter.model.ts +14 -0
  141. package/src/lib/shared/models/filter-panel/qb-panel-to-fields.model.ts +12 -0
  142. package/src/lib/shared/models/filter-panel/query-results.model.ts +17 -0
  143. package/src/lib/shared/models/filter.model.ts +5 -0
  144. package/src/lib/shared/models/image-b64.model.ts +5 -0
  145. package/src/lib/shared/models/lazy-element-query-request.model.ts +9 -0
  146. package/src/lib/shared/models/w-file-b64.model.ts +6 -0
  147. package/src/lib/shared/models/w-image-cropper-data.model.ts +7 -0
  148. package/src/lib/shared/models/w-image-file-uploader-config.model.ts +23 -0
  149. package/src/lib/shared/models/w-select-button-state.model.ts +4 -0
  150. package/src/lib/shared/models/w-tree-table.model.ts +30 -0
  151. package/src/lib/shared/models/wapp-table-lazy-loading.model.ts +53 -0
  152. package/src/lib/shared/models/wapp-table.model.ts +56 -0
  153. package/src/lib/shared/pipes/color-text.pipe.ts +20 -0
  154. package/src/lib/shared/service/api/api.service.ts +58 -0
  155. package/src/lib/shared/services/form-control.service.spec.ts +16 -0
  156. package/src/lib/shared/services/form-control.service.ts +15 -0
  157. package/src/lib/shared/services/modal.service.spec.ts +16 -0
  158. package/src/lib/shared/services/modal.service.ts +71 -0
  159. package/src/lib/shared/services/tree.service.ts +30 -0
  160. package/src/lib/sidebar/w-sidebar/w-sidebar.component.html +11 -0
  161. package/src/lib/sidebar/w-sidebar/w-sidebar.component.scss +69 -0
  162. package/src/lib/sidebar/w-sidebar/w-sidebar.component.spec.ts +23 -0
  163. package/src/lib/sidebar/w-sidebar/w-sidebar.component.ts +36 -0
  164. package/src/lib/tables/w-table/w-table.component.html +230 -0
  165. package/src/lib/tables/w-table/w-table.component.scss +225 -0
  166. package/src/lib/tables/w-table/w-table.component.spec.ts +23 -0
  167. package/src/lib/tables/w-table/w-table.component.ts +188 -0
  168. package/src/lib/tables/w-table-lazy/w-table-lazy.component.html +198 -0
  169. package/src/lib/tables/w-table-lazy/w-table-lazy.component.scss +226 -0
  170. package/src/lib/tables/w-table-lazy/w-table-lazy.component.spec.ts +23 -0
  171. package/src/lib/tables/w-table-lazy/w-table-lazy.component.ts +217 -0
  172. package/src/lib/tables/w-tree-table/w-tree-table.component.html +170 -0
  173. package/src/lib/tables/w-tree-table/w-tree-table.component.scss +221 -0
  174. package/src/lib/tables/w-tree-table/w-tree-table.component.spec.ts +23 -0
  175. package/src/lib/tables/w-tree-table/w-tree-table.component.ts +125 -0
  176. package/src/lib/tabview/w-tabview/w-tabview.component.html +72 -0
  177. package/src/lib/tabview/w-tabview/w-tabview.component.scss +34 -0
  178. package/src/lib/tabview/w-tabview/w-tabview.component.spec.ts +23 -0
  179. package/src/lib/tabview/w-tabview/w-tabview.component.ts +14 -0
  180. package/src/lib/theme/theme.component.css +0 -0
  181. package/src/lib/theme/theme.component.html +1 -0
  182. package/src/lib/theme/theme.component.spec.ts +23 -0
  183. package/src/lib/theme/theme.component.ts +10 -0
  184. package/src/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.css +0 -0
  185. package/src/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.html +1 -0
  186. package/src/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.spec.ts +23 -0
  187. package/src/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.ts +16 -0
  188. package/src/lib/w-clipboard/w-clipboard.component.css +13 -0
  189. package/src/lib/w-clipboard/w-clipboard.component.html +10 -0
  190. package/src/lib/w-clipboard/w-clipboard.component.spec.ts +23 -0
  191. package/src/lib/w-clipboard/w-clipboard.component.ts +32 -0
  192. package/src/lib/wapp-components.component.spec.ts +23 -0
  193. package/src/lib/wapp-components.component.ts +15 -0
  194. package/src/lib/wapp-components.module.ts +241 -0
  195. package/src/lib/wapp-components.service.spec.ts +16 -0
  196. package/src/lib/wapp-components.service.ts +9 -0
  197. package/{public-api.d.ts → src/public-api.ts} +15 -3
  198. package/src/styles/_variables.scss +427 -0
  199. package/tsconfig.lib.json +14 -0
  200. package/tsconfig.lib.prod.json +10 -0
  201. package/tsconfig.spec.json +14 -0
  202. package/esm2020/lib/button/w-button/w-button.component.mjs +0 -67
  203. package/esm2020/lib/button/w-buttons-footer/w-buttons-footer.component.mjs +0 -11
  204. package/esm2020/lib/button/w-select-button/w-select-button.component.mjs +0 -84
  205. package/esm2020/lib/button/w-toggle-button/w-toggle-button.component.mjs +0 -102
  206. package/esm2020/lib/edit/w-edit-calendar/w-edit-calendar.component.mjs +0 -104
  207. package/esm2020/lib/edit/w-edit-checkbox/w-edit-checkbox.component.mjs +0 -89
  208. package/esm2020/lib/edit/w-edit-input-number/w-edit-input-number.component.mjs +0 -130
  209. package/esm2020/lib/edit/w-edit-input-text/w-edit-input-text.component.mjs +0 -125
  210. package/esm2020/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.mjs +0 -108
  211. package/esm2020/lib/edit/w-edit-multiselect/w-edit-multiselect.component.mjs +0 -110
  212. package/esm2020/lib/edit/w-edit-select/w-edit-select.component.mjs +0 -115
  213. package/esm2020/lib/edit/w-edit-toggle/w-edit-toggle.component.mjs +0 -93
  214. package/esm2020/lib/edit/w-edit-treeselect/w-edit-treeselect.component.mjs +0 -107
  215. package/esm2020/lib/file/w-image-cropper/w-image-cropper.component.mjs +0 -236
  216. package/esm2020/lib/file/w-image-file-uploader/w-image-file-uploader.component.mjs +0 -409
  217. package/esm2020/lib/file/w-preview-image/w-preview-image.component.mjs +0 -20
  218. package/esm2020/lib/icons/icons.mjs +0 -115
  219. package/esm2020/lib/icons/wapping-icons/w-icons.component.mjs +0 -53
  220. package/esm2020/lib/layout/w-body/w-body.component.mjs +0 -18
  221. package/esm2020/lib/layout/w-body-container/w-body-container.component.mjs +0 -11
  222. package/esm2020/lib/layout/w-container/w-container.component.mjs +0 -19
  223. package/esm2020/lib/layout/w-content-grid/w-content-grid.component.mjs +0 -11
  224. package/esm2020/lib/layout/w-footer/w-footer.component.mjs +0 -27
  225. package/esm2020/lib/layout/w-grid/w-grid.component.mjs +0 -11
  226. package/esm2020/lib/layout/w-header-panel/w-header-panel.component.mjs +0 -36
  227. package/esm2020/lib/layout/w-navbar/w-navbar.component.mjs +0 -44
  228. package/esm2020/lib/layout/w-panel/w-panel.component.mjs +0 -29
  229. package/esm2020/lib/layout/w-panel-title/w-panel-title.component.mjs +0 -14
  230. package/esm2020/lib/logos/logos.mjs +0 -8
  231. package/esm2020/lib/logos/wapping-logos/w-logos.component.mjs +0 -53
  232. package/esm2020/lib/misc/w-filter-panel/w-filter-panel.component.mjs +0 -378
  233. package/esm2020/lib/misc/w-filter-panel/w-list-field/w-list-field.component.mjs +0 -82
  234. package/esm2020/lib/report/w-powerbi-report/w-powerbi-report.component.mjs +0 -203
  235. package/esm2020/lib/search/w-autocomplete-search/w-autocomplete-search.component.mjs +0 -106
  236. package/esm2020/lib/search/w-input-search/w-input-search.component.mjs +0 -109
  237. package/esm2020/lib/shared/enums/enum.mjs +0 -14
  238. package/esm2020/lib/shared/models/custom-button-config.model.mjs +0 -2
  239. package/esm2020/lib/shared/models/embed-config.model.mjs +0 -2
  240. package/esm2020/lib/shared/models/enums.model.mjs +0 -64
  241. package/esm2020/lib/shared/models/filter-panel/field.model.mjs +0 -2
  242. package/esm2020/lib/shared/models/filter-panel/filter-field.models.mjs +0 -2
  243. package/esm2020/lib/shared/models/filter-panel/filter-panel-translations.model.mjs +0 -2
  244. package/esm2020/lib/shared/models/filter-panel/qb-filter-entity.model.mjs +0 -2
  245. package/esm2020/lib/shared/models/filter-panel/qb-operators.model.mjs +0 -2
  246. package/esm2020/lib/shared/models/filter-panel/qb-panel-filter.model.mjs +0 -2
  247. package/esm2020/lib/shared/models/filter-panel/qb-panel-to-fields.model.mjs +0 -2
  248. package/esm2020/lib/shared/models/filter-panel/query-results.model.mjs +0 -8
  249. package/esm2020/lib/shared/models/filter.model.mjs +0 -2
  250. package/esm2020/lib/shared/models/image-b64.model.mjs +0 -2
  251. package/esm2020/lib/shared/models/lazy-element-query-request.model.mjs +0 -2
  252. package/esm2020/lib/shared/models/w-file-b64.model.mjs +0 -2
  253. package/esm2020/lib/shared/models/w-image-cropper-data.model.mjs +0 -2
  254. package/esm2020/lib/shared/models/w-image-file-uploader-config.model.mjs +0 -2
  255. package/esm2020/lib/shared/models/w-select-button-state.model.mjs +0 -2
  256. package/esm2020/lib/shared/models/w-tree-table.model.mjs +0 -2
  257. package/esm2020/lib/shared/models/wapp-table-lazy-loading.model.mjs +0 -2
  258. package/esm2020/lib/shared/models/wapp-table.model.mjs +0 -2
  259. package/esm2020/lib/shared/pipes/color-text.pipe.mjs +0 -25
  260. package/esm2020/lib/shared/service/api/api.service.mjs +0 -52
  261. package/esm2020/lib/shared/services/form-control.service.mjs +0 -18
  262. package/esm2020/lib/shared/services/modal.service.mjs +0 -62
  263. package/esm2020/lib/shared/services/tree.service.mjs +0 -30
  264. package/esm2020/lib/sidebar/w-sidebar/w-sidebar.component.mjs +0 -50
  265. package/esm2020/lib/tables/w-table/w-table.component.mjs +0 -197
  266. package/esm2020/lib/tables/w-table-lazy/w-table-lazy.component.mjs +0 -237
  267. package/esm2020/lib/tables/w-tree-table/w-tree-table.component.mjs +0 -136
  268. package/esm2020/lib/tabview/w-tabview/w-tabview.component.mjs +0 -27
  269. package/esm2020/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.mjs +0 -17
  270. package/esm2020/lib/w-clipboard/w-clipboard.component.mjs +0 -39
  271. package/esm2020/lib/wapp-components.component.mjs +0 -19
  272. package/esm2020/lib/wapp-components.module.mjs +0 -430
  273. package/esm2020/lib/wapp-components.service.mjs +0 -14
  274. package/esm2020/ngx-wapp-components.mjs +0 -5
  275. package/esm2020/public-api.mjs +0 -63
  276. package/fesm2015/ngx-wapp-components.mjs +0 -4355
  277. package/fesm2015/ngx-wapp-components.mjs.map +0 -1
  278. package/fesm2020/ngx-wapp-components.mjs +0 -4389
  279. package/fesm2020/ngx-wapp-components.mjs.map +0 -1
  280. package/index.d.ts +0 -5
  281. package/lib/button/w-button/w-button.component.d.ts +0 -23
  282. package/lib/button/w-buttons-footer/w-buttons-footer.component.d.ts +0 -5
  283. package/lib/button/w-select-button/w-select-button.component.d.ts +0 -27
  284. package/lib/button/w-toggle-button/w-toggle-button.component.d.ts +0 -32
  285. package/lib/edit/w-edit-calendar/w-edit-calendar.component.d.ts +0 -34
  286. package/lib/edit/w-edit-checkbox/w-edit-checkbox.component.d.ts +0 -27
  287. package/lib/edit/w-edit-input-number/w-edit-input-number.component.d.ts +0 -37
  288. package/lib/edit/w-edit-input-text/w-edit-input-text.component.d.ts +0 -36
  289. package/lib/edit/w-edit-input-textarea/w-edit-input-textarea.component.d.ts +0 -32
  290. package/lib/edit/w-edit-multiselect/w-edit-multiselect.component.d.ts +0 -35
  291. package/lib/edit/w-edit-select/w-edit-select.component.d.ts +0 -35
  292. package/lib/edit/w-edit-toggle/w-edit-toggle.component.d.ts +0 -28
  293. package/lib/edit/w-edit-treeselect/w-edit-treeselect.component.d.ts +0 -34
  294. package/lib/file/w-image-cropper/w-image-cropper.component.d.ts +0 -69
  295. package/lib/file/w-image-file-uploader/w-image-file-uploader.component.d.ts +0 -70
  296. package/lib/file/w-preview-image/w-preview-image.component.d.ts +0 -10
  297. package/lib/icons/icons.d.ts +0 -1
  298. package/lib/icons/wapping-icons/w-icons.component.d.ts +0 -15
  299. package/lib/layout/w-body/w-body.component.d.ts +0 -6
  300. package/lib/layout/w-body-container/w-body-container.component.d.ts +0 -5
  301. package/lib/layout/w-container/w-container.component.d.ts +0 -5
  302. package/lib/layout/w-content-grid/w-content-grid.component.d.ts +0 -5
  303. package/lib/layout/w-footer/w-footer.component.d.ts +0 -10
  304. package/lib/layout/w-grid/w-grid.component.d.ts +0 -5
  305. package/lib/layout/w-header-panel/w-header-panel.component.d.ts +0 -15
  306. package/lib/layout/w-navbar/w-navbar.component.d.ts +0 -16
  307. package/lib/layout/w-panel/w-panel.component.d.ts +0 -9
  308. package/lib/layout/w-panel-title/w-panel-title.component.d.ts +0 -6
  309. package/lib/logos/logos.d.ts +0 -1
  310. package/lib/logos/wapping-logos/w-logos.component.d.ts +0 -15
  311. package/lib/misc/w-filter-panel/w-filter-panel.component.d.ts +0 -63
  312. package/lib/misc/w-filter-panel/w-list-field/w-list-field.component.d.ts +0 -25
  313. package/lib/report/w-powerbi-report/w-powerbi-report.component.d.ts +0 -42
  314. package/lib/search/w-autocomplete-search/w-autocomplete-search.component.d.ts +0 -29
  315. package/lib/search/w-input-search/w-input-search.component.d.ts +0 -33
  316. package/lib/shared/enums/enum.d.ts +0 -11
  317. package/lib/shared/models/custom-button-config.model.d.ts +0 -4
  318. package/lib/shared/models/filter-panel/filter-field.models.d.ts +0 -17
  319. package/lib/shared/models/filter-panel/filter-panel-translations.model.d.ts +0 -28
  320. package/lib/shared/models/filter-panel/qb-filter-entity.model.d.ts +0 -7
  321. package/lib/shared/models/filter-panel/qb-operators.model.d.ts +0 -4
  322. package/lib/shared/models/filter-panel/qb-panel-filter.model.d.ts +0 -13
  323. package/lib/shared/models/filter-panel/qb-panel-to-fields.model.d.ts +0 -11
  324. package/lib/shared/models/filter-panel/query-results.model.d.ts +0 -15
  325. package/lib/shared/models/filter.model.d.ts +0 -5
  326. package/lib/shared/models/image-b64.model.d.ts +0 -5
  327. package/lib/shared/models/lazy-element-query-request.model.d.ts +0 -8
  328. package/lib/shared/models/w-file-b64.model.d.ts +0 -6
  329. package/lib/shared/models/w-image-cropper-data.model.d.ts +0 -7
  330. package/lib/shared/models/w-image-file-uploader-config.model.d.ts +0 -23
  331. package/lib/shared/models/w-select-button-state.model.d.ts +0 -4
  332. package/lib/shared/models/w-tree-table.model.d.ts +0 -27
  333. package/lib/shared/models/wapp-table-lazy-loading.model.d.ts +0 -51
  334. package/lib/shared/models/wapp-table.model.d.ts +0 -54
  335. package/lib/shared/pipes/color-text.pipe.d.ts +0 -7
  336. package/lib/shared/service/api/api.service.d.ts +0 -12
  337. package/lib/shared/services/form-control.service.d.ts +0 -8
  338. package/lib/shared/services/modal.service.d.ts +0 -22
  339. package/lib/shared/services/tree.service.d.ts +0 -8
  340. package/lib/sidebar/w-sidebar/w-sidebar.component.d.ts +0 -17
  341. package/lib/tables/w-table/w-table.component.d.ts +0 -58
  342. package/lib/tables/w-table-lazy/w-table-lazy.component.d.ts +0 -58
  343. package/lib/tables/w-tree-table/w-tree-table.component.d.ts +0 -41
  344. package/lib/tabview/w-tabview/w-tabview.component.d.ts +0 -8
  345. package/lib/view/wapp-view-card-title-text/wapp-view-card-title-text.component.d.ts +0 -9
  346. package/lib/w-clipboard/w-clipboard.component.d.ts +0 -12
  347. package/lib/wapp-components.component.d.ts +0 -5
  348. package/lib/wapp-components.module.d.ts +0 -88
  349. package/lib/wapp-components.service.d.ts +0 -6
@@ -0,0 +1,71 @@
1
+ import { Component, EventEmitter, Input, Optional, Output, Self, forwardRef } from '@angular/core';
2
+ import { FormControl, FormControlName, NG_VALUE_ACCESSOR, NgControl, Validators } from '@angular/forms';
3
+ import { SizeType } from '../../shared/enums/enum';
4
+ @Component({
5
+ selector: 'w-edit-input-textarea',
6
+ templateUrl: './w-edit-input-textarea.component.html',
7
+ styleUrls: ['./w-edit-input-textarea.component.scss'],
8
+ providers: [
9
+ {
10
+ provide: NG_VALUE_ACCESSOR,
11
+ useExisting: forwardRef(() => WEditInputTextareaComponent),
12
+ multi: true
13
+ }
14
+ ]
15
+ })
16
+ export class WEditInputTextareaComponent {
17
+
18
+ @Input('label') label!: string;
19
+ @Input('placeholder') placeholder: string = "";
20
+
21
+ @Input('rows') rows: number = 4;
22
+ @Input('minlength') minlength!: number;
23
+ @Input('maxlength') maxlength!: number;
24
+ @Input('autoResize') autoResize: boolean = true;
25
+
26
+ @Input('required') required: boolean = false;
27
+ @Input('disabled') disabled: boolean = false;
28
+ @Input('successMessage') successMessage: string = "";
29
+ @Input('requiredErrorDescription') requiredErrorDescription: string = "Data is required";
30
+ @Input('minlengthErrorDescription') minlengthErrorDescription: string = "Min length warning";
31
+ @Input('maxlengthErrorDescription') maxlengthErrorDescription: string = "Max length warning";
32
+
33
+ @Input('size') size: string = "medium";
34
+
35
+ @Input('formControl') formControl!: FormControl | null;
36
+
37
+ value: string = '';
38
+
39
+ isTouched: boolean = false;
40
+ onChange = (_: any) => { }
41
+ onTouch = () => { }
42
+
43
+ writeValue(value: any): void {
44
+ this.value = value;
45
+ }
46
+
47
+ registerOnChange(onChange: any): void {
48
+ this.onChange = onChange;
49
+ }
50
+
51
+ registerOnTouched(onTouch: any): void {
52
+ this.onTouch = onTouch;
53
+ }
54
+
55
+ setDisabledState?(isDisabled: boolean): void {
56
+ this.disabled = isDisabled;
57
+ }
58
+
59
+ onValueChanged() {
60
+ this.onChange(this.value);
61
+ this.onTouch();
62
+ }
63
+
64
+ getSizeName(value: number): string {
65
+ return SizeType[value];
66
+ }
67
+
68
+ get sizeType(): typeof SizeType {
69
+ return SizeType;
70
+ }
71
+ }
@@ -0,0 +1,59 @@
1
+ <div *ngIf="formControl; else noNgControl" class="w-input-multiselect-field p-fluid field">
2
+ <label *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label.length > 0)" class="w-input-multiselect-label body" [ngClass]="{'w-input-multiselect-label-disabled' : disabled}">{{label}}</label>
3
+ <div *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label == '')" class="w-generic-input-no-label-height"></div>
4
+ <p-multiSelect *ngIf="getSizeName(sizeType.medium) == size" class="w-input-multiselect"
5
+ [options]="options"
6
+ display="chip"
7
+ [optionLabel]="optionLabel"
8
+ [optionValue]="optionValue"
9
+ [placeholder]="placeholder"
10
+ [required]="required"
11
+ [formControl]="formControl"
12
+ [appendTo]="appendTo"
13
+ [showClear]="showClear"
14
+ (onChange)="onOptionSelectedForm($event)">
15
+ </p-multiSelect>
16
+ <p-multiSelect *ngIf="getSizeName(sizeType.small) == size" class="w-input-multiselect-small"
17
+ [options]="options"
18
+ display="chip"
19
+ [optionLabel]="optionLabel"
20
+ [optionValue]="optionValue"
21
+ [placeholder]="placeholder"
22
+ [required]="required"
23
+ [formControl]="formControl"
24
+ [appendTo]="appendTo"
25
+ [showClear]="showClear"
26
+ (onChange)="onOptionSelectedForm($event)">
27
+ </p-multiSelect>
28
+ <small *ngIf="getSizeName(sizeType.medium) == size && formControl.dirty && formControl.hasError('required')" class="w-error-message-container w-full w-error-message p-error block">{{errorDescription}}</small>
29
+ </div>
30
+ <ng-template #noNgControl>
31
+ <div class="w-input-multiselect-field p-fluid field">
32
+ <label *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label.length > 0)" class="w-input-multiselect-label body" [ngClass]="{'w-input-multiselect-label-disabled' : disabled}">{{label}}</label>
33
+ <div *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label == '')" class="w-generic-input-no-label-height"></div>
34
+ <p-multiSelect *ngIf="getSizeName(sizeType.medium) == size" class="w-input-multiselect"
35
+ [options]="options"
36
+ display="chip"
37
+ [optionLabel]="optionLabel"
38
+ [optionValue]="optionValue"
39
+ [placeholder]="placeholder"
40
+ [disabled]="disabled"
41
+ [(ngModel)]="ngModelValue"
42
+ (ngModelChange)="onOptionSelected()"
43
+ [appendTo]="appendTo"
44
+ [showClear]="showClear">
45
+ </p-multiSelect>
46
+ <p-multiSelect *ngIf="getSizeName(sizeType.small) == size" class="w-input-multiselect-small"
47
+ [options]="options"
48
+ display="chip"
49
+ [optionLabel]="optionLabel"
50
+ [optionValue]="optionValue"
51
+ [placeholder]="placeholder"
52
+ [disabled]="disabled"
53
+ [(ngModel)]="ngModelValue"
54
+ (ngModelChange)="onOptionSelected()"
55
+ [appendTo]="appendTo"
56
+ [showClear]="showClear">
57
+ </p-multiSelect>
58
+ </div>
59
+ </ng-template>
@@ -0,0 +1,227 @@
1
+ @import '../../../styles/_variables.scss';
2
+
3
+ .w-input-multiselect-field{
4
+ margin: $spacingZero
5
+ }
6
+
7
+ .w-input-multiselect-label{
8
+ padding: $spacingXS $spacingXS $spacingS $spacingXS;
9
+ margin: $spacingZero;
10
+ color: $black846;
11
+ @extend .input-generic-label;
12
+ }
13
+
14
+ .w-input-multiselect-label-disabled.w-input-multiselect-label{
15
+ color: $black400;
16
+ }
17
+
18
+ :host ::ng-deep .w-input-multiselect .p-multiselect{
19
+ border: $borderWidth solid $black200;
20
+ border-radius: $borderRadius;
21
+ }
22
+
23
+ :host ::ng-deep .w-input-multiselect .p-multiselect:hover{
24
+ border: $borderWidth solid $secondary400;
25
+ }
26
+
27
+ :host ::ng-deep .w-input-multiselect .p-multiselect.p-focus{
28
+ @extend .focus;
29
+ border: $borderWidth solid $secondary50;
30
+ }
31
+
32
+ :host ::ng-deep .w-input-multiselect .p-multiselect-label{
33
+ padding: calc($spacingXS - $borderWidth) 0px calc($spacingXS - $borderWidth) $spacingM;
34
+ @extend .input-generic;
35
+ color: $black400;
36
+ }
37
+
38
+ :host ::ng-deep .w-input-multiselect .p-multiselect.p-multiselect-chip .p-multiselect-label{
39
+ padding: calc($spacingXS - $borderWidth) 0px calc($spacingXS - $borderWidth) $spacingM;
40
+ }
41
+
42
+ :host ::ng-deep .w-input-multiselect .p-multiselect-token{
43
+ height: $spacingXL;
44
+ padding: $spacingXSM $spacingS;
45
+ @extend .tag-generic;
46
+ }
47
+
48
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel{
49
+ border: $borderWidth solid $black200;
50
+ }
51
+
52
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items{
53
+ padding: calc($spacingXS - $borderWidth) calc($spacingXS - $borderWidth) calc($spacingM - $borderWidth);
54
+ }
55
+
56
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items .p-multiselect-item{
57
+ padding: $spacingXS $spacingM;
58
+ margin-bottom: $spacingXXS;
59
+ @extend .input-generic;
60
+ }
61
+
62
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items .p-multiselect-item:hover{
63
+ background: $primary50;
64
+ border-radius: $borderRadius;
65
+ }
66
+
67
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items .p-multiselect-item.p-highlight{
68
+ background: $primary50;
69
+ border-radius: $borderRadius;
70
+ }
71
+
72
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items .p-multiselect-item:not(.p-highlight):not(.p-disabled):hover{
73
+ background: $primary50;
74
+ border-radius: $borderRadius;
75
+ }
76
+
77
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-items .p-multiselect-item .p-checkbox{
78
+ width: 24px;
79
+ margin-right: $spacingS;
80
+ }
81
+
82
+ :host ::ng-deep .w-input-multiselect .p-checkbox .p-checkbox-box {
83
+ border: $borderWidth solid $black200;
84
+ width: $spacingXL;
85
+ height: $spacingXL;
86
+ color: $black200;
87
+ border-radius: $checkboxBorderRadius;
88
+ align-self: center;
89
+ }
90
+
91
+ :host ::ng-deep .w-input-multiselect .p-checkbox .p-checkbox-box .p-checkbox-icon{
92
+ @extend .icon-small-x-size;
93
+ font-weight: bold;
94
+ }
95
+
96
+ :host ::ng-deep .w-input-multiselect .p-checkbox .p-checkbox-box.p-highlight{
97
+ border-color: $primaryColor !important;
98
+ background: $primaryColor;
99
+ color: $primaryColor !important;
100
+ }
101
+
102
+ :host ::ng-deep .w-input-multiselect .p-multiselect-panel .p-multiselect-header{
103
+ padding: calc($spacingXS - $borderWidth) calc($spacingXL - $borderWidth);
104
+ }
105
+
106
+ :host ::ng-deep .w-input-multiselect .p-disabled{
107
+ background: $black100;
108
+ opacity: 1;
109
+ }
110
+
111
+ :host ::ng-deep .w-input-multiselect .p-disabled .p-inputtext{
112
+ color: $black400;
113
+ }
114
+
115
+ :host ::ng-deep p-multiselect.w-input-multiselect.ng-dirty.ng-invalid > .p-multiselect {
116
+ border-color: $statusError3;
117
+ }
118
+
119
+ .w-error-message-container{
120
+ height: $spacingXXXL;
121
+ }
122
+
123
+ .w-error-message{
124
+ @extend .caption;
125
+ color: $statusError1;
126
+ padding: $spacingXS;
127
+ margin-top: $spacingZero;
128
+ }
129
+
130
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect{
131
+ border: $borderWidth solid $black200;
132
+ border-radius: $borderRadius;
133
+ }
134
+
135
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect:hover{
136
+ border: $borderWidth solid $secondary400;
137
+ }
138
+
139
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect.p-focus{
140
+ @extend .focus;
141
+ border: $borderWidth solid $secondary50;
142
+ }
143
+
144
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-label{
145
+ padding: calc($spacingXS - $borderWidth) $spacingZero calc($spacingXS - $borderWidth) $spacingS;
146
+ @extend .input-generic-small;
147
+ color: $black400;
148
+ }
149
+
150
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect.p-multiselect-chip .p-multiselect-label{
151
+ padding: calc($spacingXS - $borderWidth) $spacingZero calc($spacingXS - $borderWidth) $spacingS;
152
+ }
153
+
154
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-token{
155
+ height: $spacingM;
156
+ padding: calc($spacingXXS - $borderWidth) $spacingS;
157
+ border-radius: $borderRadius;
158
+ border-width: $borderWidth;
159
+ @extend .tag-generic-small;
160
+
161
+ .p-multiselect-token-icon{
162
+ @extend .icon-small-x-size;
163
+ }
164
+ }
165
+
166
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel{
167
+ border: $borderWidth solid $black200;
168
+ }
169
+
170
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items{
171
+ padding: $spacingXS;
172
+ }
173
+
174
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items .p-multiselect-item{
175
+ padding: calc($spacingXS - $borderWidth);
176
+ margin-bottom: $spacingXXS;
177
+ @extend .input-generic-small;
178
+ }
179
+
180
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items .p-multiselect-item:hover{
181
+ background: $primary50;
182
+ border-radius: $borderRadius;
183
+ }
184
+
185
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items .p-multiselect-item.p-highlight{
186
+ background: $primary50;
187
+ border-radius: $borderRadius;
188
+ }
189
+
190
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items .p-multiselect-item:not(.p-highlight):not(.p-disabled):hover{
191
+ background: $primary50;
192
+ border-radius: $borderRadius;
193
+ }
194
+
195
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-items .p-multiselect-item .p-checkbox{
196
+ margin-right: $spacingXS;
197
+ width: $spacingM;
198
+ }
199
+
200
+ :host ::ng-deep .w-input-multiselect-small .p-checkbox .p-checkbox-box {
201
+ border: $borderWidth solid $black200;
202
+ width: $spacingM;
203
+ height: $spacingM;
204
+ color: $black200;
205
+ border-radius: $checkboxBorderRadius;
206
+ align-self: center;
207
+ }
208
+
209
+ :host ::ng-deep .w-input-multiselect-small .p-checkbox .p-checkbox-box .p-checkbox-icon{
210
+ @extend .icon-small-size;
211
+ font-weight: bold;
212
+ }
213
+
214
+ :host ::ng-deep .w-input-multiselect-small .p-checkbox .p-checkbox-box.p-highlight{
215
+ border-color: $primaryColor !important;
216
+ background: $primaryColor;
217
+ color: $primaryColor !important;
218
+ }
219
+
220
+ :host ::ng-deep .w-input-multiselect-small .p-multiselect-panel .p-multiselect-header{
221
+ padding: calc($spacingXS - $borderWidth) calc($spacingM - $borderWidth);
222
+ }
223
+
224
+ :host ::ng-deep .w-input-multiselect-small .p-disabled{
225
+ background: $black100;
226
+ opacity: 1;
227
+ }
@@ -0,0 +1,23 @@
1
+ import { ComponentFixture, TestBed } from '@angular/core/testing';
2
+
3
+ import { WEditMultiselectComponent } from './w-edit-multiselect.component';
4
+
5
+ describe('WEditMultiselectComponent', () => {
6
+ let component: WEditMultiselectComponent;
7
+ let fixture: ComponentFixture<WEditMultiselectComponent>;
8
+
9
+ beforeEach(async () => {
10
+ await TestBed.configureTestingModule({
11
+ declarations: [ WEditMultiselectComponent ]
12
+ })
13
+ .compileComponents();
14
+
15
+ fixture = TestBed.createComponent(WEditMultiselectComponent);
16
+ component = fixture.componentInstance;
17
+ fixture.detectChanges();
18
+ });
19
+
20
+ it('should create', () => {
21
+ expect(component).toBeTruthy();
22
+ });
23
+ });
@@ -0,0 +1,81 @@
1
+ import { Component, EventEmitter, Input, OnInit, Output, forwardRef } from '@angular/core';
2
+ import { FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { ControlValueAccessor } from '@angular/forms';
4
+ import { SizeType } from '../../shared/enums/enum';
5
+
6
+ @Component({
7
+ selector: 'w-edit-multiselect',
8
+ templateUrl: './w-edit-multiselect.component.html',
9
+ styleUrls: ['./w-edit-multiselect.component.scss'],
10
+ providers: [
11
+ {
12
+ provide: NG_VALUE_ACCESSOR,
13
+ useExisting: forwardRef(() => WEditMultiselectComponent),
14
+ multi: true
15
+ }
16
+ ]
17
+ })
18
+ export class WEditMultiselectComponent implements OnInit, ControlValueAccessor{
19
+ @Input('label') label!: string;
20
+ @Input('placeholder') placeholder = "";
21
+ @Input('disabled') disabled: boolean = false;
22
+ @Input('required') required: boolean = false;
23
+ @Input('size') size: string = "medium";
24
+ @Input('options') options: any;
25
+ @Input('optionLabel') optionLabel!: string;
26
+ @Input('optionValue') optionValue!: string;
27
+ @Input('appendTo') appendTo!: string;
28
+ @Input('showClear') showClear: boolean = true;
29
+ @Input('formControl') formControl!: FormControl | null;
30
+ @Input('requiredErrorDescription') errorDescription: string = "Select an option is required";
31
+
32
+ @Output('onChange') onChangeEvent: EventEmitter<any> = new EventEmitter();
33
+
34
+ sizeType: typeof SizeType = SizeType;
35
+
36
+ onChange: any = () => {};
37
+ onTouch: any = () => {};
38
+
39
+ ngModelValue: any;
40
+
41
+ ngOnInit(): void {
42
+ }
43
+
44
+ writeValue(value: any): void {
45
+ this.ngModelValue = value;
46
+ }
47
+
48
+ registerOnChange(fn: any): void {
49
+ this.onChange = fn;
50
+ }
51
+
52
+ registerOnTouched(fn: any): void {
53
+ this.onTouch = fn;
54
+ }
55
+
56
+ setDisabledState(isDisabled: boolean): void {
57
+ this.disabled = isDisabled;
58
+ }
59
+
60
+ onOptionSelected(){
61
+ this.onChange(this.ngModelValue);
62
+ this.onTouch();
63
+
64
+ this.onChangeEvent.emit(this.ngModelValue);
65
+ }
66
+
67
+ onOptionSelectedForm(event: any){
68
+ this.onChangeEvent.emit(event.value);
69
+ }
70
+
71
+ onInputBlur(event: Event){
72
+ const newValue = (event.target as HTMLInputElement).value;
73
+ this.ngModelValue = newValue;
74
+ this.onChange(this.ngModelValue);
75
+ this.onTouch();
76
+ }
77
+
78
+ getSizeName(value: number): string {
79
+ return SizeType[value];
80
+ }
81
+ }
@@ -0,0 +1,56 @@
1
+ <div *ngIf="formControl; else noNgControl" class="w-input-select-field p-fluid field">
2
+ <label *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label.length > 0)" class="w-input-select-label" htmlFor="state" [ngClass]="{'w-input-select-label-disabled' : disabled}">{{label}}</label>
3
+ <div *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label == '')" class="w-generic-input-no-label-height"></div>
4
+ <p-dropdown *ngIf="getSizeName(sizeType.medium) == size" class="w-edit-select-input"
5
+ [ngClass]="{'ng-invalid ng-dirty': formControl.dirty && formControl.hasError('required')}"
6
+ [options]="options"
7
+ [optionLabel]="optionLabel"
8
+ [optionValue]="optionValue"
9
+ [placeholder]="placeholder"
10
+ [filter]="filter"
11
+ [showClear]="showClear"
12
+ [required]="required"
13
+ [formControl]="formControl"
14
+ [appendTo]="appendTo"
15
+ (onChange)="onOptionSelectForm($event)">
16
+ </p-dropdown>
17
+ <p-dropdown *ngIf="getSizeName(sizeType.small) == size" class="w-edit-select-input-small"
18
+ [ngClass]="{'ng-invalid ng-dirty': formControl.dirty && formControl.hasError('required')}"
19
+ [options]="options"
20
+ [optionLabel]="optionLabel"
21
+ [optionValue]="optionValue"
22
+ [filter]="filter"
23
+ [placeholder]="placeholder"
24
+ [showClear]="showClear"
25
+ [required]="required"
26
+ [formControl]="formControl"
27
+ [appendTo]="appendTo"
28
+ (onChange)="onOptionSelectForm($event)">
29
+ </p-dropdown>
30
+ <small *ngIf="getSizeName(sizeType.medium) == size && formControl.dirty && formControl.hasError('required')"
31
+ class="w-error-message-container w-full w-error-message p-error block">{{errorDescription}}</small>
32
+ </div>
33
+ <ng-template #noNgControl>
34
+ <div class="w-input-select-field p-fluid field">
35
+ <label *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label.length > 0)" class="w-input-select-label" htmlFor="state" [ngClass]="{'w-input-select-label-disabled' : disabled}">{{label}}</label>
36
+ <div *ngIf="getSizeName(sizeType.medium) == size && (label != undefined && label == '')" class="w-generic-input-no-label-height"></div>
37
+ <p-dropdown *ngIf="getSizeName(sizeType.medium) == size" class="w-edit-select-input"
38
+ [options]="options"
39
+ [optionLabel]="optionLabel"
40
+ [optionValue]="optionValue"
41
+ [filter]="filter"
42
+ [placeholder]="placeholder"
43
+ [disabled]="disabled" [(ngModel)]="ngModelValue" (ngModelChange)="onOptionSelected()" [showClear]="showClear"
44
+ [appendTo]="appendTo">
45
+ </p-dropdown>
46
+ <p-dropdown *ngIf="getSizeName(sizeType.small) == size" class="w-edit-select-input-small"
47
+ [options]="options"
48
+ [filter]="filter"
49
+ [optionLabel]="optionLabel"
50
+ [optionValue]="optionValue"
51
+ [placeholder]="placeholder"
52
+ [disabled]="disabled" [(ngModel)]="ngModelValue" (ngModelChange)="onOptionSelected()" [showClear]="showClear"
53
+ [appendTo]="appendTo">
54
+ </p-dropdown>
55
+ </div>
56
+ </ng-template>
@@ -0,0 +1,166 @@
1
+ @import '../../../styles/_variables.scss';
2
+
3
+ .w-input-select-field{
4
+ margin: $spacingZero;
5
+ }
6
+
7
+ .w-input-select-label{
8
+ padding: $spacingXS $spacingXS $spacingS $spacingXS;
9
+ margin: $spacingZero;
10
+ color: $black846;
11
+ @extend .input-generic-label;
12
+ }
13
+
14
+ .w-input-select-label-disabled.w-input-select-label{
15
+ color: $black400;
16
+ }
17
+
18
+ :host ::ng-deep .w-edit-select-input .p-dropdown{
19
+ border-width: $borderWidth;
20
+ border-radius: $borderRadius;
21
+ border-color: $black200;
22
+ }
23
+
24
+ :host ::ng-deep .w-edit-select-input .p-inputtext{
25
+ @extend .input-generic;
26
+ padding: calc($spacingXS - $borderWidth) 0px ($spacingXS - $borderWidth) $spacingM;
27
+ }
28
+
29
+ :host ::ng-deep .w-edit-select-input .p-dropdown:not(.p-disabled):hover{
30
+ border: $borderWidth solid $secondary400;
31
+ }
32
+
33
+ :host ::ng-deep .w-edit-select-input .p-dropdown:not(.p-disabled).p-focus {
34
+ @extend .focus;
35
+ border: $borderWidth solid $secondary50;
36
+ }
37
+
38
+ :host ::ng-deep .w-edit-select-input .p-dropdown .p-placeholder {
39
+ color: $black400;
40
+ }
41
+
42
+ :host ::ng-deep .w-edit-select-input .p-dropdown .p-dropdown-trigger{
43
+ width: 24px;
44
+ padding: $spacingXS $spacingXL $spacingXS $spacingXL;
45
+ }
46
+
47
+ :host ::ng-deep .w-edit-select-input .p-dropdown-panel{
48
+ padding: $spacingXS $spacingXS $spacingM $spacingXS;
49
+ }
50
+
51
+ :host ::ng-deep .w-edit-select-input .p-dropdown-panel .p-dropdown-items{
52
+ padding: $spacingZero;
53
+ }
54
+
55
+ :host ::ng-deep .w-edit-select-input .p-dropdown-panel .p-dropdown-items .p-dropdown-item{
56
+ padding: $spacingXS $spacingM;
57
+ margin-bottom: $spacingXXS;
58
+ @extend .subtitle2;
59
+ font-weight: 600;
60
+ }
61
+
62
+ :host ::ng-deep .w-edit-select-input .p-dropdown-panel .p-dropdown-items .p-dropdown-item:hover{
63
+ background: $primary50;
64
+ border-radius: $borderRadius;
65
+ }
66
+
67
+ :host ::ng-deep .w-edit-select-input .p-multiselect-panel .p-multiselect-items .p-multiselect-item.p-highlight{
68
+ background: $primary50;
69
+ border-radius: $borderRadius;
70
+ }
71
+
72
+ :host ::ng-deep .w-edit-select-input .p-dropdown-panel .p-dropdown-items .p-dropdown-item.p-highlight{
73
+ background: $primary50;
74
+ border-radius: $borderRadius;
75
+ color: $black;
76
+ }
77
+
78
+ :host ::ng-deep .w-edit-select-input .p-disabled{
79
+ background: $black100;
80
+ opacity: 1;
81
+ }
82
+
83
+ :host ::ng-deep .w-edit-select-input .p-disabled .p-inputtext{
84
+ color: $black400;
85
+ font-weight: 600;
86
+ }
87
+
88
+ :host ::ng-deep p-dropdown.w-edit-select-input.ng-dirty.ng-invalid > .p-dropdown {
89
+ border-color: $statusError3;
90
+ }
91
+
92
+ .w-error-message-container{
93
+ height: $spacingXXXL;
94
+ }
95
+
96
+ .w-error-message{
97
+ @extend .caption;
98
+ color: $statusError1;
99
+ padding: $spacingXS;
100
+ margin-top: $spacingZero;
101
+ }
102
+
103
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown{
104
+ border-width: $borderWidth;
105
+ border-radius: $borderRadius;
106
+ border-color: $black200;
107
+ }
108
+
109
+ :host ::ng-deep .w-edit-select-input-small .p-inputtext{
110
+ padding: $spacingZero $spacingZero $spacingZero $spacingS;
111
+ align-self: center;
112
+ @extend .input-generic-small;
113
+ }
114
+
115
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown:not(.p-disabled):hover{
116
+ border: $borderWidth solid $secondary400;
117
+ }
118
+
119
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown:not(.p-disabled).p-focus {
120
+ @extend .focus;
121
+ border: $borderWidth solid $secondary50;
122
+ }
123
+
124
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown .p-placeholder {
125
+ color: $black400;
126
+ }
127
+
128
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown .p-dropdown-trigger{
129
+ width: auto;
130
+ height: 28px;
131
+ padding-right: $spacingS;
132
+ }
133
+
134
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown-panel{
135
+ padding: $spacingXS;
136
+ }
137
+
138
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown-panel .p-dropdown-items{
139
+ padding: $spacingZero;
140
+ }
141
+
142
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown-panel .p-dropdown-items .p-dropdown-item{
143
+ padding: $spacingXS;
144
+ margin-bottom: $spacingXXS;
145
+ font-weight: 600;
146
+ }
147
+
148
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown-panel .p-dropdown-items .p-dropdown-item:hover{
149
+ background: $primary50;
150
+ border-radius: $borderRadius;
151
+ }
152
+
153
+ :host ::ng-deep .w-edit-select-input-small .p-dropdown-panel .p-dropdown-items .p-dropdown-item.p-highlight{
154
+ background: $primary50;
155
+ border-radius: $borderRadius;
156
+ color: $black;
157
+ }
158
+
159
+ :host ::ng-deep .w-edit-select-input-small .p-disabled{
160
+ background: $black100;
161
+ opacity: 1;
162
+ }
163
+
164
+ :host ::ng-deep .w-edit-select-input-small .p-disabled .p-inputtext{
165
+ color: $black400;
166
+ }