quasar 2.9.1 → 2.9.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 (124) hide show
  1. package/dist/api/QTree.json +6 -0
  2. package/dist/api/TouchPan.json +0 -4
  3. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  4. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  5. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  6. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  7. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  9. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  10. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  11. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  12. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  13. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  14. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  15. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  16. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  17. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  18. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  19. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  22. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  23. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  24. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  25. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  39. package/dist/icon-set/themify.umd.prod.js +1 -1
  40. package/dist/lang/ar-TN.umd.prod.js +1 -1
  41. package/dist/lang/ar.umd.prod.js +1 -1
  42. package/dist/lang/az-Latn.umd.prod.js +1 -1
  43. package/dist/lang/bg.umd.prod.js +1 -1
  44. package/dist/lang/bn.umd.prod.js +1 -1
  45. package/dist/lang/ca.umd.prod.js +1 -1
  46. package/dist/lang/cs.umd.prod.js +1 -1
  47. package/dist/lang/da.umd.prod.js +1 -1
  48. package/dist/lang/de.umd.prod.js +1 -1
  49. package/dist/lang/el.umd.prod.js +1 -1
  50. package/dist/lang/en-GB.umd.prod.js +1 -1
  51. package/dist/lang/en-US.umd.prod.js +1 -1
  52. package/dist/lang/eo.umd.prod.js +1 -1
  53. package/dist/lang/es.umd.prod.js +1 -1
  54. package/dist/lang/et.umd.prod.js +1 -1
  55. package/dist/lang/eu.umd.prod.js +1 -1
  56. package/dist/lang/fa-IR.umd.prod.js +1 -1
  57. package/dist/lang/fa.umd.prod.js +1 -1
  58. package/dist/lang/fi.umd.prod.js +1 -1
  59. package/dist/lang/fr.umd.prod.js +1 -1
  60. package/dist/lang/gn.umd.prod.js +1 -1
  61. package/dist/lang/he.umd.prod.js +1 -1
  62. package/dist/lang/hr.umd.prod.js +1 -1
  63. package/dist/lang/hu.umd.prod.js +1 -1
  64. package/dist/lang/id.umd.prod.js +1 -1
  65. package/dist/lang/is.umd.prod.js +1 -1
  66. package/dist/lang/it.umd.prod.js +1 -1
  67. package/dist/lang/ja.umd.prod.js +1 -1
  68. package/dist/lang/km.umd.prod.js +1 -1
  69. package/dist/lang/ko-KR.umd.prod.js +1 -1
  70. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  71. package/dist/lang/kz.umd.prod.js +1 -1
  72. package/dist/lang/lt.umd.prod.js +1 -1
  73. package/dist/lang/lu.umd.prod.js +1 -1
  74. package/dist/lang/lv.umd.prod.js +1 -1
  75. package/dist/lang/ml.umd.prod.js +1 -1
  76. package/dist/lang/mm.umd.prod.js +1 -1
  77. package/dist/lang/ms.umd.prod.js +1 -1
  78. package/dist/lang/my.umd.prod.js +1 -1
  79. package/dist/lang/nb-NO.umd.prod.js +1 -1
  80. package/dist/lang/nl.umd.prod.js +1 -1
  81. package/dist/lang/pl.umd.prod.js +1 -1
  82. package/dist/lang/pt-BR.umd.prod.js +1 -1
  83. package/dist/lang/pt.umd.prod.js +1 -1
  84. package/dist/lang/ro.umd.prod.js +1 -1
  85. package/dist/lang/ru.umd.prod.js +1 -1
  86. package/dist/lang/sk.umd.prod.js +1 -1
  87. package/dist/lang/sl.umd.prod.js +1 -1
  88. package/dist/lang/sm.umd.prod.js +1 -1
  89. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  90. package/dist/lang/sr.umd.prod.js +1 -1
  91. package/dist/lang/sv.umd.prod.js +1 -1
  92. package/dist/lang/ta.umd.prod.js +1 -1
  93. package/dist/lang/th.umd.prod.js +1 -1
  94. package/dist/lang/tr.umd.prod.js +1 -1
  95. package/dist/lang/ug.umd.prod.js +1 -1
  96. package/dist/lang/uk.umd.prod.js +1 -1
  97. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  98. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  99. package/dist/lang/vi.umd.prod.js +1 -1
  100. package/dist/lang/zh-CN.umd.prod.js +1 -1
  101. package/dist/lang/zh-TW.umd.prod.js +1 -1
  102. package/dist/quasar.cjs.prod.js +2 -2
  103. package/dist/quasar.esm.js +108 -53
  104. package/dist/quasar.esm.prod.js +2 -2
  105. package/dist/quasar.sass +1 -1
  106. package/dist/quasar.umd.js +108 -53
  107. package/dist/quasar.umd.prod.js +2 -2
  108. package/dist/types/index.d.ts +4 -0
  109. package/dist/vetur/quasar-attributes.json +4 -0
  110. package/dist/vetur/quasar-tags.json +1 -0
  111. package/dist/web-types/web-types.json +11 -6
  112. package/package.json +1 -1
  113. package/src/components/badge/__tests__/QBadge.spec.js +98 -23
  114. package/src/components/input/use-mask.js +1 -1
  115. package/src/components/pull-to-refresh/QPullToRefresh.js +1 -4
  116. package/src/components/tabs/QTabs.js +2 -2
  117. package/src/components/tree/QTree.js +33 -20
  118. package/src/components/tree/QTree.json +7 -0
  119. package/src/directives/TouchHold.js +10 -3
  120. package/src/directives/TouchPan.js +21 -8
  121. package/src/directives/TouchPan.json +0 -5
  122. package/src/directives/TouchRepeat.js +20 -6
  123. package/src/directives/TouchSwipe.js +10 -3
  124. package/src/utils/morph.js +7 -3
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v2.9.1
2
+ * Quasar Framework v2.9.2
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -1608,7 +1608,7 @@ function prepareApp (app, uiOpts, pluginOpts) {
1608
1608
  }
1609
1609
 
1610
1610
  var installQuasar = function (parentApp, opts = {}) {
1611
- const $q = { version: '2.9.1' };
1611
+ const $q = { version: '2.9.2' };
1612
1612
 
1613
1613
  if (globalConfigIsFrozen === false) {
1614
1614
  if (opts.config !== void 0) {
@@ -6420,9 +6420,16 @@ var TouchSwipe = createDirective({
6420
6420
 
6421
6421
  el.__qtouchswipe = ctx;
6422
6422
 
6423
- modifiers.mouse === true && addEvt(ctx, 'main', [
6424
- [ el, 'mousedown', 'mouseStart', `passive${ mouseCapture }` ]
6425
- ]);
6423
+ if (modifiers.mouse === true) {
6424
+ // account for UMD too where modifiers will be lowercased to work
6425
+ const capture = modifiers.mouseCapture === true || modifiers.mousecapture === true
6426
+ ? 'Capture'
6427
+ : '';
6428
+
6429
+ addEvt(ctx, 'main', [
6430
+ [ el, 'mousedown', 'mouseStart', `passive${ capture }` ]
6431
+ ]);
6432
+ }
6426
6433
 
6427
6434
  client.has.touch === true && addEvt(ctx, 'main', [
6428
6435
  [ el, 'touchstart', 'touchStart', `passive${ modifiers.capture === true ? 'Capture' : '' }` ],
@@ -8217,7 +8224,8 @@ var TouchPan = createDirective({
8217
8224
  */
8218
8225
  if (
8219
8226
  ctx.direction.all !== true
8220
- && (mouseEvent !== true || ctx.modifiers.mouseAllDir !== true)
8227
+ // account for UMD too where modifiers will be lowercased to work
8228
+ && (mouseEvent !== true || (ctx.modifiers.mouseAllDir !== true && ctx.modifiers.mousealldir !== true))
8221
8229
  ) {
8222
8230
  const clone = evt.type.indexOf('mouse') > -1
8223
8231
  ? new MouseEvent(evt.type, evt)
@@ -8284,9 +8292,12 @@ var TouchPan = createDirective({
8284
8292
  const start = () => {
8285
8293
  handleEvent(evt, isMouseEvt);
8286
8294
 
8287
- if (modifiers.preserveCursor !== true) {
8295
+ let cursor;
8296
+ if (modifiers.preserveCursor !== true && modifiers.preservecursor !== true) {
8297
+ cursor = document.documentElement.style.cursor || '';
8288
8298
  document.documentElement.style.cursor = 'grabbing';
8289
8299
  }
8300
+
8290
8301
  isMouseEvt === true && document.body.classList.add('no-pointer-events--children');
8291
8302
  document.body.classList.add('non-selectable');
8292
8303
  clearSelection();
@@ -8294,9 +8305,10 @@ var TouchPan = createDirective({
8294
8305
  ctx.styleCleanup = withDelayedFn => {
8295
8306
  ctx.styleCleanup = void 0;
8296
8307
 
8297
- if (modifiers.preserveCursor !== true) {
8298
- document.documentElement.style.cursor = '';
8308
+ if (cursor !== void 0) {
8309
+ document.documentElement.style.cursor = cursor;
8299
8310
  }
8311
+
8300
8312
  document.body.classList.remove('non-selectable');
8301
8313
 
8302
8314
  if (isMouseEvt === true) {
@@ -8344,7 +8356,8 @@ var TouchPan = createDirective({
8344
8356
 
8345
8357
  if (
8346
8358
  ctx.direction.all === true
8347
- || (isMouseEvt === true && ctx.modifiers.mouseAllDir === true)
8359
+ // account for UMD too where modifiers will be lowercased to work
8360
+ || (isMouseEvt === true && (ctx.modifiers.mouseAllDir === true || ctx.modifiers.mousealldir === true))
8348
8361
  ) {
8349
8362
  start();
8350
8363
  ctx.event.detected = true;
@@ -8411,9 +8424,16 @@ var TouchPan = createDirective({
8411
8424
 
8412
8425
  el.__qtouchpan = ctx;
8413
8426
 
8414
- modifiers.mouse === true && addEvt(ctx, 'main', [
8415
- [ el, 'mousedown', 'mouseStart', `passive${ modifiers.mouseCapture === true ? 'Capture' : '' }` ]
8416
- ]);
8427
+ if (modifiers.mouse === true) {
8428
+ // account for UMD too where modifiers will be lowercased to work
8429
+ const capture = modifiers.mouseCapture === true || modifiers.mousecapture === true
8430
+ ? 'Capture'
8431
+ : '';
8432
+
8433
+ addEvt(ctx, 'main', [
8434
+ [ el, 'mousedown', 'mouseStart', `passive${ capture }` ]
8435
+ ]);
8436
+ }
8417
8437
 
8418
8438
  client.has.touch === true && addEvt(ctx, 'main', [
8419
8439
  [ el, 'touchstart', 'touchStart', `passive${ modifiers.capture === true ? 'Capture' : '' }` ],
@@ -9988,8 +10008,8 @@ var QTabs = createComponent({
9988
10008
 
9989
10009
  recalculateScroll();
9990
10010
 
9991
- // if it's a QTab
9992
- if (tabData.routeData === void 0) {
10011
+ // if it's a QTab or we don't have Vue Router
10012
+ if (tabData.routeData === void 0 || proxy.$route === void 0) {
9993
10013
  // we should position to the currently active tab (if any)
9994
10014
  registerScrollToTabTimeout(() => {
9995
10015
  if (scrollable.value === true) {
@@ -21138,7 +21158,7 @@ function useMask (props, emit, emitValue, inputRef) {
21138
21158
  '^'
21139
21159
  + unmask.join('')
21140
21160
  + '(' + (unmaskChar === '' ? '.' : '[^' + unmaskChar + ']') + '+)?'
21141
- + '$'
21161
+ + '[' + unmaskChar + ']*$'
21142
21162
  ),
21143
21163
  extractLast = extract.length - 1,
21144
21164
  extractMatcher = extract.map((re, index) => {
@@ -24676,10 +24696,7 @@ var QPullToRefresh = createComponent({
24676
24696
 
24677
24697
  const directives = computed(() => {
24678
24698
  // if props.disable === false
24679
- const modifiers = {
24680
- down: true,
24681
- mightPrevent: true
24682
- };
24699
+ const modifiers = { down: true };
24683
24700
 
24684
24701
  if (props.noMouse !== true) {
24685
24702
  modifiers.mouse = true;
@@ -34154,6 +34171,7 @@ var QTree = createComponent({
34154
34171
 
34155
34172
  duration: Number,
34156
34173
  noConnectors: Boolean,
34174
+ noTransition: Boolean,
34157
34175
 
34158
34176
  noNodesLabel: String,
34159
34177
  noResultsLabel: String
@@ -34226,7 +34244,6 @@ var QTree = createComponent({
34226
34244
  const
34227
34245
  key = node[ props.nodeKey ],
34228
34246
  isParent = node[ props.childrenKey ] && node[ props.childrenKey ].length > 0,
34229
- isLeaf = isParent !== true,
34230
34247
  selectable = node.disabled !== true && hasSelection.value === true && node.selectable !== false,
34231
34248
  expandable = node.disabled !== true && node.expandable !== false,
34232
34249
  hasTicking = tickStrategy !== 'none',
@@ -34252,7 +34269,6 @@ var QTree = createComponent({
34252
34269
  key,
34253
34270
  parent,
34254
34271
  isParent,
34255
- isLeaf,
34256
34272
  lazy: localLazy,
34257
34273
  disabled: node.disabled,
34258
34274
  link: node.disabled !== true && (selectable === true || (expandable === true && (isParent === true || localLazy === true))),
@@ -34272,7 +34288,7 @@ var QTree = createComponent({
34272
34288
  leafTicking,
34273
34289
  ticked: strictTicking === true
34274
34290
  ? innerTicked.value.includes(key)
34275
- : (isLeaf === true ? innerTicked.value.includes(key) : false)
34291
+ : (isParent === true ? false : innerTicked.value.includes(key))
34276
34292
  };
34277
34293
 
34278
34294
  meta[ key ] = m;
@@ -34672,23 +34688,37 @@ var QTree = createComponent({
34672
34688
  ]),
34673
34689
 
34674
34690
  isParent === true
34675
- ? h(QSlideTransition, {
34676
- duration: props.duration,
34677
- onShow,
34678
- onHide
34679
- }, () => withDirectives(
34680
- h('div', {
34681
- class: 'q-tree__node-collapsible' + textColorClass.value,
34682
- key: `${ key }__q`
34683
- }, [
34684
- body,
34685
- h('div', {
34686
- class: 'q-tree__children'
34687
- + (m.disabled === true ? ' q-tree__node--disabled' : '')
34688
- }, children)
34689
- ]),
34690
- [ [ vShow, m.expanded ] ]
34691
- ))
34691
+ ? (
34692
+ props.noTransition === true
34693
+ ? h('div', {
34694
+ class: 'q-tree__node-collapsible' + textColorClass.value,
34695
+ key: `${ key }__q`
34696
+ }, [
34697
+ body,
34698
+ h('div', {
34699
+ class: 'q-tree__children'
34700
+ + (m.disabled === true ? ' q-tree__node--disabled' : '')
34701
+ }, m.expanded ? children : null)
34702
+ ])
34703
+
34704
+ : h(QSlideTransition, {
34705
+ duration: props.duration,
34706
+ onShow,
34707
+ onHide
34708
+ }, () => withDirectives(
34709
+ h('div', {
34710
+ class: 'q-tree__node-collapsible' + textColorClass.value,
34711
+ key: `${ key }__q`
34712
+ }, [
34713
+ body,
34714
+ h('div', {
34715
+ class: 'q-tree__children'
34716
+ + (m.disabled === true ? ' q-tree__node--disabled' : '')
34717
+ }, children)
34718
+ ]),
34719
+ [ [ vShow, m.expanded ] ]
34720
+ ))
34721
+ )
34692
34722
  : body
34693
34723
  ])
34694
34724
  }
@@ -35829,9 +35859,13 @@ function normalizeOptions (options) {
35829
35859
  fill: typeof options.fill === 'string' && options.fill.length > 0 ? options.fill : 'none',
35830
35860
 
35831
35861
  resize: options.resize === true,
35832
- useCSS: options.useCSS === true,
35833
- hideFromClone: options.hideFromClone === true,
35834
- keepToClone: options.keepToClone === true,
35862
+
35863
+ // account for UMD too where modifiers will be lowercased to work
35864
+ useCSS: options.useCSS === true || options.usecss === true,
35865
+ // account for UMD too where modifiers will be lowercased to work
35866
+ hideFromClone: options.hideFromClone === true || options.hidefromclone === true,
35867
+ // account for UMD too where modifiers will be lowercased to work
35868
+ keepToClone: options.keepToClone === true || options.keeptoclone === true,
35835
35869
 
35836
35870
  tween: options.tween === true,
35837
35871
  tweenFromOpacity: isNaN(options.tweenFromOpacity) === true ? 0.6 : parseFloat(options.tweenFromOpacity),
@@ -37156,9 +37190,16 @@ var TouchHold = createDirective({
37156
37190
 
37157
37191
  el.__qtouchhold = ctx;
37158
37192
 
37159
- modifiers.mouse === true && addEvt(ctx, 'main', [
37160
- [ el, 'mousedown', 'mouseStart', `passive${ modifiers.mouseCapture === true ? 'Capture' : '' }` ]
37161
- ]);
37193
+ if (modifiers.mouse === true) {
37194
+ // account for UMD too where modifiers will be lowercased to work
37195
+ const capture = modifiers.mouseCapture === true || modifiers.mousecapture === true
37196
+ ? 'Capture'
37197
+ : '';
37198
+
37199
+ addEvt(ctx, 'main', [
37200
+ [ el, 'mousedown', 'mouseStart', `passive${ capture }` ]
37201
+ ]);
37202
+ }
37162
37203
 
37163
37204
  client.has.touch === true && addEvt(ctx, 'main', [
37164
37205
  [ el, 'touchstart', 'touchStart', `passive${ modifiers.capture === true ? 'Capture' : '' }` ],
@@ -37386,18 +37427,32 @@ var TouchRepeat = createDirective({
37386
37427
 
37387
37428
  el.__qtouchrepeat = ctx;
37388
37429
 
37389
- modifiers.mouse === true && addEvt(ctx, 'main', [
37390
- [ el, 'mousedown', 'mouseStart', `passive${ modifiers.mouseCapture === true ? 'Capture' : '' }` ]
37391
- ]);
37430
+ if (modifiers.mouse === true) {
37431
+ // account for UMD too where modifiers will be lowercased to work
37432
+ const capture = modifiers.mouseCapture === true || modifiers.mousecapture === true
37433
+ ? 'Capture'
37434
+ : '';
37435
+
37436
+ addEvt(ctx, 'main', [
37437
+ [ el, 'mousedown', 'mouseStart', `passive${ capture }` ]
37438
+ ]);
37439
+ }
37392
37440
 
37393
37441
  client.has.touch === true && addEvt(ctx, 'main', [
37394
37442
  [ el, 'touchstart', 'touchStart', `passive${ modifiers.capture === true ? 'Capture' : '' }` ],
37395
37443
  [ el, 'touchend', 'noop', 'passiveCapture' ]
37396
37444
  ]);
37397
37445
 
37398
- keyboard.length > 0 && addEvt(ctx, 'main', [
37399
- [ el, 'keydown', 'keyboardStart', `notPassive${ modifiers.keyCapture === true ? 'Capture' : '' }` ]
37400
- ]);
37446
+ if (keyboard.length !== 0) {
37447
+ // account for UMD too where modifiers will be lowercased to work
37448
+ const capture = modifiers.keyCapture === true || modifiers.keycapture === true
37449
+ ? 'Capture'
37450
+ : '';
37451
+
37452
+ addEvt(ctx, 'main', [
37453
+ [ el, 'keydown', 'keyboardStart', `notPassive${ capture }` ]
37454
+ ]);
37455
+ }
37401
37456
  },
37402
37457
 
37403
37458
  updated (el, { oldValue, value }) {
@@ -40083,7 +40138,7 @@ function runSequentialPromises (
40083
40138
  */
40084
40139
 
40085
40140
  const Quasar = {
40086
- version: '2.9.1',
40141
+ version: '2.9.2',
40087
40142
  install: installQuasar,
40088
40143
  lang: Plugin$8,
40089
40144
  iconSet: Plugin$7