quasar 2.20.3 → 2.21.1

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 (157) hide show
  1. package/dist/api/QTable.json +1 -1
  2. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  3. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  4. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  5. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  6. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  7. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v7-pro.umd.prod.js +1 -1
  9. package/dist/icon-set/fontawesome-v7.umd.prod.js +1 -1
  10. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  11. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  12. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  13. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  14. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  15. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  16. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  17. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  18. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  19. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  22. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  23. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  24. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  25. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-fontawesome-v7.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-ionicons-v7.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-ionicons-v8.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  42. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  43. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  44. package/dist/icon-set/svg-themify.umd.prod.js +2 -2
  45. package/dist/icon-set/themify.umd.prod.js +2 -2
  46. package/dist/lang/ar-TN.umd.prod.js +1 -1
  47. package/dist/lang/ar.umd.prod.js +1 -1
  48. package/dist/lang/az-Latn.umd.prod.js +2 -2
  49. package/dist/lang/bg.umd.prod.js +1 -1
  50. package/dist/lang/bn.umd.prod.js +1 -1
  51. package/dist/lang/bs-BA.umd.prod.js +1 -1
  52. package/dist/lang/ca.umd.prod.js +1 -1
  53. package/dist/lang/cs.umd.prod.js +1 -1
  54. package/dist/lang/da.umd.prod.js +1 -1
  55. package/dist/lang/de-CH.umd.prod.js +1 -1
  56. package/dist/lang/de-DE.umd.prod.js +1 -1
  57. package/dist/lang/de.umd.prod.js +1 -1
  58. package/dist/lang/el.umd.prod.js +1 -1
  59. package/dist/lang/en-GB.umd.prod.js +1 -1
  60. package/dist/lang/en-US.umd.prod.js +1 -1
  61. package/dist/lang/eo.umd.prod.js +2 -2
  62. package/dist/lang/es.umd.prod.js +1 -1
  63. package/dist/lang/et.umd.prod.js +1 -1
  64. package/dist/lang/eu.umd.prod.js +1 -1
  65. package/dist/lang/fa-IR.umd.prod.js +1 -1
  66. package/dist/lang/fa.umd.prod.js +1 -1
  67. package/dist/lang/fi.umd.prod.js +2 -2
  68. package/dist/lang/fr.umd.prod.js +2 -2
  69. package/dist/lang/gn.umd.prod.js +1 -1
  70. package/dist/lang/he.umd.prod.js +1 -1
  71. package/dist/lang/hi.umd.prod.js +2 -2
  72. package/dist/lang/hr.umd.prod.js +1 -1
  73. package/dist/lang/hu.umd.prod.js +1 -1
  74. package/dist/lang/id.umd.prod.js +1 -1
  75. package/dist/lang/is.umd.prod.js +1 -1
  76. package/dist/lang/it.umd.prod.js +2 -2
  77. package/dist/lang/ja.umd.prod.js +2 -2
  78. package/dist/lang/kk.umd.prod.js +1 -1
  79. package/dist/lang/km.umd.prod.js +1 -1
  80. package/dist/lang/ko-KR.umd.prod.js +1 -1
  81. package/dist/lang/kur-CKB.umd.prod.js +2 -2
  82. package/dist/lang/lb.umd.prod.js +6 -0
  83. package/dist/lang/lt.umd.prod.js +2 -2
  84. package/dist/lang/lu.umd.prod.js +1 -1
  85. package/dist/lang/lv.umd.prod.js +2 -2
  86. package/dist/lang/mk.umd.prod.js +1 -1
  87. package/dist/lang/ml.umd.prod.js +1 -1
  88. package/dist/lang/mm.umd.prod.js +1 -1
  89. package/dist/lang/ms-MY.umd.prod.js +2 -2
  90. package/dist/lang/ms.umd.prod.js +2 -2
  91. package/dist/lang/my.umd.prod.js +2 -2
  92. package/dist/lang/nb-NO.umd.prod.js +2 -2
  93. package/dist/lang/nl.umd.prod.js +1 -1
  94. package/dist/lang/pl.umd.prod.js +1 -1
  95. package/dist/lang/pt-BR.umd.prod.js +1 -1
  96. package/dist/lang/pt.umd.prod.js +1 -1
  97. package/dist/lang/ro.umd.prod.js +1 -1
  98. package/dist/lang/ru.umd.prod.js +1 -1
  99. package/dist/lang/sk.umd.prod.js +1 -1
  100. package/dist/lang/sl.umd.prod.js +1 -1
  101. package/dist/lang/sm.umd.prod.js +1 -1
  102. package/dist/lang/sq.umd.prod.js +1 -1
  103. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  104. package/dist/lang/sr.umd.prod.js +1 -1
  105. package/dist/lang/sv.umd.prod.js +1 -1
  106. package/dist/lang/ta.umd.prod.js +1 -1
  107. package/dist/lang/th.umd.prod.js +1 -1
  108. package/dist/lang/tl.umd.prod.js +1 -1
  109. package/dist/lang/tr.umd.prod.js +1 -1
  110. package/dist/lang/ug.umd.prod.js +2 -2
  111. package/dist/lang/uk.umd.prod.js +2 -2
  112. package/dist/lang/ur-PK.umd.prod.js +1 -1
  113. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  114. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  115. package/dist/lang/vi.umd.prod.js +1 -1
  116. package/dist/lang/zh-CN.umd.prod.js +1 -1
  117. package/dist/lang/zh-TW.umd.prod.js +1 -1
  118. package/dist/quasar.client.js +41 -42
  119. package/dist/quasar.css +8 -1
  120. package/dist/quasar.prod.css +1 -1
  121. package/dist/quasar.rtl.css +9 -1
  122. package/dist/quasar.rtl.prod.css +1 -1
  123. package/dist/quasar.sass +6 -2
  124. package/dist/quasar.server.prod.cjs +17 -17
  125. package/dist/quasar.server.prod.js +17 -17
  126. package/dist/quasar.umd.js +41 -42
  127. package/dist/quasar.umd.prod.js +17 -17
  128. package/dist/types/icon-set.d.ts +1 -3
  129. package/dist/types/index.d.ts +10 -2
  130. package/dist/types/utils.d.ts +2 -0
  131. package/dist/web-types/web-types.json +1 -1
  132. package/icon-set/svg-themify.js +1 -3
  133. package/icon-set/themify.js +1 -2
  134. package/lang/az-Latn.js +1 -1
  135. package/lang/eo.js +1 -1
  136. package/lang/fi.js +0 -5
  137. package/lang/fr.js +1 -1
  138. package/lang/hi.js +1 -1
  139. package/lang/index.json +1 -1
  140. package/lang/it.js +1 -1
  141. package/lang/ja.js +9 -9
  142. package/lang/kur-CKB.js +0 -1
  143. package/lang/lb.js +110 -0
  144. package/lang/lt.js +1 -1
  145. package/lang/lv.js +1 -1
  146. package/lang/ms-MY.js +3 -3
  147. package/lang/ms.js +1 -1
  148. package/lang/my.js +90 -92
  149. package/lang/nb-NO.js +5 -6
  150. package/lang/ug.js +7 -2
  151. package/lang/uk.js +1 -1
  152. package/package.json +3 -3
  153. package/src/components/table/QTable.js +6 -1
  154. package/src/components/table/QTable.json +28 -3
  155. package/src/components/tooltip/QTooltip.js +6 -0
  156. package/src/css/core/helpers.sass +6 -1
  157. package/src/utils/scroll/prevent-scroll.js +6 -48
@@ -730,7 +730,7 @@
730
730
  "col": {
731
731
  "type": "Object",
732
732
  "required": true,
733
- "desc": "Column name from column definitions"
733
+ "desc": "Column entry from column definitions"
734
734
  },
735
735
  "row": {
736
736
  "type": "Object",
@@ -2043,7 +2043,7 @@
2043
2043
  "col": {
2044
2044
  "type": "Object",
2045
2045
  "required": true,
2046
- "desc": "Column name from column definitions"
2046
+ "desc": "Column entry from column definitions"
2047
2047
  },
2048
2048
  "row": {
2049
2049
  "type": "Object",
@@ -2253,10 +2253,12 @@
2253
2253
  "params": {
2254
2254
  "col": {
2255
2255
  "type": "Object",
2256
- "desc": "Column name from column definitions"
2256
+ "required": true,
2257
+ "desc": "Column entry from column definitions"
2257
2258
  },
2258
2259
  "row": {
2259
2260
  "type": "Object",
2261
+ "required": true,
2260
2262
  "desc": "The row object"
2261
2263
  }
2262
2264
  },
@@ -2441,6 +2443,29 @@
2441
2443
  }
2442
2444
  },
2443
2445
  "returns": null
2446
+ },
2447
+
2448
+ "getCellValue": {
2449
+ "type": "Function",
2450
+ "desc": "Method to get a cell value",
2451
+ "params": {
2452
+ "colName": {
2453
+ "type": "String",
2454
+ "required": true,
2455
+ "desc": "Column name"
2456
+ },
2457
+ "row": {
2458
+ "type": "Object",
2459
+ "required": true,
2460
+ "desc": "The row object"
2461
+ }
2462
+ },
2463
+ "returns": {
2464
+ "type": "Any",
2465
+ "desc": "Parsed/Processed cell value",
2466
+ "examples": ["'Ice Cream Sandwich'"]
2467
+ },
2468
+ "addedIn": "v2.21"
2444
2469
  }
2445
2470
  },
2446
2471
 
@@ -189,6 +189,12 @@ export default createComponent({
189
189
 
190
190
  // should removeTick() if this gets removed
191
191
  registerTick(() => {
192
+ observer?.disconnect()
193
+ if (innerRef.value === null) {
194
+ observer = void 0
195
+ return
196
+ }
197
+
192
198
  observer = new MutationObserver(() => updatePosition())
193
199
  observer.observe(innerRef.value, {
194
200
  attributes: false,
@@ -16,8 +16,13 @@
16
16
  color: inherit
17
17
  opacity: .7
18
18
 
19
+ .q-document--prevent-scroll
20
+ overscroll-behavior: none !important
21
+ body
22
+ position: fixed !important
23
+
19
24
  /* body */
20
- .q-body--fullscreen-mixin, .q-body--prevent-scroll
25
+ .q-body--fullscreen-mixin
21
26
  position: fixed !important
22
27
 
23
28
  .q-body--force-scrollbar-x
@@ -1,9 +1,8 @@
1
1
  import {
2
2
  getHorizontalScrollPosition,
3
- getVerticalScrollPosition,
4
- hasScrollbar
3
+ getVerticalScrollPosition
5
4
  } from './scroll.js'
6
- import { getEventPath, listenOpts, stopAndPrevent } from '../event/event.js'
5
+ import { listenOpts } from '../event/event.js'
7
6
  import { client } from '../../plugins/platform/Platform.js'
8
7
 
9
8
  let registered = 0,
@@ -16,42 +15,6 @@ let registered = 0,
16
15
  href,
17
16
  closeTimer = null
18
17
 
19
- function onWheel(e) {
20
- if (shouldPreventScroll(e)) {
21
- stopAndPrevent(e)
22
- }
23
- }
24
-
25
- function shouldPreventScroll(e) {
26
- if (
27
- e.target === document.body ||
28
- e.target.classList.contains('q-layout__backdrop')
29
- ) {
30
- return true
31
- }
32
-
33
- const path = getEventPath(e),
34
- shift = e.shiftKey && !e.deltaX,
35
- scrollY = !shift && Math.abs(e.deltaX) <= Math.abs(e.deltaY),
36
- delta = shift || scrollY ? e.deltaY : e.deltaX
37
-
38
- for (let index = 0; index < path.length; index++) {
39
- const el = path[index]
40
-
41
- if (hasScrollbar(el, scrollY)) {
42
- return scrollY
43
- ? delta < 0 && el.scrollTop === 0
44
- ? true
45
- : delta > 0 && el.scrollTop + el.clientHeight === el.scrollHeight
46
- : delta < 0 && el.scrollLeft === 0
47
- ? true
48
- : delta > 0 && el.scrollLeft + el.clientWidth === el.scrollWidth
49
- }
50
- }
51
-
52
- return true
53
- }
54
-
55
18
  function onAppleScroll(e) {
56
19
  if (e.target === document) {
57
20
  // required, otherwise iOS blocks further scrolling
@@ -114,7 +77,7 @@ function apply(action) {
114
77
  body.classList.add('q-body--force-scrollbar-y')
115
78
  }
116
79
 
117
- body.classList.add('q-body--prevent-scroll')
80
+ document.documentElement.classList.add('q-document--prevent-scroll')
118
81
  document.qScrollPrevented = true
119
82
 
120
83
  if (client.is.ios) {
@@ -139,14 +102,9 @@ function apply(action) {
139
102
  )
140
103
  }
141
104
  }
142
- }
143
-
144
- if (client.is.desktop && client.is.mac) {
145
- // ref. https://developers.google.com/web/updates/2017/01/scrolling-intervention
146
- window[`${action}EventListener`]('wheel', onWheel, listenOpts.notPassive)
147
- }
105
+ } else {
106
+ // action === 'remove'
148
107
 
149
- if (action === 'remove') {
150
108
  if (client.is.ios) {
151
109
  if (hasViewport) {
152
110
  window.visualViewport.removeEventListener(
@@ -168,8 +126,8 @@ function apply(action) {
168
126
  }
169
127
  }
170
128
 
129
+ document.documentElement.classList.remove('q-document--prevent-scroll')
171
130
  body.classList.remove(
172
- 'q-body--prevent-scroll',
173
131
  'q-body--force-scrollbar-x',
174
132
  'q-body--force-scrollbar-y'
175
133
  )