quasar 2.10.1 → 2.11.0

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 (172) hide show
  1. package/dist/api/Dialog.json +3 -1
  2. package/dist/api/QFile.json +2 -0
  3. package/dist/api/QInput.json +2 -0
  4. package/dist/api/QPopupProxy.json +21 -0
  5. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  6. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  7. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  9. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  10. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  11. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  12. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  13. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  14. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  15. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  16. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  17. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  18. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  19. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  20. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  21. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  22. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  23. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  24. package/dist/icon-set/mdi-v7.umd.prod.js +6 -0
  25. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-fontawesome-v6.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-line-awesome.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-mdi-v7.umd.prod.js +6 -0
  42. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  43. package/dist/icon-set/themify.umd.prod.js +1 -1
  44. package/dist/lang/ar-TN.umd.prod.js +1 -1
  45. package/dist/lang/ar.umd.prod.js +1 -1
  46. package/dist/lang/az-Latn.umd.prod.js +1 -1
  47. package/dist/lang/bg.umd.prod.js +1 -1
  48. package/dist/lang/bn.umd.prod.js +1 -1
  49. package/dist/lang/ca.umd.prod.js +1 -1
  50. package/dist/lang/cs.umd.prod.js +1 -1
  51. package/dist/lang/da.umd.prod.js +1 -1
  52. package/dist/lang/de.umd.prod.js +1 -1
  53. package/dist/lang/el.umd.prod.js +1 -1
  54. package/dist/lang/en-GB.umd.prod.js +1 -1
  55. package/dist/lang/en-US.umd.prod.js +1 -1
  56. package/dist/lang/eo.umd.prod.js +1 -1
  57. package/dist/lang/es.umd.prod.js +1 -1
  58. package/dist/lang/et.umd.prod.js +1 -1
  59. package/dist/lang/eu.umd.prod.js +1 -1
  60. package/dist/lang/fa-IR.umd.prod.js +1 -1
  61. package/dist/lang/fa.umd.prod.js +1 -1
  62. package/dist/lang/fi.umd.prod.js +1 -1
  63. package/dist/lang/fr.umd.prod.js +1 -1
  64. package/dist/lang/gn.umd.prod.js +1 -1
  65. package/dist/lang/he.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/{kz.umd.prod.js → kk.umd.prod.js} +2 -2
  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/ml.umd.prod.js +1 -1
  80. package/dist/lang/mm.umd.prod.js +1 -1
  81. package/dist/lang/ms.umd.prod.js +1 -1
  82. package/dist/lang/my.umd.prod.js +1 -1
  83. package/dist/lang/nb-NO.umd.prod.js +1 -1
  84. package/dist/lang/nl.umd.prod.js +1 -1
  85. package/dist/lang/pl.umd.prod.js +1 -1
  86. package/dist/lang/pt-BR.umd.prod.js +1 -1
  87. package/dist/lang/pt.umd.prod.js +1 -1
  88. package/dist/lang/ro.umd.prod.js +1 -1
  89. package/dist/lang/ru.umd.prod.js +1 -1
  90. package/dist/lang/sk.umd.prod.js +1 -1
  91. package/dist/lang/sl.umd.prod.js +1 -1
  92. package/dist/lang/sm.umd.prod.js +1 -1
  93. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  94. package/dist/lang/sr.umd.prod.js +1 -1
  95. package/dist/lang/sv.umd.prod.js +1 -1
  96. package/dist/lang/ta.umd.prod.js +1 -1
  97. package/dist/lang/th.umd.prod.js +1 -1
  98. package/dist/lang/tr.umd.prod.js +1 -1
  99. package/dist/lang/ug.umd.prod.js +1 -1
  100. package/dist/lang/uk.umd.prod.js +1 -1
  101. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  102. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  103. package/dist/lang/vi.umd.prod.js +1 -1
  104. package/dist/lang/zh-CN.umd.prod.js +1 -1
  105. package/dist/lang/zh-TW.umd.prod.js +1 -1
  106. package/dist/quasar.cjs.prod.js +2 -2
  107. package/dist/quasar.css +203 -13
  108. package/dist/quasar.esm.js +93 -65
  109. package/dist/quasar.esm.prod.js +2 -2
  110. package/dist/quasar.prod.css +1 -1
  111. package/dist/quasar.rtl.css +266 -13
  112. package/dist/quasar.rtl.prod.css +1 -1
  113. package/dist/quasar.sass +116 -16
  114. package/dist/quasar.umd.js +92 -64
  115. package/dist/quasar.umd.prod.js +2 -2
  116. package/dist/transforms/api-list.json +3 -3
  117. package/dist/transforms/auto-import.json +9 -53
  118. package/dist/transforms/import-map.json +4 -26
  119. package/dist/types/api/dialog.d.ts +101 -0
  120. package/dist/types/api/qfile.d.ts +5 -0
  121. package/dist/types/api/qinput.d.ts +27 -0
  122. package/dist/types/api/qpopupproxy.d.ts +3 -0
  123. package/dist/types/api.d.ts +3 -0
  124. package/dist/types/index.d.ts +263 -297
  125. package/dist/vetur/quasar-attributes.json +144 -144
  126. package/dist/vetur/quasar-tags.json +50 -50
  127. package/dist/web-types/web-types.json +634 -634
  128. package/icon-set/mdi-v7.js +146 -0
  129. package/icon-set/mdi-v7.mjs +141 -0
  130. package/icon-set/svg-mdi-v7.js +224 -0
  131. package/icon-set/svg-mdi-v7.mjs +224 -0
  132. package/lang/index.json +4 -4
  133. package/lang/{kz.js → kk.js} +1 -1
  134. package/lang/{kz.mjs → kk.mjs} +0 -0
  135. package/package.json +2 -2
  136. package/src/components/btn/QBtn.sass +0 -1
  137. package/src/components/btn-dropdown/QBtnDropdown.js +0 -1
  138. package/src/components/card/QCard.sass +2 -1
  139. package/src/components/chip/QChip.sass +6 -2
  140. package/src/components/color/QColor.sass +1 -0
  141. package/src/components/date/QDate.js +3 -1
  142. package/src/components/date/QDate.sass +1 -0
  143. package/src/components/dialog/QDialog.js +10 -5
  144. package/src/components/dialog/QDialog.sass +0 -1
  145. package/src/components/expansion-item/QExpansionItem.js +0 -1
  146. package/src/components/fab/QFab.js +3 -6
  147. package/src/components/fab/QFab.sass +2 -1
  148. package/src/components/file/QFile.json +2 -0
  149. package/src/components/img/QImg.js +20 -19
  150. package/src/components/input/QInput.js +9 -3
  151. package/src/components/input/QInput.json +2 -0
  152. package/src/components/input/use-mask.js +2 -0
  153. package/src/components/item/QList.js +1 -1
  154. package/src/components/knob/QKnob.sass +4 -1
  155. package/src/components/layout/QLayout.sass +2 -0
  156. package/src/components/linear-progress/QLinearProgress.js +5 -2
  157. package/src/components/linear-progress/QLinearProgress.sass +3 -1
  158. package/src/components/menu/QMenu.js +4 -1
  159. package/src/components/menu/QMenu.sass +3 -0
  160. package/src/components/popup-proxy/QPopupProxy.js +6 -0
  161. package/src/components/popup-proxy/QPopupProxy.json +19 -0
  162. package/src/components/select/QSelect.js +26 -21
  163. package/src/components/stepper/QStepper.js +2 -2
  164. package/src/components/stepper/QStepper.sass +5 -0
  165. package/src/components/table/QTable.sass +11 -1
  166. package/src/components/time/QTime.sass +1 -0
  167. package/src/components/toggle/QToggle.sass +5 -3
  168. package/src/components/uploader/QUploader.sass +1 -0
  169. package/src/css/core/elevation.sass +17 -4
  170. package/src/css/core/visibility.sass +3 -1
  171. package/src/css/variables.sass +69 -0
  172. package/src/plugins/Dialog.json +3 -1
@@ -72,9 +72,11 @@ export default createComponent({
72
72
  )
73
73
 
74
74
  const trackStyle = computed(() => width(props.buffer !== void 0 ? props.buffer : 1, widthReverse.value, proxy.$q))
75
+ const transitionSuffix = computed(() => `with${ props.instantFeedback === true ? 'out' : '' }-transition`)
76
+
75
77
  const trackClass = computed(() =>
76
78
  'q-linear-progress__track absolute-full'
77
- + ` q-linear-progress__track--with${ props.instantFeedback === true ? 'out' : '' }-transition`
79
+ + ` q-linear-progress__track--${ transitionSuffix.value }`
78
80
  + ` q-linear-progress__track--${ isDark.value === true ? 'dark' : 'light' }`
79
81
  + (props.trackColor !== void 0 ? ` bg-${ props.trackColor }` : '')
80
82
  )
@@ -82,13 +84,14 @@ export default createComponent({
82
84
  const modelStyle = computed(() => width(motion.value === true ? 1 : props.value, widthReverse.value, proxy.$q))
83
85
  const modelClass = computed(() =>
84
86
  'q-linear-progress__model absolute-full'
85
- + ` q-linear-progress__model--with${ props.instantFeedback === true ? 'out' : '' }-transition`
87
+ + ` q-linear-progress__model--${ transitionSuffix.value }`
86
88
  + ` q-linear-progress__model--${ motion.value === true ? 'in' : '' }determinate`
87
89
  )
88
90
 
89
91
  const stripeStyle = computed(() => ({ width: `${ props.value * 100 }%` }))
90
92
  const stripeClass = computed(() =>
91
93
  `q-linear-progress__stripe absolute-${ props.reverse === true ? 'right' : 'left' }`
94
+ + ` q-linear-progress__stripe--${ transitionSuffix.value }`
92
95
  )
93
96
 
94
97
  return () => {
@@ -52,10 +52,12 @@
52
52
  background: rgba(255,255,255,.6)
53
53
 
54
54
  &__stripe
55
- transition: width var(--q-linear-progress-speed)
56
55
  background-image: linear-gradient(45deg, rgba(255,255,255,.15) 25%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, rgba(255,255,255,0) 75%, rgba(255,255,255,0)) !important
57
56
  background-size: 40px 40px !important
58
57
 
58
+ &--with-transition
59
+ transition: width var(--q-linear-progress-speed)
60
+
59
61
  @keyframes q-linear-progress--indeterminate
60
62
  0%
61
63
  transform: translate3d(-35%, 0, 0) scale3d(.35, 1, 1)
@@ -258,7 +258,10 @@ export default createComponent({
258
258
  || evt.qClickOutside !== true
259
259
  )
260
260
  ) {
261
- refocusTarget.focus()
261
+ ((evt && evt.type.indexOf('key') === 0
262
+ ? refocusTarget.closest('[tabindex]:not([tabindex^="-"])')
263
+ : void 0
264
+ ) || refocusTarget).focus()
262
265
  refocusTarget = null
263
266
  }
264
267
 
@@ -14,3 +14,6 @@
14
14
 
15
15
  &--square
16
16
  border-radius: 0
17
+
18
+ &--dark
19
+ box-shadow: $menu-box-shadow-dark
@@ -6,6 +6,7 @@ import QMenu from '../menu/QMenu.js'
6
6
  import useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'
7
7
 
8
8
  import { createComponent } from '../../utils/private/create.js'
9
+ import { injectProp } from '../../utils/private/inject-obj-prop.js'
9
10
 
10
11
  export default createComponent({
11
12
  name: 'QPopupProxy',
@@ -67,6 +68,11 @@ export default createComponent({
67
68
  toggle (evt) { popupRef.value.toggle(evt) }
68
69
  })
69
70
 
71
+ injectProp(proxy, 'currentComponent', () => ({
72
+ type: type.value,
73
+ ref: popupRef.value
74
+ }))
75
+
70
76
  return () => {
71
77
  const data = {
72
78
  ref: popupRef,
@@ -61,5 +61,24 @@
61
61
  "toggle": {
62
62
  "extends": "toggle"
63
63
  }
64
+ },
65
+
66
+ "computedProps": {
67
+ "currentComponent": {
68
+ "type": "Object",
69
+ "desc": "Access current underlying component (QMenu or QDialog)",
70
+ "definition": {
71
+ "type": {
72
+ "type": "String",
73
+ "desc": "Component type",
74
+ "values": [ "dialog", "menu" ]
75
+ },
76
+ "ref": {
77
+ "type": "Component",
78
+ "tsType": "QPopupProxyInnerComponent",
79
+ "desc": "The actual component (QMenu or QDialog); Access it directly, without '.value'"
80
+ }
81
+ }
82
+ }
64
83
  }
65
84
  }
@@ -251,6 +251,11 @@ export default createComponent({
251
251
  .join(', ')
252
252
  )
253
253
 
254
+ const ariaCurrentValue = computed(() => (props.displayValue !== void 0
255
+ ? props.displayValue
256
+ : selectedString.value
257
+ ))
258
+
254
259
  const needsHtmlFn = computed(() => (
255
260
  props.optionsHtml === true
256
261
  ? () => true
@@ -268,22 +273,15 @@ export default createComponent({
268
273
 
269
274
  const tabindex = computed(() => (state.focused.value === true ? props.tabindex : -1))
270
275
 
271
- const comboboxAttrs = computed(() => ({
272
- tabindex: props.tabindex,
273
- role: 'combobox',
274
- 'aria-label': props.label,
275
- 'aria-readonly': props.readonly === true ? 'true' : 'false',
276
- 'aria-autocomplete': props.useInput === true ? 'list' : 'none',
277
- 'aria-expanded': menu.value === true ? 'true' : 'false',
278
- 'aria-owns': `${ state.targetUid.value }_lb`,
279
- 'aria-controls': `${ state.targetUid.value }_lb`
280
- }))
281
-
282
- const listboxAttrs = computed(() => {
276
+ const comboboxAttrs = computed(() => {
283
277
  const attrs = {
284
- id: `${ state.targetUid.value }_lb`,
285
- role: 'listbox',
286
- 'aria-multiselectable': props.multiple === true ? 'true' : 'false'
278
+ tabindex: props.tabindex,
279
+ role: 'combobox',
280
+ 'aria-label': props.label,
281
+ 'aria-readonly': props.readonly === true ? 'true' : 'false',
282
+ 'aria-autocomplete': props.useInput === true ? 'list' : 'none',
283
+ 'aria-expanded': menu.value === true ? 'true' : 'false',
284
+ 'aria-controls': `${ state.targetUid.value }_lb`
287
285
  }
288
286
 
289
287
  if (optionIndex.value >= 0) {
@@ -293,6 +291,12 @@ export default createComponent({
293
291
  return attrs
294
292
  })
295
293
 
294
+ const listboxAttrs = computed(() => ({
295
+ id: `${ state.targetUid.value }_lb`,
296
+ role: 'listbox',
297
+ 'aria-multiselectable': props.multiple === true ? 'true' : 'false'
298
+ }))
299
+
296
300
  const selectedScope = computed(() => {
297
301
  return innerValue.value.map((opt, i) => ({
298
302
  index: i,
@@ -788,7 +792,9 @@ export default createComponent({
788
792
  && props.useInput !== true
789
793
  && e.key !== void 0
790
794
  && e.key.length === 1 // printable char
791
- && e.altKey === e.ctrlKey // not kbd shortcut
795
+ && e.altKey === false // not kbd shortcut
796
+ && e.ctrlKey === false // not kbd shortcut
797
+ && e.metaKey === false // not kbd shortcut, especially on macOS with Command key
792
798
  && (e.keyCode !== 32 || searchBuffer.length > 0) // space in middle of search
793
799
  ) {
794
800
  menu.value !== true && showPopup(e)
@@ -935,9 +941,7 @@ export default createComponent({
935
941
 
936
942
  return [
937
943
  h('span', {
938
- [ valueAsHtml.value === true ? 'innerHTML' : 'textContent' ]: props.displayValue !== void 0
939
- ? props.displayValue
940
- : selectedString.value
944
+ [ valueAsHtml.value === true ? 'innerHTML' : 'textContent' ]: ariaCurrentValue.value
941
945
  })
942
946
  ]
943
947
  }
@@ -992,7 +996,7 @@ export default createComponent({
992
996
  id: isTarget === true ? state.targetUid.value : void 0,
993
997
  maxlength: props.maxlength,
994
998
  autocomplete: props.autocomplete,
995
- 'data-autofocus': (fromDialog !== true && props.autofocus === true) || void 0,
999
+ 'data-autofocus': fromDialog === true || props.autofocus === true || void 0,
996
1000
  disabled: props.disable === true,
997
1001
  readonly: props.readonly === true,
998
1002
  ...inputControlEvents.value
@@ -1492,8 +1496,9 @@ export default createComponent({
1492
1496
  key: 'd_t',
1493
1497
  class: 'q-select__focus-target',
1494
1498
  id: isTarget === true ? state.targetUid.value : void 0,
1499
+ value: ariaCurrentValue.value,
1495
1500
  readonly: true,
1496
- 'data-autofocus': (fromDialog !== true && props.autofocus === true) || void 0,
1501
+ 'data-autofocus': fromDialog === true || props.autofocus === true || void 0,
1497
1502
  ...attrs,
1498
1503
  onKeydown: onTargetKeydown,
1499
1504
  onKeyup: onTargetKeyup,
@@ -66,8 +66,8 @@ export default createComponent({
66
66
 
67
67
  const classes = computed(() =>
68
68
  `q-stepper q-stepper--${ props.vertical === true ? 'vertical' : 'horizontal' }`
69
- + (props.flat === true || isDark.value === true ? ' q-stepper--flat no-shadow' : '')
70
- + (props.bordered === true || (isDark.value === true && props.flat === false) ? ' q-stepper--bordered' : '')
69
+ + (props.flat === true ? ' q-stepper--flat' : '')
70
+ + (props.bordered === true ? ' q-stepper--bordered' : '')
71
71
  + (isDark.value === true ? ' q-stepper--dark q-dark' : '')
72
72
  )
73
73
 
@@ -32,6 +32,8 @@
32
32
  flex-direction: row
33
33
 
34
34
  &--dark
35
+ box-shadow: $dark-shadow-2
36
+
35
37
  .q-stepper__dot span
36
38
  color: #000
37
39
 
@@ -118,6 +120,9 @@
118
120
  &__nav
119
121
  padding-top: 24px
120
122
 
123
+ &--flat
124
+ box-shadow: none
125
+
121
126
  &--bordered
122
127
  border: 1px solid $separator-color
123
128
 
@@ -119,6 +119,15 @@
119
119
  &--col-auto-width
120
120
  width: 1px
121
121
 
122
+ // positioning selector here
123
+ // so user-land overwrites with !important are not required
124
+ // and also for --flat/--grid to not require !important by default
125
+ .q-table__card--dark,
126
+ .q-table--dark
127
+ box-shadow: $table-box-shadow-dark
128
+
129
+ .q-table
130
+
122
131
  &--flat
123
132
  box-shadow: none
124
133
  &--bordered
@@ -263,7 +272,8 @@ body.desktop .q-table > tbody > tr:not(.q-tr--no-hover):hover > td:not(.q-td--no
263
272
  /*
264
273
  * On dark background
265
274
  */
266
- .q-table__card--dark, .q-table--dark
275
+ .q-table__card--dark,
276
+ .q-table--dark
267
277
  border-color: $table-dark-border-color
268
278
 
269
279
  .q-table--dark
@@ -184,3 +184,4 @@
184
184
 
185
185
  &--dark
186
186
  border-color: $separator-dark-color
187
+ box-shadow: $dark-shadow-2
@@ -74,8 +74,11 @@ $toggle-transition: .22s cubic-bezier(.4,0,.2,1)
74
74
  color: #fff
75
75
  &--truthy
76
76
  color: var(--q-primary)
77
- .q-toggle__thumb:before
78
- opacity: .32 !important
77
+ .q-toggle__thumb
78
+ &:after
79
+ box-shadow: none
80
+ &:before
81
+ opacity: .32 !important
79
82
 
80
83
  &--dense
81
84
 
@@ -129,4 +132,3 @@ body.desktop
129
132
  &:hover
130
133
  .q-toggle__thumb:before
131
134
  transform: scale3d(1.5, 1.5, 1)
132
-
@@ -125,6 +125,7 @@
125
125
 
126
126
  &--dark
127
127
  border-color: $separator-dark-color
128
+ box-shadow: $dark-shadow-2
128
129
 
129
130
  .q-uploader__file
130
131
  border-color: $separator-dark-color
@@ -7,12 +7,25 @@
7
7
  .shadow-up-#{$z}
8
8
  box-shadow: nth($shadows-up, $z)
9
9
 
10
- .no-shadow, .shadow-0
11
- box-shadow: none !important
12
10
  .inset-shadow
13
- box-shadow: $inset-shadow !important
11
+ box-shadow: $inset-shadow
14
12
  .inset-shadow-down
15
- box-shadow: $inset-shadow-down !important
13
+ box-shadow: $inset-shadow-down
14
+
15
+ body.body--dark
16
+ @for $z from 1 through 24
17
+ .shadow-#{$z}
18
+ box-shadow: nth($dark-shadows, $z)
19
+ .shadow-up-#{$z}
20
+ box-shadow: nth($dark-shadows-up, $z)
21
+
22
+ .inset-shadow
23
+ box-shadow: $inset-dark-shadow
24
+ .inset-shadow-down
25
+ box-shadow: $inset-dark-shadow-down
26
+
27
+ .no-shadow, .shadow-0
28
+ box-shadow: none !important
16
29
 
17
30
  .z-marginals
18
31
  z-index: $z-marginals
@@ -36,8 +36,10 @@
36
36
 
37
37
  .hidden
38
38
  display: none !important
39
- .invisible
39
+ .invisible, .invisible *
40
40
  visibility: hidden !important
41
+ transition: none !important
42
+ animation: none !important
41
43
  .transparent
42
44
  background: transparent !important
43
45
 
@@ -459,6 +459,72 @@ $shadow-up-24 : 0 -11px 15px -7px $elevation-umbra, 0 -24px 38px 3px $elevation-
459
459
  // sorry for long line; we need .sass and it doesn't support multi-line list
460
460
  $shadows-up: ($shadow-up-1, $shadow-up-2, $shadow-up-3, $shadow-up-4, $shadow-up-5, $shadow-up-6, $shadow-up-7, $shadow-up-8, $shadow-up-9, $shadow-up-10, $shadow-up-11, $shadow-up-12, $shadow-up-13, $shadow-up-14, $shadow-up-15, $shadow-up-16, $shadow-up-17, $shadow-up-18, $shadow-up-19, $shadow-up-20, $shadow-up-21, $shadow-up-22, $shadow-up-23, $shadow-up-24)
461
461
 
462
+ $dark-shadow-color : #fff !default
463
+ $inset-dark-shadow : 0 7px 9px -7px rgba($dark-shadow-color, .7) inset !default
464
+ $inset-dark-shadow-down : 0 -7px 9px -7px rgba($dark-shadow-color, .7) inset !default
465
+
466
+ $elevation-dark-umbra : rgba($dark-shadow-color, .2) !default
467
+ $elevation-dark-penumbra : rgba($dark-shadow-color, .14) !default
468
+ $elevation-dark-ambient : rgba($dark-shadow-color, .12) !default
469
+
470
+ $dark-shadow-0 : 0 0 0 $elevation-dark-umbra, 0 0 0 $elevation-dark-penumbra, 0 0 0 $elevation-dark-ambient !default
471
+ $dark-shadow-1 : 0 1px 3px $elevation-dark-umbra, 0 1px 1px $elevation-dark-penumbra, 0 2px 1px -1px $elevation-dark-ambient !default
472
+ $dark-shadow-2 : 0 1px 5px $elevation-dark-umbra, 0 2px 2px $elevation-dark-penumbra, 0 3px 1px -2px $elevation-dark-ambient !default
473
+ $dark-shadow-3 : 0 1px 8px $elevation-dark-umbra, 0 3px 4px $elevation-dark-penumbra, 0 3px 3px -2px $elevation-dark-ambient !default
474
+ $dark-shadow-4 : 0 2px 4px -1px $elevation-dark-umbra, 0 4px 5px $elevation-dark-penumbra, 0 1px 10px $elevation-dark-ambient !default
475
+ $dark-shadow-5 : 0 3px 5px -1px $elevation-dark-umbra, 0 5px 8px $elevation-dark-penumbra, 0 1px 14px $elevation-dark-ambient !default
476
+ $dark-shadow-6 : 0 3px 5px -1px $elevation-dark-umbra, 0 6px 10px $elevation-dark-penumbra, 0 1px 18px $elevation-dark-ambient !default
477
+ $dark-shadow-7 : 0 4px 5px -2px $elevation-dark-umbra, 0 7px 10px 1px $elevation-dark-penumbra, 0 2px 16px 1px $elevation-dark-ambient !default
478
+ $dark-shadow-8 : 0 5px 5px -3px $elevation-dark-umbra, 0 8px 10px 1px $elevation-dark-penumbra, 0 3px 14px 2px $elevation-dark-ambient !default
479
+ $dark-shadow-9 : 0 5px 6px -3px $elevation-dark-umbra, 0 9px 12px 1px $elevation-dark-penumbra, 0 3px 16px 2px $elevation-dark-ambient !default
480
+ $dark-shadow-10 : 0 6px 6px -3px $elevation-dark-umbra, 0 10px 14px 1px $elevation-dark-penumbra, 0 4px 18px 3px $elevation-dark-ambient !default
481
+ $dark-shadow-11 : 0 6px 7px -4px $elevation-dark-umbra, 0 11px 15px 1px $elevation-dark-penumbra, 0 4px 20px 3px $elevation-dark-ambient !default
482
+ $dark-shadow-12 : 0 7px 8px -4px $elevation-dark-umbra, 0 12px 17px 2px $elevation-dark-penumbra, 0 5px 22px 4px $elevation-dark-ambient !default
483
+ $dark-shadow-13 : 0 7px 8px -4px $elevation-dark-umbra, 0 13px 19px 2px $elevation-dark-penumbra, 0 5px 24px 4px $elevation-dark-ambient !default
484
+ $dark-shadow-14 : 0 7px 9px -4px $elevation-dark-umbra, 0 14px 21px 2px $elevation-dark-penumbra, 0 5px 26px 4px $elevation-dark-ambient !default
485
+ $dark-shadow-15 : 0 8px 9px -5px $elevation-dark-umbra, 0 15px 22px 2px $elevation-dark-penumbra, 0 6px 28px 5px $elevation-dark-ambient !default
486
+ $dark-shadow-16 : 0 8px 10px -5px $elevation-dark-umbra, 0 16px 24px 2px $elevation-dark-penumbra, 0 6px 30px 5px $elevation-dark-ambient !default
487
+ $dark-shadow-17 : 0 8px 11px -5px $elevation-dark-umbra, 0 17px 26px 2px $elevation-dark-penumbra, 0 6px 32px 5px $elevation-dark-ambient !default
488
+ $dark-shadow-18 : 0 9px 11px -5px $elevation-dark-umbra, 0 18px 28px 2px $elevation-dark-penumbra, 0 7px 34px 6px $elevation-dark-ambient !default
489
+ $dark-shadow-19 : 0 9px 12px -6px $elevation-dark-umbra, 0 19px 29px 2px $elevation-dark-penumbra, 0 7px 36px 6px $elevation-dark-ambient !default
490
+ $dark-shadow-20 : 0 10px 13px -6px $elevation-dark-umbra, 0 20px 31px 3px $elevation-dark-penumbra, 0 8px 38px 7px $elevation-dark-ambient !default
491
+ $dark-shadow-21 : 0 10px 13px -6px $elevation-dark-umbra, 0 21px 33px 3px $elevation-dark-penumbra, 0 8px 40px 7px $elevation-dark-ambient !default
492
+ $dark-shadow-22 : 0 10px 14px -6px $elevation-dark-umbra, 0 22px 35px 3px $elevation-dark-penumbra, 0 8px 42px 7px $elevation-dark-ambient !default
493
+ $dark-shadow-23 : 0 11px 14px -7px $elevation-dark-umbra, 0 23px 36px 3px $elevation-dark-penumbra, 0 9px 44px 8px $elevation-dark-ambient !default
494
+ $dark-shadow-24 : 0 11px 15px -7px $elevation-dark-umbra, 0 24px 38px 3px $elevation-dark-penumbra, 0 9px 46px 8px $elevation-dark-ambient !default
495
+
496
+ // sorry for long line; we need .sass and it doesn't support multi-line list
497
+ $dark-shadows: ($dark-shadow-1, $dark-shadow-2, $dark-shadow-3, $dark-shadow-4, $dark-shadow-5, $dark-shadow-6, $dark-shadow-7, $dark-shadow-8, $dark-shadow-9, $dark-shadow-10, $dark-shadow-11, $dark-shadow-12, $dark-shadow-13, $dark-shadow-14, $dark-shadow-15, $dark-shadow-16, $dark-shadow-17, $dark-shadow-18, $dark-shadow-19, $dark-shadow-20, $dark-shadow-21, $dark-shadow-22, $dark-shadow-23, $dark-shadow-24)
498
+
499
+ $dark-shadow-up-0 : 0 0 0 $elevation-dark-umbra, 0 0 0 $elevation-dark-penumbra, 0 0 0 $elevation-dark-ambient !default
500
+ $dark-shadow-up-1 : 0 -1px 3px $elevation-dark-umbra, 0 -1px 1px $elevation-dark-penumbra, 0 -2px 1px -1px $elevation-dark-ambient !default
501
+ $dark-shadow-up-2 : 0 -1px 5px $elevation-dark-umbra, 0 -2px 2px $elevation-dark-penumbra, 0 -3px 1px -2px $elevation-dark-ambient !default
502
+ $dark-shadow-up-3 : 0 -1px 8px $elevation-dark-umbra, 0 -3px 4px $elevation-dark-penumbra, 0 -3px 3px -2px $elevation-dark-ambient !default
503
+ $dark-shadow-up-4 : 0 -2px 4px -1px $elevation-dark-umbra, 0 -4px 5px $elevation-dark-penumbra, 0 -1px 10px $elevation-dark-ambient !default
504
+ $dark-shadow-up-5 : 0 -3px 5px -1px $elevation-dark-umbra, 0 -5px 8px $elevation-dark-penumbra, 0 -1px 14px $elevation-dark-ambient !default
505
+ $dark-shadow-up-6 : 0 -3px 5px -1px $elevation-dark-umbra, 0 -6px 10px $elevation-dark-penumbra, 0 -1px 18px $elevation-dark-ambient !default
506
+ $dark-shadow-up-7 : 0 -4px 5px -2px $elevation-dark-umbra, 0 -7px 10px 1px $elevation-dark-penumbra, 0 -2px 16px 1px $elevation-dark-ambient !default
507
+ $dark-shadow-up-8 : 0 -5px 5px -3px $elevation-dark-umbra, 0 -8px 10px 1px $elevation-dark-penumbra, 0 -3px 14px 2px $elevation-dark-ambient !default
508
+ $dark-shadow-up-9 : 0 -5px 6px -3px $elevation-dark-umbra, 0 -9px 12px 1px $elevation-dark-penumbra, 0 -3px 16px 2px $elevation-dark-ambient !default
509
+ $dark-shadow-up-10 : 0 -6px 6px -3px $elevation-dark-umbra, 0 -10px 14px 1px $elevation-dark-penumbra, 0 -4px 18px 3px $elevation-dark-ambient !default
510
+ $dark-shadow-up-11 : 0 -6px 7px -4px $elevation-dark-umbra, 0 -11px 15px 1px $elevation-dark-penumbra, 0 -4px 20px 3px $elevation-dark-ambient !default
511
+ $dark-shadow-up-12 : 0 -7px 8px -4px $elevation-dark-umbra, 0 -12px 17px 2px $elevation-dark-penumbra, 0 -5px 22px 4px $elevation-dark-ambient !default
512
+ $dark-shadow-up-13 : 0 -7px 8px -4px $elevation-dark-umbra, 0 -13px 19px 2px $elevation-dark-penumbra, 0 -5px 24px 4px $elevation-dark-ambient !default
513
+ $dark-shadow-up-14 : 0 -7px 9px -4px $elevation-dark-umbra, 0 -14px 21px 2px $elevation-dark-penumbra, 0 -5px 26px 4px $elevation-dark-ambient !default
514
+ $dark-shadow-up-15 : 0 -8px 9px -5px $elevation-dark-umbra, 0 -15px 22px 2px $elevation-dark-penumbra, 0 -6px 28px 5px $elevation-dark-ambient !default
515
+ $dark-shadow-up-16 : 0 -8px 10px -5px $elevation-dark-umbra, 0 -16px 24px 2px $elevation-dark-penumbra, 0 -6px 30px 5px $elevation-dark-ambient !default
516
+ $dark-shadow-up-17 : 0 -8px 11px -5px $elevation-dark-umbra, 0 -17px 26px 2px $elevation-dark-penumbra, 0 -6px 32px 5px $elevation-dark-ambient !default
517
+ $dark-shadow-up-18 : 0 -9px 11px -5px $elevation-dark-umbra, 0 -18px 28px 2px $elevation-dark-penumbra, 0 -7px 34px 6px $elevation-dark-ambient !default
518
+ $dark-shadow-up-19 : 0 -9px 12px -6px $elevation-dark-umbra, 0 -19px 29px 2px $elevation-dark-penumbra, 0 -7px 36px 6px $elevation-dark-ambient !default
519
+ $dark-shadow-up-20 : 0 -10px 13px -6px $elevation-dark-umbra, 0 -20px 31px 3px $elevation-dark-penumbra, 0 -8px 38px 7px $elevation-dark-ambient !default
520
+ $dark-shadow-up-21 : 0 -10px 13px -6px $elevation-dark-umbra, 0 -21px 33px 3px $elevation-dark-penumbra, 0 -8px 40px 7px $elevation-dark-ambient !default
521
+ $dark-shadow-up-22 : 0 -10px 14px -6px $elevation-dark-umbra, 0 -22px 35px 3px $elevation-dark-penumbra, 0 -8px 42px 7px $elevation-dark-ambient !default
522
+ $dark-shadow-up-23 : 0 -11px 14px -7px $elevation-dark-umbra, 0 -23px 36px 3px $elevation-dark-penumbra, 0 -9px 44px 8px $elevation-dark-ambient !default
523
+ $dark-shadow-up-24 : 0 -11px 15px -7px $elevation-dark-umbra, 0 -24px 38px 3px $elevation-dark-penumbra, 0 -9px 46px 8px $elevation-dark-ambient !default
524
+
525
+ // sorry for long line; we need .sass and it doesn't support multi-line list
526
+ $dark-shadows-up: ($dark-shadow-up-1, $dark-shadow-up-2, $dark-shadow-up-3, $dark-shadow-up-4, $dark-shadow-up-5, $dark-shadow-up-6, $dark-shadow-up-7, $dark-shadow-up-8, $dark-shadow-up-9, $dark-shadow-up-10, $dark-shadow-up-11, $dark-shadow-up-12, $dark-shadow-up-13, $dark-shadow-up-14, $dark-shadow-up-15, $dark-shadow-up-16, $dark-shadow-up-17, $dark-shadow-up-18, $dark-shadow-up-19, $dark-shadow-up-20, $dark-shadow-up-21, $dark-shadow-up-22, $dark-shadow-up-23, $dark-shadow-up-24)
527
+
462
528
  $generic-border-radius : 4px !default
463
529
  $generic-hover-transition : .3s cubic-bezier(.25, .8, .5, 1) !default
464
530
  $typography-font-family : 'Roboto', '-apple-system', 'Helvetica Neue', Helvetica, Arial, sans-serif !default
@@ -507,6 +573,7 @@ $table-selected-background : rgba(0, 0, 0, .06) !default
507
573
  $table-dark-border-color : $separator-dark-color !default
508
574
  $table-dark-hover-background : rgba(255, 255, 255, .07) !default
509
575
  $table-dark-selected-background : rgba(255, 255, 255, .1) !default
576
+ $table-box-shadow-dark : $dark-shadow-2 !default
510
577
 
511
578
  $toolbar-min-height : 50px !default
512
579
  $toolbar-padding : 0 12px !default
@@ -518,9 +585,11 @@ $toolbar-title-padding : 0 12px !default
518
585
 
519
586
  $layout-border : 1px solid $separator-color !default
520
587
  $layout-shadow : 0 0 10px 2px rgba(0,0,0,0.2), 0 0px 10px rgba(0,0,0,0.24) !default
588
+ $layout-shadow-dark : 0 0 10px 2px rgba(255,255,255,.2), 0 0px 10px rgba(255,255,255,.24) !default
521
589
 
522
590
  $menu-background : #fff !default
523
591
  $menu-box-shadow : $shadow-2 !default
592
+ $menu-box-shadow-dark : $dark-shadow-2 !default
524
593
  $menu-max-width : 95vw !default
525
594
 
526
595
  $rating-grade-color : $yellow !default
@@ -42,6 +42,7 @@
42
42
 
43
43
  "prompt": {
44
44
  "type": "Object",
45
+ "tsType": "QDialogInputPrompt",
45
46
  "desc": "An object definition of the input field for the prompting question.",
46
47
  "examples": [ "prompt: { model: this.promptVal, type: 'number' }" ],
47
48
  "definition": {
@@ -95,6 +96,7 @@
95
96
 
96
97
  "options": {
97
98
  "type": "Object",
99
+ "tsType": "QDialogSelectionPrompt",
98
100
  "desc": "An object definition for creating the selection form content",
99
101
  "examples": [ "{ model: this.dialogSelection, type: 'radio', items: [...listOfItems] }" ],
100
102
  "definition": {
@@ -114,7 +116,7 @@
114
116
 
115
117
  "items": {
116
118
  "type": "Array",
117
- "desc": "The list of options to interact with; Equivalent to options prop of the QOptionsGroup component",
119
+ "desc": "The list of options to interact with; Equivalent to options prop of the QOptionGroup component",
118
120
  "examples": [
119
121
  "[ { label: 'Option 1', value: 'op1' }, { label: 'Option 2', value: 'op2' }, { label: 'Option 3', value: 'op3' } ]"
120
122
  ]