@lmvz-ds/components 0.11.4

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 (394) hide show
  1. package/LICENSE.txt +3 -0
  2. package/assets/LMVZ_logo_175.svg +1 -0
  3. package/assets/card-placeholder.svg +4 -0
  4. package/assets/fonts/Router-Bold.woff +0 -0
  5. package/assets/fonts/Router-Book.woff +0 -0
  6. package/assets/fonts/Router-Medium.woff +0 -0
  7. package/assets/icons/Logo.svg +10 -0
  8. package/assets/icons/actions.svg +5 -0
  9. package/assets/icons/adduser.svg +3 -0
  10. package/assets/icons/alert.svg +3 -0
  11. package/assets/icons/apple.svg +3 -0
  12. package/assets/icons/arrow-down.svg +3 -0
  13. package/assets/icons/arrow-left.svg +3 -0
  14. package/assets/icons/arrow-right.svg +3 -0
  15. package/assets/icons/arrow-up.svg +3 -0
  16. package/assets/icons/book.svg +3 -0
  17. package/assets/icons/bookmark.svg +3 -0
  18. package/assets/icons/checkmark.svg +3 -0
  19. package/assets/icons/chevron-down.svg +3 -0
  20. package/assets/icons/chevron-left.svg +3 -0
  21. package/assets/icons/chevron-right.svg +3 -0
  22. package/assets/icons/chevron-up.svg +3 -0
  23. package/assets/icons/close-l.svg +3 -0
  24. package/assets/icons/close-sm.svg +3 -0
  25. package/assets/icons/cog.svg +4 -0
  26. package/assets/icons/computer.svg +3 -0
  27. package/assets/icons/dashboard.svg +6 -0
  28. package/assets/icons/delete.svg +3 -0
  29. package/assets/icons/download.svg +3 -0
  30. package/assets/icons/edit.svg +3 -0
  31. package/assets/icons/external.svg +3 -0
  32. package/assets/icons/facebook.svg +3 -0
  33. package/assets/icons/favorite.svg +3 -0
  34. package/assets/icons/filter.svg +3 -0
  35. package/assets/icons/group.svg +3 -0
  36. package/assets/icons/hide.svg +3 -0
  37. package/assets/icons/home.svg +3 -0
  38. package/assets/icons/info.svg +3 -0
  39. package/assets/icons/instagram.svg +3 -0
  40. package/assets/icons/letter.svg +3 -0
  41. package/assets/icons/linkedin.svg +5 -0
  42. package/assets/icons/logout.svg +3 -0
  43. package/assets/icons/map.svg +3 -0
  44. package/assets/icons/minus.svg +3 -0
  45. package/assets/icons/navigation.svg +3 -0
  46. package/assets/icons/plus.svg +3 -0
  47. package/assets/icons/qr-scan.svg +3 -0
  48. package/assets/icons/question.svg +10 -0
  49. package/assets/icons/reader.svg +3 -0
  50. package/assets/icons/reset.svg +3 -0
  51. package/assets/icons/school.svg +3 -0
  52. package/assets/icons/search.svg +3 -0
  53. package/assets/icons/send.svg +3 -0
  54. package/assets/icons/settings.svg +3 -0
  55. package/assets/icons/share.svg +10 -0
  56. package/assets/icons/shopping-cart.svg +3 -0
  57. package/assets/icons/show.svg +3 -0
  58. package/assets/icons/snapchat.svg +3 -0
  59. package/assets/icons/sort.svg +3 -0
  60. package/assets/icons/speech-bubble.svg +3 -0
  61. package/assets/icons/star.svg +3 -0
  62. package/assets/icons/student.svg +3 -0
  63. package/assets/icons/upload.svg +3 -0
  64. package/assets/icons/user.svg +3 -0
  65. package/assets/icons/warn-circle.svg +3 -0
  66. package/assets/icons/warn-triangle.svg +3 -0
  67. package/assets/icons/whatsapp.svg +4 -0
  68. package/assets/icons/world.svg +10 -0
  69. package/assets/icons/x.svg +3 -0
  70. package/assets/icons/youtube.svg +3 -0
  71. package/assets/zukunftslinie.svg +3 -0
  72. package/dist/cjs/Effect-BIlTHtLK.js +19172 -0
  73. package/dist/cjs/_commonjsHelpers-CFO10eej.js +7 -0
  74. package/dist/cjs/app-globals-V2Kpy_OQ.js +5 -0
  75. package/dist/cjs/aria-validation-controller-B7unOPxT.js +2929 -0
  76. package/dist/cjs/axe-BNqwbBGU.js +32834 -0
  77. package/dist/cjs/component-CRc6eHcV.js +138 -0
  78. package/dist/cjs/element-activation-controller-DC_6T0Rt.js +31 -0
  79. package/dist/cjs/icons-DbL3LSmP.js +659 -0
  80. package/dist/cjs/index-9ZJx0550.js +2752 -0
  81. package/dist/cjs/index-CVw4GUo6.js +92 -0
  82. package/dist/cjs/index.cjs.js +96 -0
  83. package/dist/cjs/lmvz-action.cjs.entry.js +22 -0
  84. package/dist/cjs/lmvz-button.cjs.entry.js +72 -0
  85. package/dist/cjs/lmvz-card.cjs.entry.js +33 -0
  86. package/dist/cjs/lmvz-chip.cjs.entry.js +18 -0
  87. package/dist/cjs/lmvz-components.cjs.js +25 -0
  88. package/dist/cjs/lmvz-header.cjs.entry.js +134 -0
  89. package/dist/cjs/lmvz-icon.cjs.entry.js +76 -0
  90. package/dist/cjs/lmvz-input.cjs.entry.js +176 -0
  91. package/dist/cjs/lmvz-menuitem.cjs.entry.js +32 -0
  92. package/dist/cjs/loader.cjs.js +13 -0
  93. package/dist/collection/api/ds.constants.js +73 -0
  94. package/dist/collection/api/index.js +1 -0
  95. package/dist/collection/assets/LMVZ_logo_175.svg +1 -0
  96. package/dist/collection/assets/card-placeholder.svg +4 -0
  97. package/dist/collection/assets/fonts/Router-Bold.woff +0 -0
  98. package/dist/collection/assets/fonts/Router-Book.woff +0 -0
  99. package/dist/collection/assets/fonts/Router-Medium.woff +0 -0
  100. package/dist/collection/assets/icons/Logo.svg +10 -0
  101. package/dist/collection/assets/icons/actions.svg +5 -0
  102. package/dist/collection/assets/icons/adduser.svg +3 -0
  103. package/dist/collection/assets/icons/alert.svg +3 -0
  104. package/dist/collection/assets/icons/apple.svg +3 -0
  105. package/dist/collection/assets/icons/arrow-down.svg +3 -0
  106. package/dist/collection/assets/icons/arrow-left.svg +3 -0
  107. package/dist/collection/assets/icons/arrow-right.svg +3 -0
  108. package/dist/collection/assets/icons/arrow-up.svg +3 -0
  109. package/dist/collection/assets/icons/book.svg +3 -0
  110. package/dist/collection/assets/icons/bookmark.svg +3 -0
  111. package/dist/collection/assets/icons/checkmark.svg +3 -0
  112. package/dist/collection/assets/icons/chevron-down.svg +3 -0
  113. package/dist/collection/assets/icons/chevron-left.svg +3 -0
  114. package/dist/collection/assets/icons/chevron-right.svg +3 -0
  115. package/dist/collection/assets/icons/chevron-up.svg +3 -0
  116. package/dist/collection/assets/icons/close-l.svg +3 -0
  117. package/dist/collection/assets/icons/close-sm.svg +3 -0
  118. package/dist/collection/assets/icons/cog.svg +4 -0
  119. package/dist/collection/assets/icons/computer.svg +3 -0
  120. package/dist/collection/assets/icons/dashboard.svg +6 -0
  121. package/dist/collection/assets/icons/delete.svg +3 -0
  122. package/dist/collection/assets/icons/download.svg +3 -0
  123. package/dist/collection/assets/icons/edit.svg +3 -0
  124. package/dist/collection/assets/icons/external.svg +3 -0
  125. package/dist/collection/assets/icons/facebook.svg +3 -0
  126. package/dist/collection/assets/icons/favorite.svg +3 -0
  127. package/dist/collection/assets/icons/filter.svg +3 -0
  128. package/dist/collection/assets/icons/group.svg +3 -0
  129. package/dist/collection/assets/icons/hide.svg +3 -0
  130. package/dist/collection/assets/icons/home.svg +3 -0
  131. package/dist/collection/assets/icons/info.svg +3 -0
  132. package/dist/collection/assets/icons/instagram.svg +3 -0
  133. package/dist/collection/assets/icons/letter.svg +3 -0
  134. package/dist/collection/assets/icons/linkedin.svg +5 -0
  135. package/dist/collection/assets/icons/logout.svg +3 -0
  136. package/dist/collection/assets/icons/map.svg +3 -0
  137. package/dist/collection/assets/icons/minus.svg +3 -0
  138. package/dist/collection/assets/icons/navigation.svg +3 -0
  139. package/dist/collection/assets/icons/plus.svg +3 -0
  140. package/dist/collection/assets/icons/qr-scan.svg +3 -0
  141. package/dist/collection/assets/icons/question.svg +10 -0
  142. package/dist/collection/assets/icons/reader.svg +3 -0
  143. package/dist/collection/assets/icons/reset.svg +3 -0
  144. package/dist/collection/assets/icons/school.svg +3 -0
  145. package/dist/collection/assets/icons/search.svg +3 -0
  146. package/dist/collection/assets/icons/send.svg +3 -0
  147. package/dist/collection/assets/icons/settings.svg +3 -0
  148. package/dist/collection/assets/icons/share.svg +10 -0
  149. package/dist/collection/assets/icons/shopping-cart.svg +3 -0
  150. package/dist/collection/assets/icons/show.svg +3 -0
  151. package/dist/collection/assets/icons/snapchat.svg +3 -0
  152. package/dist/collection/assets/icons/sort.svg +3 -0
  153. package/dist/collection/assets/icons/speech-bubble.svg +3 -0
  154. package/dist/collection/assets/icons/star.svg +3 -0
  155. package/dist/collection/assets/icons/student.svg +3 -0
  156. package/dist/collection/assets/icons/upload.svg +3 -0
  157. package/dist/collection/assets/icons/user.svg +3 -0
  158. package/dist/collection/assets/icons/warn-circle.svg +3 -0
  159. package/dist/collection/assets/icons/warn-triangle.svg +3 -0
  160. package/dist/collection/assets/icons/whatsapp.svg +4 -0
  161. package/dist/collection/assets/icons/world.svg +10 -0
  162. package/dist/collection/assets/icons/x.svg +3 -0
  163. package/dist/collection/assets/icons/youtube.svg +3 -0
  164. package/dist/collection/assets/zukunftslinie.svg +3 -0
  165. package/dist/collection/collection-manifest.json +21 -0
  166. package/dist/collection/components/lmvz-action/lmvz-action.css +3 -0
  167. package/dist/collection/components/lmvz-action/lmvz-action.js +45 -0
  168. package/dist/collection/components/lmvz-button/lmvz-button.css +199 -0
  169. package/dist/collection/components/lmvz-button/lmvz-button.js +245 -0
  170. package/dist/collection/components/lmvz-card/lmvz-card.css +283 -0
  171. package/dist/collection/components/lmvz-card/lmvz-card.js +137 -0
  172. package/dist/collection/components/lmvz-chip/lmvz-chip.css +3 -0
  173. package/dist/collection/components/lmvz-chip/lmvz-chip.js +42 -0
  174. package/dist/collection/components/lmvz-header/lmvz-header.css +49 -0
  175. package/dist/collection/components/lmvz-header/lmvz-header.js +138 -0
  176. package/dist/collection/components/lmvz-icon/icons.js +36 -0
  177. package/dist/collection/components/lmvz-icon/lmvz-icon.css +82 -0
  178. package/dist/collection/components/lmvz-icon/lmvz-icon.js +191 -0
  179. package/dist/collection/components/lmvz-icon/public.js +1 -0
  180. package/dist/collection/components/lmvz-icon/test/icons.unit.js +89 -0
  181. package/dist/collection/components/lmvz-input/lmvz-input.css +201 -0
  182. package/dist/collection/components/lmvz-input/lmvz-input.js +847 -0
  183. package/dist/collection/components/lmvz-menuitem/lmvz-menuitem.css +89 -0
  184. package/dist/collection/components/lmvz-menuitem/lmvz-menuitem.js +97 -0
  185. package/dist/collection/index.js +3 -0
  186. package/dist/collection/integration/header-integration.js +28 -0
  187. package/dist/collection/styles/buttons.css +1 -0
  188. package/dist/collection/styles/router-font.css +1 -0
  189. package/dist/collection/styles/tokens.css +1 -0
  190. package/dist/collection/styles/typography.css +1 -0
  191. package/dist/collection/themes/all.css +1 -0
  192. package/dist/collection/themes/dark.css +1 -0
  193. package/dist/collection/themes/light.css +1 -0
  194. package/dist/collection/utils/component.js +268 -0
  195. package/dist/collection/utils/effect.js +6 -0
  196. package/dist/collection/utils/element-activation-controller.js +27 -0
  197. package/dist/collection/utils/http.js +24 -0
  198. package/dist/collection/utils/http.test.js +46 -0
  199. package/dist/collection/utils/list-keyboard-controller.js +44 -0
  200. package/dist/collection/utils/public.js +1 -0
  201. package/dist/collection/utils/reactive-controller-host.js +39 -0
  202. package/dist/collection/utils/typing.js +1 -0
  203. package/dist/collection/utils/url.js +7 -0
  204. package/dist/collection/utils/validation/aria-validation-controller.js +124 -0
  205. package/dist/collection/utils/validation/svg.js +24 -0
  206. package/dist/components/index.d.ts +53 -0
  207. package/dist/components/index.js +1 -0
  208. package/dist/components/lmvz-action.d.ts +11 -0
  209. package/dist/components/lmvz-action.js +1 -0
  210. package/dist/components/lmvz-button.d.ts +11 -0
  211. package/dist/components/lmvz-button.js +1 -0
  212. package/dist/components/lmvz-card.d.ts +11 -0
  213. package/dist/components/lmvz-card.js +1 -0
  214. package/dist/components/lmvz-chip.d.ts +11 -0
  215. package/dist/components/lmvz-chip.js +1 -0
  216. package/dist/components/lmvz-header.d.ts +11 -0
  217. package/dist/components/lmvz-header.js +1 -0
  218. package/dist/components/lmvz-icon.d.ts +11 -0
  219. package/dist/components/lmvz-icon.js +1 -0
  220. package/dist/components/lmvz-input.d.ts +11 -0
  221. package/dist/components/lmvz-input.js +1 -0
  222. package/dist/components/lmvz-menuitem.d.ts +11 -0
  223. package/dist/components/lmvz-menuitem.js +1 -0
  224. package/dist/components/p-B3JVFwO1.js +1 -0
  225. package/dist/components/p-B85MJLTf.js +1 -0
  226. package/dist/components/p-BFwzIh71.js +1 -0
  227. package/dist/components/p-BaPwpeMs.js +1 -0
  228. package/dist/components/p-CN0JX9-m.js +1 -0
  229. package/dist/components/p-D1HbKFuh.js +12 -0
  230. package/dist/components/p-DDmjv-N_.js +1 -0
  231. package/dist/components/p-DMLRPGid.js +6 -0
  232. package/dist/esm/Effect-D9S7OTyY.js +18963 -0
  233. package/dist/esm/_commonjsHelpers-B85MJLTf.js +5 -0
  234. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  235. package/dist/esm/aria-validation-controller-C7nQzCCq.js +2926 -0
  236. package/dist/esm/axe-cRQ9Ux1I.js +32832 -0
  237. package/dist/esm/component-B3JVFwO1.js +132 -0
  238. package/dist/esm/element-activation-controller-CN0JX9-m.js +29 -0
  239. package/dist/esm/icons-B71gAZmE.js +655 -0
  240. package/dist/esm/index-Bt32KzDW.js +90 -0
  241. package/dist/esm/index-smGPjoDX.js +2741 -0
  242. package/dist/esm/index.js +85 -0
  243. package/dist/esm/lmvz-action.entry.js +20 -0
  244. package/dist/esm/lmvz-button.entry.js +70 -0
  245. package/dist/esm/lmvz-card.entry.js +31 -0
  246. package/dist/esm/lmvz-chip.entry.js +16 -0
  247. package/dist/esm/lmvz-components.js +21 -0
  248. package/dist/esm/lmvz-header.entry.js +132 -0
  249. package/dist/esm/lmvz-icon.entry.js +74 -0
  250. package/dist/esm/lmvz-input.entry.js +174 -0
  251. package/dist/esm/lmvz-menuitem.entry.js +30 -0
  252. package/dist/esm/loader.js +11 -0
  253. package/dist/index.cjs.js +1 -0
  254. package/dist/index.js +1 -0
  255. package/dist/lmvz-components/assets/LMVZ_logo_175.svg +1 -0
  256. package/dist/lmvz-components/assets/card-placeholder.svg +4 -0
  257. package/dist/lmvz-components/assets/fonts/Router-Bold.woff +0 -0
  258. package/dist/lmvz-components/assets/fonts/Router-Book.woff +0 -0
  259. package/dist/lmvz-components/assets/fonts/Router-Medium.woff +0 -0
  260. package/dist/lmvz-components/assets/icons/Logo.svg +10 -0
  261. package/dist/lmvz-components/assets/icons/actions.svg +5 -0
  262. package/dist/lmvz-components/assets/icons/adduser.svg +3 -0
  263. package/dist/lmvz-components/assets/icons/alert.svg +3 -0
  264. package/dist/lmvz-components/assets/icons/apple.svg +3 -0
  265. package/dist/lmvz-components/assets/icons/arrow-down.svg +3 -0
  266. package/dist/lmvz-components/assets/icons/arrow-left.svg +3 -0
  267. package/dist/lmvz-components/assets/icons/arrow-right.svg +3 -0
  268. package/dist/lmvz-components/assets/icons/arrow-up.svg +3 -0
  269. package/dist/lmvz-components/assets/icons/book.svg +3 -0
  270. package/dist/lmvz-components/assets/icons/bookmark.svg +3 -0
  271. package/dist/lmvz-components/assets/icons/checkmark.svg +3 -0
  272. package/dist/lmvz-components/assets/icons/chevron-down.svg +3 -0
  273. package/dist/lmvz-components/assets/icons/chevron-left.svg +3 -0
  274. package/dist/lmvz-components/assets/icons/chevron-right.svg +3 -0
  275. package/dist/lmvz-components/assets/icons/chevron-up.svg +3 -0
  276. package/dist/lmvz-components/assets/icons/close-l.svg +3 -0
  277. package/dist/lmvz-components/assets/icons/close-sm.svg +3 -0
  278. package/dist/lmvz-components/assets/icons/cog.svg +4 -0
  279. package/dist/lmvz-components/assets/icons/computer.svg +3 -0
  280. package/dist/lmvz-components/assets/icons/dashboard.svg +6 -0
  281. package/dist/lmvz-components/assets/icons/delete.svg +3 -0
  282. package/dist/lmvz-components/assets/icons/download.svg +3 -0
  283. package/dist/lmvz-components/assets/icons/edit.svg +3 -0
  284. package/dist/lmvz-components/assets/icons/external.svg +3 -0
  285. package/dist/lmvz-components/assets/icons/facebook.svg +3 -0
  286. package/dist/lmvz-components/assets/icons/favorite.svg +3 -0
  287. package/dist/lmvz-components/assets/icons/filter.svg +3 -0
  288. package/dist/lmvz-components/assets/icons/group.svg +3 -0
  289. package/dist/lmvz-components/assets/icons/hide.svg +3 -0
  290. package/dist/lmvz-components/assets/icons/home.svg +3 -0
  291. package/dist/lmvz-components/assets/icons/info.svg +3 -0
  292. package/dist/lmvz-components/assets/icons/instagram.svg +3 -0
  293. package/dist/lmvz-components/assets/icons/letter.svg +3 -0
  294. package/dist/lmvz-components/assets/icons/linkedin.svg +5 -0
  295. package/dist/lmvz-components/assets/icons/logout.svg +3 -0
  296. package/dist/lmvz-components/assets/icons/map.svg +3 -0
  297. package/dist/lmvz-components/assets/icons/minus.svg +3 -0
  298. package/dist/lmvz-components/assets/icons/navigation.svg +3 -0
  299. package/dist/lmvz-components/assets/icons/plus.svg +3 -0
  300. package/dist/lmvz-components/assets/icons/qr-scan.svg +3 -0
  301. package/dist/lmvz-components/assets/icons/question.svg +10 -0
  302. package/dist/lmvz-components/assets/icons/reader.svg +3 -0
  303. package/dist/lmvz-components/assets/icons/reset.svg +3 -0
  304. package/dist/lmvz-components/assets/icons/school.svg +3 -0
  305. package/dist/lmvz-components/assets/icons/search.svg +3 -0
  306. package/dist/lmvz-components/assets/icons/send.svg +3 -0
  307. package/dist/lmvz-components/assets/icons/settings.svg +3 -0
  308. package/dist/lmvz-components/assets/icons/share.svg +10 -0
  309. package/dist/lmvz-components/assets/icons/shopping-cart.svg +3 -0
  310. package/dist/lmvz-components/assets/icons/show.svg +3 -0
  311. package/dist/lmvz-components/assets/icons/snapchat.svg +3 -0
  312. package/dist/lmvz-components/assets/icons/sort.svg +3 -0
  313. package/dist/lmvz-components/assets/icons/speech-bubble.svg +3 -0
  314. package/dist/lmvz-components/assets/icons/star.svg +3 -0
  315. package/dist/lmvz-components/assets/icons/student.svg +3 -0
  316. package/dist/lmvz-components/assets/icons/upload.svg +3 -0
  317. package/dist/lmvz-components/assets/icons/user.svg +3 -0
  318. package/dist/lmvz-components/assets/icons/warn-circle.svg +3 -0
  319. package/dist/lmvz-components/assets/icons/warn-triangle.svg +3 -0
  320. package/dist/lmvz-components/assets/icons/whatsapp.svg +4 -0
  321. package/dist/lmvz-components/assets/icons/world.svg +10 -0
  322. package/dist/lmvz-components/assets/icons/x.svg +3 -0
  323. package/dist/lmvz-components/assets/icons/youtube.svg +3 -0
  324. package/dist/lmvz-components/assets/zukunftslinie.svg +3 -0
  325. package/dist/lmvz-components/index.esm.js +1 -0
  326. package/dist/lmvz-components/lmvz-components.esm.js +1 -0
  327. package/dist/lmvz-components/p-87b01940.entry.js +1 -0
  328. package/dist/lmvz-components/p-9faac8f3.entry.js +1 -0
  329. package/dist/lmvz-components/p-B3JVFwO1.js +1 -0
  330. package/dist/lmvz-components/p-B85MJLTf.js +1 -0
  331. package/dist/lmvz-components/p-CN0JX9-m.js +1 -0
  332. package/dist/lmvz-components/p-D1HbKFuh.js +12 -0
  333. package/dist/lmvz-components/p-D9S7OTyY.js +1 -0
  334. package/dist/lmvz-components/p-DMLRPGid.js +6 -0
  335. package/dist/lmvz-components/p-DQuL1Twl.js +1 -0
  336. package/dist/lmvz-components/p-DlIX18fw.js +1 -0
  337. package/dist/lmvz-components/p-DlrjrWsu.js +1 -0
  338. package/dist/lmvz-components/p-a4615e4b.entry.js +1 -0
  339. package/dist/lmvz-components/p-a8c88454.entry.js +1 -0
  340. package/dist/lmvz-components/p-d4b68381.entry.js +1 -0
  341. package/dist/lmvz-components/p-e63e239a.entry.js +1 -0
  342. package/dist/lmvz-components/p-f956a5e7.entry.js +1 -0
  343. package/dist/lmvz-components/p-fefd2fe4.entry.js +1 -0
  344. package/dist/lmvz-components/p-smGPjoDX.js +2 -0
  345. package/dist/lmvz-components/styles/buttons.css +1 -0
  346. package/dist/lmvz-components/styles/router-font.css +1 -0
  347. package/dist/lmvz-components/styles/tokens.css +1 -0
  348. package/dist/lmvz-components/styles/typography.css +1 -0
  349. package/dist/lmvz-components/themes/all.css +1 -0
  350. package/dist/lmvz-components/themes/dark.css +1 -0
  351. package/dist/lmvz-components/themes/light.css +1 -0
  352. package/dist/manifest.d.ts +480 -0
  353. package/dist/manifest.json +5184 -0
  354. package/dist/types/api/aria-types.d.ts +9 -0
  355. package/dist/types/api/ds.constants.d.ts +8 -0
  356. package/dist/types/api/ds.types.d.ts +39 -0
  357. package/dist/types/api/index.d.ts +3 -0
  358. package/dist/types/components/lmvz-action/lmvz-action.d.ts +6 -0
  359. package/dist/types/components/lmvz-button/lmvz-button.d.ts +25 -0
  360. package/dist/types/components/lmvz-card/lmvz-card.d.ts +11 -0
  361. package/dist/types/components/lmvz-chip/lmvz-chip.d.ts +4 -0
  362. package/dist/types/components/lmvz-header/lmvz-header.d.ts +23 -0
  363. package/dist/types/components/lmvz-icon/icons.d.ts +8 -0
  364. package/dist/types/components/lmvz-icon/lmvz-icon.d.ts +20 -0
  365. package/dist/types/components/lmvz-icon/public.d.ts +1 -0
  366. package/dist/types/components/lmvz-icon/test/icons.unit.d.ts +1 -0
  367. package/dist/types/components/lmvz-input/lmvz-input.d.ts +63 -0
  368. package/dist/types/components/lmvz-menuitem/lmvz-menuitem.d.ts +12 -0
  369. package/dist/types/components.d.ts +773 -0
  370. package/dist/types/index.d.ts +5 -0
  371. package/dist/types/stencil-public-runtime.d.ts +1860 -0
  372. package/dist/types/utils/component.d.ts +36 -0
  373. package/dist/types/utils/effect.d.ts +3 -0
  374. package/dist/types/utils/element-activation-controller.d.ts +19 -0
  375. package/dist/types/utils/http.d.ts +24 -0
  376. package/dist/types/utils/http.test.d.ts +1 -0
  377. package/dist/types/utils/list-keyboard-controller.d.ts +13 -0
  378. package/dist/types/utils/public.d.ts +1 -0
  379. package/dist/types/utils/reactive-controller-host.d.ts +26 -0
  380. package/dist/types/utils/typing.d.ts +3 -0
  381. package/dist/types/utils/url.d.ts +8 -0
  382. package/dist/types/utils/validation/aria-validation-controller.d.ts +31 -0
  383. package/dist/types/utils/validation/svg.d.ts +11 -0
  384. package/hydrate/index.d.ts +287 -0
  385. package/hydrate/index.js +78213 -0
  386. package/hydrate/index.mjs +78203 -0
  387. package/hydrate/package.json +12 -0
  388. package/loader/cdn.js +1 -0
  389. package/loader/index.cjs.js +1 -0
  390. package/loader/index.d.ts +24 -0
  391. package/loader/index.es2017.js +1 -0
  392. package/loader/index.js +2 -0
  393. package/package.json +216 -0
  394. package/readme.md +193 -0
@@ -0,0 +1,92 @@
1
+ 'use strict';
2
+
3
+ var _commonjsHelpers = require('./_commonjsHelpers-CFO10eej.js');
4
+
5
+ var classnames = {exports: {}};
6
+
7
+ /*!
8
+ Copyright (c) 2018 Jed Watson.
9
+ Licensed under the MIT License (MIT), see
10
+ http://jedwatson.github.io/classnames
11
+ */
12
+
13
+ var hasRequiredClassnames;
14
+
15
+ function requireClassnames () {
16
+ if (hasRequiredClassnames) return classnames.exports;
17
+ hasRequiredClassnames = 1;
18
+ (function (module) {
19
+ /* global define */
20
+
21
+ (function () {
22
+
23
+ var hasOwn = {}.hasOwnProperty;
24
+
25
+ function classNames () {
26
+ var classes = '';
27
+
28
+ for (var i = 0; i < arguments.length; i++) {
29
+ var arg = arguments[i];
30
+ if (arg) {
31
+ classes = appendClass(classes, parseValue(arg));
32
+ }
33
+ }
34
+
35
+ return classes;
36
+ }
37
+
38
+ function parseValue (arg) {
39
+ if (typeof arg === 'string' || typeof arg === 'number') {
40
+ return arg;
41
+ }
42
+
43
+ if (typeof arg !== 'object') {
44
+ return '';
45
+ }
46
+
47
+ if (Array.isArray(arg)) {
48
+ return classNames.apply(null, arg);
49
+ }
50
+
51
+ if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
52
+ return arg.toString();
53
+ }
54
+
55
+ var classes = '';
56
+
57
+ for (var key in arg) {
58
+ if (hasOwn.call(arg, key) && arg[key]) {
59
+ classes = appendClass(classes, key);
60
+ }
61
+ }
62
+
63
+ return classes;
64
+ }
65
+
66
+ function appendClass (value, newClass) {
67
+ if (!newClass) {
68
+ return value;
69
+ }
70
+
71
+ if (value) {
72
+ return value + ' ' + newClass;
73
+ }
74
+
75
+ return value + newClass;
76
+ }
77
+
78
+ if (module.exports) {
79
+ classNames.default = classNames;
80
+ module.exports = classNames;
81
+ } else {
82
+ window.classNames = classNames;
83
+ }
84
+ }());
85
+ } (classnames));
86
+ return classnames.exports;
87
+ }
88
+
89
+ var classnamesExports = requireClassnames();
90
+ var classNames = /*@__PURE__*/_commonjsHelpers.getDefaultExportFromCjs(classnamesExports);
91
+
92
+ exports.classNames = classNames;
@@ -0,0 +1,96 @@
1
+ 'use strict';
2
+
3
+ var icons = require('./icons-DbL3LSmP.js');
4
+ var Effect = require('./Effect-BIlTHtLK.js');
5
+ require('./index-9ZJx0550.js');
6
+
7
+ const variants = ['primary', 'secondary', 'tertiary'];
8
+ const scaleValues = ['small', 'default', 'large'];
9
+ const sizes = ['xs', 'sm', 'md', 'lg'];
10
+ const textSizes = [...sizes, 'xl'];
11
+ const inputTypes = ['text', 'email', 'password', 'tel', 'url', 'search', 'number'];
12
+ const iconSizes = [...sizes, 'inherit'];
13
+ const iconWeights = ['thin', 'medium', 'bold', 'filled'];
14
+ const iconNames = [
15
+ 'Logo',
16
+ 'actions',
17
+ 'adduser',
18
+ 'alert',
19
+ 'apple',
20
+ 'arrow-down',
21
+ 'arrow-left',
22
+ 'arrow-right',
23
+ 'arrow-up',
24
+ 'book',
25
+ 'bookmark',
26
+ 'checkmark',
27
+ 'chevron-down',
28
+ 'chevron-left',
29
+ 'chevron-right',
30
+ 'chevron-up',
31
+ 'close-l',
32
+ 'close-sm',
33
+ 'cog',
34
+ 'computer',
35
+ 'dashboard',
36
+ 'delete',
37
+ 'download',
38
+ 'edit',
39
+ 'external',
40
+ 'facebook',
41
+ 'favorite',
42
+ 'filter',
43
+ 'group',
44
+ 'hide',
45
+ 'home',
46
+ 'info',
47
+ 'instagram',
48
+ 'letter',
49
+ 'linkedin',
50
+ 'logout',
51
+ 'map',
52
+ 'minus',
53
+ 'navigation',
54
+ 'plus',
55
+ 'qr-scan',
56
+ 'question',
57
+ 'reader',
58
+ 'reset',
59
+ 'school',
60
+ 'search',
61
+ 'send',
62
+ 'settings',
63
+ 'share',
64
+ 'shopping-cart',
65
+ 'show',
66
+ 'snapchat',
67
+ 'sort',
68
+ 'speech-bubble',
69
+ 'star',
70
+ 'student',
71
+ 'upload',
72
+ 'user',
73
+ 'warn-circle',
74
+ 'warn-triangle',
75
+ 'whatsapp',
76
+ 'world',
77
+ 'x',
78
+ 'youtube',
79
+ ];
80
+
81
+ function run(effect) {
82
+ return Effect.runPromise(effect).catch(error => {
83
+ console.error('Unhandled error in Effect:', error);
84
+ });
85
+ }
86
+
87
+ exports.clearIconCache = icons.clearIconCache;
88
+ exports.iconNames = iconNames;
89
+ exports.iconSizes = iconSizes;
90
+ exports.iconWeights = iconWeights;
91
+ exports.inputTypes = inputTypes;
92
+ exports.run = run;
93
+ exports.scaleValues = scaleValues;
94
+ exports.sizes = sizes;
95
+ exports.textSizes = textSizes;
96
+ exports.variants = variants;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+
5
+ const lmvzActionCss = () => `:host{display:block}`;
6
+
7
+ const LmvzAction = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.actionClick = index.createEvent(this, "actionClick");
11
+ }
12
+ actionClick;
13
+ _onClick(event) {
14
+ this.actionClick.emit(event);
15
+ }
16
+ render() {
17
+ return (index.h(index.Host, { key: '71303bfe6ac64a96edd21800ae5e8c43a3a38c23', onClick: this._onClick.bind(this) }, index.h("slot", { key: '94922fdfd355e7e4d1b78bedb80ae814c186b199' })));
18
+ }
19
+ };
20
+ LmvzAction.style = lmvzActionCss();
21
+
22
+ exports.lmvz_action = LmvzAction;
@@ -0,0 +1,72 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+ var index$1 = require('./index-CVw4GUo6.js');
5
+ var component = require('./component-CRc6eHcV.js');
6
+ var elementActivationController = require('./element-activation-controller-DC_6T0Rt.js');
7
+ var ariaValidationController = require('./aria-validation-controller-B7unOPxT.js');
8
+ require('./_commonjsHelpers-CFO10eej.js');
9
+ require('./Effect-BIlTHtLK.js');
10
+
11
+ const lmvzButtonCss = () => ` @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } :host { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: contents; } ::slotted(*) { --lmvz-component-color: var(--lmvz-button-color); } `;
12
+
13
+ const LmvzButton = class extends ariaValidationController.ReactiveControllerHost {
14
+ get el() { return index.getElement(this); }
15
+ inheritedAttributes = {};
16
+ formEl = null;
17
+ formButtonEl = null;
18
+ lmvzActivation;
19
+ get ti() {
20
+ return 0;
21
+ }
22
+ scale = 'default';
23
+ variant = 'secondary';
24
+ disabled = false;
25
+ type = 'button';
26
+ form;
27
+ constructor(hostRef) {
28
+ super();
29
+ index.registerInstance(this, hostRef);
30
+ this.lmvzActivation = index.createEvent(this, "lmvzActivation");
31
+ this.addController(new ariaValidationController.AriaValidationController(this));
32
+ this.addController(new elementActivationController.ElementActivationController(this, {
33
+ localHandler: this.handleClick.bind(this),
34
+ keys: ['Enter'],
35
+ }));
36
+ }
37
+ connectedCallback() {
38
+ this.inheritedAttributes = component.inheritAriaAttributes(this.el);
39
+ }
40
+ renderHiddenButton() {
41
+ const formEl = (this.formEl = component.findFormByRef(this.form, this.el));
42
+ if (!formEl)
43
+ return;
44
+ const { formButtonEl } = this;
45
+ if (formButtonEl !== null && formEl.contains(formButtonEl))
46
+ return;
47
+ const newFormButtonEl = (this.formButtonEl = document.createElement('button'));
48
+ newFormButtonEl.type = 'submit';
49
+ newFormButtonEl.style.display = 'none';
50
+ newFormButtonEl.disabled = this.disabled;
51
+ formEl.appendChild(newFormButtonEl);
52
+ }
53
+ submitForm(ev) {
54
+ if (this.formEl && this.formButtonEl) {
55
+ ev.preventDefault();
56
+ this.formButtonEl.click();
57
+ }
58
+ }
59
+ handleClick = (ev) => {
60
+ if (this.type === 'submit') {
61
+ this.submitForm(ev);
62
+ }
63
+ };
64
+ render() {
65
+ this.renderHiddenButton();
66
+ return (index.h(index.Host, { key: '1c96281344dd604e2e4c919ea72907a9e934e5c6', "aria-disabled": this.disabled ? 'true' : null }, index.h("button", { key: '16728ce6fee7d121e7120aa993031777f6d8570e', disabled: this.disabled, class: index$1.classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, index.h("slot", { key: 'e1b0d95953bdbd42885eecdeef8b457070e7e247' }))));
67
+ }
68
+ static get delegatesFocus() { return true; }
69
+ };
70
+ LmvzButton.style = lmvzButtonCss();
71
+
72
+ exports.lmvz_button = LmvzButton;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+
5
+ const lmvzCardCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } .sc-lmvz-card-h { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: flex; min-width: var(--lmvz-other-component-card-minwidth, 20.4375rem); max-width: var(--lmvz-other-component-card-maxwidth, 21.6875rem); flex-direction: column; align-items: flex-start; border-radius: var(--lmvz-semantic-border-radius-lg, 14px); border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0); background: var(--lmvz-semantic-color-surface-primary, #ffffff); } *.sc-lmvz-card { color: var(--lmvz-semantic-color-on-surface-primary, #000000); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .top.sc-lmvz-card { display: flex; padding: var(--lmvz-dimension-8-12, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); flex-direction: column; justify-content: center; align-items: center; align-self: stretch; } .bottom.sc-lmvz-card { display: flex; min-width: 150px; padding: var(--lmvz-dimension-4-6, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)); flex-direction: column; align-items: flex-start; align-self: stretch; } .title.sc-lmvz-card { margin: 0; display: flex; justify-content: center; align-items: center; align-self: stretch; padding-bottom: var(--lmvz-global-s4, 4px); overflow-wrap: break-word; font: var(--lmvz-typography-heading-2xl, 500 clamp(2rem, 1.94rem + 0.26vw, 2.25rem) / 1.2 Router); } .description.sc-lmvz-card { display: flex; margin: 0; padding-bottom: var(--lmvz-component-body-sm-padding-bottom, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-items: flex-start; align-self: stretch; white-space: pre-line; font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .image-wrapper.sc-lmvz-card { aspect-ratio: 4 / 3; width: 100%; background-size: cover; background-position: center; flex: 1 0 0; align-self: stretch; border-radius: var(--lmvz-semantic-border-radius-md, 6px); } .actions.sc-lmvz-card { margin-top: var(--lmvz-component-form-wrapper-gap-y, clamp(1.13rem, 0.97rem + 0.65vw, 1.75rem)); display: flex; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-self: stretch; } button.primary.sc-lmvz-card, lmvz-button.primary.sc-lmvz-card { display: flex; justify-content: center; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); flex: 1 0 0; }`;
6
+
7
+ const LmvzCard = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.primaryAction = index.createEvent(this, "primaryAction");
11
+ }
12
+ cardTitle;
13
+ imageUrl;
14
+ description;
15
+ primaryActionLabel = '';
16
+ primaryAction;
17
+ _onPrimaryClick() {
18
+ this.primaryAction.emit();
19
+ }
20
+ _onOverflowClick(event) {
21
+ console.log(event);
22
+ }
23
+ render() {
24
+ const imgStyle = {
25
+ backgroundImage: `url(${this.imageUrl ?? index.getAssetPath('./card-placeholder.svg')})`,
26
+ };
27
+ return (index.h(index.Host, { key: 'd17230c2587b87c1fa5514875e15b7d7930857bc', role: "article" }, index.h("div", { key: 'bf8c631ee99651a10c01774a4da20142d04342db', class: "top" }, index.h("div", { key: 'fb8224ec00bc8e0c5b1668a6ed63e36b52a11d55', class: "image-wrapper", style: imgStyle }, index.h("div", { key: '26c65e0c8083faec2854a332e83b5e8abaf8c2fd', class: "chip-slot" }, index.h("slot", { key: 'b5406113b36fcb23dd08cc75e34ae64923357cd3', name: "chip" })))), index.h("div", { key: '1eb0b6682830da00fa006fcaa9763e8d33adf446', class: "bottom" }, index.h("header", { key: '5930f28a48304296be40fc337a6990a1444cdcdb' }, index.h("h2", { key: '0138cdc21b5ac8b40b40988937ba24292532e069', class: "title" }, this.cardTitle)), index.h("p", { key: '45a9e7947ae99d1db67efa4aa04c3186d02a97c7', class: "description" }, this.description), index.h("div", { key: '940a8a5e7e38f65efa0d7bb25a56131e4456c248', class: "actions" }, index.h("button", { key: '35b0a7ae68fb9ac8c62e181b0087a312a85da185', class: "primary", onClick: this._onPrimaryClick.bind(this), "data-testid": "primary" }, this.primaryActionLabel), index.h("button", { key: '6d391205d50a8ab92336bad0bd70fd24f00b5cda', class: "tertiary", "aria-label": "More actions", onClick: this._onOverflowClick }, index.h("span", { key: 'dca656b4c1758c1fdcc3c7d971e58b6a63fcd0d1', class: "icon-placeholder" }, "..."))))));
28
+ }
29
+ static get assetsDirs() { return ["../../assets"]; }
30
+ };
31
+ LmvzCard.style = lmvzCardCss();
32
+
33
+ exports.lmvz_card = LmvzCard;
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+
5
+ const lmvzChipCss = () => `:host{display:block}`;
6
+
7
+ const LmvzChip = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ }
11
+ text;
12
+ render() {
13
+ return index.h(index.Host, { key: 'b247f41d22bcf77998bf5a49669f1aa8d7fd3a63' }, this.text);
14
+ }
15
+ };
16
+ LmvzChip.style = lmvzChipCss();
17
+
18
+ exports.lmvz_chip = LmvzChip;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+ var appGlobals = require('./app-globals-V2Kpy_OQ.js');
5
+
6
+ var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
7
+ /*
8
+ Stencil Client Patch Browser v4.43.2 | MIT Licensed | https://stenciljs.com
9
+ */
10
+
11
+ var patchBrowser = () => {
12
+ const importMeta = (typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('lmvz-components.cjs.js', document.baseURI).href));
13
+ const opts = {};
14
+ if (importMeta !== "") {
15
+ opts.resourcesUrl = new URL(".", importMeta).href;
16
+ }
17
+ return index.promiseResolve(opts);
18
+ };
19
+
20
+ patchBrowser().then(async (options) => {
21
+ await appGlobals.globalScripts();
22
+ return index.bootstrapLazy([["lmvz-header.cjs",[[769,"lmvz-header",{"role":[2561],"lmvzActiveNav":[1,"lmvz-active-nav"]},null,{"lmvzActiveNav":[{"handleActiveNavChange":0}]}]]],["lmvz-action.cjs",[[257,"lmvz-action"]]],["lmvz-button.cjs",[[785,"lmvz-button",{"ti":[2562,"tabindex"],"scale":[513],"variant":[513],"disabled":[516],"type":[1],"form":[1]}]]],["lmvz-card.cjs",[[774,"lmvz-card",{"cardTitle":[1,"card-title"],"imageUrl":[1,"image-url"],"description":[1],"primaryActionLabel":[1,"primary-action-label"]}]]],["lmvz-chip.cjs",[[513,"lmvz-chip",{"text":[1]}]]],["lmvz-input.cjs",[[838,"lmvz-input",{"value":[1025],"label":[1],"helperText":[1,"helper-text"],"placeholder":[1],"disabled":[516],"readonly":[516],"required":[516],"name":[1],"type":[1],"errorMessage":[1,"error-message"],"autocomplete":[1],"inputmode":[1],"autocorrect":[1],"autocapitalize":[1],"spellcheck":[4],"autofocus":[4],"minlength":[2],"maxlength":[2],"pattern":[1],"min":[8],"max":[8],"step":[8],"form":[1],"error":[6660],"nativeError":[32],"setValue":[64],"focusInput":[64],"blurInput":[64],"select":[64],"checkValidity":[64],"reportValidity":[64],"getInputElement":[64]},null,{"value":[{"handleValueChange":0}],"disabled":[{"handleDisabledChange":0}]}]]],["lmvz-menuitem.cjs",[[774,"lmvz-menuitem",{"role":[2561],"ti":[2562,"tabindex"]}]]],["lmvz-icon.cjs",[[514,"lmvz-icon",{"icon":[513],"weight":[513],"size":[513],"ariaLabel":[513,"aria-label"],"iconData":[32],"visible":[32]},null,{"icon":[{"loadIconPathData":0}]}]]]], options);
23
+ });
24
+
25
+ exports.setNonce = index.setNonce;
@@ -0,0 +1,134 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+ var component = require('./component-CRc6eHcV.js');
5
+ var ariaValidationController = require('./aria-validation-controller-B7unOPxT.js');
6
+ require('./Effect-BIlTHtLK.js');
7
+
8
+ class ListKeyboardNavigationController {
9
+ host;
10
+ elements = [];
11
+ constructor(host) {
12
+ this.host = host;
13
+ }
14
+ hostDidRender() {
15
+ this.host.el.addEventListener('keydown', this.handleKeydown);
16
+ }
17
+ updateElements(elements) {
18
+ this.elements = elements;
19
+ }
20
+ handleKeydown = (event) => {
21
+ const { key } = event;
22
+ if (!['ArrowDown', 'ArrowRight', 'ArrowUp', 'ArrowLeft'].includes(key))
23
+ return;
24
+ const activeElement = component.getDeepActiveElement(document);
25
+ const nextElement = this.getNextFocusableElement(activeElement, ['ArrowDown', 'ArrowRight'].includes(key) ? 'down' : 'up');
26
+ if (nextElement) {
27
+ event.preventDefault();
28
+ nextElement.focus?.();
29
+ }
30
+ };
31
+ getNextFocusableElement(current, direction) {
32
+ const { elements } = this;
33
+ const currentIndex = elements.indexOf(current);
34
+ if (currentIndex === -1)
35
+ return null;
36
+ let nextIndex = null;
37
+ if (direction === 'down') {
38
+ nextIndex = (currentIndex + 1) % elements.length;
39
+ }
40
+ else if (direction === 'up') {
41
+ nextIndex = (currentIndex - 1 + elements.length) % elements.length;
42
+ }
43
+ if (nextIndex == null)
44
+ return null;
45
+ const candidate = elements[nextIndex];
46
+ if (!component.canReceiveFocus(candidate))
47
+ return this.getNextFocusableElement(candidate, direction);
48
+ return candidate;
49
+ }
50
+ }
51
+
52
+ const lmvzHeaderCss = () => `:host{display:flex;width:100vw;flex-direction:row;align-items:center;box-sizing:border-box;background-color:var(--lmvz-semantic-color-surface-primary, #ffffff);--lmvz-header-x-spacing-level-1:var(--lmvz-dimension-8-28, clamp(0.5rem, 0.2rem + 1.29vw, 1.75rem));--lmvz-header-x-spacing-level-2:var(--lmvz-component-buttongroup-wrapper-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));padding:var(--lmvz-dimension-8-16, clamp(0.5rem, 0.38rem + 0.52vw, 1rem)) var(--lmvz-header-x-spacing-level-1);gap:var(--lmvz-header-x-spacing-level-1);.brand{display:inline-flex;justify-content:center;align-items:center}#fallback-logo-lmvz{height:34px;width:auto}nav{flex-grow:1}.primary-menubar{display:flex;flex-direction:row;align-items:center}.secondary-menubar{display:flex;flex-direction:row;align-items:center;margin-left:var(--lmvz-header-x-spacing-level-2);padding-left:var(--lmvz-header-x-spacing-level-2);border-left:1px solid var(--lmvz-semantic-color-border-default, #e0e0e0)}}`;
53
+
54
+ const LmvzHeader = class extends ariaValidationController.ReactiveControllerHost {
55
+ get el() { return index.getElement(this); }
56
+ primarySlot;
57
+ secondarySlot;
58
+ secondaryNav;
59
+ keyboardNavigationController = new ListKeyboardNavigationController(this);
60
+ get primaryMenuitems() {
61
+ return this.primarySlot.assignedElements({ flatten: false });
62
+ }
63
+ get secondaryMenuitems() {
64
+ return this.secondarySlot.assignedElements({ flatten: true });
65
+ }
66
+ get role() {
67
+ return 'banner';
68
+ }
69
+ lmvzActiveNav;
70
+ get secondarySlotName() {
71
+ return `connect-nav-${this.lmvzActiveNav}`;
72
+ }
73
+ constructor(hostRef) {
74
+ super();
75
+ index.registerInstance(this, hostRef);
76
+ this.addController(new ariaValidationController.AriaValidationController(this, { reValidateOnPropChanges: true }));
77
+ this.addController(this.keyboardNavigationController);
78
+ }
79
+ handleActiveNavChange() {
80
+ this.updateElementsActive();
81
+ }
82
+ componentDidLoad() {
83
+ this.primarySlot.addEventListener('slotchange', this.handlePrimaryNavChange.bind(this));
84
+ this.handlePrimaryNavChange();
85
+ this.secondarySlot.addEventListener('slotchange', this.handleSecondaryNavChange.bind(this));
86
+ }
87
+ handlePrimaryNavChange() {
88
+ const items = this.primaryMenuitems;
89
+ if (!items.length) {
90
+ console.warn('Primary slot has no assigned elements. Please add navigation items to the primary slot.');
91
+ return;
92
+ }
93
+ items.forEach(el => {
94
+ el.setAttribute('aria-haspopup', 'true');
95
+ el.setAttribute('aria-controls', `nav-secondary`);
96
+ });
97
+ this.updateElementsActive();
98
+ }
99
+ handleSecondaryNavChange() {
100
+ const items = this.secondaryMenuitems;
101
+ if (!items.length) {
102
+ return;
103
+ }
104
+ this.keyboardNavigationController.updateElements([...this.primaryMenuitems, ...this.secondaryMenuitems]);
105
+ }
106
+ updateElementsActive() {
107
+ const items = this.primaryMenuitems;
108
+ let label;
109
+ items.forEach(el => {
110
+ const isActive = el.id === this.lmvzActiveNav;
111
+ if (isActive)
112
+ label = el.textContent || el.id;
113
+ el.setAttribute('aria-expanded', isActive ? 'true' : 'false');
114
+ });
115
+ this.secondaryNav.setAttribute('aria-label', `Untermenü für ${label}`);
116
+ }
117
+ delegateFocus() {
118
+ const firstFocusable = this.primaryMenuitems[0];
119
+ if (firstFocusable) {
120
+ firstFocusable.focus();
121
+ }
122
+ }
123
+ render() {
124
+ return (index.h(index.Host, { key: '58934683ff442801eb34f025ac809631f93a27e8', onFocus: this.delegateFocus.bind(this) }, index.h("div", { key: '35d3eadfabb70f83b313f946c8d31f9c223e8344', class: "brand" }, index.h("slot", { key: '5ce98314d980d63e1c87f508d96119aca2e702a9', name: "brand" }, index.h("lmvz-icon", { key: 'b24e61a9071d81948d506a8c545e012d3f0e5dd2', id: "fallback-logo-lmvz", icon: "Logo", size: "inherit", "aria-label": "Lehrmittelverlag Z\u00FCrich" }))), index.h("nav", { key: '1d5cc9010ef90e6cebc8a7b054db595f35f9e040', "aria-label": "Hauptnavigation" }, index.h("div", { key: '488a1b1544242562b57d76169f1988d84c611de4', role: "menubar", class: "primary-menubar" }, index.h("slot", { key: '59c6dd1442290931ed9a55f7bacc65ea4bb9ff6d', name: "nav-primary", ref: el => (this.primarySlot = el) }), index.h("separator", { key: '2729f0e8b115614c50c4a16b6684a3bdb21856b8' }), index.h("div", { key: '6b5bed5951bad9173fefdc78039e71c4ccc120b2', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: el => (this.secondaryNav = el) }, index.h("slot", { key: '02f5a13e8851372c1698e3f786a8757a0a09c32f', name: this.secondarySlotName, ref: el => (this.secondarySlot = el) })))), index.h("div", { key: '53aafe8139bcea27d3039f64a48974cdb5aac5f9', class: "actions" }, index.h("slot", { key: 'f12ee19831073253e6ba8e251ba31ec403c21035', name: "actions" }))));
125
+ }
126
+ static get watchers() { return {
127
+ "lmvzActiveNav": [{
128
+ "handleActiveNavChange": 0
129
+ }]
130
+ }; }
131
+ };
132
+ LmvzHeader.style = lmvzHeaderCss();
133
+
134
+ exports.lmvz_header = LmvzHeader;
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-9ZJx0550.js');
4
+ var Effect = require('./Effect-BIlTHtLK.js');
5
+ var ariaValidationController = require('./aria-validation-controller-B7unOPxT.js');
6
+ var icons = require('./icons-DbL3LSmP.js');
7
+
8
+ const lmvzIconCss = () => `.sc-lmvz-icon-h{--lmvz-icon-color:var(--lmvz-component-color, var(--lmvz-semantic-color-on-surface-input-primary, #000000));display:inline-block;line-height:0;svg{display:block}svg>path{stroke:var(--lmvz-icon-color);fill:none}}[size='xs'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem));height:var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))}}[size='sm'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-sm, clamp(0.88rem, 0.81rem + 0.26vw, 1.13rem));height:var(--lmvz-component-icon-size-sm, clamp(0.88rem, 0.81rem + 0.26vw, 1.13rem))}}[size='md'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-md, clamp(1rem, 0.88rem + 0.52vw, 1.5rem));height:var(--lmvz-component-icon-size-md, clamp(1rem, 0.88rem + 0.52vw, 1.5rem))}}[size='lg'].sc-lmvz-icon-h{svg{width:var(--lmvz-component-icon-size-lg, clamp(1.5rem, 1.38rem + 0.52vw, 2rem));height:var(--lmvz-component-icon-size-lg, clamp(1.5rem, 1.38rem + 0.52vw, 2rem))}}[size='inherit'].sc-lmvz-icon-h{svg{width:inherit;height:inherit}}[weight='light'].sc-lmvz-icon-h{svg>path{stroke-width:1}}[weight='medium'].sc-lmvz-icon-h{svg>path{stroke-width:1.5}}[weight='bold'].sc-lmvz-icon-h{svg>path{stroke-width:2}}[weight='filled'].sc-lmvz-icon-h{svg>path{stroke-width:2;fill:var(--lmvz-icon-color)}}`;
9
+
10
+ const LmvzIcon = class extends ariaValidationController.ReactiveControllerHost {
11
+ intersectionObserver;
12
+ get el() { return index.getElement(this); }
13
+ icon;
14
+ weight = 'medium';
15
+ size = 'md';
16
+ iconData;
17
+ visible = false;
18
+ ariaLabel;
19
+ get ariaHidden() {
20
+ return !this.ariaLabel;
21
+ }
22
+ constructor(hostRef) {
23
+ super();
24
+ index.registerInstance(this, hostRef);
25
+ this.addController(new ariaValidationController.AriaValidationController(this));
26
+ }
27
+ connectedCallback() {
28
+ this.waitUntilVisible(() => {
29
+ this.visible = true;
30
+ this.loadIconPathData();
31
+ });
32
+ }
33
+ disconnectedCallback() {
34
+ if (this.intersectionObserver) {
35
+ this.intersectionObserver.disconnect();
36
+ this.intersectionObserver = null;
37
+ }
38
+ }
39
+ async loadIconPathData() {
40
+ const { icon, visible } = this;
41
+ if (!icon || !visible) {
42
+ return;
43
+ }
44
+ this.iconData = await Effect.runPromise(icons.fetchIconSvg(this.icon).pipe(Effect.tapError(error => Effect.logError(`Error loading icon "${icon}":`, error.message, error.cause, error.stack)), Effect.catchAll(() => Effect.succeed(icons.emptyDefaultSvg()))));
45
+ }
46
+ render() {
47
+ return index.h(index.Host, { key: '50d0f96ec5085a47ca7783e5232dfb503fa32d29', role: "img", "aria-hidden": `${this.ariaHidden}`, innerHTML: this.iconData });
48
+ }
49
+ waitUntilVisible(callback, rootMargin = 50) {
50
+ if (typeof window === 'undefined' || !window.IntersectionObserver) {
51
+ callback();
52
+ return;
53
+ }
54
+ this.intersectionObserver = new IntersectionObserver(entries => {
55
+ entries.some(entry => {
56
+ if (entry.isIntersecting) {
57
+ this.intersectionObserver.disconnect();
58
+ this.intersectionObserver = null;
59
+ callback();
60
+ return true;
61
+ }
62
+ return false;
63
+ });
64
+ }, { rootMargin: `${rootMargin}px` });
65
+ this.intersectionObserver.observe(this.el);
66
+ }
67
+ static get assetsDirs() { return ["../../assets/icons"]; }
68
+ static get watchers() { return {
69
+ "icon": [{
70
+ "loadIconPathData": 0
71
+ }]
72
+ }; }
73
+ };
74
+ LmvzIcon.style = lmvzIconCss();
75
+
76
+ exports.lmvz_icon = LmvzIcon;