@iamproperty/components 7.7.1--beta14 → 7.7.1--beta16

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 (507) hide show
  1. package/README.md +25 -2
  2. package/assets/css/components/actionbar.component.css +1 -1
  3. package/assets/css/components/actionbar.component.css.map +1 -1
  4. package/assets/css/components/address-lookup.component.css +1 -1
  5. package/assets/css/components/address-lookup.component.css.map +1 -1
  6. package/assets/css/components/advanced-select.component.css +1 -0
  7. package/assets/css/components/advanced-select.component.css.map +1 -0
  8. package/assets/css/components/applied-filters.css +1 -1
  9. package/assets/css/components/applied-filters.css.map +1 -1
  10. package/assets/css/components/barchart.component.css +1 -1
  11. package/assets/css/components/barchart.component.css.map +1 -1
  12. package/assets/css/components/bento-grid.global.css +1 -1
  13. package/assets/css/components/bento-grid.global.css.map +1 -1
  14. package/assets/css/components/button.component.css +1 -0
  15. package/assets/css/components/button.component.css.map +1 -0
  16. package/assets/css/components/calendar.component.css +1 -1
  17. package/assets/css/components/calendar.component.css.map +1 -1
  18. package/assets/css/components/calendar.config.css +1 -1
  19. package/assets/css/components/calendar.config.css.map +1 -1
  20. package/assets/css/components/card.component.css +1 -1
  21. package/assets/css/components/card.component.css.map +1 -1
  22. package/assets/css/components/card.module.css +1 -1
  23. package/assets/css/components/card.module.css.map +1 -1
  24. package/assets/css/components/carousel.component.css +1 -1
  25. package/assets/css/components/carousel.component.css.map +1 -1
  26. package/assets/css/components/carousel.config.css +1 -1
  27. package/assets/css/components/carousel.config.css.map +1 -1
  28. package/assets/css/components/charts.config.css +1 -1
  29. package/assets/css/components/charts.config.css.map +1 -1
  30. package/assets/css/components/collapsible-side.css +1 -1
  31. package/assets/css/components/collapsible-side.css.map +1 -1
  32. package/assets/css/components/config.component.css +1 -1
  33. package/assets/css/components/config.component.css.map +1 -1
  34. package/assets/css/components/content.component.css +1 -1
  35. package/assets/css/components/content.component.css.map +1 -1
  36. package/assets/css/components/doughnutchart.component.css +1 -1
  37. package/assets/css/components/doughnutchart.component.css.map +1 -1
  38. package/assets/css/components/fileupload.css +1 -1
  39. package/assets/css/components/fileupload.css.map +1 -1
  40. package/assets/css/components/filter-card.component.css +1 -1
  41. package/assets/css/components/filter-card.component.css.map +1 -1
  42. package/assets/css/components/header.component.css +1 -1
  43. package/assets/css/components/header.component.css.map +1 -1
  44. package/assets/css/components/input.component.css +1 -1
  45. package/assets/css/components/input.component.css.map +1 -1
  46. package/assets/css/components/menu.component.css +1 -1
  47. package/assets/css/components/menu.component.css.map +1 -1
  48. package/assets/css/components/menu.global.css +1 -1
  49. package/assets/css/components/menu.global.css.map +1 -1
  50. package/assets/css/components/milestone.css +1 -1
  51. package/assets/css/components/milestone.css.map +1 -1
  52. package/assets/css/components/modal.component.css +1 -1
  53. package/assets/css/components/modal.component.css.map +1 -1
  54. package/assets/css/components/multi-step-modal.component.css +1 -1
  55. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  56. package/assets/css/components/multiselect.css +1 -1
  57. package/assets/css/components/multiselect.css.map +1 -1
  58. package/assets/css/components/nav.component.css +1 -1
  59. package/assets/css/components/nav.component.css.map +1 -1
  60. package/assets/css/components/nav.docs.css +1 -1
  61. package/assets/css/components/nav.docs.css.map +1 -1
  62. package/assets/css/components/nav.global.css +1 -1
  63. package/assets/css/components/nav.global.css.map +1 -1
  64. package/assets/css/components/notification.css +1 -1
  65. package/assets/css/components/notification.css.map +1 -1
  66. package/assets/css/components/pagination.css +1 -1
  67. package/assets/css/components/pagination.css.map +1 -1
  68. package/assets/css/components/password.component.css +1 -1
  69. package/assets/css/components/password.component.css.map +1 -1
  70. package/assets/css/components/popover.component.css +1 -1
  71. package/assets/css/components/popover.component.css.map +1 -1
  72. package/assets/css/components/rank.component.css +1 -1
  73. package/assets/css/components/rank.component.css.map +1 -1
  74. package/assets/css/components/rankings.component.css +1 -1
  75. package/assets/css/components/rankings.component.css.map +1 -1
  76. package/assets/css/components/rankings.global.css +1 -1
  77. package/assets/css/components/rankings.global.css.map +1 -1
  78. package/assets/css/components/record-card.component.css +1 -1
  79. package/assets/css/components/record-card.component.css.map +1 -1
  80. package/assets/css/components/search.component.css +1 -0
  81. package/assets/css/components/search.component.css.map +1 -0
  82. package/assets/css/components/slider.css +1 -1
  83. package/assets/css/components/slider.css.map +1 -1
  84. package/assets/css/components/split-button.component.css +1 -1
  85. package/assets/css/components/split-button.component.css.map +1 -1
  86. package/assets/css/components/std-nav-standalone.component.css +1 -0
  87. package/assets/css/components/std-nav-standalone.component.css.map +1 -0
  88. package/assets/css/components/table-basic.global.css +1 -1
  89. package/assets/css/components/table-basic.global.css.map +1 -1
  90. package/assets/css/components/table.global.css +1 -1
  91. package/assets/css/components/table.global.css.map +1 -1
  92. package/assets/css/components/tabs.component.css +1 -1
  93. package/assets/css/components/tabs.component.css.map +1 -1
  94. package/assets/css/components/tabs.config.css +1 -1
  95. package/assets/css/components/tabs.config.css.map +1 -1
  96. package/assets/css/components/tag.component.css +1 -1
  97. package/assets/css/components/tag.component.css.map +1 -1
  98. package/assets/css/components/video-card.component.css +1 -1
  99. package/assets/css/components/video-card.component.css.map +1 -1
  100. package/assets/css/components/video-modal.component.css +1 -1
  101. package/assets/css/components/video-modal.component.css.map +1 -1
  102. package/assets/css/components/video.component.css +1 -1
  103. package/assets/css/components/video.component.css.map +1 -1
  104. package/assets/css/core.min.css +1 -1
  105. package/assets/css/core.min.css.map +1 -1
  106. package/assets/css/elements/badge-tag.css +1 -1
  107. package/assets/css/elements/badge-tag.css.map +1 -1
  108. package/assets/css/elements/buttons--global.css +1 -1
  109. package/assets/css/elements/buttons--global.css.map +1 -1
  110. package/assets/css/elements/buttons--special.css +1 -1
  111. package/assets/css/elements/buttons--special.css.map +1 -1
  112. package/assets/css/elements/buttons.css +1 -1
  113. package/assets/css/elements/buttons.css.map +1 -1
  114. package/assets/css/elements/container.css +1 -1
  115. package/assets/css/elements/container.css.map +1 -1
  116. package/assets/css/elements/details.css +1 -1
  117. package/assets/css/elements/details.css.map +1 -1
  118. package/assets/css/elements/dialog.css +1 -1
  119. package/assets/css/elements/dialog.css.map +1 -1
  120. package/assets/css/elements/dropdown.css +1 -1
  121. package/assets/css/elements/dropdown.css.map +1 -1
  122. package/assets/css/elements/forms.css +1 -1
  123. package/assets/css/elements/forms.css.map +1 -1
  124. package/assets/css/elements/input.css +1 -1
  125. package/assets/css/elements/input.css.map +1 -1
  126. package/assets/css/elements/links--collapsible-side.css +1 -1
  127. package/assets/css/elements/links--collapsible-side.css.map +1 -1
  128. package/assets/css/elements/links--global.css +1 -1
  129. package/assets/css/elements/links--global.css.map +1 -1
  130. package/assets/css/elements/links.css +1 -1
  131. package/assets/css/elements/links.css.map +1 -1
  132. package/assets/css/elements/lists--tick-list.css +1 -1
  133. package/assets/css/elements/lists--tick-list.css.map +1 -1
  134. package/assets/css/elements/modal.css +1 -1
  135. package/assets/css/elements/modal.css.map +1 -1
  136. package/assets/css/elements/popover.css +1 -1
  137. package/assets/css/elements/popover.css.map +1 -1
  138. package/assets/css/elements/prefix.css +1 -1
  139. package/assets/css/elements/prefix.css.map +1 -1
  140. package/assets/css/elements/select.css +1 -0
  141. package/assets/css/elements/select.css.map +1 -0
  142. package/assets/css/elements/tooltips.css +1 -1
  143. package/assets/css/elements/tooltips.css.map +1 -1
  144. package/assets/css/elements/type.css +1 -1
  145. package/assets/css/elements/type.css.map +1 -1
  146. package/assets/css/style.min.css +1 -1
  147. package/assets/css/style.min.css.map +1 -1
  148. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  149. package/assets/js/components/actionbar/actionbar.component.js +5 -3
  150. package/assets/js/components/actionbar/actionbar.component.min.js +10 -8
  151. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  152. package/assets/js/components/address-lookup/address-lookup.component.js +12 -6
  153. package/assets/js/components/address-lookup/address-lookup.component.min.js +9 -7
  154. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  155. package/assets/js/components/advanced-select/advanced-select.component.js +8 -17
  156. package/assets/js/components/advanced-select/advanced-select.component.min.js +7 -17
  157. package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
  158. package/assets/js/components/applied-filters/applied-filters.component.min.js +3 -3
  159. package/assets/js/components/barchart/barchart.component.min.js +5 -5
  160. package/assets/js/components/bento-grid/bento-grid.component.min.js +2 -2
  161. package/assets/js/components/button/button.component.js +49 -0
  162. package/assets/js/components/button/button.component.min.js +13 -0
  163. package/assets/js/components/button/button.component.min.js.map +1 -0
  164. package/assets/js/components/calendar/calendar.component.min.js +5 -5
  165. package/assets/js/components/card/card.component.min.js +21 -19
  166. package/assets/js/components/card/card.component.min.js.map +1 -1
  167. package/assets/js/components/carousel/carousel.component.js +144 -52
  168. package/assets/js/components/carousel/carousel.component.min.js +15 -21
  169. package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
  170. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +3 -3
  171. package/assets/js/components/config/config.component.min.js +8 -8
  172. package/assets/js/components/content/content.component.js +21 -5
  173. package/assets/js/components/content/content.component.min.js +5 -7
  174. package/assets/js/components/content/content.component.min.js.map +1 -1
  175. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  176. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +7 -7
  177. package/assets/js/components/doughnutchart/doughnutchart.component.min.js.map +1 -1
  178. package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
  179. package/assets/js/components/filter-card/filter-card.component.min.js +20 -18
  180. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
  181. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  182. package/assets/js/components/form/form.component.min.js +1 -1
  183. package/assets/js/components/header/header.component.min.js +2 -2
  184. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  185. package/assets/js/components/input/input.component.min.js +2 -2
  186. package/assets/js/components/input-range/input-range.component.min.js +1 -1
  187. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  188. package/assets/js/components/menu/menu.component.js +1 -0
  189. package/assets/js/components/menu/menu.component.min.js +3 -3
  190. package/assets/js/components/menu/menu.component.min.js.map +1 -1
  191. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  192. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  193. package/assets/js/components/modal/modal.component.min.js +4 -4
  194. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  195. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
  196. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  197. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  198. package/assets/js/components/nav/nav.component.js +4 -3
  199. package/assets/js/components/nav/nav.component.min.js +6 -6
  200. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  201. package/assets/js/components/notification/notification.component.min.js +2 -2
  202. package/assets/js/components/pagination/pagination.component.min.js +4 -4
  203. package/assets/js/components/password/password.component.min.js +5 -5
  204. package/assets/js/components/popover/popover.component.min.js +4 -4
  205. package/assets/js/components/rank/rank.component.min.js +1 -1
  206. package/assets/js/components/rankings/rankings.component.min.js +3 -3
  207. package/assets/js/components/rating/rating.component.min.js +1 -1
  208. package/assets/js/components/record-card/record-card.component.min.js +18 -16
  209. package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
  210. package/assets/js/components/search/search.component.js +9 -13
  211. package/assets/js/components/search/search.component.min.js +9 -18
  212. package/assets/js/components/search/search.component.min.js.map +1 -1
  213. package/assets/js/components/slider/slider.component.min.js +3 -3
  214. package/assets/js/components/split-button/split-button.component.js +1 -1
  215. package/assets/js/components/split-button/split-button.component.min.js +6 -6
  216. package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
  217. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +11 -9
  218. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  219. package/assets/js/components/std-nav/std-nav.component.js +179 -0
  220. package/assets/js/components/std-nav/std-nav.component.min.js +66 -0
  221. package/assets/js/components/std-nav/std-nav.component.min.js.map +1 -0
  222. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.js +60 -0
  223. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js +20 -0
  224. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js.map +1 -0
  225. package/assets/js/components/table/table.component.min.js +6 -6
  226. package/assets/js/components/table/table.component.min.js.map +1 -1
  227. package/assets/js/components/table-ajax/table-ajax.component.min.js +7 -7
  228. package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
  229. package/assets/js/components/table-basic/table-basic.component.min.js +2 -2
  230. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +4 -4
  231. package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
  232. package/assets/js/components/table-submit/table-submit.component.min.js +6 -6
  233. package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
  234. package/assets/js/components/tabs/tabs.component.min.js +4 -4
  235. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  236. package/assets/js/components/tag/tag.component.min.js +3 -3
  237. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  238. package/assets/js/components/video/video.component.min.js +5 -5
  239. package/assets/js/components/video-card/video-card.component.min.js +18 -16
  240. package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
  241. package/assets/js/components/video-modal/video-modal.component.min.js +2 -2
  242. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  243. package/assets/js/modules/advanced-select.js +30 -4
  244. package/assets/js/modules/card.module.js +16 -14
  245. package/assets/js/modules/carousel.js +11 -11
  246. package/assets/js/modules/nav.js +78 -0
  247. package/assets/js/modules/tabs.js +9 -1
  248. package/assets/js/scripts.bundle.js +1 -1
  249. package/assets/js/scripts.bundle.min.js +1 -1
  250. package/assets/sass/_corefiles.scss +1 -0
  251. package/assets/sass/_utilities.scss +1 -0
  252. package/assets/sass/components/actionbar.component.scss +15 -1
  253. package/assets/sass/components/address-lookup.component.scss +134 -2
  254. package/assets/sass/components/advanced-select.component.scss +59 -0
  255. package/assets/sass/components/bento-grid.global.scss +2 -2
  256. package/assets/sass/components/button.component.scss +5 -0
  257. package/assets/sass/components/calendar.component.scss +1 -1
  258. package/assets/sass/components/calendar.config.scss +1 -1
  259. package/assets/sass/components/card.component.scss +2 -2
  260. package/assets/sass/components/card.module.scss +8 -3
  261. package/assets/sass/components/carousel.component.scss +522 -519
  262. package/assets/sass/components/carousel.config.scss +4 -44
  263. package/assets/sass/components/charts.config.scss +1 -1
  264. package/assets/sass/components/config.component.scss +1 -1
  265. package/assets/sass/components/filter-card.component.scss +5 -5
  266. package/assets/sass/components/header.component.scss +1 -1
  267. package/assets/sass/components/menu.component.scss +21 -16
  268. package/assets/sass/components/menu.global.scss +7 -11
  269. package/assets/sass/components/milestone.scss +2 -2
  270. package/assets/sass/components/modal.component.scss +1 -0
  271. package/assets/sass/components/multiselect.scss +8 -0
  272. package/assets/sass/components/nav.component.scss +21 -10
  273. package/assets/sass/components/nav.docs.scss +1 -2
  274. package/assets/sass/components/nav.global.scss +174 -45
  275. package/assets/sass/components/pagination.scss +2 -2
  276. package/assets/sass/components/popover.component.scss +37 -2
  277. package/assets/sass/components/search.component.scss +2 -0
  278. package/assets/sass/components/split-button.component.scss +3 -1
  279. package/assets/sass/components/std-nav-standalone.component.scss +228 -0
  280. package/assets/sass/components/table-basic.global.scss +3 -3
  281. package/assets/sass/components/table.global.scss +1 -1
  282. package/assets/sass/components/tabs.config.scss +2 -2
  283. package/assets/sass/components/video.component.scss +1 -1
  284. package/assets/sass/elements/badge-tag.css +6 -2
  285. package/assets/sass/elements/buttons--global.css +4 -4
  286. package/assets/sass/elements/buttons--special.css +2 -53
  287. package/assets/sass/elements/container.scss +1 -1
  288. package/assets/sass/elements/details.css +3 -3
  289. package/assets/sass/elements/dialog.scss +9 -5
  290. package/assets/sass/elements/dropdown.css +188 -44
  291. package/assets/sass/elements/forms.scss +36 -522
  292. package/assets/sass/elements/input.scss +0 -7
  293. package/assets/sass/elements/links--collapsible-side.scss +1 -1
  294. package/assets/sass/elements/links--global.scss +5 -1
  295. package/assets/sass/elements/lists--tick-list.scss +2 -2
  296. package/assets/sass/elements/modal.scss +1 -1
  297. package/assets/sass/elements/popover.scss +1 -1
  298. package/assets/sass/elements/prefix.scss +1 -1
  299. package/assets/sass/elements/select.scss +238 -0
  300. package/assets/sass/elements/tooltips.scss +1 -1
  301. package/assets/sass/elements/type.css +10 -0
  302. package/assets/sass/email.scss +1 -1
  303. package/assets/sass/error.scss +0 -1
  304. package/assets/sass/foundations/colours.scss +0 -1
  305. package/assets/sass/foundations/debug.scss +6 -0
  306. package/assets/sass/foundations/reboot.scss +81 -1
  307. package/assets/sass/foundations/root.scss +20 -2
  308. package/assets/sass/main.scss +0 -1
  309. package/assets/sass/{_grid.scss → utilities/grid.scss} +120 -80
  310. package/assets/ts/components/actionbar/actionbar.component.ts +5 -3
  311. package/assets/ts/components/address-lookup/address-lookup.component.ts +18 -6
  312. package/assets/ts/components/advanced-select/advanced-select.component.ts +12 -17
  313. package/assets/ts/components/button/button.component.ts +66 -0
  314. package/assets/ts/components/carousel/carousel.component.ts +189 -58
  315. package/assets/ts/components/content/content.component.ts +33 -5
  316. package/assets/ts/components/menu/menu.component.ts +4 -0
  317. package/assets/ts/components/nav/nav.component.ts +5 -7
  318. package/assets/ts/components/search/search.component.ts +14 -13
  319. package/assets/ts/components/split-button/split-button.component.ts +1 -1
  320. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +0 -1
  321. package/assets/ts/components/std-nav/std-nav.component.ts +235 -0
  322. package/assets/ts/components/std-nav-standalone/std-nav-standalone.component.ts +76 -0
  323. package/assets/ts/modules/advanced-select.ts +47 -7
  324. package/assets/ts/modules/card.module.ts +16 -14
  325. package/assets/ts/modules/carousel.ts +11 -11
  326. package/assets/ts/modules/nav.ts +91 -0
  327. package/assets/ts/modules/tabs.ts +10 -1
  328. package/dist/components.es.js +27 -27
  329. package/dist/components.umd.js +343 -272
  330. package/package.json +11 -10
  331. package/src/components/Button/Button.vue +20 -0
  332. package/src/components/STDNav/STDNav.vue +22 -0
  333. package/src/components/STDNavStandalone/STDNavStandalone.vue +22 -0
  334. package/assets/bootstrap/LICENSE +0 -22
  335. package/assets/bootstrap/README.md +0 -247
  336. package/assets/bootstrap/js/index.esm.js +0 -19
  337. package/assets/bootstrap/js/index.umd.js +0 -34
  338. package/assets/bootstrap/js/src/alert.js +0 -87
  339. package/assets/bootstrap/js/src/base-component.js +0 -85
  340. package/assets/bootstrap/js/src/button.js +0 -72
  341. package/assets/bootstrap/js/src/carousel.js +0 -475
  342. package/assets/bootstrap/js/src/collapse.js +0 -302
  343. package/assets/bootstrap/js/src/dom/data.js +0 -55
  344. package/assets/bootstrap/js/src/dom/event-handler.js +0 -320
  345. package/assets/bootstrap/js/src/dom/manipulator.js +0 -71
  346. package/assets/bootstrap/js/src/dom/selector-engine.js +0 -83
  347. package/assets/bootstrap/js/src/dropdown.js +0 -445
  348. package/assets/bootstrap/js/src/modal.js +0 -373
  349. package/assets/bootstrap/js/src/offcanvas.js +0 -283
  350. package/assets/bootstrap/js/src/popover.js +0 -97
  351. package/assets/bootstrap/js/src/scrollspy.js +0 -290
  352. package/assets/bootstrap/js/src/tab.js +0 -307
  353. package/assets/bootstrap/js/src/toast.js +0 -220
  354. package/assets/bootstrap/js/src/tooltip.js +0 -651
  355. package/assets/bootstrap/js/src/util/backdrop.js +0 -149
  356. package/assets/bootstrap/js/src/util/component-functions.js +0 -34
  357. package/assets/bootstrap/js/src/util/config.js +0 -66
  358. package/assets/bootstrap/js/src/util/focustrap.js +0 -115
  359. package/assets/bootstrap/js/src/util/index.js +0 -336
  360. package/assets/bootstrap/js/src/util/sanitizer.js +0 -118
  361. package/assets/bootstrap/js/src/util/scrollbar.js +0 -114
  362. package/assets/bootstrap/js/src/util/swipe.js +0 -146
  363. package/assets/bootstrap/js/src/util/template-factory.js +0 -160
  364. package/assets/bootstrap/package.json +0 -180
  365. package/assets/bootstrap/scss/_accordion.scss +0 -146
  366. package/assets/bootstrap/scss/_alert.scss +0 -71
  367. package/assets/bootstrap/scss/_badge.scss +0 -38
  368. package/assets/bootstrap/scss/_breadcrumb.scss +0 -40
  369. package/assets/bootstrap/scss/_button-group.scss +0 -142
  370. package/assets/bootstrap/scss/_buttons.scss +0 -186
  371. package/assets/bootstrap/scss/_card.scss +0 -234
  372. package/assets/bootstrap/scss/_carousel.scss +0 -229
  373. package/assets/bootstrap/scss/_close.scss +0 -40
  374. package/assets/bootstrap/scss/_containers.scss +0 -41
  375. package/assets/bootstrap/scss/_dropdown.scss +0 -248
  376. package/assets/bootstrap/scss/_forms.scss +0 -9
  377. package/assets/bootstrap/scss/_functions.scss +0 -302
  378. package/assets/bootstrap/scss/_grid.scss +0 -33
  379. package/assets/bootstrap/scss/_helpers.scss +0 -10
  380. package/assets/bootstrap/scss/_images.scss +0 -42
  381. package/assets/bootstrap/scss/_list-group.scss +0 -191
  382. package/assets/bootstrap/scss/_maps.scss +0 -54
  383. package/assets/bootstrap/scss/_mixins.scss +0 -43
  384. package/assets/bootstrap/scss/_modal.scss +0 -237
  385. package/assets/bootstrap/scss/_nav.scss +0 -172
  386. package/assets/bootstrap/scss/_navbar.scss +0 -276
  387. package/assets/bootstrap/scss/_offcanvas.scss +0 -143
  388. package/assets/bootstrap/scss/_pagination.scss +0 -109
  389. package/assets/bootstrap/scss/_placeholders.scss +0 -51
  390. package/assets/bootstrap/scss/_popover.scss +0 -196
  391. package/assets/bootstrap/scss/_progress.scss +0 -59
  392. package/assets/bootstrap/scss/_reboot.scss +0 -610
  393. package/assets/bootstrap/scss/_root.scss +0 -73
  394. package/assets/bootstrap/scss/_spinners.scss +0 -85
  395. package/assets/bootstrap/scss/_tables.scss +0 -164
  396. package/assets/bootstrap/scss/_toasts.scss +0 -70
  397. package/assets/bootstrap/scss/_tooltip.scss +0 -120
  398. package/assets/bootstrap/scss/_transitions.scss +0 -27
  399. package/assets/bootstrap/scss/_type.scss +0 -106
  400. package/assets/bootstrap/scss/_utilities.scss +0 -647
  401. package/assets/bootstrap/scss/_variables-dark.scss +0 -87
  402. package/assets/bootstrap/scss/_variables.scss +0 -1633
  403. package/assets/bootstrap/scss/bootstrap-grid.scss +0 -64
  404. package/assets/bootstrap/scss/bootstrap-reboot.scss +0 -9
  405. package/assets/bootstrap/scss/bootstrap-utilities.scss +0 -15
  406. package/assets/bootstrap/scss/bootstrap.scss +0 -51
  407. package/assets/bootstrap/scss/forms/_floating-labels.scss +0 -74
  408. package/assets/bootstrap/scss/forms/_form-check.scss +0 -175
  409. package/assets/bootstrap/scss/forms/_form-control.scss +0 -194
  410. package/assets/bootstrap/scss/forms/_form-range.scss +0 -91
  411. package/assets/bootstrap/scss/forms/_form-select.scss +0 -71
  412. package/assets/bootstrap/scss/forms/_form-text.scss +0 -11
  413. package/assets/bootstrap/scss/forms/_input-group.scss +0 -129
  414. package/assets/bootstrap/scss/forms/_labels.scss +0 -36
  415. package/assets/bootstrap/scss/forms/_validation.scss +0 -12
  416. package/assets/bootstrap/scss/helpers/_clearfix.scss +0 -3
  417. package/assets/bootstrap/scss/helpers/_color-bg.scss +0 -10
  418. package/assets/bootstrap/scss/helpers/_colored-links.scss +0 -12
  419. package/assets/bootstrap/scss/helpers/_focus-ring.scss +0 -5
  420. package/assets/bootstrap/scss/helpers/_icon-link.scss +0 -25
  421. package/assets/bootstrap/scss/helpers/_position.scss +0 -36
  422. package/assets/bootstrap/scss/helpers/_ratio.scss +0 -26
  423. package/assets/bootstrap/scss/helpers/_stacks.scss +0 -15
  424. package/assets/bootstrap/scss/helpers/_stretched-link.scss +0 -15
  425. package/assets/bootstrap/scss/helpers/_text-truncation.scss +0 -7
  426. package/assets/bootstrap/scss/helpers/_visually-hidden.scss +0 -8
  427. package/assets/bootstrap/scss/helpers/_vr.scss +0 -8
  428. package/assets/bootstrap/scss/mixins/_alert.scss +0 -15
  429. package/assets/bootstrap/scss/mixins/_backdrop.scss +0 -14
  430. package/assets/bootstrap/scss/mixins/_banner.scss +0 -9
  431. package/assets/bootstrap/scss/mixins/_border-radius.scss +0 -78
  432. package/assets/bootstrap/scss/mixins/_box-shadow.scss +0 -18
  433. package/assets/bootstrap/scss/mixins/_breakpoints.scss +0 -127
  434. package/assets/bootstrap/scss/mixins/_buttons.scss +0 -70
  435. package/assets/bootstrap/scss/mixins/_caret.scss +0 -64
  436. package/assets/bootstrap/scss/mixins/_clearfix.scss +0 -9
  437. package/assets/bootstrap/scss/mixins/_color-mode.scss +0 -21
  438. package/assets/bootstrap/scss/mixins/_color-scheme.scss +0 -7
  439. package/assets/bootstrap/scss/mixins/_container.scss +0 -11
  440. package/assets/bootstrap/scss/mixins/_deprecate.scss +0 -10
  441. package/assets/bootstrap/scss/mixins/_forms.scss +0 -152
  442. package/assets/bootstrap/scss/mixins/_gradients.scss +0 -47
  443. package/assets/bootstrap/scss/mixins/_grid.scss +0 -151
  444. package/assets/bootstrap/scss/mixins/_image.scss +0 -16
  445. package/assets/bootstrap/scss/mixins/_list-group.scss +0 -24
  446. package/assets/bootstrap/scss/mixins/_lists.scss +0 -7
  447. package/assets/bootstrap/scss/mixins/_pagination.scss +0 -10
  448. package/assets/bootstrap/scss/mixins/_reset-text.scss +0 -17
  449. package/assets/bootstrap/scss/mixins/_resize.scss +0 -6
  450. package/assets/bootstrap/scss/mixins/_table-variants.scss +0 -24
  451. package/assets/bootstrap/scss/mixins/_text-truncate.scss +0 -8
  452. package/assets/bootstrap/scss/mixins/_transition.scss +0 -26
  453. package/assets/bootstrap/scss/mixins/_utilities.scss +0 -97
  454. package/assets/bootstrap/scss/mixins/_visually-hidden.scss +0 -29
  455. package/assets/bootstrap/scss/utilities/_api.scss +0 -47
  456. package/assets/bootstrap/scss/vendor/_rfs.scss +0 -354
  457. package/assets/favicons/README.md +0 -21
  458. package/assets/ts/README.md +0 -12
  459. package/assets/ts/components/actionbar/README.md +0 -56
  460. package/assets/ts/components/applied-filters/README.md +0 -20
  461. package/assets/ts/components/bento-grid/README.md +0 -31
  462. package/assets/ts/components/carousel/README.md +0 -38
  463. package/assets/ts/components/chart/README.md +0 -35
  464. package/assets/ts/components/collapsible-side/README.md +0 -38
  465. package/assets/ts/components/filterlist/README.md +0 -32
  466. package/assets/ts/components/header/README.md +0 -38
  467. package/assets/ts/components/inline-edit/README.md +0 -31
  468. package/assets/ts/components/multiselect/README.md +0 -35
  469. package/assets/ts/components/nav/README.md +0 -57
  470. package/assets/ts/components/notification/README.md +0 -47
  471. package/assets/ts/components/pagination/README.md +0 -37
  472. package/assets/ts/components/search/README.md +0 -35
  473. package/assets/ts/components/slider/README.md +0 -26
  474. package/assets/ts/components/table/README.md +0 -40
  475. package/assets/ts/components/table-basic/README.md +0 -40
  476. package/assets/ts/components/tabs/README.md +0 -34
  477. package/src/components/Accordion/README.md +0 -31
  478. package/src/components/Actionbar/README.md +0 -41
  479. package/src/components/AppliedFilters/README.md +0 -5
  480. package/src/components/Banner/README.md +0 -22
  481. package/src/components/Card/README.md +0 -24
  482. package/src/components/Carousel/README.md +0 -20
  483. package/src/components/Chart/README.md +0 -17
  484. package/src/components/CollapsibleSideMenu/README.md +0 -23
  485. package/src/components/FileUpload/README.md +0 -13
  486. package/src/components/Filterlist/README.md +0 -17
  487. package/src/components/Header/README.md +0 -27
  488. package/src/components/InlineEdit/README.md +0 -7
  489. package/src/components/Input/README.md +0 -17
  490. package/src/components/Marketing/README.md +0 -20
  491. package/src/components/Multiselect/README.md +0 -12
  492. package/src/components/Nav/README.md +0 -42
  493. package/src/components/Nav-old/README.md +0 -22
  494. package/src/components/NoteFeed/README.md +0 -16
  495. package/src/components/Notification/README.md +0 -32
  496. package/src/components/Pagination/README.md +0 -22
  497. package/src/components/PropertySearchbar/README.md +0 -25
  498. package/src/components/Search/README.md +0 -11
  499. package/src/components/Slider/README.md +0 -11
  500. package/src/components/Snapshot/README.md +0 -20
  501. package/src/components/SplitButton/README.md +0 -19
  502. package/src/components/Stepper/README.md +0 -32
  503. package/src/components/Table/README.md +0 -49
  504. package/src/components/Tabs/README.md +0 -29
  505. package/src/components/Testimonial/README.md +0 -25
  506. package/src/components/Timeline/README.md +0 -18
  507. package/src/foundations/Logo/README.md +0 -21
@@ -1,118 +0,0 @@
1
- /**
2
- * --------------------------------------------------------------------------
3
- * Bootstrap (v5.2.0): util/sanitizer.js
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
- * --------------------------------------------------------------------------
6
- */
7
-
8
- const uriAttributes = new Set([
9
- 'background',
10
- 'cite',
11
- 'href',
12
- 'itemtype',
13
- 'longdesc',
14
- 'poster',
15
- 'src',
16
- 'xlink:href'
17
- ])
18
-
19
- const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i
20
-
21
- /**
22
- * A pattern that recognizes a commonly useful subset of URLs that are safe.
23
- *
24
- * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
25
- */
26
- const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i
27
-
28
- /**
29
- * A pattern that matches safe data URLs. Only matches image, video and audio types.
30
- *
31
- * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
32
- */
33
- const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i
34
-
35
- const allowedAttribute = (attribute, allowedAttributeList) => {
36
- const attributeName = attribute.nodeName.toLowerCase()
37
-
38
- if (allowedAttributeList.includes(attributeName)) {
39
- if (uriAttributes.has(attributeName)) {
40
- return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue))
41
- }
42
-
43
- return true
44
- }
45
-
46
- // Check if a regular expression validates the attribute.
47
- return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp)
48
- .some(regex => regex.test(attributeName))
49
- }
50
-
51
- export const DefaultAllowlist = {
52
- // Global attributes allowed on any supplied element below.
53
- '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
54
- a: ['target', 'href', 'title', 'rel'],
55
- area: [],
56
- b: [],
57
- br: [],
58
- col: [],
59
- code: [],
60
- div: [],
61
- em: [],
62
- hr: [],
63
- h1: [],
64
- h2: [],
65
- h3: [],
66
- h4: [],
67
- h5: [],
68
- h6: [],
69
- i: [],
70
- img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],
71
- li: [],
72
- ol: [],
73
- p: [],
74
- pre: [],
75
- s: [],
76
- small: [],
77
- span: [],
78
- sub: [],
79
- sup: [],
80
- strong: [],
81
- u: [],
82
- ul: []
83
- }
84
-
85
- export function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
86
- if (!unsafeHtml.length) {
87
- return unsafeHtml
88
- }
89
-
90
- if (sanitizeFunction && typeof sanitizeFunction === 'function') {
91
- return sanitizeFunction(unsafeHtml)
92
- }
93
-
94
- const domParser = new window.DOMParser()
95
- const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')
96
- const elements = [].concat(...createdDocument.body.querySelectorAll('*'))
97
-
98
- for (const element of elements) {
99
- const elementName = element.nodeName.toLowerCase()
100
-
101
- if (!Object.keys(allowList).includes(elementName)) {
102
- element.remove()
103
-
104
- continue
105
- }
106
-
107
- const attributeList = [].concat(...element.attributes)
108
- const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || [])
109
-
110
- for (const attribute of attributeList) {
111
- if (!allowedAttribute(attribute, allowedAttributes)) {
112
- element.removeAttribute(attribute.nodeName)
113
- }
114
- }
115
- }
116
-
117
- return createdDocument.body.innerHTML
118
- }
@@ -1,114 +0,0 @@
1
- /**
2
- * --------------------------------------------------------------------------
3
- * Bootstrap (v5.2.0): util/scrollBar.js
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
- * --------------------------------------------------------------------------
6
- */
7
-
8
- import SelectorEngine from '../dom/selector-engine'
9
- import Manipulator from '../dom/manipulator'
10
- import { isElement } from './index'
11
-
12
- /**
13
- * Constants
14
- */
15
-
16
- const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'
17
- const SELECTOR_STICKY_CONTENT = '.sticky-top'
18
- const PROPERTY_PADDING = 'padding-right'
19
- const PROPERTY_MARGIN = 'margin-right'
20
-
21
- /**
22
- * Class definition
23
- */
24
-
25
- class ScrollBarHelper {
26
- constructor() {
27
- this._element = document.body
28
- }
29
-
30
- // Public
31
- getWidth() {
32
- // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
33
- const documentWidth = document.documentElement.clientWidth
34
- return Math.abs(window.innerWidth - documentWidth)
35
- }
36
-
37
- hide() {
38
- const width = this.getWidth()
39
- this._disableOverFlow()
40
- // give padding to element to balance the hidden scrollbar width
41
- this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width)
42
- // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
43
- this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width)
44
- this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width)
45
- }
46
-
47
- reset() {
48
- this._resetElementAttributes(this._element, 'overflow')
49
- this._resetElementAttributes(this._element, PROPERTY_PADDING)
50
- this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING)
51
- this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN)
52
- }
53
-
54
- isOverflowing() {
55
- return this.getWidth() > 0
56
- }
57
-
58
- // Private
59
- _disableOverFlow() {
60
- this._saveInitialAttribute(this._element, 'overflow')
61
- this._element.style.overflow = 'hidden'
62
- }
63
-
64
- _setElementAttributes(selector, styleProperty, callback) {
65
- const scrollbarWidth = this.getWidth()
66
- const manipulationCallBack = element => {
67
- if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
68
- return
69
- }
70
-
71
- this._saveInitialAttribute(element, styleProperty)
72
- const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty)
73
- element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`)
74
- }
75
-
76
- this._applyManipulationCallback(selector, manipulationCallBack)
77
- }
78
-
79
- _saveInitialAttribute(element, styleProperty) {
80
- const actualValue = element.style.getPropertyValue(styleProperty)
81
- if (actualValue) {
82
- Manipulator.setDataAttribute(element, styleProperty, actualValue)
83
- }
84
- }
85
-
86
- _resetElementAttributes(selector, styleProperty) {
87
- const manipulationCallBack = element => {
88
- const value = Manipulator.getDataAttribute(element, styleProperty)
89
- // We only want to remove the property if the value is `null`; the value can also be zero
90
- if (value === null) {
91
- element.style.removeProperty(styleProperty)
92
- return
93
- }
94
-
95
- Manipulator.removeDataAttribute(element, styleProperty)
96
- element.style.setProperty(styleProperty, value)
97
- }
98
-
99
- this._applyManipulationCallback(selector, manipulationCallBack)
100
- }
101
-
102
- _applyManipulationCallback(selector, callBack) {
103
- if (isElement(selector)) {
104
- callBack(selector)
105
- return
106
- }
107
-
108
- for (const sel of SelectorEngine.find(selector, this._element)) {
109
- callBack(sel)
110
- }
111
- }
112
- }
113
-
114
- export default ScrollBarHelper
@@ -1,146 +0,0 @@
1
- /**
2
- * --------------------------------------------------------------------------
3
- * Bootstrap (v5.2.0): util/swipe.js
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
- * --------------------------------------------------------------------------
6
- */
7
-
8
- import Config from './config'
9
- import EventHandler from '../dom/event-handler'
10
- import { execute } from './index'
11
-
12
- /**
13
- * Constants
14
- */
15
-
16
- const NAME = 'swipe'
17
- const EVENT_KEY = '.bs.swipe'
18
- const EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`
19
- const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`
20
- const EVENT_TOUCHEND = `touchend${EVENT_KEY}`
21
- const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`
22
- const EVENT_POINTERUP = `pointerup${EVENT_KEY}`
23
- const POINTER_TYPE_TOUCH = 'touch'
24
- const POINTER_TYPE_PEN = 'pen'
25
- const CLASS_NAME_POINTER_EVENT = 'pointer-event'
26
- const SWIPE_THRESHOLD = 40
27
-
28
- const Default = {
29
- endCallback: null,
30
- leftCallback: null,
31
- rightCallback: null
32
- }
33
-
34
- const DefaultType = {
35
- endCallback: '(function|null)',
36
- leftCallback: '(function|null)',
37
- rightCallback: '(function|null)'
38
- }
39
-
40
- /**
41
- * Class definition
42
- */
43
-
44
- class Swipe extends Config {
45
- constructor(element, config) {
46
- super()
47
- this._element = element
48
-
49
- if (!element || !Swipe.isSupported()) {
50
- return
51
- }
52
-
53
- this._config = this._getConfig(config)
54
- this._deltaX = 0
55
- this._supportPointerEvents = Boolean(window.PointerEvent)
56
- this._initEvents()
57
- }
58
-
59
- // Getters
60
- static get Default() {
61
- return Default
62
- }
63
-
64
- static get DefaultType() {
65
- return DefaultType
66
- }
67
-
68
- static get NAME() {
69
- return NAME
70
- }
71
-
72
- // Public
73
- dispose() {
74
- EventHandler.off(this._element, EVENT_KEY)
75
- }
76
-
77
- // Private
78
- _start(event) {
79
- if (!this._supportPointerEvents) {
80
- this._deltaX = event.touches[0].clientX
81
-
82
- return
83
- }
84
-
85
- if (this._eventIsPointerPenTouch(event)) {
86
- this._deltaX = event.clientX
87
- }
88
- }
89
-
90
- _end(event) {
91
- if (this._eventIsPointerPenTouch(event)) {
92
- this._deltaX = event.clientX - this._deltaX
93
- }
94
-
95
- this._handleSwipe()
96
- execute(this._config.endCallback)
97
- }
98
-
99
- _move(event) {
100
- this._deltaX = event.touches && event.touches.length > 1 ?
101
- 0 :
102
- event.touches[0].clientX - this._deltaX
103
- }
104
-
105
- _handleSwipe() {
106
- const absDeltaX = Math.abs(this._deltaX)
107
-
108
- if (absDeltaX <= SWIPE_THRESHOLD) {
109
- return
110
- }
111
-
112
- const direction = absDeltaX / this._deltaX
113
-
114
- this._deltaX = 0
115
-
116
- if (!direction) {
117
- return
118
- }
119
-
120
- execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback)
121
- }
122
-
123
- _initEvents() {
124
- if (this._supportPointerEvents) {
125
- EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event))
126
- EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event))
127
-
128
- this._element.classList.add(CLASS_NAME_POINTER_EVENT)
129
- } else {
130
- EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event))
131
- EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event))
132
- EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event))
133
- }
134
- }
135
-
136
- _eventIsPointerPenTouch(event) {
137
- return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)
138
- }
139
-
140
- // Static
141
- static isSupported() {
142
- return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0
143
- }
144
- }
145
-
146
- export default Swipe
@@ -1,160 +0,0 @@
1
- /**
2
- * --------------------------------------------------------------------------
3
- * Bootstrap (v5.2.0): util/template-factory.js
4
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
- * --------------------------------------------------------------------------
6
- */
7
-
8
- import { DefaultAllowlist, sanitizeHtml } from './sanitizer'
9
- import { getElement, isElement } from '../util/index'
10
- import SelectorEngine from '../dom/selector-engine'
11
- import Config from './config'
12
-
13
- /**
14
- * Constants
15
- */
16
-
17
- const NAME = 'TemplateFactory'
18
-
19
- const Default = {
20
- allowList: DefaultAllowlist,
21
- content: {}, // { selector : text , selector2 : text2 , }
22
- extraClass: '',
23
- html: false,
24
- sanitize: true,
25
- sanitizeFn: null,
26
- template: '<div></div>'
27
- }
28
-
29
- const DefaultType = {
30
- allowList: 'object',
31
- content: 'object',
32
- extraClass: '(string|function)',
33
- html: 'boolean',
34
- sanitize: 'boolean',
35
- sanitizeFn: '(null|function)',
36
- template: 'string'
37
- }
38
-
39
- const DefaultContentType = {
40
- entry: '(string|element|function|null)',
41
- selector: '(string|element)'
42
- }
43
-
44
- /**
45
- * Class definition
46
- */
47
-
48
- class TemplateFactory extends Config {
49
- constructor(config) {
50
- super()
51
- this._config = this._getConfig(config)
52
- }
53
-
54
- // Getters
55
- static get Default() {
56
- return Default
57
- }
58
-
59
- static get DefaultType() {
60
- return DefaultType
61
- }
62
-
63
- static get NAME() {
64
- return NAME
65
- }
66
-
67
- // Public
68
- getContent() {
69
- return Object.values(this._config.content)
70
- .map(config => this._resolvePossibleFunction(config))
71
- .filter(Boolean)
72
- }
73
-
74
- hasContent() {
75
- return this.getContent().length > 0
76
- }
77
-
78
- changeContent(content) {
79
- this._checkContent(content)
80
- this._config.content = { ...this._config.content, ...content }
81
- return this
82
- }
83
-
84
- toHtml() {
85
- const templateWrapper = document.createElement('div')
86
- templateWrapper.innerHTML = this._maybeSanitize(this._config.template)
87
-
88
- for (const [selector, text] of Object.entries(this._config.content)) {
89
- this._setContent(templateWrapper, text, selector)
90
- }
91
-
92
- const template = templateWrapper.children[0]
93
- const extraClass = this._resolvePossibleFunction(this._config.extraClass)
94
-
95
- if (extraClass) {
96
- template.classList.add(...extraClass.split(' '))
97
- }
98
-
99
- return template
100
- }
101
-
102
- // Private
103
- _typeCheckConfig(config) {
104
- super._typeCheckConfig(config)
105
- this._checkContent(config.content)
106
- }
107
-
108
- _checkContent(arg) {
109
- for (const [selector, content] of Object.entries(arg)) {
110
- super._typeCheckConfig({ selector, entry: content }, DefaultContentType)
111
- }
112
- }
113
-
114
- _setContent(template, content, selector) {
115
- const templateElement = SelectorEngine.findOne(selector, template)
116
-
117
- if (!templateElement) {
118
- return
119
- }
120
-
121
- content = this._resolvePossibleFunction(content)
122
-
123
- if (!content) {
124
- templateElement.remove()
125
- return
126
- }
127
-
128
- if (isElement(content)) {
129
- this._putElementInTemplate(getElement(content), templateElement)
130
- return
131
- }
132
-
133
- if (this._config.html) {
134
- templateElement.innerHTML = this._maybeSanitize(content)
135
- return
136
- }
137
-
138
- templateElement.textContent = content
139
- }
140
-
141
- _maybeSanitize(arg) {
142
- return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg
143
- }
144
-
145
- _resolvePossibleFunction(arg) {
146
- return typeof arg === 'function' ? arg(this) : arg
147
- }
148
-
149
- _putElementInTemplate(element, templateElement) {
150
- if (this._config.html) {
151
- templateElement.innerHTML = ''
152
- templateElement.append(element)
153
- return
154
- }
155
-
156
- templateElement.textContent = element.textContent
157
- }
158
- }
159
-
160
- export default TemplateFactory