@worksafevictoria/wcl7.5 1.1.0-beta.11 → 1.1.0-beta.111

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 (348) hide show
  1. package/.env +1 -3
  2. package/.storybook/preview.js +20 -13
  3. package/README.md +4 -4
  4. package/bin/deploy.sh +1 -1
  5. package/ci/build/build_validation.yml +2 -2
  6. package/ci/release/beta.yml +4 -3
  7. package/ci/release/master.yml +4 -3
  8. package/jest.config.js +10 -8
  9. package/lib/utility.js +10 -8
  10. package/package.json +17 -14
  11. package/src/assets/icons/AppFooter/x-ws-footer.svg +10 -0
  12. package/src/assets/icons/AppFooter/x-ww-footer.svg +28 -0
  13. package/src/assets/icons/SocialShare/x-icon-white.svg +28 -0
  14. package/src/assets/icons/WSV-reversed.svg +20 -0
  15. package/src/assets/icons/contrast.svg +4 -0
  16. package/src/assets/icons/lang.svg +13 -0
  17. package/src/assets/icons/login.svg +4 -0
  18. package/src/assets/styles/modal.scss +51 -0
  19. package/src/components/Common/CardGrid/cardgrid.stories.js +4 -57
  20. package/src/components/Common/CardGrid/index.vue +69 -49
  21. package/src/components/Common/CardGridItem/card-grid-item-caret.vue +7 -4
  22. package/src/components/Common/CardGridItem/card-grid-item-icon.vue +15 -19
  23. package/src/components/Common/CardGridItem/index.vue +171 -178
  24. package/src/components/Containers/Carousel/index.stories.js +30 -0
  25. package/src/components/Containers/Carousel/index.vue +172 -0
  26. package/src/components/Containers/HomepageHeader/index.stories.js +60 -36
  27. package/src/components/Containers/HomepageHeader/index.vue +16 -26
  28. package/src/components/Containers/HomepageHeaderNew/index.stories.js +75 -0
  29. package/src/components/Containers/HomepageHeaderNew/index.vue +227 -0
  30. package/src/components/Containers/SectionGroup/index.vue +1 -1
  31. package/src/components/Containers/Subheader/index.vue +30 -20
  32. package/src/components/Global/AlertStrip/index.stories.js +1 -0
  33. package/src/components/Global/AppFooter/FooterSocialShare/index.vue +1 -1
  34. package/src/components/Global/AppFooter/index.stories.js +1 -0
  35. package/src/components/Global/AppFooter/index.vue +42 -33
  36. package/src/components/Global/AppFooter/styles.scss +3 -0
  37. package/src/components/Global/AppHeader/index.vue +49 -52
  38. package/src/components/Global/AppHeaderNew/ModalSearch/index.vue +71 -0
  39. package/src/components/Global/AppHeaderNew/ModalSearch/styles.scss +43 -0
  40. package/src/components/Global/AppHeaderNew/includes.scss +71 -0
  41. package/src/components/Global/AppHeaderNew/index.stories.js +74 -0
  42. package/src/components/Global/AppHeaderNew/index.vue +1176 -0
  43. package/src/components/Global/AppHeaderNew/mobile.scss +269 -0
  44. package/src/components/Global/AppHeaderNew/styles.scss +642 -0
  45. package/src/components/Global/BackToTop/index.vue +8 -8
  46. package/src/components/Global/ContrastMode/index.stories.js +1 -0
  47. package/src/components/Global/ContrastMode/index.vue +1 -1
  48. package/src/components/Global/Cookies/index.stories.js +16 -10
  49. package/src/components/Global/Cookies/index.vue +209 -172
  50. package/src/components/Global/Cookies/styles.scss +54 -54
  51. package/src/components/Global/DirectoryFilters/SingleTaxonomy/index.vue +50 -132
  52. package/src/components/Global/DirectoryFilters/index.vue +3 -0
  53. package/src/components/Global/GlobalNotice/index.stories.js +7 -1
  54. package/src/components/Global/GlobalNotice/index.vue +84 -84
  55. package/src/components/Global/HeroHeader/index.stories.js +3 -4
  56. package/src/components/Global/HeroHeader/index.vue +28 -29
  57. package/src/components/Global/ProgressBar/index.stories.js +6 -16
  58. package/src/components/Global/SocialShare/index.vue +3 -2
  59. package/src/components/Global/Strip/index.stories.js +1 -17
  60. package/src/components/Global/Strip/index.vue +9 -5
  61. package/src/components/Paragraphs/Accordion/AccordionItem/index.vue +29 -21
  62. package/src/components/Paragraphs/Accordion/StepperItem/index.vue +23 -23
  63. package/src/components/Paragraphs/Accordion/index.stories.js +22 -18
  64. package/src/components/Paragraphs/Accordion/index.vue +52 -48
  65. package/src/components/Paragraphs/Breakout/index.stories.js +1 -0
  66. package/src/components/Paragraphs/BrowseContent/index.stories.js +1 -0
  67. package/src/components/Paragraphs/BrowseContent/index.vue +42 -32
  68. package/src/components/Paragraphs/BrowseContent/setup.vue +284 -0
  69. package/src/components/Paragraphs/Calculator/Constants.js +2 -2
  70. package/src/components/Paragraphs/Calculator/index.stories.js +1 -0
  71. package/src/components/Paragraphs/Chart/Constants.js +952 -952
  72. package/src/components/Paragraphs/Chart/index.vue +232 -241
  73. package/src/components/Paragraphs/Directory/HSCP/Records/SingleRecord/index.stories.js +34 -0
  74. package/src/components/Paragraphs/Directory/HSCP/Records/SingleRecord/index.vue +321 -0
  75. package/src/components/Paragraphs/Directory/HSCP/Records/index.stories.js +19 -0
  76. package/src/components/Paragraphs/Directory/HSCP/Records/index.vue +345 -0
  77. package/src/components/Paragraphs/Directory/HSCP/Records/pagination.vue +179 -0
  78. package/src/components/Paragraphs/Directory/Records/CJ/index.vue +4 -4
  79. package/src/components/Paragraphs/Directory/Records/ISP/index.vue +6 -6
  80. package/src/components/Paragraphs/Directory/Records/PRS/index.stories.js +34 -0
  81. package/src/components/Paragraphs/Directory/Records/PRS/index.vue +7 -3
  82. package/src/components/Paragraphs/Directory/Records/PRS/recordContent.vue +3 -3
  83. package/src/components/Paragraphs/Directory/Records/PRS/recordDetails.vue +3 -3
  84. package/src/components/Paragraphs/Directory/Records/index.storieshide.js +47 -0
  85. package/src/components/Paragraphs/Directory/Records/index.vue +55 -36
  86. package/src/components/Paragraphs/Directory/constants.js +23 -5
  87. package/src/components/Paragraphs/Directory/index.vue +56 -45
  88. package/src/components/Paragraphs/Directory/{Records/styles.scss → styles.scss} +5 -3
  89. package/src/components/Paragraphs/ListGroup/Link/list-link.stories.js +1 -0
  90. package/src/components/Paragraphs/ListGroup/index.vue +60 -47
  91. package/src/components/Paragraphs/ListGroup/list-group.stories.js +1 -0
  92. package/src/components/Paragraphs/ListGroup/navigation-card.stories.js +1 -0
  93. package/src/components/Paragraphs/Map/Constants.js +4790 -0
  94. package/src/components/Paragraphs/Map/index.mdx +29 -0
  95. package/src/components/Paragraphs/Map/index.stories.js +15 -0
  96. package/src/components/Paragraphs/Map/index.vue +313 -0
  97. package/src/components/Paragraphs/Map/lga-map.json +33462 -0
  98. package/src/components/Paragraphs/Map/postcode_location.json +3543 -0
  99. package/src/components/Paragraphs/MarketingBanner/index.stories.js +4 -18
  100. package/src/components/Paragraphs/ProofPoints/index.stories.js +19 -20
  101. package/src/components/Paragraphs/RelatedInformation/index.stories.js +8 -0
  102. package/src/components/Paragraphs/RichText/index.stories.js +2 -1
  103. package/src/components/Paragraphs/ScrollSpy/index.stories.js +3 -1
  104. package/src/components/Paragraphs/ScrollSpy/index.vue +26 -12
  105. package/src/components/Paragraphs/SelectableCards/Control/index.stories.js +1 -0
  106. package/src/components/Paragraphs/SelectableCards/index.vue +15 -12
  107. package/src/components/Paragraphs/Statistics/index.stories.js +1 -0
  108. package/src/components/Paragraphs/Statistics/index.vue +1 -0
  109. package/src/components/Paragraphs/TabbedCards/index.stories.js +8 -27
  110. package/src/components/Paragraphs/TabbedCards/index.vue +68 -103
  111. package/src/components/Paragraphs/Tabs/index.stories.js +1 -0
  112. package/src/components/Paragraphs/Tabs/index.vue +19 -17
  113. package/src/components/Paragraphs/TabulatedData/index.stories.js +6 -5
  114. package/src/components/Paragraphs/TabulatedData/index.vue +63 -35
  115. package/src/components/Paragraphs/TaskFinder/index.stories.js +2 -2
  116. package/src/components/Paragraphs/TaskFinder/index.vue +3 -3
  117. package/src/components/Paragraphs/TaskFinder/task-finder-column.vue +1 -1
  118. package/src/components/Paragraphs/TextMedia/MediaTypes/Video/index.vue +9 -9
  119. package/src/components/Paragraphs/TextMedia/index.stories.js +1 -0
  120. package/src/components/Paragraphs/TextMedia/index.vue +20 -16
  121. package/src/components/Paragraphs/VideoGrid/index.stories.js +44 -19
  122. package/src/components/Paragraphs/VideoGrid/index.vue +13 -13
  123. package/src/components/Paragraphs/VideoPlayer/index.stories.js +1 -13
  124. package/src/components/Paragraphs/Webform/index.stories.js +94 -57
  125. package/src/components/Paragraphs/Webform/index.vue +11 -8
  126. package/src/components/SubComponents/Breadcrumb/index.stories.js +3 -11
  127. package/src/components/SubComponents/Breadcrumb/index.vue +4 -0
  128. package/src/components/SubComponents/CardGroup/index.stories.js +1 -30
  129. package/src/components/SubComponents/CardGroup/index.vue +38 -28
  130. package/src/components/SubComponents/CtaButton/index.stories.js +1 -24
  131. package/src/components/SubComponents/CtaButton/index.vue +27 -25
  132. package/src/components/SubComponents/FormAddressPostcode/index.stories.js +3 -28
  133. package/src/components/SubComponents/FormAddressPostcode/index.vue +35 -37
  134. package/src/components/SubComponents/FormInstance/components/alert/index.vue +129 -0
  135. package/src/components/SubComponents/FormInstance/components/custom/base-formio.js +77 -0
  136. package/src/components/SubComponents/FormInstance/components/custom/code-formio.js +35 -0
  137. package/src/components/SubComponents/FormInstance/components/custom/custom-formio-registry.js +30 -0
  138. package/src/components/SubComponents/FormInstance/components/custom/range-formio.js +121 -0
  139. package/src/components/SubComponents/FormInstance/components/custom/rating-formio.js +121 -0
  140. package/src/components/SubComponents/FormInstance/components/custom/scale-formio.js +99 -0
  141. package/src/components/SubComponents/FormInstance/components/custom/tableselect-formio.js +200 -0
  142. package/src/components/SubComponents/FormInstance/components/handler/index.vue +204 -0
  143. package/src/components/SubComponents/FormInstance/components/renderer/index.vue +333 -0
  144. package/src/components/SubComponents/FormInstance/index.test.js +65 -0
  145. package/src/components/SubComponents/FormInstance/index.vue +55 -6
  146. package/src/components/SubComponents/FormInstance/models/base-form-element.js +338 -0
  147. package/src/components/SubComponents/FormInstance/models/form-callback-queue.js +45 -0
  148. package/src/components/SubComponents/FormInstance/models/form-utils.js +50 -0
  149. package/src/components/SubComponents/FormInstance/models/overrides/address.js +141 -0
  150. package/src/components/SubComponents/FormInstance/models/overrides/autocomplete.js +41 -0
  151. package/src/components/SubComponents/FormInstance/models/overrides/checkbox.js +14 -0
  152. package/src/components/SubComponents/FormInstance/models/overrides/checkboxes.js +49 -0
  153. package/src/components/SubComponents/FormInstance/models/overrides/code.js +27 -0
  154. package/src/components/SubComponents/FormInstance/models/overrides/composite.js +57 -0
  155. package/src/components/SubComponents/FormInstance/models/overrides/container.js +65 -0
  156. package/src/components/SubComponents/FormInstance/models/overrides/currency.js +17 -0
  157. package/src/components/SubComponents/FormInstance/models/overrides/customcomposite.js +41 -0
  158. package/src/components/SubComponents/FormInstance/models/overrides/date.js +126 -0
  159. package/src/components/SubComponents/FormInstance/models/overrides/datelist.js +73 -0
  160. package/src/components/SubComponents/FormInstance/models/overrides/detail.js +38 -0
  161. package/src/components/SubComponents/FormInstance/models/overrides/email-confirm.js +12 -0
  162. package/src/components/SubComponents/FormInstance/models/overrides/email.js +7 -0
  163. package/src/components/SubComponents/FormInstance/models/overrides/file.js +54 -0
  164. package/src/components/SubComponents/FormInstance/models/overrides/flexbox.js +33 -0
  165. package/src/components/SubComponents/FormInstance/models/overrides/hidden.js +24 -0
  166. package/src/components/SubComponents/FormInstance/models/overrides/likert.js +40 -0
  167. package/src/components/SubComponents/FormInstance/models/overrides/markup.js +47 -0
  168. package/src/components/SubComponents/FormInstance/models/overrides/message.js +53 -0
  169. package/src/components/SubComponents/FormInstance/models/overrides/moretext.js +64 -0
  170. package/src/components/SubComponents/FormInstance/models/overrides/multiple.js +51 -0
  171. package/src/components/SubComponents/FormInstance/models/overrides/number.js +22 -0
  172. package/src/components/SubComponents/FormInstance/models/overrides/options-other.js +34 -0
  173. package/src/components/SubComponents/FormInstance/models/overrides/page.js +7 -0
  174. package/src/components/SubComponents/FormInstance/models/overrides/phonenumber.js +13 -0
  175. package/src/components/SubComponents/FormInstance/models/overrides/radio.js +31 -0
  176. package/src/components/SubComponents/FormInstance/models/overrides/range.js +19 -0
  177. package/src/components/SubComponents/FormInstance/models/overrides/rating.js +47 -0
  178. package/src/components/SubComponents/FormInstance/models/overrides/scale.js +33 -0
  179. package/src/components/SubComponents/FormInstance/models/overrides/section.js +39 -0
  180. package/src/components/SubComponents/FormInstance/models/overrides/select.js +28 -0
  181. package/src/components/SubComponents/FormInstance/models/overrides/signature.js +7 -0
  182. package/src/components/SubComponents/FormInstance/models/overrides/submit.js +23 -0
  183. package/src/components/SubComponents/FormInstance/models/overrides/table.js +48 -0
  184. package/src/components/SubComponents/FormInstance/models/overrides/tablerow.js +20 -0
  185. package/src/components/SubComponents/FormInstance/models/overrides/tableselect.js +66 -0
  186. package/src/components/SubComponents/FormInstance/models/overrides/testing.js +47 -0
  187. package/src/components/SubComponents/FormInstance/models/overrides/text.js +7 -0
  188. package/src/components/SubComponents/FormInstance/models/overrides/textarea.js +26 -0
  189. package/src/components/SubComponents/FormInstance/models/overrides/textformat.js +13 -0
  190. package/src/components/SubComponents/FormInstance/models/overrides/time.js +13 -0
  191. package/src/components/SubComponents/FormInstance/models/overrides/twig.js +118 -0
  192. package/src/components/SubComponents/FormInstance/models/overrides/unknown.js +24 -0
  193. package/src/components/SubComponents/FormInstance/models/overrides/url.js +13 -0
  194. package/src/components/SubComponents/FormInstance/services/convert-form-element.js +49 -0
  195. package/src/components/SubComponents/FormInstance/services/form-api.js +47 -0
  196. package/src/components/SubComponents/FormInstance/services/form-render-parser.js +156 -0
  197. package/src/components/SubComponents/FormInstance/services/form-submit-parser.js +68 -0
  198. package/src/components/SubComponents/FormInstance/services/logic-linker.js +73 -0
  199. package/src/components/SubComponents/FormInstance/services/logic-parser.js +173 -0
  200. package/src/components/SubComponents/FormInstance/services/registry-factory.js +284 -0
  201. package/src/components/SubComponents/FormInstance/stories/Documentation.mdx +234 -0
  202. package/src/components/SubComponents/FormInstance/stories/advanced.stories.js +109 -0
  203. package/src/components/SubComponents/FormInstance/stories/basic.stories.js +73 -0
  204. package/src/components/SubComponents/FormInstance/stories/build.stories.js +27 -0
  205. package/src/components/SubComponents/FormInstance/stories/composite.stories.js +90 -0
  206. package/src/components/SubComponents/FormInstance/stories/condition.stories.js +83 -0
  207. package/src/components/SubComponents/FormInstance/stories/custom.stories.js +69 -0
  208. package/src/components/SubComponents/FormInstance/stories/date.stories.js +76 -0
  209. package/src/components/SubComponents/FormInstance/stories/fileupload.stories.js +57 -0
  210. package/src/components/SubComponents/FormInstance/stories/form-alert.stories.js +93 -0
  211. package/src/components/SubComponents/FormInstance/stories/index.stories.js +63 -0
  212. package/src/components/SubComponents/FormInstance/stories/layout.stories.js +85 -0
  213. package/src/components/SubComponents/FormInstance/stories/markup.stories.js +91 -0
  214. package/src/components/SubComponents/FormInstance/stories/mocks/address.json +298 -0
  215. package/src/components/SubComponents/FormInstance/stories/mocks/advancedhtml.json +23 -0
  216. package/src/components/SubComponents/FormInstance/stories/mocks/autocomplete.json +34 -0
  217. package/src/components/SubComponents/FormInstance/stories/mocks/basichtml.json +15 -0
  218. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxes.json +102 -0
  219. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxesother.json +197 -0
  220. package/src/components/SubComponents/FormInstance/stories/mocks/container.json +134 -0
  221. package/src/components/SubComponents/FormInstance/stories/mocks/customcomposite.json +469 -0
  222. package/src/components/SubComponents/FormInstance/stories/mocks/date.json +19 -0
  223. package/src/components/SubComponents/FormInstance/stories/mocks/datelist.json +752 -0
  224. package/src/components/SubComponents/FormInstance/stories/mocks/datetime.json +89 -0
  225. package/src/components/SubComponents/FormInstance/stories/mocks/details.json +63 -0
  226. package/src/components/SubComponents/FormInstance/stories/mocks/email.json +18 -0
  227. package/src/components/SubComponents/FormInstance/stories/mocks/emailconfirm.json +110 -0
  228. package/src/components/SubComponents/FormInstance/stories/mocks/fieldset.json +62 -0
  229. package/src/components/SubComponents/FormInstance/stories/mocks/fileupload.json +25 -0
  230. package/src/components/SubComponents/FormInstance/stories/mocks/flexbox.json +58 -0
  231. package/src/components/SubComponents/FormInstance/stories/mocks/hidden.json +35 -0
  232. package/src/components/SubComponents/FormInstance/stories/mocks/horizontalrule.json +14 -0
  233. package/src/components/SubComponents/FormInstance/stories/mocks/jahd.json +1359 -0
  234. package/src/components/SubComponents/FormInstance/stories/mocks/label.json +14 -0
  235. package/src/components/SubComponents/FormInstance/stories/mocks/likert.json +375 -0
  236. package/src/components/SubComponents/FormInstance/stories/mocks/message.json +86 -0
  237. package/src/components/SubComponents/FormInstance/stories/mocks/more.json +19 -0
  238. package/src/components/SubComponents/FormInstance/stories/mocks/multiple.json +142 -0
  239. package/src/components/SubComponents/FormInstance/stories/mocks/number.json +35 -0
  240. package/src/components/SubComponents/FormInstance/stories/mocks/quad.json +249 -0
  241. package/src/components/SubComponents/FormInstance/stories/mocks/radios.json +70 -0
  242. package/src/components/SubComponents/FormInstance/stories/mocks/radiosother.json +176 -0
  243. package/src/components/SubComponents/FormInstance/stories/mocks/range.json +58 -0
  244. package/src/components/SubComponents/FormInstance/stories/mocks/rating.json +42 -0
  245. package/src/components/SubComponents/FormInstance/stories/mocks/rule-disabled-value.json +66 -0
  246. package/src/components/SubComponents/FormInstance/stories/mocks/rule-enabled-value.json +43 -0
  247. package/src/components/SubComponents/FormInstance/stories/mocks/rule-hidden-value.json +68 -0
  248. package/src/components/SubComponents/FormInstance/stories/mocks/rule-required-value.json +69 -0
  249. package/src/components/SubComponents/FormInstance/stories/mocks/rule-visible-value.json +157 -0
  250. package/src/components/SubComponents/FormInstance/stories/mocks/sameas.json +66 -0
  251. package/src/components/SubComponents/FormInstance/stories/mocks/scale.json +200 -0
  252. package/src/components/SubComponents/FormInstance/stories/mocks/section.json +63 -0
  253. package/src/components/SubComponents/FormInstance/stories/mocks/select.json +41 -0
  254. package/src/components/SubComponents/FormInstance/stories/mocks/selectother.json +115 -0
  255. package/src/components/SubComponents/FormInstance/stories/mocks/signature.json +25 -0
  256. package/src/components/SubComponents/FormInstance/stories/mocks/styles.json +81 -0
  257. package/src/components/SubComponents/FormInstance/stories/mocks/table-select.json +472 -0
  258. package/src/components/SubComponents/FormInstance/stories/mocks/table.json +154 -0
  259. package/src/components/SubComponents/FormInstance/stories/mocks/telephone.json +18 -0
  260. package/src/components/SubComponents/FormInstance/stories/mocks/textarea.json +22 -0
  261. package/src/components/SubComponents/FormInstance/stories/mocks/textfield.json +66 -0
  262. package/src/components/SubComponents/FormInstance/stories/mocks/time.json +20 -0
  263. package/src/components/SubComponents/FormInstance/stories/mocks/token.json +260 -0
  264. package/src/components/SubComponents/FormInstance/stories/mocks/twig.json +154 -0
  265. package/src/components/SubComponents/FormInstance/stories/mocks/url.json +18 -0
  266. package/src/components/SubComponents/FormInstance/stories/mocks/value.json +17 -0
  267. package/src/components/SubComponents/FormInstance/stories/mocks/wizard.json +353 -0
  268. package/src/components/SubComponents/FormInstance/stories/options.stories.js +98 -0
  269. package/src/components/SubComponents/FormInstance/stories/style.stories.js +55 -0
  270. package/src/components/SubComponents/FormInstance/stories/wizard.stories.js +55 -0
  271. package/src/components/SubComponents/FormInstance/style.scss +185 -0
  272. package/src/components/SubComponents/FormInstance/tests/address.test.js +255 -0
  273. package/src/components/SubComponents/FormInstance/tests/advancedhtml.test.js +31 -0
  274. package/src/components/SubComponents/FormInstance/tests/autocomplete.test.js +38 -0
  275. package/src/components/SubComponents/FormInstance/tests/basichtml.test.js +31 -0
  276. package/src/components/SubComponents/FormInstance/tests/checkbox.test.js +29 -0
  277. package/src/components/SubComponents/FormInstance/tests/checkboxes.test.js +44 -0
  278. package/src/components/SubComponents/FormInstance/tests/checkboxesother.test.js +91 -0
  279. package/src/components/SubComponents/FormInstance/tests/container.test.js +66 -0
  280. package/src/components/SubComponents/FormInstance/tests/customcomposite.test.js +86 -0
  281. package/src/components/SubComponents/FormInstance/tests/date.test.js +63 -0
  282. package/src/components/SubComponents/FormInstance/tests/datelist.test.js +136 -0
  283. package/src/components/SubComponents/FormInstance/tests/datetime.test.js +54 -0
  284. package/src/components/SubComponents/FormInstance/tests/details.test.js +58 -0
  285. package/src/components/SubComponents/FormInstance/tests/email.test.js +28 -0
  286. package/src/components/SubComponents/FormInstance/tests/emailconfirm.test.js +79 -0
  287. package/src/components/SubComponents/FormInstance/tests/fieldset.test.js +63 -0
  288. package/src/components/SubComponents/FormInstance/tests/flexbox.test.js +71 -0
  289. package/src/components/SubComponents/FormInstance/tests/form-test-utils.js +120 -0
  290. package/src/components/SubComponents/FormInstance/tests/form.test.js +26 -0
  291. package/src/components/SubComponents/FormInstance/tests/hidden.test.js +52 -0
  292. package/src/components/SubComponents/FormInstance/tests/horizontalrule.test.js +31 -0
  293. package/src/components/SubComponents/FormInstance/tests/label.test.js +31 -0
  294. package/src/components/SubComponents/FormInstance/tests/likert.test.js +38 -0
  295. package/src/components/SubComponents/FormInstance/tests/message.test.js +89 -0
  296. package/src/components/SubComponents/FormInstance/tests/more.test.js +32 -0
  297. package/src/components/SubComponents/FormInstance/tests/multiple.test.js +71 -0
  298. package/src/components/SubComponents/FormInstance/tests/number.test.js +51 -0
  299. package/src/components/SubComponents/FormInstance/tests/radios.test.js +34 -0
  300. package/src/components/SubComponents/FormInstance/tests/radiosother.test.js +79 -0
  301. package/src/components/SubComponents/FormInstance/tests/range.test.js +32 -0
  302. package/src/components/SubComponents/FormInstance/tests/rating.test.js +38 -0
  303. package/src/components/SubComponents/FormInstance/tests/rule-disabled.test.js +128 -0
  304. package/src/components/SubComponents/FormInstance/tests/rule-enabled-value.test.js +78 -0
  305. package/src/components/SubComponents/FormInstance/tests/rule-hidden.test.js +131 -0
  306. package/src/components/SubComponents/FormInstance/tests/rule-required-value.test.js +144 -0
  307. package/src/components/SubComponents/FormInstance/tests/rule-visible.test.js +619 -0
  308. package/src/components/SubComponents/FormInstance/tests/sameas.test.js +94 -0
  309. package/src/components/SubComponents/FormInstance/tests/scale.test.js +43 -0
  310. package/src/components/SubComponents/FormInstance/tests/section.test.js +63 -0
  311. package/src/components/SubComponents/FormInstance/tests/select.test.js +45 -0
  312. package/src/components/SubComponents/FormInstance/tests/selectother.test.js +82 -0
  313. package/src/components/SubComponents/FormInstance/tests/signature.test.js +32 -0
  314. package/src/components/SubComponents/FormInstance/tests/styles.test.js +73 -0
  315. package/src/components/SubComponents/FormInstance/tests/table-select.test.js +93 -0
  316. package/src/components/SubComponents/FormInstance/tests/table.test.js +97 -0
  317. package/src/components/SubComponents/FormInstance/tests/telephone.test.js +29 -0
  318. package/src/components/SubComponents/FormInstance/tests/textarea.test.js +29 -0
  319. package/src/components/SubComponents/FormInstance/tests/textfield.test.js +48 -0
  320. package/src/components/SubComponents/FormInstance/tests/time.test.js +29 -0
  321. package/src/components/SubComponents/FormInstance/tests/token.test.js +33 -0
  322. package/src/components/SubComponents/FormInstance/tests/twig.test.js +74 -0
  323. package/src/components/SubComponents/FormInstance/tests/url.test.js +48 -0
  324. package/src/components/SubComponents/FormInstance/tests/value.test.js +31 -0
  325. package/src/components/SubComponents/FormInstance/tests/wizard.test.js +145 -0
  326. package/src/components/SubComponents/Icon/index.stories.js +1 -6
  327. package/src/components/SubComponents/MediaPlayer/index.stories.js +1 -6
  328. package/src/components/SubComponents/Pagination/index.stories.js +3 -8
  329. package/src/components/SubComponents/Pagination/index.vue +19 -18
  330. package/src/components/SubComponents/ResourceGroup/List/index.stories.js +3 -2
  331. package/src/components/SubComponents/ResourceGroup/index.vue +292 -281
  332. package/src/components/SubComponents/ResourceGroup/styles.scss +2 -0
  333. package/src/components/SubComponents/Search/SearchListing/index.vue +20 -20
  334. package/src/components/SubComponents/Search/index.vue +47 -40
  335. package/src/components/SubComponents/SingleImage/index.stories.js +2 -16
  336. package/src/components/SubComponents/VideoThumbnail/index.stories.js +1 -0
  337. package/src/components/SubComponents/VideoThumbnail/index.vue +48 -136
  338. package/src/includes/scss/mixins/src/grid.scss +4 -2
  339. package/src/includes/scss/mixins/src/units.scss +25 -4
  340. package/src/includes/scss/vars/src/colors.module.scss +28 -1
  341. package/src/index.js +25 -3
  342. package/src/main.js +2 -10
  343. package/src/mock/app-header-new.js +715 -0
  344. package/src/mock/carousel-items.js +82 -0
  345. package/src/mock/course-provider.js +273 -0
  346. package/src/mock/jest.fileMock.js +1 -0
  347. package/vite.config.js +28 -15
  348. package/src/components/SubComponents/FormInstance/index.stories.js +0 -8
@@ -4,21 +4,15 @@
4
4
  <b-card
5
5
  :id="cardId"
6
6
  no-body
7
- :tag="
8
- buttonRole === 'radio' ? 'div' : isSelectable ? 'button' : 'article'
9
- "
7
+ :tag="buttonRole === 'radio' ? 'div' : isSelectable ? 'button' : 'article'"
10
8
  class="card-grid-item__card"
11
9
  :class="cardClass"
12
10
  :role="buttonRole"
13
11
  :aria-checked="
14
- buttonRole === 'radio'
15
- ? isSelectable && selected
16
- ? 'true'
17
- : 'false'
18
- : null
12
+ buttonRole === 'radio' ? (isSelectable && selected ? 'true' : 'false') : false
19
13
  "
20
14
  :aria-expanded="
21
- isExpandable ? (isSelectable && selected ? 'true' : 'false') : null
15
+ isExpandable ? (isSelectable && selected ? 'true' : 'false') : false
22
16
  "
23
17
  :data-href="link"
24
18
  @click="cardClicked($event)"
@@ -30,11 +24,9 @@
30
24
  :class="[
31
25
  {
32
26
  rtl: rtl,
33
- [`card-grid-item__control-radio`]:
34
- isSelectable && buttonRole === 'radio',
35
- [`card-grid-item__selected-radio`]:
36
- selected && buttonRole === 'radio'
37
- }
27
+ [`card-grid-item__control-radio`]: isSelectable && buttonRole === 'radio',
28
+ [`card-grid-item__selected-radio`]: selected && buttonRole === 'radio',
29
+ },
38
30
  ]"
39
31
  >
40
32
  <slot name="cardTop"></slot>
@@ -52,7 +44,7 @@
52
44
  :icon-is-bordered="iconIsBordered"
53
45
  :class="{
54
46
  [`text-left`]: iconPosition === 'top-left',
55
- rtl: rtl
47
+ rtl: rtl,
56
48
  }"
57
49
  >
58
50
  </card-grid-item-icon>
@@ -63,19 +55,20 @@
63
55
  {
64
56
  rtl: rtl,
65
57
  [`card-grid-item__caretContainer__control-radio`]:
66
- isSelectable && buttonRole === 'radio'
67
- }
58
+ isSelectable && buttonRole === 'radio',
59
+ },
68
60
  ]"
69
61
  >
70
- <div>
71
62
  <b-card-title
72
63
  v-if="cardHeaderTitle !== null && cardHeaderTitle !== undefined"
73
64
  :tag="headerTag"
74
65
  class="card-grid-item__header"
75
66
  :class="{
76
67
  [`card-grid-item__header--${headerSize}`]: true,
77
- [`card-grid-item__header--align-${headerTextAlign}`]: true
68
+ [`card-grid-item__header--align-${headerTextAlign}`]: true,
69
+ 'card-grid-item__header--cursor': isCardTitleSelectable,
78
70
  }"
71
+ @click="cardTitleClicked($event)"
79
72
  >
80
73
  <span>{{ cardHeaderTitle }}</span> &nbsp;
81
74
  <card-grid-item-caret
@@ -100,13 +93,7 @@
100
93
  >
101
94
  </card-grid-item-icon>
102
95
  </b-card-title>
103
- </div>
104
- <div>
105
- <card-grid-item-caret
106
- v-if="caretPosition === 'top'"
107
- :caret="caret"
108
- :rtl="rtl"
109
- >
96
+ <card-grid-item-caret v-if="caretPosition === 'top'" :caret="caret" :rtl="rtl">
110
97
  </card-grid-item-caret>
111
98
 
112
99
  <card-grid-item-icon
@@ -123,30 +110,28 @@
123
110
  class="d-inline card-grid-item-icon--top-right"
124
111
  :class="{
125
112
  [`text-right`]: iconPosition === 'top-right',
126
- rtl: rtl
113
+ rtl: rtl,
127
114
  }"
128
115
  :rtl="rtl"
129
116
  >
130
117
  </card-grid-item-icon>
131
-
132
118
  <span v-if="pillText" class="visually-hidden">{{ pillText }}</span>
133
- </div>
134
-
135
119
  </div>
136
120
  <b-card-text
137
121
  v-if="$slots.cardDescription || description"
138
- text-tag="div"
122
+ tag="div"
139
123
  class="card-grid-item__body"
140
124
  :class="{
141
- rtl: rtl
125
+ rtl: rtl,
142
126
  }"
143
127
  >
144
128
  <div
129
+ v-if="$slots.cardDescription || description"
145
130
  class="card-grid-item__description"
146
131
  :class="{
147
132
  [descriptionClass]: !!descriptionClass,
148
133
  [`card-grid-item__description--withIcon`]:
149
- iconPosition === 'before-description'
134
+ iconPosition === 'before-description',
150
135
  }"
151
136
  >
152
137
  <card-grid-item-icon
@@ -174,18 +159,14 @@
174
159
  </div>
175
160
  </b-card-text>
176
161
  </b-card-body>
177
- <div
178
- v-if="$slots.cardFooter"
179
- class="card-grid-item__footer"
180
- :class="{ rtl: rtl }"
181
- >
162
+ <div v-if="$slots.cardFooter" class="card-grid-item__footer" :class="{ rtl: rtl }">
182
163
  <slot name="cardFooter"></slot>
183
164
  </div>
184
165
  <div
185
166
  v-if="caretPosition === 'bottom'"
186
167
  class="card-grid-item__caretContainer card-grid-item__caretContainer--bottom"
187
168
  :class="{
188
- rtl: !rtl
169
+ rtl: !rtl,
189
170
  }"
190
171
  >
191
172
  <card-grid-item-caret :caret="caret" :rtl="rtl" />
@@ -197,167 +178,171 @@
197
178
  </template>
198
179
 
199
180
  <script>
200
- import CardGridItemIcon from './card-grid-item-icon.vue'
201
- import CardGridItemCaret from './card-grid-item-caret.vue'
202
- import RichText from '../../Paragraphs/RichText/index.vue'
203
- import parseISO from 'date-fns/parseISO'
204
- import { isAbsoluteUrl, isGovSite } from '../../../../lib/utility'
205
- import { BCard, BCardBody, BCardTitle, BCardText } from 'bootstrap-vue-next'
181
+ import CardGridItemIcon from "./card-grid-item-icon.vue";
182
+ import CardGridItemCaret from "./card-grid-item-caret.vue";
183
+ import RichText from "../../Paragraphs/RichText/index.vue";
184
+ import { parseISO } from "date-fns";
185
+ import { isAbsoluteUrl, isGovSite } from "../../../../lib/utility";
186
+ import { BCard, BCardBody, BCardTitle, BCardText } from "bootstrap-vue-next";
206
187
 
207
188
  export default {
208
- name: 'CardGridItem',
209
- components: {CardGridItemIcon, CardGridItemCaret, RichText, BCard, BCardBody, BCardTitle, BCardText },
189
+ name: "CardGridItem",
190
+ components: {
191
+ CardGridItemIcon,
192
+ CardGridItemCaret,
193
+ RichText,
194
+ BCard,
195
+ BCardBody,
196
+ BCardTitle,
197
+ BCardText,
198
+ },
210
199
  props: {
211
200
  backgroundVariant: {
212
201
  type: String,
213
- default: 'white',
214
- validator: (value) =>
215
- ['white', 'transparent', 'light'].indexOf(value) >= 0
202
+ default: "white",
203
+ validator: (value) => ["white", "transparent", "light"].indexOf(value) >= 0,
216
204
  },
217
205
  imageSrc: {
218
206
  type: String,
219
- default: null
207
+ default: null,
220
208
  },
221
209
  imageAlt: {
222
210
  type: String,
223
- default: null
211
+ default: null,
224
212
  },
225
213
  description: {
226
214
  type: String,
227
- default: null
215
+ default: null,
228
216
  },
229
217
  stripDescriptionHtml: {
230
- type: Boolean
218
+ type: Boolean,
231
219
  },
232
220
  descriptionClass: {
233
221
  type: String,
234
- default: ''
222
+ default: "",
235
223
  },
236
224
  glyphSrc: {
237
225
  type: [Object, String],
238
- default: null
226
+ default: null,
239
227
  },
240
228
  glyphIconComponent: {
241
229
  type: String,
242
- default: null
230
+ default: null,
243
231
  },
244
232
  iconSize: {
245
233
  type: String,
246
- default: 'small',
247
- validator: (value) =>
248
- ['xsmall', 'small', 'medium', 'large'].indexOf(value) >= 0
234
+ default: "small",
235
+ validator: (value) => ["xsmall", "small", "medium", "large"].indexOf(value) >= 0,
249
236
  },
250
237
  iconPosition: {
251
238
  type: String,
252
- default: 'top',
239
+ default: "top",
253
240
  validator: (value) =>
254
- [
255
- 'top',
256
- 'top-left',
257
- 'top-right',
258
- 'after-title',
259
- 'before-description'
260
- ].indexOf(value) >= 0
241
+ ["top", "top-left", "top-right", "after-title", "before-description"].indexOf(
242
+ value
243
+ ) >= 0,
261
244
  },
262
245
  iconIsBordered: {
263
246
  type: Boolean,
264
- default: true
247
+ default: true,
265
248
  },
266
249
  showDivider: {
267
- type: Boolean
250
+ type: Boolean,
268
251
  },
269
252
  cardHeaderTitle: {
270
253
  type: String,
271
- default: null
254
+ default: null,
272
255
  },
273
256
  invertOnSelectBackground: {
274
257
  type: String,
275
- default: 'none',
276
- validator: (value) => ['none', 'yellow', 'black'].indexOf(value) >= 0
258
+ default: "none",
259
+ validator: (value) => ["none", "yellow", "black"].indexOf(value) >= 0,
277
260
  },
278
261
  borderOnSelectBackground: {
279
262
  type: String,
280
- default: 'none',
281
- validator: (value) =>
282
- ['none', 'yellow', 'black', 'blue'].indexOf(value) >= 0
263
+ default: "none",
264
+ validator: (value) => ["none", "yellow", "black", "blue"].indexOf(value) >= 0,
283
265
  },
284
266
  rtl: {
285
267
  type: Boolean,
286
- default: false
268
+ default: false,
287
269
  },
288
270
  headerSize: {
289
271
  type: String,
290
- default: 'custom',
272
+ default: "custom",
291
273
  validator: (value) =>
292
- ['medium', 'large', 'extra-large', 'extra-2x-large', 'custom'].indexOf(
293
- value
294
- ) >= 0
274
+ ["medium", "large", "extra-large", "extra-2x-large", "custom"].indexOf(value) >=
275
+ 0,
295
276
  },
296
277
  headerTextAlign: {
297
278
  type: String,
298
- default: 'left',
299
- validator: (value) => ['left', 'center', 'right'].indexOf(value) >= 0
279
+ default: "left",
280
+ validator: (value) => ["left", "center", "right"].indexOf(value) >= 0,
300
281
  },
301
282
  headerTag: {
302
283
  type: String,
303
284
  required: false,
304
- default: 'h3'
285
+ default: "h3",
305
286
  },
306
287
  caret: {
307
288
  type: String,
308
289
  default: undefined,
309
290
  validator: (value) =>
310
- ['down', 'up', 'right', 'left', 'external'].indexOf(value) >= 0
291
+ ["down", "up", "right", "left", "external"].indexOf(value) >= 0,
311
292
  },
312
293
  caretPosition: {
313
294
  type: String,
314
- default: 'top',
315
- validator: (value) => ['top', 'bottom', 'after-title'].indexOf(value) >= 0
295
+ default: "top",
296
+ validator: (value) => ["top", "bottom", "after-title"].indexOf(value) >= 0,
316
297
  },
317
298
  cardPadding: {
318
299
  type: String,
319
- default: 'none',
300
+ default: "none",
320
301
  validator: (value) =>
321
- ['none', 'xsmall', 'small', 'medium', 'large'].indexOf(value) >= 0
302
+ ["none", "xsmall", "small", "medium", "large"].indexOf(value) >= 0,
322
303
  },
323
304
  borderType: {
324
305
  type: String,
325
- default: 'none',
306
+ default: "none",
326
307
  validator: (value) =>
327
- ['none', 'thin', 'shadow', 'thick', 'dark'].indexOf(value) >= 0
308
+ ["none", "thin", "shadow", "thick", "dark"].indexOf(value) >= 0,
328
309
  },
329
310
  cardTextAlign: {
330
311
  type: String,
331
- default: 'left'
312
+ default: "left",
332
313
  },
333
314
  disableSelect: {
334
315
  type: Boolean,
335
- default: false
316
+ default: false,
336
317
  },
337
318
  pillText: {
338
319
  type: String,
339
- default: ''
320
+ default: "",
340
321
  },
341
322
  buttonRole: {
342
323
  type: String,
343
- default: 'link'
324
+ default: "link",
344
325
  },
345
326
  isSelected: {
346
327
  type: Boolean,
347
- default: false
328
+ default: false,
348
329
  },
349
330
  isExpandable: {
350
331
  type: Boolean,
351
- default: false
332
+ default: false,
352
333
  },
353
334
  link: {
354
335
  type: [String, Boolean],
355
- default: false
336
+ default: false,
356
337
  },
357
338
  taxonomies: {
358
339
  type: Object,
359
- default: () => {}
360
- }
340
+ default: () => {},
341
+ },
342
+ isCardTitleSelectable: {
343
+ type: Boolean,
344
+ default: false,
345
+ },
361
346
  },
362
347
  data: () => ({
363
348
  isSelectable: false,
@@ -367,155 +352,159 @@ export default {
367
352
  isMobileView: false,
368
353
  isTabletView: false,
369
354
  selected: false,
370
- isAbsoluteUrl
355
+ isAbsoluteUrl,
371
356
  }),
372
357
  computed: {
373
358
  cardClass() {
374
359
  return {
375
360
  [`card-grid-item__card--hasIcon`]:
376
361
  (this.imageSrc || this.glyphSrc) &&
377
- (this.iconPosition === 'top' || this.iconPosition === 'top-left'),
362
+ (this.iconPosition === "top" || this.iconPosition === "top-left"),
378
363
  [`card-grid-item__card--selectable`]: this.isSelectable,
379
- [`card-grid-item__card--selected-inverted--` +
380
- this.invertOnSelectBackground]:
364
+ [`card-grid-item__card--selected-inverted--` + this.invertOnSelectBackground]:
381
365
  this.selected &&
382
366
  this.invertOnSelectBackground &&
383
- this.invertOnSelectBackground !== 'none',
384
- [`card-grid-item__card--selected-border--` +
385
- this.borderOnSelectBackground]:
367
+ this.invertOnSelectBackground !== "none",
368
+ [`card-grid-item__card--selected-border--` + this.borderOnSelectBackground]:
386
369
  this.selected &&
387
370
  this.borderOnSelectBackground &&
388
- this.borderOnSelectBackground !== 'none',
371
+ this.borderOnSelectBackground !== "none",
389
372
  [`card-grid-item__card--selected-focus`]:
390
- this.selected && this.buttonRole === 'radio',
373
+ this.selected && this.buttonRole === "radio",
391
374
  [`card-grid-item__card--selected-link`]:
392
375
  this.selected && !this.invertOnSelectBackground,
393
376
  [`card-grid-item__card--padding-${this.cardPadding}`]: true,
394
377
  [`card-grid-item__card--border-${this.borderType}`]: true,
395
378
  [`card-grid-item__card--bg-${this.backgroundVariant}`]: true,
396
379
  [`card-grid-item__card--select-${this.buttonRole}`]: true,
397
- [`card-grid-item__card--align-${this.cardTextAlign}`]: true
398
- }
380
+ [`card-grid-item__card--align-${this.cardTextAlign}`]: true,
381
+ };
399
382
  },
400
383
  urlHostname() {
401
- return window.location.protocol + '//' + window.location.host
402
- }
384
+ return window.location.protocol + "//" + window.location.host;
385
+ },
403
386
  },
404
387
  mounted() {
405
- this.selected = this.isSelected
388
+ this.selected = this.isSelected;
406
389
  },
407
390
  created() {
408
- this.parentGrid = this.getParentGridItem()
391
+ this.parentGrid = this.getParentGridItem();
409
392
  if (this.parentGrid) {
410
- this.parentGrid.registerChild(this)
411
- this.setCardId()
412
- this.isSelectable = !this.disableSelect && this.parentGrid.isSelectable
393
+ this.parentGrid.registerChild(this);
394
+ this.setCardId();
395
+ this.isSelectable = !this.disableSelect && this.parentGrid.isSelectable;
413
396
  }
414
397
  },
415
398
  beforeDestroy() {
416
399
  if (this.parentGrid) {
417
- this.parentGrid.deregisterChild(this)
400
+ this.parentGrid.deregisterChild(this);
418
401
  }
419
402
  },
420
403
  methods: {
421
404
  cardClicked(ev) {
422
405
  if (this.isSelectable) {
423
- this.parentGrid.cardSelected(this, ev)
406
+ this.parentGrid.cardSelected(this, ev);
424
407
  }
408
+
425
409
  if (this.$gtm) {
426
- this.fireGTM()
410
+ this.fireGTM();
411
+ }
412
+ },
413
+ cardTitleClicked(ev) {
414
+ if (this.isCardTitleSelectable) {
415
+ this.parentGrid.cardTitleSelected(this, ev);
427
416
  }
428
417
  },
429
418
  getParentGridItem() {
430
- let counter = 0
431
- const maxParentDepth = 10
432
- let currentParent = this.$parent
433
- let gridParent
419
+ let counter = 0;
420
+ const maxParentDepth = 10;
421
+ let currentParent = this.$parent;
422
+ let gridParent;
434
423
  while (maxParentDepth > counter) {
435
- counter += 1
424
+ counter += 1;
436
425
  if (currentParent && Array.isArray(currentParent.cards)) {
437
- gridParent = currentParent
438
- break
426
+ gridParent = currentParent;
427
+ break;
439
428
  } else if (currentParent) {
440
- currentParent = currentParent.$parent
429
+ currentParent = currentParent.$parent;
441
430
  }
442
431
  }
443
- return gridParent
432
+ return gridParent;
444
433
  },
445
434
  setCardId() {
446
435
  this.cardId = this.parentGrid.cardIdPrefix
447
- ? this.parentGrid.cardIdPrefix +
448
- '-' +
449
- this.parentGrid.getChildIndex(this)
450
- : undefined
436
+ ? this.parentGrid.cardIdPrefix + "-" + this.parentGrid.getChildIndex(this)
437
+ : undefined;
451
438
  },
452
439
  setGridMetaData(gridColumnSize, isMobileView, isTabletView) {
453
- this.gridColumnSize = gridColumnSize
454
- this.isMobileView = isMobileView
455
- this.isTabletView = isTabletView
440
+ this.gridColumnSize = gridColumnSize;
441
+ this.isMobileView = isMobileView;
442
+ this.isTabletView = isTabletView;
456
443
  },
457
444
  handleFocus(ev) {
458
- this.parentGrid.handleFocus(ev)
445
+ this.parentGrid.handleFocus(ev);
459
446
  },
460
447
  fireGTM() {
461
- let theEl = this.$slots?.cardDescription
448
+ let theEl = this.$slots?.cardDescription;
462
449
  if (theEl && theEl.length > 0) {
463
450
  var content = {
464
451
  content: this.$diffInDays(
465
452
  parseISO(theEl[0]?.componentOptions?.propsData?.card?.created)
466
- )
467
- }
453
+ ),
454
+ };
468
455
  }
469
456
  if (this.$gtm) {
470
457
  // format link
471
- const linkStr = this.link
472
- let linkURL = linkStr
458
+ const linkStr = this.link;
459
+ let linkURL = linkStr;
473
460
  if (linkStr !== false && !linkStr.includes(this.urlHostname)) {
474
- linkURL = this.urlHostname + linkStr
461
+ linkURL = this.urlHostname + linkStr;
475
462
  }
476
463
  // gather attrs
477
464
  let attrs = {
478
465
  label: this.cardHeaderTitle,
479
466
  data: linkURL,
480
467
  ...content,
481
- ...this.taxonomies
482
- }
468
+ ...this.taxonomies,
469
+ };
483
470
  // fire the default event
484
471
  this.$gtm.push({
485
- event: 'custom.interaction.tile.click',
472
+ event: "custom.interaction.tile.click",
486
473
  group: this?.parentGrid?.title,
487
- ...attrs
488
- })
489
- if (this.pillText === 'News') {
474
+ ...attrs,
475
+ });
476
+ if (this.pillText === "News") {
490
477
  this.$gtm.push({
491
- event: 'custom.interaction.news.click',
492
- group: 'News',
493
- ...attrs
494
- })
478
+ event: "custom.interaction.news.click",
479
+ group: "News",
480
+ ...attrs,
481
+ });
495
482
  }
496
- if (this.pillText === 'Event') {
483
+ if (this.pillText === "Event") {
497
484
  this.$gtm.push({
498
- event: 'custom.interaction.event.click',
499
- group: 'Event',
500
- ...attrs
501
- })
485
+ event: "custom.interaction.event.click",
486
+ group: "Event",
487
+ ...attrs,
488
+ });
502
489
  }
503
- if (this.pillText === 'Safety alert') {
490
+ if (this.pillText === "Safety alert") {
504
491
  this.$gtm.push({
505
- event: 'custom.interaction.safety.click',
506
- group: 'Safety alert',
507
- ...attrs
508
- })
492
+ event: "custom.interaction.safety.click",
493
+ group: "Safety alert",
494
+ ...attrs,
495
+ });
509
496
  }
510
497
  if (
511
498
  (this.link,
512
- this.isAbsoluteUrl(this.link) && process.env.CARETAKER === 'false')
499
+ this.isAbsoluteUrl(this.link) &&
500
+ (this.$config ? this.$config.public.caretaker : process.env.CARETAKER) ===
501
+ "false")
513
502
  ) {
514
503
  this.$gtm.push({
515
- event: 'custom.interaction.outboundlink',
504
+ event: "custom.interaction.outboundlink",
516
505
  category: this.cardHeaderTitle,
517
- label: this.link
518
- })
506
+ label: this.link,
507
+ });
519
508
  }
520
509
  }
521
510
  // for non gov sites and when caretaker mode is on, analytics is fired from listenersCaretaker.js
@@ -523,21 +512,21 @@ export default {
523
512
  this.link &&
524
513
  this.isAbsoluteUrl(this.link) &&
525
514
  isGovSite(this.link) &&
526
- process.env.CARETAKER === 'true'
515
+ (this.$config ? this.$config.public.caretaker : process.env.CARETAKER) === "true"
527
516
  ) {
528
517
  this.$gtm.push({
529
- event: 'custom.interaction.outboundlink',
518
+ event: "custom.interaction.outboundlink",
530
519
  category: this.cardHeaderTitle,
531
- label: this.link
532
- })
520
+ label: this.link,
521
+ });
533
522
  }
534
- }
535
- }
536
- }
523
+ },
524
+ },
525
+ };
537
526
  </script>
538
527
 
539
528
  <style lang="scss" scoped>
540
- @import '../../../includes/scss/all';
529
+ @import "../../../includes/scss/all";
541
530
 
542
531
  .card-grid-item {
543
532
  height: 100%;
@@ -789,7 +778,7 @@ export default {
789
778
  align-items: center;
790
779
  }
791
780
  :deep(.card_item__control-radio span) {
792
- background-image: url('../../../assets/icons/tick.svg');
781
+ background-image: url("../../../assets/icons/tick.svg");
793
782
  background-position: center;
794
783
  background-repeat: no-repeat;
795
784
  filter: invert(1);
@@ -838,13 +827,17 @@ export default {
838
827
  line-height: 80px;
839
828
 
840
829
  @media screen and (max-width: 1199px) and (min-width: 768px) {
841
- @include fp('font-size', 60, 72);
830
+ @include fp("font-size", 60, 72);
842
831
  }
843
832
  }
844
833
 
845
834
  &--align-right {
846
835
  direction: rtl;
847
836
  }
837
+
838
+ &--cursor {
839
+ cursor: pointer;
840
+ }
848
841
  }
849
842
  }
850
843