@quaffui/quaff 0.1.0-prealpha14 → 0.1.0-prealpha16

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 (155) hide show
  1. package/dist/components/avatar/QAvatar.svelte +46 -28
  2. package/dist/components/avatar/QAvatar.svelte.d.ts +0 -1
  3. package/dist/components/avatar/docs.d.ts +1 -1
  4. package/dist/components/avatar/docs.js +1 -1
  5. package/dist/components/avatar/docs.props.js +2 -0
  6. package/dist/components/breadcrumbs/QBreadcrumbs.svelte +3 -9
  7. package/dist/components/breadcrumbs/QBreadcrumbsEl.svelte +8 -18
  8. package/dist/components/breadcrumbs/docs.d.ts +1 -1
  9. package/dist/components/breadcrumbs/docs.js +1 -1
  10. package/dist/components/breadcrumbs/docs.props.js +2 -0
  11. package/dist/components/button/QBtn.svelte +15 -20
  12. package/dist/components/button/docs.d.ts +1 -1
  13. package/dist/components/button/docs.js +1 -1
  14. package/dist/components/button/docs.props.js +2 -0
  15. package/dist/components/button/index.scss +6 -1
  16. package/dist/components/card/QCard.svelte +8 -9
  17. package/dist/components/card/QCardActions.svelte +6 -10
  18. package/dist/components/card/QCardSection.svelte +7 -9
  19. package/dist/components/card/docs.d.ts +3 -3
  20. package/dist/components/card/docs.js +3 -3
  21. package/dist/components/card/docs.props.js +2 -0
  22. package/dist/components/checkbox/QCheckbox.svelte +2 -8
  23. package/dist/components/checkbox/docs.d.ts +1 -1
  24. package/dist/components/checkbox/docs.js +1 -1
  25. package/dist/components/checkbox/docs.props.js +2 -0
  26. package/dist/components/chip/QChip.svelte +20 -24
  27. package/dist/components/chip/docs.d.ts +1 -1
  28. package/dist/components/chip/docs.js +1 -1
  29. package/dist/components/chip/docs.props.js +2 -0
  30. package/dist/components/codeBlock/QCodeBlock.svelte +8 -12
  31. package/dist/components/codeBlock/QCodeBlock.svelte.d.ts +1 -0
  32. package/dist/components/codeBlock/docs.props.js +3 -1
  33. package/dist/components/codeBlock/props.d.ts +1 -1
  34. package/dist/components/dialog/QDialog.svelte +38 -47
  35. package/dist/components/dialog/QDialog.svelte.d.ts +6 -5
  36. package/dist/components/dialog/docs.d.ts +1 -1
  37. package/dist/components/dialog/docs.js +1 -1
  38. package/dist/components/dialog/docs.props.js +6 -4
  39. package/dist/components/dialog/index.scss +5 -4
  40. package/dist/components/dialog/props.d.ts +4 -4
  41. package/dist/components/drawer/QDrawer.svelte +1 -4
  42. package/dist/components/drawer/QDrawer.svelte.d.ts +0 -7
  43. package/dist/components/drawer/docs.d.ts +1 -1
  44. package/dist/components/drawer/docs.js +1 -1
  45. package/dist/components/drawer/docs.props.js +2 -0
  46. package/dist/components/footer/QFooter.svelte +7 -5
  47. package/dist/components/footer/docs.d.ts +1 -1
  48. package/dist/components/footer/docs.js +1 -1
  49. package/dist/components/footer/docs.props.js +2 -0
  50. package/dist/components/header/docs.props.js +2 -0
  51. package/dist/components/icon/QIcon.svelte +9 -16
  52. package/dist/components/icon/QIcon.svelte.d.ts +0 -1
  53. package/dist/components/icon/docs.d.ts +1 -1
  54. package/dist/components/icon/docs.js +1 -1
  55. package/dist/components/icon/docs.props.js +4 -2
  56. package/dist/components/icon/props.d.ts +2 -2
  57. package/dist/components/input/docs.d.ts +1 -1
  58. package/dist/components/input/docs.js +1 -1
  59. package/dist/components/input/docs.props.js +2 -0
  60. package/dist/components/layout/docs.d.ts +1 -1
  61. package/dist/components/layout/docs.js +1 -1
  62. package/dist/components/layout/docs.props.js +2 -0
  63. package/dist/components/list/QItem.svelte +25 -25
  64. package/dist/components/list/QItemSection.svelte +3 -9
  65. package/dist/components/list/QList.svelte +13 -13
  66. package/dist/components/list/docs.d.ts +1 -1
  67. package/dist/components/list/docs.js +1 -1
  68. package/dist/components/list/docs.props.js +2 -0
  69. package/dist/components/list/props.d.ts +1 -1
  70. package/dist/components/list/props.js +1 -1
  71. package/dist/components/private/QApi.svelte +14 -7
  72. package/dist/components/private/QApi.svelte.d.ts +1 -1
  73. package/dist/components/private/QDocs.svelte +3 -13
  74. package/dist/components/private/QDocs.svelte.d.ts +1 -1
  75. package/dist/components/private/QDocsSection.svelte +6 -14
  76. package/dist/components/private/QDocsSection.svelte.d.ts +7 -17
  77. package/dist/components/progress/QCircularProgress.svelte +13 -9
  78. package/dist/components/progress/QLinearProgress.svelte +17 -23
  79. package/dist/components/progress/QLinearProgress.svelte.d.ts +0 -1
  80. package/dist/components/progress/docs.d.ts +1 -1
  81. package/dist/components/progress/docs.js +1 -1
  82. package/dist/components/progress/docs.props.js +2 -0
  83. package/dist/components/progress/index.scss +20 -3
  84. package/dist/components/radio/QRadio.svelte +2 -8
  85. package/dist/components/radio/docs.d.ts +1 -1
  86. package/dist/components/radio/docs.js +1 -1
  87. package/dist/components/radio/docs.props.js +3 -1
  88. package/dist/components/radio/props.d.ts +1 -1
  89. package/dist/components/railbar/docs.d.ts +1 -1
  90. package/dist/components/railbar/docs.js +1 -1
  91. package/dist/components/railbar/docs.props.js +2 -0
  92. package/dist/components/select/docs.d.ts +1 -1
  93. package/dist/components/select/docs.js +1 -1
  94. package/dist/components/select/docs.props.js +2 -0
  95. package/dist/components/separator/QSeparator.svelte +38 -44
  96. package/dist/components/separator/docs.d.ts +1 -1
  97. package/dist/components/separator/docs.js +1 -1
  98. package/dist/components/separator/docs.props.js +2 -0
  99. package/dist/components/table/QTable.svelte +8 -15
  100. package/dist/components/table/docs.d.ts +1 -1
  101. package/dist/components/table/docs.js +1 -1
  102. package/dist/components/table/docs.props.js +2 -0
  103. package/dist/components/tabs/QTab.svelte +2 -7
  104. package/dist/components/tabs/QTabs.svelte +2 -6
  105. package/dist/components/tabs/docs.d.ts +1 -1
  106. package/dist/components/tabs/docs.js +1 -1
  107. package/dist/components/tabs/docs.props.js +3 -1
  108. package/dist/components/tabs/props.js +1 -1
  109. package/dist/components/toggle/QToggle.svelte +7 -15
  110. package/dist/components/toggle/docs.d.ts +1 -1
  111. package/dist/components/toggle/docs.js +1 -1
  112. package/dist/components/toggle/docs.props.js +2 -0
  113. package/dist/components/toolbar/QToolbar.svelte +12 -16
  114. package/dist/components/toolbar/QToolbar.svelte.d.ts +0 -1
  115. package/dist/components/toolbar/docs.d.ts +1 -1
  116. package/dist/components/toolbar/docs.js +1 -1
  117. package/dist/components/toolbar/docs.props.js +2 -0
  118. package/dist/components/tooltip/QTooltip.svelte +10 -8
  119. package/dist/components/tooltip/docs.d.ts +1 -1
  120. package/dist/components/tooltip/docs.js +1 -1
  121. package/dist/components/tooltip/docs.props.js +2 -0
  122. package/dist/components/tooltip/index.scss +1 -0
  123. package/dist/composables/index.d.ts +3 -3
  124. package/dist/composables/index.js +3 -3
  125. package/dist/composables/{use-size.d.ts → useSize.d.ts} +1 -1
  126. package/dist/composables/{use-size.js → useSize.js} +1 -1
  127. package/dist/css/fonts.scss +16 -3
  128. package/dist/css/index.css +1 -1
  129. package/dist/css/mixins/field-mixins.scss +9 -8
  130. package/dist/css/mixins.scss +3 -1
  131. package/dist/css/ripple.scss +9 -2
  132. package/dist/css/shared/q-field.scss +62 -49
  133. package/dist/css/theme/colors.module.scss +12 -12
  134. package/dist/global.d.ts +1 -1
  135. package/dist/helpers/clickOutside.d.ts +2 -2
  136. package/dist/helpers/clickOutside.js +3 -3
  137. package/dist/helpers/ripple.js +13 -11
  138. package/dist/helpers/version.d.ts +1 -1
  139. package/dist/helpers/version.js +1 -1
  140. package/dist/stores/QTheme.js +5 -6
  141. package/dist/stores/Quaff.js +1 -1
  142. package/dist/utils/clipboard.js +2 -2
  143. package/dist/utils/colors.js +2 -1
  144. package/dist/utils/dom.js +4 -4
  145. package/dist/utils/props.d.ts +2 -2
  146. package/dist/utils/props.js +5 -5
  147. package/dist/utils/string.js +1 -1
  148. package/dist/utils/types.d.ts +2 -2
  149. package/dist/utils/types.json +24 -1
  150. package/dist/utils/watchable.js +1 -1
  151. package/package.json +7 -7
  152. /package/dist/composables/{use-align.d.ts → useAlign.d.ts} +0 -0
  153. /package/dist/composables/{use-align.js → useAlign.js} +0 -0
  154. /package/dist/composables/{use-router-link.d.ts → useRouterLink.d.ts} +0 -0
  155. /package/dist/composables/{use-router-link.js → useRouterLink.js} +0 -0
@@ -8,7 +8,7 @@
8
8
  font-family: inherit;
9
9
  }
10
10
 
11
- @mixin clip-border($clip-height, $clip-width) {
11
+ @mixin clip-border($clip-width, $clip-height) {
12
12
  clip-path: polygon(
13
13
  0% 0%,
14
14
  0% 100%,
@@ -26,26 +26,27 @@
26
26
  &::after {
27
27
  content: "";
28
28
  position: absolute;
29
- top: calc(var(--border-width) * -1);
30
- bottom: calc(var(--border-width) * -1);
29
+ top: -0.0625rem;
30
+ bottom: -0.0625rem;
31
31
  width: calc(var(--wrapper-height) / 2);
32
32
  height: var(--wrapper-height);
33
- border: var(--border-width) solid transparent;
33
+ border: 0.0625rem solid transparent;
34
34
  border-top-color: var(--decorator-color);
35
35
  border-radius: $border-radius;
36
+ box-sizing: border-box;
36
37
  }
37
38
 
38
39
  &::before {
39
- left: calc(var(--border-width) * -1);
40
+ left: -0.0625rem;
40
41
  border-top-right-radius: 0px;
41
42
  border-bottom-right-radius: 0px;
42
- $clip-height: 0.125rem;
43
+ $clip-height: 0.25rem;
43
44
  $clip-width: if($variant == "outlined", 0.9375rem, 0.3125rem);
44
- @include clip-border($clip-height, $clip-width);
45
+ @include clip-border($clip-width, $clip-height);
45
46
  }
46
47
 
47
48
  &::after {
48
- right: calc(var(--border-width) * -1);
49
+ right: -0.0625rem;
49
50
  border-top-left-radius: 0px;
50
51
  border-bottom-left-radius: 0px;
51
52
  }
@@ -65,7 +65,9 @@
65
65
  }
66
66
 
67
67
  // Left drawer + Right drawer
68
- &.q-drawer--left ~ .q-drawer--active.q-drawer--right:not(.q-drawer--offset-#{$pos}, .q-drawer--overlay) ~ .q-#{$el} {
68
+ &.q-drawer--left
69
+ ~ .q-drawer--active.q-drawer--right:not(.q-drawer--offset-#{$pos}, .q-drawer--overlay)
70
+ ~ .q-#{$el} {
69
71
  width: calc(#{$baseWidth} - #{$LR_Drawer});
70
72
  }
71
73
  }
@@ -1,6 +1,6 @@
1
1
  .q-ripple {
2
2
  background-color: var(--ripple-color, var(--outline));
3
- opacity: 0.2;
3
+ opacity: 0.25;
4
4
  position: absolute;
5
5
  border-radius: 50%;
6
6
  pointer-events: none;
@@ -16,8 +16,15 @@
16
16
  }
17
17
 
18
18
  &--effect {
19
- position: relative;
19
+ position: absolute;
20
+ left: 0;
21
+ right: 0;
22
+ top: 0;
23
+ bottom: 0;
20
24
  overflow: hidden;
25
+ background: none;
26
+ pointer-events: none;
27
+ z-index: 999;
21
28
  }
22
29
  }
23
30
 
@@ -19,19 +19,50 @@ $transition-duration: 0.2s;
19
19
 
20
20
  &__wrapper {
21
21
  --decorator-color: var(--outline);
22
- --border-width: 0.0625rem;
23
22
  display: flex;
24
23
  position: relative;
25
24
  height: var(--wrapper-height);
26
25
  }
27
26
 
27
+ &--rounded#{&}--active &__wrapper {
28
+ $clip-x1: 1.25rem;
29
+ $clip-x2: 1.5rem;
30
+ $clip-y: 0.125rem;
31
+
32
+ // clip path has to go beyond 0% and 100% for y because of the floating label
33
+ clip-path: polygon(
34
+ 0% -20%,
35
+ $clip-x1 -20%,
36
+ $clip-x1 $clip-y,
37
+ $clip-x2 $clip-y,
38
+ $clip-x2 -20%,
39
+ 100% -20%,
40
+ 100% 120%,
41
+ 0% 120%
42
+ );
43
+ }
44
+
28
45
  &--default &__wrapper,
29
46
  &--filled &__wrapper {
30
- border-bottom: var(--border-width) solid var(--decorator-color);
47
+ border-bottom: 0.0625rem solid var(--decorator-color);
48
+ }
49
+
50
+ &--focus#{&}--default &__wrapper,
51
+ &--focus#{&}--filled &__wrapper {
52
+ border-bottom: 0.0625rem solid var(--decorator-color);
53
+ box-shadow: inset 0 -0.0625rem 0 var(--decorator-color);
31
54
  }
32
55
 
33
56
  &--has-border &__wrapper {
34
- border: var(--border-width) solid var(--decorator-color);
57
+ border: 0.0625rem solid var(--decorator-color);
58
+ }
59
+
60
+ &--focus#{&}--has-border &__wrapper {
61
+ box-shadow:
62
+ inset 0.0625rem 0 0 var(--decorator-color),
63
+ inset -0.0625rem 0 0 var(--decorator-color),
64
+ inset 0 0.0625rem 0 0 var(--decorator-color),
65
+ inset 0 -0.0625rem 0 0 var(--decorator-color);
35
66
  }
36
67
 
37
68
  &__wrapper {
@@ -54,6 +85,14 @@ $transition-duration: 0.2s;
54
85
 
55
86
  &--label#{&}--active#{&}--has-border &__wrapper {
56
87
  border-top-color: transparent;
88
+ box-shadow: none;
89
+ }
90
+
91
+ &--label#{&}--focus#{&}--has-border &__wrapper {
92
+ box-shadow:
93
+ inset 0.0625rem 0 0 var(--decorator-color),
94
+ inset -0.0625rem 0 0 var(--decorator-color),
95
+ inset 0 -0.0625rem 0 0 var(--decorator-color);
57
96
  }
58
97
 
59
98
  &--label#{&}--active#{&}--rounded &__wrapper {
@@ -95,7 +134,7 @@ $transition-duration: 0.2s;
95
134
 
96
135
  &--default:not(#{&}--dense) &__label,
97
136
  &--filled:not(#{&}--dense) &__label {
98
- top: 1px;
137
+ top: 0.0625rem;
99
138
  }
100
139
 
101
140
  &--slot-prepend#{&}--default &__label,
@@ -120,24 +159,11 @@ $transition-duration: 0.2s;
120
159
  left: 1.4375rem;
121
160
  }
122
161
 
123
- &--has-border#{&}--focus &__label {
124
- transform: translateX(-0.0625rem);
125
- }
126
-
127
- &--label#{&}--rounded#{&}--focus &__wrapper::before {
128
- @include clip-border(0.3125rem, 0.4375rem);
129
- }
130
-
131
- &--label#{&}--outlined#{&}--focus &__wrapper::before {
132
- @include clip-border(0.3125rem, 1.0625rem);
133
- }
134
-
135
- &--rounded#{&}--focus &__input {
136
- padding-left: 1.375rem;
137
- }
138
-
139
- &--outlined#{&}--focus &__input {
140
- padding-left: 0.6875rem;
162
+ &--label#{&}--has-border#{&}--focus &__wrapper {
163
+ &::before,
164
+ &::after {
165
+ box-shadow: inset 0 0.0625rem 0 var(--decorator-color);
166
+ }
141
167
  }
142
168
 
143
169
  &--outlined &__label {
@@ -158,7 +184,7 @@ $transition-duration: 0.2s;
158
184
  display: block;
159
185
  margin-left: 0.25rem;
160
186
  flex-grow: 1;
161
- border-top-width: var(--border-width);
187
+ border-top-width: 0.0625rem;
162
188
  border-top-style: solid;
163
189
  border-top-color: var(--decorator-color);
164
190
  min-width: 0.625rem;
@@ -169,17 +195,17 @@ $transition-duration: 0.2s;
169
195
  }
170
196
 
171
197
  &--active#{&}--rounded &__label {
172
- right: calc(var(--wrapper-height) / 2);
198
+ right: calc(var(--wrapper-height) / 2 - 0.125rem);
173
199
  }
174
200
 
175
201
  &--active#{&}--outlined &__label {
176
- right: 0.25rem;
202
+ right: 1.375rem;
177
203
  }
178
204
 
179
205
  &--active &__label {
180
206
  font-size: 0.75rem;
181
207
  line-height: 0px;
182
- margin-top: calc(var(--border-width) * -1);
208
+ margin-top: -0.0625rem;
183
209
  }
184
210
 
185
211
  &--active#{&}--default &__label,
@@ -189,7 +215,10 @@ $transition-duration: 0.2s;
189
215
 
190
216
  &--focus &__wrapper {
191
217
  --decorator-color: var(--primary);
192
- --border-width: 0.125rem;
218
+ }
219
+
220
+ &--focus#{&}--has-border &__label::after {
221
+ border-top-width: 0.125rem;
193
222
  }
194
223
 
195
224
  &__input {
@@ -203,7 +232,7 @@ $transition-duration: 0.2s;
203
232
  &--default &__input,
204
233
  &--filled &__input {
205
234
  padding: 0 1rem;
206
- padding-top: 15px;
235
+ padding-top: 0.9375rem;
207
236
  }
208
237
 
209
238
  &--focus#{&}--default &__input,
@@ -212,7 +241,7 @@ $transition-duration: 0.2s;
212
241
  }
213
242
 
214
243
  &--rounded &__input {
215
- padding: 0 23px;
244
+ padding: 0 1.4375rem;
216
245
  }
217
246
 
218
247
  &--outlined &__input {
@@ -255,36 +284,20 @@ $transition-duration: 0.2s;
255
284
  }
256
285
  }
257
286
 
258
- // prevent content moving up due to bottom border
259
- &--focus#{&}--default &__slot-prepend,
260
- &--focus#{&}--default &__slot-append,
261
- &--focus#{&}--filled &__slot-prepend,
262
- &--focus#{&}--filled &__slot-append {
263
- margin-bottom: -0.0625rem;
264
- }
265
-
266
287
  &__slot-prepend {
267
- padding-left: 12px;
288
+ padding-left: 0.75rem;
268
289
  }
269
290
 
270
291
  &--rounded &__slot-prepend {
271
- padding-left: 16px;
272
- }
273
-
274
- &--focus#{&}--has-border &__slot-prepend {
275
- margin-left: -1px;
292
+ padding-left: 1rem;
276
293
  }
277
294
 
278
295
  &__slot-append {
279
- padding-right: 12px;
296
+ padding-right: 0.75rem;
280
297
  }
281
298
 
282
299
  &--rounded &__slot-append {
283
- padding-right: 16px;
284
- }
285
-
286
- &--focus#{&}--has-border &__slot-append {
287
- margin-right: -1px;
300
+ padding-right: 1rem;
288
301
  }
289
302
 
290
303
  &__slot-before {
@@ -18,7 +18,7 @@
18
18
  }
19
19
  .primary {
20
20
  @extend .bg-primary;
21
- @extend .text-on-primary
21
+ @extend .text-on-primary;
22
22
  }
23
23
 
24
24
  .bg-primary-container {
@@ -41,7 +41,7 @@
41
41
  }
42
42
  .primary-container {
43
43
  @extend .bg-primary-container;
44
- @extend .text-on-primary-container
44
+ @extend .text-on-primary-container;
45
45
  }
46
46
 
47
47
  .bg-secondary {
@@ -64,7 +64,7 @@
64
64
  }
65
65
  .secondary {
66
66
  @extend .bg-secondary;
67
- @extend .text-on-secondary
67
+ @extend .text-on-secondary;
68
68
  }
69
69
 
70
70
  .bg-secondary-container {
@@ -87,7 +87,7 @@
87
87
  }
88
88
  .secondary-container {
89
89
  @extend .bg-secondary-container;
90
- @extend .text-on-secondary-container
90
+ @extend .text-on-secondary-container;
91
91
  }
92
92
 
93
93
  .bg-tertiary {
@@ -110,7 +110,7 @@
110
110
  }
111
111
  .tertiary {
112
112
  @extend .bg-tertiary;
113
- @extend .text-on-tertiary
113
+ @extend .text-on-tertiary;
114
114
  }
115
115
 
116
116
  .bg-tertiary-container {
@@ -133,7 +133,7 @@
133
133
  }
134
134
  .tertiary-container {
135
135
  @extend .bg-tertiary-container;
136
- @extend .text-on-tertiary-container
136
+ @extend .text-on-tertiary-container;
137
137
  }
138
138
 
139
139
  .bg-error {
@@ -156,7 +156,7 @@
156
156
  }
157
157
  .error {
158
158
  @extend .bg-error;
159
- @extend .text-on-error
159
+ @extend .text-on-error;
160
160
  }
161
161
 
162
162
  .bg-error-container {
@@ -179,7 +179,7 @@
179
179
  }
180
180
  .error-container {
181
181
  @extend .bg-error-container;
182
- @extend .text-on-error-container
182
+ @extend .text-on-error-container;
183
183
  }
184
184
 
185
185
  .bg-background {
@@ -202,7 +202,7 @@
202
202
  }
203
203
  .background {
204
204
  @extend .bg-background;
205
- @extend .text-on-background
205
+ @extend .text-on-background;
206
206
  }
207
207
 
208
208
  .bg-surface {
@@ -225,7 +225,7 @@
225
225
  }
226
226
  .surface {
227
227
  @extend .bg-surface;
228
- @extend .text-on-surface
228
+ @extend .text-on-surface;
229
229
  }
230
230
 
231
231
  .bg-surface-variant {
@@ -248,7 +248,7 @@
248
248
  }
249
249
  .surface-variant {
250
250
  @extend .bg-surface-variant;
251
- @extend .text-on-surface-variant
251
+ @extend .text-on-surface-variant;
252
252
  }
253
253
 
254
254
  .bg-outline {
@@ -329,4 +329,4 @@
329
329
  }
330
330
  .border-scrim {
331
331
  border-color: var(--scrim) !important;
332
- }
332
+ }
package/dist/global.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare var __PLATFORM__:
1
+ declare let __PLATFORM__:
2
2
  | "aix"
3
3
  | "darwin"
4
4
  | "freebsd"
@@ -1,6 +1,6 @@
1
- export declare function clickOutside(node: HTMLElement, onEventFunction: () => any): {
1
+ export declare function clickOutside(node: HTMLElement, onEventFunction: () => unknown): {
2
2
  destroy(): void;
3
3
  };
4
- export declare function clickOutsideDialog(node: HTMLDialogElement, onEventFunction: () => any): {
4
+ export declare function clickOutsideDialog(node: HTMLDialogElement, onEventFunction: () => unknown): {
5
5
  destroy(): void;
6
6
  };
@@ -1,6 +1,6 @@
1
1
  export function clickOutside(node, onEventFunction) {
2
2
  const handleClick = (event) => {
3
- let path = event.composedPath();
3
+ const path = event.composedPath();
4
4
  if (!path.includes(node)) {
5
5
  onEventFunction();
6
6
  }
@@ -16,8 +16,8 @@ export function clickOutsideDialog(node, onEventFunction) {
16
16
  const handleClick = (event) => {
17
17
  if (!node.open)
18
18
  return;
19
- let rect = node.getBoundingClientRect();
20
- let isInDialog = rect.top <= event.clientY &&
19
+ const rect = node.getBoundingClientRect();
20
+ const isInDialog = rect.top <= event.clientY &&
21
21
  event.clientY <= rect.top + rect.height &&
22
22
  rect.left <= event.clientX &&
23
23
  event.clientX <= rect.left + rect.width;
@@ -1,29 +1,31 @@
1
1
  const triggerEvents = ["pointerdown", "touchstart", "keydown"];
2
2
  const cancelEvents = ["mouseleave", "dragleave", "touchmove", "touchcancel", "pointerup", "keyup"];
3
3
  export function ripple(el, options = {}) {
4
+ const rippleContainer = document.createElement("div");
5
+ addClasses();
6
+ setOptions(options);
7
+ el.appendChild(rippleContainer);
4
8
  function addClasses(center) {
5
- let shouldBeCentered = center || options.center;
6
- if (!el.classList.contains("q-ripple--effect")) {
7
- el.classList.add("q-ripple--effect");
9
+ const shouldBeCentered = center || options.center;
10
+ if (!rippleContainer.classList.contains("q-ripple--effect")) {
11
+ rippleContainer.classList.add("q-ripple--effect");
8
12
  }
9
- if (!shouldBeCentered && el.classList.contains("q-ripple--center")) {
10
- el.classList.remove("q-ripple--center");
13
+ if (!shouldBeCentered && rippleContainer.classList.contains("q-ripple--center")) {
14
+ rippleContainer.classList.remove("q-ripple--center");
11
15
  }
12
- shouldBeCentered && el.classList.add("q-ripple--center");
16
+ shouldBeCentered && rippleContainer.classList.add("q-ripple--center");
13
17
  }
14
18
  function setOptions(options) {
15
19
  if (options.duration && options.duration < 0) {
16
20
  options.duration = undefined;
17
21
  }
18
22
  if (options.color) {
19
- el.style.setProperty("--ripple-color", options.color);
23
+ rippleContainer.style.setProperty("--ripple-color", options.color);
20
24
  }
21
25
  if (options.duration) {
22
- el.style.setProperty("--ripple-duration", `${options.duration}ms`);
26
+ rippleContainer.style.setProperty("--ripple-duration", `${options.duration}ms`);
23
27
  }
24
28
  }
25
- addClasses();
26
- setOptions(options);
27
29
  function createRipple(e, center) {
28
30
  if (options.disable || el.hasAttribute("aria-disabled"))
29
31
  return;
@@ -52,7 +54,7 @@ export function ripple(el, options = {}) {
52
54
  ripple.style.left = `${clientX - rect.left - radius}px`;
53
55
  ripple.style.top = `${clientY - rect.top - radius}px`;
54
56
  ripple.style.width = ripple.style.height = `${radius * 2}px`;
55
- el.appendChild(ripple);
57
+ rippleContainer.appendChild(ripple);
56
58
  function removeRipple() {
57
59
  if (ripple === null)
58
60
  return;
@@ -1,2 +1,2 @@
1
- declare const _default: "0.1.0-prealpha14";
1
+ declare const _default: "0.1.0-prealpha16";
2
2
  export default _default;
@@ -1 +1 @@
1
- export default "0.1.0-prealpha14";
1
+ export default "0.1.0-prealpha16";
@@ -11,15 +11,14 @@ async function prepareThemeColors(from) {
11
11
  if (from.startsWith("var(")) {
12
12
  from = extractColorFromCssVar(from);
13
13
  }
14
- let theme = await materialDynamicColors(from);
15
- //@ts-ignore
14
+ const theme = await materialDynamicColors(from);
16
15
  const themeColors = {};
17
16
  let mode;
18
17
  for (mode in theme) {
19
18
  let color;
20
19
  for (color in theme[mode]) {
21
- let colorFormatted = convertCase(color, "camel", "kebab");
22
- let cssColor = `${colorFormatted}-${mode}`;
20
+ const colorFormatted = convertCase(color, "camel", "kebab");
21
+ const cssColor = `${colorFormatted}-${mode}`;
23
22
  themeColors[cssColor] = theme[mode][color];
24
23
  }
25
24
  }
@@ -29,7 +28,7 @@ function themeBuilder() {
29
28
  const { subscribe, set, update } = writable({});
30
29
  prepareThemeColors("#3499E7").then(set);
31
30
  const apply = () => {
32
- let root = document.documentElement;
31
+ const root = document.documentElement;
33
32
  if (root === null)
34
33
  return;
35
34
  update(($themeColors) => {
@@ -47,7 +46,7 @@ function themeBuilder() {
47
46
  });
48
47
  };
49
48
  const setTheme = async (from) => {
50
- let newTheme = await prepareThemeColors(from);
49
+ const newTheme = await prepareThemeColors(from);
51
50
  set(newTheme);
52
51
  apply();
53
52
  };
@@ -20,7 +20,7 @@ function quaff() {
20
20
  from: "dark",
21
21
  to: "light",
22
22
  };
23
- let body = document.querySelector("body");
23
+ const body = document.querySelector("body");
24
24
  if (body) {
25
25
  body.classList.replace(`body--${mode.from}`, `body--${mode.to}`);
26
26
  }
@@ -1,7 +1,7 @@
1
1
  export async function copy(text) {
2
2
  if (navigator.clipboard.write) {
3
- let blob = new Blob([text], { type: "text/plain" });
4
- let item = new ClipboardItem({ "text/plain": blob });
3
+ const blob = new Blob([text], { type: "text/plain" });
4
+ const item = new ClipboardItem({ "text/plain": blob });
5
5
  await navigator.clipboard.write([item]);
6
6
  }
7
7
  else {
@@ -44,7 +44,8 @@ class QColors {
44
44
  }
45
45
  (r = +r / 255), (g = +g / 255), (b = +b / 255);
46
46
  const max = Math.max(r, g, b), min = Math.min(r, g, b);
47
- let h, s, l = (max + min) / 2;
47
+ const l = (max + min) / 2;
48
+ let h, s;
48
49
  if (max === min) {
49
50
  h = s = 0; // achromatic
50
51
  }
package/dist/utils/dom.js CHANGED
@@ -21,14 +21,14 @@ export function getFocusableChildren(el) {
21
21
  return Array.from(el.querySelectorAll(focusableElements));
22
22
  }
23
23
  export function getClosestFocusableChild(el) {
24
- let children = Array.from(el.querySelectorAll(focusableElements));
24
+ const children = Array.from(el.querySelectorAll(focusableElements));
25
25
  const focusableChildren = children.filter(isFocusable);
26
26
  return focusableChildren[0] || null;
27
27
  }
28
28
  export function getClosestFocusableSibling(el, direction) {
29
29
  const parent = getParentElement(el);
30
30
  const allSiblings = Array.from(parent.childNodes);
31
- let filtered = allSiblings.filter(isFocusable);
31
+ const filtered = allSiblings.filter(isFocusable);
32
32
  const indexOfEl = filtered.indexOf(el);
33
33
  if (direction === "next") {
34
34
  const i = indexOfEl + 1 === filtered.length ? 0 : indexOfEl + 1;
@@ -48,8 +48,8 @@ export function getClosestFocusableSibling(el, direction) {
48
48
  }
49
49
  }
50
50
  export function getClosestFocusableBlock(el, direction) {
51
- let parent = getParentElement(el);
52
- let parentFocusableChildren = getFocusableChildren(parent);
51
+ const parent = getParentElement(el);
52
+ const parentFocusableChildren = getFocusableChildren(parent);
53
53
  function getNextFocusableBlock(parentBlock) {
54
54
  const grandParent = getParentElement(parentBlock);
55
55
  const grandParentChildren = getAllChildren(grandParent);
@@ -3,7 +3,7 @@ interface CreateClassesOptions {
3
3
  component?: string;
4
4
  element?: string;
5
5
  userClasses?: string | null;
6
- quaffClasses?: any[];
6
+ quaffClasses?: unknown[];
7
7
  }
8
- export declare function createClasses(modifiers: any[], options?: CreateClassesOptions): string;
8
+ export declare function createClasses(modifiers: unknown[], options?: CreateClassesOptions): string;
9
9
  export {};
@@ -2,12 +2,11 @@ import { convertCase } from "./string";
2
2
  export function createStyles(styleObj, userStyles) {
3
3
  const stylesArray = Object.entries(styleObj);
4
4
  const toJoin = [];
5
- for (let [styleName, styleVal] of stylesArray) {
5
+ for (const [styleName, styleVal] of stylesArray) {
6
6
  if (styleVal === undefined || styleVal === null || styleVal === false) {
7
7
  continue;
8
8
  }
9
- styleName = convertCase(styleName, "camel", "kebab");
10
- toJoin.push(`${styleName}: ${styleVal}`);
9
+ toJoin.push(`${convertCase(styleName, "camel", "kebab")}: ${styleVal}`);
11
10
  }
12
11
  userStyles && toJoin.push(userStyles);
13
12
  if (toJoin.length === 0) {
@@ -19,12 +18,13 @@ export function createClasses(modifiers, options = { userClasses: "", quaffClass
19
18
  const userClasses = options.userClasses?.trim();
20
19
  const quaffClasses = options.quaffClasses?.length && createClasses(options.quaffClasses);
21
20
  const baseClasses = `${quaffClasses || ""} ${userClasses || ""}`.trim();
22
- let component = options.component, element;
21
+ const component = options.component;
22
+ let element;
23
23
  if (component && options.element) {
24
24
  element = `${component}__${options.element}`;
25
25
  }
26
26
  const filteredModifiers = modifiers.filter(Boolean);
27
- let withModifiers = component
27
+ const withModifiers = component
28
28
  ? filteredModifiers.map((modifier) => `${element || component}--${modifier}`)
29
29
  : filteredModifiers;
30
30
  return [element || component, ...withModifiers, baseClasses].filter(Boolean).join(" ").trim();
@@ -31,6 +31,7 @@ function convertToKebabSnakeCase(str, caseType) {
31
31
  .join("");
32
32
  }
33
33
  export function convertCase(str, fromCase, toCase) {
34
+ const uncap = uncapitalize(str);
34
35
  switch (fromCase) {
35
36
  case "camel":
36
37
  if (toCase === "pascal") {
@@ -41,7 +42,6 @@ export function convertCase(str, fromCase, toCase) {
41
42
  }
42
43
  break;
43
44
  case "pascal":
44
- let uncap = uncapitalize(str);
45
45
  if (toCase === "camel") {
46
46
  return uncap;
47
47
  }
@@ -19,7 +19,7 @@ export interface QComponentDocs {
19
19
  export interface QComponentProp {
20
20
  name: string;
21
21
  type: string;
22
- default?: any;
22
+ default?: unknown;
23
23
  description: string;
24
24
  clickableType?: boolean;
25
25
  optional?: boolean;
@@ -42,4 +42,4 @@ export interface QComponentMethod {
42
42
  type: string;
43
43
  description: string;
44
44
  }
45
- export declare function isNumber(input: any): input is number;
45
+ export declare function isNumber(input: unknown): input is number;