@paperless/core 0.1.0-alpha.2 → 0.1.0-alpha.200

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 (588) hide show
  1. package/CHANGELOG.md +2023 -0
  2. package/README.md +18 -1
  3. package/dist/assets/i18n/page-size-select.i18n.en.json +4 -0
  4. package/dist/assets/i18n/page-size-select.i18n.nl.json +4 -0
  5. package/dist/assets/i18n/table-footer.i18n.en.json +3 -0
  6. package/dist/assets/i18n/table-footer.i18n.nl.json +3 -0
  7. package/dist/assets/i18n/table-header.i18n.en.json +6 -0
  8. package/dist/assets/i18n/table-header.i18n.nl.json +6 -0
  9. package/dist/assets/icons/camera.svg +10 -0
  10. package/dist/assets/icons/checklist.svg +17 -0
  11. package/dist/assets/icons/folder.svg +19 -0
  12. package/dist/assets/icons/integration.svg +17 -0
  13. package/dist/assets/icons/menu.svg +25 -0
  14. package/dist/assets/icons/more.svg +18 -0
  15. package/dist/assets/icons/signout.svg +23 -0
  16. package/dist/assets/icons/switch.svg +20 -0
  17. package/dist/assets/icons/task.svg +17 -0
  18. package/dist/assets/icons/template.svg +17 -0
  19. package/dist/assets/illustrations/e-mail.svg +1 -0
  20. package/dist/assets/images/avatar/company-default.svg +12 -0
  21. package/dist/assets/images/avatar/user-default.svg +12 -0
  22. package/dist/assets/images/helper/helper-hover.svg +15 -0
  23. package/dist/assets/images/helper/helper.svg +15 -0
  24. package/dist/build/index.esm.js +1 -0
  25. package/dist/build/p-06899ffb.entry.js +1 -0
  26. package/dist/build/p-09ea2a1a.js +1 -0
  27. package/dist/build/p-150aadaf.entry.js +1 -0
  28. package/dist/build/p-15d13147.entry.js +1 -0
  29. package/dist/build/p-2bf44a1d.entry.js +1 -0
  30. package/dist/build/p-3025943a.entry.js +1 -0
  31. package/dist/build/p-3180c96e.entry.js +1 -0
  32. package/dist/build/p-3b243f16.entry.js +1 -0
  33. package/dist/build/p-3ef5e549.js +1 -0
  34. package/dist/build/p-41588819.entry.js +1 -0
  35. package/dist/build/p-44d46765.entry.js +1 -0
  36. package/dist/build/p-4588a510.entry.js +1 -0
  37. package/dist/build/p-4be40169.entry.js +1 -0
  38. package/dist/build/p-52ab1f62.entry.js +1 -0
  39. package/dist/build/p-57261ed2.entry.js +1 -0
  40. package/dist/build/p-58dd41be.entry.js +1 -0
  41. package/dist/build/p-5a71d6ae.entry.js +1 -0
  42. package/dist/build/p-600a2f21.entry.js +1 -0
  43. package/dist/build/p-61975c9a.entry.js +1 -0
  44. package/dist/build/p-6c60fd3d.js +1 -0
  45. package/dist/build/p-771a0ec7.entry.js +1 -0
  46. package/dist/build/p-7789b601.entry.js +1 -0
  47. package/dist/build/{p-feec8ec1.entry.js → p-78db3d3c.entry.js} +1 -1
  48. package/dist/build/p-7a77a930.entry.js +1 -0
  49. package/dist/build/p-7e9a866e.entry.js +1 -0
  50. package/dist/build/p-8262fe7e.entry.js +1 -0
  51. package/dist/build/p-8614bd10.entry.js +1 -0
  52. package/dist/build/p-86a6c56a.entry.js +1 -0
  53. package/dist/build/p-8a6728d5.js +1 -0
  54. package/dist/build/p-8f179b0d.entry.js +1 -0
  55. package/dist/build/p-8f92339e.entry.js +1 -0
  56. package/dist/build/p-964b9cb3.entry.js +1 -0
  57. package/dist/build/p-98332f25.entry.js +1 -0
  58. package/dist/build/p-a7086ffa.js +1 -0
  59. package/dist/build/p-ad147b1b.entry.js +1 -0
  60. package/dist/build/p-c11282d2.entry.js +1 -0
  61. package/dist/build/p-c4110c09.entry.js +1 -0
  62. package/dist/build/p-d0a9b97b.entry.js +1 -0
  63. package/dist/build/p-d17b038f.entry.js +1 -0
  64. package/dist/build/p-d9c1fe13.js +2 -0
  65. package/dist/build/paperless.css +331 -20
  66. package/dist/build/paperless.esm.js +1 -1
  67. package/dist/cjs/child-of-e472f812.js +9 -0
  68. package/dist/cjs/constants-a4459ec9.js +7 -0
  69. package/dist/cjs/{index-5b30cb95.js → index-cf92051a.js} +695 -14
  70. package/dist/cjs/index.cjs.js +12 -0
  71. package/dist/cjs/loader.cjs.js +3 -3
  72. package/dist/cjs/localization-9c989018.js +60 -0
  73. package/dist/cjs/object-get-by-path-6dc21ed5.js +12 -0
  74. package/dist/cjs/p-accordion.cjs.entry.js +42 -0
  75. package/dist/cjs/p-avatar-group.cjs.entry.js +19 -0
  76. package/dist/cjs/p-avatar.cjs.entry.js +46 -0
  77. package/dist/cjs/p-button_3.cjs.entry.js +1177 -0
  78. package/dist/cjs/p-card-body.cjs.entry.js +23 -0
  79. package/dist/cjs/p-card-container.cjs.entry.js +27 -0
  80. package/dist/cjs/p-card-header.cjs.entry.js +24 -0
  81. package/dist/cjs/p-content-slider.cjs.entry.js +221 -0
  82. package/dist/cjs/p-counter.cjs.entry.js +27 -0
  83. package/dist/cjs/p-divider.cjs.entry.js +22 -0
  84. package/dist/cjs/p-dropdown_3.cjs.entry.js +205 -0
  85. package/dist/cjs/p-helper_2.cjs.entry.js +160 -0
  86. package/dist/cjs/p-illustration.cjs.entry.js +12 -12
  87. package/dist/cjs/p-info-panel.cjs.entry.js +31 -0
  88. package/dist/cjs/p-input-group_4.cjs.entry.js +144 -0
  89. package/dist/cjs/p-layout.cjs.entry.js +23 -0
  90. package/dist/cjs/p-modal-backdrop_5.cjs.entry.js +101 -0
  91. package/dist/cjs/p-modal.cjs.entry.js +53 -0
  92. package/dist/cjs/p-navbar.cjs.entry.js +34 -0
  93. package/dist/cjs/p-navigation-item.cjs.entry.js +23 -0
  94. package/dist/cjs/p-page-size-select_3.cjs.entry.js +251 -0
  95. package/dist/cjs/p-profile.cjs.entry.js +49 -0
  96. package/dist/cjs/p-select.cjs.entry.js +179 -0
  97. package/dist/cjs/p-slider-indicator.cjs.entry.js +23 -0
  98. package/dist/cjs/p-status.cjs.entry.js +49 -0
  99. package/dist/cjs/p-stepper-item_2.cjs.entry.js +56 -0
  100. package/dist/cjs/p-stepper.cjs.entry.js +49 -0
  101. package/dist/cjs/p-tab-group.cjs.entry.js +19 -0
  102. package/dist/cjs/p-tab-item.cjs.entry.js +23 -0
  103. package/dist/cjs/p-table-cell_5.cjs.entry.js +1179 -0
  104. package/dist/cjs/p-table-column.cjs.entry.js +36 -0
  105. package/dist/cjs/p-table.cjs.entry.js +354 -0
  106. package/dist/cjs/p-toast-container.cjs.entry.js +33 -0
  107. package/dist/cjs/p-toast.cjs.entry.js +33 -0
  108. package/dist/cjs/paperless.cjs.js +3 -3
  109. package/dist/{esm/p-tooltip.entry.js → cjs/popper-e0c4ed4c.js} +2 -81
  110. package/dist/collection/assets/icons/camera.svg +10 -0
  111. package/dist/collection/assets/icons/checklist.svg +17 -0
  112. package/dist/collection/assets/icons/folder.svg +19 -0
  113. package/dist/collection/assets/icons/integration.svg +17 -0
  114. package/dist/collection/assets/icons/menu.svg +25 -0
  115. package/dist/collection/assets/icons/more.svg +18 -0
  116. package/dist/collection/assets/icons/signout.svg +23 -0
  117. package/dist/collection/assets/icons/switch.svg +20 -0
  118. package/dist/collection/assets/icons/task.svg +17 -0
  119. package/dist/collection/assets/icons/template.svg +17 -0
  120. package/dist/collection/assets/illustrations/e-mail.svg +1 -0
  121. package/dist/collection/assets/images/avatar/company-default.svg +12 -0
  122. package/dist/collection/assets/images/avatar/user-default.svg +12 -0
  123. package/dist/collection/assets/images/helper/helper-hover.svg +15 -0
  124. package/dist/collection/assets/images/helper/helper.svg +15 -0
  125. package/dist/collection/collection-manifest.json +50 -2
  126. package/dist/collection/components/atoms/avatar/avatar.component.css +27 -0
  127. package/dist/collection/components/atoms/avatar/avatar.component.js +119 -0
  128. package/dist/collection/components/atoms/avatar-group/avatar-group.component.css +18 -0
  129. package/dist/collection/components/atoms/avatar-group/avatar-group.component.js +36 -0
  130. package/dist/collection/components/atoms/button/button.component.css +106 -4
  131. package/dist/collection/components/atoms/button/button.component.js +363 -7
  132. package/dist/collection/components/atoms/card-body/card-body.component.css +9 -0
  133. package/dist/collection/components/atoms/card-body/card-body.component.js +40 -0
  134. package/dist/collection/components/atoms/card-container/card-container.component.css +17 -0
  135. package/dist/collection/components/atoms/card-container/card-container.component.js +63 -0
  136. package/dist/collection/components/atoms/card-header/card-header.component.css +17 -0
  137. package/dist/collection/components/atoms/card-header/card-header.component.js +61 -0
  138. package/dist/collection/components/atoms/counter/counter.component.css +30 -0
  139. package/dist/collection/components/atoms/counter/counter.component.js +63 -0
  140. package/dist/collection/components/atoms/divider/divider.component.css +10 -0
  141. package/dist/collection/components/atoms/divider/divider.component.js +20 -0
  142. package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.css +8 -0
  143. package/dist/collection/components/atoms/dropdown-menu-container/dropdown-menu-container.component.js +40 -0
  144. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.css +16 -0
  145. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.js +87 -0
  146. package/dist/collection/components/atoms/helper/helper.component.css +7 -0
  147. package/dist/collection/components/atoms/helper/helper.component.js +49 -0
  148. package/dist/collection/components/atoms/icon/icon.component.css +1 -0
  149. package/dist/collection/components/atoms/icon/icon.component.js +64 -20
  150. package/dist/collection/components/atoms/illustration/illustration.component.js +3 -10
  151. package/dist/collection/components/atoms/info-panel/info-panel.component.css +28 -0
  152. package/dist/collection/components/atoms/info-panel/info-panel.component.js +106 -0
  153. package/dist/collection/components/atoms/label/label.component.css +88 -0
  154. package/dist/collection/components/atoms/label/label.component.js +203 -0
  155. package/dist/collection/components/atoms/layout/layout.component.css +73 -0
  156. package/dist/collection/components/atoms/layout/layout.component.js +47 -0
  157. package/dist/collection/components/atoms/loader/loader.component.css +30 -9
  158. package/dist/collection/components/atoms/loader/loader.component.js +9 -5
  159. package/dist/collection/components/atoms/modal-backdrop/modal-backdrop.component.css +7 -0
  160. package/dist/collection/components/atoms/modal-backdrop/modal-backdrop.component.js +15 -0
  161. package/dist/collection/components/atoms/modal-body/modal-body.component.css +7 -0
  162. package/dist/collection/components/atoms/modal-body/modal-body.component.js +41 -0
  163. package/dist/collection/components/atoms/modal-container/modal-container.component.css +6 -0
  164. package/dist/collection/components/atoms/modal-container/modal-container.component.js +53 -0
  165. package/dist/collection/components/atoms/modal-footer/modal-footer.component.css +8 -0
  166. package/dist/collection/components/atoms/modal-footer/modal-footer.component.js +42 -0
  167. package/dist/collection/components/atoms/modal-header/modal-header.component.css +16 -0
  168. package/dist/collection/components/atoms/modal-header/modal-header.component.js +64 -0
  169. package/dist/collection/components/atoms/pagination-item/pagination-item.component.css +16 -0
  170. package/dist/collection/components/atoms/pagination-item/pagination-item.component.js +41 -0
  171. package/dist/collection/components/atoms/segment-container/segment-container.component.css +5 -0
  172. package/dist/collection/components/atoms/segment-container/segment-container.component.js +14 -0
  173. package/dist/collection/components/atoms/segment-item/segment-item.component.css +21 -0
  174. package/dist/collection/components/atoms/segment-item/segment-item.component.js +112 -0
  175. package/dist/collection/components/atoms/slider-indicator/slider-indicator.component.css +7 -0
  176. package/dist/collection/components/atoms/slider-indicator/slider-indicator.component.js +40 -0
  177. package/dist/collection/components/atoms/status/status.component.css +16 -0
  178. package/dist/collection/components/atoms/status/status.component.js +133 -0
  179. package/dist/collection/components/atoms/stepper-item/stepper-item.component.css +59 -0
  180. package/dist/collection/components/atoms/stepper-item/stepper-item.component.js +109 -0
  181. package/dist/collection/components/atoms/stepper-line/stepper-line.component.css +18 -0
  182. package/dist/collection/components/atoms/stepper-line/stepper-line.component.js +62 -0
  183. package/dist/collection/components/atoms/tab-group/tab-group.component.css +9 -0
  184. package/dist/collection/components/atoms/tab-group/tab-group.component.js +17 -0
  185. package/dist/collection/components/atoms/tab-item/tab-item.component.css +10 -0
  186. package/dist/collection/components/atoms/tab-item/tab-item.component.js +41 -0
  187. package/dist/collection/components/atoms/table-container/table-container.component.css +5 -0
  188. package/dist/collection/components/atoms/table-container/table-container.component.js +15 -0
  189. package/dist/collection/components/atoms/toast-container/toast-container.component.css +5 -0
  190. package/dist/collection/components/atoms/toast-container/toast-container.component.js +51 -0
  191. package/dist/collection/components/atoms/tooltip/tooltip.component.css +22 -13
  192. package/dist/collection/components/atoms/tooltip/tooltip.component.js +183 -40
  193. package/dist/collection/components/helpers/table-column/table-column.component.js +157 -0
  194. package/dist/collection/components/molecules/accordion/accordion.component.css +3 -0
  195. package/dist/collection/components/molecules/accordion/accordion.component.js +133 -0
  196. package/dist/collection/components/molecules/content-slider/content-slider.component.css +44 -0
  197. package/dist/collection/components/molecules/content-slider/content-slider.component.js +322 -0
  198. package/dist/collection/components/molecules/dropdown/dropdown.component.css +12 -0
  199. package/dist/collection/components/molecules/dropdown/dropdown.component.js +346 -0
  200. package/dist/collection/components/molecules/input-group/input-group.component.css +324 -0
  201. package/dist/collection/components/molecules/input-group/input-group.component.js +320 -0
  202. package/dist/collection/components/molecules/navigation-item/navigation-item.component.css +22 -0
  203. package/dist/collection/components/molecules/navigation-item/navigation-item.component.js +118 -0
  204. package/dist/collection/components/molecules/page-size-select/constants.js +2 -0
  205. package/dist/collection/components/molecules/page-size-select/page-size-select.component.js +217 -0
  206. package/dist/collection/components/molecules/pagination/pagination.component.css +3 -0
  207. package/dist/collection/components/molecules/pagination/pagination.component.js +264 -0
  208. package/dist/collection/components/molecules/profile/profile.component.css +60 -0
  209. package/dist/collection/components/molecules/profile/profile.component.js +95 -0
  210. package/dist/collection/components/molecules/select/select.component.css +6 -0
  211. package/dist/collection/components/molecules/select/select.component.js +554 -0
  212. package/dist/collection/components/molecules/stepper/stepper.component.css +12 -0
  213. package/dist/collection/components/molecules/stepper/stepper.component.js +84 -0
  214. package/dist/collection/components/molecules/table-cell/table-cell.component.css +3 -0
  215. package/dist/collection/components/molecules/table-cell/table-cell.component.js +258 -0
  216. package/dist/collection/components/molecules/table-footer/table-footer.component.css +30 -0
  217. package/dist/collection/components/molecules/table-footer/table-footer.component.js +268 -0
  218. package/dist/collection/components/molecules/table-header/table-header.component.css +16 -0
  219. package/dist/collection/components/molecules/table-header/table-header.component.js +369 -0
  220. package/dist/collection/components/molecules/table-row/table-row.component.css +21 -0
  221. package/dist/collection/components/molecules/table-row/table-row.component.js +67 -0
  222. package/dist/collection/components/molecules/toast/toast.component.css +23 -0
  223. package/dist/collection/components/molecules/toast/toast.component.js +192 -0
  224. package/dist/collection/components/organisms/modal/modal.component.js +180 -0
  225. package/dist/collection/components/organisms/navbar/navbar.component.css +59 -0
  226. package/dist/collection/components/organisms/navbar/navbar.component.js +99 -0
  227. package/dist/collection/components/organisms/table/table.component.css +3 -0
  228. package/dist/collection/components/organisms/table/table.component.js +1010 -0
  229. package/dist/collection/index.js +2 -1
  230. package/dist/collection/tailwind/animation.js +17 -0
  231. package/dist/collection/tailwind/backdrop-blur.js +3 -0
  232. package/dist/collection/tailwind/border-radius.js +8 -6
  233. package/dist/collection/tailwind/height.js +3 -0
  234. package/dist/collection/tailwind/screens.js +8 -0
  235. package/dist/collection/tailwind/shadows.js +9 -5
  236. package/dist/collection/tailwind/spacing.js +10 -0
  237. package/dist/collection/tailwind/typography.js +21 -0
  238. package/dist/collection/tailwind/width.js +18 -0
  239. package/dist/collection/tailwind/z-index.js +10 -0
  240. package/dist/collection/tailwind.config.js +28 -14
  241. package/dist/collection/types/index.js +2 -0
  242. package/dist/collection/types/table.js +1 -0
  243. package/dist/collection/types/tailwind.js +1 -0
  244. package/dist/collection/utils/child-of.js +5 -0
  245. package/dist/collection/utils/icons.js +20 -0
  246. package/dist/collection/utils/illustrations.js +2 -0
  247. package/dist/collection/utils/index.js +5 -0
  248. package/dist/collection/utils/localization.js +55 -0
  249. package/dist/collection/utils/object-get-by-path.js +8 -0
  250. package/dist/components/button.component.js +125 -0
  251. package/dist/components/counter.component.js +41 -0
  252. package/dist/components/divider.component.js +33 -0
  253. package/dist/components/dropdown-menu-container.component.js +35 -0
  254. package/dist/components/dropdown-menu-item.component.js +48 -0
  255. package/dist/components/dropdown.component.js +198 -0
  256. package/dist/components/helper.component.js +42 -0
  257. package/dist/{cjs/p-icon.cjs.entry.js → components/icon.component.js} +272 -18
  258. package/dist/components/index.d.ts +53 -5
  259. package/dist/components/index.js +51 -0
  260. package/dist/components/input-group.component.js +115 -0
  261. package/dist/components/label.component.js +69 -0
  262. package/dist/components/loader.component.js +78 -0
  263. package/dist/components/localization.js +57 -0
  264. package/dist/components/modal-backdrop.component.js +30 -0
  265. package/dist/components/modal-body.component.js +36 -0
  266. package/dist/components/modal-container.component.js +48 -0
  267. package/dist/components/modal-footer.component.js +42 -0
  268. package/dist/components/modal-header.component.js +43 -0
  269. package/dist/components/p-accordion.d.ts +11 -0
  270. package/dist/components/p-accordion.js +73 -0
  271. package/dist/components/p-avatar-group.d.ts +11 -0
  272. package/dist/components/p-avatar-group.js +34 -0
  273. package/dist/components/p-avatar.d.ts +11 -0
  274. package/dist/components/p-avatar.js +65 -0
  275. package/dist/components/p-button.js +1 -34
  276. package/dist/components/p-card-body.d.ts +11 -0
  277. package/dist/components/p-card-body.js +38 -0
  278. package/dist/components/p-card-container.d.ts +11 -0
  279. package/dist/components/p-card-container.js +44 -0
  280. package/dist/components/p-card-header.d.ts +11 -0
  281. package/dist/components/p-card-header.js +46 -0
  282. package/dist/components/p-content-slider.d.ts +11 -0
  283. package/dist/components/p-content-slider.js +250 -0
  284. package/dist/components/p-counter.d.ts +11 -0
  285. package/dist/components/p-counter.js +6 -0
  286. package/dist/components/p-divider.d.ts +11 -0
  287. package/dist/components/p-divider.js +6 -0
  288. package/dist/components/p-dropdown-menu-container.d.ts +11 -0
  289. package/dist/components/p-dropdown-menu-container.js +6 -0
  290. package/dist/components/p-dropdown-menu-item.d.ts +11 -0
  291. package/dist/components/p-dropdown-menu-item.js +6 -0
  292. package/dist/components/p-dropdown.d.ts +11 -0
  293. package/dist/components/p-dropdown.js +6 -0
  294. package/dist/components/p-helper.d.ts +11 -0
  295. package/dist/components/p-helper.js +6 -0
  296. package/dist/components/p-icon.js +1 -815
  297. package/dist/components/p-illustration.js +3 -4
  298. package/dist/components/p-info-panel.d.ts +11 -0
  299. package/dist/components/p-info-panel.js +56 -0
  300. package/dist/components/p-input-group.d.ts +11 -0
  301. package/dist/components/p-input-group.js +6 -0
  302. package/dist/components/p-label.d.ts +11 -0
  303. package/dist/components/p-label.js +6 -0
  304. package/dist/components/p-layout.d.ts +11 -0
  305. package/dist/components/p-layout.js +39 -0
  306. package/dist/components/p-loader.js +1 -72
  307. package/dist/components/p-modal-backdrop.d.ts +11 -0
  308. package/dist/components/p-modal-backdrop.js +6 -0
  309. package/dist/components/p-modal-body.d.ts +11 -0
  310. package/dist/components/p-modal-body.js +6 -0
  311. package/dist/components/p-modal-container.d.ts +11 -0
  312. package/dist/components/p-modal-container.js +6 -0
  313. package/dist/components/p-modal-footer.d.ts +11 -0
  314. package/dist/components/p-modal-footer.js +6 -0
  315. package/dist/components/p-modal-header.d.ts +11 -0
  316. package/dist/components/p-modal-header.js +6 -0
  317. package/dist/components/p-modal.d.ts +11 -0
  318. package/dist/components/p-modal.js +116 -0
  319. package/dist/components/p-navbar.d.ts +11 -0
  320. package/dist/components/p-navbar.js +70 -0
  321. package/dist/components/p-navigation-item.d.ts +11 -0
  322. package/dist/components/p-navigation-item.js +55 -0
  323. package/dist/components/p-page-size-select.d.ts +11 -0
  324. package/dist/components/p-page-size-select.js +6 -0
  325. package/dist/components/p-pagination-item.d.ts +11 -0
  326. package/dist/components/p-pagination-item.js +6 -0
  327. package/dist/components/p-pagination.d.ts +11 -0
  328. package/dist/components/p-pagination.js +6 -0
  329. package/dist/components/p-profile.d.ts +11 -0
  330. package/dist/components/p-profile.js +85 -0
  331. package/dist/components/p-segment-container.d.ts +11 -0
  332. package/dist/components/p-segment-container.js +6 -0
  333. package/dist/components/p-segment-item.d.ts +11 -0
  334. package/dist/components/p-segment-item.js +6 -0
  335. package/dist/components/p-select.d.ts +11 -0
  336. package/dist/components/p-select.js +261 -0
  337. package/dist/components/p-slider-indicator.d.ts +11 -0
  338. package/dist/components/p-slider-indicator.js +6 -0
  339. package/dist/components/p-status.d.ts +11 -0
  340. package/dist/components/p-status.js +73 -0
  341. package/dist/components/p-stepper-item.d.ts +11 -0
  342. package/dist/components/p-stepper-item.js +6 -0
  343. package/dist/components/p-stepper-line.d.ts +11 -0
  344. package/dist/components/p-stepper-line.js +6 -0
  345. package/dist/components/p-stepper.d.ts +11 -0
  346. package/dist/components/p-stepper.js +84 -0
  347. package/dist/components/p-tab-group.d.ts +11 -0
  348. package/dist/components/p-tab-group.js +39 -0
  349. package/dist/components/p-tab-item.d.ts +11 -0
  350. package/dist/components/p-tab-item.js +39 -0
  351. package/dist/components/p-table-cell.d.ts +11 -0
  352. package/dist/components/p-table-cell.js +6 -0
  353. package/dist/components/p-table-column.d.ts +11 -0
  354. package/dist/components/p-table-column.js +56 -0
  355. package/dist/components/p-table-container.d.ts +11 -0
  356. package/dist/components/p-table-container.js +6 -0
  357. package/dist/components/p-table-footer.d.ts +11 -0
  358. package/dist/components/p-table-footer.js +6 -0
  359. package/dist/components/p-table-header.d.ts +11 -0
  360. package/dist/components/p-table-header.js +6 -0
  361. package/dist/components/p-table-row.d.ts +11 -0
  362. package/dist/components/p-table-row.js +6 -0
  363. package/dist/components/p-table.d.ts +11 -0
  364. package/dist/components/p-table.js +520 -0
  365. package/dist/components/p-toast-container.d.ts +11 -0
  366. package/dist/components/p-toast-container.js +49 -0
  367. package/dist/components/p-toast.d.ts +11 -0
  368. package/dist/components/p-toast.js +73 -0
  369. package/dist/components/p-tooltip.js +1 -1886
  370. package/dist/components/page-size-select.component.js +123 -0
  371. package/dist/components/pagination-item.component.js +36 -0
  372. package/dist/components/pagination.component.js +202 -0
  373. package/dist/{cjs/p-tooltip.cjs.entry.js → components/popper.js} +1 -86
  374. package/dist/components/segment-container.component.js +29 -0
  375. package/dist/components/segment-item.component.js +51 -0
  376. package/dist/components/slider-indicator.component.js +36 -0
  377. package/dist/components/stepper-item.component.js +57 -0
  378. package/dist/components/stepper-line.component.js +41 -0
  379. package/dist/components/table-cell.component.js +143 -0
  380. package/dist/components/table-container.component.js +30 -0
  381. package/dist/components/table-footer.component.js +146 -0
  382. package/dist/components/table-header.component.js +1052 -0
  383. package/dist/components/table-row.component.js +49 -0
  384. package/dist/components/tooltip.component.js +161 -0
  385. package/dist/esm/child-of-90a8c4b5.js +7 -0
  386. package/dist/esm/constants-826f9460.js +4 -0
  387. package/dist/esm/{index-111a6307.js → index-7c99f044.js} +695 -15
  388. package/dist/esm/index.js +3 -1
  389. package/dist/esm/loader.js +3 -3
  390. package/dist/esm/localization-abb97f67.js +57 -0
  391. package/dist/esm/object-get-by-path-d6427a61.js +10 -0
  392. package/dist/esm/p-accordion.entry.js +38 -0
  393. package/dist/esm/p-avatar-group.entry.js +15 -0
  394. package/dist/esm/p-avatar.entry.js +42 -0
  395. package/dist/esm/{p-icon.entry.js → p-button_3.entry.js} +382 -9
  396. package/dist/esm/p-card-body.entry.js +19 -0
  397. package/dist/esm/p-card-container.entry.js +23 -0
  398. package/dist/esm/p-card-header.entry.js +20 -0
  399. package/dist/esm/p-content-slider.entry.js +217 -0
  400. package/dist/esm/p-counter.entry.js +23 -0
  401. package/dist/esm/p-divider.entry.js +18 -0
  402. package/dist/esm/p-dropdown_3.entry.js +199 -0
  403. package/dist/esm/p-helper_2.entry.js +155 -0
  404. package/dist/esm/p-illustration.entry.js +12 -12
  405. package/dist/esm/p-info-panel.entry.js +27 -0
  406. package/dist/esm/p-input-group_4.entry.js +137 -0
  407. package/dist/esm/p-layout.entry.js +19 -0
  408. package/dist/esm/p-modal-backdrop_5.entry.js +93 -0
  409. package/dist/esm/p-modal.entry.js +49 -0
  410. package/dist/esm/p-navbar.entry.js +30 -0
  411. package/dist/esm/p-navigation-item.entry.js +19 -0
  412. package/dist/esm/p-page-size-select_3.entry.js +245 -0
  413. package/dist/esm/p-profile.entry.js +45 -0
  414. package/dist/esm/p-select.entry.js +175 -0
  415. package/dist/esm/p-slider-indicator.entry.js +19 -0
  416. package/dist/esm/p-status.entry.js +45 -0
  417. package/dist/esm/p-stepper-item_2.entry.js +51 -0
  418. package/dist/esm/p-stepper.entry.js +45 -0
  419. package/dist/esm/p-tab-group.entry.js +15 -0
  420. package/dist/esm/p-tab-item.entry.js +19 -0
  421. package/dist/esm/p-table-cell_5.entry.js +1171 -0
  422. package/dist/esm/p-table-column.entry.js +32 -0
  423. package/dist/esm/p-table.entry.js +350 -0
  424. package/dist/esm/p-toast-container.entry.js +29 -0
  425. package/dist/esm/p-toast.entry.js +29 -0
  426. package/dist/esm/paperless.js +3 -3
  427. package/dist/esm/polyfills/core-js.js +0 -0
  428. package/dist/esm/polyfills/dom.js +0 -0
  429. package/dist/esm/polyfills/es5-html-element.js +0 -0
  430. package/dist/esm/polyfills/index.js +0 -0
  431. package/dist/esm/polyfills/system.js +0 -0
  432. package/dist/esm/popper-41c6f9cd.js +1788 -0
  433. package/dist/index.html +1 -1
  434. package/dist/paperless/index.esm.js +1 -0
  435. package/dist/paperless/p-06899ffb.entry.js +1 -0
  436. package/dist/paperless/p-09ea2a1a.js +1 -0
  437. package/dist/paperless/p-150aadaf.entry.js +1 -0
  438. package/dist/paperless/p-15d13147.entry.js +1 -0
  439. package/dist/paperless/p-2bf44a1d.entry.js +1 -0
  440. package/dist/paperless/p-3025943a.entry.js +1 -0
  441. package/dist/paperless/p-3180c96e.entry.js +1 -0
  442. package/dist/paperless/p-3b243f16.entry.js +1 -0
  443. package/dist/paperless/p-3ef5e549.js +1 -0
  444. package/dist/paperless/p-41588819.entry.js +1 -0
  445. package/dist/paperless/p-44d46765.entry.js +1 -0
  446. package/dist/paperless/p-4588a510.entry.js +1 -0
  447. package/dist/paperless/p-4be40169.entry.js +1 -0
  448. package/dist/paperless/p-52ab1f62.entry.js +1 -0
  449. package/dist/paperless/p-57261ed2.entry.js +1 -0
  450. package/dist/paperless/p-58dd41be.entry.js +1 -0
  451. package/dist/paperless/p-5a71d6ae.entry.js +1 -0
  452. package/dist/paperless/p-600a2f21.entry.js +1 -0
  453. package/dist/paperless/p-61975c9a.entry.js +1 -0
  454. package/dist/paperless/p-6c60fd3d.js +1 -0
  455. package/dist/paperless/p-771a0ec7.entry.js +1 -0
  456. package/dist/paperless/p-7789b601.entry.js +1 -0
  457. package/dist/paperless/{p-feec8ec1.entry.js → p-78db3d3c.entry.js} +1 -1
  458. package/dist/paperless/p-7a77a930.entry.js +1 -0
  459. package/dist/paperless/p-7e9a866e.entry.js +1 -0
  460. package/dist/paperless/p-8262fe7e.entry.js +1 -0
  461. package/dist/paperless/p-8614bd10.entry.js +1 -0
  462. package/dist/paperless/p-86a6c56a.entry.js +1 -0
  463. package/dist/paperless/p-8a6728d5.js +1 -0
  464. package/dist/paperless/p-8f179b0d.entry.js +1 -0
  465. package/dist/paperless/p-8f92339e.entry.js +1 -0
  466. package/dist/paperless/p-964b9cb3.entry.js +1 -0
  467. package/dist/paperless/p-98332f25.entry.js +1 -0
  468. package/dist/paperless/p-a7086ffa.js +1 -0
  469. package/dist/paperless/p-ad147b1b.entry.js +1 -0
  470. package/dist/paperless/p-c11282d2.entry.js +1 -0
  471. package/dist/paperless/p-c4110c09.entry.js +1 -0
  472. package/dist/paperless/p-d0a9b97b.entry.js +1 -0
  473. package/dist/paperless/p-d17b038f.entry.js +1 -0
  474. package/dist/paperless/p-d9c1fe13.js +2 -0
  475. package/dist/paperless/paperless.css +472 -26351
  476. package/dist/paperless/paperless.esm.js +1 -1
  477. package/dist/style/_fonts.scss +70 -0
  478. package/dist/style/_reset.scss +31 -0
  479. package/dist/style/_tailwind.scss +3 -0
  480. package/dist/style/_typograhpy.scss +29 -0
  481. package/dist/style/_variables.scss +2 -0
  482. package/dist/style/form/_checkbox.scss +62 -0
  483. package/dist/style/form/_input.scss +22 -0
  484. package/dist/style/form/_mixins.scss +107 -0
  485. package/dist/style/form/_radio.scss +58 -0
  486. package/dist/style/form/_textarea.scss +18 -0
  487. package/dist/style/form/index.scss +4 -0
  488. package/dist/style/paperless.scss +10 -0
  489. package/dist/sw.js +2 -282
  490. package/dist/sw.js.map +1 -0
  491. package/dist/tailwind/animation.js +17 -0
  492. package/dist/tailwind/backdrop-blur.js +3 -0
  493. package/dist/tailwind/border-radius.js +10 -0
  494. package/dist/tailwind/colors.js +52 -0
  495. package/dist/tailwind/height.js +3 -0
  496. package/dist/tailwind/rotate.js +8 -0
  497. package/dist/tailwind/scale.js +3 -0
  498. package/dist/tailwind/screens.js +8 -0
  499. package/dist/tailwind/shadows.js +11 -0
  500. package/dist/tailwind/spacing.js +10 -0
  501. package/dist/tailwind/typography.js +21 -0
  502. package/dist/tailwind/width.js +18 -0
  503. package/dist/tailwind/z-index.js +10 -0
  504. package/dist/tailwind.config.js +28 -14
  505. package/dist/types/components/atoms/avatar/avatar.component.d.ts +23 -0
  506. package/dist/types/components/atoms/avatar-group/avatar-group.component.d.ts +7 -0
  507. package/dist/types/components/atoms/button/button.component.d.ts +70 -1
  508. package/dist/types/components/atoms/card-body/card-body.component.d.ts +7 -0
  509. package/dist/types/components/atoms/card-container/card-container.component.d.ts +11 -0
  510. package/dist/types/components/atoms/card-header/card-header.component.d.ts +11 -0
  511. package/dist/types/components/atoms/counter/counter.component.d.ts +11 -0
  512. package/dist/types/components/atoms/divider/divider.component.d.ts +7 -0
  513. package/dist/types/components/atoms/dropdown-menu-container/dropdown-menu-container.component.d.ts +7 -0
  514. package/dist/types/components/atoms/dropdown-menu-item/dropdown-menu-item.component.d.ts +16 -0
  515. package/dist/types/components/atoms/helper/helper.component.d.ts +8 -0
  516. package/dist/types/components/atoms/icon/icon.component.d.ts +3 -3
  517. package/dist/types/components/atoms/info-panel/info-panel.component.d.ts +24 -0
  518. package/dist/types/components/atoms/label/label.component.d.ts +37 -0
  519. package/dist/types/components/atoms/layout/layout.component.d.ts +7 -0
  520. package/dist/types/components/atoms/loader/loader.component.d.ts +1 -1
  521. package/dist/types/components/atoms/modal-backdrop/modal-backdrop.component.d.ts +3 -0
  522. package/dist/types/components/atoms/modal-body/modal-body.component.d.ts +7 -0
  523. package/dist/types/components/atoms/modal-container/modal-container.component.d.ts +7 -0
  524. package/dist/types/components/atoms/modal-footer/modal-footer.component.d.ts +7 -0
  525. package/dist/types/components/atoms/modal-header/modal-header.component.d.ts +12 -0
  526. package/dist/types/components/atoms/pagination-item/pagination-item.component.d.ts +7 -0
  527. package/dist/types/components/atoms/segment-container/segment-container.component.d.ts +3 -0
  528. package/dist/types/components/atoms/segment-item/segment-item.component.d.ts +22 -0
  529. package/dist/types/components/atoms/slider-indicator/slider-indicator.component.d.ts +7 -0
  530. package/dist/types/components/atoms/status/status.component.d.ts +23 -0
  531. package/dist/types/components/atoms/stepper-item/stepper-item.component.d.ts +19 -0
  532. package/dist/types/components/atoms/stepper-line/stepper-line.component.d.ts +11 -0
  533. package/dist/types/components/atoms/tab-group/tab-group.component.d.ts +3 -0
  534. package/dist/types/components/atoms/tab-item/tab-item.component.d.ts +7 -0
  535. package/dist/types/components/atoms/table-container/table-container.component.d.ts +3 -0
  536. package/dist/types/components/atoms/toast-container/toast-container.component.d.ts +10 -0
  537. package/dist/types/components/atoms/tooltip/tooltip.component.d.ts +30 -9
  538. package/dist/types/components/helpers/table-column/table-column.component.d.ts +34 -0
  539. package/dist/types/components/molecules/accordion/accordion.component.d.ts +25 -0
  540. package/dist/types/components/molecules/content-slider/content-slider.component.d.ts +53 -0
  541. package/dist/types/components/molecules/dropdown/dropdown.component.d.ts +61 -0
  542. package/dist/types/components/molecules/input-group/input-group.component.d.ts +63 -0
  543. package/dist/types/components/molecules/navigation-item/navigation-item.component.d.ts +24 -0
  544. package/dist/types/components/molecules/page-size-select/constants.d.ts +2 -0
  545. package/dist/types/components/molecules/page-size-select/page-size-select.component.d.ts +48 -0
  546. package/dist/types/components/molecules/pagination/pagination.component.d.ts +35 -0
  547. package/dist/types/components/molecules/profile/profile.component.d.ts +20 -0
  548. package/dist/types/components/molecules/select/select.component.d.ts +112 -0
  549. package/dist/types/components/molecules/stepper/stepper.component.d.ts +18 -0
  550. package/dist/types/components/molecules/table-cell/table-cell.component.d.ts +42 -0
  551. package/dist/types/components/molecules/table-footer/table-footer.component.d.ts +59 -0
  552. package/dist/types/components/molecules/table-header/table-header.component.d.ts +80 -0
  553. package/dist/types/components/molecules/table-row/table-row.component.d.ts +11 -0
  554. package/dist/types/components/molecules/toast/toast.component.d.ts +38 -0
  555. package/dist/types/components/organisms/modal/modal.component.d.ts +39 -0
  556. package/dist/types/components/organisms/navbar/navbar.component.d.ts +14 -0
  557. package/dist/types/components/organisms/table/table.component.d.ts +190 -0
  558. package/dist/types/components.d.ts +2595 -81
  559. package/dist/types/index.d.ts +2 -0
  560. package/dist/types/types/index.d.ts +2 -0
  561. package/dist/types/types/table.d.ts +26 -0
  562. package/dist/types/types/tailwind.d.ts +2 -0
  563. package/dist/types/utils/child-of.d.ts +1 -0
  564. package/dist/types/utils/icons.d.ts +10 -0
  565. package/dist/types/utils/illustrations.d.ts +1 -0
  566. package/dist/types/utils/index.d.ts +5 -0
  567. package/dist/types/utils/localization.d.ts +2 -0
  568. package/dist/types/utils/object-get-by-path.d.ts +1 -0
  569. package/dist/workbox-5fe694da.js +2 -0
  570. package/dist/workbox-5fe694da.js.map +1 -0
  571. package/package.json +61 -61
  572. package/dist/build/p-1d13a9d2.entry.js +0 -1
  573. package/dist/build/p-208c1f28.entry.js +0 -1
  574. package/dist/build/p-98d07776.js +0 -2
  575. package/dist/build/p-bbd1d3df.entry.js +0 -1
  576. package/dist/build/p-cd525dcc.entry.js +0 -1
  577. package/dist/cjs/p-button.cjs.entry.js +0 -23
  578. package/dist/cjs/p-loader.cjs.entry.js +0 -57
  579. package/dist/collection/tailwind/grid.js +0 -6
  580. package/dist/collection/utils/utils.js +0 -3
  581. package/dist/esm/p-button.entry.js +0 -19
  582. package/dist/esm/p-loader.entry.js +0 -53
  583. package/dist/paperless/p-1d13a9d2.entry.js +0 -1
  584. package/dist/paperless/p-208c1f28.entry.js +0 -1
  585. package/dist/paperless/p-98d07776.js +0 -2
  586. package/dist/paperless/p-bbd1d3df.entry.js +0 -1
  587. package/dist/paperless/p-cd525dcc.entry.js +0 -1
  588. package/dist/types/utils/utils.d.ts +0 -1
@@ -1,7 +1,11 @@
1
1
  const NAMESPACE = 'paperless';
2
2
 
3
3
  let scopeId;
4
+ let contentRef;
4
5
  let hostTagName;
6
+ let useNativeShadowDom = false;
7
+ let checkSlotFallbackVisibility = false;
8
+ let checkSlotRelocate = false;
5
9
  let isSvgMode = false;
6
10
  let queuePending = false;
7
11
  const win = typeof window !== 'undefined' ? window : {};
@@ -16,10 +20,10 @@ const plt = {
16
20
  ce: (eventName, opts) => new CustomEvent(eventName, opts),
17
21
  };
18
22
  const promiseResolve = (v) => Promise.resolve(v);
19
- const supportsConstructibleStylesheets = /*@__PURE__*/ (() => {
23
+ const supportsConstructableStylesheets = /*@__PURE__*/ (() => {
20
24
  try {
21
25
  new CSSStyleSheet();
22
- return typeof new CSSStyleSheet().replace === 'function';
26
+ return typeof new CSSStyleSheet().replaceSync === 'function';
23
27
  }
24
28
  catch (e) { }
25
29
  return false;
@@ -28,7 +32,7 @@ const supportsConstructibleStylesheets = /*@__PURE__*/ (() => {
28
32
  const addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
29
33
  if (listeners) {
30
34
  listeners.map(([flags, name, method]) => {
31
- const target = elm;
35
+ const target = getHostListenerTarget(elm, flags) ;
32
36
  const handler = hostListenerProxy(hostRef, method);
33
37
  const opts = hostListenerOpts(flags);
34
38
  plt.ael(target, name, handler, opts);
@@ -52,6 +56,15 @@ const hostListenerProxy = (hostRef, methodName) => (ev) => {
52
56
  consoleError(e);
53
57
  }
54
58
  };
59
+ const getHostListenerTarget = (elm, flags) => {
60
+ if (flags & 4 /* TargetDocument */)
61
+ return doc;
62
+ if (flags & 8 /* TargetWindow */)
63
+ return win;
64
+ if (flags & 16 /* TargetBody */)
65
+ return doc.body;
66
+ return elm;
67
+ };
55
68
  // prettier-ignore
56
69
  const hostListenerOpts = (flags) => (flags & 2 /* Capture */) !== 0;
57
70
  const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
@@ -72,9 +85,14 @@ const uniqueTime = (key, measureText) => {
72
85
  const rootAppliedStyles = new WeakMap();
73
86
  const registerStyle = (scopeId, cssText, allowCS) => {
74
87
  let style = styles.get(scopeId);
75
- if (supportsConstructibleStylesheets && allowCS) {
88
+ if (supportsConstructableStylesheets && allowCS) {
76
89
  style = (style || new CSSStyleSheet());
77
- style.replace(cssText);
90
+ if (typeof style === 'string') {
91
+ style = cssText;
92
+ }
93
+ else {
94
+ style.replaceSync(cssText);
95
+ }
78
96
  }
79
97
  else {
80
98
  style = cssText;
@@ -161,6 +179,7 @@ const isComplexType = (o) => {
161
179
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, ...children: d.ChildType[]): d.VNode;
162
180
  const h = (nodeName, vnodeData, ...children) => {
163
181
  let child = null;
182
+ let slotName = null;
164
183
  let simple = false;
165
184
  let lastSimple = false;
166
185
  const vNodeChildren = [];
@@ -188,6 +207,9 @@ const h = (nodeName, vnodeData, ...children) => {
188
207
  };
189
208
  walk(children);
190
209
  if (vnodeData) {
210
+ if (vnodeData.name) {
211
+ slotName = vnodeData.name;
212
+ }
191
213
  {
192
214
  const classData = vnodeData.className || vnodeData.class;
193
215
  if (classData) {
@@ -200,11 +222,18 @@ const h = (nodeName, vnodeData, ...children) => {
200
222
  }
201
223
  }
202
224
  }
225
+ if (typeof nodeName === 'function') {
226
+ // nodeName is a functional component
227
+ return nodeName(vnodeData === null ? {} : vnodeData, vNodeChildren, vdomFnUtils);
228
+ }
203
229
  const vnode = newVNode(nodeName, null);
204
230
  vnode.$attrs$ = vnodeData;
205
231
  if (vNodeChildren.length > 0) {
206
232
  vnode.$children$ = vNodeChildren;
207
233
  }
234
+ {
235
+ vnode.$name$ = slotName;
236
+ }
208
237
  return vnode;
209
238
  };
210
239
  const newVNode = (tag, text) => {
@@ -218,10 +247,43 @@ const newVNode = (tag, text) => {
218
247
  {
219
248
  vnode.$attrs$ = null;
220
249
  }
250
+ {
251
+ vnode.$name$ = null;
252
+ }
221
253
  return vnode;
222
254
  };
223
255
  const Host = {};
224
256
  const isHost = (node) => node && node.$tag$ === Host;
257
+ const vdomFnUtils = {
258
+ forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
259
+ map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate),
260
+ };
261
+ const convertToPublic = (node) => ({
262
+ vattrs: node.$attrs$,
263
+ vchildren: node.$children$,
264
+ vkey: node.$key$,
265
+ vname: node.$name$,
266
+ vtag: node.$tag$,
267
+ vtext: node.$text$,
268
+ });
269
+ const convertToPrivate = (node) => {
270
+ if (typeof node.vtag === 'function') {
271
+ const vnodeData = Object.assign({}, node.vattrs);
272
+ if (node.vkey) {
273
+ vnodeData.key = node.vkey;
274
+ }
275
+ if (node.vname) {
276
+ vnodeData.name = node.vname;
277
+ }
278
+ return h(node.vtag, vnodeData, ...(node.vchildren || []));
279
+ }
280
+ const vnode = newVNode(node.vtag, node.vtext);
281
+ vnode.$attrs$ = node.vattrs;
282
+ vnode.$children$ = node.vchildren;
283
+ vnode.$key$ = node.vkey;
284
+ vnode.$name$ = node.vname;
285
+ return vnode;
286
+ };
225
287
  /**
226
288
  * Production setAccessor() function based on Preact by
227
289
  * Jason Miller (@developit)
@@ -233,7 +295,7 @@ const isHost = (node) => node && node.$tag$ === Host;
233
295
  const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
234
296
  if (oldValue !== newValue) {
235
297
  let isProp = isMemberInElement(elm, memberName);
236
- memberName.toLowerCase();
298
+ let ln = memberName.toLowerCase();
237
299
  if (memberName === 'class') {
238
300
  const classList = elm.classList;
239
301
  const oldClasses = parseClassList(oldValue);
@@ -241,12 +303,76 @@ const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
241
303
  classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));
242
304
  classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));
243
305
  }
306
+ else if (memberName === 'style') {
307
+ // update style attribute, css properties and values
308
+ {
309
+ for (const prop in oldValue) {
310
+ if (!newValue || newValue[prop] == null) {
311
+ if (prop.includes('-')) {
312
+ elm.style.removeProperty(prop);
313
+ }
314
+ else {
315
+ elm.style[prop] = '';
316
+ }
317
+ }
318
+ }
319
+ }
320
+ for (const prop in newValue) {
321
+ if (!oldValue || newValue[prop] !== oldValue[prop]) {
322
+ if (prop.includes('-')) {
323
+ elm.style.setProperty(prop, newValue[prop]);
324
+ }
325
+ else {
326
+ elm.style[prop] = newValue[prop];
327
+ }
328
+ }
329
+ }
330
+ }
244
331
  else if (memberName === 'ref') {
245
332
  // minifier will clean this up
246
333
  if (newValue) {
247
334
  newValue(elm);
248
335
  }
249
336
  }
337
+ else if ((!isProp ) &&
338
+ memberName[0] === 'o' &&
339
+ memberName[1] === 'n') {
340
+ // Event Handlers
341
+ // so if the member name starts with "on" and the 3rd characters is
342
+ // a capital letter, and it's not already a member on the element,
343
+ // then we're assuming it's an event listener
344
+ if (memberName[2] === '-') {
345
+ // on- prefixed events
346
+ // allows to be explicit about the dom event to listen without any magic
347
+ // under the hood:
348
+ // <my-cmp on-click> // listens for "click"
349
+ // <my-cmp on-Click> // listens for "Click"
350
+ // <my-cmp on-ionChange> // listens for "ionChange"
351
+ // <my-cmp on-EVENTS> // listens for "EVENTS"
352
+ memberName = memberName.slice(3);
353
+ }
354
+ else if (isMemberInElement(win, ln)) {
355
+ // standard event
356
+ // the JSX attribute could have been "onMouseOver" and the
357
+ // member name "onmouseover" is on the window's prototype
358
+ // so let's add the listener "mouseover", which is all lowercased
359
+ memberName = ln.slice(2);
360
+ }
361
+ else {
362
+ // custom event
363
+ // the JSX attribute could have been "onMyCustomEvent"
364
+ // so let's trim off the "on" prefix and lowercase the first character
365
+ // and add the listener "myCustomEvent"
366
+ // except for the first character, we keep the event name case
367
+ memberName = ln[2] + memberName.slice(3);
368
+ }
369
+ if (oldValue) {
370
+ plt.rel(elm, memberName, oldValue, false);
371
+ }
372
+ if (newValue) {
373
+ plt.ael(elm, memberName, newValue, false);
374
+ }
375
+ }
250
376
  else {
251
377
  // Set property if it exists and it's not a SVG
252
378
  const isComplex = isComplexType(newValue);
@@ -314,13 +440,36 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
314
440
  let i = 0;
315
441
  let elm;
316
442
  let childNode;
443
+ let oldVNode;
444
+ if (!useNativeShadowDom) {
445
+ // remember for later we need to check to relocate nodes
446
+ checkSlotRelocate = true;
447
+ if (newVNode.$tag$ === 'slot') {
448
+ if (scopeId) {
449
+ // scoped css needs to add its scoped id to the parent element
450
+ parentElm.classList.add(scopeId + '-s');
451
+ }
452
+ newVNode.$flags$ |= newVNode.$children$
453
+ ? // slot element has fallback content
454
+ 2 /* isSlotFallback */
455
+ : // slot element does not have fallback content
456
+ 1 /* isSlotReference */;
457
+ }
458
+ }
317
459
  if (newVNode.$text$ !== null) {
318
460
  // create text node
319
461
  elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
320
462
  }
463
+ else if (newVNode.$flags$ & 1 /* isSlotReference */) {
464
+ // create a slot reference node
465
+ elm = newVNode.$elm$ =
466
+ doc.createTextNode('');
467
+ }
321
468
  else {
322
469
  // create element
323
- elm = newVNode.$elm$ = (doc.createElement(newVNode.$tag$));
470
+ elm = newVNode.$elm$ = (doc.createElement(newVNode.$flags$ & 2 /* isSlotFallback */
471
+ ? 'slot-fb'
472
+ : newVNode.$tag$));
324
473
  // add css classes, attrs, props, listeners, etc.
325
474
  {
326
475
  updateElement(null, newVNode, isSvgMode);
@@ -333,7 +482,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
333
482
  if (newVNode.$children$) {
334
483
  for (i = 0; i < newVNode.$children$.length; ++i) {
335
484
  // create the node
336
- childNode = createElm(oldParentVNode, newVNode, i);
485
+ childNode = createElm(oldParentVNode, newVNode, i, elm);
337
486
  // return node could have been null
338
487
  if (childNode) {
339
488
  // append our new node
@@ -342,20 +491,62 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
342
491
  }
343
492
  }
344
493
  }
494
+ {
495
+ elm['s-hn'] = hostTagName;
496
+ if (newVNode.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {
497
+ // remember the content reference comment
498
+ elm['s-sr'] = true;
499
+ // remember the content reference comment
500
+ elm['s-cr'] = contentRef;
501
+ // remember the slot name, or empty string for default slot
502
+ elm['s-sn'] = newVNode.$name$ || '';
503
+ // check if we've got an old vnode for this slot
504
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
505
+ if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
506
+ // we've got an old slot vnode and the wrapper is being replaced
507
+ // so let's move the old slot content back to it's original location
508
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
509
+ }
510
+ }
511
+ }
345
512
  return elm;
346
513
  };
514
+ const putBackInOriginalLocation = (parentElm, recursive) => {
515
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
516
+ const oldSlotChildNodes = parentElm.childNodes;
517
+ for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
518
+ const childNode = oldSlotChildNodes[i];
519
+ if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) {
520
+ // // this child node in the old element is from another component
521
+ // // remove this node from the old slot's parent
522
+ // childNode.remove();
523
+ // and relocate it back to it's original location
524
+ parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
525
+ // remove the old original location comment entirely
526
+ // later on the patch function will know what to do
527
+ // and move this to the correct spot in need be
528
+ childNode['s-ol'].remove();
529
+ childNode['s-ol'] = undefined;
530
+ checkSlotRelocate = true;
531
+ }
532
+ if (recursive) {
533
+ putBackInOriginalLocation(childNode, recursive);
534
+ }
535
+ }
536
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
537
+ };
347
538
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
348
- let containerElm = (parentElm);
539
+ let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
349
540
  let childNode;
350
541
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
351
542
  containerElm = containerElm.shadowRoot;
352
543
  }
353
544
  for (; startIdx <= endIdx; ++startIdx) {
354
545
  if (vnodes[startIdx]) {
355
- childNode = createElm(null, parentVNode, startIdx);
546
+ childNode = createElm(null, parentVNode, startIdx, parentElm);
356
547
  if (childNode) {
357
548
  vnodes[startIdx].$elm$ = childNode;
358
- containerElm.insertBefore(childNode, before);
549
+ containerElm.insertBefore(childNode, referenceNode(before) );
359
550
  }
360
551
  }
361
552
  }
@@ -365,6 +556,20 @@ const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
365
556
  if ((vnode = vnodes[startIdx])) {
366
557
  elm = vnode.$elm$;
367
558
  callNodeRefs(vnode);
559
+ {
560
+ // we're removing this element
561
+ // so it's possible we need to show slot fallback content now
562
+ checkSlotFallbackVisibility = true;
563
+ if (elm['s-ol']) {
564
+ // remove the original location comment
565
+ elm['s-ol'].remove();
566
+ }
567
+ else {
568
+ // it's possible that child nodes of the node
569
+ // that's being removed are slot nodes
570
+ putBackInOriginalLocation(elm, true);
571
+ }
572
+ }
368
573
  // remove the vnode's element from the dom
369
574
  elm.remove();
370
575
  }
@@ -405,12 +610,20 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
405
610
  newEndVnode = newCh[--newEndIdx];
406
611
  }
407
612
  else if (isSameVnode(oldStartVnode, newEndVnode)) {
613
+ // Vnode moved right
614
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
615
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
616
+ }
408
617
  patch(oldStartVnode, newEndVnode);
409
618
  parentElm.insertBefore(oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
410
619
  oldStartVnode = oldCh[++oldStartIdx];
411
620
  newEndVnode = newCh[--newEndIdx];
412
621
  }
413
622
  else if (isSameVnode(oldEndVnode, newStartVnode)) {
623
+ // Vnode moved left
624
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
625
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
626
+ }
414
627
  patch(oldEndVnode, newStartVnode);
415
628
  parentElm.insertBefore(oldEndVnode.$elm$, oldStartVnode.$elm$);
416
629
  oldEndVnode = oldCh[--oldEndIdx];
@@ -419,12 +632,12 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
419
632
  else {
420
633
  {
421
634
  // new element
422
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx);
635
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm);
423
636
  newStartVnode = newCh[++newStartIdx];
424
637
  }
425
638
  if (node) {
426
639
  {
427
- oldStartVnode.$elm$.parentNode.insertBefore(node, oldStartVnode.$elm$);
640
+ parentReferenceNode(oldStartVnode.$elm$).insertBefore(node, referenceNode(oldStartVnode.$elm$));
428
641
  }
429
642
  }
430
643
  }
@@ -440,16 +653,28 @@ const isSameVnode = (vnode1, vnode2) => {
440
653
  // compare if two vnode to see if they're "technically" the same
441
654
  // need to have the same element tag, and same key to be the same
442
655
  if (vnode1.$tag$ === vnode2.$tag$) {
656
+ if (vnode1.$tag$ === 'slot') {
657
+ return vnode1.$name$ === vnode2.$name$;
658
+ }
443
659
  return true;
444
660
  }
445
661
  return false;
446
662
  };
663
+ const referenceNode = (node) => {
664
+ // this node was relocated to a new location in the dom
665
+ // because of some other component's slot
666
+ // but we still have an html comment in place of where
667
+ // it's original location was according to it's original vdom
668
+ return (node && node['s-ol']) || node;
669
+ };
670
+ const parentReferenceNode = (node) => (node['s-ol'] ? node['s-ol'] : node).parentNode;
447
671
  const patch = (oldVNode, newVNode) => {
448
672
  const elm = (newVNode.$elm$ = oldVNode.$elm$);
449
673
  const oldChildren = oldVNode.$children$;
450
674
  const newChildren = newVNode.$children$;
451
675
  const tag = newVNode.$tag$;
452
676
  const text = newVNode.$text$;
677
+ let defaultHolder;
453
678
  if (text === null) {
454
679
  // element node
455
680
  {
@@ -480,12 +705,147 @@ const patch = (oldVNode, newVNode) => {
480
705
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
481
706
  }
482
707
  }
708
+ else if ((defaultHolder = elm['s-cr'])) {
709
+ // this element has slotted content
710
+ defaultHolder.parentNode.textContent = text;
711
+ }
483
712
  else if (oldVNode.$text$ !== text) {
484
713
  // update the text content for the text only vnode
485
714
  // and also only if the text is different than before
486
715
  elm.data = text;
487
716
  }
488
717
  };
718
+ const updateFallbackSlotVisibility = (elm) => {
719
+ // tslint:disable-next-line: prefer-const
720
+ const childNodes = elm.childNodes;
721
+ let childNode;
722
+ let i;
723
+ let ilen;
724
+ let j;
725
+ let slotNameAttr;
726
+ let nodeType;
727
+ for (i = 0, ilen = childNodes.length; i < ilen; i++) {
728
+ childNode = childNodes[i];
729
+ if (childNode.nodeType === 1 /* ElementNode */) {
730
+ if (childNode['s-sr']) {
731
+ // this is a slot fallback node
732
+ // get the slot name for this slot reference node
733
+ slotNameAttr = childNode['s-sn'];
734
+ // by default always show a fallback slot node
735
+ // then hide it if there are other slots in the light dom
736
+ childNode.hidden = false;
737
+ for (j = 0; j < ilen; j++) {
738
+ nodeType = childNodes[j].nodeType;
739
+ if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
740
+ // this sibling node is from a different component OR is a named fallback slot node
741
+ if (nodeType === 1 /* ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
742
+ childNode.hidden = true;
743
+ break;
744
+ }
745
+ }
746
+ else {
747
+ // this is a default fallback slot node
748
+ // any element or text node (with content)
749
+ // should hide the default fallback slot node
750
+ if (nodeType === 1 /* ElementNode */ ||
751
+ (nodeType === 3 /* TextNode */ && childNodes[j].textContent.trim() !== '')) {
752
+ childNode.hidden = true;
753
+ break;
754
+ }
755
+ }
756
+ }
757
+ }
758
+ // keep drilling down
759
+ updateFallbackSlotVisibility(childNode);
760
+ }
761
+ }
762
+ };
763
+ const relocateNodes = [];
764
+ const relocateSlotContent = (elm) => {
765
+ // tslint:disable-next-line: prefer-const
766
+ let childNode;
767
+ let node;
768
+ let hostContentNodes;
769
+ let slotNameAttr;
770
+ let relocateNodeData;
771
+ let j;
772
+ let i = 0;
773
+ const childNodes = elm.childNodes;
774
+ const ilen = childNodes.length;
775
+ for (; i < ilen; i++) {
776
+ childNode = childNodes[i];
777
+ if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
778
+ // first got the content reference comment node
779
+ // then we got it's parent, which is where all the host content is in now
780
+ hostContentNodes = node.parentNode.childNodes;
781
+ slotNameAttr = childNode['s-sn'];
782
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
783
+ node = hostContentNodes[j];
784
+ if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
785
+ // let's do some relocating to its new home
786
+ // but never relocate a content reference node
787
+ // that is suppose to always represent the original content location
788
+ if (isNodeLocatedInSlot(node, slotNameAttr)) {
789
+ // it's possible we've already decided to relocate this node
790
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
791
+ // made some changes to slots
792
+ // let's make sure we also double check
793
+ // fallbacks are correctly hidden or shown
794
+ checkSlotFallbackVisibility = true;
795
+ node['s-sn'] = node['s-sn'] || slotNameAttr;
796
+ if (relocateNodeData) {
797
+ // previously we never found a slot home for this node
798
+ // but turns out we did, so let's remember it now
799
+ relocateNodeData.$slotRefNode$ = childNode;
800
+ }
801
+ else {
802
+ // add to our list of nodes to relocate
803
+ relocateNodes.push({
804
+ $slotRefNode$: childNode,
805
+ $nodeToRelocate$: node,
806
+ });
807
+ }
808
+ if (node['s-sr']) {
809
+ relocateNodes.map((relocateNode) => {
810
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node['s-sn'])) {
811
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
812
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
813
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
814
+ }
815
+ }
816
+ });
817
+ }
818
+ }
819
+ else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
820
+ // so far this element does not have a slot home, not setting slotRefNode on purpose
821
+ // if we never find a home for this element then we'll need to hide it
822
+ relocateNodes.push({
823
+ $nodeToRelocate$: node,
824
+ });
825
+ }
826
+ }
827
+ }
828
+ }
829
+ if (childNode.nodeType === 1 /* ElementNode */) {
830
+ relocateSlotContent(childNode);
831
+ }
832
+ }
833
+ };
834
+ const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
835
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
836
+ if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
837
+ return true;
838
+ }
839
+ if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
840
+ return true;
841
+ }
842
+ return false;
843
+ }
844
+ if (nodeToRelocate['s-sn'] === slotNameAttr) {
845
+ return true;
846
+ }
847
+ return slotNameAttr === '';
848
+ };
489
849
  const callNodeRefs = (vNode) => {
490
850
  {
491
851
  vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null);
@@ -494,9 +854,14 @@ const callNodeRefs = (vNode) => {
494
854
  };
495
855
  const renderVdom = (hostRef, renderFnResults) => {
496
856
  const hostElm = hostRef.$hostElement$;
857
+ const cmpMeta = hostRef.$cmpMeta$;
497
858
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
498
859
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
499
860
  hostTagName = hostElm.tagName;
861
+ if (cmpMeta.$attrsToReflect$) {
862
+ rootVnode.$attrs$ = rootVnode.$attrs$ || {};
863
+ cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
864
+ }
500
865
  rootVnode.$tag$ = null;
501
866
  rootVnode.$flags$ |= 4 /* isHost */;
502
867
  hostRef.$vnode$ = rootVnode;
@@ -504,10 +869,105 @@ const renderVdom = (hostRef, renderFnResults) => {
504
869
  {
505
870
  scopeId = hostElm['s-sc'];
506
871
  }
872
+ {
873
+ contentRef = hostElm['s-cr'];
874
+ useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
875
+ // always reset
876
+ checkSlotFallbackVisibility = false;
877
+ }
507
878
  // synchronous patch
508
879
  patch(oldVNode, rootVnode);
880
+ {
881
+ // while we're moving nodes around existing nodes, temporarily disable
882
+ // the disconnectCallback from working
883
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
884
+ if (checkSlotRelocate) {
885
+ relocateSlotContent(rootVnode.$elm$);
886
+ let relocateData;
887
+ let nodeToRelocate;
888
+ let orgLocationNode;
889
+ let parentNodeRef;
890
+ let insertBeforeNode;
891
+ let refNode;
892
+ let i = 0;
893
+ for (; i < relocateNodes.length; i++) {
894
+ relocateData = relocateNodes[i];
895
+ nodeToRelocate = relocateData.$nodeToRelocate$;
896
+ if (!nodeToRelocate['s-ol']) {
897
+ // add a reference node marking this node's original location
898
+ // keep a reference to this node for later lookups
899
+ orgLocationNode =
900
+ doc.createTextNode('');
901
+ orgLocationNode['s-nr'] = nodeToRelocate;
902
+ nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
903
+ }
904
+ }
905
+ for (i = 0; i < relocateNodes.length; i++) {
906
+ relocateData = relocateNodes[i];
907
+ nodeToRelocate = relocateData.$nodeToRelocate$;
908
+ if (relocateData.$slotRefNode$) {
909
+ // by default we're just going to insert it directly
910
+ // after the slot reference node
911
+ parentNodeRef = relocateData.$slotRefNode$.parentNode;
912
+ insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
913
+ orgLocationNode = nodeToRelocate['s-ol'];
914
+ while ((orgLocationNode = orgLocationNode.previousSibling)) {
915
+ refNode = orgLocationNode['s-nr'];
916
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
917
+ refNode = refNode.nextSibling;
918
+ if (!refNode || !refNode['s-nr']) {
919
+ insertBeforeNode = refNode;
920
+ break;
921
+ }
922
+ }
923
+ }
924
+ if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
925
+ nodeToRelocate.nextSibling !== insertBeforeNode) {
926
+ // we've checked that it's worth while to relocate
927
+ // since that the node to relocate
928
+ // has a different next sibling or parent relocated
929
+ if (nodeToRelocate !== insertBeforeNode) {
930
+ if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
931
+ // probably a component in the index.html that doesn't have it's hostname set
932
+ nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
933
+ }
934
+ // add it back to the dom but in its new home
935
+ parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
936
+ }
937
+ }
938
+ }
939
+ else {
940
+ // this node doesn't have a slot home to go to, so let's hide it
941
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
942
+ nodeToRelocate.hidden = true;
943
+ }
944
+ }
945
+ }
946
+ }
947
+ if (checkSlotFallbackVisibility) {
948
+ updateFallbackSlotVisibility(rootVnode.$elm$);
949
+ }
950
+ // done moving nodes around
951
+ // allow the disconnect callback to work again
952
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
953
+ // always reset
954
+ relocateNodes.length = 0;
955
+ }
509
956
  };
510
957
  const getElement = (ref) => (getHostRef(ref).$hostElement$ );
958
+ const createEvent = (ref, name, flags) => {
959
+ const elm = getElement(ref);
960
+ return {
961
+ emit: (detail) => {
962
+ return emitEvent(elm, name, {
963
+ bubbles: !!(flags & 4 /* Bubbles */),
964
+ composed: !!(flags & 2 /* Composed */),
965
+ cancelable: !!(flags & 1 /* Cancellable */),
966
+ detail,
967
+ });
968
+ },
969
+ };
970
+ };
511
971
  /**
512
972
  * Helper function to create & dispatch a custom Event on a provided target
513
973
  * @param elm the target of the Event
@@ -552,6 +1012,9 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
552
1012
  hostRef.$queuedListeners$ = null;
553
1013
  }
554
1014
  }
1015
+ {
1016
+ promise = safeCall(instance, 'componentWillLoad');
1017
+ }
555
1018
  }
556
1019
  {
557
1020
  promise = then(promise, () => safeCall(instance, 'componentWillRender'));
@@ -623,13 +1086,20 @@ const postUpdateComponent = (hostRef) => {
623
1086
  const tagName = hostRef.$cmpMeta$.$tagName$;
624
1087
  const elm = hostRef.$hostElement$;
625
1088
  const endPostUpdate = createTime('postUpdate', tagName);
1089
+ const instance = hostRef.$lazyInstance$ ;
626
1090
  const ancestorComponent = hostRef.$ancestorComponent$;
1091
+ {
1092
+ safeCall(instance, 'componentDidRender');
1093
+ }
627
1094
  if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {
628
1095
  hostRef.$flags$ |= 64 /* hasLoadedComponent */;
629
1096
  {
630
1097
  // DOM WRITE!
631
1098
  addHydratedFlag(elm);
632
1099
  }
1100
+ {
1101
+ safeCall(instance, 'componentDidLoad');
1102
+ }
633
1103
  endPostUpdate();
634
1104
  {
635
1105
  hostRef.$onReadyResolve$(elm);
@@ -639,6 +1109,9 @@ const postUpdateComponent = (hostRef) => {
639
1109
  }
640
1110
  }
641
1111
  else {
1112
+ {
1113
+ safeCall(instance, 'componentDidUpdate');
1114
+ }
642
1115
  endPostUpdate();
643
1116
  }
644
1117
  // load events fire from bottom to top
@@ -732,6 +1205,7 @@ const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propNam
732
1205
  const setValue = (ref, propName, newVal, cmpMeta) => {
733
1206
  // check our new property value against our internal value
734
1207
  const hostRef = getHostRef(ref);
1208
+ const elm = hostRef.$hostElement$ ;
735
1209
  const oldVal = hostRef.$instanceValues$.get(propName);
736
1210
  const flags = hostRef.$flags$;
737
1211
  const instance = hostRef.$lazyInstance$ ;
@@ -744,6 +1218,22 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
744
1218
  // set our new value!
745
1219
  hostRef.$instanceValues$.set(propName, newVal);
746
1220
  if (instance) {
1221
+ // get an array of method names of watch functions to call
1222
+ if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {
1223
+ const watchMethods = cmpMeta.$watchers$[propName];
1224
+ if (watchMethods) {
1225
+ // this instance is watching for when this property changed
1226
+ watchMethods.map((watchMethodName) => {
1227
+ try {
1228
+ // fire off each of the watch methods that are watching this property
1229
+ instance[watchMethodName](newVal, oldVal, propName);
1230
+ }
1231
+ catch (e) {
1232
+ consoleError(e, elm);
1233
+ }
1234
+ });
1235
+ }
1236
+ }
747
1237
  if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {
748
1238
  if (instance.componentShouldUpdate) {
749
1239
  if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) {
@@ -761,6 +1251,9 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
761
1251
  };
762
1252
  const proxyComponent = (Cstr, cmpMeta, flags) => {
763
1253
  if (cmpMeta.$members$) {
1254
+ if (Cstr.watchers) {
1255
+ cmpMeta.$watchers$ = Cstr.watchers;
1256
+ }
764
1257
  // It's better to have a const than two Object.entries()
765
1258
  const members = Object.entries(cmpMeta.$members$);
766
1259
  const prototype = Cstr.prototype;
@@ -842,6 +1335,9 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
842
1335
  .map(([propName, m]) => {
843
1336
  const attrName = m[1] || propName;
844
1337
  attrNameToPropName.set(attrName, propName);
1338
+ if (m[0] & 512 /* ReflectAttr */) {
1339
+ cmpMeta.$attrsToReflect$.push([propName, attrName]);
1340
+ }
845
1341
  return attrName;
846
1342
  });
847
1343
  }
@@ -865,6 +1361,12 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
865
1361
  endLoad();
866
1362
  }
867
1363
  if (!Cstr.isProxied) {
1364
+ // we've never proxied this Constructor before
1365
+ // let's add the getters/setters to its prototype before
1366
+ // the first time we create an instance of the implementation
1367
+ {
1368
+ cmpMeta.$watchers$ = Cstr.watchers;
1369
+ }
868
1370
  proxyComponent(Cstr, cmpMeta, 2 /* proxyState */);
869
1371
  Cstr.isProxied = true;
870
1372
  }
@@ -888,6 +1390,9 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
888
1390
  {
889
1391
  hostRef.$flags$ &= ~8 /* isConstructingInstance */;
890
1392
  }
1393
+ {
1394
+ hostRef.$flags$ |= 128 /* isWatchReady */;
1395
+ }
891
1396
  endNewInstance();
892
1397
  }
893
1398
  if (Cstr.style) {
@@ -925,6 +1430,15 @@ const connectedCallback = (elm) => {
925
1430
  if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
926
1431
  // first time this component has connected
927
1432
  hostRef.$flags$ |= 1 /* hasConnected */;
1433
+ {
1434
+ // initUpdate
1435
+ // if the slot polyfill is required we'll need to put some nodes
1436
+ // in here to act as original content anchors as we move nodes around
1437
+ // host element has been connected to the DOM
1438
+ if ((cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */))) {
1439
+ setContentReference(elm);
1440
+ }
1441
+ }
928
1442
  {
929
1443
  // find the first ancestor component (if there is one) and register
930
1444
  // this component as one of the actively loading child components for its ancestor
@@ -964,15 +1478,30 @@ const connectedCallback = (elm) => {
964
1478
  endConnected();
965
1479
  }
966
1480
  };
1481
+ const setContentReference = (elm) => {
1482
+ // only required when we're NOT using native shadow dom (slot)
1483
+ // or this browser doesn't support native shadow dom
1484
+ // and this host element was NOT created with SSR
1485
+ // let's pick out the inner content for slot projection
1486
+ // create a node to represent where the original
1487
+ // content was first placed, which is useful later on
1488
+ const contentRefElm = (elm['s-cr'] = doc.createComment(''));
1489
+ contentRefElm['s-cn'] = true;
1490
+ elm.insertBefore(contentRefElm, elm.firstChild);
1491
+ };
967
1492
  const disconnectedCallback = (elm) => {
968
1493
  if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
969
1494
  const hostRef = getHostRef(elm);
1495
+ const instance = hostRef.$lazyInstance$ ;
970
1496
  {
971
1497
  if (hostRef.$rmListeners$) {
972
1498
  hostRef.$rmListeners$.map((rmListener) => rmListener());
973
1499
  hostRef.$rmListeners$ = undefined;
974
1500
  }
975
1501
  }
1502
+ {
1503
+ safeCall(instance, 'disconnectedCallback');
1504
+ }
976
1505
  }
977
1506
  };
978
1507
  const bootstrapLazy = (lazyBundles, options = {}) => {
@@ -1002,6 +1531,12 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1002
1531
  {
1003
1532
  cmpMeta.$listeners$ = compactMeta[3];
1004
1533
  }
1534
+ {
1535
+ cmpMeta.$attrsToReflect$ = [];
1536
+ }
1537
+ {
1538
+ cmpMeta.$watchers$ = {};
1539
+ }
1005
1540
  const tagName = cmpMeta.$tagName$;
1006
1541
  const HostElement = class extends HTMLElement {
1007
1542
  // StencilLazyHost
@@ -1096,7 +1631,152 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
1096
1631
  if (module) {
1097
1632
  return module[exportName];
1098
1633
  }
1099
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/
1634
+
1635
+ if (!hmrVersionId || !BUILD.hotModuleReplacement) {
1636
+ const processMod = importedModule => {
1637
+ cmpModules.set(bundleId, importedModule);
1638
+ return importedModule[exportName];
1639
+ }
1640
+ switch(bundleId) {
1641
+
1642
+ case 'p-button_3':
1643
+ return import(
1644
+ /* webpackMode: "lazy" */
1645
+ './p-button_3.entry.js').then(processMod, consoleError);
1646
+ case 'p-accordion':
1647
+ return import(
1648
+ /* webpackMode: "lazy" */
1649
+ './p-accordion.entry.js').then(processMod, consoleError);
1650
+ case 'p-avatar':
1651
+ return import(
1652
+ /* webpackMode: "lazy" */
1653
+ './p-avatar.entry.js').then(processMod, consoleError);
1654
+ case 'p-avatar-group':
1655
+ return import(
1656
+ /* webpackMode: "lazy" */
1657
+ './p-avatar-group.entry.js').then(processMod, consoleError);
1658
+ case 'p-card-body':
1659
+ return import(
1660
+ /* webpackMode: "lazy" */
1661
+ './p-card-body.entry.js').then(processMod, consoleError);
1662
+ case 'p-card-container':
1663
+ return import(
1664
+ /* webpackMode: "lazy" */
1665
+ './p-card-container.entry.js').then(processMod, consoleError);
1666
+ case 'p-card-header':
1667
+ return import(
1668
+ /* webpackMode: "lazy" */
1669
+ './p-card-header.entry.js').then(processMod, consoleError);
1670
+ case 'p-content-slider':
1671
+ return import(
1672
+ /* webpackMode: "lazy" */
1673
+ './p-content-slider.entry.js').then(processMod, consoleError);
1674
+ case 'p-illustration':
1675
+ return import(
1676
+ /* webpackMode: "lazy" */
1677
+ './p-illustration.entry.js').then(processMod, consoleError);
1678
+ case 'p-info-panel':
1679
+ return import(
1680
+ /* webpackMode: "lazy" */
1681
+ './p-info-panel.entry.js').then(processMod, consoleError);
1682
+ case 'p-layout':
1683
+ return import(
1684
+ /* webpackMode: "lazy" */
1685
+ './p-layout.entry.js').then(processMod, consoleError);
1686
+ case 'p-modal':
1687
+ return import(
1688
+ /* webpackMode: "lazy" */
1689
+ './p-modal.entry.js').then(processMod, consoleError);
1690
+ case 'p-navbar':
1691
+ return import(
1692
+ /* webpackMode: "lazy" */
1693
+ './p-navbar.entry.js').then(processMod, consoleError);
1694
+ case 'p-navigation-item':
1695
+ return import(
1696
+ /* webpackMode: "lazy" */
1697
+ './p-navigation-item.entry.js').then(processMod, consoleError);
1698
+ case 'p-profile':
1699
+ return import(
1700
+ /* webpackMode: "lazy" */
1701
+ './p-profile.entry.js').then(processMod, consoleError);
1702
+ case 'p-select':
1703
+ return import(
1704
+ /* webpackMode: "lazy" */
1705
+ './p-select.entry.js').then(processMod, consoleError);
1706
+ case 'p-status':
1707
+ return import(
1708
+ /* webpackMode: "lazy" */
1709
+ './p-status.entry.js').then(processMod, consoleError);
1710
+ case 'p-stepper':
1711
+ return import(
1712
+ /* webpackMode: "lazy" */
1713
+ './p-stepper.entry.js').then(processMod, consoleError);
1714
+ case 'p-tab-group':
1715
+ return import(
1716
+ /* webpackMode: "lazy" */
1717
+ './p-tab-group.entry.js').then(processMod, consoleError);
1718
+ case 'p-tab-item':
1719
+ return import(
1720
+ /* webpackMode: "lazy" */
1721
+ './p-tab-item.entry.js').then(processMod, consoleError);
1722
+ case 'p-table':
1723
+ return import(
1724
+ /* webpackMode: "lazy" */
1725
+ './p-table.entry.js').then(processMod, consoleError);
1726
+ case 'p-table-column':
1727
+ return import(
1728
+ /* webpackMode: "lazy" */
1729
+ './p-table-column.entry.js').then(processMod, consoleError);
1730
+ case 'p-toast':
1731
+ return import(
1732
+ /* webpackMode: "lazy" */
1733
+ './p-toast.entry.js').then(processMod, consoleError);
1734
+ case 'p-toast-container':
1735
+ return import(
1736
+ /* webpackMode: "lazy" */
1737
+ './p-toast-container.entry.js').then(processMod, consoleError);
1738
+ case 'p-counter':
1739
+ return import(
1740
+ /* webpackMode: "lazy" */
1741
+ './p-counter.entry.js').then(processMod, consoleError);
1742
+ case 'p-modal-backdrop_5':
1743
+ return import(
1744
+ /* webpackMode: "lazy" */
1745
+ './p-modal-backdrop_5.entry.js').then(processMod, consoleError);
1746
+ case 'p-slider-indicator':
1747
+ return import(
1748
+ /* webpackMode: "lazy" */
1749
+ './p-slider-indicator.entry.js').then(processMod, consoleError);
1750
+ case 'p-stepper-item_2':
1751
+ return import(
1752
+ /* webpackMode: "lazy" */
1753
+ './p-stepper-item_2.entry.js').then(processMod, consoleError);
1754
+ case 'p-table-cell_5':
1755
+ return import(
1756
+ /* webpackMode: "lazy" */
1757
+ './p-table-cell_5.entry.js').then(processMod, consoleError);
1758
+ case 'p-input-group_4':
1759
+ return import(
1760
+ /* webpackMode: "lazy" */
1761
+ './p-input-group_4.entry.js').then(processMod, consoleError);
1762
+ case 'p-page-size-select_3':
1763
+ return import(
1764
+ /* webpackMode: "lazy" */
1765
+ './p-page-size-select_3.entry.js').then(processMod, consoleError);
1766
+ case 'p-dropdown_3':
1767
+ return import(
1768
+ /* webpackMode: "lazy" */
1769
+ './p-dropdown_3.entry.js').then(processMod, consoleError);
1770
+ case 'p-helper_2':
1771
+ return import(
1772
+ /* webpackMode: "lazy" */
1773
+ './p-helper_2.entry.js').then(processMod, consoleError);
1774
+ case 'p-divider':
1775
+ return import(
1776
+ /* webpackMode: "lazy" */
1777
+ './p-divider.entry.js').then(processMod, consoleError);
1778
+ }
1779
+ }
1100
1780
  return import(
1101
1781
  /* @vite-ignore */
1102
1782
  /* webpackInclude: /\.entry\.js$/ */
@@ -1153,4 +1833,4 @@ const flush = () => {
1153
1833
  const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
1154
1834
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1155
1835
 
1156
- export { Host as H, bootstrapLazy as b, getElement as g, h, promiseResolve as p, registerInstance as r };
1836
+ export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r };