@ongov/ontario-design-system-component-library 6.0.0-alpha.5 → 6.0.0-alpha.8

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 (506) hide show
  1. package/components/index.d.ts +43 -0
  2. package/components/index.js +2169 -0
  3. package/components/index.js.map +1 -0
  4. package/components/ontario-accordion.d.ts +11 -0
  5. package/components/ontario-accordion.js +378 -0
  6. package/components/ontario-accordion.js.map +1 -0
  7. package/components/ontario-aside.d.ts +11 -0
  8. package/components/ontario-aside.js +171 -0
  9. package/components/ontario-aside.js.map +1 -0
  10. package/components/ontario-back-to-top.d.ts +11 -0
  11. package/components/ontario-back-to-top.js +119 -0
  12. package/components/ontario-back-to-top.js.map +1 -0
  13. package/components/ontario-badge.d.ts +11 -0
  14. package/components/ontario-badge.js +9 -0
  15. package/components/ontario-badge.js.map +1 -0
  16. package/components/ontario-blockquote.d.ts +11 -0
  17. package/components/ontario-blockquote.js +145 -0
  18. package/components/ontario-blockquote.js.map +1 -0
  19. package/components/ontario-button.d.ts +11 -0
  20. package/components/ontario-button.js +237 -0
  21. package/components/ontario-button.js.map +1 -0
  22. package/components/ontario-callout.d.ts +11 -0
  23. package/components/ontario-callout.js +170 -0
  24. package/components/ontario-callout.js.map +1 -0
  25. package/components/ontario-card-collection.d.ts +11 -0
  26. package/components/ontario-card-collection.js +111 -0
  27. package/components/ontario-card-collection.js.map +1 -0
  28. package/components/ontario-card.d.ts +11 -0
  29. package/components/ontario-card.js +389 -0
  30. package/components/ontario-card.js.map +1 -0
  31. package/components/ontario-checkboxes.d.ts +11 -0
  32. package/components/ontario-checkboxes.js +428 -0
  33. package/components/ontario-checkboxes.js.map +1 -0
  34. package/components/ontario-critical-alert.d.ts +11 -0
  35. package/components/ontario-critical-alert.js +128 -0
  36. package/components/ontario-critical-alert.js.map +1 -0
  37. package/components/ontario-date-input.d.ts +11 -0
  38. package/components/ontario-date-input.js +623 -0
  39. package/components/ontario-date-input.js.map +1 -0
  40. package/components/ontario-dropdown-list.d.ts +11 -0
  41. package/components/ontario-dropdown-list.js +449 -0
  42. package/components/ontario-dropdown-list.js.map +1 -0
  43. package/components/ontario-fieldset.d.ts +11 -0
  44. package/components/ontario-fieldset.js +167 -0
  45. package/components/ontario-fieldset.js.map +1 -0
  46. package/components/ontario-footer.d.ts +11 -0
  47. package/components/ontario-footer.js +455 -0
  48. package/components/ontario-footer.js.map +1 -0
  49. package/components/ontario-form-container.d.ts +11 -0
  50. package/components/ontario-form-container.js +74 -0
  51. package/components/ontario-form-container.js.map +1 -0
  52. package/components/ontario-header-overflow-menu.d.ts +11 -0
  53. package/components/ontario-header-overflow-menu.js +9 -0
  54. package/components/ontario-header-overflow-menu.js.map +1 -0
  55. package/components/ontario-header.d.ts +11 -0
  56. package/components/ontario-header.js +900 -0
  57. package/components/ontario-header.js.map +1 -0
  58. package/components/ontario-hint-expander.d.ts +11 -0
  59. package/components/ontario-hint-expander.js +9 -0
  60. package/components/ontario-hint-expander.js.map +1 -0
  61. package/components/ontario-hint-text.d.ts +11 -0
  62. package/components/ontario-hint-text.js +9 -0
  63. package/components/ontario-hint-text.js.map +1 -0
  64. package/components/ontario-icon-accessibility.d.ts +11 -0
  65. package/components/ontario-icon-accessibility.js +170 -0
  66. package/components/ontario-icon-accessibility.js.map +1 -0
  67. package/components/ontario-icon-account.d.ts +11 -0
  68. package/components/ontario-icon-account.js +170 -0
  69. package/components/ontario-icon-account.js.map +1 -0
  70. package/components/ontario-icon-add-alt.d.ts +11 -0
  71. package/components/ontario-icon-add-alt.js +171 -0
  72. package/components/ontario-icon-add-alt.js.map +1 -0
  73. package/components/ontario-icon-add.d.ts +11 -0
  74. package/components/ontario-icon-add.js +171 -0
  75. package/components/ontario-icon-add.js.map +1 -0
  76. package/components/ontario-icon-alert-error.d.ts +11 -0
  77. package/components/ontario-icon-alert-error.js +9 -0
  78. package/components/ontario-icon-alert-error.js.map +1 -0
  79. package/components/ontario-icon-alert-information.d.ts +11 -0
  80. package/components/ontario-icon-alert-information.js +9 -0
  81. package/components/ontario-icon-alert-information.js.map +1 -0
  82. package/components/ontario-icon-alert-success.d.ts +11 -0
  83. package/components/ontario-icon-alert-success.js +9 -0
  84. package/components/ontario-icon-alert-success.js.map +1 -0
  85. package/components/ontario-icon-alert-warning.d.ts +11 -0
  86. package/components/ontario-icon-alert-warning.js +9 -0
  87. package/components/ontario-icon-alert-warning.js.map +1 -0
  88. package/components/ontario-icon-arrow-up.d.ts +11 -0
  89. package/components/ontario-icon-arrow-up.js +171 -0
  90. package/components/ontario-icon-arrow-up.js.map +1 -0
  91. package/components/ontario-icon-attach.d.ts +11 -0
  92. package/components/ontario-icon-attach.js +172 -0
  93. package/components/ontario-icon-attach.js.map +1 -0
  94. package/components/ontario-icon-bookmark-off.d.ts +11 -0
  95. package/components/ontario-icon-bookmark-off.js +170 -0
  96. package/components/ontario-icon-bookmark-off.js.map +1 -0
  97. package/components/ontario-icon-bookmark-on.d.ts +11 -0
  98. package/components/ontario-icon-bookmark-on.js +170 -0
  99. package/components/ontario-icon-bookmark-on.js.map +1 -0
  100. package/components/ontario-icon-calendar.d.ts +11 -0
  101. package/components/ontario-icon-calendar.js +170 -0
  102. package/components/ontario-icon-calendar.js.map +1 -0
  103. package/components/ontario-icon-camera.d.ts +11 -0
  104. package/components/ontario-icon-camera.js +170 -0
  105. package/components/ontario-icon-camera.js.map +1 -0
  106. package/components/ontario-icon-chevron-down.d.ts +11 -0
  107. package/components/ontario-icon-chevron-down.js +9 -0
  108. package/components/ontario-icon-chevron-down.js.map +1 -0
  109. package/components/ontario-icon-chevron-left.d.ts +11 -0
  110. package/components/ontario-icon-chevron-left.js +9 -0
  111. package/components/ontario-icon-chevron-left.js.map +1 -0
  112. package/components/ontario-icon-chevron-right.d.ts +11 -0
  113. package/components/ontario-icon-chevron-right.js +171 -0
  114. package/components/ontario-icon-chevron-right.js.map +1 -0
  115. package/components/ontario-icon-chevron-up.d.ts +11 -0
  116. package/components/ontario-icon-chevron-up.js +9 -0
  117. package/components/ontario-icon-chevron-up.js.map +1 -0
  118. package/components/ontario-icon-clock.d.ts +11 -0
  119. package/components/ontario-icon-clock.js +170 -0
  120. package/components/ontario-icon-clock.js.map +1 -0
  121. package/components/ontario-icon-close-header.d.ts +11 -0
  122. package/components/ontario-icon-close-header.js +171 -0
  123. package/components/ontario-icon-close-header.js.map +1 -0
  124. package/components/ontario-icon-close.d.ts +11 -0
  125. package/components/ontario-icon-close.js +171 -0
  126. package/components/ontario-icon-close.js.map +1 -0
  127. package/components/ontario-icon-cloud.d.ts +11 -0
  128. package/components/ontario-icon-cloud.js +170 -0
  129. package/components/ontario-icon-cloud.js.map +1 -0
  130. package/components/ontario-icon-collapse.d.ts +11 -0
  131. package/components/ontario-icon-collapse.js +168 -0
  132. package/components/ontario-icon-collapse.js.map +1 -0
  133. package/components/ontario-icon-credit-card.d.ts +11 -0
  134. package/components/ontario-icon-credit-card.js +171 -0
  135. package/components/ontario-icon-credit-card.js.map +1 -0
  136. package/components/ontario-icon-critical-alert-warning.d.ts +11 -0
  137. package/components/ontario-icon-critical-alert-warning.js +188 -0
  138. package/components/ontario-icon-critical-alert-warning.js.map +1 -0
  139. package/components/ontario-icon-delete.d.ts +11 -0
  140. package/components/ontario-icon-delete.js +170 -0
  141. package/components/ontario-icon-delete.js.map +1 -0
  142. package/components/ontario-icon-document.d.ts +11 -0
  143. package/components/ontario-icon-document.js +170 -0
  144. package/components/ontario-icon-document.js.map +1 -0
  145. package/components/ontario-icon-download.d.ts +11 -0
  146. package/components/ontario-icon-download.js +170 -0
  147. package/components/ontario-icon-download.js.map +1 -0
  148. package/components/ontario-icon-dropdown-arrow.d.ts +11 -0
  149. package/components/ontario-icon-dropdown-arrow.js +142 -0
  150. package/components/ontario-icon-dropdown-arrow.js.map +1 -0
  151. package/components/ontario-icon-edit.d.ts +11 -0
  152. package/components/ontario-icon-edit.js +170 -0
  153. package/components/ontario-icon-edit.js.map +1 -0
  154. package/components/ontario-icon-email.d.ts +11 -0
  155. package/components/ontario-icon-email.js +171 -0
  156. package/components/ontario-icon-email.js.map +1 -0
  157. package/components/ontario-icon-expand.d.ts +11 -0
  158. package/components/ontario-icon-expand.js +168 -0
  159. package/components/ontario-icon-expand.js.map +1 -0
  160. package/components/ontario-icon-export.d.ts +11 -0
  161. package/components/ontario-icon-export.js +170 -0
  162. package/components/ontario-icon-export.js.map +1 -0
  163. package/components/ontario-icon-facebook-alt.d.ts +11 -0
  164. package/components/ontario-icon-facebook-alt.js +170 -0
  165. package/components/ontario-icon-facebook-alt.js.map +1 -0
  166. package/components/ontario-icon-facebook.d.ts +11 -0
  167. package/components/ontario-icon-facebook.js +170 -0
  168. package/components/ontario-icon-facebook.js.map +1 -0
  169. package/components/ontario-icon-favourite-off.d.ts +11 -0
  170. package/components/ontario-icon-favourite-off.js +170 -0
  171. package/components/ontario-icon-favourite-off.js.map +1 -0
  172. package/components/ontario-icon-favourite-on.d.ts +11 -0
  173. package/components/ontario-icon-favourite-on.js +170 -0
  174. package/components/ontario-icon-favourite-on.js.map +1 -0
  175. package/components/ontario-icon-filter.d.ts +11 -0
  176. package/components/ontario-icon-filter.js +170 -0
  177. package/components/ontario-icon-filter.js.map +1 -0
  178. package/components/ontario-icon-flickr.d.ts +11 -0
  179. package/components/ontario-icon-flickr.js +170 -0
  180. package/components/ontario-icon-flickr.js.map +1 -0
  181. package/components/ontario-icon-grid.d.ts +11 -0
  182. package/components/ontario-icon-grid.js +170 -0
  183. package/components/ontario-icon-grid.js.map +1 -0
  184. package/components/ontario-icon-help.d.ts +11 -0
  185. package/components/ontario-icon-help.js +171 -0
  186. package/components/ontario-icon-help.js.map +1 -0
  187. package/components/ontario-icon-instagram.d.ts +11 -0
  188. package/components/ontario-icon-instagram.js +170 -0
  189. package/components/ontario-icon-instagram.js.map +1 -0
  190. package/components/ontario-icon-interac-en-alt.d.ts +11 -0
  191. package/components/ontario-icon-interac-en-alt.js +203 -0
  192. package/components/ontario-icon-interac-en-alt.js.map +1 -0
  193. package/components/ontario-icon-interac-en.d.ts +11 -0
  194. package/components/ontario-icon-interac-en.js +202 -0
  195. package/components/ontario-icon-interac-en.js.map +1 -0
  196. package/components/ontario-icon-interac-fr-alt.d.ts +11 -0
  197. package/components/ontario-icon-interac-fr-alt.js +203 -0
  198. package/components/ontario-icon-interac-fr-alt.js.map +1 -0
  199. package/components/ontario-icon-interac-fr.d.ts +11 -0
  200. package/components/ontario-icon-interac-fr.js +183 -0
  201. package/components/ontario-icon-interac-fr.js.map +1 -0
  202. package/components/ontario-icon-linkedin-alt.d.ts +11 -0
  203. package/components/ontario-icon-linkedin-alt.js +170 -0
  204. package/components/ontario-icon-linkedin-alt.js.map +1 -0
  205. package/components/ontario-icon-linkedin.d.ts +11 -0
  206. package/components/ontario-icon-linkedin.js +170 -0
  207. package/components/ontario-icon-linkedin.js.map +1 -0
  208. package/components/ontario-icon-list.d.ts +11 -0
  209. package/components/ontario-icon-list.js +170 -0
  210. package/components/ontario-icon-list.js.map +1 -0
  211. package/components/ontario-icon-live-chat.d.ts +11 -0
  212. package/components/ontario-icon-live-chat.js +170 -0
  213. package/components/ontario-icon-live-chat.js.map +1 -0
  214. package/components/ontario-icon-location-off.d.ts +11 -0
  215. package/components/ontario-icon-location-off.js +170 -0
  216. package/components/ontario-icon-location-off.js.map +1 -0
  217. package/components/ontario-icon-location-on.d.ts +11 -0
  218. package/components/ontario-icon-location-on.js +170 -0
  219. package/components/ontario-icon-location-on.js.map +1 -0
  220. package/components/ontario-icon-lock-off.d.ts +11 -0
  221. package/components/ontario-icon-lock-off.js +170 -0
  222. package/components/ontario-icon-lock-off.js.map +1 -0
  223. package/components/ontario-icon-lock-on.d.ts +11 -0
  224. package/components/ontario-icon-lock-on.js +170 -0
  225. package/components/ontario-icon-lock-on.js.map +1 -0
  226. package/components/ontario-icon-map.d.ts +11 -0
  227. package/components/ontario-icon-map.js +170 -0
  228. package/components/ontario-icon-map.js.map +1 -0
  229. package/components/ontario-icon-mastercard-alt.d.ts +11 -0
  230. package/components/ontario-icon-mastercard-alt.js +161 -0
  231. package/components/ontario-icon-mastercard-alt.js.map +1 -0
  232. package/components/ontario-icon-mastercard.d.ts +11 -0
  233. package/components/ontario-icon-mastercard.js +173 -0
  234. package/components/ontario-icon-mastercard.js.map +1 -0
  235. package/components/ontario-icon-media-fast-forward.d.ts +11 -0
  236. package/components/ontario-icon-media-fast-forward.js +167 -0
  237. package/components/ontario-icon-media-fast-forward.js.map +1 -0
  238. package/components/ontario-icon-media-fast-rewind.d.ts +11 -0
  239. package/components/ontario-icon-media-fast-rewind.js +170 -0
  240. package/components/ontario-icon-media-fast-rewind.js.map +1 -0
  241. package/components/ontario-icon-media-pause.d.ts +11 -0
  242. package/components/ontario-icon-media-pause.js +167 -0
  243. package/components/ontario-icon-media-pause.js.map +1 -0
  244. package/components/ontario-icon-media-play.d.ts +11 -0
  245. package/components/ontario-icon-media-play.js +167 -0
  246. package/components/ontario-icon-media-play.js.map +1 -0
  247. package/components/ontario-icon-media-stop.d.ts +11 -0
  248. package/components/ontario-icon-media-stop.js +167 -0
  249. package/components/ontario-icon-media-stop.js.map +1 -0
  250. package/components/ontario-icon-menu-header.d.ts +11 -0
  251. package/components/ontario-icon-menu-header.js +171 -0
  252. package/components/ontario-icon-menu-header.js.map +1 -0
  253. package/components/ontario-icon-menu.d.ts +11 -0
  254. package/components/ontario-icon-menu.js +171 -0
  255. package/components/ontario-icon-menu.js.map +1 -0
  256. package/components/ontario-icon-microphone-off.d.ts +11 -0
  257. package/components/ontario-icon-microphone-off.js +170 -0
  258. package/components/ontario-icon-microphone-off.js.map +1 -0
  259. package/components/ontario-icon-microphone-on.d.ts +11 -0
  260. package/components/ontario-icon-microphone-on.js +170 -0
  261. package/components/ontario-icon-microphone-on.js.map +1 -0
  262. package/components/ontario-icon-more-vertical.d.ts +11 -0
  263. package/components/ontario-icon-more-vertical.js +170 -0
  264. package/components/ontario-icon-more-vertical.js.map +1 -0
  265. package/components/ontario-icon-new-window.d.ts +11 -0
  266. package/components/ontario-icon-new-window.js +171 -0
  267. package/components/ontario-icon-new-window.js.map +1 -0
  268. package/components/ontario-icon-next.d.ts +11 -0
  269. package/components/ontario-icon-next.js +170 -0
  270. package/components/ontario-icon-next.js.map +1 -0
  271. package/components/ontario-icon-notification.d.ts +11 -0
  272. package/components/ontario-icon-notification.js +170 -0
  273. package/components/ontario-icon-notification.js.map +1 -0
  274. package/components/ontario-icon-password-hide.d.ts +11 -0
  275. package/components/ontario-icon-password-hide.js +170 -0
  276. package/components/ontario-icon-password-hide.js.map +1 -0
  277. package/components/ontario-icon-password-show.d.ts +11 -0
  278. package/components/ontario-icon-password-show.js +170 -0
  279. package/components/ontario-icon-password-show.js.map +1 -0
  280. package/components/ontario-icon-phone.d.ts +11 -0
  281. package/components/ontario-icon-phone.js +171 -0
  282. package/components/ontario-icon-phone.js.map +1 -0
  283. package/components/ontario-icon-photo.d.ts +11 -0
  284. package/components/ontario-icon-photo.js +170 -0
  285. package/components/ontario-icon-photo.js.map +1 -0
  286. package/components/ontario-icon-pin-location-off.d.ts +11 -0
  287. package/components/ontario-icon-pin-location-off.js +170 -0
  288. package/components/ontario-icon-pin-location-off.js.map +1 -0
  289. package/components/ontario-icon-pin-location-on.d.ts +11 -0
  290. package/components/ontario-icon-pin-location-on.js +170 -0
  291. package/components/ontario-icon-pin-location-on.js.map +1 -0
  292. package/components/ontario-icon-previous.d.ts +11 -0
  293. package/components/ontario-icon-previous.js +170 -0
  294. package/components/ontario-icon-previous.js.map +1 -0
  295. package/components/ontario-icon-print.d.ts +11 -0
  296. package/components/ontario-icon-print.js +170 -0
  297. package/components/ontario-icon-print.js.map +1 -0
  298. package/components/ontario-icon-remove-alt.d.ts +11 -0
  299. package/components/ontario-icon-remove-alt.js +171 -0
  300. package/components/ontario-icon-remove-alt.js.map +1 -0
  301. package/components/ontario-icon-remove.d.ts +11 -0
  302. package/components/ontario-icon-remove.js +171 -0
  303. package/components/ontario-icon-remove.js.map +1 -0
  304. package/components/ontario-icon-replay.d.ts +11 -0
  305. package/components/ontario-icon-replay.js +170 -0
  306. package/components/ontario-icon-replay.js.map +1 -0
  307. package/components/ontario-icon-rss-feed.d.ts +11 -0
  308. package/components/ontario-icon-rss-feed.js +170 -0
  309. package/components/ontario-icon-rss-feed.js.map +1 -0
  310. package/components/ontario-icon-save.d.ts +11 -0
  311. package/components/ontario-icon-save.js +170 -0
  312. package/components/ontario-icon-save.js.map +1 -0
  313. package/components/ontario-icon-search-white.d.ts +11 -0
  314. package/components/ontario-icon-search-white.js +173 -0
  315. package/components/ontario-icon-search-white.js.map +1 -0
  316. package/components/ontario-icon-search.d.ts +11 -0
  317. package/components/ontario-icon-search.js +171 -0
  318. package/components/ontario-icon-search.js.map +1 -0
  319. package/components/ontario-icon-sentiment-1.d.ts +11 -0
  320. package/components/ontario-icon-sentiment-1.js +170 -0
  321. package/components/ontario-icon-sentiment-1.js.map +1 -0
  322. package/components/ontario-icon-sentiment-2.d.ts +11 -0
  323. package/components/ontario-icon-sentiment-2.js +170 -0
  324. package/components/ontario-icon-sentiment-2.js.map +1 -0
  325. package/components/ontario-icon-sentiment-3.d.ts +11 -0
  326. package/components/ontario-icon-sentiment-3.js +170 -0
  327. package/components/ontario-icon-sentiment-3.js.map +1 -0
  328. package/components/ontario-icon-sentiment-4.d.ts +11 -0
  329. package/components/ontario-icon-sentiment-4.js +170 -0
  330. package/components/ontario-icon-sentiment-4.js.map +1 -0
  331. package/components/ontario-icon-sentiment-5.d.ts +11 -0
  332. package/components/ontario-icon-sentiment-5.js +170 -0
  333. package/components/ontario-icon-sentiment-5.js.map +1 -0
  334. package/components/ontario-icon-settings.d.ts +11 -0
  335. package/components/ontario-icon-settings.js +170 -0
  336. package/components/ontario-icon-settings.js.map +1 -0
  337. package/components/ontario-icon-share.d.ts +11 -0
  338. package/components/ontario-icon-share.js +170 -0
  339. package/components/ontario-icon-share.js.map +1 -0
  340. package/components/ontario-icon-sort-alphabetical-ascending.d.ts +11 -0
  341. package/components/ontario-icon-sort-alphabetical-ascending.js +170 -0
  342. package/components/ontario-icon-sort-alphabetical-ascending.js.map +1 -0
  343. package/components/ontario-icon-sort-alphabetical-descending.d.ts +11 -0
  344. package/components/ontario-icon-sort-alphabetical-descending.js +170 -0
  345. package/components/ontario-icon-sort-alphabetical-descending.js.map +1 -0
  346. package/components/ontario-icon-sort-ascending.d.ts +11 -0
  347. package/components/ontario-icon-sort-ascending.js +170 -0
  348. package/components/ontario-icon-sort-ascending.js.map +1 -0
  349. package/components/ontario-icon-sort-descending.d.ts +11 -0
  350. package/components/ontario-icon-sort-descending.js +170 -0
  351. package/components/ontario-icon-sort-descending.js.map +1 -0
  352. package/components/ontario-icon-sort-variant.d.ts +11 -0
  353. package/components/ontario-icon-sort-variant.js +167 -0
  354. package/components/ontario-icon-sort-variant.js.map +1 -0
  355. package/components/ontario-icon-sort.d.ts +11 -0
  356. package/components/ontario-icon-sort.js +170 -0
  357. package/components/ontario-icon-sort.js.map +1 -0
  358. package/components/ontario-icon-tag.d.ts +11 -0
  359. package/components/ontario-icon-tag.js +170 -0
  360. package/components/ontario-icon-tag.js.map +1 -0
  361. package/components/ontario-icon-text-message.d.ts +11 -0
  362. package/components/ontario-icon-text-message.js +170 -0
  363. package/components/ontario-icon-text-message.js.map +1 -0
  364. package/components/ontario-icon-timer.d.ts +11 -0
  365. package/components/ontario-icon-timer.js +170 -0
  366. package/components/ontario-icon-timer.js.map +1 -0
  367. package/components/ontario-icon-transport-bicycle.d.ts +11 -0
  368. package/components/ontario-icon-transport-bicycle.js +170 -0
  369. package/components/ontario-icon-transport-bicycle.js.map +1 -0
  370. package/components/ontario-icon-transport-bus.d.ts +11 -0
  371. package/components/ontario-icon-transport-bus.js +170 -0
  372. package/components/ontario-icon-transport-bus.js.map +1 -0
  373. package/components/ontario-icon-transport-car.d.ts +11 -0
  374. package/components/ontario-icon-transport-car.js +170 -0
  375. package/components/ontario-icon-transport-car.js.map +1 -0
  376. package/components/ontario-icon-transport-walk.d.ts +11 -0
  377. package/components/ontario-icon-transport-walk.js +170 -0
  378. package/components/ontario-icon-transport-walk.js.map +1 -0
  379. package/components/ontario-icon-tty.d.ts +11 -0
  380. package/components/ontario-icon-tty.js +171 -0
  381. package/components/ontario-icon-tty.js.map +1 -0
  382. package/components/ontario-icon-twitter-alt.d.ts +11 -0
  383. package/components/ontario-icon-twitter-alt.js +170 -0
  384. package/components/ontario-icon-twitter-alt.js.map +1 -0
  385. package/components/ontario-icon-twitter.d.ts +11 -0
  386. package/components/ontario-icon-twitter.js +170 -0
  387. package/components/ontario-icon-twitter.js.map +1 -0
  388. package/components/ontario-icon-upload.d.ts +11 -0
  389. package/components/ontario-icon-upload.js +170 -0
  390. package/components/ontario-icon-upload.js.map +1 -0
  391. package/components/ontario-icon-video.d.ts +11 -0
  392. package/components/ontario-icon-video.js +170 -0
  393. package/components/ontario-icon-video.js.map +1 -0
  394. package/components/ontario-icon-visa.d.ts +11 -0
  395. package/components/ontario-icon-visa.js +148 -0
  396. package/components/ontario-icon-visa.js.map +1 -0
  397. package/components/ontario-icon-vote-dislike.d.ts +11 -0
  398. package/components/ontario-icon-vote-dislike.js +170 -0
  399. package/components/ontario-icon-vote-dislike.js.map +1 -0
  400. package/components/ontario-icon-vote-like.d.ts +11 -0
  401. package/components/ontario-icon-vote-like.js +170 -0
  402. package/components/ontario-icon-vote-like.js.map +1 -0
  403. package/components/ontario-icon-vpn-key.d.ts +11 -0
  404. package/components/ontario-icon-vpn-key.js +170 -0
  405. package/components/ontario-icon-vpn-key.js.map +1 -0
  406. package/components/ontario-icon-wheelchair.d.ts +11 -0
  407. package/components/ontario-icon-wheelchair.js +170 -0
  408. package/components/ontario-icon-wheelchair.js.map +1 -0
  409. package/components/ontario-icon-wifi.d.ts +11 -0
  410. package/components/ontario-icon-wifi.js +170 -0
  411. package/components/ontario-icon-wifi.js.map +1 -0
  412. package/components/ontario-icon-youtube.d.ts +11 -0
  413. package/components/ontario-icon-youtube.js +170 -0
  414. package/components/ontario-icon-youtube.js.map +1 -0
  415. package/components/ontario-input.d.ts +11 -0
  416. package/components/ontario-input.js +419 -0
  417. package/components/ontario-input.js.map +1 -0
  418. package/components/ontario-language-toggle.d.ts +11 -0
  419. package/components/ontario-language-toggle.js +9 -0
  420. package/components/ontario-language-toggle.js.map +1 -0
  421. package/components/ontario-loading-indicator.d.ts +11 -0
  422. package/components/ontario-loading-indicator.js +181 -0
  423. package/components/ontario-loading-indicator.js.map +1 -0
  424. package/components/ontario-page-alert.d.ts +11 -0
  425. package/components/ontario-page-alert.js +172 -0
  426. package/components/ontario-page-alert.js.map +1 -0
  427. package/components/ontario-radio-buttons.d.ts +11 -0
  428. package/components/ontario-radio-buttons.js +430 -0
  429. package/components/ontario-radio-buttons.js.map +1 -0
  430. package/components/ontario-search-box.d.ts +11 -0
  431. package/components/ontario-search-box.js +283 -0
  432. package/components/ontario-search-box.js.map +1 -0
  433. package/components/ontario-step-indicator.d.ts +11 -0
  434. package/components/ontario-step-indicator.js +172 -0
  435. package/components/ontario-step-indicator.js.map +1 -0
  436. package/components/ontario-table.d.ts +11 -0
  437. package/components/ontario-table.js +392 -0
  438. package/components/ontario-table.js.map +1 -0
  439. package/components/ontario-task-list.d.ts +11 -0
  440. package/components/ontario-task-list.js +211 -0
  441. package/components/ontario-task-list.js.map +1 -0
  442. package/components/ontario-task.d.ts +11 -0
  443. package/components/ontario-task.js +327 -0
  444. package/components/ontario-task.js.map +1 -0
  445. package/components/ontario-textarea.d.ts +11 -0
  446. package/components/ontario-textarea.js +327 -0
  447. package/components/ontario-textarea.js.map +1 -0
  448. package/components/p-6uqsTY-M.js +171 -0
  449. package/components/p-6uqsTY-M.js.map +1 -0
  450. package/components/p-A8xwC5QP.js +24 -0
  451. package/components/p-A8xwC5QP.js.map +1 -0
  452. package/components/p-BBhl-3u7.js +169 -0
  453. package/components/p-BBhl-3u7.js.map +1 -0
  454. package/components/p-BF0_OXTe.js +64 -0
  455. package/components/p-BF0_OXTe.js.map +1 -0
  456. package/components/p-BHTls9cv.js +286 -0
  457. package/components/p-BHTls9cv.js.map +1 -0
  458. package/components/p-BOcd5PoR.js +330 -0
  459. package/components/p-BOcd5PoR.js.map +1 -0
  460. package/components/p-BxXM4eur.js +29 -0
  461. package/components/p-BxXM4eur.js.map +1 -0
  462. package/components/p-C-t5TNzY.js +10 -0
  463. package/components/p-C-t5TNzY.js.map +1 -0
  464. package/components/p-C0Xvjp7G.js +282 -0
  465. package/components/p-C0Xvjp7G.js.map +1 -0
  466. package/components/p-C73HZQcq.js +89 -0
  467. package/components/p-C73HZQcq.js.map +1 -0
  468. package/components/p-CI209psv.js +271 -0
  469. package/components/p-CI209psv.js.map +1 -0
  470. package/components/p-CIdZS10A.js +20 -0
  471. package/components/p-CIdZS10A.js.map +1 -0
  472. package/components/p-CNDrx73J.js +145 -0
  473. package/components/p-CNDrx73J.js.map +1 -0
  474. package/components/p-CNqFEifG.js +34 -0
  475. package/components/p-CNqFEifG.js.map +1 -0
  476. package/components/p-CRMogYVY.js +168 -0
  477. package/components/p-CRMogYVY.js.map +1 -0
  478. package/components/p-CXTm9jmr.js +141 -0
  479. package/components/p-CXTm9jmr.js.map +1 -0
  480. package/components/p-CXfntdg5.js +7 -0
  481. package/components/p-CXfntdg5.js.map +1 -0
  482. package/components/p-C__FBxsY.js +145 -0
  483. package/components/p-C__FBxsY.js.map +1 -0
  484. package/components/p-Cdm-Ot0O.js +95 -0
  485. package/components/p-Cdm-Ot0O.js.map +1 -0
  486. package/components/p-CeFeBwzQ.js +331 -0
  487. package/components/p-CeFeBwzQ.js.map +1 -0
  488. package/components/p-DGFFJaKo.js +168 -0
  489. package/components/p-DGFFJaKo.js.map +1 -0
  490. package/components/p-DIe1tcOp.js +197 -0
  491. package/components/p-DIe1tcOp.js.map +1 -0
  492. package/components/p-DJOzeqZ-.js +168 -0
  493. package/components/p-DJOzeqZ-.js.map +1 -0
  494. package/components/p-DMH_JI3w.js +6 -0
  495. package/components/p-DMH_JI3w.js.map +1 -0
  496. package/components/p-DgMhpSmi.js +324 -0
  497. package/components/p-DgMhpSmi.js.map +1 -0
  498. package/components/p-TS9NoIOc.js +11 -0
  499. package/components/p-TS9NoIOc.js.map +1 -0
  500. package/components/p-V_1wpeJe.js +17 -0
  501. package/components/p-V_1wpeJe.js.map +1 -0
  502. package/components/p-dXtLd1df.js +63 -0
  503. package/components/p-dXtLd1df.js.map +1 -0
  504. package/components/p-vdzS-daB.js +145 -0
  505. package/components/p-vdzS-daB.js.map +1 -0
  506. package/package.json +11 -9
@@ -0,0 +1,331 @@
1
+ import { h } from './index.js';
2
+ import { C as CaptionTypes } from './p-DMH_JI3w.js';
3
+ import { C as ConsoleMessageClass } from './p-Cdm-Ot0O.js';
4
+
5
+ var MessageContentType;
6
+ (function (MessageContentType) {
7
+ MessageContentType['UndefinedCaptionObject'] = 'undefinedCaptionObject';
8
+ MessageContentType['UndefinedCaptionText'] = 'undefinedCaption';
9
+ MessageContentType['EmptyCaptionText'] = 'emptyCaption';
10
+ MessageContentType['UndefinedCaptionType'] = 'undefinedCaptionType';
11
+ MessageContentType['IncorrectCaptionType'] = 'incorrectCaptionType';
12
+ })(MessageContentType || (MessageContentType = {}));
13
+
14
+ class InputCaption {
15
+ /**
16
+ * Set the class members
17
+ * Output a console warning message if the provided `label` type is incorrect
18
+ * @param caption object containing the essential data to configure the input label
19
+ */
20
+ constructor(componentTagName, caption, translations, language, isLegend = false, required = false) {
21
+ /**
22
+ * The type of caption to render.
23
+ */
24
+ this.captionType = 'default';
25
+ /**
26
+ * Determine whether the input field is required.
27
+ */
28
+ this.required = false;
29
+ /**
30
+ * Determine whether the rendered element is a `<label>` or `<legend>`.
31
+ */
32
+ this.isLegend = false;
33
+ this.language = 'en';
34
+ /**
35
+ * Return the `<label>` element for text inputs
36
+ * @param captionFor Set the `htmlFor` attribute
37
+ * @param hasHintExpander Indicate whether the component the label is for has a hint expander or not
38
+ * @param disableRequiredFlag Disable the required/optional label text _(only use in highly special cases)_
39
+ * @returns element containing the caption for the input
40
+ */
41
+ this.getCaption = (captionFor, hasHintExpander = false, disableRequiredFlag = false) => {
42
+ const captionText = this.captionText && this.captionText.toLowerCase();
43
+ const captionContent = this.isLegend
44
+ ? h(
45
+ 'legend',
46
+ { class: this.getClass() },
47
+ this.captionType === 'heading' ? h('h1', null, this.captionText) : this.captionText,
48
+ !disableRequiredFlag && this.getRequiredFlagElement(),
49
+ hasHintExpander && this.getHintExpanderAccessibilityText(captionText, false),
50
+ )
51
+ : h(
52
+ 'label',
53
+ { htmlFor: captionFor, class: this.getClass() },
54
+ this.captionText,
55
+ !disableRequiredFlag && this.getRequiredFlagElement(),
56
+ hasHintExpander && this.getHintExpanderAccessibilityText(captionText, false),
57
+ );
58
+ // with `this.captionType` already set to one of the enum values, the comparison no longer needs the `toLowerCase()` transform
59
+ return this.captionType === 'heading' && !this.isLegend ? h('h1', null, captionContent) : captionContent;
60
+ };
61
+ let captionObject;
62
+ if (typeof caption === 'string') {
63
+ try {
64
+ captionObject = JSON.parse(caption);
65
+ } catch (_a) {
66
+ captionObject = { captionText: caption, captionType: 'default' };
67
+ }
68
+ } else {
69
+ captionObject = caption;
70
+ }
71
+ this.componentTagName = componentTagName.toLocaleLowerCase();
72
+ this.captionText = captionObject === null || captionObject === void 0 ? void 0 : captionObject.captionText;
73
+ this.captionType =
74
+ ((captionObject === null || captionObject === void 0 ? void 0 : captionObject.captionType) &&
75
+ CaptionTypes.find((type) => {
76
+ var _a;
77
+ return type === ((_a = captionObject.captionType) === null || _a === void 0 ? void 0 : _a.toLowerCase());
78
+ })) ||
79
+ 'default';
80
+ this.required = required;
81
+ this.isLegend = isLegend;
82
+ this.translations = translations;
83
+ this.language = language;
84
+ this.validateCaption(this);
85
+ }
86
+ getHintExpanderAccessibilityText(captionText, hasHintExpanderOnOption = false) {
87
+ const multipleOptionsMessage = h(
88
+ 'span',
89
+ { class: 'ontario-show-for-sr' },
90
+ this.translations.accessibility.moreInfo[this.language],
91
+ ' "',
92
+ captionText.toLowerCase(),
93
+ '"',
94
+ ' ',
95
+ this.translations.accessibility.checkboxHintExpander[this.language],
96
+ );
97
+ const singleOptionMessage = h(
98
+ 'span',
99
+ { class: 'ontario-show-for-sr' },
100
+ this.translations.accessibility.moreInfo[this.language],
101
+ ' "',
102
+ captionText.toLowerCase(),
103
+ '"',
104
+ ' ',
105
+ this.translations.accessibility.singleHintExpander[this.language],
106
+ );
107
+ return this.componentTagName === 'ontario-checkboxes'
108
+ ? !hasHintExpanderOnOption
109
+ ? multipleOptionsMessage
110
+ : singleOptionMessage
111
+ : singleOptionMessage;
112
+ }
113
+ /**
114
+ * Determines which flag text to use between `required` and `optional`
115
+ * @returns `required` or `optional` flag text
116
+ */
117
+ getRequiredFlagText() {
118
+ return this.required
119
+ ? this.translations && `(${this.translations.required[this.language]})`
120
+ : this.translations && `(${this.translations.optional[this.language]})`;
121
+ }
122
+ /**
123
+ * Get the HTML for the required/optional flag.
124
+ * @returns CSS class for the label/legend.
125
+ */
126
+ getRequiredFlagElement() {
127
+ return h('span', { class: 'ontario-label__flag' }, this.getRequiredFlagText());
128
+ }
129
+ /**
130
+ * Get the CSS class for the `label` element.
131
+ * @returns CSS class for the `label` element.
132
+ */
133
+ getClass() {
134
+ return this.captionType === 'large' || this.captionType === 'heading'
135
+ ? this.isLegend
136
+ ? `ontario-fieldset__legend ontario-fieldset__legend--${this.captionType}`
137
+ : `ontario-label ontario-label--${this.captionType}`
138
+ : this.isLegend
139
+ ? 'ontario-fieldset__legend'
140
+ : 'ontario-label';
141
+ }
142
+ /**
143
+ * Validate caption input by user and output warning message to the console if:
144
+ * 1. the `caption` object is not provided
145
+ * 2. the `captionText` property of the `caption` object is not provided
146
+ * 3. the `captionText` property of the `caption` object is empty or contain only spaces
147
+ * 4. the `captionType` property of the `caption` object is not provided
148
+ * 5. the `captionType` property of the `caption` object is incorrect
149
+ */
150
+ validateCaption(caption) {
151
+ var _a;
152
+ let messageType;
153
+ // undefined `caption` object
154
+ if (!caption || Object.keys(caption).length <= 0) {
155
+ messageType = MessageContentType.UndefinedCaptionObject;
156
+ } else {
157
+ // undefined `captionText` property
158
+ if (!caption.captionText) {
159
+ messageType = MessageContentType.UndefinedCaptionText;
160
+ } else {
161
+ // `captionText` that is empty or contains only spaces
162
+ if (/^\s*$/.test(caption.captionText)) {
163
+ messageType = MessageContentType.EmptyCaptionText;
164
+ }
165
+ }
166
+ // undefined `captionType`
167
+ if (!caption.captionType) {
168
+ messageType = MessageContentType.UndefinedCaptionType;
169
+ } else {
170
+ // incorrect `captionType`
171
+ if (
172
+ !CaptionTypes.includes(
173
+ (_a = caption === null || caption === void 0 ? void 0 : caption.captionType) === null || _a === void 0
174
+ ? void 0
175
+ : _a.toLowerCase(),
176
+ )
177
+ ) {
178
+ messageType = MessageContentType.IncorrectCaptionType;
179
+ }
180
+ }
181
+ }
182
+ if (messageType) {
183
+ const message = new ConsoleMessageClass().addDesignSystemTag();
184
+ if (messageType !== MessageContentType.UndefinedCaptionObject) {
185
+ message
186
+ .addMonospaceText(
187
+ ` ${
188
+ messageType === MessageContentType.EmptyCaptionText ||
189
+ messageType === MessageContentType.UndefinedCaptionText
190
+ ? 'caption or captionText'
191
+ : 'captionType'
192
+ } `,
193
+ )
194
+ .addRegularText('object or property of');
195
+ }
196
+ message.addMonospaceText(' caption ').addRegularText('object on').addMonospaceText(` ${this.componentTagName} `);
197
+ this.printConsoleMessage(messageType, message, this.getRequiredFlagText());
198
+ }
199
+ }
200
+ /**
201
+ * Generate the content of warning message to be printed to the console
202
+ * @param messageType determine the content of warning message to output
203
+ * @param componentTagName the tag name of the component that's emitting the warning message
204
+ * @param requiredFlagText accepts a string value to be used as the required flag text and defaults to `(optional)` if not set
205
+ * @returns an array of `ConsoleMessage` objects containing the message and associated styles to be printed to the console
206
+ */
207
+ printConsoleMessage(messageType, message, requiredFlagText = '(optional)') {
208
+ switch (messageType) {
209
+ // undefinedCaptionObject example: caption object on <ontario-input> is required but not defined. A blank followed by a (optional) flag is assumed.
210
+ // undefinedCaptionText example: captionText property of caption object on <ontario-input> is required but not defined. A blank followed by a (optional) flag is assumed.
211
+ // EmptyCaptionText example: captionText property of caption object on <ontario-input> is empty or contains only spaces. A blank followed by a (optional) flag is assumed.
212
+ case MessageContentType.UndefinedCaptionObject:
213
+ case MessageContentType.UndefinedCaptionText:
214
+ case MessageContentType.EmptyCaptionText:
215
+ message
216
+ .addRegularText(
217
+ `${
218
+ messageType === MessageContentType.EmptyCaptionText
219
+ ? 'is empty or contains only spaces'
220
+ : 'is required but not defined'
221
+ }. A blank followed by a`,
222
+ )
223
+ .addMonospaceText(` ${requiredFlagText} `)
224
+ .addRegularText('flag is assumed.');
225
+ break;
226
+ // UndefinedCaptionType example: captionType property of caption object on <ontario-input> is not defined. The default type is assumed.
227
+ case MessageContentType.UndefinedCaptionType:
228
+ message.addRegularText('is not defined. The').addMonospaceText(' default ').addRegularText('type is assumed.');
229
+ break;
230
+ // IncorrectCaptionType example: captionType property of caption object on <ontario-input> was set to an incorrect type; only default, heading or large type is allowed. The default type is assumed.
231
+ case MessageContentType.IncorrectCaptionType:
232
+ message
233
+ .addRegularText('was set to an incorrect type; only')
234
+ .addMonospaceText(' default, heading, ')
235
+ .addRegularText('or')
236
+ .addMonospaceText(' large ')
237
+ .addRegularText('type is allowed. The')
238
+ .addMonospaceText(' default ')
239
+ .addRegularText('type is assumed.');
240
+ break;
241
+ }
242
+ message.printMessage();
243
+ }
244
+ }
245
+
246
+ var EventType;
247
+ (function (EventType) {
248
+ EventType['Change'] = 'change';
249
+ EventType['Blur'] = 'blur';
250
+ EventType['Focus'] = 'focus';
251
+ EventType['Input'] = 'input';
252
+ })(EventType || (EventType = {}));
253
+
254
+ const handleInputEvent = (
255
+ event,
256
+ eventType,
257
+ input,
258
+ inputChangeEvent,
259
+ inputFocusEvent,
260
+ inputBlurEvent,
261
+ inputInputEvent,
262
+ type,
263
+ customChangeFunction,
264
+ customFocusFunction,
265
+ customBlurFunction,
266
+ customInputFunction,
267
+ hostElement,
268
+ ) => {
269
+ var _a;
270
+ if (eventType === EventType.Input) {
271
+ inputInputEvent === null || inputInputEvent === void 0
272
+ ? void 0
273
+ : inputInputEvent.emit({
274
+ id: input === null || input === void 0 ? void 0 : input.id,
275
+ value: (_a = event.data) !== null && _a !== void 0 ? _a : undefined,
276
+ inputType: event.inputType,
277
+ });
278
+ customInputFunction && customInputFunction(event);
279
+ }
280
+ if (eventType === EventType.Change) {
281
+ if (type === 'radio' || type === 'checkbox') {
282
+ if (input instanceof HTMLInputElement) {
283
+ inputChangeEvent.emit({
284
+ checked: input === null || input === void 0 ? void 0 : input.checked,
285
+ id: input === null || input === void 0 ? void 0 : input.id,
286
+ value: input === null || input === void 0 ? void 0 : input.value,
287
+ });
288
+ }
289
+ } else {
290
+ inputChangeEvent.emit({
291
+ id: input === null || input === void 0 ? void 0 : input.id,
292
+ value: input === null || input === void 0 ? void 0 : input.value,
293
+ });
294
+ }
295
+ customChangeFunction && customChangeFunction(event);
296
+ // Note: Change events don't have composable set to true and don't cross the ShadowDOM boundary.
297
+ // This will emit an event so the normal `onChange` event pattern is maintained.
298
+ hostElement && emitEvent(hostElement, eventType, event);
299
+ }
300
+ if (eventType === EventType.Focus) {
301
+ inputFocusEvent.emit({
302
+ id: input === null || input === void 0 ? void 0 : input.id,
303
+ focused: true,
304
+ value: input === null || input === void 0 ? void 0 : input.value,
305
+ });
306
+ customFocusFunction && customFocusFunction(event);
307
+ }
308
+ if (eventType === EventType.Blur) {
309
+ inputBlurEvent.emit({
310
+ id: input === null || input === void 0 ? void 0 : input.id,
311
+ focused: false,
312
+ value: input === null || input === void 0 ? void 0 : input.value,
313
+ });
314
+ customBlurFunction && customBlurFunction(event);
315
+ }
316
+ };
317
+ /**
318
+ * Emit a custom event that can be subscribed to by an event listener.
319
+ *
320
+ * @param element Component host element, see https://stenciljs.com/docs/host-element
321
+ * @param name name of the event
322
+ * @param detail any relevant details, like the original event
323
+ */
324
+ const emitEvent = (element, name, detail) => {
325
+ element.dispatchEvent(new CustomEvent(name, { composed: true, bubbles: true, detail }));
326
+ };
327
+
328
+ export { EventType as E, InputCaption as I, emitEvent as e, handleInputEvent as h };
329
+ //# sourceMappingURL=p-CeFeBwzQ.js.map
330
+
331
+ //# sourceMappingURL=p-CeFeBwzQ.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-CeFeBwzQ.js","mappings":"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","names":[],"sources":["src/utils/common/input-caption/input-caption.enum.ts","src/utils/common/input-caption/input-caption.tsx","src/utils/events/event-handler.interface.ts","src/utils/events/event-handler.ts"],"sourcesContent":["export enum MessageContentType {\n\tUndefinedCaptionObject = 'undefinedCaptionObject',\n\tUndefinedCaptionText = 'undefinedCaption',\n\tEmptyCaptionText = 'emptyCaption',\n\tUndefinedCaptionType = 'undefinedCaptionType',\n\tIncorrectCaptionType = 'incorrectCaptionType',\n}\n","import { h } from '@stencil/core';\nimport { CaptionType, CaptionTypes } from './input-caption.types';\nimport { MessageContentType } from './input-caption.enum';\nimport { CaptionInfo, Caption } from './caption.interface';\nimport { ConsoleMessageClass } from '../../console-message/console-message';\n\nexport class InputCaption implements CaptionInfo {\n\t/**\n\t * The text to display as caption.\n\t */\n\tcaptionText: string;\n\n\t/**\n\t * The type of caption to render.\n\t */\n\tcaptionType?: CaptionType = 'default';\n\n\t/**\n\t * Determine whether the input field is required.\n\t */\n\trequired?: boolean = false;\n\n\t/**\n\t * Determine whether the rendered element is a `<label>` or `<legend>`.\n\t */\n\tisLegend?: boolean = false;\n\n\t/**\n\t * Name of the component instantiating the class.\n\t * This is used for validation warning message.\n\t */\n\tcomponentTagName: string;\n\n\tlanguage: any = 'en';\n\n\ttranslations: any;\n\n\t/**\n\t * Set the class members\n\t * Output a console warning message if the provided `label` type is incorrect\n\t * @param caption object containing the essential data to configure the input label\n\t */\n\tconstructor(\n\t\tcomponentTagName: string,\n\t\tcaption: Caption | string,\n\t\ttranslations: any,\n\t\tlanguage: any,\n\t\tisLegend: boolean = false,\n\t\trequired: boolean = false,\n\t) {\n\t\tlet captionObject: Caption;\n\n\t\tif (typeof caption === 'string') {\n\t\t\ttry {\n\t\t\t\tcaptionObject = JSON.parse(caption) as Caption;\n\t\t\t} catch {\n\t\t\t\tcaptionObject = { captionText: caption, captionType: 'default' };\n\t\t\t}\n\t\t} else {\n\t\t\tcaptionObject = caption;\n\t\t}\n\n\t\tthis.componentTagName = componentTagName.toLocaleLowerCase();\n\t\tthis.captionText = captionObject?.captionText;\n\t\tthis.captionType =\n\t\t\t(captionObject?.captionType && CaptionTypes.find((type) => type === captionObject.captionType?.toLowerCase())) ||\n\t\t\t'default';\n\t\tthis.required = required;\n\t\tthis.isLegend = isLegend;\n\t\tthis.translations = translations;\n\t\tthis.language = language;\n\n\t\tthis.validateCaption(this);\n\t}\n\n\t/**\n\t * Return the `<label>` element for text inputs\n\t * @param captionFor Set the `htmlFor` attribute\n\t * @param hasHintExpander Indicate whether the component the label is for has a hint expander or not\n\t * @param disableRequiredFlag Disable the required/optional label text _(only use in highly special cases)_\n\t * @returns element containing the caption for the input\n\t */\n\tgetCaption = (\n\t\tcaptionFor?: string | undefined,\n\t\thasHintExpander: boolean = false,\n\t\tdisableRequiredFlag: boolean = false,\n\t): HTMLElement => {\n\t\tconst captionText = this.captionText && this.captionText.toLowerCase();\n\t\tconst captionContent = this.isLegend ? (\n\t\t\t<legend class={this.getClass()}>\n\t\t\t\t{this.captionType === 'heading' ? <h1>{this.captionText}</h1> : this.captionText}\n\t\t\t\t{!disableRequiredFlag && this.getRequiredFlagElement()}\n\t\t\t\t{hasHintExpander && this.getHintExpanderAccessibilityText(captionText, false)}\n\t\t\t</legend>\n\t\t) : (\n\t\t\t<label htmlFor={captionFor} class={this.getClass()}>\n\t\t\t\t{this.captionText}\n\t\t\t\t{!disableRequiredFlag && this.getRequiredFlagElement()}\n\t\t\t\t{hasHintExpander && this.getHintExpanderAccessibilityText(captionText, false)}\n\t\t\t</label>\n\t\t);\n\n\t\t// with `this.captionType` already set to one of the enum values, the comparison no longer needs the `toLowerCase()` transform\n\t\treturn this.captionType === 'heading' && !this.isLegend ? <h1>{captionContent}</h1> : captionContent;\n\t};\n\n\tgetHintExpanderAccessibilityText(captionText: string, hasHintExpanderOnOption: boolean = false): HTMLElement {\n\t\tconst multipleOptionsMessage = (\n\t\t\t<span class=\"ontario-show-for-sr\">\n\t\t\t\t{this.translations.accessibility.moreInfo[this.language]} \"{captionText.toLowerCase()}\"{' '}\n\t\t\t\t{this.translations.accessibility.checkboxHintExpander[this.language]}\n\t\t\t</span>\n\t\t);\n\n\t\tconst singleOptionMessage = (\n\t\t\t<span class=\"ontario-show-for-sr\">\n\t\t\t\t{this.translations.accessibility.moreInfo[this.language]} \"{captionText.toLowerCase()}\"{' '}\n\t\t\t\t{this.translations.accessibility.singleHintExpander[this.language]}\n\t\t\t</span>\n\t\t);\n\t\treturn this.componentTagName === 'ontario-checkboxes'\n\t\t\t? !hasHintExpanderOnOption\n\t\t\t\t? multipleOptionsMessage\n\t\t\t\t: singleOptionMessage\n\t\t\t: singleOptionMessage;\n\t}\n\n\t/**\n\t * Determines which flag text to use between `required` and `optional`\n\t * @returns `required` or `optional` flag text\n\t */\n\tprivate getRequiredFlagText(): string {\n\t\treturn this.required\n\t\t\t? this.translations && `(${this.translations.required[this.language]})`\n\t\t\t: this.translations && `(${this.translations.optional[this.language]})`;\n\t}\n\n\t/**\n\t * Get the HTML for the required/optional flag.\n\t * @returns CSS class for the label/legend.\n\t */\n\tprivate getRequiredFlagElement(): HTMLElement {\n\t\treturn <span class=\"ontario-label__flag\">{this.getRequiredFlagText()}</span>;\n\t}\n\n\t/**\n\t * Get the CSS class for the `label` element.\n\t * @returns CSS class for the `label` element.\n\t */\n\tprivate getClass(): string {\n\t\treturn this.captionType === 'large' || this.captionType === 'heading'\n\t\t\t? this.isLegend\n\t\t\t\t? `ontario-fieldset__legend ontario-fieldset__legend--${this.captionType}`\n\t\t\t\t: `ontario-label ontario-label--${this.captionType}`\n\t\t\t: this.isLegend\n\t\t\t\t? 'ontario-fieldset__legend'\n\t\t\t\t: 'ontario-label';\n\t}\n\n\t/**\n\t * Validate caption input by user and output warning message to the console if:\n\t * 1. the `caption` object is not provided\n\t * 2. the `captionText` property of the `caption` object is not provided\n\t * 3. the `captionText` property of the `caption` object is empty or contain only spaces\n\t * 4. the `captionType` property of the `caption` object is not provided\n\t * 5. the `captionType` property of the `caption` object is incorrect\n\t */\n\tprivate validateCaption(caption?: InputCaption) {\n\t\tlet messageType;\n\n\t\t// undefined `caption` object\n\t\tif (!caption || Object.keys(caption).length <= 0) {\n\t\t\tmessageType = MessageContentType.UndefinedCaptionObject;\n\t\t} else {\n\t\t\t// undefined `captionText` property\n\t\t\tif (!caption.captionText) {\n\t\t\t\tmessageType = MessageContentType.UndefinedCaptionText;\n\t\t\t} else {\n\t\t\t\t// `captionText` that is empty or contains only spaces\n\t\t\t\tif (/^\\s*$/.test(caption.captionText)) {\n\t\t\t\t\tmessageType = MessageContentType.EmptyCaptionText;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// undefined `captionType`\n\t\t\tif (!caption.captionType) {\n\t\t\t\tmessageType = MessageContentType.UndefinedCaptionType;\n\t\t\t} else {\n\t\t\t\t// incorrect `captionType`\n\t\t\t\tif (!CaptionTypes.includes(caption?.captionType?.toLowerCase() as CaptionType)) {\n\t\t\t\t\tmessageType = MessageContentType.IncorrectCaptionType;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (messageType) {\n\t\t\tconst message = new ConsoleMessageClass().addDesignSystemTag();\n\n\t\t\tif (messageType !== MessageContentType.UndefinedCaptionObject) {\n\t\t\t\tmessage\n\t\t\t\t\t.addMonospaceText(\n\t\t\t\t\t\t` ${\n\t\t\t\t\t\t\tmessageType === MessageContentType.EmptyCaptionText ||\n\t\t\t\t\t\t\tmessageType === MessageContentType.UndefinedCaptionText\n\t\t\t\t\t\t\t\t? 'caption or captionText'\n\t\t\t\t\t\t\t\t: 'captionType'\n\t\t\t\t\t\t} `,\n\t\t\t\t\t)\n\t\t\t\t\t.addRegularText('object or property of');\n\t\t\t}\n\n\t\t\tmessage.addMonospaceText(' caption ').addRegularText('object on').addMonospaceText(` ${this.componentTagName} `);\n\t\t\tthis.printConsoleMessage(messageType, message, this.getRequiredFlagText());\n\t\t}\n\t}\n\n\t/**\n\t * Generate the content of warning message to be printed to the console\n\t * @param messageType determine the content of warning message to output\n\t * @param componentTagName the tag name of the component that's emitting the warning message\n\t * @param requiredFlagText accepts a string value to be used as the required flag text and defaults to `(optional)` if not set\n\t * @returns an array of `ConsoleMessage` objects containing the message and associated styles to be printed to the console\n\t */\n\tprivate printConsoleMessage(\n\t\tmessageType: MessageContentType,\n\t\tmessage: ConsoleMessageClass,\n\t\trequiredFlagText: string = '(optional)',\n\t) {\n\t\tswitch (messageType) {\n\t\t\t// undefinedCaptionObject example: caption object on <ontario-input> is required but not defined. A blank followed by a (optional) flag is assumed.\n\t\t\t// undefinedCaptionText example: captionText property of caption object on <ontario-input> is required but not defined. A blank followed by a (optional) flag is assumed.\n\t\t\t// EmptyCaptionText example: captionText property of caption object on <ontario-input> is empty or contains only spaces. A blank followed by a (optional) flag is assumed.\n\t\t\tcase MessageContentType.UndefinedCaptionObject:\n\t\t\tcase MessageContentType.UndefinedCaptionText:\n\t\t\tcase MessageContentType.EmptyCaptionText:\n\t\t\t\tmessage\n\t\t\t\t\t.addRegularText(\n\t\t\t\t\t\t`${\n\t\t\t\t\t\t\tmessageType === MessageContentType.EmptyCaptionText\n\t\t\t\t\t\t\t\t? 'is empty or contains only spaces'\n\t\t\t\t\t\t\t\t: 'is required but not defined'\n\t\t\t\t\t\t}. A blank followed by a`,\n\t\t\t\t\t)\n\t\t\t\t\t.addMonospaceText(` ${requiredFlagText} `)\n\t\t\t\t\t.addRegularText('flag is assumed.');\n\t\t\t\tbreak;\n\n\t\t\t// UndefinedCaptionType example: captionType property of caption object on <ontario-input> is not defined. The default type is assumed.\n\t\t\tcase MessageContentType.UndefinedCaptionType:\n\t\t\t\tmessage.addRegularText('is not defined. The').addMonospaceText(' default ').addRegularText('type is assumed.');\n\t\t\t\tbreak;\n\n\t\t\t// IncorrectCaptionType example: captionType property of caption object on <ontario-input> was set to an incorrect type; only default, heading or large type is allowed. The default type is assumed.\n\t\t\tcase MessageContentType.IncorrectCaptionType:\n\t\t\t\tmessage\n\t\t\t\t\t.addRegularText('was set to an incorrect type; only')\n\t\t\t\t\t.addMonospaceText(' default, heading, ')\n\t\t\t\t\t.addRegularText('or')\n\t\t\t\t\t.addMonospaceText(' large ')\n\t\t\t\t\t.addRegularText('type is allowed. The')\n\t\t\t\t\t.addMonospaceText(' default ')\n\t\t\t\t\t.addRegularText('type is assumed.');\n\t\t\t\tbreak;\n\t\t}\n\n\t\tmessage.printMessage();\n\t}\n}\n","export enum EventType {\n\tChange = 'change',\n\tBlur = 'blur',\n\tFocus = 'focus',\n\tInput = 'input',\n}\n\nexport type InputInteractionEvent = {\n\tid?: string;\n\tvalue?: string;\n};\n\nexport type InputInputEvent = InputInteractionEvent & {\n\tinputType?: string;\n};\n\nexport type RadioAndCheckboxChangeEvent = InputInteractionEvent & {\n\tchecked: boolean;\n};\n\nexport type InputFocusBlurEvent = InputInteractionEvent & {\n\tfocused: boolean;\n};\n\nexport type InputType = HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | null;\n","import { EventEmitter } from '@stencil/core';\nimport {\n\tInputType,\n\tEventType,\n\tInputFocusBlurEvent,\n\tInputInteractionEvent,\n\tRadioAndCheckboxChangeEvent,\n\tInputInputEvent,\n} from './event-handler.interface';\n\nexport const handleInputEvent = (\n\tevent: Event,\n\teventType: EventType,\n\tinput: InputType,\n\tinputChangeEvent: EventEmitter<InputInteractionEvent | RadioAndCheckboxChangeEvent>,\n\tinputFocusEvent: EventEmitter<InputFocusBlurEvent>,\n\tinputBlurEvent: EventEmitter<InputFocusBlurEvent>,\n\tinputInputEvent?: EventEmitter<InputInputEvent>,\n\ttype?: string,\n\tcustomChangeFunction?: (event: Event) => void,\n\tcustomFocusFunction?: (event: Event) => void,\n\tcustomBlurFunction?: (event: Event) => void,\n\tcustomInputFunction?: (event: Event) => void,\n\thostElement?: HTMLElement,\n) => {\n\tif (eventType === EventType.Input) {\n\t\tinputInputEvent?.emit({\n\t\t\tid: input?.id,\n\t\t\tvalue: (event as InputEvent).data ?? undefined,\n\t\t\tinputType: (event as InputEvent).inputType,\n\t\t});\n\n\t\tcustomInputFunction && customInputFunction(event);\n\t}\n\n\tif (eventType === EventType.Change) {\n\t\tif (type === 'radio' || type === 'checkbox') {\n\t\t\tif (input instanceof HTMLInputElement) {\n\t\t\t\tinputChangeEvent.emit({\n\t\t\t\t\tchecked: input?.checked,\n\t\t\t\t\tid: input?.id,\n\t\t\t\t\tvalue: input?.value,\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tinputChangeEvent.emit({\n\t\t\t\tid: input?.id,\n\t\t\t\tvalue: input?.value,\n\t\t\t});\n\t\t}\n\n\t\tcustomChangeFunction && customChangeFunction(event);\n\n\t\t// Note: Change events don't have composable set to true and don't cross the ShadowDOM boundary.\n\t\t// This will emit an event so the normal `onChange` event pattern is maintained.\n\t\thostElement && emitEvent(hostElement, eventType, event);\n\t}\n\n\tif (eventType === EventType.Focus) {\n\t\tinputFocusEvent.emit({\n\t\t\tid: input?.id,\n\t\t\tfocused: true,\n\t\t\tvalue: input?.value,\n\t\t});\n\n\t\tcustomFocusFunction && customFocusFunction(event);\n\t}\n\n\tif (eventType === EventType.Blur) {\n\t\tinputBlurEvent.emit({\n\t\t\tid: input?.id,\n\t\t\tfocused: false,\n\t\t\tvalue: input?.value,\n\t\t});\n\n\t\tcustomBlurFunction && customBlurFunction(event);\n\t}\n};\n\n/**\n * Emit a custom event that can be subscribed to by an event listener.\n *\n * @param element Component host element, see https://stenciljs.com/docs/host-element\n * @param name name of the event\n * @param detail any relevant details, like the original event\n */\nexport const emitEvent = (element: HTMLElement, name: string, detail?: any) => {\n\telement.dispatchEvent(new CustomEvent(name, { composed: true, bubbles: true, detail }));\n};\n"],"version":3}
@@ -0,0 +1,168 @@
1
+ import { p as proxyCustomElement, H, h } from './index.js';
2
+ import { I as IconColours, v as validateColor } from './p-BOcd5PoR.js';
3
+ import { C as ConsoleMessageClass } from './p-Cdm-Ot0O.js';
4
+ import { v as validateValueAgainstArray } from './p-CNqFEifG.js';
5
+
6
+ const ontarioIconCss =
7
+ '.ontario-icon svg,.ontario-icon{display:inline-block;stroke-width:0;stroke:currentColor;fill:currentColor;vertical-align:middle;overflow:hidden}.ontario-icon--blue svg{stroke:#0066CC;fill:#0066CC}.ontario-icon--grey svg{stroke:#666666;fill:#666666}.ontario-icon--black svg{stroke:#1A1A1A;fill:#1A1A1A}.ontario-icon--white svg{stroke:#FFFFFF;fill:#FFFFFF}.ontario-icon--white svg{stroke:#FFFFFF;fill:#FFFFFF}';
8
+
9
+ const OntarioIconChevronLeft = /*@__PURE__*/ proxyCustomElement(
10
+ class OntarioIconChevronLeft extends H {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ /**
16
+ * The icon width will autogenerate the height since the icons are in square format, thus preserving
17
+ * the aspect ratio.
18
+ */
19
+ this.iconWidth = 24;
20
+ /**
21
+ * Set the icon's colour.
22
+ */
23
+ this.colour = 'black';
24
+ }
25
+ /**
26
+ * Watch for changes in the `iconWidth` variable for validation purpose.
27
+ * If the user input is not a number or is a negative number then `iconWidth` will be set to its default (24).
28
+ */
29
+ validateWidth() {
30
+ if (isNaN(this.iconWidth) || (!isNaN(this.iconWidth) && this.iconWidth <= 0)) {
31
+ const message = new ConsoleMessageClass();
32
+ message
33
+ .addDesignSystemTag()
34
+ .addMonospaceText(' icon-width ')
35
+ .addRegularText('on')
36
+ .addMonospaceText(' <ontario-icon-chevron-left> ')
37
+ .addRegularText(
38
+ `${isNaN(this.iconWidth) ? 'was set to a non-numeric value' : 'was set to a negative number'}; only a positive number is allowed. The default size of`,
39
+ )
40
+ .addMonospaceText(' 24px ')
41
+ .addRegularText('was assumed.')
42
+ .printMessage();
43
+ this.iconWidthState = 24;
44
+ } else {
45
+ this.iconWidthState = this.iconWidth;
46
+ }
47
+ }
48
+ /**
49
+ * Watch for changes in the `colour` variable for validation purpose.
50
+ * If the user input doesn't match one of the enum values then `colour` will be set to its default (`black`).
51
+ * If a match is found in one of the enum values then `colour` will be set to the matching enum value.
52
+ */
53
+ validateColour() {
54
+ const isValid = validateValueAgainstArray(this.colour, IconColours);
55
+ if (isValid) {
56
+ this.iconColourState = this.colour;
57
+ } else {
58
+ if (validateColor(this.colour)) {
59
+ this.iconCustomColourState = this.colour;
60
+ } else {
61
+ this.iconColourState = this.warnDefaultColour();
62
+ }
63
+ }
64
+ }
65
+ /**
66
+ * Print the invalid colour warning message
67
+ * @returns default colour (black)
68
+ */
69
+ warnDefaultColour() {
70
+ const message = new ConsoleMessageClass();
71
+ message
72
+ .addDesignSystemTag()
73
+ .addMonospaceText(' colour ')
74
+ .addRegularText('on')
75
+ .addMonospaceText(' <ontario-icon-chevron-left> ')
76
+ .addRegularText('was set to an invalid colour; only')
77
+ .addMonospaceText(' black, blue, grey or white ')
78
+ .addRegularText('are supported. The default colour')
79
+ .addMonospaceText(' black ')
80
+ .addRegularText('is assumed.')
81
+ .printMessage();
82
+ return 'black';
83
+ }
84
+ /**
85
+ * Stencil component lifecycle method that is called once after the component is first connected to the DOM.
86
+ */
87
+ componentWillLoad() {
88
+ this.validateColour();
89
+ this.validateWidth();
90
+ }
91
+ /**
92
+ * Returns the HTML code to be rendered into a custom element.
93
+ */
94
+ render() {
95
+ return h(
96
+ 'div',
97
+ {
98
+ key: '310fd94c7bb028afff4bb101b1ad8b426e3cd48e',
99
+ class: `ontario-icon ontario-icon--${this.iconColourState} ontario-icon--width-${this.iconWidthState}`,
100
+ style: { width: `${this.iconWidthState}px` },
101
+ },
102
+ h(
103
+ 'svg',
104
+ {
105
+ key: '81539bdd5704c110e54f89a9a32fd51f26190df2',
106
+ class: 'svg-icon',
107
+ style: { fill: `${this.iconCustomColourState}`, stroke: `${this.iconCustomColourState}` },
108
+ role: 'img',
109
+ xmlns: 'http://www.w3.org/2000/svg',
110
+ fill: 'none',
111
+ viewBox: '0 0 24 24',
112
+ id: 'chevron-left',
113
+ },
114
+ h('path', {
115
+ key: 'c9d665121c880070ef38225343b20f24fd75e239',
116
+ d: 'M15.4 7.4L14 6l-6 6 6 6 1.4-1.4-4.58-4.6 4.58-4.6z',
117
+ }),
118
+ ),
119
+ );
120
+ }
121
+ static get watchers() {
122
+ return {
123
+ iconWidth: ['validateWidth'],
124
+ colour: ['validateColour'],
125
+ };
126
+ }
127
+ static get style() {
128
+ return ontarioIconCss;
129
+ }
130
+ },
131
+ [
132
+ 257,
133
+ 'ontario-icon-chevron-left',
134
+ {
135
+ iconWidth: [2, 'icon-width'],
136
+ colour: [1],
137
+ iconWidthState: [32],
138
+ iconColourState: [32],
139
+ iconCustomColourState: [32],
140
+ },
141
+ undefined,
142
+ {
143
+ iconWidth: ['validateWidth'],
144
+ colour: ['validateColour'],
145
+ },
146
+ ],
147
+ );
148
+ function defineCustomElement() {
149
+ if (typeof customElements === 'undefined') {
150
+ return;
151
+ }
152
+ const components = ['ontario-icon-chevron-left'];
153
+ components.forEach((tagName) => {
154
+ switch (tagName) {
155
+ case 'ontario-icon-chevron-left':
156
+ if (!customElements.get(tagName)) {
157
+ customElements.define(tagName, OntarioIconChevronLeft);
158
+ }
159
+ break;
160
+ }
161
+ });
162
+ }
163
+ defineCustomElement();
164
+
165
+ export { OntarioIconChevronLeft as O, defineCustomElement as d };
166
+ //# sourceMappingURL=p-DGFFJaKo.js.map
167
+
168
+ //# sourceMappingURL=p-DGFFJaKo.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-DGFFJaKo.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ontario-icon/ontario-icon.scss?tag=ontario-icon-chevron-left&encapsulation=shadow","src/components/ontario-icon/ontario-icon-chevron-left.tsx"],"sourcesContent":["@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/colours.variables' as colours;\n\n.ontario-icon svg,\n// Fractal component style coverage ↓\n.ontario-icon {\n\tdisplay: inline-block;\n\tstroke-width: 0;\n\tstroke: currentColor;\n\tfill: currentColor;\n\t/* The default vertical-align is `baseline`, which leaves a few pixels of space below the icon. Using `center` prevents this. For icons shown alongside text, you may want to use a more precise value, e.g. `vertical-align: -4px` or `vertical-align: -0.15em`. */\n\tvertical-align: middle;\n\t/* Paths and strokes that overflow the viewBox can show in IE11. */\n\toverflow: hidden;\n}\n\n.ontario-icon--blue svg {\n\tstroke: colours.$ontario-colour-icon-blue;\n\tfill: colours.$ontario-colour-icon-blue;\n}\n\n.ontario-icon--grey svg {\n\tstroke: colours.$ontario-colour-icon-grey;\n\tfill: colours.$ontario-colour-icon-grey;\n}\n\n.ontario-icon--black svg {\n\tstroke: colours.$ontario-colour-icon-black;\n\tfill: colours.$ontario-colour-icon-black;\n}\n\n.ontario-icon--white svg {\n\tstroke: colours.$ontario-colour-icon-white;\n\tfill: colours.$ontario-colour-icon-white;\n}\n\n.ontario-icon--white svg {\n\tstroke: colours.$ontario-colour-white;\n\tfill: colours.$ontario-colour-white;\n}\n","// content automatically generated by `generate-icons.js` begins\nimport { Component, Prop, h, Watch, State } from '@stencil/core';\nimport { IconWithColour } from './icon.interface';\nimport { IconSize, IconColour, IconColours } from './icon.types';\nimport { ConsoleMessageClass } from '../../utils/console-message/console-message';\nimport { validateValueAgainstArray } from '../../utils/validation/validation-functions';\nimport validateColor from 'validate-color';\n\n@Component({\n\ttag: 'ontario-icon-chevron-left',\n\tstyleUrl: 'ontario-icon.scss',\n\tshadow: true,\n})\nexport class OntarioIconChevronLeft implements IconWithColour {\n\t/**\n\t * The icon width will autogenerate the height since the icons are in square format, thus preserving\n\t * the aspect ratio.\n\t */\n\t@Prop() iconWidth: IconSize = 24;\n\n\t/**\n\t * Mutable variable, for internal use only.\n\t * Set the icon's width depending on validation result.\n\t */\n\t@State() iconWidthState: number;\n\n\t/**\n\t * Watch for changes in the `iconWidth` variable for validation purpose.\n\t * If the user input is not a number or is a negative number then `iconWidth` will be set to its default (24).\n\t */\n\t@Watch('iconWidth')\n\tvalidateWidth() {\n\t\tif (isNaN(this.iconWidth) || (!isNaN(this.iconWidth) && this.iconWidth <= 0)) {\n\t\t\tconst message = new ConsoleMessageClass();\n\t\t\tmessage\n\t\t\t\t.addDesignSystemTag()\n\t\t\t\t.addMonospaceText(' icon-width ')\n\t\t\t\t.addRegularText('on')\n\t\t\t\t.addMonospaceText(' <ontario-icon-chevron-left> ')\n\t\t\t\t.addRegularText(\n\t\t\t\t\t`${\n\t\t\t\t\t\tisNaN(this.iconWidth) ? 'was set to a non-numeric value' : 'was set to a negative number'\n\t\t\t\t\t}; only a positive number is allowed. The default size of`,\n\t\t\t\t)\n\t\t\t\t.addMonospaceText(' 24px ')\n\t\t\t\t.addRegularText('was assumed.')\n\t\t\t\t.printMessage();\n\t\t\tthis.iconWidthState = 24;\n\t\t} else {\n\t\t\tthis.iconWidthState = this.iconWidth;\n\t\t}\n\t}\n\n\t/**\n\t * Set the icon's colour.\n\t */\n\t@Prop() colour: IconColour = 'black';\n\n\t/**\n\t * Mutable variable, for internal use only.\n\t * Set the icon's colour based on validation result.\n\t */\n\t@State() iconColourState: string;\n\n\t/**\n\t * Mutable variable, for internal use only.\n\t * Set the icon's colour based on validation result.\n\t */\n\t@State() iconCustomColourState: string;\n\n\t/**\n\t * Watch for changes in the `colour` variable for validation purpose.\n\t * If the user input doesn't match one of the enum values then `colour` will be set to its default (`black`).\n\t * If a match is found in one of the enum values then `colour` will be set to the matching enum value.\n\t */\n\t@Watch('colour')\n\tvalidateColour() {\n\t\tconst isValid = validateValueAgainstArray(this.colour, IconColours);\n\t\tif (isValid) {\n\t\t\tthis.iconColourState = this.colour;\n\t\t} else {\n\t\t\tif (validateColor(this.colour)) {\n\t\t\t\tthis.iconCustomColourState = this.colour;\n\t\t\t} else {\n\t\t\t\tthis.iconColourState = this.warnDefaultColour();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Print the invalid colour warning message\n\t * @returns default colour (black)\n\t */\n\tprivate warnDefaultColour(): IconColour {\n\t\tconst message = new ConsoleMessageClass();\n\t\tmessage\n\t\t\t.addDesignSystemTag()\n\t\t\t.addMonospaceText(' colour ')\n\t\t\t.addRegularText('on')\n\t\t\t.addMonospaceText(' <ontario-icon-chevron-left> ')\n\t\t\t.addRegularText('was set to an invalid colour; only')\n\t\t\t.addMonospaceText(' black, blue, grey or white ')\n\t\t\t.addRegularText('are supported. The default colour')\n\t\t\t.addMonospaceText(' black ')\n\t\t\t.addRegularText('is assumed.')\n\t\t\t.printMessage();\n\t\treturn 'black';\n\t}\n\n\t/**\n\t * Stencil component lifecycle method that is called once after the component is first connected to the DOM.\n\t */\n\tcomponentWillLoad() {\n\t\tthis.validateColour();\n\t\tthis.validateWidth();\n\t}\n\n\t/**\n\t * Returns the HTML code to be rendered into a custom element.\n\t */\n\trender() {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={`ontario-icon ontario-icon--${this.iconColourState} ontario-icon--width-${this.iconWidthState}`}\n\t\t\t\tstyle={{ width: `${this.iconWidthState}px` }}\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\tclass=\"svg-icon\"\n\t\t\t\t\tstyle={{ fill: `${this.iconCustomColourState}`, stroke: `${this.iconCustomColourState}` }}\n\t\t\t\t\trole=\"img\"\n\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tid=\"chevron-left\"\n\t\t\t\t>\n\t\t\t\t\t<path d=\"M15.4 7.4L14 6l-6 6 6 6 1.4-1.4-4.58-4.6 4.58-4.6z\" />\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t);\n\t}\n}\n// content automatically generated by `generate-icons.js` ends\n"],"version":3}