@worksafevictoria/wcl7.5 1.1.0-beta.1 → 1.1.0-beta.100

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 (346) hide show
  1. package/.env +1 -3
  2. package/.storybook/main.js +4 -2
  3. package/.storybook/preview.js +23 -11
  4. package/README.md +4 -4
  5. package/bin/deploy.sh +1 -1
  6. package/ci/build/build_validation.yml +3 -1
  7. package/ci/release/beta.yml +4 -3
  8. package/ci/release/master.yml +4 -3
  9. package/jest.config.js +10 -8
  10. package/lib/utility.js +10 -8
  11. package/package.json +17 -13
  12. package/src/assets/icons/AppFooter/x-ws-footer.svg +10 -0
  13. package/src/assets/icons/AppFooter/x-ww-footer.svg +28 -0
  14. package/src/assets/icons/SocialShare/x-icon-white.svg +28 -0
  15. package/src/assets/icons/WSV-reversed.svg +20 -0
  16. package/src/assets/icons/contrast.svg +4 -0
  17. package/src/assets/icons/lang.svg +13 -0
  18. package/src/assets/icons/login.svg +4 -0
  19. package/src/assets/styles/modal.scss +51 -0
  20. package/src/components/Common/CardGrid/cardgrid.stories.js +4 -57
  21. package/src/components/Common/CardGrid/index.vue +69 -49
  22. package/src/components/Common/CardGridItem/card-grid-item-caret.vue +7 -4
  23. package/src/components/Common/CardGridItem/card-grid-item-icon.vue +1 -1
  24. package/src/components/Common/CardGridItem/index.vue +95 -65
  25. package/src/components/Containers/Carousel/index.stories.js +30 -0
  26. package/src/components/Containers/Carousel/index.vue +172 -0
  27. package/src/components/Containers/HomepageHeader/index.stories.js +60 -36
  28. package/src/components/Containers/HomepageHeader/index.vue +16 -26
  29. package/src/components/Containers/HomepageHeaderNew/index.stories.js +75 -0
  30. package/src/components/Containers/HomepageHeaderNew/index.vue +227 -0
  31. package/src/components/Containers/SectionGroup/index.vue +1 -1
  32. package/src/components/Containers/Subheader/index.vue +30 -20
  33. package/src/components/Global/AlertStrip/index.stories.js +1 -0
  34. package/src/components/Global/AppFooter/FooterSocialShare/index.vue +1 -1
  35. package/src/components/Global/AppFooter/index.stories.js +1 -0
  36. package/src/components/Global/AppFooter/index.vue +42 -33
  37. package/src/components/Global/AppHeader/ModalSearch/index.vue +6 -1
  38. package/src/components/Global/AppHeader/index.stories.js +16 -24
  39. package/src/components/Global/AppHeader/index.vue +58 -60
  40. package/src/components/Global/AppHeaderNew/ModalSearch/index.vue +71 -0
  41. package/src/components/Global/AppHeaderNew/ModalSearch/styles.scss +43 -0
  42. package/src/components/Global/AppHeaderNew/includes.scss +71 -0
  43. package/src/components/Global/AppHeaderNew/index.stories.js +74 -0
  44. package/src/components/Global/AppHeaderNew/index.vue +1176 -0
  45. package/src/components/Global/AppHeaderNew/mobile.scss +269 -0
  46. package/src/components/Global/AppHeaderNew/styles.scss +642 -0
  47. package/src/components/Global/BackToTop/index.vue +8 -8
  48. package/src/components/Global/ContrastMode/index.stories.js +1 -0
  49. package/src/components/Global/ContrastMode/index.vue +1 -1
  50. package/src/components/Global/Cookies/index.stories.js +16 -10
  51. package/src/components/Global/Cookies/index.vue +209 -172
  52. package/src/components/Global/Cookies/styles.scss +54 -54
  53. package/src/components/Global/DirectoryFilters/SingleTaxonomy/index.vue +50 -132
  54. package/src/components/Global/GlobalNotice/index.stories.js +7 -1
  55. package/src/components/Global/GlobalNotice/index.vue +84 -84
  56. package/src/components/Global/HeroHeader/index.stories.js +3 -4
  57. package/src/components/Global/HeroHeader/index.vue +28 -29
  58. package/src/components/Global/ProgressBar/index.stories.js +6 -16
  59. package/src/components/Global/SocialShare/index.vue +3 -2
  60. package/src/components/Global/Strip/index.stories.js +1 -17
  61. package/src/components/Global/Strip/index.vue +9 -5
  62. package/src/components/Paragraphs/Accordion/AccordionItem/index.vue +29 -21
  63. package/src/components/Paragraphs/Accordion/StepperItem/index.vue +23 -23
  64. package/src/components/Paragraphs/Accordion/index.stories.js +22 -18
  65. package/src/components/Paragraphs/Accordion/index.vue +52 -48
  66. package/src/components/Paragraphs/Breakout/index.stories.js +1 -0
  67. package/src/components/Paragraphs/BrowseContent/index.stories.js +1 -0
  68. package/src/components/Paragraphs/BrowseContent/index.vue +42 -32
  69. package/src/components/Paragraphs/BrowseContent/setup.vue +284 -0
  70. package/src/components/Paragraphs/Calculator/Constants.js +2 -2
  71. package/src/components/Paragraphs/Calculator/index.stories.js +1 -0
  72. package/src/components/Paragraphs/Chart/Constants.js +4790 -0
  73. package/src/components/Paragraphs/Chart/index.mdx +61 -0
  74. package/src/components/Paragraphs/Chart/index.stories.js +31 -0
  75. package/src/components/Paragraphs/Chart/index.vue +322 -0
  76. package/src/components/Paragraphs/Directory/Records/CJ/index.vue +3 -3
  77. package/src/components/Paragraphs/Directory/Records/HSCP/index.stories.js +33 -0
  78. package/src/components/Paragraphs/Directory/Records/HSCP/index.vue +334 -0
  79. package/src/components/Paragraphs/Directory/Records/ISP/index.vue +5 -5
  80. package/src/components/Paragraphs/Directory/Records/PRS/index.vue +2 -2
  81. package/src/components/Paragraphs/Directory/Records/PRS/recordContent.vue +3 -3
  82. package/src/components/Paragraphs/Directory/Records/PRS/recordDetails.vue +3 -3
  83. package/src/components/Paragraphs/Directory/Records/index.vue +66 -30
  84. package/src/components/Paragraphs/Directory/Records/styles.scss +1 -0
  85. package/src/components/Paragraphs/Directory/constants.js +23 -5
  86. package/src/components/Paragraphs/Directory/index.vue +56 -45
  87. package/src/components/Paragraphs/ListGroup/Link/list-link.stories.js +35 -39
  88. package/src/components/Paragraphs/ListGroup/index.vue +60 -47
  89. package/src/components/Paragraphs/ListGroup/list-group.stories.js +35 -31
  90. package/src/components/Paragraphs/ListGroup/navigation-card.stories.js +34 -30
  91. package/src/components/Paragraphs/MarketingBanner/index.stories.js +4 -18
  92. package/src/components/Paragraphs/ProofPoints/index.stories.js +19 -20
  93. package/src/components/Paragraphs/RelatedInformation/index.stories.js +11 -21
  94. package/src/components/Paragraphs/RelatedInformation/index.vue +12 -6
  95. package/src/components/Paragraphs/RelatedInformation/styles.scss +1 -3
  96. package/src/components/Paragraphs/RichText/index.stories.js +2 -1
  97. package/src/components/Paragraphs/ScrollSpy/index.stories.js +20 -26
  98. package/src/components/Paragraphs/ScrollSpy/index.vue +27 -12
  99. package/src/components/Paragraphs/SelectableCards/Control/index.stories.js +1 -0
  100. package/src/components/Paragraphs/SelectableCards/index.vue +15 -12
  101. package/src/components/Paragraphs/Statistics/index.stories.js +1 -0
  102. package/src/components/Paragraphs/Statistics/index.vue +1 -0
  103. package/src/components/Paragraphs/TabbedCards/index.stories.js +8 -27
  104. package/src/components/Paragraphs/TabbedCards/index.vue +68 -103
  105. package/src/components/Paragraphs/Tabs/index.stories.js +1 -0
  106. package/src/components/Paragraphs/Tabs/index.vue +19 -17
  107. package/src/components/Paragraphs/TabulatedData/index.stories.js +6 -5
  108. package/src/components/Paragraphs/TabulatedData/index.vue +63 -35
  109. package/src/components/Paragraphs/TaskFinder/index.stories.js +9 -32
  110. package/src/components/Paragraphs/TaskFinder/index.vue +3 -3
  111. package/src/components/Paragraphs/TaskFinder/pdf/index.vue +1 -1
  112. package/src/components/Paragraphs/TaskFinder/task-finder-column.vue +1 -1
  113. package/src/components/Paragraphs/TextMedia/MediaTypes/Video/index.vue +9 -9
  114. package/src/components/Paragraphs/TextMedia/index.stories.js +13 -61
  115. package/src/components/Paragraphs/TextMedia/index.vue +20 -16
  116. package/src/components/Paragraphs/VideoGrid/index.stories.js +53 -44
  117. package/src/components/Paragraphs/VideoGrid/index.vue +13 -13
  118. package/src/components/Paragraphs/VideoPlayer/index.stories.js +1 -13
  119. package/src/components/Paragraphs/Webform/index.stories.js +94 -57
  120. package/src/components/Paragraphs/Webform/index.vue +11 -8
  121. package/src/components/SubComponents/Breadcrumb/index.stories.js +3 -11
  122. package/src/components/SubComponents/CardGroup/index.stories.js +1 -30
  123. package/src/components/SubComponents/CardGroup/index.vue +38 -28
  124. package/src/components/SubComponents/CtaButton/index.stories.js +1 -24
  125. package/src/components/SubComponents/CtaButton/index.vue +27 -25
  126. package/src/components/SubComponents/FormAddressPostcode/index.stories.js +3 -28
  127. package/src/components/SubComponents/FormAddressPostcode/index.vue +35 -37
  128. package/src/components/SubComponents/FormInstance/components/alert/index.vue +129 -0
  129. package/src/components/SubComponents/FormInstance/components/custom/base-formio.js +77 -0
  130. package/src/components/SubComponents/FormInstance/components/custom/code-formio.js +35 -0
  131. package/src/components/SubComponents/FormInstance/components/custom/custom-formio-registry.js +30 -0
  132. package/src/components/SubComponents/FormInstance/components/custom/range-formio.js +121 -0
  133. package/src/components/SubComponents/FormInstance/components/custom/rating-formio.js +121 -0
  134. package/src/components/SubComponents/FormInstance/components/custom/scale-formio.js +99 -0
  135. package/src/components/SubComponents/FormInstance/components/custom/tableselect-formio.js +200 -0
  136. package/src/components/SubComponents/FormInstance/components/handler/index.vue +204 -0
  137. package/src/components/SubComponents/FormInstance/components/renderer/index.vue +317 -0
  138. package/src/components/SubComponents/FormInstance/index.test.js +65 -0
  139. package/src/components/SubComponents/FormInstance/index.vue +56 -5
  140. package/src/components/SubComponents/FormInstance/models/base-form-element.js +338 -0
  141. package/src/components/SubComponents/FormInstance/models/form-callback-queue.js +45 -0
  142. package/src/components/SubComponents/FormInstance/models/form-utils.js +50 -0
  143. package/src/components/SubComponents/FormInstance/models/overrides/address.js +141 -0
  144. package/src/components/SubComponents/FormInstance/models/overrides/autocomplete.js +41 -0
  145. package/src/components/SubComponents/FormInstance/models/overrides/checkbox.js +14 -0
  146. package/src/components/SubComponents/FormInstance/models/overrides/checkboxes.js +49 -0
  147. package/src/components/SubComponents/FormInstance/models/overrides/code.js +27 -0
  148. package/src/components/SubComponents/FormInstance/models/overrides/composite.js +57 -0
  149. package/src/components/SubComponents/FormInstance/models/overrides/container.js +65 -0
  150. package/src/components/SubComponents/FormInstance/models/overrides/currency.js +17 -0
  151. package/src/components/SubComponents/FormInstance/models/overrides/customcomposite.js +41 -0
  152. package/src/components/SubComponents/FormInstance/models/overrides/date.js +126 -0
  153. package/src/components/SubComponents/FormInstance/models/overrides/datelist.js +73 -0
  154. package/src/components/SubComponents/FormInstance/models/overrides/detail.js +38 -0
  155. package/src/components/SubComponents/FormInstance/models/overrides/email-confirm.js +12 -0
  156. package/src/components/SubComponents/FormInstance/models/overrides/email.js +7 -0
  157. package/src/components/SubComponents/FormInstance/models/overrides/file.js +49 -0
  158. package/src/components/SubComponents/FormInstance/models/overrides/flexbox.js +33 -0
  159. package/src/components/SubComponents/FormInstance/models/overrides/hidden.js +24 -0
  160. package/src/components/SubComponents/FormInstance/models/overrides/likert.js +40 -0
  161. package/src/components/SubComponents/FormInstance/models/overrides/markup.js +47 -0
  162. package/src/components/SubComponents/FormInstance/models/overrides/message.js +53 -0
  163. package/src/components/SubComponents/FormInstance/models/overrides/moretext.js +64 -0
  164. package/src/components/SubComponents/FormInstance/models/overrides/multiple.js +51 -0
  165. package/src/components/SubComponents/FormInstance/models/overrides/number.js +22 -0
  166. package/src/components/SubComponents/FormInstance/models/overrides/options-other.js +34 -0
  167. package/src/components/SubComponents/FormInstance/models/overrides/page.js +7 -0
  168. package/src/components/SubComponents/FormInstance/models/overrides/phonenumber.js +13 -0
  169. package/src/components/SubComponents/FormInstance/models/overrides/radio.js +31 -0
  170. package/src/components/SubComponents/FormInstance/models/overrides/range.js +19 -0
  171. package/src/components/SubComponents/FormInstance/models/overrides/rating.js +47 -0
  172. package/src/components/SubComponents/FormInstance/models/overrides/scale.js +33 -0
  173. package/src/components/SubComponents/FormInstance/models/overrides/section.js +39 -0
  174. package/src/components/SubComponents/FormInstance/models/overrides/select.js +28 -0
  175. package/src/components/SubComponents/FormInstance/models/overrides/signature.js +7 -0
  176. package/src/components/SubComponents/FormInstance/models/overrides/submit.js +23 -0
  177. package/src/components/SubComponents/FormInstance/models/overrides/table.js +48 -0
  178. package/src/components/SubComponents/FormInstance/models/overrides/tablerow.js +20 -0
  179. package/src/components/SubComponents/FormInstance/models/overrides/tableselect.js +66 -0
  180. package/src/components/SubComponents/FormInstance/models/overrides/testing.js +47 -0
  181. package/src/components/SubComponents/FormInstance/models/overrides/text.js +7 -0
  182. package/src/components/SubComponents/FormInstance/models/overrides/textarea.js +26 -0
  183. package/src/components/SubComponents/FormInstance/models/overrides/textformat.js +13 -0
  184. package/src/components/SubComponents/FormInstance/models/overrides/time.js +13 -0
  185. package/src/components/SubComponents/FormInstance/models/overrides/twig.js +118 -0
  186. package/src/components/SubComponents/FormInstance/models/overrides/unknown.js +24 -0
  187. package/src/components/SubComponents/FormInstance/models/overrides/url.js +13 -0
  188. package/src/components/SubComponents/FormInstance/services/convert-form-element.js +49 -0
  189. package/src/components/SubComponents/FormInstance/services/form-api.js +47 -0
  190. package/src/components/SubComponents/FormInstance/services/form-render-parser.js +156 -0
  191. package/src/components/SubComponents/FormInstance/services/form-submit-parser.js +68 -0
  192. package/src/components/SubComponents/FormInstance/services/logic-linker.js +73 -0
  193. package/src/components/SubComponents/FormInstance/services/logic-parser.js +173 -0
  194. package/src/components/SubComponents/FormInstance/services/registry-factory.js +284 -0
  195. package/src/components/SubComponents/FormInstance/stories/Documentation.mdx +234 -0
  196. package/src/components/SubComponents/FormInstance/stories/advanced.stories.js +109 -0
  197. package/src/components/SubComponents/FormInstance/stories/basic.stories.js +73 -0
  198. package/src/components/SubComponents/FormInstance/stories/build.stories.js +27 -0
  199. package/src/components/SubComponents/FormInstance/stories/composite.stories.js +90 -0
  200. package/src/components/SubComponents/FormInstance/stories/condition.stories.js +83 -0
  201. package/src/components/SubComponents/FormInstance/stories/custom.stories.js +69 -0
  202. package/src/components/SubComponents/FormInstance/stories/date.stories.js +76 -0
  203. package/src/components/SubComponents/FormInstance/stories/fileupload.stories.js +57 -0
  204. package/src/components/SubComponents/FormInstance/stories/form-alert.stories.js +93 -0
  205. package/src/components/SubComponents/FormInstance/stories/index.stories.js +63 -0
  206. package/src/components/SubComponents/FormInstance/stories/layout.stories.js +85 -0
  207. package/src/components/SubComponents/FormInstance/stories/markup.stories.js +91 -0
  208. package/src/components/SubComponents/FormInstance/stories/mocks/address.json +298 -0
  209. package/src/components/SubComponents/FormInstance/stories/mocks/advancedhtml.json +23 -0
  210. package/src/components/SubComponents/FormInstance/stories/mocks/autocomplete.json +34 -0
  211. package/src/components/SubComponents/FormInstance/stories/mocks/basichtml.json +15 -0
  212. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxes.json +102 -0
  213. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxesother.json +197 -0
  214. package/src/components/SubComponents/FormInstance/stories/mocks/container.json +134 -0
  215. package/src/components/SubComponents/FormInstance/stories/mocks/customcomposite.json +469 -0
  216. package/src/components/SubComponents/FormInstance/stories/mocks/date.json +19 -0
  217. package/src/components/SubComponents/FormInstance/stories/mocks/datelist.json +752 -0
  218. package/src/components/SubComponents/FormInstance/stories/mocks/datetime.json +89 -0
  219. package/src/components/SubComponents/FormInstance/stories/mocks/details.json +63 -0
  220. package/src/components/SubComponents/FormInstance/stories/mocks/email.json +18 -0
  221. package/src/components/SubComponents/FormInstance/stories/mocks/emailconfirm.json +110 -0
  222. package/src/components/SubComponents/FormInstance/stories/mocks/fieldset.json +62 -0
  223. package/src/components/SubComponents/FormInstance/stories/mocks/fileupload.json +25 -0
  224. package/src/components/SubComponents/FormInstance/stories/mocks/flexbox.json +58 -0
  225. package/src/components/SubComponents/FormInstance/stories/mocks/hidden.json +35 -0
  226. package/src/components/SubComponents/FormInstance/stories/mocks/horizontalrule.json +14 -0
  227. package/src/components/SubComponents/FormInstance/stories/mocks/jahd.json +1359 -0
  228. package/src/components/SubComponents/FormInstance/stories/mocks/label.json +14 -0
  229. package/src/components/SubComponents/FormInstance/stories/mocks/likert.json +375 -0
  230. package/src/components/SubComponents/FormInstance/stories/mocks/message.json +86 -0
  231. package/src/components/SubComponents/FormInstance/stories/mocks/more.json +19 -0
  232. package/src/components/SubComponents/FormInstance/stories/mocks/multiple.json +142 -0
  233. package/src/components/SubComponents/FormInstance/stories/mocks/number.json +35 -0
  234. package/src/components/SubComponents/FormInstance/stories/mocks/quad.json +249 -0
  235. package/src/components/SubComponents/FormInstance/stories/mocks/radios.json +70 -0
  236. package/src/components/SubComponents/FormInstance/stories/mocks/radiosother.json +176 -0
  237. package/src/components/SubComponents/FormInstance/stories/mocks/range.json +58 -0
  238. package/src/components/SubComponents/FormInstance/stories/mocks/rating.json +42 -0
  239. package/src/components/SubComponents/FormInstance/stories/mocks/rule-disabled-value.json +66 -0
  240. package/src/components/SubComponents/FormInstance/stories/mocks/rule-enabled-value.json +43 -0
  241. package/src/components/SubComponents/FormInstance/stories/mocks/rule-hidden-value.json +68 -0
  242. package/src/components/SubComponents/FormInstance/stories/mocks/rule-required-value.json +69 -0
  243. package/src/components/SubComponents/FormInstance/stories/mocks/rule-visible-value.json +157 -0
  244. package/src/components/SubComponents/FormInstance/stories/mocks/sameas.json +66 -0
  245. package/src/components/SubComponents/FormInstance/stories/mocks/scale.json +200 -0
  246. package/src/components/SubComponents/FormInstance/stories/mocks/section.json +63 -0
  247. package/src/components/SubComponents/FormInstance/stories/mocks/select.json +41 -0
  248. package/src/components/SubComponents/FormInstance/stories/mocks/selectother.json +115 -0
  249. package/src/components/SubComponents/FormInstance/stories/mocks/signature.json +25 -0
  250. package/src/components/SubComponents/FormInstance/stories/mocks/styles.json +81 -0
  251. package/src/components/SubComponents/FormInstance/stories/mocks/table-select.json +472 -0
  252. package/src/components/SubComponents/FormInstance/stories/mocks/table.json +154 -0
  253. package/src/components/SubComponents/FormInstance/stories/mocks/telephone.json +18 -0
  254. package/src/components/SubComponents/FormInstance/stories/mocks/textarea.json +22 -0
  255. package/src/components/SubComponents/FormInstance/stories/mocks/textfield.json +66 -0
  256. package/src/components/SubComponents/FormInstance/stories/mocks/time.json +20 -0
  257. package/src/components/SubComponents/FormInstance/stories/mocks/token.json +260 -0
  258. package/src/components/SubComponents/FormInstance/stories/mocks/twig.json +154 -0
  259. package/src/components/SubComponents/FormInstance/stories/mocks/url.json +18 -0
  260. package/src/components/SubComponents/FormInstance/stories/mocks/value.json +17 -0
  261. package/src/components/SubComponents/FormInstance/stories/mocks/wizard.json +353 -0
  262. package/src/components/SubComponents/FormInstance/stories/options.stories.js +98 -0
  263. package/src/components/SubComponents/FormInstance/stories/style.stories.js +55 -0
  264. package/src/components/SubComponents/FormInstance/stories/wizard.stories.js +55 -0
  265. package/src/components/SubComponents/FormInstance/style.scss +185 -0
  266. package/src/components/SubComponents/FormInstance/tests/address.test.js +255 -0
  267. package/src/components/SubComponents/FormInstance/tests/advancedhtml.test.js +31 -0
  268. package/src/components/SubComponents/FormInstance/tests/autocomplete.test.js +38 -0
  269. package/src/components/SubComponents/FormInstance/tests/basichtml.test.js +31 -0
  270. package/src/components/SubComponents/FormInstance/tests/checkbox.test.js +29 -0
  271. package/src/components/SubComponents/FormInstance/tests/checkboxes.test.js +44 -0
  272. package/src/components/SubComponents/FormInstance/tests/checkboxesother.test.js +91 -0
  273. package/src/components/SubComponents/FormInstance/tests/container.test.js +66 -0
  274. package/src/components/SubComponents/FormInstance/tests/customcomposite.test.js +86 -0
  275. package/src/components/SubComponents/FormInstance/tests/date.test.js +63 -0
  276. package/src/components/SubComponents/FormInstance/tests/datelist.test.js +136 -0
  277. package/src/components/SubComponents/FormInstance/tests/datetime.test.js +54 -0
  278. package/src/components/SubComponents/FormInstance/tests/details.test.js +58 -0
  279. package/src/components/SubComponents/FormInstance/tests/email.test.js +28 -0
  280. package/src/components/SubComponents/FormInstance/tests/emailconfirm.test.js +79 -0
  281. package/src/components/SubComponents/FormInstance/tests/fieldset.test.js +63 -0
  282. package/src/components/SubComponents/FormInstance/tests/flexbox.test.js +71 -0
  283. package/src/components/SubComponents/FormInstance/tests/form-test-utils.js +120 -0
  284. package/src/components/SubComponents/FormInstance/tests/form.test.js +26 -0
  285. package/src/components/SubComponents/FormInstance/tests/hidden.test.js +52 -0
  286. package/src/components/SubComponents/FormInstance/tests/horizontalrule.test.js +31 -0
  287. package/src/components/SubComponents/FormInstance/tests/label.test.js +31 -0
  288. package/src/components/SubComponents/FormInstance/tests/likert.test.js +38 -0
  289. package/src/components/SubComponents/FormInstance/tests/message.test.js +89 -0
  290. package/src/components/SubComponents/FormInstance/tests/more.test.js +32 -0
  291. package/src/components/SubComponents/FormInstance/tests/multiple.test.js +71 -0
  292. package/src/components/SubComponents/FormInstance/tests/number.test.js +51 -0
  293. package/src/components/SubComponents/FormInstance/tests/radios.test.js +34 -0
  294. package/src/components/SubComponents/FormInstance/tests/radiosother.test.js +79 -0
  295. package/src/components/SubComponents/FormInstance/tests/range.test.js +32 -0
  296. package/src/components/SubComponents/FormInstance/tests/rating.test.js +38 -0
  297. package/src/components/SubComponents/FormInstance/tests/rule-disabled.test.js +128 -0
  298. package/src/components/SubComponents/FormInstance/tests/rule-enabled-value.test.js +78 -0
  299. package/src/components/SubComponents/FormInstance/tests/rule-hidden.test.js +131 -0
  300. package/src/components/SubComponents/FormInstance/tests/rule-required-value.test.js +144 -0
  301. package/src/components/SubComponents/FormInstance/tests/rule-visible.test.js +619 -0
  302. package/src/components/SubComponents/FormInstance/tests/sameas.test.js +94 -0
  303. package/src/components/SubComponents/FormInstance/tests/scale.test.js +43 -0
  304. package/src/components/SubComponents/FormInstance/tests/section.test.js +63 -0
  305. package/src/components/SubComponents/FormInstance/tests/select.test.js +45 -0
  306. package/src/components/SubComponents/FormInstance/tests/selectother.test.js +82 -0
  307. package/src/components/SubComponents/FormInstance/tests/signature.test.js +32 -0
  308. package/src/components/SubComponents/FormInstance/tests/styles.test.js +73 -0
  309. package/src/components/SubComponents/FormInstance/tests/table-select.test.js +93 -0
  310. package/src/components/SubComponents/FormInstance/tests/table.test.js +97 -0
  311. package/src/components/SubComponents/FormInstance/tests/telephone.test.js +29 -0
  312. package/src/components/SubComponents/FormInstance/tests/textarea.test.js +29 -0
  313. package/src/components/SubComponents/FormInstance/tests/textfield.test.js +48 -0
  314. package/src/components/SubComponents/FormInstance/tests/time.test.js +29 -0
  315. package/src/components/SubComponents/FormInstance/tests/token.test.js +33 -0
  316. package/src/components/SubComponents/FormInstance/tests/twig.test.js +74 -0
  317. package/src/components/SubComponents/FormInstance/tests/url.test.js +48 -0
  318. package/src/components/SubComponents/FormInstance/tests/value.test.js +31 -0
  319. package/src/components/SubComponents/FormInstance/tests/wizard.test.js +145 -0
  320. package/src/components/SubComponents/Icon/index.stories.js +1 -6
  321. package/src/components/SubComponents/MediaPlayer/index.stories.js +1 -6
  322. package/src/components/SubComponents/Pagination/index.stories.js +3 -8
  323. package/src/components/SubComponents/Pagination/index.vue +19 -18
  324. package/src/components/SubComponents/ResourceGroup/List/index.stories.js +3 -2
  325. package/src/components/SubComponents/ResourceGroup/index.vue +211 -174
  326. package/src/components/SubComponents/Search/GoogleREST/index.stories.js +50 -0
  327. package/src/components/SubComponents/Search/GoogleSearch/index.stories.js +23 -0
  328. package/src/components/SubComponents/Search/SearchListing/index.vue +85 -25
  329. package/src/components/SubComponents/Search/index.stories.js +19 -16
  330. package/src/components/SubComponents/Search/index.vue +578 -72
  331. package/src/components/SubComponents/SingleImage/index.stories.js +2 -16
  332. package/src/components/SubComponents/VideoThumbnail/index.stories.js +1 -0
  333. package/src/components/SubComponents/VideoThumbnail/index.vue +48 -136
  334. package/src/includes/scss/mixins/src/grid.scss +4 -2
  335. package/src/includes/scss/mixins/src/units.scss +25 -4
  336. package/src/includes/scss/vars/src/colors.module.scss +28 -1
  337. package/src/includes/scss/vars/src/colors.scss +29 -1
  338. package/src/index.js +62 -42
  339. package/src/main.js +2 -10
  340. package/src/mock/app-header-new.js +715 -0
  341. package/src/mock/carousel-items.js +82 -0
  342. package/src/mock/jest.fileMock.js +1 -0
  343. package/vite.config.js +28 -15
  344. package/src/components/SubComponents/FormInstance/index.stories.js +0 -8
  345. package/src/components/SubComponents/GoogleSearch/index.stories.js +0 -8
  346. package/src/components/SubComponents/GoogleSearch/index.vue +0 -405
@@ -0,0 +1,82 @@
1
+ export const mockCarouselItems = [
2
+ {
3
+ field_title: 'This is the first slider',
4
+ field_image: {
5
+ field_media_image: {
6
+ uri: {
7
+ url: '/sites/default/files/2025-01/image-ag-safety-network-veg-001.jpg'
8
+ }
9
+ }
10
+ },
11
+ field_link: {
12
+ url: 'https://www.google.com',
13
+ },
14
+ field_date_start: '2025-02-05',
15
+ field_date_end: '2025-03-07',
16
+ field_favorite: true
17
+ },
18
+ {
19
+ field_title: 'This is the second slider',
20
+ field_image: {
21
+ field_media_image: {
22
+ uri: {
23
+ url: '/sites/default/files/2025-01/large-2023%20WorkSafe%20Awards.jpg'
24
+ }
25
+ }
26
+ },
27
+ field_link: {
28
+ url: '/news/2019-11/winners-named-distinguished-worksafe-awards',
29
+ },
30
+ field_date_start: '2025-02-05',
31
+ field_date_end: '2025-07-05',
32
+ field_favorite: false
33
+ },
34
+ {
35
+ field_title: 'This is the third slider',
36
+ field_image: {
37
+ field_media_image: {
38
+ uri: {
39
+ url: '/sites/default/files/2024-12/header-image-workwell-oelg-project.jpg'
40
+ }
41
+ }
42
+ },
43
+ field_link: {
44
+ url: '/resources/workwell-ageing-workforce-ready-age-difference',
45
+ },
46
+ field_date_start: '2024-01-12',
47
+ field_date_end: '2024-12-12',
48
+ favorite: false
49
+ },
50
+ {
51
+ field_title: 'This is the fourth slider',
52
+ field_image: {
53
+ field_media_image: {
54
+ uri: {
55
+ url: '/sites/default/files/styles/large/public/2018-06/Topics-explosives_0.jpg'
56
+ }
57
+ }
58
+ },
59
+ field_link: {
60
+ url: '/explosives',
61
+ },
62
+ field_date_start: '2025-01-30',
63
+ field_date_end: '2025-12-12',
64
+ field_favorite: false
65
+ },
66
+ {
67
+ field_title: '',
68
+ field_image: {
69
+ field_media_image: {
70
+ uri: {
71
+ url: '/sites/default/files/styles/large/public/2022-07/card-bricklaying-3x2.jpg'
72
+ }
73
+ }
74
+ },
75
+ field_link: {
76
+ url: '/construction',
77
+ },
78
+ field_date_start: '2024-10-30',
79
+ field_date_end: '2025-12-12',
80
+ field_favorite: false
81
+ },
82
+ ]
@@ -0,0 +1 @@
1
+ module.exports = '';
package/vite.config.js CHANGED
@@ -1,23 +1,36 @@
1
1
  import { fileURLToPath, URL } from 'node:url'
2
2
  import svgLoader from 'vite-svg-loader'
3
- import { defineConfig } from 'vite'
3
+ import { defineConfig, loadEnv } from 'vite'
4
4
  import vue from '@vitejs/plugin-vue'
5
5
 
6
6
  // https://vitejs.dev/config/
7
- export default defineConfig({
8
- plugins: [
9
- vue(), svgLoader()
10
- ],
11
- resolve: {
12
- alias: {
13
- '@': fileURLToPath(new URL('./src', import.meta.url))
7
+ export default defineConfig(({ command, mode }) => {
8
+ // Load env file based on `mode` in the current working directory.
9
+ // Set the third parameter to '' to load all env regardless of the `VITE_` prefix.
10
+ const env = loadEnv(mode, process.cwd(), '')
11
+
12
+ return{
13
+ css: {
14
+ preprocessorOptions: {
15
+ scss: {
16
+ api: 'modern-compiler', // or "modern", "legacy"
17
+ },
18
+ },
19
+ },
20
+ plugins: [
21
+ vue(), svgLoader()
22
+ ],
23
+ resolve: {
24
+ alias: {
25
+ '@': fileURLToPath(new URL('./src', import.meta.url))
26
+ }
27
+ },
28
+ define: {
29
+ SHOW_COOKIE: JSON.stringify(env.SHOW_COOKIE),
30
+ 'process.env.CONTENT_API_URL': `"${process.env.CONTENT_API_URL}"`,
31
+ 'process.env.IS_STORYBOOK': `"${process.env.IS_STORYBOOK}"`,
32
+ 'process.env.CARETAKER': `"${process.env.CARETAKER}"`,
33
+ 'process.env.GOOGLE__URL': `"${process.env.GOOGLE__URL}"`
14
34
  }
15
- },
16
- define: {
17
- 'process.env.SHOW_COOKIE': `"${process.env.SHOW_COOKIE}"`,
18
- 'process.env.CONTENT_API_URL': `"${process.env.CONTENT_API_URL}"`,
19
- 'process.env.IS_STORYBOOK': `"${process.env.IS_STORYBOOK}"`,
20
- 'process.env.CARETAKER': `"${process.env.CARETAKER}"`,
21
- 'process.env.SHOW_GLOBAL_NOTICE': `"${process.env.SHOW_GLOBAL_NOTICE}"`
22
35
  }
23
36
  })
@@ -1,8 +0,0 @@
1
- import FullForm from './index.vue'
2
-
3
- export default {
4
- title: 'Form/FormInstance',
5
- component: FullForm,
6
- }
7
-
8
- export const Default = {}
@@ -1,8 +0,0 @@
1
- import GoogleSearch from './index.vue'
2
-
3
- export default {
4
- title: 'SubComponents/GoogleSearch',
5
- component: GoogleSearch
6
- }
7
-
8
- export const Default = {}
@@ -1,405 +0,0 @@
1
- <template>
2
- <div class="wcl-search">
3
- <div class="gcse-search"></div>
4
- </div>
5
- </template>
6
-
7
- <script>
8
- export default {
9
- mounted() {
10
- // console.log('Component mounted')
11
- this.setupCustomeStyle()
12
-
13
- // Introduce a delay before setting up addEventListener
14
- setTimeout(() => {
15
- this.setupCustomAttr()
16
- this.handleSearchResultLinkTitle()
17
- }, 2000) // Adjust the delay time as needed
18
- },
19
-
20
- beforeDestroy() {
21
- // Remove event listeners before the component is destroyed
22
- const targetNode = document.querySelector('input[name="search"]')
23
- const buttonNode = document.querySelector('button.gsc-search-button')
24
-
25
- if (targetNode) {
26
- // Add keyup.enter event listener
27
- targetNode.removeEventListener('keyup', this.handleKeyUp)
28
- buttonNode.removeEventListener('click', this.handleKeyUp)
29
- }
30
- const paginationNodes = document.querySelectorAll('.gsc-cursor-page')
31
- paginationNodes.forEach((paginationNode) => {
32
- paginationNode.removeEventListener('click', this.handleSearchResultTitle)
33
- })
34
- },
35
-
36
- methods: {
37
- // Method to customize google search style
38
- setupCustomeStyle() {
39
- const script = document.createElement('script')
40
- script.async = true
41
- script.src = 'https://cse.google.com/cse.js?cx=53b1506aa03c64160'
42
- document.head.appendChild(script)
43
-
44
- // Create a new style element
45
- const style = document.createElement('style')
46
- style.id = 'searchStyle' // Assign an ID to the style element
47
- // The CSS we are going to inject
48
- const cssVar = 'table.gssb_c {display: none !important;}'
49
- // Inject the style element into the head
50
- document.head.appendChild(style)
51
- // Set the text content of the style element to the CSS text
52
- style.textContent = cssVar
53
- },
54
-
55
- // Method to add google search input attributes
56
- setupCustomAttr() {
57
- console.log('setupCustomInputAttr ...')
58
-
59
- const targetNode = document.querySelector('input[name="search"]')
60
- const buttonNode = document.querySelector('button.gsc-search-button')
61
-
62
- if (targetNode) {
63
- // Add keyup.enter event listener
64
- targetNode.addEventListener('keyup', this.handleKeyUp)
65
- buttonNode.addEventListener('click', this.handleKeyUp)
66
- }
67
-
68
- this.setupPaginationEvent()
69
- },
70
-
71
- setupPaginationEvent() {
72
- console.log('setupPaginationEvent ....')
73
- // Introduce a delay before setting up addEventListener on pagination
74
- setTimeout(() => {
75
- this.handleSearchResultLinkTitle()
76
- const paginationNodes = document.querySelectorAll('.gsc-cursor-page')
77
- console.log('paginationNodes length ..', paginationNodes.length)
78
-
79
- if (paginationNodes && paginationNodes.length > 0) {
80
- console.log('FOUND PAGINATION ....', paginationNodes)
81
-
82
- // Loop through each element and add a click event listener
83
- paginationNodes.forEach((paginationNode) => {
84
- // Check if the click event listener has already been added
85
- if (!paginationNode.clickEventListenerAdded) {
86
- // Add a click event listener
87
- paginationNode.addEventListener(
88
- 'click',
89
- this.handleSearchResultTitle
90
- )
91
- // Mark that the click event listener has been added
92
- paginationNode.clickEventListenerAdded = true
93
- console.log('Adding a click event listener')
94
- }
95
- })
96
- }
97
- }, 2000) // Adjust the delay time as needed
98
- },
99
-
100
- // Method to trim text after '|'
101
- handleSearchResultTitle() {
102
- //alert('handleSearchResultTitle ....')
103
- this.setupPaginationEvent()
104
- },
105
-
106
- handleSearchResultLinkTitle() {
107
- //alert('handleSearchResultLinkTitle ....')
108
- // Get all targetNodes with class "a.gs-title"
109
- var targetNodes = document.querySelectorAll('a.gs-title')
110
- console.log('search list title targetNodes :- ', targetNodes)
111
-
112
- // Loop through each element and hide the text after the "|"
113
- targetNodes.forEach(function(element) {
114
- // Get the text content
115
- var text = element.textContent || element.innerText
116
-
117
- // Find the index of the "|" symbol
118
- var pipeIndex = text.indexOf('|')
119
- console.log('text :- ', text)
120
- // If the "|" symbol is found, update the text content to display only the part before "|"
121
- if (pipeIndex !== -1) {
122
- element.textContent = text.substring(0, pipeIndex).trim()
123
- }
124
- })
125
- },
126
-
127
- handleKeyUp(event) {
128
- if (event.key === 'Enter' || event.type === 'click') {
129
- let keyword = event.key
130
- ? event.target.value
131
- : document.querySelector('input[name="search"]').value
132
-
133
- // console.log('Enter key pressed. Value:', keyword)
134
-
135
- // Check if the URL does not contain "/search"
136
- if (keyword && !window.location.href.includes('/search')) {
137
- let origin = window.location.origin
138
- let hash = window.location.hash
139
- let pathname = 'search'
140
- let URL = origin + '/' + pathname + hash
141
- // console.log('URL does not contains "/search" ...', URL)
142
- window.location.assign(URL)
143
- }
144
-
145
- this.setupPaginationEvent
146
- }
147
- }
148
- }
149
- }
150
- </script>
151
- <style lang="scss" scoped>
152
- @import '../../../includes/scss/all';
153
-
154
- .wcl-search {
155
- :deep(form.gsc-search-box) {
156
- position: relative;
157
- display: -ms-flexbox;
158
- display: flex;
159
- -ms-flex-wrap: wrap;
160
- flex-wrap: wrap;
161
- -ms-flex-align: stretch;
162
- align-items: stretch;
163
- width: 100%;
164
- }
165
- :deep(.gsib_a) {
166
- padding: 0 !important;
167
- height: 56px;
168
- }
169
- :deep(.gsib_b) {
170
- position: absolute;
171
- right: 5px;
172
- top: 15px;
173
- }
174
- :deep(.gcsc-more-maybe-branding-root) {
175
- display: none;
176
- }
177
- :deep(table.gsc-input) {
178
- position: relative;
179
- }
180
- :deep(td.gsc-input) {
181
- border: none;
182
- padding: 0;
183
- width: 100%;
184
- }
185
- :deep(.gsc-input-box) {
186
- border: none;
187
- }
188
- :deep(input.gsc-input) {
189
- border-radius: 8px 0px 0px 8px;
190
- border: 1px solid $gray !important;
191
- border-right: 0 !important;
192
- background: none !important;
193
- color: #495057;
194
- height: 56px !important;
195
- position: relative;
196
- -ms-flex: 1 1 auto;
197
- flex: 1 1 auto;
198
- padding: 0.375rem 0.75rem !important;
199
-
200
- @media screen and (max-width: 320px) {
201
- width: 220px;
202
- }
203
-
204
- &:focus {
205
- box-shadow: none;
206
- }
207
- }
208
- :deep(.gsc-search-button) {
209
- display: -ms-flexbox;
210
- display: flex;
211
- margin-left: 0px;
212
- height: 56px;
213
- margin-top: 0px;
214
- }
215
- :deep(button.gsc-search-button) {
216
- background: $orange;
217
- border: none;
218
- border-radius: 0px 8px 8px 0px;
219
- color: $black;
220
- display: flex;
221
- align-items: center;
222
- height: 56px !important;
223
- font-size: 16px;
224
- font-weight: 700;
225
- padding-right: 32px;
226
- padding-left: 32px;
227
-
228
- &:before {
229
- content: 'Search';
230
- }
231
- @media screen and (max-width: 767px) {
232
- margin-top: 6px;
233
- }
234
- @media screen and (max-width: 320px) {
235
- padding-right: 16px;
236
- padding-left: 16px;
237
- }
238
-
239
- svg {
240
- fill: black;
241
- height: 18px;
242
- width: 18px;
243
- margin-left: 10px;
244
- }
245
-
246
- :focus {
247
- box-shadow: 0px;
248
- }
249
- }
250
-
251
- :deep(.gsst_a .gscb_a) {
252
- color: #191919;
253
- }
254
- :deep(.gsc-result-info) {
255
- color: #191919;
256
- font-size: 16px;
257
- font-weight: 400;
258
- }
259
- :deep(.gsc-above-wrapper-area) {
260
- padding: 20px 0;
261
- border-bottom: none;
262
- }
263
- /* search list start */
264
- :deep(.gsc-url-top) {
265
- display: none;
266
- }
267
- :deep(.gsc-table-result) {
268
- line-height: 1.6;
269
- padding: 0 5px;
270
- font-size: 16px;
271
- font-weight: 400;
272
- width: 80%;
273
- b {
274
- color: #191919;
275
- font-size: 16px;
276
- font-weight: normal;
277
- }
278
- }
279
- :deep(.gsc-resultsRoot.gsc-tabData) {
280
- width: 100%;
281
- margin-left: auto;
282
- margin-right: auto;
283
- padding-left: 15px;
284
- padding-right: 15px;
285
-
286
- &:hover {
287
- border: none;
288
- }
289
- }
290
- :deep(.gs-bidi-start-align.gs-snippet) {
291
- color: #191919 !important;
292
- line-height: 24px;
293
- }
294
- :deep(.gsc-thumbnail-inside) {
295
- position: relative;
296
- padding: 0;
297
-
298
- &::after {
299
- content: ' ';
300
- position: absolute;
301
- height: 16px;
302
- width: 11px;
303
- top: 5px;
304
- right: 16px;
305
- background-repeat: no-repeat;
306
- background-image: url(../../../assets/icons/chev-right.svg);
307
- background-size: 100%;
308
- }
309
- div.gs-title {
310
- width: 90%;
311
- margin-bottom: 12px;
312
- overflow: visible;
313
- }
314
- a.gs-title {
315
- color: #191919 !important;
316
- font-weight: 700;
317
- line-height: 24px;
318
- font-size: 20px;
319
- border: 3px solid transparent;
320
- padding-left: 5px;
321
- padding-right: 5px;
322
- text-decoration: underline;
323
-
324
- &:hover {
325
- border: 3px solid #da47ff;
326
- color: #006bff !important;
327
- b {
328
- color: #006bff !important;
329
- }
330
- }
331
-
332
- b {
333
- color: #191919 !important;
334
- font-size: 20px;
335
- }
336
- }
337
- }
338
- :deep(.gsc-orderby-label) {
339
- font-size: 16px;
340
- font-weight: 700;
341
- color: #191919;
342
- }
343
- :deep(.gsc-selected-option-container) {
344
- background-color: white;
345
- border-radius: 10px;
346
- margin-top: 0px;
347
- padding-top: 6px;
348
- margin-right: 0;
349
- margin-left: 4px;
350
- padding-left: 20px;
351
- padding-bottom: 6px;
352
- height: 40px;
353
- .gsc-selected-option {
354
- font-size: 16px;
355
- font-weight: 400;
356
- line-height: 24px;
357
- margin-right: 20px;
358
- }
359
- }
360
- :deep(.gsc-control-cse .gsc-option-selector) {
361
- margin-top: 0;
362
- margin-right: 10px;
363
- }
364
- :deep(.gsc-expansionArea > .gsc-webResult.gsc-result) {
365
- border: 0;
366
- flex: 0 0 100%;
367
- max-width: 100%;
368
- padding: 0;
369
- &:first-child {
370
- border-top: 1px solid #bababa;
371
- }
372
- > div {
373
- border-bottom: 1px solid #bababa;
374
- padding: 32px 0;
375
- }
376
- }
377
-
378
- :deep(.gsc-results .gsc-cursor-box .gsc-cursor-current-page) {
379
- background-color: lightgrey;
380
- }
381
- :deep(.gsc-results .gsc-cursor-box .gsc-cursor-page) {
382
- border: 1px solid grey;
383
- color: #333333;
384
- padding: 10px 12px;
385
- border-radius: 5px;
386
- font-size: 16px;
387
- font-weight: 400;
388
- }
389
- :deep(.gsc-results .gsc-cursor-box) {
390
- margin-top: 50px;
391
- }
392
-
393
- /* search list end */
394
- @include mq('xs') {
395
- .not-extra-small-screen {
396
- display: none;
397
- }
398
- }
399
- }
400
- @media screen and (max-width: 767px) {
401
- :deep(.gssb_c) {
402
- width: 85% !important;
403
- }
404
- }
405
- </style>