vitrify 0.17.4 → 0.17.6

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 (133) hide show
  1. package/dist/plugins/quasar/unocss/components/QAjaxBar.unocss.js +8 -4
  2. package/dist/plugins/quasar/unocss/components/QAvatar.unocss.js +4 -2
  3. package/dist/plugins/quasar/unocss/components/QBadge.unocss.js +8 -4
  4. package/dist/plugins/quasar/unocss/components/QBanner.unocss.js +6 -3
  5. package/dist/plugins/quasar/unocss/components/QBar.unocss.js +6 -3
  6. package/dist/plugins/quasar/unocss/components/QBtn.unocss.js +26 -13
  7. package/dist/plugins/quasar/unocss/components/QBtnDropdown.unocss.js +4 -2
  8. package/dist/plugins/quasar/unocss/components/QBtnGroup.unocss.js +10 -5
  9. package/dist/plugins/quasar/unocss/components/QCard.unocss.js +14 -7
  10. package/dist/plugins/quasar/unocss/components/QCarousel.unocss.js +38 -19
  11. package/dist/plugins/quasar/unocss/components/QChatMessage.unocss.js +14 -7
  12. package/dist/plugins/quasar/unocss/components/QCheckbox.unocss.js +16 -8
  13. package/dist/plugins/quasar/unocss/components/QChip.unocss.js +25 -47
  14. package/dist/plugins/quasar/unocss/components/QCircularProgress.unocss.js +4 -2
  15. package/dist/plugins/quasar/unocss/components/QColorPicker.unocss.js +46 -102
  16. package/dist/plugins/quasar/unocss/components/QDate.unocss.js +54 -27
  17. package/dist/plugins/quasar/unocss/components/QDialog.unocss.js +24 -12
  18. package/dist/plugins/quasar/unocss/components/QDrawer.unocss.js +28 -25
  19. package/dist/plugins/quasar/unocss/components/QEditor.unocss.js +10 -5
  20. package/dist/plugins/quasar/unocss/components/QExpansionItem.unocss.js +16 -8
  21. package/dist/plugins/quasar/unocss/components/QFab.unocss.js +46 -23
  22. package/dist/plugins/quasar/unocss/components/QField.unocss.js +60 -30
  23. package/dist/plugins/quasar/unocss/components/QFile.unocss.js +6 -3
  24. package/dist/plugins/quasar/unocss/components/QFooter.unocss.js +4 -2
  25. package/dist/plugins/quasar/unocss/components/QHeader.unocss.js +4 -2
  26. package/dist/plugins/quasar/unocss/components/QImg.unocss.js +12 -6
  27. package/dist/plugins/quasar/unocss/components/QInnerLoading.unocss.js +2 -1
  28. package/dist/plugins/quasar/unocss/components/QInput.unocss.js +4 -18
  29. package/dist/plugins/quasar/unocss/components/QItem.unocss.js +32 -16
  30. package/dist/plugins/quasar/unocss/components/QKnob.unocss.js +5 -6
  31. package/dist/plugins/quasar/unocss/components/QLayout.unocss.js +6 -3
  32. package/dist/plugins/quasar/unocss/components/QLinearProgress.unocss.js +23 -12
  33. package/dist/plugins/quasar/unocss/components/QMenu.unocss.js +4 -2
  34. package/dist/plugins/quasar/unocss/components/QPageSticky.unocss.js +2 -1
  35. package/dist/plugins/quasar/unocss/components/QPagination.unocss.js +6 -3
  36. package/dist/plugins/quasar/unocss/components/QParallax.unocss.js +4 -2
  37. package/dist/plugins/quasar/unocss/components/QPopupEdit.unocss.js +2 -1
  38. package/dist/plugins/quasar/unocss/components/QPullToRefresh.unocss.js +4 -2
  39. package/dist/plugins/quasar/unocss/components/QRadio.unocss.js +29 -15
  40. package/dist/plugins/quasar/unocss/components/QRating.unocss.js +8 -4
  41. package/dist/plugins/quasar/unocss/components/QResponsive.unocss.js +4 -2
  42. package/dist/plugins/quasar/unocss/components/QScrollarea.unocss.js +10 -5
  43. package/dist/plugins/quasar/unocss/components/QSelect.unocss.js +14 -7
  44. package/dist/plugins/quasar/unocss/components/QSeparator.unocss.js +9 -5
  45. package/dist/plugins/quasar/unocss/components/QSkeleton.unocss.js +67 -42
  46. package/dist/plugins/quasar/unocss/components/QSlideItem.unocss.js +10 -5
  47. package/dist/plugins/quasar/unocss/components/QSlider.unocss.js +70 -35
  48. package/dist/plugins/quasar/unocss/components/QSpinner.unocss.js +2 -1
  49. package/dist/plugins/quasar/unocss/components/QSplitter.unocss.js +18 -16
  50. package/dist/plugins/quasar/unocss/components/QStepper.unocss.js +54 -38
  51. package/dist/plugins/quasar/unocss/components/QTable.unocss.js +101 -55
  52. package/dist/plugins/quasar/unocss/components/QTabs.unocss.js +67 -44
  53. package/dist/plugins/quasar/unocss/components/QTime.unocss.js +167 -65
  54. package/dist/plugins/quasar/unocss/components/QTimeline.unocss.js +41 -30
  55. package/dist/plugins/quasar/unocss/components/QToggle.unocss.js +23 -18
  56. package/dist/plugins/quasar/unocss/components/QToolbar.unocss.js +4 -2
  57. package/dist/plugins/quasar/unocss/components/QTooltip.unocss.js +4 -2
  58. package/dist/plugins/quasar/unocss/components/QTree.unocss.js +54 -27
  59. package/dist/plugins/quasar/unocss/components/QUploader.unocss.js +37 -25
  60. package/dist/plugins/quasar/unocss/components/QVideo.unocss.js +4 -2
  61. package/dist/plugins/quasar/unocss/components/QVirtualScroll.unocss.js +6 -3
  62. package/dist/plugins/quasar/unocss/core/elevation.unocss.js +59 -56
  63. package/dist/plugins/quasar/unocss/index.js +147 -7
  64. package/dist/plugins/quasar/unocss/theme.js +300 -426
  65. package/dist/types/plugins/quasar/unocss/index.d.ts +2 -0
  66. package/dist/types/plugins/quasar/unocss/theme.d.ts +827 -127
  67. package/dist/types/plugins/quasar.d.ts +6 -8
  68. package/package.json +1 -1
  69. package/src/node/plugins/quasar/unocss/components/QAjaxBar.unocss.ts +12 -4
  70. package/src/node/plugins/quasar/unocss/components/QAvatar.unocss.ts +2 -0
  71. package/src/node/plugins/quasar/unocss/components/QBadge.unocss.ts +8 -2
  72. package/src/node/plugins/quasar/unocss/components/QBanner.unocss.ts +3 -0
  73. package/src/node/plugins/quasar/unocss/components/QBar.unocss.ts +9 -3
  74. package/src/node/plugins/quasar/unocss/components/QBtn.unocss.ts +21 -4
  75. package/src/node/plugins/quasar/unocss/components/QBtnDropdown.unocss.ts +4 -1
  76. package/src/node/plugins/quasar/unocss/components/QBtnGroup.unocss.ts +5 -0
  77. package/src/node/plugins/quasar/unocss/components/QCard.unocss.ts +9 -1
  78. package/src/node/plugins/quasar/unocss/components/QCarousel.unocss.ts +41 -11
  79. package/src/node/plugins/quasar/unocss/components/QChatMessage.unocss.ts +13 -3
  80. package/src/node/plugins/quasar/unocss/components/QCheckbox.unocss.ts +10 -1
  81. package/src/node/plugins/quasar/unocss/components/QChip.unocss.ts +47 -50
  82. package/src/node/plugins/quasar/unocss/components/QCircularProgress.unocss.ts +2 -0
  83. package/src/node/plugins/quasar/unocss/components/QColorPicker.unocss.ts +93 -102
  84. package/src/node/plugins/quasar/unocss/components/QDate.unocss.ts +45 -9
  85. package/src/node/plugins/quasar/unocss/components/QDialog.unocss.ts +36 -12
  86. package/src/node/plugins/quasar/unocss/components/QDrawer.unocss.ts +28 -25
  87. package/src/node/plugins/quasar/unocss/components/QEditor.unocss.ts +15 -5
  88. package/src/node/plugins/quasar/unocss/components/QExpansionItem.unocss.ts +16 -4
  89. package/src/node/plugins/quasar/unocss/components/QFab.unocss.ts +35 -6
  90. package/src/node/plugins/quasar/unocss/components/QField.unocss.ts +38 -4
  91. package/src/node/plugins/quasar/unocss/components/QFile.unocss.ts +5 -1
  92. package/src/node/plugins/quasar/unocss/components/QFooter.unocss.ts +4 -1
  93. package/src/node/plugins/quasar/unocss/components/QHeader.unocss.ts +4 -1
  94. package/src/node/plugins/quasar/unocss/components/QImg.unocss.ts +12 -3
  95. package/src/node/plugins/quasar/unocss/components/QInnerLoading.unocss.ts +1 -0
  96. package/src/node/plugins/quasar/unocss/components/QInput.unocss.ts +4 -24
  97. package/src/node/plugins/quasar/unocss/components/QItem.unocss.ts +30 -7
  98. package/src/node/plugins/quasar/unocss/components/QKnob.unocss.ts +5 -9
  99. package/src/node/plugins/quasar/unocss/components/QLayout.unocss.ts +5 -1
  100. package/src/node/plugins/quasar/unocss/components/QLinearProgress.unocss.ts +23 -5
  101. package/src/node/plugins/quasar/unocss/components/QMenu.unocss.ts +2 -0
  102. package/src/node/plugins/quasar/unocss/components/QPageSticky.unocss.ts +1 -0
  103. package/src/node/plugins/quasar/unocss/components/QPagination.unocss.ts +3 -0
  104. package/src/node/plugins/quasar/unocss/components/QParallax.unocss.ts +2 -0
  105. package/src/node/plugins/quasar/unocss/components/QPopupEdit.unocss.ts +3 -1
  106. package/src/node/plugins/quasar/unocss/components/QPullToRefresh.unocss.ts +4 -1
  107. package/src/node/plugins/quasar/unocss/components/QRadio.unocss.ts +31 -15
  108. package/src/node/plugins/quasar/unocss/components/QRating.unocss.ts +8 -2
  109. package/src/node/plugins/quasar/unocss/components/QResponsive.unocss.ts +2 -0
  110. package/src/node/plugins/quasar/unocss/components/QScrollarea.unocss.ts +13 -4
  111. package/src/node/plugins/quasar/unocss/components/QSelect.unocss.ts +17 -5
  112. package/src/node/plugins/quasar/unocss/components/QSeparator.unocss.ts +14 -4
  113. package/src/node/plugins/quasar/unocss/components/QSkeleton.unocss.ts +83 -43
  114. package/src/node/plugins/quasar/unocss/components/QSlideItem.unocss.ts +5 -0
  115. package/src/node/plugins/quasar/unocss/components/QSlider.unocss.ts +55 -10
  116. package/src/node/plugins/quasar/unocss/components/QSpinner.unocss.ts +1 -0
  117. package/src/node/plugins/quasar/unocss/components/QSplitter.unocss.ts +20 -18
  118. package/src/node/plugins/quasar/unocss/components/QStepper.unocss.ts +51 -34
  119. package/src/node/plugins/quasar/unocss/components/QTable.unocss.ts +110 -51
  120. package/src/node/plugins/quasar/unocss/components/QTabs.unocss.ts +77 -46
  121. package/src/node/plugins/quasar/unocss/components/QTime.unocss.ts +192 -65
  122. package/src/node/plugins/quasar/unocss/components/QTimeline.unocss.ts +36 -28
  123. package/src/node/plugins/quasar/unocss/components/QToggle.unocss.ts +24 -20
  124. package/src/node/plugins/quasar/unocss/components/QToolbar.unocss.ts +2 -0
  125. package/src/node/plugins/quasar/unocss/components/QTooltip.unocss.ts +2 -0
  126. package/src/node/plugins/quasar/unocss/components/QTree.unocss.ts +59 -24
  127. package/src/node/plugins/quasar/unocss/components/QUploader.unocss.ts +36 -22
  128. package/src/node/plugins/quasar/unocss/components/QVideo.unocss.ts +2 -0
  129. package/src/node/plugins/quasar/unocss/components/QVirtualScroll.unocss.ts +3 -0
  130. package/src/node/plugins/quasar/unocss/core/elevation.unocss.ts +61 -60
  131. package/src/node/plugins/quasar/unocss/index.ts +150 -7
  132. package/src/node/plugins/quasar/unocss/theme.ts +1422 -428
  133. package/src/node/plugins/quasar.ts +12 -9
@@ -13,75 +13,102 @@ const preflights = [
13
13
  const shortcuts = [
14
14
  [
15
15
  /^q-tree$/,
16
- ([, c], { theme }) => `relative text-[#9e9e9e] [&_>_.q-tree\\_\\_node]:(p-0) [&_>_.q-tree\\_\\_node:after]:(hidden) [&_>_.q-tree\\_\\_node_>_.q-tree\\_\\_node-header:before]:(hidden) [&_>_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header]:(pl-[24px])`
16
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree'] ??
17
+ `relative text-[#9e9e9e] [&_>_.q-tree\\_\\_node]:(p-0) [&_>_.q-tree\\_\\_node:after]:(hidden) [&_>_.q-tree\\_\\_node_>_.q-tree\\_\\_node-header:before]:(hidden) [&_>_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header]:(pl-[24px])`
17
18
  ],
18
- [/^q-tree__node$/, ([, c], { theme }) => `pt-[0] pr-[0] pb-[3px] pl-[22px]`],
19
19
  [
20
- /^q-tree__node:after$/,
21
- ([, c], { theme }) => `content-empty absolute -top-[3px] bottom-0 w-[2px] right-auto -left-[13px] [border-left:1px_solid_currentColor]`
20
+ /^q-tree__node$/,
21
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node'] ??
22
+ `pt-[0] pr-[0] pb-[3px] pl-[22px] [&:after]:(content-[''] absolute -top-[3px] bottom-[0] w-[2px] right-auto -left-[13px] [border-left:1px_solid_currentColor]) [&:last-child:after]:(hidden)`
22
23
  ],
23
- [/^q-tree__node:last-child:after$/, ([, c], { theme }) => `hidden`],
24
24
  [
25
25
  /^q-tree__node--disabled$/,
26
- ([, c], { theme }) => `pointer-events-none [&_.disabled]:(!opacity-100) [&_>_div]:(!opacity-60) [&_>_i]:(!opacity-60) [&_>_.disabled]:(!opacity-60) [&_>_div_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_div_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_div_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100)`
26
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node--disabled'] ??
27
+ `pointer-events-none [&_.disabled]:(!opacity-100) [&_>_div]:(!opacity-60) [&_>_i]:(!opacity-60) [&_>_.disabled]:(!opacity-60) [&_>_div_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_div_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_div_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_i_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_div]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_i]:(!opacity-100) [&_>_.disabled_.q-tree\\_\\_node--disabled_>_.disabled]:(!opacity-100)`
27
28
  ],
28
29
  [
29
- /^q-tree__node-header:before$/,
30
- ([, c], { theme }) => `content-empty absolute -top-[3px] bottom-2/4 w-[31px] -left-[35px] [border-left:1px_solid_currentColor] [border-bottom:1px_solid_currentColor]`
30
+ /^q-tree__node-header$/,
31
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node-header'] ??
32
+ `[&:before]:(content-[''] absolute -top-[3px] bottom-2/4 w-[31px] -left-[35px] [border-left:1px_solid_currentColor] [border-bottom:1px_solid_currentColor]) p-[4px] mt-[3px] rounded-[4px] outline-[0]`
33
+ ],
34
+ [
35
+ /^q-tree__children$/,
36
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__children'] ?? `pl-[25px]`
31
37
  ],
32
- [/^q-tree__children$/, ([, c], { theme }) => `pl-[25px]`],
33
38
  [
34
39
  /^q-tree__node-body$/,
35
- ([, c], { theme }) => `pt-[5px] pr-[0] pb-[8px] pl-[5px]`
40
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node-body'] ??
41
+ `pt-[5px] pr-[0] pb-[8px] pl-[5px]`
36
42
  ],
37
43
  [
38
44
  /^q-tree__node--parent$/,
39
- ([, c], { theme }) => `pl-[2px] [&_>_.q-tree\\_\\_node-header:before]:(w-[15px] -left-[15px]) [&_>_.q-tree\\_\\_node-collapsible_>_.q-tree\\_\\_node-body]:(pt-[5px] pr-[0] pb-[8px] pl-[27px]) [&_>_.q-tree\\_\\_node-collapsible_>_.q-tree\\_\\_node-body:after]:(content-empty absolute top-0 w-[2px] h-full right-auto left-[12px] [border-left:1px_solid_currentColor] bottom-[50px])`
45
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node--parent'] ??
46
+ `pl-[2px] [&_>_.q-tree\\_\\_node-header:before]:(w-[15px] -left-[15px]) [&_>_.q-tree\\_\\_node-collapsible_>_.q-tree\\_\\_node-body]:(pt-[5px] pr-[0] pb-[8px] pl-[27px]) [&_>_.q-tree\\_\\_node-collapsible_>_.q-tree\\_\\_node-body:after]:(content-[''] absolute top-[0] w-[2px] h-full right-auto left-[12px] [border-left:1px_solid_currentColor] bottom-[50px])`
40
47
  ],
41
- [/^q-tree__node--link$/, ([, c], { theme }) => `cursor-pointer`],
42
48
  [
43
- /^q-tree__node-header$/,
44
- ([, c], { theme }) => `p-[4px] mt-[3px] rounded-[4px] outline-0`
49
+ /^q-tree__node--link$/,
50
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node--link'] ?? `cursor-pointer`
45
51
  ],
46
52
  [
47
53
  /^q-tree__node-header-content$/,
48
- ([, c], { theme }) => `text-[#000] [transition:color_0.3s] [&_.q-icon]:(text-[21px]) [&_.q-avatar]:(text-[28px] rounded-[50%] w-[28px] h-[28px])`
54
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node-header-content'] ??
55
+ `text-[#000] [transition:color_0.3s] [&_.q-icon]:(text-[21px]) [&_.q-avatar]:(text-[28px] rounded-[50%] w-[28px] h-[28px])`
49
56
  ],
50
57
  [
51
58
  /^q-tree__node--selected$/,
52
- ([, c], { theme }) => `[&_.q-tree\\_\\_node-header-content]:(text-[#9e9e9e])`
59
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__node--selected'] ??
60
+ `[&_.q-tree\\_\\_node-header-content]:(text-[#9e9e9e])`
61
+ ],
62
+ [
63
+ /^q-tree__icon$/,
64
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__icon'] ?? `text-[21px]`
65
+ ],
66
+ [
67
+ /^q-tree__img$/,
68
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__img'] ?? `h-[42px] rounded-[2px]`
53
69
  ],
54
- [/^q-tree__icon$/, ([, c], { theme }) => `text-[21px]`],
55
- [/^q-tree__img$/, ([, c], { theme }) => `h-[42px] rounded-[2px]`],
56
70
  [
57
71
  /^q-tree__avatar$/,
58
- ([, c], { theme }) => `text-[28px] rounded-[50%] w-[28px] h-[28px]`
72
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__avatar'] ??
73
+ `text-[28px] rounded-[50%] w-[28px] h-[28px]`
59
74
  ],
60
75
  [
61
76
  /^q-tree__arrow$/,
62
- ([, c], { theme }) => `text-[16px] mr-[4px] [transition:transform_0.3s]`
77
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__arrow'] ??
78
+ `text-[16px] mr-[4px] [transition:transform_0.3s]`
79
+ ],
80
+ [
81
+ /^q-tree__spinner$/,
82
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__spinner'] ?? `text-[16px] mr-[4px]`
63
83
  ],
64
- [/^q-tree__spinner$/, ([, c], { theme }) => `text-[16px] mr-[4px]`],
65
84
  [
66
85
  /^q-tree__arrow--rotate$/,
67
- ([, c], { theme }) => `[transform:rotate3d(0,_0,_1,_90deg)]`
86
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__arrow--rotate'] ??
87
+ `[transform:rotate3d(0,_0,_1,_90deg)]`
88
+ ],
89
+ [
90
+ /^q-tree__tickbox$/,
91
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree__tickbox'] ?? `mr-[4px]`
68
92
  ],
69
- [/^q-tree__tickbox$/, ([, c], { theme }) => `mr-[4px]`],
70
93
  [
71
94
  /^q-tree--dark$/,
72
- ([, c], { theme }) => `[&_.q-tree\\_\\_node-header-content]:(text-[#fff])`
95
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree--dark'] ??
96
+ `[&_.q-tree\\_\\_node-header-content]:(text-[#fff])`
73
97
  ],
74
98
  [
75
99
  /^q-tree--no-connectors$/,
76
- ([, c], { theme }) => `[&_.q-tree\\_\\_node:after]:(!hidden) [&_.q-tree\\_\\_node-header:before]:(!hidden) [&_.q-tree\\_\\_node-body:after]:(!hidden)`
100
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree--no-connectors'] ??
101
+ `[&_.q-tree\\_\\_node:after]:(!hidden) [&_.q-tree\\_\\_node-header:before]:(!hidden) [&_.q-tree\\_\\_node-body:after]:(!hidden)`
77
102
  ],
78
103
  [
79
104
  /^q-tree--dense$/,
80
- ([, c], { theme }) => `[&_>_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header]:(pl-px) [&_.q-tree\\_\\_arrow]:(mr-px) [&_.q-tree\\_\\_spinner]:(mr-px) [&_.q-tree\\_\\_img]:(h-[32px]) [&_.q-tree\\_\\_tickbox]:(mr-[3px]) [&_.q-tree\\_\\_node]:(p-0) [&_.q-tree\\_\\_node:after]:(top-0 -left-[8px]) [&_.q-tree\\_\\_node-header]:(mt-0 p-px) [&_.q-tree\\_\\_node-header:before]:(top-0 -left-[8px] w-[8px]) [&_.q-tree\\_\\_node--child]:(pl-[17px]) [&_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header:before]:(-left-[25px] w-[21px]) [&_.q-tree\\_\\_node-body]:(pt-[0] px-[0] pb-[2px]) [&_.q-tree\\_\\_children]:(pl-[16px])`
105
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree--dense'] ??
106
+ `[&_>_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header]:(pl-px) [&_.q-tree\\_\\_arrow]:(mr-px) [&_.q-tree\\_\\_spinner]:(mr-px) [&_.q-tree\\_\\_img]:(h-[32px]) [&_.q-tree\\_\\_tickbox]:(mr-[3px]) [&_.q-tree\\_\\_node]:(p-0) [&_.q-tree\\_\\_node:after]:(top-[0] -left-[8px]) [&_.q-tree\\_\\_node-header]:(mt-0 p-px) [&_.q-tree\\_\\_node-header:before]:(top-[0] -left-[8px] w-[8px]) [&_.q-tree\\_\\_node--child]:(pl-[17px]) [&_.q-tree\\_\\_node--child_>_.q-tree\\_\\_node-header:before]:(-left-[25px] w-[21px]) [&_.q-tree\\_\\_node-body]:(pt-[0] px-[0] pb-[2px]) [&_.q-tree\\_\\_children]:(pl-[16px])`
81
107
  ],
82
108
  [
83
109
  /^q-tree--dense$/,
84
- ([, c], { theme }) => `[&__.q-tree\\_\\_node--parent__>_.q-tree\\_\\_node-collapsible__>_.q-tree\\_\\_node-body]:(pt-[0] pr-[0] pb-[2px] pl-[20px]) [&__.q-tree\\_\\_node--parent__>_.q-tree\\_\\_node-collapsible__>_.q-tree\\_\\_node-body:after]:(left-[8px])`
110
+ ([, c], { theme }) => theme.quasar?.components?.['q-tree--dense'] ??
111
+ `[&__.q-tree\\_\\_node--parent__>_.q-tree\\_\\_node-collapsible__>_.q-tree\\_\\_node-body]:(pt-[0] pr-[0] pb-[2px] pl-[20px]) [&__.q-tree\\_\\_node--parent__>_.q-tree\\_\\_node-collapsible__>_.q-tree\\_\\_node-body:after]:(left-[8px])`
85
112
  ]
86
113
  ];
87
114
  export { preflights, shortcuts };
@@ -1,72 +1,84 @@
1
1
  const shortcuts = [
2
2
  [
3
3
  /^q-uploader$/,
4
- ([, c], { theme }) => `[box-shadow:0_1px_5px_rgba(0,_0,_0,_0.2),_0_2px_2px_rgba(0,_0,_0,_0.14),_0_3px_1px_-2px_rgba(0,_0,_0,_0.12)] rounded-[4px] align-top bg-[#fff] relative w-[320px] max-h-[320px]`
4
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader'] ??
5
+ `[box-shadow:0_1px_5px_rgba(0,_0,_0,_0.2),_0_2px_2px_rgba(0,_0,_0,_0.14),_0_3px_1px_-2px_rgba(0,_0,_0,_0.12)] rounded-[4px] align-top bg-[#fff] relative w-[320px] max-h-[320px]`
5
6
  ],
6
7
  [
7
8
  /^q-uploader--bordered$/,
8
- ([, c], { theme }) => `border-[1px] border-solid border-[rgba(0,0,0,0.12)]`
9
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader--bordered'] ??
10
+ `border-[1px] border-solid border-[rgba(0,0,0,0.12)]`
9
11
  ],
10
12
  [
11
13
  /^q-uploader__input$/,
12
- ([, c], { theme }) => `opacity-0 w-full h-full !cursor-pointer`
14
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__input'] ??
15
+ `opacity-0 w-full h-full !cursor-pointer [&::-webkit-file-upload-button]:(cursor-pointer)`
13
16
  ],
14
17
  [
15
- /^q-uploader__input::-webkit-file-upload-button$/,
16
- ([, c], { theme }) => `cursor-pointer`
18
+ /^q-uploader__file$/,
19
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__file'] ??
20
+ `[&:before]:(content-[''] [border-top-left-radius:inherit] [border-top-right-radius:inherit] absolute top-[0] right-[0] bottom-[0] left-[0] pointer-events-none bg-current opacity-[0.04]) rounded-tl-[4px] rounded-br-[0] rounded-tr-[4px] rounded-bl-[0] border-[1px] border-solid border-[rgba(0,0,0,0.12)] [&_.q-circular-progress]:(text-[24px]) [&_+_.q-uploader\\_\\_file]:(mt-[8px])`
17
21
  ],
18
22
  [
19
- /^q-uploader__file:before$/,
20
- ([, c], { theme }) => `content-empty [border-top-left-radius:inherit] [border-top-right-radius:inherit] absolute top-0 right-0 bottom-0 left-0 pointer-events-none bg-current opacity-[0.04]`
23
+ /^q-uploader__header$/,
24
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__header'] ??
25
+ `relative [border-top-left-radius:inherit] [border-top-right-radius:inherit] text-[#fff] w-full`
21
26
  ],
22
27
  [
23
- /^q-uploader__header$/,
24
- ([, c], { theme }) => `relative [border-top-left-radius:inherit] [border-top-right-radius:inherit] text-[#fff] w-full bg-primary`
28
+ /^q-uploader__spinner$/,
29
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__spinner'] ??
30
+ `text-[24px] mr-[4px]`
31
+ ],
32
+ [
33
+ /^q-uploader__header-content$/,
34
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__header-content'] ?? `p-[8px]`
25
35
  ],
26
- [/^q-uploader__spinner$/, ([, c], { theme }) => `text-[24px] mr-[4px]`],
27
- [/^q-uploader__header-content$/, ([, c], { theme }) => `p-[8px]`],
28
36
  [
29
37
  /^q-uploader__dnd$/,
30
- ([, c], { theme }) => `outline-[1px_dashed_currentColor] outline-offset-[-4px] bg-[rgba(255,_255,_255,_0.6)]`
38
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__dnd'] ??
39
+ `outline-[1px_dashed_currentColor] outline-offset-[-4px] bg-[rgba(255,_255,_255,_0.6)]`
31
40
  ],
32
41
  [
33
42
  /^q-uploader__overlay$/,
34
- ([, c], { theme }) => `text-[36px] text-[#000] bg-[rgba(255,_255,_255,_0.6)]`
43
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__overlay'] ??
44
+ `text-[36px] text-[#000] bg-[rgba(255,_255,_255,_0.6)]`
35
45
  ],
36
46
  [
37
47
  /^q-uploader__list$/,
38
- ([, c], { theme }) => `relative [border-bottom-left-radius:inherit] [border-bottom-right-radius:inherit] p-[8px] min-h-[60px] flex-auto`
39
- ],
40
- [
41
- /^q-uploader__file$/,
42
- ([, c], { theme }) => `rounded-tl-[4px] rounded-br-[0] rounded-tr-[4px] rounded-bl-[0] border-[1px] border-solid border-[rgba(0,0,0,0.12)] [&_.q-circular-progress]:(text-[24px]) [&_+_.q-uploader\\_\\_file]:(mt-[8px])`
48
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__list'] ??
49
+ `relative [border-bottom-left-radius:inherit] [border-bottom-right-radius:inherit] p-[8px] min-h-[60px] flex-auto`
43
50
  ],
44
51
  [
45
52
  /^q-uploader__file--img$/,
46
- ([, c], { theme }) => `text-[#fff] h-[200px] min-w-[200px] bg-[50%_50%] bg-no-repeat [&_.q-circular-progress]:(text-[#fff]) [&_.q-uploader\\_\\_file-header]:(pb-[24px] bg-[linear-gradient(_to_bottom,_rgba(0,_0,_0,_0.7)_20%,_rgba(255,_255,_255,_0)_)])`
53
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__file--img'] ??
54
+ `text-[#fff] h-[200px] min-w-[200px] bg-[50%_50%] bg-no-repeat [&:before]:(content-[none]) [&_.q-circular-progress]:(text-[#fff]) [&_.q-uploader\\_\\_file-header]:(pb-[24px] bg-[linear-gradient(_to_bottom,_rgba(0,_0,_0,_0.7)_20%,_rgba(255,_255,_255,_0)_)])`
47
55
  ],
48
- [/^q-uploader__file--img:before$/, ([, c], { theme }) => `content-[none]`],
49
56
  [
50
57
  /^q-uploader__file-header$/,
51
- ([, c], { theme }) => `relative px-[8px] py-[4px] [border-top-left-radius:inherit] [border-top-right-radius:inherit]`
58
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__file-header'] ??
59
+ `relative px-[8px] py-[4px] [border-top-left-radius:inherit] [border-top-right-radius:inherit]`
52
60
  ],
53
61
  [/^q-uploader__file-header-content$/, ([, c], { theme }) => `pr-[8px]`],
54
62
  [/^q-uploader__file-status$/, ([, c], { theme }) => `text-[24px] mr-[4px]`],
55
63
  [
56
64
  /^q-uploader__title$/,
57
- ([, c], { theme }) => `text-[14px] font-bold leading-[1.285714]`
65
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__title'] ??
66
+ `text-[14px] font-bold leading-[1.285714]`
58
67
  ],
59
68
  [
60
69
  /^q-uploader__subtitle$/,
61
- ([, c], { theme }) => `text-[12px] leading-normal`
70
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader__subtitle'] ??
71
+ `text-[12px] leading-normal`
62
72
  ],
63
73
  [
64
74
  /^q-uploader--disable$/,
65
- ([, c], { theme }) => `[&_.q-uploader\\_\\_header]:(pointer-events-none) [&_.q-uploader\\_\\_list]:(pointer-events-none)`
75
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader--disable'] ??
76
+ `[&_.q-uploader\\_\\_header]:(pointer-events-none) [&_.q-uploader\\_\\_list]:(pointer-events-none)`
66
77
  ],
67
78
  [
68
79
  /^q-uploader--dark$/,
69
- ([, c], { theme }) => `border-[rgba(255,_255,_255,_0.28)] [box-shadow:0_1px_5px_rgba(255,_255,_255,_0.2),_0_2px_2px_rgba(255,_255,_255,_0.14),_0_3px_1px_-2px_rgba(255,_255,_255,_0.12)] [&_.q-uploader\\_\\_file]:(border-[rgba(255,_255,_255,_0.28)]) [&_.q-uploader\\_\\_dnd]:(bg-[rgba(255,_255,_255,_0.3)]) [&_.q-uploader\\_\\_overlay]:(bg-[rgba(255,_255,_255,_0.3)]) [&_.q-uploader\\_\\_overlay]:(text-[#fff])`
80
+ ([, c], { theme }) => theme.quasar?.components?.['q-uploader--dark'] ??
81
+ `border-[rgba(255,_255,_255,_0.28)] [box-shadow:0_1px_5px_rgba(255,_255,_255,_0.2),_0_2px_2px_rgba(255,_255,_255,_0.14),_0_3px_1px_-2px_rgba(255,_255,_255,_0.12)] [&_.q-uploader\\_\\_file]:(border-[rgba(255,_255,_255,_0.28)]) [&_.q-uploader\\_\\_dnd]:(bg-[rgba(255,_255,_255,_0.3)]) [&_.q-uploader\\_\\_overlay]:(bg-[rgba(255,_255,_255,_0.3)]) [&_.q-uploader\\_\\_overlay]:(text-[#fff])`
70
82
  ]
71
83
  ];
72
84
  export { shortcuts };
@@ -1,11 +1,13 @@
1
1
  const shortcuts = [
2
2
  [
3
3
  /^q-video$/,
4
- ([, c], { theme }) => `relative overflow-hidden [border-radius:inherit] [&_iframe]:(w-full h-full) [&_object]:(w-full h-full) [&_embed]:(w-full h-full)`
4
+ ([, c], { theme }) => theme.quasar?.components?.['q-video'] ??
5
+ `relative overflow-hidden [border-radius:inherit] [&_iframe]:(w-full h-full) [&_object]:(w-full h-full) [&_embed]:(w-full h-full)`
5
6
  ],
6
7
  [
7
8
  /^q-video--responsive$/,
8
- ([, c], { theme }) => `h-[0] [&_iframe]:(absolute top-0 left-0) [&_object]:(absolute top-0 left-0) [&_embed]:(absolute top-0 left-0)`
9
+ ([, c], { theme }) => theme.quasar?.components?.['q-video--responsive'] ??
10
+ `h-[0] [&_iframe]:(absolute top-0 left-0) [&_object]:(absolute top-0 left-0) [&_embed]:(absolute top-0 left-0)`
9
11
  ]
10
12
  ];
11
13
  export { shortcuts };
@@ -2,15 +2,18 @@ const shortcuts = [
2
2
  [/^q-virtual-scroll:focus$/, ([, c], { theme }) => `focus:outline-0`],
3
3
  [
4
4
  /^q-virtual-scroll__content$/,
5
- ([, c], { theme }) => `outline-[none] [&_>_*]:([overflow-anchor:none]) [&_>_[data-q-vs-anchor]]:([overflow-anchor:auto])`
5
+ ([, c], { theme }) => theme.quasar?.components?.['q-virtual-scroll__content'] ??
6
+ `outline-[none] [&_>_*]:([overflow-anchor:none]) [&_>_[data-q-vs-anchor]]:([overflow-anchor:auto])`
6
7
  ],
7
8
  [
8
9
  /^q-virtual-scroll__padding$/,
9
- ([, c], { theme }) => `bg-[linear-gradient(_rgba(255,_255,_255,_0),_rgba(255,_255,_255,_0)_20%,_rgba(128,_128,_128,_0.03)_20%,_rgba(128,_128,_128,_0.08)_50%,_rgba(128,_128,_128,_0.03)_80%,_rgba(255,_255,_255,_0)_80%,_rgba(255,_255,_255,_0)_)] [background-size:var(--q-virtual-scroll-item-width,_100%)_var(--q-virtual-scroll-item-height,_50px)]`
10
+ ([, c], { theme }) => theme.quasar?.components?.['q-virtual-scroll__padding'] ??
11
+ `bg-[linear-gradient(_rgba(255,_255,_255,_0),_rgba(255,_255,_255,_0)_20%,_rgba(128,_128,_128,_0.03)_20%,_rgba(128,_128,_128,_0.08)_50%,_rgba(128,_128,_128,_0.03)_80%,_rgba(255,_255,_255,_0)_80%,_rgba(255,_255,_255,_0)_)] [background-size:var(--q-virtual-scroll-item-width,_100%)_var(--q-virtual-scroll-item-height,_50px)]`
10
12
  ],
11
13
  [
12
14
  /^q-virtual-scroll--horizontal$/,
13
- ([, c], { theme }) => `flex flex-row flex-nowrap items-stretch [&_.q-virtual-scroll\\_\\_content]:(flex flex-row flex-nowrap) [&_.q-virtual-scroll\\_\\_padding]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_content]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_content_>_*]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_padding]:(bg-[linear-gradient(_to_left,_rgba(255,_255,_255,_0),_rgba(255,_255,_255,_0)_20%,_rgba(128,_128,_128,_0.03)_20%,_rgba(128,_128,_128,_0.08)_50%,_rgba(128,_128,_128,_0.03)_80%,_rgba(255,_255,_255,_0)_80%,_rgba(255,_255,_255,_0)_)] [background-size:var(--q-virtual-scroll-item-width,_50px)_var(--q-virtual-scroll-item-height,_100%)])`
15
+ ([, c], { theme }) => theme.quasar?.components?.['q-virtual-scroll--horizontal'] ??
16
+ `flex flex-row flex-nowrap items-stretch [&_.q-virtual-scroll\\_\\_content]:(flex flex-row flex-nowrap) [&_.q-virtual-scroll\\_\\_padding]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_content]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_content_>_*]:(flex-[0_0_auto]) [&_.q-virtual-scroll\\_\\_padding]:(bg-[linear-gradient(_to_left,_rgba(255,_255,_255,_0),_rgba(255,_255,_255,_0)_20%,_rgba(128,_128,_128,_0.03)_20%,_rgba(128,_128,_128,_0.08)_50%,_rgba(128,_128,_128,_0.03)_80%,_rgba(255,_255,_255,_0)_80%,_rgba(255,_255,_255,_0)_)] [background-size:var(--q-virtual-scroll-item-width,_50px)_var(--q-virtual-scroll-item-height,_100%)])`
14
17
  ]
15
18
  ];
16
19
  export { shortcuts };
@@ -1,65 +1,68 @@
1
- const shadows = (mode) => [
2
- ...Array.from({ length: 24 }, (_, i) => i + 1).reduce((acc, z) => {
3
- acc.push([
4
- new RegExp(`shadow-${z}`),
5
- ([, c], { symbols, theme }) => ({
6
- [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
7
- 'box-shadow': theme['shadows'][z]
8
- })
9
- ]);
10
- acc.push([
11
- new RegExp(`shadow-up-${z}`),
12
- ([, c], { symbols, theme }) => ({
13
- [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
14
- 'box-shadow': theme['shadows']['up'][z]
15
- })
16
- ]);
17
- return acc;
18
- }, []),
19
- [
20
- /^inset-shadow$/,
21
- function* ([, color], { symbols, theme }) {
22
- yield {
23
- [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
24
- 'box-shadow': theme['insetShadow']
25
- };
26
- }
27
- ],
28
- [
29
- /^inset-shadow-down$/,
30
- function* ([, color], { symbols, theme }) {
31
- yield {
32
- [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
33
- 'box-shadow': theme['insetShadowDown']
34
- };
35
- }
36
- ]
37
- ];
1
+ // const shadows = (mode: 'light' | 'dark'): Rule<QuasarTheme>[] => [
2
+ // ...Array.from({ length: 24 }, (_, i) => i + 1).reduce((acc, z) => {
3
+ // acc.push([
4
+ // new RegExp(`shadow-${z}`),
5
+ // ([, c], { symbols, theme }) => ({
6
+ // [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
7
+ // 'box-shadow': theme['shadows'][z as IntRange<0, 24>]
8
+ // })
9
+ // ])
10
+ // acc.push([
11
+ // new RegExp(`shadow-up-${z}`),
12
+ // ([, c], { symbols, theme }) => ({
13
+ // [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
14
+ // 'box-shadow': theme['shadows']['up'][z as IntRange<0, 24>]
15
+ // })
16
+ // ])
17
+ // return acc
18
+ // }, [] as Rule<QuasarTheme>[]),
19
+ // [
20
+ // /^inset-shadow$/,
21
+ // function* ([, color], { symbols, theme }) {
22
+ // yield {
23
+ // [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
24
+ // 'box-shadow': theme['insetShadow']
25
+ // }
26
+ // }
27
+ // ] as Rule<QuasarTheme>,
28
+ // [
29
+ // /^inset-shadow-down$/,
30
+ // function* ([, color], { symbols, theme }) {
31
+ // yield {
32
+ // [symbols.parent]: mode === 'dark' ? 'body.body--dark' : undefined,
33
+ // 'box-shadow': theme['insetShadowDown']
34
+ // }
35
+ // }
36
+ // ] as Rule<QuasarTheme>
37
+ // ]
38
38
  const rules = [
39
- [
40
- /^shadow-transition$/,
41
- function* ([, color], { theme }) {
42
- yield {
43
- transition: `${theme['shadowTransition']} !important`
44
- };
45
- }
46
- ],
47
- ...shadows('light'),
48
- ...shadows('dark'),
49
- ...['no-shadow', 'shadow-0'].map((c) => [
50
- new RegExp(`${c}`),
51
- function* ([, color], { theme }) {
52
- yield {
53
- 'box-shadow': `none !important`
54
- };
55
- }
56
- ]),
39
+ // [
40
+ // /^shadow-transition$/,
41
+ // function* ([, color], { theme }) {
42
+ // yield {
43
+ // transition: `${theme['shadowTransition']} !important`
44
+ // }
45
+ // }
46
+ // ] as Rule<QuasarTheme>,
47
+ // ...shadows('light'),
48
+ // ...shadows('dark'),
49
+ // ...['no-shadow', 'shadow-0'].map(
50
+ // (c) =>
51
+ // [
52
+ // new RegExp(`${c}`),
53
+ // function* ([, color], { theme }) {
54
+ // yield {
55
+ // 'box-shadow': `none !important`
56
+ // }
57
+ // }
58
+ // ] as Rule<QuasarTheme>
59
+ // ),
57
60
  ...['z-marginals', 'z-notify', 'z-fullscreen', 'z-inherit'].map((c) => [
58
61
  new RegExp(`${c}`),
59
62
  function* ([, color], { theme }) {
60
63
  const selector = c.replace('z-', '');
61
64
  yield {
62
- 'z-index': c === 'z-inherit' ? 'inherit' : theme['z'][selector]
65
+ 'z-index': c === 'z-inherit' ? 'inherit' : theme.quasar?.['z'][selector]
63
66
  };
64
67
  }
65
68
  ])
@@ -1,7 +1,7 @@
1
1
  // Import normalize and animate css
2
2
  import { definePreset, transformerVariantGroup } from 'unocss';
3
- import presetWind from '@unocss/preset-wind';
4
- import theme from './theme.js';
3
+ import presetUno from '@unocss/preset-uno';
4
+ import { defaultTheme } from './theme.js';
5
5
  import { animatedUno } from 'animated-unocss';
6
6
  import { shortcuts as QIconShortcuts } from './components/QIcon.unocss.js';
7
7
  import { shortcuts as QAjaxBarShortcuts } from './components/QAjaxBar.unocss.js';
@@ -97,7 +97,136 @@ const toKebabCase = (str) => str
97
97
  .match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g)
98
98
  ?.map((x) => x.toLowerCase())
99
99
  .join('-') ?? '';
100
- const safelist = [
100
+ const pluginSafelistMap = {
101
+ BottomSheet: [
102
+ 'q-bottom-sheet',
103
+ 'q-bottom-sheet__avatar',
104
+ 'q-bottom-sheet--list',
105
+ 'q-bottom-sheet--grid',
106
+ 'q-bottom-sheet__item'
107
+ ],
108
+ Dialog: [
109
+ 'q-dialog__title',
110
+ 'q-dialog__progress',
111
+ 'q-dialog__inner',
112
+ 'q-dialog__inner--square',
113
+ 'q-dialog__inner--minimized',
114
+ 'q-dialog__inner--maximized',
115
+ 'q-dialog__inner--top',
116
+ 'q-dialog__inner--bottom',
117
+ 'q-dialog__inner--right',
118
+ 'q-dialog__inner--left',
119
+ 'q-dialog__inner--fullwidth',
120
+ 'q-dialog__inner--fullheight',
121
+ 'q-dialog__backdrop',
122
+ 'q-btn',
123
+ 'q-btn--actionable',
124
+ 'q-btn--no-uppercase',
125
+ 'q-btn--rectangle',
126
+ 'q-btn--outline',
127
+ 'q-btn--push',
128
+ 'q-btn--rounded',
129
+ 'q-btn--round',
130
+ 'q-btn--square',
131
+ 'q-btn--flat',
132
+ 'q-btn--unelevated',
133
+ 'q-btn--dense',
134
+ 'q-btn--fab',
135
+ 'q-btn--fab-mini',
136
+ 'q-btn__content',
137
+ 'q-btn__content--hidden',
138
+ 'q-btn__progress',
139
+ 'q-btn__progress-indicator',
140
+ 'q-btn__progress--dark',
141
+ 'q-card',
142
+ 'q-card--bordered',
143
+ 'q-card--dark',
144
+ 'q-card__section',
145
+ 'q-card__section--vert',
146
+ 'q-card__section--horiz',
147
+ 'q-card__actions',
148
+ 'q-card__actions--horiz',
149
+ 'q-card__actions--vert',
150
+ 'q-separator--spaced',
151
+ 'q-textarea',
152
+ 'q-textarea--autogrow',
153
+ 'q-field',
154
+ 'q-field--with-bottom',
155
+ 'q-field__marginal',
156
+ 'q-field__before',
157
+ 'q-field__prepend',
158
+ 'q-field__after',
159
+ 'q-field__append',
160
+ 'q-field__inner',
161
+ 'q-field__bottom',
162
+ 'q-field__bottom--animated',
163
+ 'q-field__messages',
164
+ 'q-field__counter',
165
+ 'q-field--item-aligned',
166
+ 'q-field__control-container',
167
+ 'q-field__control',
168
+ 'q-field__shadow',
169
+ 'q-field__native',
170
+ 'q-field__prefix',
171
+ 'q-field__suffix',
172
+ 'q-field__input',
173
+ 'q-field--readonly',
174
+ 'q-field--disabled',
175
+ 'q-field__label',
176
+ 'q-field--float',
177
+ 'q-field--highlighted',
178
+ 'q-field--filled',
179
+ 'q-field--outlined',
180
+ 'q-field--standard',
181
+ 'q-field--dark',
182
+ 'q-field--standout',
183
+ 'q-field--labeled',
184
+ 'q-field--dense',
185
+ 'q-field--borderless',
186
+ 'q-field--error',
187
+ 'q-field__focusable-action',
188
+ 'q-field--auto-height',
189
+ 'q-field--square',
190
+ 'q-option-group--inline',
191
+ 'q-spinner',
192
+ 'q-spinner-mat'
193
+ ],
194
+ LoadingBar: [
195
+ 'q-loading-bar',
196
+ 'q-loading-bar--top',
197
+ 'q-loading-bar--bottom',
198
+ 'q-loading-bar--right',
199
+ 'q-loading-bar--left'
200
+ ],
201
+ Notify: [
202
+ 'q-avatar',
203
+ 'q-avatar__content',
204
+ 'q-avatar--square',
205
+ 'q-icon',
206
+ 'q-btn',
207
+ 'q-btn--actionable',
208
+ 'q-btn--no-uppercase',
209
+ 'q-btn--rectangle',
210
+ 'q-btn--outline',
211
+ 'q-btn--push',
212
+ 'q-btn--rounded',
213
+ 'q-btn--round',
214
+ 'q-btn--square',
215
+ 'q-btn--flat',
216
+ 'q-btn--unelevated',
217
+ 'q-btn--dense',
218
+ 'q-btn--fab',
219
+ 'q-btn--fab-mini',
220
+ 'q-btn__content',
221
+ 'q-btn__content--hidden',
222
+ 'q-btn__progress',
223
+ 'q-btn__progress-indicator',
224
+ 'q-btn__progress--dark',
225
+ 'q-spinner',
226
+ 'q-spinner-mat'
227
+ ]
228
+ };
229
+ const baseSafelist = [
101
230
  'material-icons',
102
231
  'material-icons-outlined',
103
232
  'material-icons-round',
@@ -1203,11 +1332,22 @@ const qClasses = [
1203
1332
  'q-notification--bottom-leave-active',
1204
1333
  'q-notification--bottom-right-leave-active'
1205
1334
  ];
1206
- export default definePreset((options) => {
1335
+ const generateSafelist = (plugins) => {
1336
+ let safelist = baseSafelist;
1337
+ if (plugins) {
1338
+ for (const plugin of plugins) {
1339
+ const pluginSafelist = pluginSafelistMap[plugin];
1340
+ if (pluginSafelist)
1341
+ safelist = safelist.concat(pluginSafelist);
1342
+ }
1343
+ }
1344
+ return safelist;
1345
+ };
1346
+ export default definePreset((options = {}) => {
1207
1347
  return {
1208
1348
  name: 'quasar',
1209
- presets: [presetWind(), animatedUno()],
1210
- safelist,
1349
+ presets: [presetUno(), animatedUno()],
1350
+ safelist: generateSafelist(options?.plugins),
1211
1351
  preflights: [
1212
1352
  {
1213
1353
  getCSS: ({ theme }) => `/* beasties:include start */
@@ -1473,7 +1613,7 @@ export default definePreset((options) => {
1473
1613
  ].concat(QBreadcrumbsPreflights, QCheckboxPreflights, QChipPreflights, QCircularProgressPreflights, QDialogPreflights, QFieldPreflights, QLayoutPreflights, QLinearProgressPreflights, QRadioPreflights, QSelectPreflights, QSpinnerPreflights, QSkeletonPreflights, QTablePreflights, QTogglePreflights, QTreePreflights, ColorPreflights, DarkPreflights, HelperPreflights, MousePreflights, TypographyPreflights, VisibilityPreflights),
1474
1614
  rules: [].concat(HelperRules, ElevationRules, VisibilityRules),
1475
1615
  shortcuts: [].concat(QIconShortcuts, QAjaxBarShortcuts, QAvatarShortcuts, QBadgeShortcuts, QBreadcrumbsShortcuts, QBannerShortcuts, QBarShortcuts, QBtnShortcuts, QBtnDropdownShortcuts, QBtnGroupShortcuts, QBtnToggleShortcuts, QCardShortcuts, QCarouselShortcuts, QChatMessageShortcuts, QCheckboxShortcuts, QChipShortcuts, QCircularProgressShortcuts, QColorPickerShortcuts, QDateShortcuts, QDialogShortcuts, QEditorShortcuts, QExpansionItemShortcuts, QFabShortcuts, QFieldShortcuts, QFileShortcuts, QFormShortcuts, QImgShortcuts, QInnerLoadingShortcuts, QInputShortcuts, QIntersectionShortcuts, QItemShortcuts, QKnobShortcuts, QLayoutShortcuts, QLinearProgressShortcuts, QMenuShortcuts, QOptionGroupShortcuts, QPageShortcuts, QPageStickyShortcuts, QPaginationShortcuts, QParallaxShortcuts, QPopupEditShortcuts, QPullToRefreshShortcuts, QRadioShortcuts, QRatingShortcuts, QResponsiveShortcuts, QScrollareaShortcuts, QSelectShortcuts, QSeparatorShortcuts, QSkeletonShortcuts, QSlideItemShortcuts, QSliderShortcuts, QSpaceShortcuts, QSpinnerShortcuts, QSplitterShortcuts, QStepperShortcuts, QTabPanelShortcuts, QTableShortcuts, QTabsShortcuts, QTimeShortcuts, QTimelineShortcuts, QToggleShortcuts, QToolbarShortcuts, QTooltipShortcuts, QTreeShortcuts, QUploaderShortcuts, QVideoShortcuts, QVirtualScrollShortcuts, PanelShortcuts, QMorphShortcuts, QRippleShortcuts, QBottomSheetShortcuts, QDialogPluginShortcuts, QLoadingShortcuts, QNotifyShortcuts, DarkShortcuts, FlexShortcuts, HelperShortcuts, MouseShortcuts, OrientationShortcuts, PositionShortcuts, SizeShortcuts, TouchShortcuts, TransitionsShortcuts, TypographyShortcuts, VisibilityShortcuts, QHeaderShortcuts, QFooterShortcuts, QDrawerShortcuts),
1476
- theme: theme(options),
1616
+ theme: defaultTheme,
1477
1617
  variants: [
1478
1618
  // ...
1479
1619
  ],