@scouterna/ui-webc 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/scout-checkbox.cjs.entry.js +53 -0
- package/dist/cjs/scout-checkbox.entry.cjs.js.map +1 -0
- package/dist/cjs/scout-field.cjs.entry.js +1 -1
- package/dist/cjs/scout-switch.cjs.entry.js +49 -0
- package/dist/cjs/scout-switch.entry.cjs.js.map +1 -0
- package/dist/cjs/ui-webc.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +3 -1
- package/dist/collection/components/checkbox/checkbox.css +81 -0
- package/dist/collection/components/checkbox/checkbox.js +176 -0
- package/dist/collection/components/checkbox/checkbox.js.map +1 -0
- package/dist/collection/components/field/field.js +1 -1
- package/dist/collection/components/switch/switch.css +79 -0
- package/dist/collection/components/switch/switch.js +173 -0
- package/dist/collection/components/switch/switch.js.map +1 -0
- package/dist/components/scout-checkbox.d.ts +11 -0
- package/dist/components/scout-checkbox.js +78 -0
- package/dist/components/scout-checkbox.js.map +1 -0
- package/dist/components/scout-field.js +1 -1
- package/dist/components/scout-switch.d.ts +11 -0
- package/dist/components/scout-switch.js +75 -0
- package/dist/components/scout-switch.js.map +1 -0
- package/dist/custom-elements.json +317 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/scout-checkbox.entry.js +51 -0
- package/dist/esm/scout-checkbox.entry.js.map +1 -0
- package/dist/esm/scout-field.entry.js +1 -1
- package/dist/esm/scout-switch.entry.js +47 -0
- package/dist/esm/scout-switch.entry.js.map +1 -0
- package/dist/esm/ui-webc.js +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +22 -0
- package/dist/types/components/switch/switch.d.ts +25 -0
- package/dist/types/components.d.ts +134 -0
- package/dist/ui-webc/p-24632b65.entry.js +2 -0
- package/dist/ui-webc/p-24632b65.entry.js.map +1 -0
- package/dist/ui-webc/p-2b434594.entry.js +2 -0
- package/dist/ui-webc/p-2b434594.entry.js.map +1 -0
- package/dist/ui-webc/{p-fb926c68.entry.js → p-7245a55a.entry.js} +2 -2
- package/dist/ui-webc/scout-checkbox.entry.esm.js.map +1 -0
- package/dist/ui-webc/scout-switch.entry.esm.js.map +1 -0
- package/dist/ui-webc/ui-webc.esm.js +1 -1
- package/package.json +2 -1
- /package/dist/ui-webc/{p-fb926c68.entry.js.map → p-7245a55a.entry.js.map} +0 -0
|
@@ -68,6 +68,21 @@ export namespace Components {
|
|
|
68
68
|
*/
|
|
69
69
|
interface ScoutCard {
|
|
70
70
|
}
|
|
71
|
+
interface ScoutCheckbox {
|
|
72
|
+
/**
|
|
73
|
+
* Use this prop if you need to connect your checkbox with another element describing its use, other than the property label.
|
|
74
|
+
*/
|
|
75
|
+
"ariaLabelledby": string;
|
|
76
|
+
/**
|
|
77
|
+
* @default false
|
|
78
|
+
*/
|
|
79
|
+
"checked": boolean;
|
|
80
|
+
/**
|
|
81
|
+
* @default false
|
|
82
|
+
*/
|
|
83
|
+
"disabled": boolean;
|
|
84
|
+
"label": string;
|
|
85
|
+
}
|
|
71
86
|
interface ScoutField {
|
|
72
87
|
/**
|
|
73
88
|
* Help text shown below the field.
|
|
@@ -107,6 +122,22 @@ export namespace Components {
|
|
|
107
122
|
*/
|
|
108
123
|
"value": string;
|
|
109
124
|
}
|
|
125
|
+
interface ScoutSwitch {
|
|
126
|
+
/**
|
|
127
|
+
* Use this prop if you need to connect your switch with another element describing its use, other than the property label.
|
|
128
|
+
*/
|
|
129
|
+
"ariaLabelledby": string;
|
|
130
|
+
/**
|
|
131
|
+
* @default false
|
|
132
|
+
*/
|
|
133
|
+
"disabled": boolean;
|
|
134
|
+
"label": string;
|
|
135
|
+
/**
|
|
136
|
+
* Indicates whether the switch is toggled on or off.
|
|
137
|
+
* @default false
|
|
138
|
+
*/
|
|
139
|
+
"toggled": boolean;
|
|
140
|
+
}
|
|
110
141
|
}
|
|
111
142
|
export interface ScoutBottomBarItemCustomEvent<T> extends CustomEvent<T> {
|
|
112
143
|
detail: T;
|
|
@@ -116,10 +147,18 @@ export interface ScoutButtonCustomEvent<T> extends CustomEvent<T> {
|
|
|
116
147
|
detail: T;
|
|
117
148
|
target: HTMLScoutButtonElement;
|
|
118
149
|
}
|
|
150
|
+
export interface ScoutCheckboxCustomEvent<T> extends CustomEvent<T> {
|
|
151
|
+
detail: T;
|
|
152
|
+
target: HTMLScoutCheckboxElement;
|
|
153
|
+
}
|
|
119
154
|
export interface ScoutInputCustomEvent<T> extends CustomEvent<T> {
|
|
120
155
|
detail: T;
|
|
121
156
|
target: HTMLScoutInputElement;
|
|
122
157
|
}
|
|
158
|
+
export interface ScoutSwitchCustomEvent<T> extends CustomEvent<T> {
|
|
159
|
+
detail: T;
|
|
160
|
+
target: HTMLScoutSwitchElement;
|
|
161
|
+
}
|
|
123
162
|
declare global {
|
|
124
163
|
/**
|
|
125
164
|
* The bottom bar component is used in the Jamboree26 app to provide
|
|
@@ -181,6 +220,27 @@ declare global {
|
|
|
181
220
|
prototype: HTMLScoutCardElement;
|
|
182
221
|
new (): HTMLScoutCardElement;
|
|
183
222
|
};
|
|
223
|
+
interface HTMLScoutCheckboxElementEventMap {
|
|
224
|
+
"scoutCheckboxChecked": {
|
|
225
|
+
checked: boolean;
|
|
226
|
+
element: HTMLInputElement;
|
|
227
|
+
};
|
|
228
|
+
"_fieldId": string;
|
|
229
|
+
}
|
|
230
|
+
interface HTMLScoutCheckboxElement extends Components.ScoutCheckbox, HTMLStencilElement {
|
|
231
|
+
addEventListener<K extends keyof HTMLScoutCheckboxElementEventMap>(type: K, listener: (this: HTMLScoutCheckboxElement, ev: ScoutCheckboxCustomEvent<HTMLScoutCheckboxElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
232
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
233
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
234
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
235
|
+
removeEventListener<K extends keyof HTMLScoutCheckboxElementEventMap>(type: K, listener: (this: HTMLScoutCheckboxElement, ev: ScoutCheckboxCustomEvent<HTMLScoutCheckboxElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
236
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
237
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
238
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
239
|
+
}
|
|
240
|
+
var HTMLScoutCheckboxElement: {
|
|
241
|
+
prototype: HTMLScoutCheckboxElement;
|
|
242
|
+
new (): HTMLScoutCheckboxElement;
|
|
243
|
+
};
|
|
184
244
|
interface HTMLScoutFieldElement extends Components.ScoutField, HTMLStencilElement {
|
|
185
245
|
}
|
|
186
246
|
var HTMLScoutFieldElement: {
|
|
@@ -209,13 +269,36 @@ declare global {
|
|
|
209
269
|
prototype: HTMLScoutInputElement;
|
|
210
270
|
new (): HTMLScoutInputElement;
|
|
211
271
|
};
|
|
272
|
+
interface HTMLScoutSwitchElementEventMap {
|
|
273
|
+
"scoutSwitchToggled": {
|
|
274
|
+
toggled: boolean;
|
|
275
|
+
element: HTMLInputElement;
|
|
276
|
+
};
|
|
277
|
+
"_fieldId": string;
|
|
278
|
+
}
|
|
279
|
+
interface HTMLScoutSwitchElement extends Components.ScoutSwitch, HTMLStencilElement {
|
|
280
|
+
addEventListener<K extends keyof HTMLScoutSwitchElementEventMap>(type: K, listener: (this: HTMLScoutSwitchElement, ev: ScoutSwitchCustomEvent<HTMLScoutSwitchElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
281
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
282
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
283
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
284
|
+
removeEventListener<K extends keyof HTMLScoutSwitchElementEventMap>(type: K, listener: (this: HTMLScoutSwitchElement, ev: ScoutSwitchCustomEvent<HTMLScoutSwitchElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
285
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
286
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
287
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
288
|
+
}
|
|
289
|
+
var HTMLScoutSwitchElement: {
|
|
290
|
+
prototype: HTMLScoutSwitchElement;
|
|
291
|
+
new (): HTMLScoutSwitchElement;
|
|
292
|
+
};
|
|
212
293
|
interface HTMLElementTagNameMap {
|
|
213
294
|
"scout-bottom-bar": HTMLScoutBottomBarElement;
|
|
214
295
|
"scout-bottom-bar-item": HTMLScoutBottomBarItemElement;
|
|
215
296
|
"scout-button": HTMLScoutButtonElement;
|
|
216
297
|
"scout-card": HTMLScoutCardElement;
|
|
298
|
+
"scout-checkbox": HTMLScoutCheckboxElement;
|
|
217
299
|
"scout-field": HTMLScoutFieldElement;
|
|
218
300
|
"scout-input": HTMLScoutInputElement;
|
|
301
|
+
"scout-switch": HTMLScoutSwitchElement;
|
|
219
302
|
}
|
|
220
303
|
}
|
|
221
304
|
declare namespace LocalJSX {
|
|
@@ -277,6 +360,29 @@ declare namespace LocalJSX {
|
|
|
277
360
|
*/
|
|
278
361
|
interface ScoutCard {
|
|
279
362
|
}
|
|
363
|
+
interface ScoutCheckbox {
|
|
364
|
+
/**
|
|
365
|
+
* Use this prop if you need to connect your checkbox with another element describing its use, other than the property label.
|
|
366
|
+
*/
|
|
367
|
+
"ariaLabelledby"?: string;
|
|
368
|
+
/**
|
|
369
|
+
* @default false
|
|
370
|
+
*/
|
|
371
|
+
"checked"?: boolean;
|
|
372
|
+
/**
|
|
373
|
+
* @default false
|
|
374
|
+
*/
|
|
375
|
+
"disabled"?: boolean;
|
|
376
|
+
"label"?: string;
|
|
377
|
+
"onScoutCheckboxChecked"?: (event: ScoutCheckboxCustomEvent<{
|
|
378
|
+
checked: boolean;
|
|
379
|
+
element: HTMLInputElement;
|
|
380
|
+
}>) => void;
|
|
381
|
+
/**
|
|
382
|
+
* Internal event used for form field association.
|
|
383
|
+
*/
|
|
384
|
+
"on_fieldId"?: (event: ScoutCheckboxCustomEvent<string>) => void;
|
|
385
|
+
}
|
|
280
386
|
interface ScoutField {
|
|
281
387
|
/**
|
|
282
388
|
* Help text shown below the field.
|
|
@@ -325,13 +431,39 @@ declare namespace LocalJSX {
|
|
|
325
431
|
*/
|
|
326
432
|
"value"?: string;
|
|
327
433
|
}
|
|
434
|
+
interface ScoutSwitch {
|
|
435
|
+
/**
|
|
436
|
+
* Use this prop if you need to connect your switch with another element describing its use, other than the property label.
|
|
437
|
+
*/
|
|
438
|
+
"ariaLabelledby"?: string;
|
|
439
|
+
/**
|
|
440
|
+
* @default false
|
|
441
|
+
*/
|
|
442
|
+
"disabled"?: boolean;
|
|
443
|
+
"label"?: string;
|
|
444
|
+
"onScoutSwitchToggled"?: (event: ScoutSwitchCustomEvent<{
|
|
445
|
+
toggled: boolean;
|
|
446
|
+
element: HTMLInputElement;
|
|
447
|
+
}>) => void;
|
|
448
|
+
/**
|
|
449
|
+
* Internal event used for form field association.
|
|
450
|
+
*/
|
|
451
|
+
"on_fieldId"?: (event: ScoutSwitchCustomEvent<string>) => void;
|
|
452
|
+
/**
|
|
453
|
+
* Indicates whether the switch is toggled on or off.
|
|
454
|
+
* @default false
|
|
455
|
+
*/
|
|
456
|
+
"toggled"?: boolean;
|
|
457
|
+
}
|
|
328
458
|
interface IntrinsicElements {
|
|
329
459
|
"scout-bottom-bar": ScoutBottomBar;
|
|
330
460
|
"scout-bottom-bar-item": ScoutBottomBarItem;
|
|
331
461
|
"scout-button": ScoutButton;
|
|
332
462
|
"scout-card": ScoutCard;
|
|
463
|
+
"scout-checkbox": ScoutCheckbox;
|
|
333
464
|
"scout-field": ScoutField;
|
|
334
465
|
"scout-input": ScoutInput;
|
|
466
|
+
"scout-switch": ScoutSwitch;
|
|
335
467
|
}
|
|
336
468
|
}
|
|
337
469
|
export { LocalJSX as JSX };
|
|
@@ -356,8 +488,10 @@ declare module "@stencil/core" {
|
|
|
356
488
|
* A general surface to hold various types of content.
|
|
357
489
|
*/
|
|
358
490
|
"scout-card": LocalJSX.ScoutCard & JSXBase.HTMLAttributes<HTMLScoutCardElement>;
|
|
491
|
+
"scout-checkbox": LocalJSX.ScoutCheckbox & JSXBase.HTMLAttributes<HTMLScoutCheckboxElement>;
|
|
359
492
|
"scout-field": LocalJSX.ScoutField & JSXBase.HTMLAttributes<HTMLScoutFieldElement>;
|
|
360
493
|
"scout-input": LocalJSX.ScoutInput & JSXBase.HTMLAttributes<HTMLScoutInputElement>;
|
|
494
|
+
"scout-switch": LocalJSX.ScoutSwitch & JSXBase.HTMLAttributes<HTMLScoutSwitchElement>;
|
|
361
495
|
}
|
|
362
496
|
}
|
|
363
497
|
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e,c,h as o}from"./p-DByXnE9g.js";const a="data:image/svg+xml;base64,PHN2ZwogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB3aWR0aD0iMjQiCiAgaGVpZ2h0PSIyNCIKICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgZmlsbD0ibm9uZSIKICBzdHJva2U9ImN1cnJlbnRDb2xvciIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgY2xhc3M9Imljb24gaWNvbi10YWJsZXIgaWNvbnMtdGFibGVyLW91dGxpbmUgaWNvbi10YWJsZXItY2hlY2siCj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4KICA8cGF0aCBkPSJNNSAxMmw1IDVsMTAgLTEwIiAvPgo8L3N2Zz4=";const r='.checkbox.sc-scout-checkbox{width:var(--spacing-6);height:var(--spacing-6);-moz-appearance:none;appearance:none;-webkit-appearance:none;display:flex;align-content:center;justify-content:center;border-radius:3px;background-color:var(--color-text-brand-inverse);border:2px solid var(--color-gray-300);position:relative}.checkbox.sc-scout-checkbox:hover{border:2px solid var(--color-gray-400);box-shadow:inset 0px 0px 5px 5px var(--color-background-brand-subtle-hovered);cursor:pointer}.checkbox.sc-scout-checkbox:active{background-color:var(--color-background-brand-subtle-pressed)}.checkbox.sc-scout-checkbox:checked:hover{background-color:var(--color-background-brand-hovered);border:2px solid var(--color-background-brand-hovered);box-shadow:none}.checkbox.sc-scout-checkbox:checked{background-color:var(--color-background-brand-base);border-color:var(--color-background-brand-base)}.checkbox.sc-scout-checkbox::after{content:"";position:absolute;width:var(--spacing-10);height:var(--spacing-10);top:50%;left:50%;transform:translate(-50%, -50%)}.checkbox.sc-scout-checkbox:checked::before{content:"";background-color:var(--color-text-brand-inverse);width:var(--spacing-6);height:var(--spacing-6);position:absolute;top:50%;left:50%;right:0;bottom:0;transform:translate(-50%, -50%);-webkit-mask-image:var(--icon-checkbox);mask-image:var(--icon-checkbox);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.checkbox.sc-scout-checkbox:disabled{pointer-events:none;background-color:var(--color-gray-100);border-color:var(--color-gray-100)}label.sc-scout-checkbox{display:flex;flex-direction:row-reverse;align-items:center;font:var(--type-label-base);color:var(--color-text-base)}.inlineDivider.sc-scout-checkbox{width:var(--spacing-2)}';const s=class{constructor(o){e(this,o);this.scoutCheckboxChecked=c(this,"scoutCheckboxChecked");this._fieldId=c(this,"_fieldId")}checked=false;disabled=false;ariaLabelledby;label;ariaId;scoutCheckboxChecked;_fieldId;componentWillLoad(){this.ariaId=`_${Math.random().toString(36).substring(2,9)}`;this._fieldId.emit(this.ariaId)}onClick(e){const c=e.target;console.log("checkbox",c.checked);this.scoutCheckboxChecked.emit({checked:c.checked,element:c})}render(){const e=this.label&&this.label.length?"label":"div";return o(e,{key:"2d97627d29b09521936eeef81419673d70fc75f1"},this.label,o("span",{key:"f62b4e360f03b4b6fb6e8fee326756552a5a631d",class:"inlineDivider"}),o("input",{key:"7ca6b74e12c369fc937d1b8c85e70c52fd9aa25c",class:"checkbox",onChange:e=>this.onClick(e),style:{"--icon-checkbox":`url(${a})`},type:"checkbox",id:this.ariaId,"aria-labelledby":this.ariaLabelledby,"aria-disabled":this.disabled,disabled:this.disabled,checked:this.checked}))}};s.style=r;export{s as scout_checkbox};
|
|
2
|
+
//# sourceMappingURL=p-24632b65.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["registerInstance","createEvent","h","checkSvg","checkboxCss","ScoutCheckbox","constructor","hostRef","this","scoutCheckboxChecked","_fieldId","checked","disabled","ariaLabelledby","label","ariaId","componentWillLoad","Math","random","toString","substring","emit","onClick","event","checkbox","target","console","log","element","render","Tag","length","key","class","onChange","style","type","id"],"sources":["0"],"mappings":"YAAcA,EAAuBC,OAAaC,MAAS,kBAE3D,MAAMC,EAAW,6fAEjB,MAAMC,EAAc,usDAEpB,MAAMC,EAAgB,MAClB,WAAAC,CAAYC,GACRP,EAAiBQ,KAAMD,GACvBC,KAAKC,qBAAuBR,EAAYO,KAAM,wBAC9CA,KAAKE,SAAWT,EAAYO,KAAM,WACtC,CACAG,QAAU,MACVC,SAAW,MAIXC,eACAC,MACAC,OACAN,qBAIAC,SACA,iBAAAM,GACIR,KAAKO,OAAS,IAAIE,KAAKC,SAASC,SAAS,IAAIC,UAAU,EAAG,KAC1DZ,KAAKE,SAASW,KAAKb,KAAKO,OAC5B,CACA,OAAAO,CAAQC,GACJ,MAAMC,EAAWD,EAAME,OACvBC,QAAQC,IAAI,WAAYH,EAASb,SACjCH,KAAKC,qBAAqBY,KAAK,CAC3BV,QAASa,EAASb,QAClBiB,QAASJ,GAEjB,CAMA,MAAAK,GACI,MAAMC,EAAMtB,KAAKM,OAASN,KAAKM,MAAMiB,OAAS,QAAU,MACxD,OAAQ7B,EAAE4B,EAAK,CAAEE,IAAK,4CAA8CxB,KAAKM,MAAOZ,EAAE,OAAQ,CAAE8B,IAAK,2CAA4CC,MAAO,kBAAoB/B,EAAE,QAAS,CAAE8B,IAAK,2CAA4CC,MAAO,WAAYC,SAAWX,GAAUf,KAAKc,QAAQC,GAAQY,MAAO,CAAE,kBAAmB,OAAOhC,MAAeiC,KAAM,WAAYC,GAAI7B,KAAKO,OAAQ,kBAAmBP,KAAKK,eAAgB,gBAAiBL,KAAKI,SAAUA,SAAUJ,KAAKI,SAAUD,QAASH,KAAKG,UAC3e,GAEJN,EAAc8B,MAAQ/B,SAEbC","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r,c as e,h as a}from"./p-DByXnE9g.js";const o='.switch{width:var(--spacing-12);height:var(--spacing-6);-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:var(--spacing-8);background-color:var(--color-text-brand-inverse);border:1px solid var(--color-gray-300);position:relative;display:flex;align-content:center;justify-content:center;transition-property:border-color;transition-duration:0.3s;transition-timing-function:ease-in-out;cursor:pointer;--switch-ball-size:calc((var(--spacing-6) - var(--spacing-1) / 2) + 1px)}.switch:hover{transition-property:none;border-color:var(--color-gray-400);background-color:var(--color-background-brand-subtle-hovered)}.switch:active{background-color:var(--color-background-brand-subtle-pressed)}.switch:checked{border-color:var(--color-background-brand-base)}.switch:hover::before{background-color:var(--color-gray-400)}.switch::before{content:"";background-color:var(--color-gray-300);width:var(--switch-ball-size);height:var(--switch-ball-size);border-radius:50%;position:absolute;left:-1px;right:0;transition-duration:0.3s;transition-property:left, right}.switch:checked::before{content:"";background-color:var(--color-background-brand-base);left:calc(100% - (var(--spacing-6) - var(--spacing-1) / 2) + 1px);left:calc(100% - calc(var(--spacing-6) - var(--spacing-1) / 2) + 1px)}.switch:disabled{pointer-events:none;background-color:var(--color-gray-100);border-color:var(--color-gray-100)}.switch:disabled::before{background-color:var(--color-gray-300)}label{display:flex;flex-direction:row-reverse;align-items:center;font:var(--type-label-base);color:var(--color-text-base)}.inlineDivider{width:var(--spacing-2)}';const c=class{constructor(a){r(this,a);this.scoutSwitchToggled=e(this,"scoutSwitchToggled");this._fieldId=e(this,"_fieldId")}toggled=false;disabled=false;ariaLabelledby;label;ariaId;scoutSwitchToggled;_fieldId;componentWillLoad(){this.ariaId=`_${Math.random().toString(36).substring(2,9)}`;this._fieldId.emit(this.ariaId)}onClick(r){const e=r.target;this.scoutSwitchToggled.emit({toggled:e.checked,element:e})}render(){const r=this.label&&this.label.length?"label":"div";return a(r,{key:"06f33e80dedee05abc34f15fbd8453f3df50d760"},this.label,a("span",{key:"3061c223b64f313d4ebcd4b068ca84d83c5bb9c2",class:"inlineDivider"}),a("input",{key:"66a3a848ce3aa484af9bb13eda6cc30e46e74c1d",class:"switch",onChange:r=>this.onClick(r),type:"checkbox",id:this.ariaId,"aria-labelledby":this.ariaLabelledby,"aria-disabled":this.disabled,disabled:this.disabled,checked:this.toggled}))}static get delegatesFocus(){return true}};c.style=o;export{c as scout_switch};
|
|
2
|
+
//# sourceMappingURL=p-2b434594.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["registerInstance","createEvent","h","switchCss","ScoutSwitch","constructor","hostRef","this","scoutSwitchToggled","_fieldId","toggled","disabled","ariaLabelledby","label","ariaId","componentWillLoad","Math","random","toString","substring","emit","onClick","event","switchElement","target","checked","element","render","Tag","length","key","class","onChange","type","id","delegatesFocus","style"],"sources":["0"],"mappings":"OAAcA,OAAuBC,OAAaC,MAAS,kBAE3D,MAAMC,EAAY,imDAElB,MAAMC,EAAc,MAChB,WAAAC,CAAYC,GACRN,EAAiBO,KAAMD,GACvBC,KAAKC,mBAAqBP,EAAYM,KAAM,sBAC5CA,KAAKE,SAAWR,EAAYM,KAAM,WACtC,CAIAG,QAAU,MACVC,SAAW,MAIXC,eACAC,MACAC,OACAN,mBAIAC,SACA,iBAAAM,GACIR,KAAKO,OAAS,IAAIE,KAAKC,SAASC,SAAS,IAAIC,UAAU,EAAG,KAC1DZ,KAAKE,SAASW,KAAKb,KAAKO,OAC5B,CACA,OAAAO,CAAQC,GACJ,MAAMC,EAAgBD,EAAME,OAC5BjB,KAAKC,mBAAmBY,KAAK,CACzBV,QAASa,EAAcE,QACvBC,QAASH,GAEjB,CACA,MAAAI,GACI,MAAMC,EAAMrB,KAAKM,OAASN,KAAKM,MAAMgB,OAAS,QAAU,MACxD,OAAQ3B,EAAE0B,EAAK,CAAEE,IAAK,4CAA8CvB,KAAKM,MAAOX,EAAE,OAAQ,CAAE4B,IAAK,2CAA4CC,MAAO,kBAAoB7B,EAAE,QAAS,CAAE4B,IAAK,2CAA4CC,MAAO,SAAUC,SAAWV,GAAUf,KAAKc,QAAQC,GAAQW,KAAM,WAAYC,GAAI3B,KAAKO,OAAQ,kBAAmBP,KAAKK,eAAgB,gBAAiBL,KAAKI,SAAUA,SAAUJ,KAAKI,SAAUc,QAASlB,KAAKG,UACvb,CACA,yBAAWyB,GAAmB,OAAO,IAAM,GAE/C/B,EAAYgC,MAAQjC,SAEXC","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,a as t,h as
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,a as t,h as l}from"./p-DByXnE9g.js";const a=".field.sc-scout-field{display:flex;flex-direction:column}.label.sc-scout-field{font:var(--type-label-sm);font-weight:600;color:var(--color-text-base)}.error-text.sc-scout-field{font:var(--type-label-sm);color:var(--color-text-danger-base);margin:var(--spacing-1) 0 0 0}.error-text.sc-scout-field:empty{margin:0}.help-text.sc-scout-field{font:var(--type-label-sm);color:var(--color-gray-600);margin:var(--spacing-1) 0 0 0}";const s=class{constructor(t){e(this,t)}label;helpText;inputId;errorText=null;errorHidden=false;get hostElement(){return t(this)}catchFieldId(e){e.stopPropagation();this.inputId=e.detail}handleInputChange(e){const{element:t}=e.detail;this.errorHidden=true;if(t.validity.valid){this.errorText=null}else{this.errorText=t.validationMessage}}handleValidationBlur(){this.errorHidden=false}render(){return l("div",{key:"0ba5919cf10618bf4617e1ced85485a6d136f668",class:"field"},l("label",{key:"55cac1b4eb9c0d58ea1e4045b9c85c30a384d99b",htmlFor:this.inputId,class:"label"},this.label),l("slot",{key:"b5931e88ad82e693ff1dc24acd99db393f048fab"}),l("p",{key:"6354b6187ba63158bdd5c784787f1612eb641db4",class:"error-text","aria-live":"polite"},!this.errorHidden&&this.errorText),this.helpText&&l("p",{key:"ba9e47977b682fbe28afd61c6a00832506860e56",class:"help-text"},this.helpText))}};s.style=a;export{s as scout_field};
|
|
2
|
+
//# sourceMappingURL=p-7245a55a.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scout-checkbox.entry.esm.js","sources":["../../node_modules/.pnpm/@tabler+icons@3.35.0/node_modules/@tabler/icons/icons/outline/check.svg","src/components/checkbox/checkbox.css?tag=scout-checkbox&encapsulation=scoped","src/components/checkbox/checkbox.tsx"],"sourcesContent":["<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n class=\"icon icon-tabler icons-tabler-outline icon-tabler-check\"\n>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/>\n <path d=\"M5 12l5 5l10 -10\" />\n</svg>",".checkbox {\n width: var(--spacing-6);\n height: var(--spacing-6);\n appearance: none;\n -webkit-appearance: none;\n display: flex;\n align-content: center;\n justify-content: center;\n border-radius: 3px;\n background-color: var(--color-text-brand-inverse);\n border: 2px solid var(--color-gray-300);\n position: relative;\n}\n\n.checkbox:hover {\n border: 2px solid var(--color-gray-400);\n box-shadow: inset 0px 0px 5px 5px var(--color-background-brand-subtle-hovered);\n cursor: pointer;\n}\n\n.checkbox:active {\n background-color: var(--color-background-brand-subtle-pressed);\n}\n\n.checkbox:checked:hover {\n background-color: var(--color-background-brand-hovered);\n border: 2px solid var(--color-background-brand-hovered);\n box-shadow: none;\n}\n\n.checkbox:checked {\n background-color: var(--color-background-brand-base);\n border-color: var(--color-background-brand-base);\n}\n\n.checkbox::after {\n content: \"\";\n position: absolute;\n width: var(--spacing-10);\n height: var(--spacing-10);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.checkbox:checked::before {\n content: \"\";\n background-color: var(--color-text-brand-inverse);\n width: var(--spacing-6);\n height: var(--spacing-6);\n position: absolute;\n /* Needed because of the border */\n top: 50%;\n left: 50%;\n right: 0;\n bottom: 0;\n transform: translate(-50%, -50%);\n mask-image: var(--icon-checkbox);\n mask-repeat: no-repeat;\n}\n\n.checkbox:disabled {\n pointer-events: none;\n background-color: var(--color-gray-100);\n border-color: var(--color-gray-100);\n}\n\nlabel {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n font: var(--type-label-base);\n color: var(--color-text-base);\n}\n\n.inlineDivider {\n width: var(--spacing-2);\n}\n","import {\n Component,\n Event,\n type EventEmitter,\n h,\n Prop,\n State,\n} from \"@stencil/core\";\nimport checkIcon from \"@tabler/icons/outline/check.svg\";\n\n@Component({\n tag: \"scout-checkbox\",\n styleUrl: \"checkbox.css\",\n scoped: true,\n})\nexport class ScoutCheckbox {\n @Prop() checked: boolean = false;\n\n @Prop() disabled: boolean = false;\n\n /**\n * Use this prop if you need to connect your checkbox with another element describing its use, other than the property label.\n */\n @Prop() ariaLabelledby: string;\n\n @Prop() label: string;\n\n @State() ariaId: string;\n\n @Event() scoutCheckboxChecked: EventEmitter<{\n checked: boolean;\n element: HTMLInputElement;\n }>;\n /**\n * Internal event used for form field association.\n */\n @Event() _fieldId: EventEmitter<string>;\n\n componentWillLoad(): Promise<void> | void {\n this.ariaId = `_${Math.random().toString(36).substring(2, 9)}`;\n this._fieldId.emit(this.ariaId);\n }\n\n onClick(event: Event) {\n const checkbox = event.target as HTMLInputElement;\n console.log(\"checkbox\", checkbox.checked);\n\n this.scoutCheckboxChecked.emit({\n checked: checkbox.checked,\n element: checkbox,\n });\n }\n /*\n todo:\n - Wrap checkbox with label if used.\n - make sure it works with field nicely with label.\n */\n\n render() {\n const Tag = this.label && this.label.length ? \"label\" : \"div\";\n return (\n <Tag>\n {this.label}\n <span class=\"inlineDivider\"></span>\n <input\n class=\"checkbox\"\n onChange={(event) => this.onClick(event)}\n style={{ \"--icon-checkbox\": `url(${checkIcon})` }}\n type=\"checkbox\"\n id={this.ariaId}\n aria-labelledby={this.ariaLabelledby}\n aria-disabled={this.disabled}\n disabled={this.disabled}\n checked={this.checked}\n />\n </Tag>\n );\n }\n}\n"],"names":["checkIcon"],"mappings":";;AAAA,MAAM,QAAQ,GAAG,4fAA4f;;ACA7gB,MAAM,WAAW,GAAG,0sDAA0sD;;MCejtD,aAAa,GAAA,MAAA;;;;;;IAChB,OAAO,GAAY,KAAK;IAExB,QAAQ,GAAY,KAAK;AAEjC;;AAEG;AACK,IAAA,cAAc;AAEd,IAAA,KAAK;AAEJ,IAAA,MAAM;AAEN,IAAA,oBAAoB;AAI7B;;AAEG;AACM,IAAA,QAAQ;IAEjB,iBAAiB,GAAA;QACf,IAAI,CAAC,MAAM,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;QAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGjC,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,MAA0B;QACjD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC;AAEzC,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;YAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO;AACzB,YAAA,OAAO,EAAE,QAAQ;AAClB,SAAA,CAAC;;AAEJ;;;;AAIE;IAEF,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,KAAK;QAC7D,QACE,EAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACD,IAAI,CAAC,KAAK,EACX,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAQ,CAAA,EACnC,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,UAAU,EAChB,QAAQ,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EACxC,KAAK,EAAE,EAAE,iBAAiB,EAAE,CAAA,IAAA,EAAOA,QAAS,CAAA,CAAA,CAAG,EAAE,EACjD,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,MAAM,EAAA,iBAAA,EACE,IAAI,CAAC,cAAc,EAAA,eAAA,EACrB,IAAI,CAAC,QAAQ,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAA,CACrB,CACE;;;;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scout-switch.entry.esm.js","sources":["src/components/switch/switch.css?tag=scout-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":[".switch {\n width: var(--spacing-12);\n height: var(--spacing-6);\n appearance: none;\n -webkit-appearance: none;\n border-radius: var(--spacing-8);\n background-color: var(--color-text-brand-inverse);\n border: 1px solid var(--color-gray-300);\n position: relative;\n display: flex;\n align-content: center;\n justify-content: center;\n transition-property: border-color;\n transition-duration: 0.3s;\n transition-timing-function: ease-in-out;\n cursor: pointer;\n --switch-ball-size: calc((var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:hover {\n transition-property: none;\n border-color: var(--color-gray-400);\n background-color: var(--color-background-brand-subtle-hovered);\n}\n\n.switch:active {\n background-color: var(--color-background-brand-subtle-pressed);\n}\n\n.switch:checked {\n border-color: var(--color-background-brand-base);\n}\n\n.switch:hover::before {\n background-color: var(--color-gray-400);\n}\n\n.switch::before {\n content: \"\";\n background-color: var(--color-gray-300);\n width: var(--switch-ball-size);\n height: var(--switch-ball-size);\n border-radius: 50%;\n position: absolute;\n left: -1px;\n right: 0;\n transition-duration: 0.3s;\n transition-property: left, right;\n}\n.switch:checked::before {\n content: \"\";\n background-color: var(--color-background-brand-base);\n left: calc(100% - calc(var(--spacing-6) - var(--spacing-1) / 2) + 1px);\n}\n\n.switch:disabled {\n pointer-events: none;\n background-color: var(--color-gray-100);\n border-color: var(--color-gray-100);\n}\n\n.switch:disabled::before {\n background-color: var(--color-gray-300);\n}\n\nlabel {\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n font: var(--type-label-base);\n color: var(--color-text-base);\n}\n\n.inlineDivider {\n width: var(--spacing-2);\n}\n","import {\n Component,\n Event,\n type EventEmitter,\n h,\n Prop,\n State,\n} from \"@stencil/core\";\n\n@Component({\n tag: \"scout-switch\",\n styleUrl: \"switch.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class ScoutSwitch {\n /**\n * Indicates whether the switch is toggled on or off.\n */\n @Prop() toggled: boolean = false;\n\n @Prop() disabled: boolean = false;\n\n /**\n * Use this prop if you need to connect your switch with another element describing its use, other than the property label.\n */\n @Prop() ariaLabelledby: string;\n\n @Prop() label: string;\n\n @State() ariaId: string;\n\n @Event() scoutSwitchToggled: EventEmitter<{\n toggled: boolean;\n element: HTMLInputElement;\n }>;\n /**\n * Internal event used for form field association.\n */\n @Event() _fieldId: EventEmitter<string>;\n\n componentWillLoad(): Promise<void> | void {\n this.ariaId = `_${Math.random().toString(36).substring(2, 9)}`;\n this._fieldId.emit(this.ariaId);\n }\n\n onClick(event: Event) {\n const switchElement = event.target as HTMLInputElement;\n\n this.scoutSwitchToggled.emit({\n toggled: switchElement.checked,\n element: switchElement,\n });\n }\n\n render() {\n const Tag = this.label && this.label.length ? \"label\" : \"div\";\n return (\n <Tag>\n {this.label}\n <span class=\"inlineDivider\"></span>\n <input\n class=\"switch\"\n onChange={(event) => this.onClick(event)}\n type=\"checkbox\"\n id={this.ariaId}\n aria-labelledby={this.ariaLabelledby}\n aria-disabled={this.disabled}\n disabled={this.disabled}\n checked={this.toggled}\n />\n </Tag>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,SAAS,GAAG,omDAAomD;;MCgBzmD,WAAW,GAAA,MAAA;;;;;;AACtB;;AAEG;IACK,OAAO,GAAY,KAAK;IAExB,QAAQ,GAAY,KAAK;AAEjC;;AAEG;AACK,IAAA,cAAc;AAEd,IAAA,KAAK;AAEJ,IAAA,MAAM;AAEN,IAAA,kBAAkB;AAI3B;;AAEG;AACM,IAAA,QAAQ;IAEjB,iBAAiB,GAAA;QACf,IAAI,CAAC,MAAM,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;QAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAGjC,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,MAAM,aAAa,GAAG,KAAK,CAAC,MAA0B;AAEtD,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC3B,OAAO,EAAE,aAAa,CAAC,OAAO;AAC9B,YAAA,OAAO,EAAE,aAAa;AACvB,SAAA,CAAC;;IAGJ,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,KAAK;QAC7D,QACE,EAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACD,IAAI,CAAC,KAAK,EACX,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAQ,CAAA,EACnC,CACE,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,QAAQ,EACd,QAAQ,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EACxC,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,MAAM,EAAA,iBAAA,EACE,IAAI,CAAC,cAAc,mBACrB,IAAI,CAAC,QAAQ,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAA,CACrB,CACE;;;;;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as
|
|
1
|
+
import{p as a,g as e,b as t}from"./p-DByXnE9g.js";export{s as setNonce}from"./p-DByXnE9g.js";var l=()=>{const e=import.meta.url;const t={};if(e!==""){t.resourcesUrl=new URL(".",e).href}return a(t)};l().then((async a=>{await e();return t([["p-c0c3a4af",[[273,"scout-bottom-bar"]]],["p-e7602729",[[273,"scout-bottom-bar-item",{type:[1],href:[1],icon:[1],label:[1],active:[4]}]]],["p-99329c64",[[273,"scout-button",{type:[1],variant:[1],icon:[1]}]]],["p-383736c1",[[273,"scout-card"]]],["p-24632b65",[[258,"scout-checkbox",{checked:[4],disabled:[4],ariaLabelledby:[1,"aria-labelledby"],label:[1],ariaId:[32]}]]],["p-7245a55a",[[262,"scout-field",{label:[1],helpText:[1,"help-text"],inputId:[32],errorText:[32],errorHidden:[32]},[[0,"_fieldId","catchFieldId"],[0,"scoutInputChange","handleInputChange"],[0,"scoutBlur","handleValidationBlur"]]]]],["p-9b7c270d",[[258,"scout-input",{type:[1],inputmode:[1],pattern:[1],value:[1],disabled:[4],validate:[16],ariaId:[32]}]]],["p-2b434594",[[273,"scout-switch",{toggled:[4],disabled:[4],ariaLabelledby:[1,"aria-labelledby"],label:[1],ariaId:[32]}]]]],a)}));
|
|
2
2
|
//# sourceMappingURL=ui-webc.esm.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scouterna/ui-webc",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Scouterna Design System Web Components",
|
|
6
6
|
"main": "dist/index.cjs.js",
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
"class-variance-authority": "^0.7.1",
|
|
46
46
|
"clsx": "^2.1.1",
|
|
47
47
|
"iconoir": "^7.11.0",
|
|
48
|
+
"@tabler/icons": "^3.35.0",
|
|
48
49
|
"@scouterna/design-tokens": "^0.0.2"
|
|
49
50
|
},
|
|
50
51
|
"devDependencies": {
|
|
File without changes
|