@quaffui/quaff 0.1.0-prealpha9 → 1.0.0-alpha2

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 (388) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +47 -14
  3. package/dist/classes/QContext.svelte.d.ts +42 -0
  4. package/dist/classes/QContext.svelte.js +63 -0
  5. package/dist/classes/QScrollObserver.svelte.d.ts +48 -0
  6. package/dist/classes/QScrollObserver.svelte.js +107 -0
  7. package/dist/classes/QTheme.svelte.d.ts +13 -0
  8. package/dist/classes/QTheme.svelte.js +62 -0
  9. package/dist/classes/Quaff.svelte.d.ts +27 -0
  10. package/dist/classes/Quaff.svelte.js +91 -0
  11. package/dist/components/avatar/QAvatar.scss +101 -0
  12. package/dist/components/avatar/QAvatar.svelte +42 -42
  13. package/dist/components/avatar/QAvatar.svelte.d.ts +4 -17
  14. package/dist/components/avatar/docs.d.ts +2 -2
  15. package/dist/components/avatar/docs.js +3 -8
  16. package/dist/components/avatar/docs.props.d.ts +3 -8
  17. package/dist/components/avatar/docs.props.js +68 -15
  18. package/dist/components/avatar/index.scss +5 -3
  19. package/dist/components/avatar/props.d.ts +51 -8
  20. package/dist/components/breadcrumbs/QBreadcrumbs.scss +10 -0
  21. package/dist/components/breadcrumbs/QBreadcrumbs.svelte +32 -14
  22. package/dist/components/breadcrumbs/QBreadcrumbs.svelte.d.ts +4 -13
  23. package/dist/components/breadcrumbs/QBreadcrumbsEl.scss +10 -0
  24. package/dist/components/breadcrumbs/QBreadcrumbsEl.svelte +65 -48
  25. package/dist/components/breadcrumbs/QBreadcrumbsEl.svelte.d.ts +4 -16
  26. package/dist/components/breadcrumbs/docs.d.ts +2 -2
  27. package/dist/components/breadcrumbs/docs.js +3 -8
  28. package/dist/components/breadcrumbs/docs.props.d.ts +5 -16
  29. package/dist/components/breadcrumbs/docs.props.js +105 -45
  30. package/dist/components/breadcrumbs/props.d.ts +26 -24
  31. package/dist/components/button/QBtn.scss +136 -0
  32. package/dist/components/button/QBtn.svelte +156 -52
  33. package/dist/components/button/QBtn.svelte.d.ts +4 -23
  34. package/dist/components/button/docs.d.ts +2 -2
  35. package/dist/components/button/docs.js +3 -8
  36. package/dist/components/button/docs.props.d.ts +3 -8
  37. package/dist/components/button/docs.props.js +174 -37
  38. package/dist/components/button/props.d.ts +48 -11
  39. package/dist/components/card/QCard.scss +47 -0
  40. package/dist/components/card/QCard.svelte +42 -19
  41. package/dist/components/card/QCard.svelte.d.ts +4 -16
  42. package/dist/components/card/QCardActions.scss +10 -0
  43. package/dist/components/card/QCardActions.svelte +23 -15
  44. package/dist/components/card/QCardActions.svelte.d.ts +4 -12
  45. package/dist/components/card/QCardSection.scss +10 -0
  46. package/dist/components/card/QCardSection.svelte +15 -11
  47. package/dist/components/card/QCardSection.svelte.d.ts +4 -13
  48. package/dist/components/card/docs.d.ts +4 -4
  49. package/dist/components/card/docs.js +7 -22
  50. package/dist/components/card/docs.props.d.ts +7 -24
  51. package/dist/components/card/docs.props.js +57 -30
  52. package/dist/components/card/props.d.ts +11 -16
  53. package/dist/components/checkbox/QCheckbox.svelte +15 -9
  54. package/dist/components/checkbox/QCheckbox.svelte.d.ts +3 -10
  55. package/dist/components/checkbox/docs.d.ts +2 -2
  56. package/dist/components/checkbox/docs.js +3 -3
  57. package/dist/components/checkbox/docs.props.d.ts +3 -8
  58. package/dist/components/checkbox/docs.props.js +24 -9
  59. package/dist/components/checkbox/index.scss +3 -1
  60. package/dist/components/checkbox/props.d.ts +2 -2
  61. package/dist/components/chip/QChip.scss +179 -0
  62. package/dist/components/chip/QChip.svelte +130 -60
  63. package/dist/components/chip/QChip.svelte.d.ts +4 -25
  64. package/dist/components/chip/docs.d.ts +2 -2
  65. package/dist/components/chip/docs.js +3 -16
  66. package/dist/components/chip/docs.props.d.ts +3 -8
  67. package/dist/components/chip/docs.props.js +96 -49
  68. package/dist/components/chip/props.d.ts +27 -29
  69. package/dist/components/codeBlock/QCodeBlock.svelte +101 -42
  70. package/dist/components/codeBlock/QCodeBlock.svelte.d.ts +3 -10
  71. package/dist/components/codeBlock/docs.props.d.ts +3 -8
  72. package/dist/components/codeBlock/docs.props.js +61 -12
  73. package/dist/components/codeBlock/props.d.ts +12 -2
  74. package/dist/components/dialog/{index.scss → QDialog.scss} +12 -14
  75. package/dist/components/dialog/QDialog.svelte +85 -78
  76. package/dist/components/dialog/QDialog.svelte.d.ts +9 -24
  77. package/dist/components/dialog/docs.d.ts +2 -2
  78. package/dist/components/dialog/docs.js +3 -3
  79. package/dist/components/dialog/docs.props.d.ts +3 -16
  80. package/dist/components/dialog/docs.props.js +37 -128
  81. package/dist/components/dialog/props.d.ts +4 -19
  82. package/dist/components/drawer/QDrawer.scss +55 -0
  83. package/dist/components/drawer/QDrawer.svelte +334 -88
  84. package/dist/components/drawer/QDrawer.svelte.d.ts +9 -28
  85. package/dist/components/drawer/docs.d.ts +2 -2
  86. package/dist/components/drawer/docs.js +3 -3
  87. package/dist/components/drawer/docs.props.d.ts +3 -8
  88. package/dist/components/drawer/docs.props.js +90 -47
  89. package/dist/components/drawer/props.d.ts +10 -13
  90. package/dist/components/footer/QFooter.scss +42 -0
  91. package/dist/components/footer/QFooter.svelte +99 -24
  92. package/dist/components/footer/QFooter.svelte.d.ts +4 -14
  93. package/dist/components/footer/docs.d.ts +2 -2
  94. package/dist/components/footer/docs.js +3 -3
  95. package/dist/components/footer/docs.props.d.ts +3 -8
  96. package/dist/components/footer/docs.props.js +47 -16
  97. package/dist/components/footer/props.d.ts +15 -9
  98. package/dist/components/header/QHeader.scss +53 -0
  99. package/dist/components/header/QHeader.svelte +90 -23
  100. package/dist/components/header/QHeader.svelte.d.ts +4 -14
  101. package/dist/components/header/docs.d.ts +2 -0
  102. package/dist/components/header/docs.js +11 -0
  103. package/dist/components/header/docs.props.d.ts +7 -0
  104. package/dist/components/header/docs.props.js +131 -0
  105. package/dist/components/header/props.d.ts +13 -5
  106. package/dist/components/icon/{index.scss → QIcon.scss} +2 -4
  107. package/dist/components/icon/QIcon.svelte +44 -28
  108. package/dist/components/icon/QIcon.svelte.d.ts +4 -18
  109. package/dist/components/icon/docs.d.ts +2 -2
  110. package/dist/components/icon/docs.js +3 -3
  111. package/dist/components/icon/docs.props.d.ts +3 -8
  112. package/dist/components/icon/docs.props.js +65 -24
  113. package/dist/components/icon/props.d.ts +9 -8
  114. package/dist/components/index.d.ts +5 -2
  115. package/dist/components/index.js +5 -2
  116. package/dist/components/input/QInput.svelte +106 -72
  117. package/dist/components/input/QInput.svelte.d.ts +4 -22
  118. package/dist/components/input/docs.d.ts +2 -2
  119. package/dist/components/input/docs.js +5 -71
  120. package/dist/components/input/docs.props.d.ts +3 -8
  121. package/dist/components/input/docs.props.js +129 -57
  122. package/dist/components/input/index.scss +1 -3
  123. package/dist/components/input/props.d.ts +81 -21
  124. package/dist/components/input/props.js +1 -13
  125. package/dist/components/layout/QLayout.scss +184 -0
  126. package/dist/components/layout/QLayout.svelte +178 -79
  127. package/dist/components/layout/QLayout.svelte.d.ts +12 -45
  128. package/dist/components/layout/docs.d.ts +2 -2
  129. package/dist/components/layout/docs.js +3 -3
  130. package/dist/components/layout/docs.props.d.ts +3 -8
  131. package/dist/components/layout/docs.props.js +62 -39
  132. package/dist/components/layout/props.d.ts +29 -21
  133. package/dist/components/list/QItem.scss +69 -0
  134. package/dist/components/list/QItem.svelte +99 -51
  135. package/dist/components/list/QItem.svelte.d.ts +4 -24
  136. package/dist/components/list/QItemSection.scss +60 -0
  137. package/dist/components/list/QItemSection.svelte +63 -37
  138. package/dist/components/list/QItemSection.svelte.d.ts +4 -15
  139. package/dist/components/list/QList.scss +30 -0
  140. package/dist/components/list/QList.svelte +43 -20
  141. package/dist/components/list/QList.svelte.d.ts +4 -26
  142. package/dist/components/list/docs.d.ts +4 -2
  143. package/dist/components/list/docs.js +23 -3
  144. package/dist/components/list/docs.props.d.ts +11 -40
  145. package/dist/components/list/docs.props.js +344 -136
  146. package/dist/components/list/props.d.ts +126 -28
  147. package/dist/components/list/props.js +1 -25
  148. package/dist/components/private/ContextReseter.svelte +15 -11
  149. package/dist/components/private/ContextReseter.svelte.d.ts +4 -8
  150. package/dist/components/private/QApi.svelte +264 -113
  151. package/dist/components/private/QApi.svelte.d.ts +3 -6
  152. package/dist/components/private/QDocs.svelte +131 -70
  153. package/dist/components/private/QDocs.svelte.d.ts +4 -11
  154. package/dist/components/private/QDocsSection.svelte +48 -18
  155. package/dist/components/private/QDocsSection.svelte.d.ts +9 -24
  156. package/dist/components/private/QIconSnippet.svelte +22 -0
  157. package/dist/components/private/QIconSnippet.svelte.d.ts +14 -0
  158. package/dist/components/private/index.d.ts +6 -0
  159. package/dist/components/private/index.js +6 -0
  160. package/dist/components/progress/QCircularProgress.scss +63 -0
  161. package/dist/components/progress/QCircularProgress.svelte +134 -21
  162. package/dist/components/progress/QCircularProgress.svelte.d.ts +3 -11
  163. package/dist/components/progress/QLinearProgress.scss +75 -0
  164. package/dist/components/progress/QLinearProgress.svelte +80 -23
  165. package/dist/components/progress/QLinearProgress.svelte.d.ts +3 -11
  166. package/dist/components/progress/docs.d.ts +3 -2
  167. package/dist/components/progress/docs.js +15 -5
  168. package/dist/components/progress/docs.props.d.ts +5 -16
  169. package/dist/components/progress/docs.props.js +287 -41
  170. package/dist/components/progress/props.d.ts +126 -14
  171. package/dist/components/radio/QRadio.svelte +16 -9
  172. package/dist/components/radio/QRadio.svelte.d.ts +3 -11
  173. package/dist/components/radio/docs.d.ts +2 -2
  174. package/dist/components/radio/docs.js +4 -26
  175. package/dist/components/radio/docs.props.d.ts +3 -8
  176. package/dist/components/radio/docs.props.js +39 -20
  177. package/dist/components/radio/index.scss +3 -1
  178. package/dist/components/radio/props.d.ts +26 -6
  179. package/dist/components/radio/props.js +1 -8
  180. package/dist/components/railbar/QRailbar.scss +54 -0
  181. package/dist/components/railbar/QRailbar.svelte +71 -65
  182. package/dist/components/railbar/QRailbar.svelte.d.ts +4 -13
  183. package/dist/components/railbar/docs.d.ts +2 -2
  184. package/dist/components/railbar/docs.js +3 -3
  185. package/dist/components/railbar/docs.props.d.ts +3 -8
  186. package/dist/components/railbar/docs.props.js +36 -15
  187. package/dist/components/railbar/props.d.ts +13 -6
  188. package/dist/components/select/QSelect.svelte +222 -146
  189. package/dist/components/select/QSelect.svelte.d.ts +4 -24
  190. package/dist/components/select/docs.d.ts +2 -2
  191. package/dist/components/select/docs.js +5 -83
  192. package/dist/components/select/docs.props.d.ts +3 -8
  193. package/dist/components/select/docs.props.js +156 -64
  194. package/dist/components/select/index.scss +25 -10
  195. package/dist/components/select/props.d.ts +100 -20
  196. package/dist/components/select/props.js +1 -14
  197. package/dist/components/separator/QSeparator.scss +54 -0
  198. package/dist/components/separator/QSeparator.svelte +50 -57
  199. package/dist/components/separator/QSeparator.svelte.d.ts +3 -14
  200. package/dist/components/separator/docs.d.ts +3 -2
  201. package/dist/components/separator/docs.js +14 -4
  202. package/dist/components/separator/docs.props.d.ts +5 -16
  203. package/dist/components/separator/docs.props.js +152 -72
  204. package/dist/components/separator/props.d.ts +84 -16
  205. package/dist/components/separator/props.js +1 -9
  206. package/dist/components/switch/QSwitch.scss +305 -0
  207. package/dist/components/switch/QSwitch.svelte +115 -0
  208. package/dist/components/switch/QSwitch.svelte.d.ts +14 -0
  209. package/dist/components/switch/docs.d.ts +2 -0
  210. package/dist/components/switch/docs.js +17 -0
  211. package/dist/components/switch/docs.props.d.ts +3 -0
  212. package/dist/components/switch/docs.props.js +119 -0
  213. package/dist/components/switch/props.d.ts +53 -0
  214. package/dist/components/switch/props.js +1 -0
  215. package/dist/components/table/QTable.svelte +133 -97
  216. package/dist/components/table/QTable.svelte.d.ts +4 -19
  217. package/dist/components/table/docs.d.ts +2 -2
  218. package/dist/components/table/docs.js +3 -3
  219. package/dist/components/table/docs.props.d.ts +3 -8
  220. package/dist/components/table/docs.props.js +67 -15
  221. package/dist/components/table/index.scss +3 -1
  222. package/dist/components/table/props.d.ts +14 -3
  223. package/dist/components/tabs/QTab.scss +71 -0
  224. package/dist/components/tabs/QTab.svelte +101 -88
  225. package/dist/components/tabs/QTab.svelte.d.ts +4 -16
  226. package/dist/components/tabs/QTabs.scss +53 -0
  227. package/dist/components/tabs/QTabs.svelte +163 -46
  228. package/dist/components/tabs/QTabs.svelte.d.ts +9 -13
  229. package/dist/components/tabs/docs.d.ts +3 -2
  230. package/dist/components/tabs/docs.js +13 -3
  231. package/dist/components/tabs/docs.props.d.ts +5 -16
  232. package/dist/components/tabs/docs.props.js +64 -30
  233. package/dist/components/tabs/index.scss +36 -24
  234. package/dist/components/tabs/props.d.ts +38 -9
  235. package/dist/components/tabs/props.js +1 -13
  236. package/dist/components/toolbar/{index.scss → QToolbar.scss} +10 -16
  237. package/dist/components/toolbar/QToolbar.svelte +26 -21
  238. package/dist/components/toolbar/QToolbar.svelte.d.ts +4 -15
  239. package/dist/components/toolbar/QToolbarTitle.svelte +10 -7
  240. package/dist/components/toolbar/QToolbarTitle.svelte.d.ts +4 -12
  241. package/dist/components/toolbar/docs.d.ts +3 -2
  242. package/dist/components/toolbar/docs.js +13 -3
  243. package/dist/components/toolbar/docs.props.d.ts +5 -16
  244. package/dist/components/toolbar/docs.props.js +55 -15
  245. package/dist/components/toolbar/props.d.ts +19 -9
  246. package/dist/components/tooltip/QTooltip.scss +40 -0
  247. package/dist/components/tooltip/QTooltip.svelte +200 -10
  248. package/dist/components/tooltip/QTooltip.svelte.d.ts +17 -18
  249. package/dist/components/tooltip/QTooltipBase.svelte +86 -0
  250. package/dist/components/tooltip/QTooltipBase.svelte.d.ts +14 -0
  251. package/dist/components/tooltip/docs.d.ts +2 -2
  252. package/dist/components/tooltip/docs.js +3 -2
  253. package/dist/components/tooltip/docs.props.d.ts +3 -8
  254. package/dist/components/tooltip/docs.props.js +69 -10
  255. package/dist/components/tooltip/props.d.ts +36 -4
  256. package/dist/components/tooltip/props.js +1 -6
  257. package/dist/composables/index.d.ts +3 -0
  258. package/dist/composables/index.js +3 -1
  259. package/dist/composables/{use-align.d.ts → useAlign.d.ts} +1 -1
  260. package/dist/composables/{use-align.js → useAlign.js} +1 -1
  261. package/dist/composables/{use-router-link.d.ts → useRouterLink.d.ts} +3 -3
  262. package/dist/composables/{use-router-link.js → useRouterLink.js} +4 -4
  263. package/dist/composables/useSize.d.ts +10 -0
  264. package/dist/composables/useSize.js +37 -0
  265. package/dist/css/_components.scss +31 -0
  266. package/dist/css/_disabled.scss +18 -0
  267. package/dist/css/{ripple.scss → _ripple.scss} +10 -3
  268. package/dist/css/_variables.scss +73 -0
  269. package/dist/css/classes/_design.scss +57 -0
  270. package/dist/css/{flex.scss → classes/_flex.scss} +23 -2
  271. package/dist/css/classes/_grid.scss +35 -0
  272. package/dist/css/classes/_index.scss +7 -0
  273. package/dist/css/classes/_overflow.scss +7 -0
  274. package/dist/css/classes/_position.scss +7 -0
  275. package/dist/css/classes/_select.scss +6 -0
  276. package/dist/css/classes/_spaces.scss +23 -0
  277. package/dist/css/fonts.scss +18 -4
  278. package/dist/css/index.css +1 -1
  279. package/dist/css/index.scss +13 -93
  280. package/dist/css/mixins/_design.scss +64 -0
  281. package/dist/css/mixins/_field.scss +64 -0
  282. package/dist/css/mixins/_image.scss +64 -0
  283. package/dist/css/mixins/_index.scss +11 -0
  284. package/dist/css/mixins/_layout.scss +20 -0
  285. package/dist/css/mixins/{menu.scss → _menu.scss} +4 -2
  286. package/dist/css/mixins/_responsive.scss +56 -0
  287. package/dist/css/mixins/{selection.scss → _selection.scss} +10 -70
  288. package/dist/css/mixins/_spaces.scss +36 -0
  289. package/dist/css/mixins/_toolbar.scss +7 -0
  290. package/dist/css/mixins/_typography.scss +7 -0
  291. package/dist/css/shared/q-field.scss +351 -0
  292. package/dist/css/theme/_color-classes.scss +332 -0
  293. package/dist/css/theme/_colors.scss +205 -0
  294. package/dist/css/theme/_css-variables.scss +5 -0
  295. package/dist/css/theme/_index.scss +12 -0
  296. package/dist/css/theme/_page.scss +17 -0
  297. package/dist/css/theme/{palette.scss → _palette.scss} +27 -5
  298. package/dist/css/theme/{reset.scss → _reset.scss} +11 -2
  299. package/dist/css/theme/_typography-variables.scss +107 -0
  300. package/dist/global.d.ts +1 -1
  301. package/dist/helpers/clickOutside.d.ts +2 -2
  302. package/dist/helpers/clickOutside.js +5 -4
  303. package/dist/helpers/index.d.ts +2 -1
  304. package/dist/helpers/index.js +2 -1
  305. package/dist/helpers/pageTitle.d.ts +1 -0
  306. package/dist/helpers/pageTitle.js +3 -0
  307. package/dist/helpers/ripple.d.ts +1 -0
  308. package/dist/helpers/ripple.js +31 -16
  309. package/dist/helpers/version.d.ts +1 -1
  310. package/dist/helpers/version.js +1 -1
  311. package/dist/index.d.ts +4 -1
  312. package/dist/index.js +4 -1
  313. package/dist/stores/index.d.ts +0 -0
  314. package/dist/stores/index.js +1 -0
  315. package/dist/utils/clipboard.d.ts +1 -1
  316. package/dist/utils/clipboard.js +3 -4
  317. package/dist/utils/colors.d.ts +69 -0
  318. package/dist/utils/colors.js +141 -15
  319. package/dist/utils/context.d.ts +33 -0
  320. package/dist/utils/context.js +33 -0
  321. package/dist/utils/dom.d.ts +3 -0
  322. package/dist/utils/dom.js +14 -4
  323. package/dist/utils/events.d.ts +24 -0
  324. package/dist/utils/events.js +24 -0
  325. package/dist/utils/index.d.ts +11 -0
  326. package/dist/utils/index.js +11 -1
  327. package/dist/utils/number.d.ts +2 -0
  328. package/dist/utils/number.js +9 -0
  329. package/dist/utils/props.d.ts +4 -4
  330. package/dist/utils/props.js +8 -6
  331. package/dist/utils/router.d.ts +16 -0
  332. package/dist/utils/router.js +20 -0
  333. package/dist/utils/string.d.ts +2 -0
  334. package/dist/utils/string.js +12 -1
  335. package/dist/utils/types.d.ts +12 -18
  336. package/dist/utils/types.js +0 -3
  337. package/dist/utils/types.json +31 -1
  338. package/package.json +44 -39
  339. package/dist/components/breadcrumbs/index.scss +0 -20
  340. package/dist/components/button/index.scss +0 -98
  341. package/dist/components/card/index.scss +0 -56
  342. package/dist/components/chip/index.scss +0 -86
  343. package/dist/components/drawer/index.scss +0 -59
  344. package/dist/components/footer/index.scss +0 -28
  345. package/dist/components/layout/index.scss +0 -387
  346. package/dist/components/list/index.scss +0 -121
  347. package/dist/components/progress/index.scss +0 -65
  348. package/dist/components/railbar/index.scss +0 -39
  349. package/dist/components/toggle/QToggle.svelte +0 -35
  350. package/dist/components/toggle/QToggle.svelte.d.ts +0 -23
  351. package/dist/components/toggle/docs.d.ts +0 -2
  352. package/dist/components/toggle/docs.js +0 -47
  353. package/dist/components/toggle/docs.props.d.ts +0 -8
  354. package/dist/components/toggle/docs.props.js +0 -42
  355. package/dist/components/toggle/index.scss +0 -31
  356. package/dist/components/toggle/props.d.ts +0 -9
  357. package/dist/components/toggle/props.js +0 -9
  358. package/dist/components/tooltip/index.scss +0 -82
  359. package/dist/composables/use-index.d.ts +0 -2
  360. package/dist/composables/use-index.js +0 -17
  361. package/dist/composables/use-size.d.ts +0 -9
  362. package/dist/composables/use-size.js +0 -25
  363. package/dist/css/grid.scss +0 -50
  364. package/dist/css/mixins/field.scss +0 -432
  365. package/dist/css/mixins.scss +0 -136
  366. package/dist/css/states.scss +0 -75
  367. package/dist/css/theme/bridge.scss +0 -15
  368. package/dist/css/theme/colors.module.scss +0 -180
  369. package/dist/css/theme/page.scss +0 -16
  370. package/dist/css/theme/theme.dark.scss +0 -37
  371. package/dist/css/theme/theme.light.scss +0 -37
  372. package/dist/css/theme/theme.scss +0 -11
  373. package/dist/css/theme/tokens.scss +0 -266
  374. package/dist/css/variables-sass.scss +0 -16
  375. package/dist/helpers/activationHandler.d.ts +0 -9
  376. package/dist/helpers/activationHandler.js +0 -23
  377. package/dist/stores/QTheme.d.ts +0 -42
  378. package/dist/stores/QTheme.js +0 -53
  379. package/dist/stores/Quaff.d.ts +0 -32
  380. package/dist/stores/Quaff.js +0 -53
  381. package/dist/utils/fields.d.ts +0 -1
  382. package/dist/utils/fields.js +0 -14
  383. package/dist/utils/watchable.d.ts +0 -3
  384. package/dist/utils/watchable.js +0 -22
  385. /package/dist/css/mixins/{table.scss → _table.scss} +0 -0
  386. /package/dist/css/theme/{elevate.scss → _elevate.scss} +0 -0
  387. /package/dist/css/theme/{typography.module.scss → _typography-classes.scss} +0 -0
  388. /package/dist/css/theme/{typography.scss → _typography.scss} +0 -0
@@ -1,58 +1,81 @@
1
+ // AUTO GENERATED FILE - DO NOT MODIFY OR DELETE
2
+ // @quaffHash 483d3c6d4e3fdcc88bb745de61c33b29
1
3
  export const QLayoutDocsProps = [
2
4
  {
5
+ isArray: false,
6
+ optional: true,
7
+ isSnippet: false,
3
8
  name: "view",
4
- type: "QLayoutViewOptions",
5
- optional: false,
6
- clickableType: true,
9
+ type: {
10
+ name: "QLayoutViewOptions",
11
+ isClickable: true,
12
+ },
7
13
  description: 'The layout view configuration, which defines how layout components (header, railbars, drawers, footer) should be displayed on screen.\nSee <a href="https://quasar.dev/layout/layout/#understanding-the-view-prop" target="_blank">Quasar\'s explanation on the view prop</a>.',
8
14
  default: '"hhh lpr fff"',
9
15
  },
16
+ ];
17
+ export const QLayoutDocsSnippets = [
18
+ {
19
+ isArray: false,
20
+ optional: true,
21
+ isSnippet: true,
22
+ name: "content",
23
+ type: [],
24
+ description: "Main area of the layout where the content will be displayed, meaning everything besides the layout components (header, railbars, drawers, footer).\nIt overrides the default children snippet.",
25
+ default: "undefined",
26
+ },
10
27
  {
11
- name: "headerHeight",
12
- type: "string | number",
13
- optional: false,
14
- clickableType: false,
15
- description: 'The height of the header. Can be specified with CSS units. If no unit is specified, "px" will be used.',
16
- default: "64px",
28
+ isArray: false,
29
+ optional: true,
30
+ isSnippet: true,
31
+ name: "railbarLeft",
32
+ type: [],
33
+ description: "The railbar on the left side of the layout.",
34
+ default: "undefined",
17
35
  },
18
36
  {
19
- name: "footerHeight",
20
- type: "string | number",
21
- optional: false,
22
- clickableType: false,
23
- description: 'The height of the footer. Can be specified with CSS units. If no unit is specified, "px" will be used.',
24
- default: "80px",
37
+ isArray: false,
38
+ optional: true,
39
+ isSnippet: true,
40
+ name: "railbarRight",
41
+ type: [],
42
+ description: "The railbar on the right side of the layout.",
43
+ default: "undefined",
25
44
  },
26
45
  {
27
- name: "leftDrawerWidth",
28
- type: "string | number",
29
- optional: false,
30
- clickableType: false,
31
- description: 'The width of the left drawer. Can be specified with CSS units. If no unit is specified, "px" will be used.',
32
- default: "300px",
46
+ isArray: false,
47
+ optional: true,
48
+ isSnippet: true,
49
+ name: "drawerLeft",
50
+ type: [],
51
+ description: "The drawer on the left side of the layout.",
52
+ default: "undefined",
33
53
  },
34
54
  {
35
- name: "rightDrawerWidth",
36
- type: "string | number",
37
- optional: false,
38
- clickableType: false,
39
- description: 'The width of the right drawer. Can be specified with CSS units. If no unit is specified, "px" will be used.',
40
- default: "300px",
55
+ isArray: false,
56
+ optional: true,
57
+ isSnippet: true,
58
+ name: "drawerRight",
59
+ type: [],
60
+ description: "The drawer on the right side of the layout.",
61
+ default: "undefined",
41
62
  },
42
63
  {
43
- name: "leftRailbarWidth",
44
- type: "string | number",
45
- optional: false,
46
- clickableType: false,
47
- description: 'The width of the left railbar. Can be specified with CSS units. If no unit is specified, "px" will be used.',
48
- default: "88px",
64
+ isArray: false,
65
+ optional: true,
66
+ isSnippet: true,
67
+ name: "header",
68
+ type: [],
69
+ description: "The header of the layout.",
70
+ default: "undefined",
49
71
  },
50
72
  {
51
- name: "rightRailbarWidth",
52
- type: "string | number",
53
- optional: false,
54
- clickableType: false,
55
- description: 'The width of the right railbar. Can be specified with CSS units. If no unit is specified, "px" will be used.',
56
- default: "88px",
73
+ isArray: false,
74
+ optional: true,
75
+ isSnippet: true,
76
+ name: "footer",
77
+ type: [],
78
+ description: "The footer of the layout.",
79
+ default: "undefined",
57
80
  },
58
81
  ];
@@ -1,41 +1,49 @@
1
- import type { NativeProps } from "../../utils/types";
1
+ import type { NativeProps } from "../../utils";
2
+ import type { Snippet } from "svelte";
3
+ import type { HTMLAttributes } from "svelte/elements";
2
4
  export type QLayoutViewOptions = `${"l" | "h"}${"h" | "H"}${"r" | "h"} ${"l" | "L"}${"p"}${"r" | "R"} ${"l" | "f"}${"f" | "F"}${"r" | "f"}`;
3
- export interface QLayoutProps extends NativeProps {
5
+ export interface QLayoutProps extends NativeProps, HTMLAttributes<HTMLDivElement> {
4
6
  /**
5
7
  * The layout view configuration, which defines how layout components (header, railbars, drawers, footer) should be displayed on screen.
6
8
  * See <a href="https://quasar.dev/layout/layout/#understanding-the-view-prop" target="_blank">Quasar's explanation on the view prop</a>.
7
9
  * @default "hhh lpr fff"
8
10
  */
9
- view: QLayoutViewOptions;
11
+ view?: QLayoutViewOptions;
10
12
  /**
11
- * The height of the header. Can be specified with CSS units. If no unit is specified, "px" will be used.
12
- * @default 64px
13
+ * Main area of the layout where the content will be displayed, meaning everything besides the layout components (header, railbars, drawers, footer).
14
+ * It overrides the default children snippet.
15
+ * @default undefined
13
16
  */
14
- headerHeight: string | number;
17
+ content?: Snippet;
15
18
  /**
16
- * The height of the footer. Can be specified with CSS units. If no unit is specified, "px" will be used.
17
- * @default 80px
19
+ * The railbar on the left side of the layout.
20
+ * @default undefined
18
21
  */
19
- footerHeight: string | number;
22
+ railbarLeft?: Snippet;
20
23
  /**
21
- * The width of the left drawer. Can be specified with CSS units. If no unit is specified, "px" will be used.
22
- * @default 300px
24
+ * The railbar on the right side of the layout.
25
+ * @default undefined
23
26
  */
24
- leftDrawerWidth: string | number;
27
+ railbarRight?: Snippet;
25
28
  /**
26
- * The width of the right drawer. Can be specified with CSS units. If no unit is specified, "px" will be used.
27
- * @default 300px
29
+ * The drawer on the left side of the layout.
30
+ * @default undefined
28
31
  */
29
- rightDrawerWidth: string | number;
32
+ drawerLeft?: Snippet;
30
33
  /**
31
- * The width of the left railbar. Can be specified with CSS units. If no unit is specified, "px" will be used.
32
- * @default 88px
34
+ * The drawer on the right side of the layout.
35
+ * @default undefined
33
36
  */
34
- leftRailbarWidth: string | number;
37
+ drawerRight?: Snippet;
35
38
  /**
36
- * The width of the right railbar. Can be specified with CSS units. If no unit is specified, "px" will be used.
37
- * @default 88px
39
+ * The header of the layout.
40
+ * @default undefined
38
41
  */
39
- rightRailbarWidth: string | number;
42
+ header?: Snippet;
43
+ /**
44
+ * The footer of the layout.
45
+ * @default undefined
46
+ */
47
+ footer?: Snippet;
40
48
  }
41
49
  export type QLayoutEvents = "resize" | "scroll" | "scrollHeight";
@@ -0,0 +1,69 @@
1
+ @use "$css/mixins";
2
+
3
+ .q-item {
4
+ display: flex;
5
+ align-items: center;
6
+ justify-content: flex-start;
7
+ white-space: nowrap;
8
+ gap: 1rem;
9
+
10
+ min-width: 100%;
11
+ max-width: 100%;
12
+ min-height: 3.5rem;
13
+ margin-top: 0 !important;
14
+ margin: 0;
15
+ padding: 0.5rem 1.5rem 0.5rem 1rem;
16
+ gap: 1rem;
17
+
18
+ &--clickable {
19
+ cursor: pointer;
20
+ }
21
+
22
+ &--dense {
23
+ min-height: 2rem;
24
+ }
25
+
26
+ &:is(.q-link, &--clickable:not(label)) {
27
+ padding: 0.5rem 1.5rem 0.5rem 1rem;
28
+
29
+ &:is(:hover, :focus):not([aria-disabled])::after {
30
+ content: "";
31
+ position: absolute;
32
+ top: 0;
33
+ left: 0;
34
+ width: 100%;
35
+ height: 100%;
36
+ background-color: var(--on-surface);
37
+ border-radius: inherit;
38
+ }
39
+
40
+ &:hover:not([aria-disabled])::after {
41
+ opacity: 0.08;
42
+ }
43
+
44
+ &:focus:not([aria-disabled])::after {
45
+ opacity: 0.16;
46
+ }
47
+
48
+ &.multiline {
49
+ padding-block: 0.75rem;
50
+ }
51
+
52
+ &::after {
53
+ background-image: radial-gradient(circle, rgb(150 150 150 / 0.2) 1%, transparent 1%);
54
+ }
55
+ }
56
+
57
+ &--multiline {
58
+ padding-block: 0.75rem;
59
+
60
+ & > .q-item__section:is(.avatar, .icon, .thumbnail, .trailingIcon, .trailingText) {
61
+ align-self: start;
62
+ }
63
+
64
+ > .q-item__section.video {
65
+ margin-left: -1rem !important;
66
+ padding-block: 0;
67
+ }
68
+ }
69
+ }
@@ -1,60 +1,108 @@
1
- <script>import QSeparator from "../separator/QSeparator.svelte";
2
- import useRouterLink, { isRouteActive } from "../../composables/use-router-link";
3
- import { createClasses } from "../../utils/props";
4
- import { getContext, setContext } from "svelte";
5
- import { Quaff } from "../../stores/Quaff";
6
- import { writable } from "svelte/store";
7
- export let tag = "div", active = false, clickable = false, dense = false, tabindex = 0, href = void 0, to = void 0, disable = false, activeClass = void 0, replace = false, userClasses = void 0;
8
- export { userClasses as class };
9
- let hasMultiplLines = writable(false);
10
- setContext("hasMultipleLines", hasMultiplLines);
11
- $:
12
- ({ hasLink, linkAttributes, linkClasses } = useRouterLink({
1
+ <script lang="ts">
2
+ import { getContext, setContext } from "svelte";
3
+ import { ripple } from "../../helpers";
4
+ import { QContext } from "../../classes/QContext.svelte";
5
+ import {
6
+ getRouterInfo,
7
+ isRouteActive,
8
+ QItemCtxName,
9
+ QListCtxName,
10
+ } from "../../utils";
11
+ import QSeparator from "../separator/QSeparator.svelte";
12
+ import type { QItemProps, QListProps } from "./props";
13
+
14
+ let {
15
+ tag = "div",
16
+ active = false,
17
+ clickable = false,
18
+ dense = false,
19
+ tabindex = 0,
13
20
  href,
14
21
  to,
15
- disable,
16
- activeClass,
17
- replace
18
- }));
19
- $:
20
- separatorOptions = getContext("separator");
21
- $:
22
- isActionable = clickable === true || hasLink === true || tag === "label";
23
- $:
24
- isClickable = disable !== true && isActionable === true;
25
- $:
26
- isActive = isRouteActive($Quaff.router, to);
27
- $:
28
- classes = createClasses([
29
- "q-item flex items-center",
30
- $hasMultiplLines && "multiline",
31
- dense && "dense",
32
- hasLink && active && "q-item--active",
33
- hasLink && active && activeClass,
34
- isActive && "active",
35
- isClickable && "wave",
36
- linkClasses,
37
- userClasses
38
- ]);
39
- $:
40
- attributes = {
41
- class: classes,
42
- tabindex: isClickable == true ? Number(tabindex) || 0 : void 0,
43
- "aria-disabled": isActionable === true && disable === true ? true : void 0,
44
- ...$$restProps
45
- };
22
+ disabled = false,
23
+ activeClass = "active",
24
+ replace = false,
25
+ noRipple = false,
26
+ children,
27
+ ...props
28
+ }: QItemProps = $props();
29
+
30
+ const routerInfo = $derived(
31
+ getRouterInfo({
32
+ href,
33
+ to,
34
+ disabled,
35
+ activeClass,
36
+ replace,
37
+ }),
38
+ );
39
+
40
+ const listActiveClass = getContext<() => string>(QListCtxName.activeClass);
41
+
42
+ const activeClassToUse = $derived(
43
+ activeClass === "active" ? listActiveClass() || activeClass : activeClass,
44
+ );
45
+
46
+ setContext(QItemCtxName.activeClass, () => active && activeClassToUse);
47
+
48
+ const multiline = new QContext(QItemCtxName.multiline, false);
49
+
50
+ const separatorOptions = getContext<
51
+ QListProps["separatorOptions"] | undefined
52
+ >(QListCtxName.separator);
53
+
54
+ const isActionable = $derived(
55
+ clickable || routerInfo.hasLink || tag === "label",
56
+ );
57
+ const isClickable = $derived(isActionable && !disabled);
58
+
59
+ const isActive = $derived(isRouteActive(to || href) || active);
46
60
  </script>
47
61
 
48
- {#if separatorOptions !== undefined}
62
+ {#if separatorOptions}
49
63
  <QSeparator {...separatorOptions} />
50
64
  {/if}
51
- {#if linkAttributes.href !== undefined}
52
- <!-- svelte-ignore a11y-missing-attribute -->
53
- <a {...attributes} {...linkAttributes} {...$$restProps} on:mouseenter on:mouseleave on:click>
54
- <slot />
65
+
66
+ {#if routerInfo.linkAttributes.href}
67
+ <!-- svelte-ignore a11y_no_noninteractive_tabindex -->
68
+ <a
69
+ use:ripple={{ disabled: !isClickable || noRipple }}
70
+ {...props}
71
+ class={[
72
+ "q-item",
73
+ routerInfo.linkClasses,
74
+ isActive && activeClassToUse,
75
+ props.class,
76
+ multiline.value && "q-item--multiline",
77
+ dense && "q-item--dense",
78
+ isActive && "q-item--active",
79
+ clickable && "q-item--clickable",
80
+ ]}
81
+ tabindex={isClickable ? tabindex || 0 : undefined}
82
+ aria-disabled={isActionable && disabled ? true : undefined}
83
+ {...routerInfo.linkAttributes}
84
+ data-quaff
85
+ >
86
+ {@render children?.()}
55
87
  </a>
56
88
  {:else}
57
- <div {...attributes} {...$$restProps} on:mouseenter on:mouseleave on:click>
58
- <slot />
59
- </div>
89
+ <svelte:element
90
+ this={tag}
91
+ {...props}
92
+ class={[
93
+ "q-item",
94
+ routerInfo.linkClasses,
95
+ isActive && activeClassToUse,
96
+ props.class,
97
+ multiline.value && "q-item--multiline",
98
+ dense && "q-item--dense",
99
+ isActive && "q-item--active",
100
+ clickable && "q-item--clickable",
101
+ ]}
102
+ tabindex={isClickable ? tabindex || 0 : undefined}
103
+ aria-disabled={isActionable && disabled ? true : undefined}
104
+ data-quaff
105
+ >
106
+ {@render children?.()}
107
+ </svelte:element>
60
108
  {/if}
@@ -1,34 +1,14 @@
1
- import { SvelteComponent } from "svelte";
2
- import type { QItemProps } from "./props";
1
+ import { SvelteComponentTyped } from "svelte";
3
2
  declare const __propDef: {
4
- props: {
5
- [x: string]: any;
6
- tag?: string | undefined;
7
- active?: boolean | undefined;
8
- clickable?: boolean | undefined;
9
- dense?: boolean | undefined;
10
- tabindex?: string | number | undefined;
11
- href?: QItemProps["href"];
12
- to?: QItemProps["to"];
13
- disable?: boolean | undefined;
14
- activeClass?: QItemProps["activeClass"];
15
- replace?: boolean | undefined;
16
- class?: string | undefined;
17
- };
3
+ props: Record<string, never>;
18
4
  events: {
19
- mouseenter: MouseEvent;
20
- mouseleave: MouseEvent;
21
- click: MouseEvent;
22
- } & {
23
5
  [evt: string]: CustomEvent<any>;
24
6
  };
25
- slots: {
26
- default: {};
27
- };
7
+ slots: {};
28
8
  };
29
9
  type QItemProps_ = typeof __propDef.props;
30
10
  export { QItemProps_ as QItemProps };
31
11
  export type QItemEvents = typeof __propDef.events;
32
12
  export type QItemSlots = typeof __propDef.slots;
33
- export default class QItem extends SvelteComponent<QItemProps, QItemEvents, QItemSlots> {
13
+ export default class QItem extends SvelteComponentTyped<QItemProps_, QItemEvents, QItemSlots> {
34
14
  }
@@ -0,0 +1,60 @@
1
+ @use "$css/mixins";
2
+
3
+ .q-item__section {
4
+ display: flex;
5
+
6
+ @include mixins.typography("body-medium");
7
+ color: var(--on-surface-variant);
8
+
9
+ &--headline {
10
+ max-width: 100%;
11
+ @include mixins.typography("body-large");
12
+ color: var(--on-surface);
13
+ }
14
+
15
+ &--trailing {
16
+ @include mixins.typography("label-small");
17
+ }
18
+
19
+ &--video {
20
+ margin-left: -1rem;
21
+ padding-block: 0.25rem;
22
+
23
+ & video {
24
+ width: auto;
25
+ height: 4rem;
26
+ object-fit: cover;
27
+ object-position: center;
28
+ }
29
+ }
30
+
31
+ & .q-avatar {
32
+ height: 2.5rem;
33
+ width: 2.5rem;
34
+ }
35
+ &--icon {
36
+ height: 1.5rem;
37
+ width: 1.5rem;
38
+ }
39
+
40
+ &--thumbnail img {
41
+ width: 3.5rem;
42
+ height: 3.5rem;
43
+ object-fit: cover;
44
+ object-position: center;
45
+ }
46
+
47
+ &--content {
48
+ flex-direction: column;
49
+ flex: 10000 1 0;
50
+ justify-content: center;
51
+ align-items: start;
52
+ }
53
+
54
+ &--toggle {
55
+ align-items: center;
56
+ justify-content: center;
57
+ height: 1.5rem;
58
+ width: 3.25rem;
59
+ }
60
+ }
@@ -1,47 +1,73 @@
1
- <script>import { createClasses } from "../../utils/props";
2
- import { getContext } from "svelte";
3
- export let type = "content", userClasses = void 0;
4
- export { userClasses as class };
5
- $:
6
- ctx = getContext("hasMultipleLines");
7
- $:
8
- if (type === "content") {
9
- $ctx = $$slots.headline && [$$slots.line1, $$slots.line2, $$slots.line3].filter(Boolean).length >= 2;
1
+ <script lang="ts">
2
+ import { getContext, type Snippet } from "svelte";
3
+ import { QContext } from "../../classes/QContext.svelte";
4
+ import { QItemCtxName } from "../../utils";
5
+ import type { QItemSectionProps } from "./props";
6
+
7
+ let {
8
+ type = "content",
9
+ children,
10
+ headline = children,
11
+ line1,
12
+ line2,
13
+ line3,
14
+ ...props
15
+ }: QItemSectionProps = $props();
16
+
17
+ const activeClass = getContext<() => string>(QItemCtxName.activeClass);
18
+
19
+ const multiline = QContext.get<boolean>(QItemCtxName.multiline);
20
+
21
+ $effect(() => {
22
+ if (type === "content") {
23
+ multiline?.update(
24
+ !!headline && [line1, line2, line3].filter(Boolean).length >= 2,
25
+ );
26
+ }
27
+ });
28
+
29
+ function getClass(snip: Snippet) {
30
+ return snip === headline ? "q-item__section--headline" : undefined;
10
31
  }
11
- $:
12
- classes = createClasses([`q-item__section `, `q-item__section--${type}`, userClasses]);
13
32
  </script>
14
33
 
15
- <div class={classes} {...$$restProps}>
34
+ <div
35
+ {...props}
36
+ class={[
37
+ "q-item__section",
38
+ props.class,
39
+ `q-item__section--${type}`,
40
+ type === "trailingText" && "q-item__section--trailing",
41
+ ]}
42
+ data-quaff
43
+ >
16
44
  {#if type === "content"}
17
- {#if [$$slots.headline, $$slots.line2, $$slots.line2, $$slots.line3].some(Boolean) === false}
18
- <slot />
19
- {/if}
20
- {#if $$slots.headline}
21
- <div class="body-large on-surface-text">
22
- <slot name="headline" />
23
- </div>
24
- {/if}
25
- <div class="body-medium on-surface-variant-text">
26
- {#if $$slots.line1}
27
- <slot name="line1" />
28
- {/if}
29
- </div>
30
- {#if $$slots.line2}
31
- <div class="body-medium on-surface-variant-text">
32
- <slot name="line2" />
33
- </div>
34
- {/if}
35
- {#if $$slots.line3}
36
- <div class="body-medium on-surface-variant-text">
37
- <slot name="line3" />
38
- </div>
45
+ {#if !headline && !line1 && !line2 && !line3}
46
+ {@render children?.()}
47
+ {:else}
48
+ {@render line(headline)}
49
+
50
+ {@render line(line1)}
51
+
52
+ {@render line(line2)}
53
+
54
+ {@render line(line3)}
39
55
  {/if}
40
56
  {:else if type === "trailingText"}
41
- <div class="label-small on-surface-variant-text">
42
- <slot />
57
+ <div class={["label-small", activeClass()]}>
58
+ {@render children?.()}
43
59
  </div>
44
60
  {:else}
45
- <slot />
61
+ <div class={activeClass() || undefined}>
62
+ {@render children?.()}
63
+ </div>
46
64
  {/if}
47
65
  </div>
66
+
67
+ {#snippet line(snip: Snippet | undefined)}
68
+ {#if snip}
69
+ <div class={[getClass(snip), activeClass()]}>
70
+ {@render snip()}
71
+ </div>
72
+ {/if}
73
+ {/snippet}
@@ -1,25 +1,14 @@
1
- import { SvelteComponent } from "svelte";
2
- import type { QItemSectionProps } from "./props";
1
+ import { SvelteComponentTyped } from "svelte";
3
2
  declare const __propDef: {
4
- props: {
5
- [x: string]: any;
6
- type?: import("./props").QItemSectionTypes | undefined;
7
- class?: string | undefined;
8
- };
3
+ props: Record<string, never>;
9
4
  events: {
10
5
  [evt: string]: CustomEvent<any>;
11
6
  };
12
- slots: {
13
- default: {};
14
- headline: {};
15
- line1: {};
16
- line2: {};
17
- line3: {};
18
- };
7
+ slots: {};
19
8
  };
20
9
  type QItemSectionProps_ = typeof __propDef.props;
21
10
  export { QItemSectionProps_ as QItemSectionProps };
22
11
  export type QItemSectionEvents = typeof __propDef.events;
23
12
  export type QItemSectionSlots = typeof __propDef.slots;
24
- export default class QItemSection extends SvelteComponent<QItemSectionProps, QItemSectionEvents, QItemSectionSlots> {
13
+ export default class QItemSection extends SvelteComponentTyped<QItemSectionProps_, QItemSectionEvents, QItemSectionSlots> {
25
14
  }