quasar 2.4.12 → 2.5.2

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 (211) hide show
  1. package/dist/api/BottomSheet.json +4 -0
  2. package/dist/api/Dialog.json +5 -1
  3. package/dist/api/Notify.json +20 -10
  4. package/dist/api/QBtnDropdown.json +4 -2
  5. package/dist/api/QCheckbox.json +27 -0
  6. package/dist/api/QEditor.json +4 -2
  7. package/dist/api/QExpansionItem.json +6 -3
  8. package/dist/api/QFab.json +4 -2
  9. package/dist/api/QFabAction.json +4 -2
  10. package/dist/api/QFile.json +4 -2
  11. package/dist/api/QImg.json +1 -2
  12. package/dist/api/QInnerLoading.json +2 -1
  13. package/dist/api/QInput.json +4 -2
  14. package/dist/api/QPagination.json +4 -2
  15. package/dist/api/QRadio.json +18 -0
  16. package/dist/api/QRange.json +9 -0
  17. package/dist/api/QScrollArea.json +13 -5
  18. package/dist/api/QSelect.json +6 -3
  19. package/dist/api/QSlider.json +9 -0
  20. package/dist/api/QSplitter.json +8 -4
  21. package/dist/api/QTable.json +9 -0
  22. package/dist/api/QTime.json +8 -2
  23. package/dist/api/QToggle.json +24 -24
  24. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  25. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  26. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  27. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  28. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  29. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  30. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  31. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  32. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  33. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  34. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  35. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  36. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  37. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  42. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  44. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  45. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  46. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  47. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  48. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  49. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  50. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  51. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  52. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  53. package/dist/icon-set/themify.umd.prod.js +1 -1
  54. package/dist/lang/ar.umd.prod.js +1 -1
  55. package/dist/lang/az-Latn.umd.prod.js +1 -1
  56. package/dist/lang/bg.umd.prod.js +1 -1
  57. package/dist/lang/bn.umd.prod.js +1 -1
  58. package/dist/lang/ca.umd.prod.js +1 -1
  59. package/dist/lang/cs.umd.prod.js +1 -1
  60. package/dist/lang/da.umd.prod.js +1 -1
  61. package/dist/lang/de.umd.prod.js +1 -1
  62. package/dist/lang/el.umd.prod.js +1 -1
  63. package/dist/lang/en-GB.umd.prod.js +1 -1
  64. package/dist/lang/en-US.umd.prod.js +1 -1
  65. package/dist/lang/eo.umd.prod.js +1 -1
  66. package/dist/lang/es.umd.prod.js +1 -1
  67. package/dist/lang/et.umd.prod.js +1 -1
  68. package/dist/lang/fa-IR.umd.prod.js +1 -1
  69. package/dist/lang/fa.umd.prod.js +1 -1
  70. package/dist/lang/fi.umd.prod.js +1 -1
  71. package/dist/lang/fr.umd.prod.js +1 -1
  72. package/dist/lang/gn.umd.prod.js +1 -1
  73. package/dist/lang/he.umd.prod.js +1 -1
  74. package/dist/lang/hr.umd.prod.js +1 -1
  75. package/dist/lang/hu.umd.prod.js +1 -1
  76. package/dist/lang/id.umd.prod.js +1 -1
  77. package/dist/lang/is.umd.prod.js +1 -1
  78. package/dist/lang/it.umd.prod.js +1 -1
  79. package/dist/lang/ja.umd.prod.js +1 -1
  80. package/dist/lang/km.umd.prod.js +1 -1
  81. package/dist/lang/ko-KR.umd.prod.js +1 -1
  82. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  83. package/dist/lang/lt.umd.prod.js +1 -1
  84. package/dist/lang/lu.umd.prod.js +1 -1
  85. package/dist/lang/lv.umd.prod.js +1 -1
  86. package/dist/lang/ml.umd.prod.js +1 -1
  87. package/dist/lang/ms.umd.prod.js +1 -1
  88. package/dist/lang/my.umd.prod.js +1 -1
  89. package/dist/lang/nb-NO.umd.prod.js +1 -1
  90. package/dist/lang/nl.umd.prod.js +1 -1
  91. package/dist/lang/pl.umd.prod.js +1 -1
  92. package/dist/lang/pt-BR.umd.prod.js +1 -1
  93. package/dist/lang/pt.umd.prod.js +1 -1
  94. package/dist/lang/ro.umd.prod.js +1 -1
  95. package/dist/lang/ru.umd.prod.js +1 -1
  96. package/dist/lang/sk.umd.prod.js +1 -1
  97. package/dist/lang/sl.umd.prod.js +1 -1
  98. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  99. package/dist/lang/sr.umd.prod.js +1 -1
  100. package/dist/lang/sv.umd.prod.js +1 -1
  101. package/dist/lang/ta.umd.prod.js +1 -1
  102. package/dist/lang/th.umd.prod.js +1 -1
  103. package/dist/lang/tr.umd.prod.js +1 -1
  104. package/dist/lang/ug.umd.prod.js +1 -1
  105. package/dist/lang/uk.umd.prod.js +1 -1
  106. package/dist/lang/vi.umd.prod.js +1 -1
  107. package/dist/lang/zh-CN.umd.prod.js +1 -1
  108. package/dist/lang/zh-TW.umd.prod.js +1 -1
  109. package/dist/quasar.cjs.prod.js +2 -2
  110. package/dist/quasar.css +38 -10
  111. package/dist/quasar.esm.prod.js +2 -2
  112. package/dist/quasar.prod.css +1 -1
  113. package/dist/quasar.rtl.css +55 -23
  114. package/dist/quasar.rtl.prod.css +1 -1
  115. package/dist/quasar.sass +31 -11
  116. package/dist/quasar.umd.js +313 -163
  117. package/dist/quasar.umd.prod.js +2 -2
  118. package/dist/ssr-directives/Morph.js +1 -1
  119. package/dist/transforms/auto-import.json +39 -3
  120. package/dist/transforms/import-map.json +18 -0
  121. package/dist/types/api/slider.d.ts +6 -7
  122. package/dist/types/api/vue-prop-types.ts +15 -0
  123. package/dist/types/api.d.ts +1 -0
  124. package/dist/types/index.d.ts +110 -184
  125. package/dist/types/utils/date.d.ts +25 -13
  126. package/dist/types/utils/dom.d.ts +4 -2
  127. package/dist/types/utils.d.ts +3 -1
  128. package/dist/vetur/quasar-attributes.json +62 -42
  129. package/dist/vetur/quasar-tags.json +8 -3
  130. package/dist/web-types/web-types.json +103 -58
  131. package/package.json +13 -3
  132. package/src/components/avatar/__tests__/QAvatar.spec.js +121 -0
  133. package/src/components/badge/__tests__/QBadge.spec.js +74 -0
  134. package/src/components/breadcrumbs/QBreadcrumbs.js +1 -1
  135. package/src/components/btn/__tests__/QBtn.spec.js +55 -0
  136. package/src/components/btn/__tests__/use-btn.spec.js +189 -0
  137. package/src/components/btn-dropdown/QBtnDropdown.json +4 -2
  138. package/src/components/checkbox/QCheckbox.js +34 -3
  139. package/src/components/checkbox/QCheckbox.json +17 -0
  140. package/src/components/checkbox/QCheckbox.sass +17 -5
  141. package/src/components/checkbox/use-checkbox.js +4 -0
  142. package/src/components/checkbox/use-checkbox.json +18 -0
  143. package/src/components/chip/__tests__/QChip.spec.js +155 -0
  144. package/src/components/date/__tests__/QDate.spec.js +189 -0
  145. package/src/components/date/__tests__/use-datetime.spec.js +83 -0
  146. package/src/components/dialog/__tests__/QDialog.spec.js +129 -0
  147. package/src/components/editor/QEditor.json +3 -1
  148. package/src/components/editor/__tests__/QEditor.spec.js +195 -0
  149. package/src/components/expansion-item/QExpansionItem.json +6 -3
  150. package/src/components/fab/use-fab.json +4 -2
  151. package/src/components/field/QField.sass +2 -0
  152. package/src/components/file/QFile.json +4 -2
  153. package/src/components/form/QForm.js +26 -24
  154. package/src/components/img/QImg.json +2 -3
  155. package/src/components/inner-loading/QInnerLoading.json +2 -1
  156. package/src/components/input/QInput.js +9 -0
  157. package/src/components/input/QInput.json +4 -2
  158. package/src/components/input/__tests__/QInput.spec.js +105 -0
  159. package/src/components/input/__tests__/use-mask.spec.js +29 -0
  160. package/src/components/menu/__tests__/QMenu.spec.js +610 -0
  161. package/src/components/menu/__tests__/WrapperOne.vue +51 -0
  162. package/src/components/menu/__tests__/WrapperTwo.vue +38 -0
  163. package/src/components/pagination/QPagination.json +4 -2
  164. package/src/components/radio/QRadio.js +26 -1
  165. package/src/components/radio/QRadio.json +16 -0
  166. package/src/components/radio/QRadio.sass +17 -6
  167. package/src/components/scroll-area/QScrollArea.json +13 -5
  168. package/src/components/select/QSelect.js +1 -1
  169. package/src/components/select/QSelect.json +6 -3
  170. package/src/components/select/__tests__/QSelect.spec.js +2003 -0
  171. package/src/components/select/__tests__/WrapperOne.vue +28 -0
  172. package/src/components/slider/use-slider.json +9 -0
  173. package/src/components/splitter/QSplitter.json +8 -4
  174. package/src/components/stepper/QStep.js +1 -1
  175. package/src/components/table/QTable.json +9 -0
  176. package/src/components/table/__tests__/QTable.spec.js +635 -0
  177. package/src/components/table/__tests__/QTd.spec.js +35 -0
  178. package/src/components/table/__tests__/QTh.spec.js +27 -0
  179. package/src/components/table/__tests__/QTr.spec.js +27 -0
  180. package/src/components/tabs/__tests__/QRouteTab.spec.js +9 -0
  181. package/src/components/tabs/__tests__/QTab.spec.js +79 -0
  182. package/src/components/tabs/__tests__/QTabs.spec.js +147 -0
  183. package/src/components/time/QTime.json +2 -2
  184. package/src/components/toggle/QToggle.js +5 -13
  185. package/src/components/toggle/QToggle.json +3 -12
  186. package/src/components/tree/QTree.js +39 -41
  187. package/src/components/uploader/__tests__/QUploader.spec.js +161 -0
  188. package/src/components/virtual-scroll/use-virtual-scroll.js +6 -4
  189. package/src/composables/private/__tests__/FieldWrapper.vue +39 -0
  190. package/src/composables/private/__tests__/use-anchor.spec.js +99 -0
  191. package/src/composables/private/__tests__/use-field.spec.js +351 -0
  192. package/src/composables/private/__tests__/use-file.spec.js +69 -0
  193. package/src/composables/private/__tests__/use-form.spec.js +11 -0
  194. package/src/composables/private/__tests__/use-fullscreen.spec.js +37 -0
  195. package/src/composables/private/__tests__/use-model-toggle.spec.js +306 -0
  196. package/src/composables/private/__tests__/use-portal.spec.js +4 -0
  197. package/src/composables/private/__tests__/use-router-link.spec.js +55 -0
  198. package/src/composables/private/__tests__/use-size.spec.js +37 -0
  199. package/src/composables/private/__tests__/use-transition.spec.js +108 -0
  200. package/src/composables/private/__tests__/use-validate.spec.js +111 -0
  201. package/src/composables/private/use-fullscreen.js +1 -1
  202. package/src/composables/private/use-model-toggle.js +1 -1
  203. package/src/composables/private/use-validate.js +22 -22
  204. package/src/plugins/BottomSheet.json +1 -0
  205. package/src/plugins/Dialog.json +1 -0
  206. package/src/plugins/Meta.js +1 -1
  207. package/src/plugins/Notify.json +20 -10
  208. package/src/plugins/Screen.js +15 -9
  209. package/src/utils/date.js +111 -32
  210. package/src/utils/private/global-dialog.json +3 -0
  211. package/src/utils/private/vm.js +14 -8
@@ -1267,27 +1267,35 @@ input[type=search]::-webkit-search-decoration {
1267
1267
  .q-checkbox {
1268
1268
  vertical-align: middle;
1269
1269
  }
1270
+ .q-checkbox__native {
1271
+ width: 1px;
1272
+ height: 1px;
1273
+ }
1270
1274
 
1271
- .q-checkbox__bg {
1275
+ .q-checkbox__bg, .q-checkbox__icon-container {
1272
1276
  top: 25%;
1273
1277
  width: 50%;
1274
1278
  height: 50%;
1275
- border: 2px solid currentColor;
1276
- border-radius: 2px;
1277
- transition: background 0.22s cubic-bezier(0, 0, 0.2, 1) 0ms;
1278
- -webkit-print-color-adjust: exact;
1279
+ -webkit-user-select: none;
1280
+ user-select: none;
1279
1281
  }
1280
1282
 
1281
- [dir="ltr"] .q-checkbox__bg {
1283
+ [dir="ltr"] .q-checkbox__bg, [dir="ltr"] .q-checkbox__icon-container {
1282
1284
  left: 25%;
1283
1285
  }
1284
1286
 
1285
- [dir="rtl"] .q-checkbox__bg {
1287
+ [dir="rtl"] .q-checkbox__bg, [dir="rtl"] .q-checkbox__icon-container {
1286
1288
  right: 25%;
1287
1289
  }
1288
- .q-checkbox__native {
1289
- width: 1px;
1290
- height: 1px;
1290
+ .q-checkbox__bg {
1291
+ border: 2px solid currentColor;
1292
+ border-radius: 2px;
1293
+ transition: background 0.22s cubic-bezier(0, 0, 0.2, 1) 0ms;
1294
+ -webkit-print-color-adjust: exact;
1295
+ }
1296
+ .q-checkbox__icon {
1297
+ color: currentColor;
1298
+ font-size: 0.6em;
1291
1299
  }
1292
1300
  .q-checkbox__svg {
1293
1301
  color: #fff;
@@ -1346,23 +1354,29 @@ input[type=search]::-webkit-search-decoration {
1346
1354
  .q-checkbox--dark .q-checkbox__inner--truthy, .q-checkbox--dark .q-checkbox__inner--indet {
1347
1355
  color: var(--q-primary);
1348
1356
  }
1357
+ .q-checkbox--dense .q-checkbox__icon {
1358
+ font-size: 0.6em;
1359
+ }
1349
1360
  .q-checkbox--dense .q-checkbox__inner {
1350
1361
  width: 0.5em;
1351
1362
  min-width: 0.5em;
1352
1363
  height: 0.5em;
1353
1364
  }
1354
1365
 
1355
- .q-checkbox--dense .q-checkbox__bg {
1366
+ .q-checkbox--dense .q-checkbox__bg,
1367
+ .q-checkbox--dense .q-checkbox__icon-container {
1356
1368
  top: 5%;
1357
1369
  width: 90%;
1358
1370
  height: 90%;
1359
1371
  }
1360
1372
 
1361
- [dir="ltr"] .q-checkbox--dense .q-checkbox__bg {
1373
+ [dir="ltr"] .q-checkbox--dense .q-checkbox__bg,
1374
+ [dir="ltr"] .q-checkbox--dense .q-checkbox__icon-container {
1362
1375
  left: 5%;
1363
1376
  }
1364
1377
 
1365
- [dir="rtl"] .q-checkbox--dense .q-checkbox__bg {
1378
+ [dir="rtl"] .q-checkbox--dense .q-checkbox__bg,
1379
+ [dir="rtl"] .q-checkbox--dense .q-checkbox__icon-container {
1366
1380
  right: 5%;
1367
1381
  }
1368
1382
 
@@ -2829,6 +2843,8 @@ body.q-ios-padding .q-dialog__inner > div {
2829
2843
  line-height: 1;
2830
2844
  color: rgba(0, 0, 0, 0.54);
2831
2845
  padding: 8px 12px 0;
2846
+ -webkit-backface-visibility: hidden;
2847
+ backface-visibility: hidden;
2832
2848
  }
2833
2849
  .q-field__bottom--animated {
2834
2850
  transform: translateY(100%);
@@ -2993,6 +3009,8 @@ body.q-ios-padding .q-dialog__inner > div {
2993
3009
  text-decoration: inherit;
2994
3010
  text-transform: inherit;
2995
3011
  transition: transform 0.36s cubic-bezier(0.4, 0, 0.2, 1), max-width 0.324s cubic-bezier(0.4, 0, 0.2, 1);
3012
+ -webkit-backface-visibility: hidden;
3013
+ backface-visibility: hidden;
2996
3014
  }
2997
3015
 
2998
3016
  [dir="ltr"] .q-field__label {
@@ -4128,27 +4146,35 @@ body.platform-ios .q-layout--containerized {
4128
4146
  .q-radio {
4129
4147
  vertical-align: middle;
4130
4148
  }
4149
+ .q-radio__native {
4150
+ width: 1px;
4151
+ height: 1px;
4152
+ }
4131
4153
 
4132
- .q-radio__bg {
4154
+ .q-radio__bg, .q-radio__icon-container {
4133
4155
  top: 25%;
4134
4156
  width: 50%;
4135
4157
  height: 50%;
4136
- -webkit-print-color-adjust: exact;
4158
+ -webkit-user-select: none;
4159
+ user-select: none;
4137
4160
  }
4138
4161
 
4139
- [dir="ltr"] .q-radio__bg {
4162
+ [dir="ltr"] .q-radio__bg, [dir="ltr"] .q-radio__icon-container {
4140
4163
  left: 25%;
4141
4164
  }
4142
4165
 
4143
- [dir="rtl"] .q-radio__bg {
4166
+ [dir="rtl"] .q-radio__bg, [dir="rtl"] .q-radio__icon-container {
4144
4167
  right: 25%;
4145
4168
  }
4169
+ .q-radio__bg {
4170
+ -webkit-print-color-adjust: exact;
4171
+ }
4146
4172
  .q-radio__bg path {
4147
4173
  fill: currentColor;
4148
4174
  }
4149
- .q-radio__native {
4150
- width: 1px;
4151
- height: 1px;
4175
+ .q-radio__icon {
4176
+ color: currentColor;
4177
+ font-size: 0.6em;
4152
4178
  }
4153
4179
  .q-radio__check {
4154
4180
  transform-origin: 50% 50%;
@@ -4182,23 +4208,29 @@ body.platform-ios .q-layout--containerized {
4182
4208
  .q-radio--dark .q-radio__inner--truthy {
4183
4209
  color: var(--q-primary);
4184
4210
  }
4211
+ .q-radio--dense .q-checkbox__icon {
4212
+ font-size: 0.6em;
4213
+ }
4185
4214
  .q-radio--dense .q-radio__inner {
4186
4215
  width: 0.5em;
4187
4216
  min-width: 0.5em;
4188
4217
  height: 0.5em;
4189
4218
  }
4190
4219
 
4191
- .q-radio--dense .q-radio__bg {
4220
+ .q-radio--dense .q-radio__bg,
4221
+ .q-radio--dense .q-radio__icon-container {
4192
4222
  top: 0;
4193
4223
  width: 100%;
4194
4224
  height: 100%;
4195
4225
  }
4196
4226
 
4197
- [dir="ltr"] .q-radio--dense .q-radio__bg {
4227
+ [dir="ltr"] .q-radio--dense .q-radio__bg,
4228
+ [dir="ltr"] .q-radio--dense .q-radio__icon-container {
4198
4229
  left: 0;
4199
4230
  }
4200
4231
 
4201
- [dir="rtl"] .q-radio--dense .q-radio__bg {
4232
+ [dir="rtl"] .q-radio--dense .q-radio__bg,
4233
+ [dir="rtl"] .q-radio--dense .q-radio__icon-container {
4202
4234
  right: 0;
4203
4235
  }
4204
4236