@cas-smartdesign/swatch-picker 3.0.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.
- package/LICENSE +8 -0
- package/dist/default-colors.d.ts +1 -0
- package/dist/docs/2_create-from-source.js +1 -0
- package/dist/docs/doc.css +1 -0
- package/dist/docs/doc.mjs +230 -0
- package/dist/docs/index.html +28 -0
- package/dist/swatch-picker-with-externals.js +103 -0
- package/dist/swatch-picker-with-externals.js.map +7 -0
- package/dist/swatch-picker.d.ts +60 -0
- package/dist/swatch-picker.mjs +394 -0
- package/dist/swatch-picker.mjs.map +1 -0
- package/npm-third-party-licenses.json +192 -0
- package/package.json +34 -0
- package/readme.md +29 -0
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
import { ElementBase as c } from "@cas-smartdesign/element-base";
|
|
2
|
+
import e from "@cas-smartdesign/design-tokens";
|
|
3
|
+
const i = `<style>
|
|
4
|
+
:host {
|
|
5
|
+
display: block;
|
|
6
|
+
outline: none;
|
|
7
|
+
contain: style;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.picker {
|
|
11
|
+
position: relative;
|
|
12
|
+
height: var(--sd-swatch-picker-icon-size, 24px);
|
|
13
|
+
width: var(--sd-swatch-picker-icon-size, 24px);
|
|
14
|
+
cursor: pointer;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.ripple {
|
|
18
|
+
width: calc(var(--sd-swatch-picker-icon-size, 24px) * 2);
|
|
19
|
+
height: calc(var(--sd-swatch-picker-icon-size, 24px) * 2);
|
|
20
|
+
border-radius: calc(var(--sd-swatch-picker-icon-size, 24px) * 1.5);
|
|
21
|
+
position: absolute;
|
|
22
|
+
left: calc(var(--sd-swatch-picker-icon-size, 24px) * -0.5);
|
|
23
|
+
top: calc(var(--sd-swatch-picker-icon-size, 24px) * -0.5);
|
|
24
|
+
opacity: 0;
|
|
25
|
+
background: grey;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
:host(:focus) .ripple,
|
|
29
|
+
.ripple.active {
|
|
30
|
+
opacity: 0.2;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.color-palette {
|
|
34
|
+
position: fixed;
|
|
35
|
+
overflow: hidden;
|
|
36
|
+
display: flex;
|
|
37
|
+
flex-wrap: wrap;
|
|
38
|
+
flex-direction: column;
|
|
39
|
+
align-content: baseline;
|
|
40
|
+
transition:
|
|
41
|
+
transform 0.3s ease-out,
|
|
42
|
+
opacity 0.3s ease-out;
|
|
43
|
+
transform-origin: top left;
|
|
44
|
+
transform: scale(0.25, 0.14);
|
|
45
|
+
opacity: 0;
|
|
46
|
+
z-index: 1;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.color-palette:not(.opened) {
|
|
50
|
+
pointer-events: none;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.color-palette .col {
|
|
54
|
+
flex: 1;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.color:not(.active-color):hover {
|
|
58
|
+
transform: scale(1.3);
|
|
59
|
+
transition-duration: 200ms;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.active-color {
|
|
63
|
+
transform: scale(1.3);
|
|
64
|
+
box-shadow:
|
|
65
|
+
0 2px 2px 0 rgba(0, 0, 0, 0.14),
|
|
66
|
+
0 1px 5px 0 rgba(0, 0, 0, 0.12),
|
|
67
|
+
0 3px 1px -2px rgba(0, 0, 0, 0.2);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.opened {
|
|
71
|
+
transform: scale(1, 1);
|
|
72
|
+
opacity: 1;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.icon {
|
|
76
|
+
width: 100%;
|
|
77
|
+
height: 100%;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.icon-container {
|
|
81
|
+
width: var(--sd-swatch-picker-icon-size, 24px);
|
|
82
|
+
height: var(--sd-swatch-picker-icon-size, 24px);
|
|
83
|
+
cursor: pointer;
|
|
84
|
+
}
|
|
85
|
+
</style>
|
|
86
|
+
<div class="picker">
|
|
87
|
+
<div class="ripple"></div>
|
|
88
|
+
<div class="icon-container">
|
|
89
|
+
<svg
|
|
90
|
+
class="icon"
|
|
91
|
+
viewBox="0 0 24 24"
|
|
92
|
+
version="1.1"
|
|
93
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
94
|
+
xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
95
|
+
<g>
|
|
96
|
+
<path
|
|
97
|
+
d="M16.56 8.94L7.62 0 6.21 1.41l2.38 2.38-5.15 5.15c-.59.59-.59 1.54 0 2.12l5.5 5.5c.29.29.68.44 1.06.44s.77-.15 1.06-.44l5.5-5.5c.59-.58.59-1.53 0-2.12zM5.21 10L10 5.21 14.79 10H5.21zM19 11.5s-2 2.17-2 3.5c0 1.1.9 2 2 2s2-.9 2-2c0-1.33-2-3.5-2-3.5z"></path>
|
|
98
|
+
<path fill-opacity=".36" d="M0 20h24v4H0z"></path>
|
|
99
|
+
</g>
|
|
100
|
+
</svg>
|
|
101
|
+
</div>
|
|
102
|
+
</div>
|
|
103
|
+
<div class="color-palette"></div>
|
|
104
|
+
`, a = [
|
|
105
|
+
e["color-base-red-50"],
|
|
106
|
+
e["color-base-red-100"],
|
|
107
|
+
e["color-base-red-150"],
|
|
108
|
+
e["color-base-red-200"],
|
|
109
|
+
e["color-base-red-300"],
|
|
110
|
+
e["color-base-red-400"],
|
|
111
|
+
e["color-base-red-500"],
|
|
112
|
+
e["color-base-red-600"],
|
|
113
|
+
e["color-base-red-700"],
|
|
114
|
+
e["color-base-red-800"],
|
|
115
|
+
e["color-base-red-900"],
|
|
116
|
+
e["color-base-orange-50"],
|
|
117
|
+
e["color-base-orange-100"],
|
|
118
|
+
e["color-base-orange-150"],
|
|
119
|
+
e["color-base-orange-200"],
|
|
120
|
+
e["color-base-orange-300"],
|
|
121
|
+
e["color-base-orange-400"],
|
|
122
|
+
e["color-base-orange-500"],
|
|
123
|
+
e["color-base-orange-600"],
|
|
124
|
+
e["color-base-orange-700"],
|
|
125
|
+
e["color-base-orange-800"],
|
|
126
|
+
e["color-base-orange-900"],
|
|
127
|
+
e["color-base-yellow-50"],
|
|
128
|
+
e["color-base-yellow-100"],
|
|
129
|
+
e["color-base-yellow-150"],
|
|
130
|
+
e["color-base-yellow-200"],
|
|
131
|
+
e["color-base-yellow-300"],
|
|
132
|
+
e["color-base-yellow-400"],
|
|
133
|
+
e["color-base-yellow-500"],
|
|
134
|
+
e["color-base-yellow-600"],
|
|
135
|
+
e["color-base-yellow-700"],
|
|
136
|
+
e["color-base-yellow-800"],
|
|
137
|
+
e["color-base-yellow-900"],
|
|
138
|
+
e["color-base-green-50"],
|
|
139
|
+
e["color-base-green-100"],
|
|
140
|
+
e["color-base-green-150"],
|
|
141
|
+
e["color-base-green-200"],
|
|
142
|
+
e["color-base-green-300"],
|
|
143
|
+
e["color-base-green-400"],
|
|
144
|
+
e["color-base-green-500"],
|
|
145
|
+
e["color-base-green-600"],
|
|
146
|
+
e["color-base-green-700"],
|
|
147
|
+
e["color-base-green-800"],
|
|
148
|
+
e["color-base-green-900"],
|
|
149
|
+
e["color-base-dark-green-50"],
|
|
150
|
+
e["color-base-dark-green-100"],
|
|
151
|
+
e["color-base-dark-green-150"],
|
|
152
|
+
e["color-base-dark-green-200"],
|
|
153
|
+
e["color-base-dark-green-300"],
|
|
154
|
+
e["color-base-dark-green-400"],
|
|
155
|
+
e["color-base-dark-green-500"],
|
|
156
|
+
e["color-base-dark-green-600"],
|
|
157
|
+
e["color-base-dark-green-700"],
|
|
158
|
+
e["color-base-dark-green-800"],
|
|
159
|
+
e["color-base-dark-green-900"],
|
|
160
|
+
e["color-base-cyan-50"],
|
|
161
|
+
e["color-base-cyan-100"],
|
|
162
|
+
e["color-base-cyan-150"],
|
|
163
|
+
e["color-base-cyan-200"],
|
|
164
|
+
e["color-base-cyan-300"],
|
|
165
|
+
e["color-base-cyan-400"],
|
|
166
|
+
e["color-base-cyan-500"],
|
|
167
|
+
e["color-base-cyan-600"],
|
|
168
|
+
e["color-base-cyan-700"],
|
|
169
|
+
e["color-base-cyan-800"],
|
|
170
|
+
e["color-base-cyan-900"],
|
|
171
|
+
e["color-base-blue-50"],
|
|
172
|
+
e["color-base-blue-100"],
|
|
173
|
+
e["color-base-blue-150"],
|
|
174
|
+
e["color-base-blue-200"],
|
|
175
|
+
e["color-base-blue-300"],
|
|
176
|
+
e["color-base-blue-400"],
|
|
177
|
+
e["color-base-blue-500"],
|
|
178
|
+
e["color-base-blue-600"],
|
|
179
|
+
e["color-base-blue-700"],
|
|
180
|
+
e["color-base-blue-800"],
|
|
181
|
+
e["color-base-blue-900"],
|
|
182
|
+
e["color-base-dark-blue-50"],
|
|
183
|
+
e["color-base-dark-blue-100"],
|
|
184
|
+
e["color-base-dark-blue-150"],
|
|
185
|
+
e["color-base-dark-blue-200"],
|
|
186
|
+
e["color-base-dark-blue-300"],
|
|
187
|
+
e["color-base-dark-blue-400"],
|
|
188
|
+
e["color-base-dark-blue-500"],
|
|
189
|
+
e["color-base-dark-blue-600"],
|
|
190
|
+
e["color-base-dark-blue-700"],
|
|
191
|
+
e["color-base-dark-blue-800"],
|
|
192
|
+
e["color-base-dark-blue-900"],
|
|
193
|
+
e["color-base-pink-50"],
|
|
194
|
+
e["color-base-pink-100"],
|
|
195
|
+
e["color-base-pink-150"],
|
|
196
|
+
e["color-base-pink-200"],
|
|
197
|
+
e["color-base-pink-300"],
|
|
198
|
+
e["color-base-pink-400"],
|
|
199
|
+
e["color-base-pink-500"],
|
|
200
|
+
e["color-base-pink-600"],
|
|
201
|
+
e["color-base-pink-700"],
|
|
202
|
+
e["color-base-pink-800"],
|
|
203
|
+
e["color-base-pink-900"],
|
|
204
|
+
e["color-base-purple-50"],
|
|
205
|
+
e["color-base-purple-100"],
|
|
206
|
+
e["color-base-purple-150"],
|
|
207
|
+
e["color-base-purple-200"],
|
|
208
|
+
e["color-base-purple-300"],
|
|
209
|
+
e["color-base-purple-400"],
|
|
210
|
+
e["color-base-purple-500"],
|
|
211
|
+
e["color-base-purple-600"],
|
|
212
|
+
e["color-base-purple-700"],
|
|
213
|
+
e["color-base-purple-800"],
|
|
214
|
+
e["color-base-purple-900"],
|
|
215
|
+
e["color-base-brown-50"],
|
|
216
|
+
e["color-base-brown-100"],
|
|
217
|
+
e["color-base-brown-150"],
|
|
218
|
+
e["color-base-brown-200"],
|
|
219
|
+
e["color-base-brown-300"],
|
|
220
|
+
e["color-base-brown-400"],
|
|
221
|
+
e["color-base-brown-500"],
|
|
222
|
+
e["color-base-brown-600"],
|
|
223
|
+
e["color-base-brown-700"],
|
|
224
|
+
e["color-base-brown-800"],
|
|
225
|
+
e["color-base-brown-900"],
|
|
226
|
+
e["color-base-grey-50"],
|
|
227
|
+
e["color-base-grey-100"],
|
|
228
|
+
e["color-base-grey-150"],
|
|
229
|
+
e["color-base-grey-200"],
|
|
230
|
+
e["color-base-grey-300"],
|
|
231
|
+
e["color-base-grey-400"],
|
|
232
|
+
e["color-base-grey-500"],
|
|
233
|
+
e["color-base-grey-600"],
|
|
234
|
+
e["color-base-grey-700"],
|
|
235
|
+
e["color-base-grey-800"],
|
|
236
|
+
e["color-base-grey-900"]
|
|
237
|
+
], n = class n extends c {
|
|
238
|
+
constructor() {
|
|
239
|
+
super(...arguments), this.keyDownListener = (t) => {
|
|
240
|
+
if (t.defaultPrevented)
|
|
241
|
+
return;
|
|
242
|
+
let r = !0;
|
|
243
|
+
const l = this.colorList.indexOf(this.color);
|
|
244
|
+
switch (t.key) {
|
|
245
|
+
case "Esc":
|
|
246
|
+
case "Escape":
|
|
247
|
+
this.colorWhenOpen && (this.color = this.colorWhenOpen), this.close();
|
|
248
|
+
break;
|
|
249
|
+
case "Up":
|
|
250
|
+
case "ArrowUp":
|
|
251
|
+
l > 0 ? this.color = this.colorList[l - 1] : this.color = this.colorList[this.colorList.length - 1];
|
|
252
|
+
break;
|
|
253
|
+
case "Down":
|
|
254
|
+
case "ArrowDown":
|
|
255
|
+
l < this.colorList.length - 1 ? this.color = this.colorList[l + 1] : this.color = this.colorList[0];
|
|
256
|
+
break;
|
|
257
|
+
case "Left":
|
|
258
|
+
case "ArrowLeft": {
|
|
259
|
+
let o;
|
|
260
|
+
l === 0 ? o = this.colorList.length - 1 : (o = l - this.colorNumberInColumn, o < 0 && (o = this.colorList.length + o, o % this.colorNumberInColumn > 0 && o--)), this.color = this.colorList[o];
|
|
261
|
+
break;
|
|
262
|
+
}
|
|
263
|
+
case "Right":
|
|
264
|
+
case "ArrowRight": {
|
|
265
|
+
let o;
|
|
266
|
+
l === this.colorList.length - 1 ? o = 0 : (o = l + this.colorNumberInColumn, o >= this.colorList.length && (o = o - this.colorList.length, o < this.colorNumberInColumn && o++)), this.color = this.colorList[o];
|
|
267
|
+
break;
|
|
268
|
+
}
|
|
269
|
+
case "Enter":
|
|
270
|
+
this.close(), this.dispatchValueChange();
|
|
271
|
+
break;
|
|
272
|
+
default:
|
|
273
|
+
r = !1;
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
r && t.preventDefault();
|
|
277
|
+
}, this.modalityListener = (t) => {
|
|
278
|
+
this.contains(t.target) || this.close();
|
|
279
|
+
}, this.scrollListener = () => {
|
|
280
|
+
this.restoreScrollPosition();
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
is() {
|
|
284
|
+
return n.ID;
|
|
285
|
+
}
|
|
286
|
+
get color() {
|
|
287
|
+
return this.getAttribute("color");
|
|
288
|
+
}
|
|
289
|
+
set color(t) {
|
|
290
|
+
if (t) {
|
|
291
|
+
if (this.setAttribute("color", t), this.shadowRoot) {
|
|
292
|
+
this.svg.style.fill = t;
|
|
293
|
+
const r = this.colorList.indexOf(t);
|
|
294
|
+
r >= 0 ? this.selectedColorElement = this.colorPalette.children[r] : this.selectedColorElement = null;
|
|
295
|
+
}
|
|
296
|
+
} else
|
|
297
|
+
this.removeAttribute("color"), this.svg.style.fill = "", this.selectedColorElement = null;
|
|
298
|
+
}
|
|
299
|
+
get colorList() {
|
|
300
|
+
return this._colorList || a;
|
|
301
|
+
}
|
|
302
|
+
set colorList(t) {
|
|
303
|
+
this._colorList = t, this.shadowRoot && this.updatePalette();
|
|
304
|
+
}
|
|
305
|
+
get columnCount() {
|
|
306
|
+
return Number(this.getAttribute("columncount")) || 12;
|
|
307
|
+
}
|
|
308
|
+
set columnCount(t) {
|
|
309
|
+
t ? this.setAttribute("columncount", `${t}`) : this.removeAttribute("columncount");
|
|
310
|
+
}
|
|
311
|
+
get disabled() {
|
|
312
|
+
return this.getAttribute("aria-disabled") == "true";
|
|
313
|
+
}
|
|
314
|
+
set disabled(t) {
|
|
315
|
+
this.setAttribute("aria-disabled", t.toString());
|
|
316
|
+
}
|
|
317
|
+
get colorSize() {
|
|
318
|
+
return Number(this.getAttribute("colorsize")) || 20;
|
|
319
|
+
}
|
|
320
|
+
set colorSize(t) {
|
|
321
|
+
t ? this.setAttribute("colorsize", `${t}`) : this.removeAttribute("colorsize");
|
|
322
|
+
}
|
|
323
|
+
template() {
|
|
324
|
+
const t = document.createElement("template");
|
|
325
|
+
return t.innerHTML = i, t;
|
|
326
|
+
}
|
|
327
|
+
static get observedAttributes() {
|
|
328
|
+
return ["colorsize", "columncount"];
|
|
329
|
+
}
|
|
330
|
+
connectedCallback() {
|
|
331
|
+
super.connectedCallback(), this.colorPalette || (this.colorPalette = this.shadowRoot.querySelector(".color-palette"), this.picker = this.shadowRoot.querySelector(".picker"), this.ripple = this.shadowRoot.querySelector(".ripple"), this.svg = this.shadowRoot.querySelector("svg"), this.color && (this.svg.style.fill = this.color), this.picker.addEventListener("pointerdown", (t) => {
|
|
332
|
+
t.stopPropagation(), this.colorPalette.classList.contains("opened") ? this.close() : (this.updatePalettePosition(), this.open());
|
|
333
|
+
}), this.addEventListener("keydown", (t) => {
|
|
334
|
+
t.key === "Enter" && (this.open(), t.preventDefault());
|
|
335
|
+
}), this.updatePalette()), this.hasAttribute("tabIndex") || (this.tabIndex = 0);
|
|
336
|
+
}
|
|
337
|
+
attributeChangedCallback() {
|
|
338
|
+
this.colorPalette && this.updatePalette();
|
|
339
|
+
}
|
|
340
|
+
updatePalette() {
|
|
341
|
+
for (; this.colorPalette.firstChild; )
|
|
342
|
+
this.colorPalette.removeChild(this.colorPalette.firstChild);
|
|
343
|
+
this.colorNumberInColumn = Math.ceil(this.colorList.length / this.columnCount), this.colorPalette.style.height = `${this.colorNumberInColumn * this.colorSize}px`, this.colorPalette.style.width = `${this.colorSize * this.columnCount}px`, this.colorPalette.appendChild(this.createColorPaletteFragment());
|
|
344
|
+
}
|
|
345
|
+
createColorPaletteFragment() {
|
|
346
|
+
const t = document.createDocumentFragment(), r = this.color;
|
|
347
|
+
for (const l of this.colorList) {
|
|
348
|
+
const o = document.createElement("div");
|
|
349
|
+
o.classList.add("color"), o.style.backgroundColor = l, o.style.width = `${this.colorSize}px`, o.style.height = `${this.colorSize}px`, o.addEventListener("pointerdown", () => {
|
|
350
|
+
this.color = l, this.close(), this.dispatchValueChange();
|
|
351
|
+
}), r === l && (this.selectedColorElement = o, this.selectedColorElement.classList.add("active-color")), t.appendChild(o);
|
|
352
|
+
}
|
|
353
|
+
return t;
|
|
354
|
+
}
|
|
355
|
+
get selectedColorElement() {
|
|
356
|
+
return this._selectedColorElement;
|
|
357
|
+
}
|
|
358
|
+
set selectedColorElement(t) {
|
|
359
|
+
this._selectedColorElement && this._selectedColorElement.classList.remove("active-color"), this._selectedColorElement = t, this._selectedColorElement && this._selectedColorElement.classList.add("active-color");
|
|
360
|
+
}
|
|
361
|
+
open() {
|
|
362
|
+
this.disabled || (this.colorPalette.classList.add("opened"), this.ripple.classList.add("active"), this.colorWhenOpen = this.color, this.saveScrollPosition(), window.addEventListener("keydown", this.keyDownListener, { capture: !0 }), window.addEventListener("pointerdown", this.modalityListener, { capture: !0 }), window.addEventListener("scroll", this.scrollListener, { capture: !0 }));
|
|
363
|
+
}
|
|
364
|
+
close() {
|
|
365
|
+
this.colorPalette.classList.remove("opened"), this.ripple.classList.remove("active"), window.removeEventListener("keydown", this.keyDownListener, { capture: !0 }), window.removeEventListener("pointerdown", this.modalityListener, { capture: !0 }), window.removeEventListener("scroll", this.scrollListener, { capture: !0 });
|
|
366
|
+
}
|
|
367
|
+
// This "lock" mechanism is based on Polymer's iron-overlay-behavior.
|
|
368
|
+
saveScrollPosition() {
|
|
369
|
+
document.scrollingElement ? (this._scrollTop = document.scrollingElement.scrollTop, this._scrollLeft = document.scrollingElement.scrollLeft) : (this._scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop), this._scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft));
|
|
370
|
+
}
|
|
371
|
+
restoreScrollPosition() {
|
|
372
|
+
document.scrollingElement ? (document.scrollingElement.scrollTop = this._scrollTop, document.scrollingElement.scrollLeft = this._scrollLeft) : (document.documentElement.scrollTop = document.body.scrollTop = this._scrollTop, document.documentElement.scrollLeft = document.body.scrollLeft = this._scrollLeft);
|
|
373
|
+
}
|
|
374
|
+
updatePalettePosition() {
|
|
375
|
+
const t = this.getBoundingClientRect();
|
|
376
|
+
t.left + this.colorPalette.offsetWidth > this.scrollingElementClientWidth ? this.colorPalette.style.left = `${this.scrollingElementClientWidth - this.colorPalette.offsetWidth}px` : this.colorPalette.style.left = `${t.left}px`, t.top + this.colorPalette.offsetHeight > this.scrollingElementClientHeight ? this.colorPalette.style.top = `${this.scrollingElementClientHeight - this.colorPalette.offsetHeight}px` : this.colorPalette.style.top = `${t.top}px`;
|
|
377
|
+
}
|
|
378
|
+
get scrollingElementClientHeight() {
|
|
379
|
+
return document.scrollingElement ? document.scrollingElement.clientHeight : Math.max(document.documentElement.clientHeight, document.body.clientHeight);
|
|
380
|
+
}
|
|
381
|
+
get scrollingElementClientWidth() {
|
|
382
|
+
return document.scrollingElement ? document.scrollingElement.clientWidth : Math.max(document.documentElement.clientWidth, document.body.clientWidth);
|
|
383
|
+
}
|
|
384
|
+
dispatchValueChange() {
|
|
385
|
+
this.dispatchEvent(new CustomEvent("value-change", { detail: this.color }));
|
|
386
|
+
}
|
|
387
|
+
};
|
|
388
|
+
n.ID = "sd-swatch-picker";
|
|
389
|
+
let s = n;
|
|
390
|
+
customElements.define(s.ID, s);
|
|
391
|
+
export {
|
|
392
|
+
s as SwatchPicker
|
|
393
|
+
};
|
|
394
|
+
//# sourceMappingURL=swatch-picker.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swatch-picker.mjs","sources":["../swatch-picker.html?raw","../default-colors.ts","../swatch-picker.ts"],"sourcesContent":["export default \"<style>\\n\\t:host {\\n\\t\\tdisplay: block;\\n\\t\\toutline: none;\\n\\t\\tcontain: style;\\n\\t}\\n\\n\\t.picker {\\n\\t\\tposition: relative;\\n\\t\\theight: var(--sd-swatch-picker-icon-size, 24px);\\n\\t\\twidth: var(--sd-swatch-picker-icon-size, 24px);\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\t.ripple {\\n\\t\\twidth: calc(var(--sd-swatch-picker-icon-size, 24px) * 2);\\n\\t\\theight: calc(var(--sd-swatch-picker-icon-size, 24px) * 2);\\n\\t\\tborder-radius: calc(var(--sd-swatch-picker-icon-size, 24px) * 1.5);\\n\\t\\tposition: absolute;\\n\\t\\tleft: calc(var(--sd-swatch-picker-icon-size, 24px) * -0.5);\\n\\t\\ttop: calc(var(--sd-swatch-picker-icon-size, 24px) * -0.5);\\n\\t\\topacity: 0;\\n\\t\\tbackground: grey;\\n\\t}\\n\\n\\t:host(:focus) .ripple,\\n\\t.ripple.active {\\n\\t\\topacity: 0.2;\\n\\t}\\n\\n\\t.color-palette {\\n\\t\\tposition: fixed;\\n\\t\\toverflow: hidden;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tflex-direction: column;\\n\\t\\talign-content: baseline;\\n\\t\\ttransition:\\n\\t\\t\\ttransform 0.3s ease-out,\\n\\t\\t\\topacity 0.3s ease-out;\\n\\t\\ttransform-origin: top left;\\n\\t\\ttransform: scale(0.25, 0.14);\\n\\t\\topacity: 0;\\n\\t\\tz-index: 1;\\n\\t}\\n\\n\\t.color-palette:not(.opened) {\\n\\t\\tpointer-events: none;\\n\\t}\\n\\n\\t.color-palette .col {\\n\\t\\tflex: 1;\\n\\t}\\n\\n\\t.color:not(.active-color):hover {\\n\\t\\ttransform: scale(1.3);\\n\\t\\ttransition-duration: 200ms;\\n\\t}\\n\\n\\t.active-color {\\n\\t\\ttransform: scale(1.3);\\n\\t\\tbox-shadow:\\n\\t\\t\\t0 2px 2px 0 rgba(0, 0, 0, 0.14),\\n\\t\\t\\t0 1px 5px 0 rgba(0, 0, 0, 0.12),\\n\\t\\t\\t0 3px 1px -2px rgba(0, 0, 0, 0.2);\\n\\t}\\n\\n\\t.opened {\\n\\t\\ttransform: scale(1, 1);\\n\\t\\topacity: 1;\\n\\t}\\n\\n\\t.icon {\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t}\\n\\n\\t.icon-container {\\n\\t\\twidth: var(--sd-swatch-picker-icon-size, 24px);\\n\\t\\theight: var(--sd-swatch-picker-icon-size, 24px);\\n\\t\\tcursor: pointer;\\n\\t}\\n</style>\\n<div class=\\\"picker\\\">\\n\\t<div class=\\\"ripple\\\"></div>\\n\\t<div class=\\\"icon-container\\\">\\n\\t\\t<svg\\n\\t\\t\\tclass=\\\"icon\\\"\\n\\t\\t\\tviewBox=\\\"0 0 24 24\\\"\\n\\t\\t\\tversion=\\\"1.1\\\"\\n\\t\\t\\txmlns=\\\"http://www.w3.org/2000/svg\\\"\\n\\t\\t\\txmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\">\\n\\t\\t\\t<g>\\n\\t\\t\\t\\t<path\\n\\t\\t\\t\\t\\td=\\\"M16.56 8.94L7.62 0 6.21 1.41l2.38 2.38-5.15 5.15c-.59.59-.59 1.54 0 2.12l5.5 5.5c.29.29.68.44 1.06.44s.77-.15 1.06-.44l5.5-5.5c.59-.58.59-1.53 0-2.12zM5.21 10L10 5.21 14.79 10H5.21zM19 11.5s-2 2.17-2 3.5c0 1.1.9 2 2 2s2-.9 2-2c0-1.33-2-3.5-2-3.5z\\\"></path>\\n\\t\\t\\t\\t<path fill-opacity=\\\".36\\\" d=\\\"M0 20h24v4H0z\\\"></path>\\n\\t\\t\\t</g>\\n\\t\\t</svg>\\n\\t</div>\\n</div>\\n<div class=\\\"color-palette\\\"></div>\\n\"","import { default as tokens } from \"@cas-smartdesign/design-tokens\";\n\nexport const defaultColors: string[] = [\n tokens[\"color-base-red-50\"],\n tokens[\"color-base-red-100\"],\n tokens[\"color-base-red-150\"],\n tokens[\"color-base-red-200\"],\n tokens[\"color-base-red-300\"],\n tokens[\"color-base-red-400\"],\n tokens[\"color-base-red-500\"],\n tokens[\"color-base-red-600\"],\n tokens[\"color-base-red-700\"],\n tokens[\"color-base-red-800\"],\n tokens[\"color-base-red-900\"],\n tokens[\"color-base-orange-50\"],\n tokens[\"color-base-orange-100\"],\n tokens[\"color-base-orange-150\"],\n tokens[\"color-base-orange-200\"],\n tokens[\"color-base-orange-300\"],\n tokens[\"color-base-orange-400\"],\n tokens[\"color-base-orange-500\"],\n tokens[\"color-base-orange-600\"],\n tokens[\"color-base-orange-700\"],\n tokens[\"color-base-orange-800\"],\n tokens[\"color-base-orange-900\"],\n tokens[\"color-base-yellow-50\"],\n tokens[\"color-base-yellow-100\"],\n tokens[\"color-base-yellow-150\"],\n tokens[\"color-base-yellow-200\"],\n tokens[\"color-base-yellow-300\"],\n tokens[\"color-base-yellow-400\"],\n tokens[\"color-base-yellow-500\"],\n tokens[\"color-base-yellow-600\"],\n tokens[\"color-base-yellow-700\"],\n tokens[\"color-base-yellow-800\"],\n tokens[\"color-base-yellow-900\"],\n tokens[\"color-base-green-50\"],\n tokens[\"color-base-green-100\"],\n tokens[\"color-base-green-150\"],\n tokens[\"color-base-green-200\"],\n tokens[\"color-base-green-300\"],\n tokens[\"color-base-green-400\"],\n tokens[\"color-base-green-500\"],\n tokens[\"color-base-green-600\"],\n tokens[\"color-base-green-700\"],\n tokens[\"color-base-green-800\"],\n tokens[\"color-base-green-900\"],\n tokens[\"color-base-dark-green-50\"],\n tokens[\"color-base-dark-green-100\"],\n tokens[\"color-base-dark-green-150\"],\n tokens[\"color-base-dark-green-200\"],\n tokens[\"color-base-dark-green-300\"],\n tokens[\"color-base-dark-green-400\"],\n tokens[\"color-base-dark-green-500\"],\n tokens[\"color-base-dark-green-600\"],\n tokens[\"color-base-dark-green-700\"],\n tokens[\"color-base-dark-green-800\"],\n tokens[\"color-base-dark-green-900\"],\n tokens[\"color-base-cyan-50\"],\n tokens[\"color-base-cyan-100\"],\n tokens[\"color-base-cyan-150\"],\n tokens[\"color-base-cyan-200\"],\n tokens[\"color-base-cyan-300\"],\n tokens[\"color-base-cyan-400\"],\n tokens[\"color-base-cyan-500\"],\n tokens[\"color-base-cyan-600\"],\n tokens[\"color-base-cyan-700\"],\n tokens[\"color-base-cyan-800\"],\n tokens[\"color-base-cyan-900\"],\n tokens[\"color-base-blue-50\"],\n tokens[\"color-base-blue-100\"],\n tokens[\"color-base-blue-150\"],\n tokens[\"color-base-blue-200\"],\n tokens[\"color-base-blue-300\"],\n tokens[\"color-base-blue-400\"],\n tokens[\"color-base-blue-500\"],\n tokens[\"color-base-blue-600\"],\n tokens[\"color-base-blue-700\"],\n tokens[\"color-base-blue-800\"],\n tokens[\"color-base-blue-900\"],\n tokens[\"color-base-dark-blue-50\"],\n tokens[\"color-base-dark-blue-100\"],\n tokens[\"color-base-dark-blue-150\"],\n tokens[\"color-base-dark-blue-200\"],\n tokens[\"color-base-dark-blue-300\"],\n tokens[\"color-base-dark-blue-400\"],\n tokens[\"color-base-dark-blue-500\"],\n tokens[\"color-base-dark-blue-600\"],\n tokens[\"color-base-dark-blue-700\"],\n tokens[\"color-base-dark-blue-800\"],\n tokens[\"color-base-dark-blue-900\"],\n tokens[\"color-base-pink-50\"],\n tokens[\"color-base-pink-100\"],\n tokens[\"color-base-pink-150\"],\n tokens[\"color-base-pink-200\"],\n tokens[\"color-base-pink-300\"],\n tokens[\"color-base-pink-400\"],\n tokens[\"color-base-pink-500\"],\n tokens[\"color-base-pink-600\"],\n tokens[\"color-base-pink-700\"],\n tokens[\"color-base-pink-800\"],\n tokens[\"color-base-pink-900\"],\n tokens[\"color-base-purple-50\"],\n tokens[\"color-base-purple-100\"],\n tokens[\"color-base-purple-150\"],\n tokens[\"color-base-purple-200\"],\n tokens[\"color-base-purple-300\"],\n tokens[\"color-base-purple-400\"],\n tokens[\"color-base-purple-500\"],\n tokens[\"color-base-purple-600\"],\n tokens[\"color-base-purple-700\"],\n tokens[\"color-base-purple-800\"],\n tokens[\"color-base-purple-900\"],\n tokens[\"color-base-brown-50\"],\n tokens[\"color-base-brown-100\"],\n tokens[\"color-base-brown-150\"],\n tokens[\"color-base-brown-200\"],\n tokens[\"color-base-brown-300\"],\n tokens[\"color-base-brown-400\"],\n tokens[\"color-base-brown-500\"],\n tokens[\"color-base-brown-600\"],\n tokens[\"color-base-brown-700\"],\n tokens[\"color-base-brown-800\"],\n tokens[\"color-base-brown-900\"],\n tokens[\"color-base-grey-50\"],\n tokens[\"color-base-grey-100\"],\n tokens[\"color-base-grey-150\"],\n tokens[\"color-base-grey-200\"],\n tokens[\"color-base-grey-300\"],\n tokens[\"color-base-grey-400\"],\n tokens[\"color-base-grey-500\"],\n tokens[\"color-base-grey-600\"],\n tokens[\"color-base-grey-700\"],\n tokens[\"color-base-grey-800\"],\n tokens[\"color-base-grey-900\"],\n];\n","import { ElementBase, CustomEventMap as ElementBaseEventMap } from \"@cas-smartdesign/element-base\";\n\nimport { default as htmlTemplate } from \"./swatch-picker.html?raw\";\nimport { defaultColors } from \"./default-colors\";\n\ndeclare global {\n interface HTMLElementTagNameMap {\n [SwatchPicker.ID]: SwatchPicker;\n }\n}\n\nexport type IValueChangeEventDetail = string;\n\nexport interface CustomEventMap extends ElementBaseEventMap {\n \"value-change\": CustomEvent<IValueChangeEventDetail>;\n}\n\nexport interface Stage {\n addEventListener<K extends keyof CustomEventMap>(\n event: K,\n listener: ((this: this, ev: CustomEventMap[K]) => unknown) | null,\n options?: AddEventListenerOptions | boolean,\n ): void;\n addEventListener(\n type: string,\n callback: EventListenerOrEventListenerObject | null,\n options?: AddEventListenerOptions | boolean,\n ): void;\n removeEventListener<K extends keyof CustomEventMap>(\n type: K,\n listener: (this: this, ev: CustomEventMap[K]) => unknown,\n options?: boolean | EventListenerOptions,\n ): void;\n removeEventListener(\n type: string,\n listener: EventListenerOrEventListenerObject,\n options?: boolean | EventListenerOptions,\n ): void;\n dispatchEvent<EventType extends CustomEventMap[keyof CustomEventMap]>(event: EventType): boolean;\n}\n\nexport class SwatchPicker extends ElementBase {\n public static readonly ID = \"sd-swatch-picker\";\n\n private picker: HTMLDivElement;\n private ripple: HTMLDivElement;\n private colorPalette: HTMLDivElement;\n private svg: SVGSVGElement;\n\n private colorWhenOpen: string;\n private colorNumberInColumn: number;\n private _selectedColorElement: HTMLDivElement;\n private _colorList: string[];\n private _scrollTop: number;\n private _scrollLeft: number;\n\n public is(): string {\n return SwatchPicker.ID;\n }\n\n public get color(): string {\n return this.getAttribute(\"color\");\n }\n\n public set color(color: string) {\n if (color) {\n this.setAttribute(\"color\", color);\n if (this.shadowRoot) {\n this.svg.style.fill = color;\n const currentIndex = this.colorList.indexOf(color);\n if (currentIndex >= 0) {\n this.selectedColorElement = this.colorPalette.children[currentIndex] as HTMLDivElement;\n } else {\n this.selectedColorElement = null;\n }\n }\n } else {\n this.removeAttribute(\"color\");\n this.svg.style.fill = \"\";\n this.selectedColorElement = null;\n }\n }\n\n public get colorList(): string[] {\n return this._colorList || defaultColors;\n }\n\n public set colorList(colors: string[]) {\n this._colorList = colors;\n if (this.shadowRoot) {\n this.updatePalette();\n }\n }\n\n public get columnCount(): number {\n return Number(this.getAttribute(\"columncount\")) || 12;\n }\n\n public set columnCount(columnCount: number) {\n if (columnCount) {\n this.setAttribute(\"columncount\", `${columnCount}`);\n } else {\n this.removeAttribute(\"columncount\");\n }\n }\n\n public get disabled(): boolean {\n return this.getAttribute(\"aria-disabled\") == \"true\";\n }\n\n public set disabled(disabled: boolean) {\n this.setAttribute(\"aria-disabled\", disabled.toString());\n }\n\n public get colorSize(): number {\n return Number(this.getAttribute(\"colorsize\")) || 20;\n }\n\n public set colorSize(colorSize: number) {\n if (colorSize) {\n this.setAttribute(\"colorsize\", `${colorSize}`);\n } else {\n this.removeAttribute(\"colorsize\");\n }\n }\n\n protected template(): HTMLTemplateElement {\n const template = document.createElement(\"template\");\n template.innerHTML = htmlTemplate;\n return template;\n }\n\n static get observedAttributes(): string[] {\n return [\"colorsize\", \"columncount\"];\n }\n\n public connectedCallback() {\n super.connectedCallback();\n if (!this.colorPalette) {\n this.colorPalette = this.shadowRoot.querySelector(\".color-palette\");\n this.picker = this.shadowRoot.querySelector(\".picker\");\n this.ripple = this.shadowRoot.querySelector(\".ripple\");\n this.svg = this.shadowRoot.querySelector(\"svg\");\n\n if (this.color) {\n this.svg.style.fill = this.color;\n }\n\n this.picker.addEventListener(\"pointerdown\", (event) => {\n event.stopPropagation();\n if (this.colorPalette.classList.contains(\"opened\")) {\n this.close();\n } else {\n this.updatePalettePosition();\n this.open();\n }\n });\n\n this.addEventListener(\"keydown\", (event: KeyboardEvent) => {\n if (event.key === \"Enter\") {\n this.open();\n event.preventDefault();\n }\n });\n\n this.updatePalette();\n }\n\n if (!this.hasAttribute(\"tabIndex\")) {\n this.tabIndex = 0;\n }\n }\n\n public attributeChangedCallback(): void {\n if (this.colorPalette) {\n this.updatePalette();\n }\n }\n\n private updatePalette(): void {\n while (this.colorPalette.firstChild) {\n this.colorPalette.removeChild(this.colorPalette.firstChild);\n }\n this.colorNumberInColumn = Math.ceil(this.colorList.length / this.columnCount);\n this.colorPalette.style.height = `${this.colorNumberInColumn * this.colorSize}px`;\n this.colorPalette.style.width = `${this.colorSize * this.columnCount}px`;\n\n this.colorPalette.appendChild(this.createColorPaletteFragment());\n }\n\n private createColorPaletteFragment(): DocumentFragment {\n const fragment: DocumentFragment = document.createDocumentFragment();\n const predefinedColor = this.color;\n for (const colorValue of this.colorList) {\n const colorElement = document.createElement(\"div\");\n colorElement.classList.add(\"color\");\n colorElement.style.backgroundColor = colorValue;\n colorElement.style.width = `${this.colorSize}px`;\n colorElement.style.height = `${this.colorSize}px`;\n colorElement.addEventListener(\"pointerdown\", () => {\n this.color = colorValue;\n this.close();\n this.dispatchValueChange();\n });\n if (predefinedColor === colorValue) {\n this.selectedColorElement = colorElement;\n this.selectedColorElement.classList.add(\"active-color\");\n }\n fragment.appendChild(colorElement);\n }\n return fragment;\n }\n\n private get selectedColorElement(): HTMLDivElement {\n return this._selectedColorElement;\n }\n\n private set selectedColorElement(selectedColorElement: HTMLDivElement) {\n if (this._selectedColorElement) {\n this._selectedColorElement.classList.remove(\"active-color\");\n }\n this._selectedColorElement = selectedColorElement;\n if (this._selectedColorElement) {\n this._selectedColorElement.classList.add(\"active-color\");\n }\n }\n\n private open() {\n if (this.disabled) {\n return;\n }\n this.colorPalette.classList.add(\"opened\");\n this.ripple.classList.add(\"active\");\n this.colorWhenOpen = this.color;\n\n this.saveScrollPosition();\n\n window.addEventListener(\"keydown\", this.keyDownListener, { capture: true });\n window.addEventListener(\"pointerdown\", this.modalityListener, { capture: true });\n window.addEventListener(\"scroll\", this.scrollListener, { capture: true });\n }\n\n private close() {\n this.colorPalette.classList.remove(\"opened\");\n this.ripple.classList.remove(\"active\");\n\n window.removeEventListener(\"keydown\", this.keyDownListener, { capture: true });\n window.removeEventListener(\"pointerdown\", this.modalityListener, { capture: true });\n window.removeEventListener(\"scroll\", this.scrollListener, { capture: true });\n }\n\n private keyDownListener = (event) => {\n if (event.defaultPrevented) {\n return;\n }\n let shouldPrevent = true;\n const currentIndex = this.colorList.indexOf(this.color);\n switch (event.key) {\n case \"Esc\":\n case \"Escape\":\n if (this.colorWhenOpen) {\n this.color = this.colorWhenOpen;\n }\n this.close();\n break;\n case \"Up\":\n case \"ArrowUp\":\n if (currentIndex > 0) {\n this.color = this.colorList[currentIndex - 1];\n } else {\n this.color = this.colorList[this.colorList.length - 1];\n }\n break;\n case \"Down\":\n case \"ArrowDown\":\n if (currentIndex < this.colorList.length - 1) {\n this.color = this.colorList[currentIndex + 1];\n } else {\n this.color = this.colorList[0];\n }\n break;\n case \"Left\":\n case \"ArrowLeft\": {\n let indexAfterLeftNavigation;\n if (currentIndex === 0) {\n indexAfterLeftNavigation = this.colorList.length - 1;\n } else {\n indexAfterLeftNavigation = currentIndex - this.colorNumberInColumn;\n if (indexAfterLeftNavigation < 0) {\n indexAfterLeftNavigation = this.colorList.length + indexAfterLeftNavigation;\n if (indexAfterLeftNavigation % this.colorNumberInColumn > 0) {\n indexAfterLeftNavigation--;\n }\n }\n }\n this.color = this.colorList[indexAfterLeftNavigation];\n break;\n }\n case \"Right\":\n case \"ArrowRight\": {\n let indexAfterRightNavigation;\n if (currentIndex === this.colorList.length - 1) {\n indexAfterRightNavigation = 0;\n } else {\n indexAfterRightNavigation = currentIndex + this.colorNumberInColumn;\n if (indexAfterRightNavigation >= this.colorList.length) {\n indexAfterRightNavigation = indexAfterRightNavigation - this.colorList.length;\n if (indexAfterRightNavigation < this.colorNumberInColumn) {\n indexAfterRightNavigation++;\n }\n }\n }\n this.color = this.colorList[indexAfterRightNavigation];\n break;\n }\n case \"Enter\":\n this.close();\n this.dispatchValueChange();\n break;\n default:\n shouldPrevent = false;\n return;\n }\n if (shouldPrevent) {\n event.preventDefault();\n }\n };\n\n private modalityListener = (event) => {\n if (!this.contains(event.target)) {\n this.close();\n }\n };\n\n private scrollListener = () => {\n this.restoreScrollPosition();\n };\n\n // This \"lock\" mechanism is based on Polymer's iron-overlay-behavior.\n private saveScrollPosition(): void {\n if (document.scrollingElement) {\n this._scrollTop = document.scrollingElement.scrollTop;\n this._scrollLeft = document.scrollingElement.scrollLeft;\n } else {\n // Since we don't know if is the body or html, get max.\n this._scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);\n this._scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);\n }\n }\n\n private restoreScrollPosition(): void {\n if (document.scrollingElement) {\n document.scrollingElement.scrollTop = this._scrollTop;\n document.scrollingElement.scrollLeft = this._scrollLeft;\n } else {\n // Since we don't know if is the body or html, set both.\n document.documentElement.scrollTop = document.body.scrollTop = this._scrollTop;\n document.documentElement.scrollLeft = document.body.scrollLeft = this._scrollLeft;\n }\n }\n\n private updatePalettePosition(): void {\n const rect = this.getBoundingClientRect();\n if (rect.left + this.colorPalette.offsetWidth > this.scrollingElementClientWidth) {\n this.colorPalette.style.left = `${this.scrollingElementClientWidth - this.colorPalette.offsetWidth}px`;\n } else {\n this.colorPalette.style.left = `${rect.left}px`;\n }\n if (rect.top + this.colorPalette.offsetHeight > this.scrollingElementClientHeight) {\n this.colorPalette.style.top = `${this.scrollingElementClientHeight - this.colorPalette.offsetHeight}px`;\n } else {\n this.colorPalette.style.top = `${rect.top}px`;\n }\n }\n\n private get scrollingElementClientHeight(): number {\n if (document.scrollingElement) {\n return document.scrollingElement.clientHeight;\n } else {\n return Math.max(document.documentElement.clientHeight, document.body.clientHeight);\n }\n }\n\n private get scrollingElementClientWidth(): number {\n if (document.scrollingElement) {\n return document.scrollingElement.clientWidth;\n } else {\n return Math.max(document.documentElement.clientWidth, document.body.clientWidth);\n }\n }\n\n private dispatchValueChange(): void {\n this.dispatchEvent(new CustomEvent<IValueChangeEventDetail>(\"value-change\", { detail: this.color }));\n }\n}\n\ncustomElements.define(SwatchPicker.ID, SwatchPicker);\n"],"names":["htmlTemplate","defaultColors","tokens","_SwatchPicker","ElementBase","event","shouldPrevent","currentIndex","indexAfterLeftNavigation","indexAfterRightNavigation","color","colors","columnCount","disabled","colorSize","template","fragment","predefinedColor","colorValue","colorElement","selectedColorElement","rect","SwatchPicker"],"mappings":"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"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
{
|
|
2
|
+
"@cypress/vite-dev-server@5.0.7": {
|
|
3
|
+
"licenses": "MIT",
|
|
4
|
+
"repository": "https://github.com/cypress-io/cypress",
|
|
5
|
+
"licenseUrl": "https://github.com/cypress-io/cypress/tree/develop/npm/vite-dev-server#readme"
|
|
6
|
+
},
|
|
7
|
+
"@rollup/plugin-node-resolve@15.2.3": {
|
|
8
|
+
"licenses": "MIT",
|
|
9
|
+
"repository": "https://github.com/rollup/plugins",
|
|
10
|
+
"licenseUrl": "https://github.com/rollup/plugins/raw/HEAD/LICENSE"
|
|
11
|
+
},
|
|
12
|
+
"@types/node@20.10.6": {
|
|
13
|
+
"licenses": "MIT",
|
|
14
|
+
"repository": "https://github.com/DefinitelyTyped/DefinitelyTyped",
|
|
15
|
+
"licenseUrl": "https://github.com/DefinitelyTyped/DefinitelyTyped/raw/HEAD/LICENSE"
|
|
16
|
+
},
|
|
17
|
+
"@types/postcss-prefix-selector@1.16.3": {
|
|
18
|
+
"licenses": "MIT",
|
|
19
|
+
"repository": "https://github.com/DefinitelyTyped/DefinitelyTyped",
|
|
20
|
+
"licenseUrl": "https://github.com/DefinitelyTyped/DefinitelyTyped/raw/HEAD/LICENSE"
|
|
21
|
+
},
|
|
22
|
+
"@typescript-eslint/eslint-plugin@6.17.0": {
|
|
23
|
+
"licenses": "MIT",
|
|
24
|
+
"repository": "https://github.com/typescript-eslint/typescript-eslint",
|
|
25
|
+
"licenseUrl": "https://github.com/typescript-eslint/typescript-eslint/raw/HEAD/LICENSE"
|
|
26
|
+
},
|
|
27
|
+
"@typescript-eslint/parser@6.17.0": {
|
|
28
|
+
"licenses": "BSD-2-Clause",
|
|
29
|
+
"repository": "https://github.com/typescript-eslint/typescript-eslint",
|
|
30
|
+
"licenseUrl": "https://github.com/typescript-eslint/typescript-eslint/raw/HEAD/LICENSE"
|
|
31
|
+
},
|
|
32
|
+
"@vitest/coverage-v8@1.1.1": {
|
|
33
|
+
"licenses": "MIT",
|
|
34
|
+
"repository": "https://github.com/vitest-dev/vitest",
|
|
35
|
+
"licenseUrl": "https://github.com/vitest-dev/vitest/raw/HEAD/LICENSE"
|
|
36
|
+
},
|
|
37
|
+
"@vitest/ui@1.1.1": {
|
|
38
|
+
"licenses": "MIT",
|
|
39
|
+
"repository": "https://github.com/vitest-dev/vitest",
|
|
40
|
+
"licenseUrl": "https://github.com/vitest-dev/vitest/raw/HEAD/LICENSE"
|
|
41
|
+
},
|
|
42
|
+
"axe-core@4.8.3": {
|
|
43
|
+
"licenses": "MPL-2.0",
|
|
44
|
+
"repository": "https://github.com/dequelabs/axe-core",
|
|
45
|
+
"licenseUrl": "https://github.com/dequelabs/axe-core/raw/HEAD/LICENSE"
|
|
46
|
+
},
|
|
47
|
+
"cypress-axe@1.5.0": {
|
|
48
|
+
"licenses": "MIT",
|
|
49
|
+
"repository": "https://github.com/component-driven/cypress-axe",
|
|
50
|
+
"licenseUrl": "https://github.com/component-driven/cypress-axe/raw/HEAD/License.md"
|
|
51
|
+
},
|
|
52
|
+
"cypress-real-events@1.13.0": {
|
|
53
|
+
"licenses": "MIT",
|
|
54
|
+
"repository": "https://github.com/dmtrKovalenko/cypress-real-events",
|
|
55
|
+
"licenseUrl": "https://github.com/dmtrKovalenko/cypress-real-events"
|
|
56
|
+
},
|
|
57
|
+
"cypress@13.6.2": {
|
|
58
|
+
"licenses": "MIT",
|
|
59
|
+
"repository": "https://github.com/cypress-io/cypress",
|
|
60
|
+
"licenseUrl": "https://cypress.io"
|
|
61
|
+
},
|
|
62
|
+
"esbuild@0.19.11": {
|
|
63
|
+
"licenses": "MIT",
|
|
64
|
+
"repository": "https://github.com/evanw/esbuild",
|
|
65
|
+
"licenseUrl": "https://github.com/evanw/esbuild/raw/HEAD/LICENSE.md"
|
|
66
|
+
},
|
|
67
|
+
"eslint-config-google@0.14.0": {
|
|
68
|
+
"licenses": "Apache-2.0",
|
|
69
|
+
"repository": "https://github.com/google/eslint-config-google",
|
|
70
|
+
"licenseUrl": "https://github.com/google/eslint-config-google/raw/HEAD/LICENSE"
|
|
71
|
+
},
|
|
72
|
+
"eslint-config-prettier@9.1.0": {
|
|
73
|
+
"licenses": "MIT",
|
|
74
|
+
"repository": "https://github.com/prettier/eslint-config-prettier",
|
|
75
|
+
"licenseUrl": "https://github.com/prettier/eslint-config-prettier/raw/HEAD/LICENSE"
|
|
76
|
+
},
|
|
77
|
+
"eslint@8.56.0": {
|
|
78
|
+
"licenses": "MIT",
|
|
79
|
+
"repository": "https://github.com/eslint/eslint",
|
|
80
|
+
"licenseUrl": "https://github.com/eslint/eslint/raw/HEAD/LICENSE"
|
|
81
|
+
},
|
|
82
|
+
"github-markdown-css@5.5.0": {
|
|
83
|
+
"licenses": "MIT",
|
|
84
|
+
"repository": "https://github.com/sindresorhus/github-markdown-css",
|
|
85
|
+
"licenseUrl": "https://github.com/sindresorhus/github-markdown-css/raw/HEAD/license"
|
|
86
|
+
},
|
|
87
|
+
"highlight.js@11.9.0": {
|
|
88
|
+
"licenses": "BSD-3-Clause",
|
|
89
|
+
"repository": "https://github.com/highlightjs/highlight.js",
|
|
90
|
+
"licenseUrl": "https://github.com/highlightjs/highlight.js/raw/HEAD/LICENSE"
|
|
91
|
+
},
|
|
92
|
+
"junit-report-builder@3.1.0": {
|
|
93
|
+
"licenses": "MIT",
|
|
94
|
+
"repository": "https://github.com/davidparsson/junit-report-builder",
|
|
95
|
+
"licenseUrl": "https://github.com/davidparsson/junit-report-builder/raw/HEAD/LICENSE"
|
|
96
|
+
},
|
|
97
|
+
"lint-staged@15.2.0": {
|
|
98
|
+
"licenses": "MIT",
|
|
99
|
+
"repository": "https://github.com/okonet/lint-staged",
|
|
100
|
+
"licenseUrl": "https://github.com/okonet/lint-staged/raw/HEAD/LICENSE"
|
|
101
|
+
},
|
|
102
|
+
"marked@11.1.1": {
|
|
103
|
+
"licenses": "MIT",
|
|
104
|
+
"repository": "https://github.com/markedjs/marked",
|
|
105
|
+
"licenseUrl": "https://github.com/markedjs/marked/raw/HEAD/LICENSE.md"
|
|
106
|
+
},
|
|
107
|
+
"postcss-prefix-selector@1.16.0": {
|
|
108
|
+
"licenses": "MIT",
|
|
109
|
+
"repository": "https://github.com/RadValentin/postcss-prefix-selector",
|
|
110
|
+
"licenseUrl": "https://github.com/RadValentin/postcss-prefix-selector/raw/HEAD/LICENSE"
|
|
111
|
+
},
|
|
112
|
+
"postcss@8.4.32": {
|
|
113
|
+
"licenses": "MIT",
|
|
114
|
+
"repository": "https://github.com/postcss/postcss",
|
|
115
|
+
"licenseUrl": "https://github.com/postcss/postcss/raw/HEAD/LICENSE"
|
|
116
|
+
},
|
|
117
|
+
"prettier@3.1.1": {
|
|
118
|
+
"licenses": "MIT",
|
|
119
|
+
"repository": "https://github.com/prettier/prettier",
|
|
120
|
+
"licenseUrl": "https://github.com/prettier/prettier/raw/HEAD/LICENSE"
|
|
121
|
+
},
|
|
122
|
+
"resolve-pkg@2.0.0": {
|
|
123
|
+
"licenses": "MIT",
|
|
124
|
+
"repository": "https://github.com/sindresorhus/resolve-pkg",
|
|
125
|
+
"licenseUrl": "https://github.com/sindresorhus/resolve-pkg/raw/HEAD/license"
|
|
126
|
+
},
|
|
127
|
+
"sass@1.69.6": {
|
|
128
|
+
"licenses": "MIT",
|
|
129
|
+
"repository": "https://github.com/sass/dart-sass",
|
|
130
|
+
"licenseUrl": "https://github.com/sass/dart-sass/raw/HEAD/LICENSE"
|
|
131
|
+
},
|
|
132
|
+
"style-dictionary@3.9.1": {
|
|
133
|
+
"licenses": "Apache-2.0",
|
|
134
|
+
"repository": "https://github.com/amzn/style-dictionary",
|
|
135
|
+
"licenseUrl": "https://github.com/amzn/style-dictionary/raw/HEAD/LICENSE"
|
|
136
|
+
},
|
|
137
|
+
"stylelint-config-recommended-scss@14.0.0": {
|
|
138
|
+
"licenses": "MIT",
|
|
139
|
+
"repository": "https://github.com/stylelint-scss/stylelint-config-recommended-scss",
|
|
140
|
+
"licenseUrl": "https://github.com/stylelint-scss/stylelint-config-recommended-scss/raw/HEAD/LICENSE"
|
|
141
|
+
},
|
|
142
|
+
"stylelint-config-standard@36.0.0": {
|
|
143
|
+
"licenses": "MIT",
|
|
144
|
+
"repository": "https://github.com/stylelint/stylelint-config-standard",
|
|
145
|
+
"licenseUrl": "https://github.com/stylelint/stylelint-config-standard/raw/HEAD/LICENSE"
|
|
146
|
+
},
|
|
147
|
+
"stylelint-scss@6.0.0": {
|
|
148
|
+
"licenses": "MIT",
|
|
149
|
+
"repository": "https://github.com/stylelint-scss/stylelint-scss",
|
|
150
|
+
"licenseUrl": "https://github.com/stylelint-scss/stylelint-scss/raw/HEAD/LICENSE"
|
|
151
|
+
},
|
|
152
|
+
"stylelint@16.1.0": {
|
|
153
|
+
"licenses": "MIT",
|
|
154
|
+
"repository": "https://github.com/stylelint/stylelint",
|
|
155
|
+
"licenseUrl": "https://github.com/stylelint/stylelint/raw/HEAD/LICENSE"
|
|
156
|
+
},
|
|
157
|
+
"tsup@8.0.1": {
|
|
158
|
+
"licenses": "MIT",
|
|
159
|
+
"repository": "https://github.com/egoist/tsup",
|
|
160
|
+
"licenseUrl": "https://github.com/egoist/tsup/raw/HEAD/LICENSE"
|
|
161
|
+
},
|
|
162
|
+
"turbo@1.11.2": {
|
|
163
|
+
"licenses": "MPL-2.0",
|
|
164
|
+
"repository": "https://github.com/vercel/turbo",
|
|
165
|
+
"licenseUrl": "https://github.com/vercel/turbo/raw/HEAD/LICENSE"
|
|
166
|
+
},
|
|
167
|
+
"typescript@5.3.3": {
|
|
168
|
+
"licenses": "Apache-2.0",
|
|
169
|
+
"repository": "https://github.com/Microsoft/TypeScript",
|
|
170
|
+
"licenseUrl": "https://github.com/Microsoft/TypeScript/raw/HEAD/LICENSE.txt"
|
|
171
|
+
},
|
|
172
|
+
"vite-tsconfig-paths@4.2.3": {
|
|
173
|
+
"licenses": "MIT",
|
|
174
|
+
"repository": "https://github.com/aleclarson/vite-tsconfig-paths",
|
|
175
|
+
"licenseUrl": "https://github.com/aleclarson/vite-tsconfig-paths/raw/HEAD/LICENSE"
|
|
176
|
+
},
|
|
177
|
+
"vite@5.0.10": {
|
|
178
|
+
"licenses": "MIT",
|
|
179
|
+
"repository": "https://github.com/vitejs/vite",
|
|
180
|
+
"licenseUrl": "https://github.com/vitejs/vite/raw/HEAD/LICENSE.md"
|
|
181
|
+
},
|
|
182
|
+
"vitest@1.1.1": {
|
|
183
|
+
"licenses": "MIT",
|
|
184
|
+
"repository": "https://github.com/vitest-dev/vitest",
|
|
185
|
+
"licenseUrl": "https://github.com/vitest-dev/vitest/raw/HEAD/LICENSE.md"
|
|
186
|
+
},
|
|
187
|
+
"yargs@17.7.2": {
|
|
188
|
+
"licenses": "MIT",
|
|
189
|
+
"repository": "https://github.com/yargs/yargs",
|
|
190
|
+
"licenseUrl": "https://github.com/yargs/yargs/raw/HEAD/LICENSE"
|
|
191
|
+
}
|
|
192
|
+
}
|