@iamproperty/components 7.6.4--beta8 → 7.7.0

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 (337) hide show
  1. package/assets/css/components/actionbar.component.css +1 -1
  2. package/assets/css/components/actionbar.component.css.map +1 -1
  3. package/assets/css/components/actionbar.global.css +1 -1
  4. package/assets/css/components/actionbar.global.css.map +1 -1
  5. package/assets/css/components/address-lookup.component.css +1 -1
  6. package/assets/css/components/address-lookup.component.css.map +1 -1
  7. package/assets/css/components/applied-filters.css +1 -1
  8. package/assets/css/components/applied-filters.css.map +1 -1
  9. package/assets/css/components/barchart.component.css +1 -1
  10. package/assets/css/components/barchart.component.css.map +1 -1
  11. package/assets/css/components/bento-grid.global.css +1 -1
  12. package/assets/css/components/calendar.component.css +1 -1
  13. package/assets/css/components/calendar.component.css.map +1 -1
  14. package/assets/css/components/calendar.config.css +1 -1
  15. package/assets/css/components/card.component.css +1 -1
  16. package/assets/css/components/card.component.css.map +1 -1
  17. package/assets/css/components/card.module.css +1 -1
  18. package/assets/css/components/carousel.component.css +1 -1
  19. package/assets/css/components/carousel.component.css.map +1 -1
  20. package/assets/css/components/charts.config.css +1 -1
  21. package/assets/css/components/charts.css +1 -1
  22. package/assets/css/components/charts.css.map +1 -1
  23. package/assets/css/components/charts.module.css +1 -1
  24. package/assets/css/components/charts.module.css.map +1 -1
  25. package/assets/css/components/collapsible-side.css +1 -1
  26. package/assets/css/components/collapsible-side.css.map +1 -1
  27. package/assets/css/components/config.component.css +1 -1
  28. package/assets/css/components/config.component.css.map +1 -1
  29. package/assets/css/components/content.component.css +1 -1
  30. package/assets/css/components/content.component.css.map +1 -1
  31. package/assets/css/components/doughnutchart.component.css +1 -1
  32. package/assets/css/components/doughnutchart.component.css.map +1 -1
  33. package/assets/css/components/fileupload.css +1 -1
  34. package/assets/css/components/fileupload.css.map +1 -1
  35. package/assets/css/components/filter-card.component.css +1 -1
  36. package/assets/css/components/header.css +1 -1
  37. package/assets/css/components/header.css.map +1 -1
  38. package/assets/css/components/inline-edit.css +1 -1
  39. package/assets/css/components/inline-edit.css.map +1 -1
  40. package/assets/css/components/input.component.css +1 -1
  41. package/assets/css/components/input.component.css.map +1 -1
  42. package/assets/css/components/menu.component.css +1 -1
  43. package/assets/css/components/menu.component.css.map +1 -1
  44. package/assets/css/components/milestone.css +1 -1
  45. package/assets/css/components/modal.component.css +1 -1
  46. package/assets/css/components/modal.component.css.map +1 -1
  47. package/assets/css/components/multi-step-modal.component.css +1 -1
  48. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  49. package/assets/css/components/multiselect.css +1 -1
  50. package/assets/css/components/multiselect.css.map +1 -1
  51. package/assets/css/components/nav.component.css +1 -1
  52. package/assets/css/components/nav.component.css.map +1 -1
  53. package/assets/css/components/nav.global.css +1 -1
  54. package/assets/css/components/nav.global.css.map +1 -1
  55. package/assets/css/components/notification.css +1 -1
  56. package/assets/css/components/notification.css.map +1 -1
  57. package/assets/css/components/pagination.css +1 -1
  58. package/assets/css/components/pagination.css.map +1 -1
  59. package/assets/css/components/password.component.css +1 -1
  60. package/assets/css/components/password.component.css.map +1 -1
  61. package/assets/css/components/property-searchbar.css +1 -1
  62. package/assets/css/components/property-searchbar.css.map +1 -1
  63. package/assets/css/components/rank.component.css +1 -1
  64. package/assets/css/components/rank.component.css.map +1 -1
  65. package/assets/css/components/record-card.component.css +1 -1
  66. package/assets/css/components/record-card.component.css.map +1 -1
  67. package/assets/css/components/slider.css +1 -1
  68. package/assets/css/components/slider.css.map +1 -1
  69. package/assets/css/components/split-button.component.css +1 -1
  70. package/assets/css/components/split-button.component.css.map +1 -1
  71. package/assets/css/components/table-basic.component.css +1 -1
  72. package/assets/css/components/table-basic.component.css.map +1 -1
  73. package/assets/css/components/table-basic.global.css +1 -1
  74. package/assets/css/components/table-basic.global.css.map +1 -1
  75. package/assets/css/components/table.component.css +1 -1
  76. package/assets/css/components/table.component.css.map +1 -1
  77. package/assets/css/components/table.global.css +1 -1
  78. package/assets/css/components/table.global.css.map +1 -1
  79. package/assets/css/components/tabs.component.css +1 -1
  80. package/assets/css/components/tabs.component.css.map +1 -1
  81. package/assets/css/components/tag.component.css +1 -1
  82. package/assets/css/components/tag.component.css.map +1 -1
  83. package/assets/css/components/tooltip.component.css +1 -1
  84. package/assets/css/components/tooltip.component.css.map +1 -1
  85. package/assets/css/components/video-card.component.css +1 -1
  86. package/assets/css/components/video-modal.component.css +1 -1
  87. package/assets/css/components/video-modal.component.css.map +1 -1
  88. package/assets/css/core.min.css +1 -1
  89. package/assets/css/core.min.css.map +1 -1
  90. package/assets/css/style.min.css +1 -1
  91. package/assets/css/style.min.css.map +1 -1
  92. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  93. package/assets/js/components/actionbar/actionbar.component.js +1 -1
  94. package/assets/js/components/actionbar/actionbar.component.min.js +7 -7
  95. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  96. package/assets/js/components/address-lookup/address-lookup.component.js +1 -1
  97. package/assets/js/components/address-lookup/address-lookup.component.min.js +5 -5
  98. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  99. package/assets/js/components/advanced-select/advanced-select.component.js +1 -1
  100. package/assets/js/components/advanced-select/advanced-select.component.min.js +2 -2
  101. package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
  102. package/assets/js/components/applied-filters/applied-filters.component.min.js +4 -4
  103. package/assets/js/components/barchart/barchart.component.min.js +6 -6
  104. package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
  105. package/assets/js/components/bento-grid/bento-grid.component.min.js +2 -2
  106. package/assets/js/components/calendar/calendar.component.min.js +2 -2
  107. package/assets/js/components/card/card.component.min.js +7 -7
  108. package/assets/js/components/carousel/carousel.component.min.js +4 -4
  109. package/assets/js/components/collapsible-side/collapsible-side.component.js +1 -1
  110. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +5 -5
  111. package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
  112. package/assets/js/components/config/config.component.min.js +9 -9
  113. package/assets/js/components/content/content.component.min.js +4 -4
  114. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  115. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +7 -7
  116. package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
  117. package/assets/js/components/filter-card/filter-card.component.min.js +2 -2
  118. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  119. package/assets/js/components/form/form.component.min.js +1 -1
  120. package/assets/js/components/header/header.component.js +39 -1
  121. package/assets/js/components/header/header.component.min.js +40 -4
  122. package/assets/js/components/header/header.component.min.js.map +1 -1
  123. package/assets/js/components/inline-edit/inline-edit.component.js +1 -1
  124. package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
  125. package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
  126. package/assets/js/components/input/input.component.js +1 -1
  127. package/assets/js/components/input/input.component.min.js +3 -3
  128. package/assets/js/components/input/input.component.min.js.map +1 -1
  129. package/assets/js/components/input-range/input-range.component.js +1 -1
  130. package/assets/js/components/input-range/input-range.component.min.js +2 -2
  131. package/assets/js/components/input-range/input-range.component.min.js.map +1 -1
  132. package/assets/js/components/marketing/marketing.component.js +1 -1
  133. package/assets/js/components/marketing/marketing.component.min.js +2 -2
  134. package/assets/js/components/marketing/marketing.component.min.js.map +1 -1
  135. package/assets/js/components/menu/menu.component.min.js +2 -2
  136. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  137. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  138. package/assets/js/components/modal/modal.component.js +1 -1
  139. package/assets/js/components/modal/modal.component.min.js +5 -5
  140. package/assets/js/components/modal/modal.component.min.js.map +1 -1
  141. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  142. package/assets/js/components/multi-step-modal/multi-step-modal.component.js +1 -1
  143. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +5 -5
  144. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -1
  145. package/assets/js/components/multiselect/multiselect.component.min.js +2 -2
  146. package/assets/js/components/nav/nav.component.js +1 -1
  147. package/assets/js/components/nav/nav.component.min.js +6 -6
  148. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  149. package/assets/js/components/notification/notification.component.min.js +2 -2
  150. package/assets/js/components/pagination/pagination.component.js +1 -1
  151. package/assets/js/components/pagination/pagination.component.min.js +4 -4
  152. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  153. package/assets/js/components/password/password.component.js +1 -1
  154. package/assets/js/components/password/password.component.min.js +5 -5
  155. package/assets/js/components/password/password.component.min.js.map +1 -1
  156. package/assets/js/components/popover/popover.component.min.js +1 -1
  157. package/assets/js/components/rank/rank.component.min.js +1 -1
  158. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  159. package/assets/js/components/rating/rating.component.min.js +1 -1
  160. package/assets/js/components/record-card/record-card.component.min.js +2 -2
  161. package/assets/js/components/search/search.component.js +1 -1
  162. package/assets/js/components/search/search.component.min.js +2 -2
  163. package/assets/js/components/search/search.component.min.js.map +1 -1
  164. package/assets/js/components/slider/slider.component.min.js +2 -2
  165. package/assets/js/components/split-button/split-button.component.js +0 -4
  166. package/assets/js/components/split-button/split-button.component.min.js +6 -7
  167. package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
  168. package/assets/js/components/std-address-lookup/std-address-lookup.component.js +41 -11
  169. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +9 -17
  170. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  171. package/assets/js/components/table/table.component.min.js +4 -4
  172. package/assets/js/components/table-ajax/table-ajax.component.min.js +7 -7
  173. package/assets/js/components/table-basic/table-basic.component.min.js +5 -5
  174. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +4 -4
  175. package/assets/js/components/table-submit/table-submit.component.min.js +7 -7
  176. package/assets/js/components/tabs/tabs.component.js +1 -1
  177. package/assets/js/components/tabs/tabs.component.min.js +5 -5
  178. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  179. package/assets/js/components/tag/tag.component.min.js +4 -4
  180. package/assets/js/components/tag/tag.component.min.js.map +1 -1
  181. package/assets/js/components/tooltip/tooltip.component.min.js +2 -2
  182. package/assets/js/components/video-card/video-card.component.min.js +2 -2
  183. package/assets/js/components/video-modal/video-modal.component.js +1 -1
  184. package/assets/js/components/video-modal/video-modal.component.min.js +4 -4
  185. package/assets/js/components/video-modal/video-modal.component.min.js.map +1 -1
  186. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  187. package/assets/js/modules/helper.test.js +84 -0
  188. package/assets/js/modules/test.js +19 -0
  189. package/assets/js/scripts.bundle.js +1 -1
  190. package/assets/js/scripts.bundle.min.js +1 -1
  191. package/assets/sass/_components.scss +7 -7
  192. package/assets/sass/_corefiles.scss +8 -7
  193. package/assets/sass/_elements.scss +16 -16
  194. package/assets/sass/_functions/bs_mixins.scss +3 -3
  195. package/assets/sass/_utilities.scss +4 -3
  196. package/assets/sass/components/actionbar.component.scss +25 -25
  197. package/assets/sass/components/actionbar.global.scss +4 -4
  198. package/assets/sass/components/address-lookup.component.scss +7 -7
  199. package/assets/sass/components/applied-filters.scss +2 -2
  200. package/assets/sass/components/barchart.component.scss +6 -6
  201. package/assets/sass/components/bento-grid.component.scss +2 -2
  202. package/assets/sass/components/bento-grid.global.scss +3 -3
  203. package/assets/sass/components/calendar.component.scss +14 -14
  204. package/assets/sass/components/calendar.config.scss +4 -4
  205. package/assets/sass/components/card.component.scss +10 -10
  206. package/assets/sass/components/card.module.scss +2 -2
  207. package/assets/sass/components/carousel.component.scss +8 -8
  208. package/assets/sass/components/carousel.config.scss +2 -2
  209. package/assets/sass/components/charts.config.scss +3 -3
  210. package/assets/sass/components/charts.module.scss +4 -18
  211. package/assets/sass/components/charts.scss +3 -3
  212. package/assets/sass/components/collapsible-side.scss +16 -16
  213. package/assets/sass/components/config.component.scss +5 -5
  214. package/assets/sass/components/content.component.scss +1 -1
  215. package/assets/sass/components/darkmode.component.scss +1 -1
  216. package/assets/sass/components/doughnutchart.component.scss +11 -10
  217. package/assets/sass/components/fileupload.scss +9 -9
  218. package/assets/sass/components/filter-card.component.scss +3 -3
  219. package/assets/sass/components/header.scss +121 -23
  220. package/assets/sass/components/inline-edit.preload.scss +1 -1
  221. package/assets/sass/components/inline-edit.scss +1 -1
  222. package/assets/sass/components/input.component.scss +2 -1
  223. package/assets/sass/components/marketing.component.scss +1 -1
  224. package/assets/sass/components/menu.component.scss +10 -10
  225. package/assets/sass/components/milestone.scss +2 -2
  226. package/assets/sass/components/modal.component.scss +22 -22
  227. package/assets/sass/components/multi-step-modal.component.scss +15 -15
  228. package/assets/sass/components/multi-step-modal.global.scss +1 -1
  229. package/assets/sass/components/multi-step.component.scss +3 -3
  230. package/assets/sass/components/multiselect.scss +9 -9
  231. package/assets/sass/components/nav.component.scss +24 -24
  232. package/assets/sass/components/nav.docs.scss +1 -1
  233. package/assets/sass/components/nav.global.scss +120 -119
  234. package/assets/sass/components/nav.preload.scss +1 -1
  235. package/assets/sass/components/notification.scss +34 -7
  236. package/assets/sass/components/pagination.scss +7 -7
  237. package/assets/sass/components/password.component.scss +1 -1
  238. package/assets/sass/components/popover.component.scss +3 -3
  239. package/assets/sass/components/property-searchbar.scss +1 -1
  240. package/assets/sass/components/rank.component.scss +19 -19
  241. package/assets/sass/components/rankings.component.scss +1 -1
  242. package/assets/sass/components/rankings.global.scss +2 -2
  243. package/assets/sass/components/record-card.component.scss +15 -15
  244. package/assets/sass/components/slider.scss +4 -4
  245. package/assets/sass/components/snapshot.scss +1 -1
  246. package/assets/sass/components/split-button.component.scss +2 -2
  247. package/assets/sass/components/table-basic.component.scss +3 -3
  248. package/assets/sass/components/table-basic.global.scss +30 -10
  249. package/assets/sass/components/table.component.scss +27 -16
  250. package/assets/sass/components/table.global.scss +51 -49
  251. package/assets/sass/components/tabs.component.scss +3 -3
  252. package/assets/sass/components/tabs.config.scss +1 -1
  253. package/assets/sass/components/tag.component.scss +2 -2
  254. package/assets/sass/components/testimonial.scss +2 -2
  255. package/assets/sass/components/timeline.scss +3 -3
  256. package/assets/sass/components/tooltip.component.scss +13 -8
  257. package/assets/sass/components/video-card.component.scss +2 -2
  258. package/assets/sass/components/video-modal.component.scss +1 -1
  259. package/assets/sass/components/word-count.component.scss +1 -1
  260. package/assets/sass/core.scss +1 -1
  261. package/assets/sass/elements/{admin-panel.scss → admin-panel.css} +17 -24
  262. package/assets/sass/elements/{badge-tag.scss → badge-tag.css} +11 -19
  263. package/assets/sass/elements/button__group.css +3 -2
  264. package/assets/sass/elements/{buttons--action.scss → buttons--action.css} +11 -19
  265. package/assets/sass/elements/{buttons--compact.scss → buttons--compact.css} +8 -36
  266. package/assets/sass/elements/buttons--global.scss +12 -18
  267. package/assets/sass/elements/buttons--special.scss +1 -1
  268. package/assets/sass/elements/buttons.scss +6 -6
  269. package/assets/sass/elements/container.scss +6 -6
  270. package/assets/sass/elements/details.scss +13 -13
  271. package/assets/sass/elements/dialog.scss +7 -7
  272. package/assets/sass/elements/dropdown.scss +1 -1
  273. package/assets/sass/elements/feature.scss +114 -6
  274. package/assets/sass/elements/forms.scss +24 -25
  275. package/assets/sass/elements/icons.css +1 -1
  276. package/assets/sass/elements/links.scss +5 -5
  277. package/assets/sass/elements/lists--tick-list.scss +18 -6
  278. package/assets/sass/elements/modal.scss +24 -24
  279. package/assets/sass/elements/popover.scss +14 -14
  280. package/assets/sass/elements/prefix.scss +18 -4
  281. package/assets/sass/elements/progress.scss +14 -14
  282. package/assets/sass/elements/table.element.scss +9 -5
  283. package/assets/sass/elements/tooltips.scss +4 -4
  284. package/assets/sass/email.scss +1 -1
  285. package/assets/sass/foundations/animations.scss +2 -0
  286. package/assets/sass/foundations/colours.scss +1 -1
  287. package/assets/sass/foundations/reboot.scss +1 -1
  288. package/assets/sass/foundations/root.scss +29 -92
  289. package/assets/sass/templates/auth.scss +7 -7
  290. package/assets/sass/templates/form.scss +8 -8
  291. package/assets/sass/utilities/border.scss +6 -18
  292. package/assets/sass/utilities/font-awesome-iso-fallbacks.scss +6 -0
  293. package/assets/sass/utilities/shadow.scss +7 -0
  294. package/assets/sass/utilities/wider-colours.scss +0 -2
  295. package/assets/ts/components/actionbar/actionbar.component.ts +1 -1
  296. package/assets/ts/components/address-lookup/address-lookup.component.ts +1 -1
  297. package/assets/ts/components/advanced-select/advanced-select.component.ts +1 -1
  298. package/assets/ts/components/collapsible-side/collapsible-side.component.ts +1 -1
  299. package/assets/ts/components/header/header.component.ts +40 -1
  300. package/assets/ts/components/inline-edit/inline-edit.component.ts +1 -1
  301. package/assets/ts/components/input/input.component.ts +1 -1
  302. package/assets/ts/components/input-range/input-range.component.ts +1 -1
  303. package/assets/ts/components/marketing/marketing.component.ts +1 -1
  304. package/assets/ts/components/modal/modal.component.ts +1 -1
  305. package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +1 -1
  306. package/assets/ts/components/nav/nav.component.ts +1 -1
  307. package/assets/ts/components/pagination/pagination.component.ts +1 -1
  308. package/assets/ts/components/password/password.component.ts +1 -1
  309. package/assets/ts/components/search/search.component.ts +1 -1
  310. package/assets/ts/components/split-button/split-button.component.ts +0 -4
  311. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +46 -12
  312. package/assets/ts/components/tabs/tabs.component.ts +1 -1
  313. package/assets/ts/components/video-modal/video-modal.component.ts +1 -1
  314. package/assets/ts/modules/helper.test.ts +143 -0
  315. package/assets/ts/modules/test.ts +22 -0
  316. package/dist/components.es.js +29 -29
  317. package/dist/components.umd.js +293 -266
  318. package/package.json +9 -21
  319. package/assets/js/tests/helpers.spec.js +0 -79
  320. package/assets/js/ui-tests/card.spec.js +0 -14
  321. package/assets/js/ui-tests/carousel.spec.js +0 -60
  322. package/assets/js/ui-tests/chart.spec.js +0 -59
  323. package/assets/js/ui-tests/fileupload.spec.js +0 -22
  324. package/assets/js/ui-tests/filterlist.spec.js +0 -22
  325. package/assets/js/ui-tests/multistep.spec.js +0 -68
  326. package/assets/js/ui-tests/slider.spec.js +0 -20
  327. package/assets/js/ui-tests/table.spec.js +0 -81
  328. package/assets/ts/tests/helpers.spec.ts +0 -137
  329. package/assets/ts/ui-tests/card.spec.ts +0 -19
  330. package/assets/ts/ui-tests/carousel.spec.ts +0 -66
  331. package/assets/ts/ui-tests/chart.spec.ts +0 -71
  332. package/assets/ts/ui-tests/data-layer.spec.js +0 -68
  333. package/assets/ts/ui-tests/fileupload.spec.ts +0 -30
  334. package/assets/ts/ui-tests/filterlist.spec.ts +0 -26
  335. package/assets/ts/ui-tests/multistep.spec.ts +0 -78
  336. package/assets/ts/ui-tests/slider.spec.ts +0 -27
  337. package/assets/ts/ui-tests/table.spec.ts +0 -91
@@ -1,19 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { getChartData } from '../modules/chart.module';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamCard from '../components/card/card.component';
8
-
9
- describe('The card component', () => {
10
- if (!window.customElements.get(`iam-card`)) window.customElements.define(`iam-card`, iamCard);
11
-
12
- document.body.innerHTML = `
13
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>`;
14
-
15
- test('should have the class of card added to it', () => {
16
- let component = document.querySelector('iam-card');
17
- expect(component.classList).toContain('card');
18
- });
19
- });
@@ -1,66 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { getChartData } from '../modules/chart.module';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamCarousel from '../components/carousel/carousel.component';
8
- import iamCard from '../components/card/card.component';
9
-
10
- import { getProgressMax } from '../modules/carousel';
11
-
12
- describe('The carousel component', () => {
13
- if (!window.customElements.get(`iam-carousel`)) window.customElements.define(`iam-carousel`, iamCarousel);
14
- if (!window.customElements.get(`iam-card`)) window.customElements.define(`iam-card`, iamCard);
15
-
16
- document.body.innerHTML = `
17
- <iam-carousel>
18
- <div>
19
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
20
- </div>
21
- <div>
22
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
23
- </div>
24
- <div>
25
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
26
- </div>
27
- <div>
28
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
29
- </div>
30
- <div>
31
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
32
- </div>
33
- <div>
34
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
35
- </div>
36
- <div>
37
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
38
- </div>
39
- <div>
40
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
41
- </div>
42
- <div>
43
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
44
- </div>
45
- <div>
46
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
47
- </div>
48
- <div>
49
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
50
- </div>
51
- <div>
52
- <iam-card>Financial preparation <span>Here would be the top level description of the task</span></iam-card>
53
- </div>
54
- </iam-carousel>`;
55
-
56
- test('should have a pip for each item', () => {
57
- let component = document.querySelector('iam-carousel');
58
- let value = component?.shadowRoot?.querySelectorAll('.carousel__controls button').length;
59
-
60
- expect(value).toEqual(12);
61
- });
62
-
63
- test('should set the max value of the range input to the number of items divided by the visible items', () => {
64
- expect(getProgressMax(9, 3)).toEqual(7);
65
- });
66
- });
@@ -1,71 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { getChartData } from '../modules/chart.module';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamBarChart from '../components/barchart/barchart.component';
8
-
9
- describe('The bar chart component', () => {
10
- if (!window.customElements.get(`iam-barchart`)) window.customElements.define(`iam-barchart`, iamBarChart);
11
-
12
- document.body.innerHTML = `
13
- <iam-barchart>
14
- <table>
15
- <thead>
16
- <tr>
17
- <th>Items</th>
18
- <th>Value</th>
19
- </tr>
20
- </thead>
21
- <tbody>
22
- <tr>
23
- <td>Item 1</td>
24
- <td>300</td>
25
- </tr>
26
- <tr>
27
- <td>Item 2</td>
28
- <td>150</td>
29
- </tr>
30
- <tr>
31
- <td>Item 3</td>
32
- <td>100</td>
33
- </tr>
34
- </tbody>
35
- </table>
36
- </iam-barchart>`;
37
-
38
- test('should sync HTML changes with the shadow dom', () => {
39
- let component = document.querySelector('iam-barchart');
40
- let domElement = component.querySelector('tr:first-child td:nth-child(2)');
41
-
42
- let shadowElement = component.shadowRoot.querySelector('tr:first-child td:nth-child(2)');
43
- let value = shadowElement?.innerHTML;
44
-
45
- expect(value).toEqual('<span data-group="Item 1" part="popover">300</span>');
46
- });
47
-
48
- test('should create the min attribute as 0', () => {
49
- let component = document.querySelector('iam-barchart');
50
- let { min } = getChartData(component);
51
-
52
- expect(min).toEqual(0);
53
- });
54
-
55
- test('should equal the largest single value', () => {
56
- let component = document.querySelector('iam-barchart');
57
- let { max } = getChartData(component);
58
-
59
- expect(max).toEqual(300);
60
- });
61
-
62
- test('should have the class of .chart--fit-content added as there is less than 10 bars', () => {
63
- let component = document.querySelector('iam-barchart');
64
- expect(component.classList).toContain('chart--fit-content');
65
- });
66
-
67
- test('should have the class of .chart--no-scale added as there is less than 5 bars', () => {
68
- let component = document.querySelector('iam-barchart');
69
- expect(component.classList).toContain('chart--no-scale');
70
- });
71
- });
@@ -1,68 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import createDataLayer from '../modules/data-layer';
4
-
5
- describe('createDataLayer', () => {
6
- // Mocking the window object for testing
7
- let mockDataLayer = [];
8
- beforeEach(() => {
9
- window.dataLayer = mockDataLayer;
10
- document.title = 'Mock Page Title';
11
- });
12
-
13
- it('should push a "Pageview" event to dataLayer on function call', () => {
14
- createDataLayer();
15
- expect(window.dataLayer).toEqual([
16
- {
17
- event: 'Pageview',
18
- pageTitle: 'Mock Page Title',
19
- },
20
- ]);
21
- });
22
-
23
- it('should push a "closeDetails" event when the document click target has "open" attribute and is summary element', () => {
24
- // Create a mock DOM structure with a summary element having the 'open' attribute
25
- document.body.innerHTML = `
26
- <details>
27
- <summary open>Summary Text</summary>
28
- </details>
29
- `;
30
- const summaryElement = document.querySelector('summary');
31
-
32
- // Simulate the click event on the summary element
33
- const clickEvent = new MouseEvent('click', {
34
- bubbles: true,
35
- cancelable: true,
36
- });
37
- summaryElement.dispatchEvent(clickEvent);
38
-
39
- expect(window.dataLayer).toEqual([
40
- {
41
- event: 'Pageview',
42
- pageTitle: 'Mock Page Title',
43
- },
44
- {
45
- event: 'openDetails',
46
- detailsTitle: 'Summary Text',
47
- },
48
- ]);
49
-
50
- summaryElement.dispatchEvent(clickEvent);
51
- expect(window.dataLayer).toEqual([
52
- {
53
- event: 'Pageview',
54
- pageTitle: 'Mock Page Title',
55
- },
56
- {
57
- event: 'openDetails',
58
- detailsTitle: 'Summary Text',
59
- },
60
- {
61
- event: 'closeDetails',
62
- detailsTitle: 'Summary Text',
63
- },
64
- ]);
65
- });
66
-
67
- // More test cases for other scenarios can be added here...
68
- });
@@ -1,30 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { getChartData } from '../modules/chart.module';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamFileupload from '../components/fileupload/fileupload.component';
8
-
9
- describe('The Fileupload component', () => {
10
- if (!window.customElements.get(`iam-fileupload`)) window.customElements.define(`iam-fileupload`, iamFileupload);
11
-
12
- document.body.innerHTML = `
13
- <iam-fileupload>
14
- <input type="file" name="files[]" accept=".pdf, .csv, .jpg, .png" multiple="multiple" />
15
- </iam-fileupload>`;
16
-
17
- test('should have a title in its UI', () => {
18
- let component = document.querySelector('iam-fileupload');
19
- let title = component?.shadowRoot.querySelector('.file-upload__title');
20
-
21
- expect(title?.innerHTML).toContain('Upload file');
22
- });
23
-
24
- test('should have a button in its UI', () => {
25
- let component = document.querySelector('iam-fileupload');
26
- let button = component?.shadowRoot.querySelector('button');
27
-
28
- expect(button?.innerHTML).toContain('Upload file');
29
- });
30
- });
@@ -1,26 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { filterTheList } from '../modules/filterlist';
4
-
5
- const listHTML = `
6
- <li class="lead text-primary pb-1">Olivia Anderson</li>
7
- <li class="lead text-primary pb-1">Ethan Ramirez</li>
8
- <li class="lead text-primary pb-1">Sophia Patel</li>
9
- <li class="lead text-primary pb-1">Noah Jenkins</li>
10
- <li class="lead text-primary pb-1">Ava Thompson</li>
11
- <li class="lead text-primary pb-1">Lucas Myers</li>
12
- <li class="lead text-primary pb-1">Mia Carter</li>
13
- <li class="lead text-primary pb-1">Benjamin Lee</li>
14
- `;
15
-
16
- describe('addDataAttributes', () => {
17
- let list = document.createElement('div');
18
- list.innerHTML = listHTML;
19
-
20
- filterTheList(list, 'Lucas');
21
-
22
- test('should add a class of d-none to each item except the one containing Lucas Myers', () => {
23
- expect(list.querySelectorAll('li:not(.d-none)').length).toEqual(1);
24
- expect(list.querySelector('li:not(.d-none)').textContent).toEqual('Lucas Myers');
25
- });
26
- });
@@ -1,78 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import { getChartData } from '../modules/chart.module';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamMultiStep from '../components/multi-step/multi-step.component';
8
-
9
- describe('The Multi-step component', () => {
10
- if (!window.customElements.get(`iam-multi-step`)) window.customElements.define(`iam-multi-step`, iamMultiStep);
11
-
12
- document.body.innerHTML = `
13
- <iam-multi-step>
14
- <form>
15
- <span class="h3">Multi-step modal title</span>
16
-
17
- <fieldset data-title="Personal details">
18
- <div>
19
- <label for="input1">Name 1</label>
20
- <input type="text" id="input1" name="input1" placeholder="Optional placeholder text" required="" />
21
- <span class="invalid-feedback">This field is required</span>
22
- </div>
23
- </fieldset>
24
- <fieldset data-title="Property details">
25
- <div>
26
- <label for="input2">Name 2</label>
27
- <input type="text" id="input2" name="input2" placeholder="Optional placeholder text" required="" />
28
- <span class="invalid-feedback">This field is required</span>
29
- </div>
30
- </fieldset>
31
- <fieldset data-title="Location">
32
- <div>
33
- <label for="input3">Name 3</label>
34
- <input
35
- type="text"
36
- id="input3"
37
- name="input3"
38
- placeholder="Optional placeholder text"
39
- required=""
40
- class="is-invalid"
41
- />
42
- <span class="invalid-feedback">This field is required</span>
43
- </div>
44
- </fieldset>
45
- <fieldset data-title="Submit property">
46
- <div>
47
- <label for="input4">Name 4</label>
48
- <input type="text" id="input4" name="input4" placeholder="Optional placeholder text" required="" />
49
- <span class="invalid-feedback">This field is required</span>
50
- </div>
51
- </fieldset>
52
- <button class="btn btn-primary colour-success" type="submit">Register</button>
53
- </form>
54
-
55
- </iam-multi-step>`;
56
-
57
- test('should add the active class to the first fieldset element', () => {
58
- let component = document.querySelector('iam-multi-step');
59
- let fieldset = component.querySelector('fieldset');
60
-
61
- expect(fieldset.classList).toContain('active');
62
- });
63
-
64
- test('should have a next button added to each fieldset element', () => {
65
- let component = document.querySelector('iam-multi-step');
66
- let fieldset = component.querySelector('fieldset');
67
- let button = fieldset.querySelector('.btn--wrapper button[data-next]');
68
-
69
- expect(button?.innerHTML).toContain('Next');
70
- });
71
-
72
- test('should have a steps list created using the data-title attributes for content', () => {
73
- let component = document.querySelector('iam-multi-step');
74
- let button = component?.shadowRoot.querySelector('.steps button');
75
-
76
- expect(button?.innerHTML).toContain('Personal details');
77
- });
78
- });
@@ -1,27 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import * as tableModule from '../modules/table';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- import iamSlider from '../components/slider/slider.component';
8
-
9
- describe('The slider component', () => {
10
- if (!window.customElements.get(`iam-slider`)) window.customElements.define(`iam-slider`, iamSlider);
11
-
12
- test('should always show the minimum and maximum values that it can be set', () => {
13
- document.body.innerHTML = `<label>Input field label <iam-slider><input type="number" name="percent" min="0" max="100" value="15" step="1" /></iam-slider></label>`;
14
- let component = document.querySelector('iam-slider');
15
-
16
- expect(component.shadowRoot.innerHTML).toContain('<div class="col min pe-2">0</div>');
17
- expect(component.shadowRoot.innerHTML).toContain('<div class="col max ps-2">100</div>');
18
- });
19
-
20
- test('should always have a secondary way of inputing the value i.e. a number input field', () => {
21
- document.body.innerHTML = `<label>Input field label <iam-slider><input type="number" name="percent" min="0" max="100" value="15" step="1" /></iam-slider></label>`;
22
- let component = document.querySelector('iam-slider');
23
-
24
- expect(component.querySelectorAll('input[type="number"]').length).toEqual(1);
25
- expect(component.shadowRoot.querySelectorAll('input[type="range"]').length).toEqual(1);
26
- });
27
- });
@@ -1,91 +0,0 @@
1
- // @ts-nocheck
2
- import '@testing-library/jest-dom';
3
- import * as tableModule from '../modules/table';
4
- import puppeteer from 'puppeteer';
5
- import 'expect-puppeteer';
6
-
7
- const basicTable = `<thead>
8
- <tr>
9
- <th>Heading 1</th>
10
- <th>Heading 2</th>
11
- <th>Heading 3</th>
12
- <th>Heading 4</th>
13
- <th>Heading 5</th>
14
- <th>Heading 6</th>
15
- </tr>
16
- </thead>
17
- <tbody>
18
- <tr>
19
- <td>Cell 1</td>
20
- <td>Low</td>
21
- <td>Cell 3</td>
22
- <td>Cell 4</td>
23
- <td>Cell 5</td>
24
- <td>Cell 6</td>
25
- </tr>
26
- <tr>
27
- <td>Cell 1</td>
28
- <td>Low</td>
29
- <td><a href="/link">View information</a></td>
30
- <td>Cell 4</td>
31
- <td>Cell 5</td>
32
- <td>Cell 6</td>
33
- </tr>
34
- <tr>
35
- <td>Different Cell 1</td>
36
- <td>Medium</td>
37
- <td><a href="/link">View information</a></td>
38
- <td>Cell 4</td>
39
- <td>Cell 5</td>
40
- <td>Cell 6</td>
41
- </tr>
42
- <tr>
43
- <td>Different Cell 1</td>
44
- <td>High</td>
45
- <td><a href="/link">View information</a></td>
46
- <td>Cell 4</td>
47
- <td>Cell 5</td>
48
- <td>Cell 6</td>
49
- </tr>
50
- </tbody>`;
51
-
52
- describe('addDataAttributes', () => {
53
- const table = document.createElement('table');
54
- table.innerHTML = basicTable;
55
-
56
- tableModule.addDataAttributes(table);
57
-
58
- test('should add data-label attribute to the table cells', () => {
59
- expect(table.querySelector('tbody td').getAttribute('data-label')).toEqual('Heading 1');
60
- expect(table.querySelector('tbody td:nth-child(2)').getAttribute('data-label')).toEqual('Heading 2');
61
- });
62
-
63
- test('should add data-content attribute to the table cells if the content matches a pre-defined list', () => {
64
- expect(table.querySelector('tbody tr:nth-child(2) td:nth-child(2)').getAttribute('data-content')).toEqual('low');
65
- expect(table.querySelector('tbody tr:nth-child(3) td:nth-child(2)').getAttribute('data-content')).toEqual('medium');
66
- });
67
- });
68
-
69
- describe('sortTable', () => {
70
- const table = document.createElement('table');
71
- table.innerHTML = basicTable;
72
- const form = document.createElement('form');
73
- form.innerHTML += `<div><select type="select" name="sort" id="sort" class="form-select" data-sort=""><option value="-1">Sort by</option><option value="high" data-sort="Heading 2" data-order="High,Medium,Low" selected="selected">high to low</option></select></div>`;
74
- const savedTableBody = table.querySelector('tbody');
75
-
76
- tableModule.addDataAttributes(table);
77
- tableModule.sortTable(table, form, savedTableBody);
78
-
79
- test('should sort the table from high to low', () => {
80
- expect(table.querySelector('tbody tr:nth-child(1) td:nth-child(2)').textContent).toEqual('High');
81
- expect(table.querySelector('tbody tr:nth-child(2) td:nth-child(2)').textContent).toEqual('Medium');
82
- expect(table.querySelector('tbody tr:nth-child(3) td:nth-child(2)').textContent).toEqual('Low');
83
- });
84
- });
85
-
86
- describe('formatCell', () => {
87
- test('should format the text correctly', () => {
88
- expect(tableModule.formatCell('date', '2023-05-15 12:10:45.000000')).toEqual('15 May 23');
89
- expect(tableModule.formatCell('capitalise', 'low')).toEqual('Low');
90
- });
91
- });