quasar 2.16.9 → 2.16.11

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 (152) hide show
  1. package/dist/api/BottomSheet.json +1 -1
  2. package/dist/api/Dialog.json +1 -1
  3. package/dist/api/QTable.json +1 -1
  4. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  5. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  6. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  7. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  8. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  9. package/dist/icon-set/fontawesome-v6.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-ionicons-v4.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  40. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  41. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  42. package/dist/icon-set/themify.umd.prod.js +1 -1
  43. package/dist/lang/ar-TN.umd.prod.js +1 -1
  44. package/dist/lang/ar.umd.prod.js +1 -1
  45. package/dist/lang/az-Latn.umd.prod.js +1 -1
  46. package/dist/lang/bg.umd.prod.js +1 -1
  47. package/dist/lang/bn.umd.prod.js +1 -1
  48. package/dist/lang/bs-BA.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-CH.umd.prod.js +1 -1
  53. package/dist/lang/de-DE.umd.prod.js +1 -1
  54. package/dist/lang/de.umd.prod.js +1 -1
  55. package/dist/lang/el.umd.prod.js +1 -1
  56. package/dist/lang/en-GB.umd.prod.js +1 -1
  57. package/dist/lang/en-US.umd.prod.js +1 -1
  58. package/dist/lang/eo.umd.prod.js +1 -1
  59. package/dist/lang/es.umd.prod.js +1 -1
  60. package/dist/lang/et.umd.prod.js +1 -1
  61. package/dist/lang/eu.umd.prod.js +1 -1
  62. package/dist/lang/fa-IR.umd.prod.js +1 -1
  63. package/dist/lang/fa.umd.prod.js +1 -1
  64. package/dist/lang/fi.umd.prod.js +1 -1
  65. package/dist/lang/fr.umd.prod.js +1 -1
  66. package/dist/lang/gn.umd.prod.js +1 -1
  67. package/dist/lang/he.umd.prod.js +1 -1
  68. package/dist/lang/hi.umd.prod.js +1 -1
  69. package/dist/lang/hr.umd.prod.js +1 -1
  70. package/dist/lang/hu.umd.prod.js +1 -1
  71. package/dist/lang/id.umd.prod.js +1 -1
  72. package/dist/lang/is.umd.prod.js +1 -1
  73. package/dist/lang/it.umd.prod.js +1 -1
  74. package/dist/lang/ja.umd.prod.js +1 -1
  75. package/dist/lang/kk.umd.prod.js +1 -1
  76. package/dist/lang/km.umd.prod.js +1 -1
  77. package/dist/lang/ko-KR.umd.prod.js +1 -1
  78. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  79. package/dist/lang/lt.umd.prod.js +1 -1
  80. package/dist/lang/lu.umd.prod.js +1 -1
  81. package/dist/lang/lv.umd.prod.js +1 -1
  82. package/dist/lang/mk.umd.prod.js +1 -1
  83. package/dist/lang/ml.umd.prod.js +1 -1
  84. package/dist/lang/mm.umd.prod.js +1 -1
  85. package/dist/lang/ms-MY.umd.prod.js +1 -1
  86. package/dist/lang/ms.umd.prod.js +1 -1
  87. package/dist/lang/my.umd.prod.js +1 -1
  88. package/dist/lang/nb-NO.umd.prod.js +1 -1
  89. package/dist/lang/nl.umd.prod.js +1 -1
  90. package/dist/lang/pl.umd.prod.js +1 -1
  91. package/dist/lang/pt-BR.umd.prod.js +1 -1
  92. package/dist/lang/pt.umd.prod.js +1 -1
  93. package/dist/lang/ro.umd.prod.js +1 -1
  94. package/dist/lang/ru.umd.prod.js +1 -1
  95. package/dist/lang/sk.umd.prod.js +1 -1
  96. package/dist/lang/sl.umd.prod.js +1 -1
  97. package/dist/lang/sm.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/tl.umd.prod.js +1 -1
  104. package/dist/lang/tr.umd.prod.js +1 -1
  105. package/dist/lang/ug.umd.prod.js +1 -1
  106. package/dist/lang/uk.umd.prod.js +1 -1
  107. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  108. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  109. package/dist/lang/vi.umd.prod.js +1 -1
  110. package/dist/lang/zh-CN.umd.prod.js +1 -1
  111. package/dist/lang/zh-TW.umd.prod.js +1 -1
  112. package/dist/quasar.client.js +83 -62
  113. package/dist/quasar.sass +1 -1
  114. package/dist/quasar.server.prod.cjs +6 -6
  115. package/dist/quasar.server.prod.js +6 -6
  116. package/dist/quasar.umd.js +83 -62
  117. package/dist/quasar.umd.prod.js +11 -11
  118. package/dist/types/index.d.ts +3 -3
  119. package/dist/web-types/web-types.json +1 -1
  120. package/package.json +1 -1
  121. package/src/components/checkbox/QCheckbox.js +3 -1
  122. package/src/components/icon/QIcon.js +1 -1
  123. package/src/components/item/QList.js +7 -1
  124. package/src/components/item/QList.test.js +170 -0
  125. package/src/components/radio/QRadio.js +3 -1
  126. package/src/components/space/QSpace.js +1 -2
  127. package/src/components/spinner/QSpinnerAudio.js +2 -1
  128. package/src/components/spinner/QSpinnerBall.js +2 -1
  129. package/src/components/spinner/QSpinnerBars.js +2 -1
  130. package/src/components/spinner/QSpinnerBox.js +2 -1
  131. package/src/components/spinner/QSpinnerClock.js +2 -1
  132. package/src/components/spinner/QSpinnerComment.js +2 -1
  133. package/src/components/spinner/QSpinnerCube.js +2 -1
  134. package/src/components/spinner/QSpinnerDots.js +2 -1
  135. package/src/components/spinner/QSpinnerFacebook.js +2 -1
  136. package/src/components/spinner/QSpinnerGears.js +2 -1
  137. package/src/components/spinner/QSpinnerGrid.js +2 -1
  138. package/src/components/spinner/QSpinnerHearts.js +2 -1
  139. package/src/components/spinner/QSpinnerHourglass.js +2 -1
  140. package/src/components/spinner/QSpinnerInfinity.js +2 -1
  141. package/src/components/spinner/QSpinnerIos.js +2 -1
  142. package/src/components/spinner/QSpinnerOrbit.js +2 -1
  143. package/src/components/spinner/QSpinnerOval.js +2 -1
  144. package/src/components/spinner/QSpinnerPie.js +2 -1
  145. package/src/components/spinner/QSpinnerPuff.js +2 -1
  146. package/src/components/spinner/QSpinnerRadio.js +2 -1
  147. package/src/components/spinner/QSpinnerRings.js +2 -1
  148. package/src/components/spinner/QSpinnerTail.js +2 -1
  149. package/src/components/table/QTable.json +1 -1
  150. package/src/composables/private.use-key-composition/use-key-composition.js +2 -19
  151. package/src/plugins/dialog/Dialog.json +1 -1
  152. package/src/utils/private.dialog/create-dialog.json +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quasar",
3
- "version": "2.16.9",
3
+ "version": "2.16.11",
4
4
  "description": "Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time",
5
5
  "type": "module",
6
6
  "module": "dist/quasar.client.js",
@@ -5,7 +5,7 @@ import QIcon from '../icon/QIcon.js'
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
  import useCheckbox, { useCheckboxProps, useCheckboxEmits } from './use-checkbox.js'
7
7
 
8
- const bgNode = h('div', {
8
+ const createBgNode = () => h('div', {
9
9
  key: 'svg',
10
10
  class: 'q-checkbox__bg absolute'
11
11
  }, [
@@ -33,6 +33,8 @@ export default createComponent({
33
33
  emits: useCheckboxEmits,
34
34
 
35
35
  setup (props) {
36
+ const bgNode = createBgNode()
37
+
36
38
  function getInner (isTrue, isIndeterminate) {
37
39
  const icon = computed(() =>
38
40
  (isTrue.value === true
@@ -42,7 +42,7 @@ const mRE = /^[Mm]\s?[-+]?\.?\d/
42
42
  const imgRE = /^img:/
43
43
  const svgUseRE = /^svguse:/
44
44
  const ionRE = /^ion-/
45
- const faRE = /^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /
45
+ const faRE = /^(fa-(classic|sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /
46
46
 
47
47
  export default createComponent({
48
48
  name: 'QIcon',
@@ -4,6 +4,8 @@ import { createComponent } from '../../utils/private.create/create.js'
4
4
  import useDark, { useDarkProps } from '../../composables/private.use-dark/use-dark.js'
5
5
  import { hSlot } from '../../utils/private.render/render.js'
6
6
 
7
+ const roleAttrExceptions = [ 'ul', 'ol' ]
8
+
7
9
  export default createComponent({
8
10
  name: 'QList',
9
11
 
@@ -25,6 +27,10 @@ export default createComponent({
25
27
  const vm = getCurrentInstance()
26
28
  const isDark = useDark(props, vm.proxy.$q)
27
29
 
30
+ const role = computed(() => (
31
+ roleAttrExceptions.includes(props.tag) ? null : 'list')
32
+ )
33
+
28
34
  const classes = computed(() =>
29
35
  'q-list'
30
36
  + (props.bordered === true ? ' q-list--bordered' : '')
@@ -34,6 +40,6 @@ export default createComponent({
34
40
  + (props.padding === true ? ' q-list--padding' : '')
35
41
  )
36
42
 
37
- return () => h(props.tag, { class: classes.value }, hSlot(slots.default))
43
+ return () => h(props.tag, { class: classes.value, role: role.value }, hSlot(slots.default))
38
44
  }
39
45
  })
@@ -0,0 +1,170 @@
1
+ import { mount, flushPromises } from '@vue/test-utils'
2
+ import { describe, test, expect } from 'vitest'
3
+
4
+ import QList from './QList.js'
5
+
6
+ describe('[QList API]', () => {
7
+ describe('[Props]', () => {
8
+ describe('[default attributes]', () => {
9
+ test('has a role="list" attribute with a div', async () => {
10
+ const wrapper = mount(QList)
11
+
12
+ const target = wrapper.get('.q-list')
13
+
14
+ expect(target.element.getAttribute('role')).toBe('list')
15
+ })
16
+
17
+ test('does not have a role="list" attribute with a ol', async () => {
18
+ const wrapper = mount(QList, { props: { tag: 'ol' } })
19
+
20
+ const target = wrapper.get('.q-list')
21
+
22
+ expect(target.element.getAttribute('role')).toBe(null)
23
+ })
24
+
25
+ test('does not have a role="list" attribute with a ul', async () => {
26
+ const wrapper = mount(QList, { props: { tag: 'ul' } })
27
+
28
+ const target = wrapper.get('.q-list')
29
+
30
+ expect(target.element.getAttribute('role')).toBe(null)
31
+ })
32
+ })
33
+
34
+ describe('[(prop)bordered]', () => {
35
+ test('type Boolean has effect', async () => {
36
+ const wrapper = mount(QList)
37
+
38
+ const target = wrapper.get('.q-list')
39
+
40
+ expect(target.classes()).not.toContain('q-list--bordered')
41
+
42
+ await wrapper.setProps({ bordered: true })
43
+ await flushPromises()
44
+
45
+ expect(target.classes()).toContain('q-list--bordered')
46
+ })
47
+ })
48
+
49
+ describe('[(prop)dense]', () => {
50
+ test('type Boolean has effect', async () => {
51
+ const wrapper = mount(QList)
52
+
53
+ const target = wrapper.get('.q-list')
54
+
55
+ expect(target.classes()).not.toContain('q-list--dense')
56
+
57
+ await wrapper.setProps({ dense: true })
58
+ await flushPromises()
59
+
60
+ expect(target.classes()).toContain('q-list--dense')
61
+ })
62
+ })
63
+
64
+ describe('[(prop)separator]', () => {
65
+ test('type Boolean has effect', async () => {
66
+ const wrapper = mount(QList)
67
+
68
+ const target = wrapper.get('.q-list')
69
+
70
+ expect(target.classes()).not.toContain('q-list--separator')
71
+
72
+ await wrapper.setProps({ separator: true })
73
+ await flushPromises()
74
+
75
+ expect(target.classes()).toContain('q-list--separator')
76
+ })
77
+ })
78
+
79
+ describe('[(prop)dark]', () => {
80
+ test('type Boolean has effect', async () => {
81
+ const wrapper = mount(QList)
82
+ await wrapper.setProps({ dark: false })
83
+
84
+ const target = wrapper.get('.q-list')
85
+
86
+ expect(target.classes()).not.toContain('q-list--dark')
87
+
88
+ await wrapper.setProps({ dark: true })
89
+ await flushPromises()
90
+
91
+ expect(target.classes()).toContain('q-list--dark')
92
+
93
+ await wrapper.setProps({ dark: false })
94
+ await wrapper.vm.$q.dark.set(true)
95
+ await flushPromises()
96
+
97
+ expect(target.classes()).not.toContain('q-list--dark')
98
+ })
99
+
100
+ test('type null has effect', async () => {
101
+ const wrapper = mount(QList)
102
+ await wrapper.vm.$q.dark.set(false)
103
+
104
+ const target = wrapper.get('.q-list')
105
+ expect(target.classes()).not.toContain('q-list--dark')
106
+
107
+ await wrapper.setProps({ dark: null })
108
+ await flushPromises()
109
+
110
+ expect(target.classes()).not.toContain('q-list--dark')
111
+
112
+ await wrapper.vm.$q.dark.set(true)
113
+
114
+ expect(target.classes()).toContain('q-list--dark')
115
+ })
116
+ })
117
+
118
+ describe('[(prop)padding]', () => {
119
+ test('type Boolean has effect', async () => {
120
+ const wrapper = mount(QList)
121
+
122
+ const target = wrapper.get('.q-list')
123
+
124
+ expect(target.classes()).not.toContain('q-list--padding')
125
+
126
+ await wrapper.setProps({ padding: true })
127
+ await flushPromises()
128
+
129
+ expect(target.classes()).toContain('q-list--padding')
130
+ })
131
+ })
132
+
133
+ describe('[(prop)tag]', () => {
134
+ test('type String has effect', async () => {
135
+ const wrapper = mount(QList, { props: { tag: 'ol' } })
136
+
137
+ const target = wrapper.get('.q-list')
138
+
139
+ expect(
140
+ target.element.tagName.toLowerCase()
141
+ ).toBe('ol')
142
+ })
143
+
144
+ test('default tag is div', async () => {
145
+ const wrapper = mount(QList)
146
+
147
+ const target = wrapper.get('.q-list')
148
+
149
+ expect(
150
+ target.element.tagName.toLowerCase()
151
+ ).toBe('div')
152
+ })
153
+ })
154
+ })
155
+
156
+ describe('[Slots]', () => {
157
+ describe('[(slot)default]', () => {
158
+ test('renders the content', () => {
159
+ const slotContent = 'some-slot-content'
160
+ const wrapper = mount(QList, {
161
+ slots: {
162
+ default: () => slotContent
163
+ }
164
+ })
165
+
166
+ expect(wrapper.html()).toContain(slotContent)
167
+ })
168
+ })
169
+ })
170
+ })
@@ -12,7 +12,7 @@ import optionSizes from '../../utils/private.option-sizes/option-sizes.js'
12
12
  import { stopAndPrevent } from '../../utils/event/event.js'
13
13
  import { hSlot, hMergeSlot } from '../../utils/private.render/render.js'
14
14
 
15
- const svg = h('svg', {
15
+ const createSvg = () => h('svg', {
16
16
  key: 'svg',
17
17
  class: 'q-radio__bg absolute non-selectable',
18
18
  viewBox: '0 0 24 24'
@@ -138,6 +138,8 @@ export default createComponent({
138
138
  // expose public methods
139
139
  Object.assign(proxy, { set: onClick })
140
140
 
141
+ const svg = createSvg()
142
+
141
143
  return () => {
142
144
  const content = icon.value !== null
143
145
  ? [
@@ -2,12 +2,11 @@ import { h } from 'vue'
2
2
 
3
3
  import { createComponent } from '../../utils/private.create/create.js'
4
4
 
5
- const space = h('div', { class: 'q-space' })
6
-
7
5
  export default createComponent({
8
6
  name: 'QSpace',
9
7
 
10
8
  setup () {
9
+ const space = h('div', { class: 'q-space' })
11
10
  return () => space
12
11
  }
13
12
  })
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'matrix(1 0 0 -1 0 80)'
10
10
  }, [
@@ -77,6 +77,7 @@ export default createComponent({
77
77
 
78
78
  setup (props) {
79
79
  const { cSize, classes } = useSpinner(props)
80
+ const svg = createSvg()
80
81
 
81
82
  return () => h('svg', {
82
83
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'translate(1 1)',
10
10
  'stroke-width': '2',
@@ -93,6 +93,7 @@ export default createComponent({
93
93
 
94
94
  setup (props) {
95
95
  const { cSize, classes } = useSpinner(props)
96
+ const svg = createSvg()
96
97
 
97
98
  return () => h('svg', {
98
99
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('rect', {
9
9
  y: '10',
10
10
  width: '15',
@@ -132,6 +132,7 @@ export default createComponent({
132
132
 
133
133
  setup (props) {
134
134
  const { cSize, classes } = useSpinner(props)
135
+ const svg = createSvg()
135
136
 
136
137
  return () => h('svg', {
137
138
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('rect', {
9
9
  x: '25',
10
10
  y: '25',
@@ -50,6 +50,7 @@ export default createComponent({
50
50
 
51
51
  setup (props) {
52
52
  const { cSize, classes } = useSpinner(props)
53
+ const svg = createSvg()
53
54
 
54
55
  return () => h('svg', {
55
56
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('circle', {
9
9
  cx: '50',
10
10
  cy: '50',
@@ -61,6 +61,7 @@ export default createComponent({
61
61
 
62
62
  setup (props) {
63
63
  const { cSize, classes } = useSpinner(props)
64
+ const svg = createSvg()
64
65
 
65
66
  return () => h('svg', {
66
67
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('rect', {
9
9
  x: '0',
10
10
  y: '0',
@@ -73,6 +73,7 @@ export default createComponent({
73
73
 
74
74
  setup (props) {
75
75
  const { cSize, classes } = useSpinner(props)
76
+ const svg = createSvg()
76
77
 
77
78
  return () => h('svg', {
78
79
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('rect', {
9
9
  x: '0',
10
10
  y: '0',
@@ -121,6 +121,7 @@ export default createComponent({
121
121
 
122
122
  setup (props) {
123
123
  const { cSize, classes } = useSpinner(props)
124
+ const svg = createSvg()
124
125
 
125
126
  return () => h('svg', {
126
127
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('circle', {
9
9
  cx: '15',
10
10
  cy: '15',
@@ -93,6 +93,7 @@ export default createComponent({
93
93
 
94
94
  setup (props) {
95
95
  const { cSize, classes } = useSpinner(props)
96
+ const svg = createSvg()
96
97
 
97
98
  return () => h('svg', {
98
99
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'translate(20 50)'
10
10
  }, [
@@ -92,6 +92,7 @@ export default createComponent({
92
92
 
93
93
  setup (props) {
94
94
  const { cSize, classes } = useSpinner(props)
95
+ const svg = createSvg()
95
96
 
96
97
  return () => h('svg', {
97
98
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'translate(-20,-20)'
10
10
  }, [
@@ -48,6 +48,7 @@ export default createComponent({
48
48
 
49
49
  setup (props) {
50
50
  const { cSize, classes } = useSpinner(props)
51
+ const svg = createSvg()
51
52
 
52
53
  return () => h('svg', {
53
54
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('circle', {
9
9
  cx: '12.5',
10
10
  cy: '12.5',
@@ -141,6 +141,7 @@ export default createComponent({
141
141
 
142
142
  setup (props) {
143
143
  const { cSize, classes } = useSpinner(props)
144
+ const svg = createSvg()
144
145
 
145
146
  return () => h('svg', {
146
147
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('path', {
9
9
  d: 'M30.262 57.02L7.195 40.723c-5.84-3.976-7.56-12.06-3.842-18.063 3.715-6 11.467-7.65 17.306-3.68l4.52 3.76 2.6-5.274c3.716-6.002 11.47-7.65 17.304-3.68 5.84 3.97 7.56 12.054 3.842 18.062L34.49 56.118c-.897 1.512-2.793 1.915-4.228.9z',
10
10
  'fill-opacity': '.5'
@@ -43,6 +43,7 @@ export default createComponent({
43
43
 
44
44
  setup (props) {
45
45
  const { cSize, classes } = useSpinner(props)
46
+ const svg = createSvg()
46
47
 
47
48
  return () => h('svg', {
48
49
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', [
9
9
  h('path', {
10
10
  fill: 'none',
@@ -101,6 +101,7 @@ export default createComponent({
101
101
 
102
102
  setup (props) {
103
103
  const { cSize, classes } = useSpinner(props)
104
+ const svg = createSvg()
104
105
 
105
106
  return () => h('svg', {
106
107
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('path', {
9
9
  d: 'M24.3,30C11.4,30,5,43.3,5,50s6.4,20,19.3,20c19.3,0,32.1-40,51.4-40C88.6,30,95,43.3,95,50s-6.4,20-19.3,20C56.4,70,43.6,30,24.3,30z',
10
10
  fill: 'none',
@@ -32,6 +32,7 @@ export default createComponent({
32
32
 
33
33
  setup (props) {
34
34
  const { cSize, classes } = useSpinner(props)
35
+ const svg = createSvg()
35
36
 
36
37
  return () => h('svg', {
37
38
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  'stroke-width': '4',
10
10
  'stroke-linecap': 'round'
@@ -163,6 +163,7 @@ export default createComponent({
163
163
 
164
164
  setup (props) {
165
165
  const { cSize, classes } = useSpinner(props)
166
+ const svg = createSvg()
166
167
 
167
168
  return () => h('svg', {
168
169
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('circle', {
9
9
  cx: '50',
10
10
  cy: '50',
@@ -40,6 +40,7 @@ export default createComponent({
40
40
 
41
41
  setup (props) {
42
42
  const { cSize, classes } = useSpinner(props)
43
+ const svg = createSvg()
43
44
 
44
45
  return () => h('svg', {
45
46
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'translate(1 1)',
10
10
  'stroke-width': '2',
@@ -39,6 +39,7 @@ export default createComponent({
39
39
 
40
40
  setup (props) {
41
41
  const { cSize, classes } = useSpinner(props)
42
+ const svg = createSvg()
42
43
 
43
44
  return () => h('svg', {
44
45
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('path', {
9
9
  d: 'M0 50A50 50 0 0 1 50 0L50 50L0 50',
10
10
  fill: 'currentColor',
@@ -70,6 +70,7 @@ export default createComponent({
70
70
 
71
71
  setup (props) {
72
72
  const { cSize, classes } = useSpinner(props)
73
+ const svg = createSvg()
73
74
 
74
75
  return () => h('svg', {
75
76
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  fill: 'none',
10
10
  'fill-rule': 'evenodd',
@@ -72,6 +72,7 @@ export default createComponent({
72
72
 
73
73
  setup (props) {
74
74
  const { cSize, classes } = useSpinner(props)
75
+ const svg = createSvg()
75
76
 
76
77
  return () => h('svg', {
77
78
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  transform: 'scale(0.55)'
10
10
  }, [
@@ -65,6 +65,7 @@ export default createComponent({
65
65
 
66
66
  setup (props) {
67
67
  const { cSize, classes } = useSpinner(props)
68
+ const svg = createSvg()
68
69
 
69
70
  return () => h('svg', {
70
71
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('g', {
9
9
  fill: 'none',
10
10
  'fill-rule': 'evenodd',
@@ -95,6 +95,7 @@ export default createComponent({
95
95
 
96
96
  setup (props) {
97
97
  const { cSize, classes } = useSpinner(props)
98
+ const svg = createSvg()
98
99
 
99
100
  return () => h('svg', {
100
101
  class: classes.value,
@@ -4,7 +4,7 @@ import useSpinner, { useSpinnerProps } from './use-spinner.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private.create/create.js'
6
6
 
7
- const svg = [
7
+ const createSvg = () => [
8
8
  h('defs', [
9
9
  h('linearGradient', {
10
10
  x1: '8.042%',
@@ -73,6 +73,7 @@ export default createComponent({
73
73
 
74
74
  setup (props) {
75
75
  const { cSize, classes } = useSpinner(props)
76
+ const svg = createSvg()
76
77
 
77
78
  return () => h('svg', {
78
79
  class: classes.value,
@@ -48,7 +48,7 @@
48
48
  "virtual-scroll-slice-size": {
49
49
  "type": [ "Number", "String", "null" ],
50
50
  "desc": "Minimum number of rows to render in the virtual list",
51
- "default": "30",
51
+ "default": "10",
52
52
  "passthrough": "child",
53
53
  "category": "virtual-scroll"
54
54
  },