quasar 2.18.1 → 2.18.3

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 (136) hide show
  1. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  2. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  3. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  4. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  5. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  6. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  7. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  8. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  9. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  10. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  11. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  12. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  13. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  14. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  15. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  16. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  17. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  18. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  19. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  21. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  22. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  23. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  24. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  25. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-mdi-v7.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/bs-BA.umd.prod.js +1 -1
  46. package/dist/lang/ca.umd.prod.js +1 -1
  47. package/dist/lang/cs.umd.prod.js +1 -1
  48. package/dist/lang/da.umd.prod.js +1 -1
  49. package/dist/lang/de-CH.umd.prod.js +1 -1
  50. package/dist/lang/de-DE.umd.prod.js +1 -1
  51. package/dist/lang/de.umd.prod.js +1 -1
  52. package/dist/lang/el.umd.prod.js +1 -1
  53. package/dist/lang/en-GB.umd.prod.js +1 -1
  54. package/dist/lang/en-US.umd.prod.js +1 -1
  55. package/dist/lang/eo.umd.prod.js +1 -1
  56. package/dist/lang/es.umd.prod.js +1 -1
  57. package/dist/lang/et.umd.prod.js +1 -1
  58. package/dist/lang/eu.umd.prod.js +1 -1
  59. package/dist/lang/fa-IR.umd.prod.js +1 -1
  60. package/dist/lang/fa.umd.prod.js +1 -1
  61. package/dist/lang/fi.umd.prod.js +1 -1
  62. package/dist/lang/fr.umd.prod.js +1 -1
  63. package/dist/lang/gn.umd.prod.js +1 -1
  64. package/dist/lang/he.umd.prod.js +1 -1
  65. package/dist/lang/hi.umd.prod.js +1 -1
  66. package/dist/lang/hr.umd.prod.js +1 -1
  67. package/dist/lang/hu.umd.prod.js +1 -1
  68. package/dist/lang/id.umd.prod.js +1 -1
  69. package/dist/lang/is.umd.prod.js +1 -1
  70. package/dist/lang/it.umd.prod.js +1 -1
  71. package/dist/lang/ja.umd.prod.js +1 -1
  72. package/dist/lang/kk.umd.prod.js +1 -1
  73. package/dist/lang/km.umd.prod.js +1 -1
  74. package/dist/lang/ko-KR.umd.prod.js +1 -1
  75. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  76. package/dist/lang/lt.umd.prod.js +1 -1
  77. package/dist/lang/lu.umd.prod.js +1 -1
  78. package/dist/lang/lv.umd.prod.js +1 -1
  79. package/dist/lang/mk.umd.prod.js +1 -1
  80. package/dist/lang/ml.umd.prod.js +1 -1
  81. package/dist/lang/mm.umd.prod.js +1 -1
  82. package/dist/lang/ms-MY.umd.prod.js +1 -1
  83. package/dist/lang/ms.umd.prod.js +1 -1
  84. package/dist/lang/my.umd.prod.js +1 -1
  85. package/dist/lang/nb-NO.umd.prod.js +1 -1
  86. package/dist/lang/nl.umd.prod.js +1 -1
  87. package/dist/lang/pl.umd.prod.js +1 -1
  88. package/dist/lang/pt-BR.umd.prod.js +1 -1
  89. package/dist/lang/pt.umd.prod.js +1 -1
  90. package/dist/lang/ro.umd.prod.js +1 -1
  91. package/dist/lang/ru.umd.prod.js +1 -1
  92. package/dist/lang/sk.umd.prod.js +1 -1
  93. package/dist/lang/sl.umd.prod.js +1 -1
  94. package/dist/lang/sm.umd.prod.js +1 -1
  95. package/dist/lang/sq.umd.prod.js +7 -0
  96. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  97. package/dist/lang/sr.umd.prod.js +1 -1
  98. package/dist/lang/sv.umd.prod.js +1 -1
  99. package/dist/lang/ta.umd.prod.js +1 -1
  100. package/dist/lang/th.umd.prod.js +1 -1
  101. package/dist/lang/tl.umd.prod.js +1 -1
  102. package/dist/lang/tr.umd.prod.js +1 -1
  103. package/dist/lang/ug.umd.prod.js +1 -1
  104. package/dist/lang/uk.umd.prod.js +1 -1
  105. package/dist/lang/ur-PK.umd.prod.js +1 -1
  106. package/dist/lang/uz-Cyrl.umd.prod.js +2 -2
  107. package/dist/lang/uz-Latn.umd.prod.js +2 -2
  108. package/dist/lang/vi.umd.prod.js +1 -1
  109. package/dist/lang/zh-CN.umd.prod.js +1 -1
  110. package/dist/lang/zh-TW.umd.prod.js +1 -1
  111. package/dist/quasar.client.js +29 -25
  112. package/dist/quasar.css +2 -3
  113. package/dist/quasar.prod.css +1 -1
  114. package/dist/quasar.rtl.css +2 -3
  115. package/dist/quasar.rtl.prod.css +1 -1
  116. package/dist/quasar.sass +3 -2
  117. package/dist/quasar.server.prod.cjs +11 -11
  118. package/dist/quasar.server.prod.js +7 -7
  119. package/dist/quasar.umd.js +29 -25
  120. package/dist/quasar.umd.prod.js +12 -12
  121. package/dist/types/index.d.ts +1 -0
  122. package/dist/types/utils/date.d.ts +45 -34
  123. package/dist/web-types/web-types.json +1 -1
  124. package/lang/index.json +1 -1
  125. package/lang/sq.js +106 -0
  126. package/lang/uz-Cyrl.js +9 -4
  127. package/lang/uz-Latn.js +9 -4
  128. package/package.json +5 -5
  129. package/src/components/date/QDate.js +5 -5
  130. package/src/components/editor/editor-utils.js +4 -3
  131. package/src/components/input/use-mask.js +12 -6
  132. package/src/components/table/QTable.js +4 -4
  133. package/src/components/table/QTable.sass +2 -1
  134. package/src/plugins/addressbar/AddressbarColor.js +1 -5
  135. package/src/plugins/dark/Dark.js +3 -2
  136. package/src/utils/date/date.js +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v2.18.1
2
+ * Quasar Framework v2.18.3
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -604,7 +604,7 @@
604
604
  }
605
605
  },
606
606
  install({ $q, ssrContext }) {
607
- const { dark } = $q.config;
607
+ const dark = false ? document.body.classList.contains("body--dark") : $q.config.dark;
608
608
  if (false) {
609
609
  this.isActive = dark === true;
610
610
  $q.dark = {
@@ -1391,7 +1391,7 @@
1391
1391
  }
1392
1392
  var install_quasar_default = false ? function(parentApp, opts = {}, ssrContext) {
1393
1393
  const $q = {
1394
- version: "2.18.1",
1394
+ version: "2.18.3",
1395
1395
  config: opts.config || {}
1396
1396
  };
1397
1397
  Object.assign(ssrContext, {
@@ -1421,7 +1421,7 @@
1421
1421
  ssrContext
1422
1422
  });
1423
1423
  } : function(parentApp, opts = {}) {
1424
- const $q = { version: "2.18.1" };
1424
+ const $q = { version: "2.18.3" };
1425
1425
  if (globalConfigIsFrozen === false) {
1426
1426
  if (opts.config !== void 0) {
1427
1427
  Object.assign(globalConfig, opts.config);
@@ -9694,7 +9694,7 @@
9694
9694
  date.timezoneOffset = (tzString[0] === "+" ? -1 : 1) * (60 * tzString.slice(1, 3) + 1 * tzString.slice(3, 5));
9695
9695
  }
9696
9696
  }
9697
- date.dateHash = pad(date.year, 6) + "/" + pad(date.month) + "/" + pad(date.day);
9697
+ date.dateHash = pad(date.year, 4) + "/" + pad(date.month) + "/" + pad(date.day);
9698
9698
  date.timeHash = pad(date.hour) + ":" + pad(date.minute) + ":" + pad(date.second) + tzString;
9699
9699
  return date;
9700
9700
  }
@@ -10928,7 +10928,7 @@
10928
10928
  props4.todayBtn === true ? h(QBtn_default, {
10929
10929
  class: "q-date__header-today self-start",
10930
10930
  icon: $q.iconSet.datetime.today,
10931
- ariaLabel: $q.lang.date.today,
10931
+ "aria-label": $q.lang.date.today,
10932
10932
  flat: true,
10933
10933
  size: "sm",
10934
10934
  round: true,
@@ -10949,7 +10949,7 @@
10949
10949
  size: "sm",
10950
10950
  flat: true,
10951
10951
  icon: dateArrow.value[0],
10952
- ariaLabel: type === "Years" ? $q.lang.date.prevYear : $q.lang.date.prevMonth,
10952
+ "aria-label": type === "Years" ? $q.lang.date.prevYear : $q.lang.date.prevMonth,
10953
10953
  tabindex: tabindex.value,
10954
10954
  disable: boundaries.prev === false,
10955
10955
  ...getCache("go-#" + type, { onClick() {
@@ -10984,7 +10984,7 @@
10984
10984
  size: "sm",
10985
10985
  flat: true,
10986
10986
  icon: dateArrow.value[1],
10987
- ariaLabel: type === "Years" ? $q.lang.date.nextYear : $q.lang.date.nextMonth,
10987
+ "aria-label": type === "Years" ? $q.lang.date.nextYear : $q.lang.date.nextMonth,
10988
10988
  tabindex: tabindex.value,
10989
10989
  disable: boundaries.next === false,
10990
10990
  ...getCache("go+#" + type, { onClick() {
@@ -11140,7 +11140,7 @@
11140
11140
  dense: true,
11141
11141
  flat: true,
11142
11142
  icon: dateArrow.value[0],
11143
- ariaLabel: $q.lang.date.prevRangeYears(yearsInterval),
11143
+ "aria-label": $q.lang.date.prevRangeYears(yearsInterval),
11144
11144
  tabindex: tabindex.value,
11145
11145
  disable: isDisabled(start),
11146
11146
  ...getCache("y-", { onClick: () => {
@@ -11159,7 +11159,7 @@
11159
11159
  dense: true,
11160
11160
  flat: true,
11161
11161
  icon: dateArrow.value[1],
11162
- ariaLabel: $q.lang.date.nextRangeYears(yearsInterval),
11162
+ "aria-label": $q.lang.date.nextRangeYears(yearsInterval),
11163
11163
  tabindex: tabindex.value,
11164
11164
  disable: isDisabled(stop2),
11165
11165
  ...getCache("y+", { onClick: () => {
@@ -12820,13 +12820,13 @@
12820
12820
  }
12821
12821
  function getBtn(eVm, btn, clickHandler, active = false) {
12822
12822
  const toggled = active || (btn.type === "toggle" ? btn.toggled ? btn.toggled(eVm) : btn.cmd && eVm.caret.is(btn.cmd, btn.param) : false), child = [];
12823
- if (btn.tip && eVm.$q.platform.is.desktop) {
12823
+ if (eVm.$q.platform.is.desktop && (btn.tip || btn.htmlTip)) {
12824
12824
  const Key = btn.key ? h("div", [
12825
12825
  h("small", `(CTRL + ${String.fromCharCode(btn.key)})`)
12826
12826
  ]) : null;
12827
12827
  child.push(
12828
12828
  h(QTooltip_default, { delay: 1e3 }, () => [
12829
- h("div", { innerHTML: btn.tip }),
12829
+ h("div", btn.htmlTip ? { innerHTML: btn.htmlTip } : btn.tip),
12830
12830
  Key
12831
12831
  ])
12832
12832
  );
@@ -12837,6 +12837,7 @@
12837
12837
  color: toggled ? btn.toggleColor || eVm.props.toolbarToggleColor : btn.color || eVm.props.toolbarColor,
12838
12838
  textColor: toggled && !eVm.props.toolbarPush ? null : btn.textColor || eVm.props.toolbarTextColor,
12839
12839
  label: btn.label,
12840
+ "aria-label": btn.label == null ? btn.tip : void 0,
12840
12841
  disable: btn.disable ? typeof btn.disable === "function" ? btn.disable(eVm) : true : false,
12841
12842
  size: "sm",
12842
12843
  onClick(e) {
@@ -13008,7 +13009,6 @@
13008
13009
  getGroup([
13009
13010
  h(QBtn_default, {
13010
13011
  key: "qedt_btm_rem",
13011
- tabindex: -1,
13012
13012
  ...eVm.buttonProps.value,
13013
13013
  label: eVm.$q.lang.label.remove,
13014
13014
  noCaps: true,
@@ -16347,7 +16347,7 @@
16347
16347
  function updateMaskValue(rawVal, updateMaskInternalsFlag, inputType) {
16348
16348
  const inp = inputRef.value, end = inp.selectionEnd, endReverse = inp.value.length - end, unmasked = unmaskValue(rawVal);
16349
16349
  updateMaskInternalsFlag === true && updateMaskInternals();
16350
- const preMasked = maskValue(unmasked), masked = props4.fillMask !== false ? fillWithMask(preMasked) : preMasked, changed2 = innerValue.value !== masked;
16350
+ const preMasked = maskValue(unmasked, updateMaskInternalsFlag), masked = props4.fillMask !== false ? fillWithMask(preMasked) : preMasked, changed2 = innerValue.value !== masked;
16351
16351
  inp.value !== masked && (inp.value = masked);
16352
16352
  changed2 === true && (innerValue.value = masked);
16353
16353
  document.activeElement === inp && nextTick(() => {
@@ -16502,12 +16502,12 @@
16502
16502
  inp.setSelectionRange(start, inp.selectionEnd, "forward");
16503
16503
  }
16504
16504
  }
16505
- function maskValue(val) {
16505
+ function maskValue(val, updateMaskInternalsFlag) {
16506
16506
  if (val === void 0 || val === null || val === "") {
16507
16507
  return "";
16508
16508
  }
16509
16509
  if (props4.reverseFillMask === true) {
16510
- return maskValueReverse(val);
16510
+ return maskValueReverse(val, updateMaskInternalsFlag);
16511
16511
  }
16512
16512
  const mask = computedMask;
16513
16513
  let valIndex = 0, output = "";
@@ -16515,7 +16515,9 @@
16515
16515
  const valChar = val[valIndex], maskDef = mask[maskIndex];
16516
16516
  if (typeof maskDef === "string") {
16517
16517
  output += maskDef;
16518
- valChar === maskDef && valIndex++;
16518
+ if (updateMaskInternalsFlag === true && valChar === maskDef) {
16519
+ valIndex++;
16520
+ }
16519
16521
  } else if (valChar !== void 0 && maskDef.regex.test(valChar)) {
16520
16522
  output += maskDef.transform !== void 0 ? maskDef.transform(valChar) : valChar;
16521
16523
  valIndex++;
@@ -16525,7 +16527,7 @@
16525
16527
  }
16526
16528
  return output;
16527
16529
  }
16528
- function maskValueReverse(val) {
16530
+ function maskValueReverse(val, updateMaskInternalsFlag) {
16529
16531
  const mask = computedMask, firstTokenIndex = maskMarked.indexOf(MARKER);
16530
16532
  let valIndex = val.length - 1, output = "";
16531
16533
  for (let maskIndex = mask.length - 1; maskIndex >= 0 && valIndex !== -1; maskIndex--) {
@@ -16533,7 +16535,9 @@
16533
16535
  let valChar = val[valIndex];
16534
16536
  if (typeof maskDef === "string") {
16535
16537
  output = maskDef + output;
16536
- valChar === maskDef && valIndex--;
16538
+ if (updateMaskInternalsFlag === true && valChar === maskDef) {
16539
+ valIndex--;
16540
+ }
16537
16541
  } else if (valChar !== void 0 && maskDef.regex.test(valChar)) {
16538
16542
  do {
16539
16543
  output = (maskDef.transform !== void 0 ? maskDef.transform(valChar) : valChar) + output;
@@ -24054,7 +24058,7 @@
24054
24058
  ...btnProps,
24055
24059
  icon: navIcon.value[0],
24056
24060
  disable: isFirstPage.value,
24057
- ariaLabel: $q.lang.pagination.first,
24061
+ "aria-label": $q.lang.pagination.first,
24058
24062
  onClick: firstPage
24059
24063
  })
24060
24064
  );
@@ -24064,7 +24068,7 @@
24064
24068
  ...btnProps,
24065
24069
  icon: navIcon.value[1],
24066
24070
  disable: isFirstPage.value,
24067
- ariaLabel: $q.lang.pagination.prev,
24071
+ "aria-label": $q.lang.pagination.prev,
24068
24072
  onClick: prevPage
24069
24073
  }),
24070
24074
  h(QBtn_default, {
@@ -24072,7 +24076,7 @@
24072
24076
  ...btnProps,
24073
24077
  icon: navIcon.value[2],
24074
24078
  disable: isLastPage.value,
24075
- ariaLabel: $q.lang.pagination.next,
24079
+ "aria-label": $q.lang.pagination.next,
24076
24080
  onClick: nextPage
24077
24081
  })
24078
24082
  );
@@ -24082,7 +24086,7 @@
24082
24086
  ...btnProps,
24083
24087
  icon: navIcon.value[3],
24084
24088
  disable: isLastPage.value,
24085
- ariaLabel: $q.lang.pagination.last,
24089
+ "aria-label": $q.lang.pagination.last,
24086
24090
  onClick: lastPage
24087
24091
  })
24088
24092
  );
@@ -27719,7 +27723,7 @@
27719
27723
  // src/plugins/addressbar/AddressbarColor.js
27720
27724
  var metaValue;
27721
27725
  function getProp() {
27722
- return client.is.winphone ? "msapplication-navbutton-color" : client.is.safari ? "apple-mobile-web-app-status-bar-style" : "theme-color";
27726
+ return client.is.winphone ? "msapplication-navbutton-color" : "theme-color";
27723
27727
  }
27724
27728
  function getMetaTag(v) {
27725
27729
  const els = document.getElementsByTagName("META");
@@ -29835,7 +29839,7 @@
29835
29839
  console.error("[ Quasar ] Vue is required to run. Please add a script tag for it before loading Quasar.");
29836
29840
  }
29837
29841
  window.Quasar = {
29838
- version: "2.18.1",
29842
+ version: "2.18.3",
29839
29843
  install(app2, opts) {
29840
29844
  install_quasar_default(app2, {
29841
29845
  components: components_exports,