@mcp-b/wc-support 0.2.19 → 0.3.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/base/sigvelo-element.d.ts +37 -1
- package/dist/base/sigvelo-element.d.ts.map +1 -1
- package/dist/base/sigvelo-element.js +107 -9
- package/dist/base/sigvelo-element.js.map +1 -1
- package/dist/styles/form-control.styles.d.ts.map +1 -1
- package/dist/styles/form-control.styles.js +22 -8
- package/dist/styles/form-control.styles.js.map +1 -1
- package/dist/utilities/drag.d.ts +6 -3
- package/dist/utilities/drag.d.ts.map +1 -1
- package/dist/utilities/drag.js +33 -39
- package/dist/utilities/drag.js.map +1 -1
- package/dist/utilities/loader.d.ts.map +1 -1
- package/dist/utilities/loader.js +16 -2
- package/dist/utilities/loader.js.map +1 -1
- package/dist/utilities/long-press.d.ts +10 -1
- package/dist/utilities/long-press.d.ts.map +1 -1
- package/dist/utilities/long-press.js +18 -13
- package/dist/utilities/long-press.js.map +1 -1
- package/package.json +2 -2
|
@@ -6,7 +6,7 @@ export declare class SigveloElement extends LitElement {
|
|
|
6
6
|
static shadowRootOptions: ShadowRootInit;
|
|
7
7
|
/**
|
|
8
8
|
* Enables slot detection for a component. When enabled, named slots that have content will be automatically detected
|
|
9
|
-
* and their names will be added to a Set in the reactive `this.
|
|
9
|
+
* and their names will be added to a Set in the reactive `this.slotsWithContent` property.
|
|
10
10
|
*/
|
|
11
11
|
static observeSlots: boolean;
|
|
12
12
|
protected internals: ElementInternals;
|
|
@@ -20,6 +20,7 @@ export declare class SigveloElement extends LitElement {
|
|
|
20
20
|
lang: string;
|
|
21
21
|
constructor();
|
|
22
22
|
connectedCallback(): void;
|
|
23
|
+
protected createRenderRoot(): HTMLElement | DocumentFragment;
|
|
23
24
|
/**
|
|
24
25
|
* Updates the slotsWithContent Set with currently populated slots
|
|
25
26
|
*/
|
|
@@ -47,6 +48,41 @@ interface WhenSlottedOptions {
|
|
|
47
48
|
/** The base class for all Sigvelo form controls. */
|
|
48
49
|
export declare abstract class SigveloFormControlElement extends SigveloElement {
|
|
49
50
|
static formAssociated: boolean;
|
|
51
|
+
/** Whether the control itself is disabled, independently of its containing fieldset. */
|
|
52
|
+
abstract disabled: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the control currently fails its constraints. Controls compute this alongside the flags they hand to
|
|
55
|
+
* `ElementInternals.setValidity()`, because "invalid" means something different for a checkbox, a slider, and a
|
|
56
|
+
* combobox — and a few controls deliberately report invalid without setting a platform flag.
|
|
57
|
+
*/
|
|
58
|
+
protected isInvalid: boolean;
|
|
59
|
+
/** Whether the user has changed the value and moved on: a `change` event, a committed drag, a chosen item. */
|
|
60
|
+
protected hadUserInteraction: boolean;
|
|
61
|
+
/** Whether the control's form has been submitted while this control was invalid. */
|
|
62
|
+
protected wasSubmitted: boolean;
|
|
63
|
+
constructor();
|
|
64
|
+
connectedCallback(): void;
|
|
65
|
+
disconnectedCallback(): void;
|
|
66
|
+
/** The platform includes inherited fieldset state and the first-legend exception. */
|
|
67
|
+
protected get effectiveDisabled(): boolean;
|
|
68
|
+
/** @internal Called when the platform changes the control's disabled state. */
|
|
69
|
+
formDisabledCallback(): void;
|
|
70
|
+
/**
|
|
71
|
+
* @internal Called when the form is reset. Controls that override this to restore their own default value must call
|
|
72
|
+
* `super.formResetCallback()`.
|
|
73
|
+
*/
|
|
74
|
+
formResetCallback(): void;
|
|
75
|
+
/**
|
|
76
|
+
* Submits the control's associated form the way pressing Enter in a native text input would, doing nothing when the
|
|
77
|
+
* control is not in a form.
|
|
78
|
+
*
|
|
79
|
+
* The form is submitted with its first native submit button as the submitter, because a form-associated custom
|
|
80
|
+
* element cannot be one yet (https://github.com/WICG/webcomponents/issues/814). A form with no native submit button
|
|
81
|
+
* is submitted with no submitter, which is what the platform does too.
|
|
82
|
+
*/
|
|
83
|
+
protected submitAssociatedForm(): void;
|
|
84
|
+
private handleHostInvalid;
|
|
85
|
+
private syncUserValidityStates;
|
|
50
86
|
/**
|
|
51
87
|
* For form controls, components must implement this and set it to the element that should receive focus when
|
|
52
88
|
* reporting validation errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sigvelo-element.d.ts","sourceRoot":"","sources":["../../src/base/sigvelo-element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAIvC,gDAAgD;AAChD,qBAAa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,cAAc,UAAS;IAC9B,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAGtC;IAEF;;;OAGG;IACH,MAAM,CAAC,YAAY,UAAS;IAE5B,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC;IAE9B;;;OAGG;IACM,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAGvC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;;IAOzB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"sigvelo-element.d.ts","sourceRoot":"","sources":["../../src/base/sigvelo-element.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAIvC,gDAAgD;AAChD,qBAAa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,cAAc,UAAS;IAC9B,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAGtC;IAEF;;;OAGG;IACH,MAAM,CAAC,YAAY,UAAS;IAE5B,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC;IAE9B;;;OAGG;IACM,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAGvC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;;IAOzB,iBAAiB;IAUjB,SAAS,CAAC,gBAAgB;IAe1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAY9B,gBAAgB;IACT,YAAY;QACjB,kDAAkD;2BAC/B,MAAM,UAAU,OAAO;QAQ1C,+EAA+E;2BAC5D,MAAM;MAGzB;IAEF;;;OAGG;IACH,SAAS,CAAC,WAAW,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;CAWxC;AAED,UAAU,kBAAkB;IAC1B;;;OAGG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,oDAAoD;AACpD,8BAAsB,yBAA0B,SAAQ,cAAc;IACpE,MAAM,CAAC,cAAc,UAAQ;IAE7B,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAa3B;;;;OAIG;IACM,SAAS,CAAC,SAAS,UAAS;IAErC,8GAA8G;IACrG,SAAS,CAAC,kBAAkB,UAAS;IAE9C,oFAAoF;IAC3E,SAAS,CAAC,YAAY,UAAS;;IAWxC,iBAAiB;IAKjB,oBAAoB;IAKpB,qFAAqF;IACrF,SAAS,KAAK,iBAAiB,YAE9B;IAED,+EAA+E;IAC/E,oBAAoB;IAKpB;;;OAGG;IACH,iBAAiB;IAMjB;;;;;;;OAOG;IACH,SAAS,CAAC,oBAAoB;IAgB9B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,sBAAsB;IAM9B;;;OAGG;IACH,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,WAAW,CAAC;IAEtD,4FAA4F;IAC5F,IAAW,QAAQ,8BAGlB;IAED,4GAA4G;IAC5G,IAAW,iBAAiB,WAE3B;IAED;;;OAGG;IACI,aAAa;IAIpB;;;;OAIG;IACI,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAoBxC,kGAAkG;IAClG,SAAS,CAAC,iBAAiB,IAAI,MAAM;IAIrC;;;;OAIG;IACI,cAAc;CAGtB"}
|
|
@@ -40,13 +40,16 @@ export class SigveloElement extends LitElement {
|
|
|
40
40
|
// If enabled, observe slots up front to prevent extra renders
|
|
41
41
|
if (constructor.observeSlots) {
|
|
42
42
|
this.updateSlotsWithContent();
|
|
43
|
-
// Observe slot changes
|
|
44
|
-
this.shadowRoot.addEventListener("slotchange", () => {
|
|
45
|
-
this.updateSlotsWithContent();
|
|
46
|
-
});
|
|
47
43
|
}
|
|
48
|
-
|
|
49
|
-
|
|
44
|
+
}
|
|
45
|
+
createRenderRoot() {
|
|
46
|
+
const root = super.createRenderRoot();
|
|
47
|
+
if (this.constructor.observeSlots) {
|
|
48
|
+
root.addEventListener("slotchange", () => this.updateSlotsWithContent());
|
|
49
|
+
}
|
|
50
|
+
// Create shadow-root setup once, including when the element is reconnected.
|
|
51
|
+
root.prepend(document.createComment(` Sigvelo · https://design-system.sigvelo.com/docs/components/${stripElementPrefix(this.localName)} `));
|
|
52
|
+
return root;
|
|
50
53
|
}
|
|
51
54
|
/**
|
|
52
55
|
* Updates the slotsWithContent Set with currently populated slots
|
|
@@ -54,8 +57,8 @@ export class SigveloElement extends LitElement {
|
|
|
54
57
|
updateSlotsWithContent() {
|
|
55
58
|
const newSlots = new Set([...this.querySelectorAll(":scope > [slot]")].map((el) => el.slot));
|
|
56
59
|
// Only trigger an update if the slots have actually changed
|
|
57
|
-
if (
|
|
58
|
-
|
|
60
|
+
if (newSlots.size !== this.slotsWithContent.size ||
|
|
61
|
+
[...newSlots].some((name) => !this.slotsWithContent.has(name))) {
|
|
59
62
|
this.slotsWithContent = newSlots;
|
|
60
63
|
}
|
|
61
64
|
}
|
|
@@ -80,7 +83,7 @@ SigveloElement.shadowRootOptions = {
|
|
|
80
83
|
};
|
|
81
84
|
/**
|
|
82
85
|
* Enables slot detection for a component. When enabled, named slots that have content will be automatically detected
|
|
83
|
-
* and their names will be added to a Set in the reactive `this.
|
|
86
|
+
* and their names will be added to a Set in the reactive `this.slotsWithContent` property.
|
|
84
87
|
*/
|
|
85
88
|
SigveloElement.observeSlots = false;
|
|
86
89
|
__decorate([
|
|
@@ -94,6 +97,92 @@ __decorate([
|
|
|
94
97
|
], SigveloElement.prototype, "lang", void 0);
|
|
95
98
|
/** The base class for all Sigvelo form controls. */
|
|
96
99
|
export class SigveloFormControlElement extends SigveloElement {
|
|
100
|
+
constructor() {
|
|
101
|
+
super();
|
|
102
|
+
//
|
|
103
|
+
// The user-validity lifecycle. `user-valid` and `user-invalid` stay off until the user has changed the value and
|
|
104
|
+
// moved on (e.g. a `change` event) or the form has been submitted, so validation styling never fires at someone who
|
|
105
|
+
// has not filled the form out yet. This class owns every transition between the three flags below; a control only
|
|
106
|
+
// reports whether it is currently invalid and when the user has interacted with it.
|
|
107
|
+
//
|
|
108
|
+
// Controls re-declare all three as their own `@state()`. That is deliberate: custom-elements-manifest does not
|
|
109
|
+
// resolve members inherited from another package, so a control that drops its declaration also drops the property
|
|
110
|
+
// from its published manifest and its generated JSX types.
|
|
111
|
+
//
|
|
112
|
+
/**
|
|
113
|
+
* Whether the control currently fails its constraints. Controls compute this alongside the flags they hand to
|
|
114
|
+
* `ElementInternals.setValidity()`, because "invalid" means something different for a checkbox, a slider, and a
|
|
115
|
+
* combobox — and a few controls deliberately report invalid without setting a platform flag.
|
|
116
|
+
*/
|
|
117
|
+
this.isInvalid = false;
|
|
118
|
+
/** Whether the user has changed the value and moved on: a `change` event, a committed drag, a chosen item. */
|
|
119
|
+
this.hadUserInteraction = false;
|
|
120
|
+
/** Whether the control's form has been submitted while this control was invalid. */
|
|
121
|
+
this.wasSubmitted = false;
|
|
122
|
+
// Re-apply the user-validity states after every update. This runs as a reactive controller rather than an
|
|
123
|
+
// `updated()` override because controls override `updated()` freely, and a forgotten `super.updated()` would
|
|
124
|
+
// silently drop their validation styling.
|
|
125
|
+
this.addController({ hostUpdated: () => this.syncUserValidityStates() });
|
|
126
|
+
}
|
|
127
|
+
connectedCallback() {
|
|
128
|
+
super.connectedCallback();
|
|
129
|
+
this.addEventListener("invalid", this.handleHostInvalid);
|
|
130
|
+
}
|
|
131
|
+
disconnectedCallback() {
|
|
132
|
+
super.disconnectedCallback();
|
|
133
|
+
this.removeEventListener("invalid", this.handleHostInvalid);
|
|
134
|
+
}
|
|
135
|
+
/** The platform includes inherited fieldset state and the first-legend exception. */
|
|
136
|
+
get effectiveDisabled() {
|
|
137
|
+
return this.disabled || this.matches(":disabled");
|
|
138
|
+
}
|
|
139
|
+
/** @internal Called when the platform changes the control's disabled state. */
|
|
140
|
+
formDisabledCallback() {
|
|
141
|
+
this.customStates.set("disabled", this.effectiveDisabled);
|
|
142
|
+
this.requestUpdate();
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* @internal Called when the form is reset. Controls that override this to restore their own default value must call
|
|
146
|
+
* `super.formResetCallback()`.
|
|
147
|
+
*/
|
|
148
|
+
formResetCallback() {
|
|
149
|
+
this.isInvalid = false;
|
|
150
|
+
this.hadUserInteraction = false;
|
|
151
|
+
this.wasSubmitted = false;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Submits the control's associated form the way pressing Enter in a native text input would, doing nothing when the
|
|
155
|
+
* control is not in a form.
|
|
156
|
+
*
|
|
157
|
+
* The form is submitted with its first native submit button as the submitter, because a form-associated custom
|
|
158
|
+
* element cannot be one yet (https://github.com/WICG/webcomponents/issues/814). A form with no native submit button
|
|
159
|
+
* is submitted with no submitter, which is what the platform does too.
|
|
160
|
+
*/
|
|
161
|
+
submitAssociatedForm() {
|
|
162
|
+
const form = this.internals.form;
|
|
163
|
+
if (!form)
|
|
164
|
+
return;
|
|
165
|
+
// `form.elements` is a collection of plain `Element`s and really does contain more than buttons and inputs —
|
|
166
|
+
// `<fieldset>`, `<output>`, and this library's own form-associated elements are all in there — so `type` is only
|
|
167
|
+
// legible once the element is known to be one of the two that can submit.
|
|
168
|
+
const submitter = [...form.elements].find((element) => (element instanceof HTMLButtonElement || element instanceof HTMLInputElement) &&
|
|
169
|
+
element.type === "submit");
|
|
170
|
+
form.requestSubmit(submitter);
|
|
171
|
+
}
|
|
172
|
+
handleHostInvalid() {
|
|
173
|
+
//
|
|
174
|
+
// We need to simulate the :user-invalid state when the form is submitted. Alas, there's no way to listen to form
|
|
175
|
+
// submit because validation occurs before the `formdata` and `submit` events. The only way I've found to hook into
|
|
176
|
+
// it is by listening to the `invalid` event on the host element, which is dispatched by the browser when the form
|
|
177
|
+
// is submitted and the form-associated custom element is invalid.
|
|
178
|
+
//
|
|
179
|
+
this.wasSubmitted = true;
|
|
180
|
+
}
|
|
181
|
+
syncUserValidityStates() {
|
|
182
|
+
const shouldReport = this.hadUserInteraction || this.wasSubmitted;
|
|
183
|
+
this.customStates.set("user-invalid", shouldReport && this.isInvalid);
|
|
184
|
+
this.customStates.set("user-valid", shouldReport && !this.isInvalid);
|
|
185
|
+
}
|
|
97
186
|
/** For form-associated elements, this returns the current validity state of the control. */
|
|
98
187
|
get validity() {
|
|
99
188
|
const constructor = this.constructor;
|
|
@@ -144,4 +233,13 @@ export class SigveloFormControlElement extends SigveloElement {
|
|
|
144
233
|
}
|
|
145
234
|
}
|
|
146
235
|
SigveloFormControlElement.formAssociated = true;
|
|
236
|
+
__decorate([
|
|
237
|
+
state()
|
|
238
|
+
], SigveloFormControlElement.prototype, "isInvalid", void 0);
|
|
239
|
+
__decorate([
|
|
240
|
+
state()
|
|
241
|
+
], SigveloFormControlElement.prototype, "hadUserInteraction", void 0);
|
|
242
|
+
__decorate([
|
|
243
|
+
state()
|
|
244
|
+
], SigveloFormControlElement.prototype, "wasSubmitted", void 0);
|
|
147
245
|
//# sourceMappingURL=sigvelo-element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sigvelo-element.js","sourceRoot":"","sources":["../../src/base/sigvelo-element.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,gDAAgD;AAChD,MAAM,OAAO,cAAe,SAAQ,UAAU;IA0B5C;QACE,KAAK,EAAE,CAAC;QAXV;;;WAGG;QACM,qBAAgB,GAAgB,IAAI,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sigvelo-element.js","sourceRoot":"","sources":["../../src/base/sigvelo-element.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-control.styles.d.ts","sourceRoot":"","sources":["../../src/styles/form-control.styles.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;;AACH,
|
|
1
|
+
{"version":3,"file":"form-control.styles.d.ts","sourceRoot":"","sources":["../../src/styles/form-control.styles.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;;AACH,wBAsVE"}
|
|
@@ -10,29 +10,35 @@ export default css `
|
|
|
10
10
|
display: flex;
|
|
11
11
|
flex-direction: column;
|
|
12
12
|
width: 100%;
|
|
13
|
-
gap:
|
|
14
|
-
|
|
13
|
+
gap: var(--sigvelo-spacing-1);
|
|
14
|
+
font-family: var(--sigvelo-font-ui);
|
|
15
|
+
line-height: var(--sigvelo-control-line-height-md);
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
/* Sizes */
|
|
18
19
|
:host([size="xs"]) {
|
|
19
20
|
font-size: var(--sigvelo-control-text-xs);
|
|
21
|
+
line-height: var(--sigvelo-control-line-height-xs);
|
|
20
22
|
}
|
|
21
23
|
|
|
22
24
|
:host([size="sm"]) {
|
|
23
25
|
font-size: var(--sigvelo-control-text-sm);
|
|
26
|
+
line-height: var(--sigvelo-control-line-height-sm);
|
|
24
27
|
}
|
|
25
28
|
|
|
26
29
|
:host([size="md"]) {
|
|
27
30
|
font-size: var(--sigvelo-control-text-md);
|
|
31
|
+
line-height: var(--sigvelo-control-line-height-md);
|
|
28
32
|
}
|
|
29
33
|
|
|
30
34
|
:host([size="lg"]) {
|
|
31
35
|
font-size: var(--sigvelo-control-text-lg);
|
|
36
|
+
line-height: var(--sigvelo-control-line-height-lg);
|
|
32
37
|
}
|
|
33
38
|
|
|
34
39
|
:host([size="xl"]) {
|
|
35
40
|
font-size: var(--sigvelo-control-text-xl);
|
|
41
|
+
line-height: var(--sigvelo-control-line-height-xl);
|
|
36
42
|
}
|
|
37
43
|
|
|
38
44
|
#label {
|
|
@@ -217,9 +223,8 @@ export default css `
|
|
|
217
223
|
color: var(--sigvelo-color-text);
|
|
218
224
|
|
|
219
225
|
&:has(#text-box:focus-visible) {
|
|
220
|
-
outline: var(--sigvelo-
|
|
221
|
-
|
|
222
|
-
outline-offset: calc(-1 * var(--sigvelo-border-width));
|
|
226
|
+
outline: var(--sigvelo-focus-ring);
|
|
227
|
+
outline-offset: var(--sigvelo-focus-offset);
|
|
223
228
|
}
|
|
224
229
|
}
|
|
225
230
|
|
|
@@ -232,15 +237,16 @@ export default css `
|
|
|
232
237
|
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
233
238
|
|
|
234
239
|
&:has(#text-box:focus-visible) {
|
|
235
|
-
outline: var(--sigvelo-
|
|
236
|
-
|
|
237
|
-
outline-offset: calc(-1 * var(--sigvelo-border-width));
|
|
240
|
+
outline: var(--sigvelo-focus-ring);
|
|
241
|
+
outline-offset: var(--sigvelo-focus-offset);
|
|
238
242
|
}
|
|
239
243
|
}
|
|
240
244
|
|
|
241
245
|
/* Sizes */
|
|
242
246
|
#visual-box.xs {
|
|
247
|
+
padding-inline: var(--sigvelo-control-padding-inline-xs);
|
|
243
248
|
font-size: var(--sigvelo-control-text-xs);
|
|
249
|
+
line-height: var(--sigvelo-control-line-height-xs);
|
|
244
250
|
|
|
245
251
|
#text-box {
|
|
246
252
|
min-height: calc(var(--sigvelo-control-height-xs) - var(--sigvelo-border-width) * 2);
|
|
@@ -248,7 +254,9 @@ export default css `
|
|
|
248
254
|
}
|
|
249
255
|
|
|
250
256
|
#visual-box.sm {
|
|
257
|
+
padding-inline: var(--sigvelo-control-padding-inline-sm);
|
|
251
258
|
font-size: var(--sigvelo-control-text-sm);
|
|
259
|
+
line-height: var(--sigvelo-control-line-height-sm);
|
|
252
260
|
|
|
253
261
|
#text-box {
|
|
254
262
|
min-height: calc(var(--sigvelo-control-height-sm) - var(--sigvelo-border-width) * 2);
|
|
@@ -256,7 +264,9 @@ export default css `
|
|
|
256
264
|
}
|
|
257
265
|
|
|
258
266
|
#visual-box.md {
|
|
267
|
+
padding-inline: var(--sigvelo-control-padding-inline-md);
|
|
259
268
|
font-size: var(--sigvelo-control-text-md);
|
|
269
|
+
line-height: var(--sigvelo-control-line-height-md);
|
|
260
270
|
|
|
261
271
|
#text-box {
|
|
262
272
|
min-height: calc(var(--sigvelo-control-height-md) - var(--sigvelo-border-width) * 2);
|
|
@@ -264,7 +274,9 @@ export default css `
|
|
|
264
274
|
}
|
|
265
275
|
|
|
266
276
|
#visual-box.lg {
|
|
277
|
+
padding-inline: var(--sigvelo-control-padding-inline-lg);
|
|
267
278
|
font-size: var(--sigvelo-control-text-lg);
|
|
279
|
+
line-height: var(--sigvelo-control-line-height-lg);
|
|
268
280
|
|
|
269
281
|
#text-box {
|
|
270
282
|
min-height: calc(var(--sigvelo-control-height-lg) - var(--sigvelo-border-width) * 2);
|
|
@@ -272,7 +284,9 @@ export default css `
|
|
|
272
284
|
}
|
|
273
285
|
|
|
274
286
|
#visual-box.xl {
|
|
287
|
+
padding-inline: var(--sigvelo-control-padding-inline-xl);
|
|
275
288
|
font-size: var(--sigvelo-control-text-xl);
|
|
289
|
+
line-height: var(--sigvelo-control-line-height-xl);
|
|
276
290
|
|
|
277
291
|
#text-box {
|
|
278
292
|
min-height: calc(var(--sigvelo-control-height-xl) - var(--sigvelo-border-width) * 2);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-control.styles.js","sourceRoot":"","sources":["../../src/styles/form-control.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;;;GAKG;AACH,eAAe,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"form-control.styles.js","sourceRoot":"","sources":["../../src/styles/form-control.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;;;GAKG;AACH,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsVjB,CAAC"}
|
package/dist/utilities/drag.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* This by itself will not make the element draggable, but it provides the events and callbacks necessary to facilitate
|
|
5
5
|
* dragging. Use the `clientX` and `clientY` arguments of each callback to update the UI as desired when dragging.
|
|
6
6
|
*
|
|
7
|
+
* Pointer events provide one drag path for mouse, pen, and touch.
|
|
7
8
|
* Drag functionality will be enabled as soon as the constructor is called. A `start()` and `stop()` method can be used
|
|
8
9
|
* to start and stop it, if needed.
|
|
9
10
|
*
|
|
@@ -22,11 +23,13 @@ export declare class DraggableElement {
|
|
|
22
23
|
private element;
|
|
23
24
|
private isActive;
|
|
24
25
|
private isDragging;
|
|
26
|
+
private pointerId;
|
|
25
27
|
private options;
|
|
26
|
-
constructor(el:
|
|
28
|
+
constructor(el: HTMLElement, options: Partial<DraggableElementOptions>);
|
|
27
29
|
private handleDragStart;
|
|
28
30
|
private handleDragStop;
|
|
29
31
|
private handleDragMove;
|
|
32
|
+
private releaseDrag;
|
|
30
33
|
/** Start listening to drags. */
|
|
31
34
|
start(): void;
|
|
32
35
|
/** Stop listening to drags. */
|
|
@@ -39,7 +42,7 @@ export interface DraggableElementOptions {
|
|
|
39
42
|
start: (clientX: number, clientY: number) => void;
|
|
40
43
|
/** Runs as the user is dragging. This may execute often, so avoid expensive operations. */
|
|
41
44
|
move: (clientX: number, clientY: number) => void;
|
|
42
|
-
/** Runs when dragging ends. */
|
|
43
|
-
stop: (clientX: number, clientY: number) => void;
|
|
45
|
+
/** Runs when dragging ends; canceled is true when the browser interrupts the gesture. */
|
|
46
|
+
stop: (clientX: number, clientY: number, canceled: boolean) => void;
|
|
44
47
|
}
|
|
45
48
|
//# sourceMappingURL=drag.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drag.d.ts","sourceRoot":"","sources":["../../src/utilities/drag.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"drag.d.ts","sourceRoot":"","sources":["../../src/utilities/drag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,OAAO,CAA0B;gBAE7B,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,uBAAuB,CAAC;IAYtE,OAAO,CAAC,eAAe,CAYrB;IAEF,OAAO,CAAC,cAAc,CAMpB;IAEF,OAAO,CAAC,cAAc,CAQpB;IAEF,OAAO,CAAC,WAAW;IAWnB,gCAAgC;IACzB,KAAK;IAQZ,+BAA+B;IACxB,IAAI;IAMX,0CAA0C;IACnC,MAAM,CAAC,QAAQ,CAAC,EAAE,OAAO;CASjC;AAED,MAAM,WAAW,uBAAuB;IACtC,iCAAiC;IACjC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,2FAA2F;IAC3F,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,yFAAyF;IACzF,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CACrE"}
|
package/dist/utilities/drag.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
const supportsTouch = typeof window !== "undefined" && "ontouchstart" in window;
|
|
2
1
|
/**
|
|
3
2
|
* Attaches the necessary events to make an element draggable.
|
|
4
3
|
*
|
|
5
4
|
* This by itself will not make the element draggable, but it provides the events and callbacks necessary to facilitate
|
|
6
5
|
* dragging. Use the `clientX` and `clientY` arguments of each callback to update the UI as desired when dragging.
|
|
7
6
|
*
|
|
7
|
+
* Pointer events provide one drag path for mouse, pen, and touch.
|
|
8
8
|
* Drag functionality will be enabled as soon as the constructor is called. A `start()` and `stop()` method can be used
|
|
9
9
|
* to start and stop it, if needed.
|
|
10
10
|
*
|
|
@@ -24,41 +24,35 @@ export class DraggableElement {
|
|
|
24
24
|
this.isActive = false;
|
|
25
25
|
this.isDragging = false;
|
|
26
26
|
this.handleDragStart = (event) => {
|
|
27
|
-
|
|
28
|
-
const clientY = "touches" in event ? event.touches[0].clientY : event.clientY;
|
|
29
|
-
if (this.isDragging ||
|
|
30
|
-
// Prevent right-clicks from triggering drags
|
|
31
|
-
(!supportsTouch && event.buttons > 1)) {
|
|
27
|
+
if (this.isDragging || event.button !== 0 || event.isPrimary === false)
|
|
32
28
|
return;
|
|
33
|
-
}
|
|
34
29
|
this.isDragging = true;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
30
|
+
this.pointerId = event.pointerId;
|
|
31
|
+
// Synthetic events have no active pointer to capture.
|
|
32
|
+
if (event.isTrusted)
|
|
33
|
+
this.element.setPointerCapture(event.pointerId);
|
|
39
34
|
document.addEventListener("pointerup", this.handleDragStop);
|
|
35
|
+
document.addEventListener("pointercancel", this.handleDragStop);
|
|
40
36
|
document.addEventListener("pointermove", this.handleDragMove);
|
|
41
|
-
|
|
42
|
-
document.addEventListener("touchmove", this.handleDragMove);
|
|
43
|
-
this.options.start(clientX, clientY);
|
|
37
|
+
this.options.start(event.clientX, event.clientY);
|
|
44
38
|
};
|
|
45
39
|
this.handleDragStop = (event) => {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
this.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
document.removeEventListener("touchend", this.handleDragStop);
|
|
53
|
-
document.removeEventListener("touchmove", this.handleDragMove);
|
|
54
|
-
this.options.stop(clientX, clientY);
|
|
40
|
+
if (!this.isDragging || event.pointerId !== this.pointerId)
|
|
41
|
+
return;
|
|
42
|
+
this.releaseDrag();
|
|
43
|
+
if (this.element.isConnected) {
|
|
44
|
+
this.options.stop(event.clientX, event.clientY, event.type === "pointercancel");
|
|
45
|
+
}
|
|
55
46
|
};
|
|
56
47
|
this.handleDragMove = (event) => {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
48
|
+
if (!this.isDragging || event.pointerId !== this.pointerId)
|
|
49
|
+
return;
|
|
50
|
+
if (!this.element.isConnected) {
|
|
51
|
+
this.stop();
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
60
54
|
window.getSelection()?.removeAllRanges();
|
|
61
|
-
this.options.move(clientX, clientY);
|
|
55
|
+
this.options.move(event.clientX, event.clientY);
|
|
62
56
|
};
|
|
63
57
|
this.element = el;
|
|
64
58
|
this.options = {
|
|
@@ -69,28 +63,28 @@ export class DraggableElement {
|
|
|
69
63
|
};
|
|
70
64
|
this.start();
|
|
71
65
|
}
|
|
66
|
+
releaseDrag() {
|
|
67
|
+
document.removeEventListener("pointerup", this.handleDragStop);
|
|
68
|
+
document.removeEventListener("pointercancel", this.handleDragStop);
|
|
69
|
+
document.removeEventListener("pointermove", this.handleDragMove);
|
|
70
|
+
if (this.pointerId !== undefined && this.element.hasPointerCapture(this.pointerId)) {
|
|
71
|
+
this.element.releasePointerCapture(this.pointerId);
|
|
72
|
+
}
|
|
73
|
+
this.pointerId = undefined;
|
|
74
|
+
this.isDragging = false;
|
|
75
|
+
}
|
|
72
76
|
/** Start listening to drags. */
|
|
73
77
|
start() {
|
|
74
|
-
if (!this.isActive) {
|
|
78
|
+
if (!this.isActive && this.element.isConnected) {
|
|
75
79
|
this.element.addEventListener("pointerdown", this.handleDragStart);
|
|
76
|
-
if (supportsTouch) {
|
|
77
|
-
this.element.addEventListener("touchstart", this.handleDragStart);
|
|
78
|
-
}
|
|
79
80
|
this.isActive = true;
|
|
80
81
|
}
|
|
81
82
|
}
|
|
82
83
|
/** Stop listening to drags. */
|
|
83
84
|
stop() {
|
|
84
|
-
|
|
85
|
-
document.removeEventListener("pointermove", this.handleDragMove);
|
|
86
|
-
document.removeEventListener("touchend", this.handleDragStop);
|
|
87
|
-
document.removeEventListener("touchmove", this.handleDragMove);
|
|
85
|
+
this.releaseDrag();
|
|
88
86
|
this.element.removeEventListener("pointerdown", this.handleDragStart);
|
|
89
|
-
if (supportsTouch) {
|
|
90
|
-
this.element.removeEventListener("touchstart", this.handleDragStart);
|
|
91
|
-
}
|
|
92
87
|
this.isActive = false;
|
|
93
|
-
this.isDragging = false;
|
|
94
88
|
}
|
|
95
89
|
/** Starts or stops the drag listeners. */
|
|
96
90
|
toggle(isActive) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drag.js","sourceRoot":"","sources":["../../src/utilities/drag.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"drag.js","sourceRoot":"","sources":["../../src/utilities/drag.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/utilities/loader.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AA6CxE,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,QAUlD;AAED;;GAEG;AACH,wBAAgB,UAAU,SAEzB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,iBAsDhE;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/utilities/loader.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AA6CxE,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,QAUlD;AAED;;GAEG;AACH,wBAAgB,UAAU,SAEzB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,iBAsDhE;AA8BD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,SAAO,QAkB/C"}
|
package/dist/utilities/loader.js
CHANGED
|
@@ -106,6 +106,17 @@ export async function discoverElements(root) {
|
|
|
106
106
|
detail: { registered, unknown },
|
|
107
107
|
}));
|
|
108
108
|
}
|
|
109
|
+
function isTurboBeforeRender(event) {
|
|
110
|
+
if (!(event instanceof CustomEvent))
|
|
111
|
+
return false;
|
|
112
|
+
const detail = event.detail;
|
|
113
|
+
if (typeof detail !== "object" || detail === null)
|
|
114
|
+
return false;
|
|
115
|
+
return ("newBody" in detail &&
|
|
116
|
+
detail.newBody instanceof HTMLElement &&
|
|
117
|
+
"resume" in detail &&
|
|
118
|
+
typeof detail.resume === "function");
|
|
119
|
+
}
|
|
109
120
|
/**
|
|
110
121
|
* Many multi-page applications (MPAs) use Hotwire: Turbo to provide a SPA-like experience for users. When visiting
|
|
111
122
|
* links, Turbo intercepts the click, fetches the new page, and updates metadata and content without redirecting,
|
|
@@ -122,7 +133,10 @@ export async function discoverElements(root) {
|
|
|
122
133
|
*/
|
|
123
134
|
export function preventTurboFouce(timeout = 2000) {
|
|
124
135
|
document.addEventListener("turbo:before-render", async (event) => {
|
|
125
|
-
|
|
136
|
+
// Anything else dispatched under this name is not Turbo's render, and pausing it would leave the page stuck.
|
|
137
|
+
if (!isTurboBeforeRender(event))
|
|
138
|
+
return;
|
|
139
|
+
const { newBody, resume } = event.detail;
|
|
126
140
|
event.preventDefault();
|
|
127
141
|
try {
|
|
128
142
|
// Wait until all elements are registered or two seconds, whichever comes first
|
|
@@ -132,7 +146,7 @@ export function preventTurboFouce(timeout = 2000) {
|
|
|
132
146
|
]);
|
|
133
147
|
}
|
|
134
148
|
finally {
|
|
135
|
-
|
|
149
|
+
resume();
|
|
136
150
|
}
|
|
137
151
|
});
|
|
138
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/utilities/loader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/utilities/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ export declare class LongPress {
|
|
|
28
28
|
private timeout;
|
|
29
29
|
private startCoords;
|
|
30
30
|
private wasStarted;
|
|
31
|
-
constructor(el:
|
|
31
|
+
constructor(el: HTMLElement, options?: Partial<LongPressOptions>);
|
|
32
32
|
private handlePress;
|
|
33
33
|
private handleMove;
|
|
34
34
|
private handleRelease;
|
|
@@ -64,4 +64,13 @@ export interface LongPressOptions {
|
|
|
64
64
|
/** Whether to override certain styles that prevent touch callouts and user selection during the long press. */
|
|
65
65
|
overrideStyles: boolean;
|
|
66
66
|
}
|
|
67
|
+
declare global {
|
|
68
|
+
interface GlobalEventHandlersEventMap {
|
|
69
|
+
/**
|
|
70
|
+
* The name the library's own components long-press under, so that listening for one is typed like listening for
|
|
71
|
+
* any other Sigvelo event. `eventName` is configurable, and a caller that picks its own name is on its own.
|
|
72
|
+
*/
|
|
73
|
+
"sigvelo-long-press": LongPressEvent;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
67
76
|
//# sourceMappingURL=long-press.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"long-press.d.ts","sourceRoot":"","sources":["../../src/utilities/long-press.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"long-press.d.ts","sourceRoot":"","sources":["../../src/utilities/long-press.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAgC;IAC/C,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,UAAU,CAAS;gBAEf,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAmBhE,OAAO,CAAC,WAAW,CA+BjB;IAEF,OAAO,CAAC,UAAU,CAchB;IAEF,OAAO,CAAC,aAAa,CAQnB;IAEF,iDAAiD;IAC1C,KAAK;IAmBZ,gDAAgD;IACzC,IAAI;CAiBZ;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;gBAE1B,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB;CAIrF;AAED,MAAM,WAAW,oBAAoB;IACnC,iFAAiF;IACjF,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,oGAAoG;IACpG,aAAa,EAAE,UAAU,GAAG,YAAY,CAAC;CAC1C;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAC7B,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,YAAY,EAAE,SAAS,CAAC;IACxB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,+GAA+G;IAC/G,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,2BAA2B;QACnC;;;WAGG;QACH,oBAAoB,EAAE,cAAc,CAAC;KACtC;CACF"}
|
|
@@ -34,8 +34,9 @@ export class LongPress {
|
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
36
36
|
this.startCoords = { x, y };
|
|
37
|
-
|
|
37
|
+
this.handleRelease();
|
|
38
38
|
this.timeout = setTimeout(() => {
|
|
39
|
+
this.handleRelease();
|
|
39
40
|
const longPressEvent = new LongPressEvent(this.options.eventName, this.options.eventOptions, {
|
|
40
41
|
type: event.type === "touchstart" ? "touch" : "pointer",
|
|
41
42
|
originalEvent: event,
|
|
@@ -43,11 +44,13 @@ export class LongPress {
|
|
|
43
44
|
this.target.dispatchEvent(longPressEvent);
|
|
44
45
|
}, this.options.duration);
|
|
45
46
|
// Listen for movement
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
document.addEventListener("touchmove", this.handleMove);
|
|
48
|
+
document.addEventListener("touchend", this.handleRelease);
|
|
49
|
+
document.addEventListener("touchcancel", this.handleRelease);
|
|
48
50
|
if (!this.options.ignorePointerEvents) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
+
document.addEventListener("pointermove", this.handleMove);
|
|
52
|
+
document.addEventListener("pointerup", this.handleRelease);
|
|
53
|
+
document.addEventListener("pointercancel", this.handleRelease);
|
|
51
54
|
}
|
|
52
55
|
};
|
|
53
56
|
this.handleMove = (event) => {
|
|
@@ -59,11 +62,17 @@ export class LongPress {
|
|
|
59
62
|
// Cancel the long press if the delta is too big or 2+ finger touches
|
|
60
63
|
if (deltaRoot > this.options.maxDelta ||
|
|
61
64
|
(isTouchEnabled && event instanceof TouchEvent && event.touches.length > 1)) {
|
|
62
|
-
|
|
65
|
+
this.handleRelease();
|
|
63
66
|
}
|
|
64
67
|
};
|
|
65
68
|
this.handleRelease = () => {
|
|
66
69
|
clearTimeout(this.timeout);
|
|
70
|
+
document.removeEventListener("touchmove", this.handleMove);
|
|
71
|
+
document.removeEventListener("touchend", this.handleRelease);
|
|
72
|
+
document.removeEventListener("touchcancel", this.handleRelease);
|
|
73
|
+
document.removeEventListener("pointermove", this.handleMove);
|
|
74
|
+
document.removeEventListener("pointerup", this.handleRelease);
|
|
75
|
+
document.removeEventListener("pointercancel", this.handleRelease);
|
|
67
76
|
};
|
|
68
77
|
this.target = el;
|
|
69
78
|
this.options = {
|
|
@@ -86,7 +95,7 @@ export class LongPress {
|
|
|
86
95
|
if (this.wasStarted)
|
|
87
96
|
return;
|
|
88
97
|
this.wasStarted = true;
|
|
89
|
-
if (this.options.overrideStyles
|
|
98
|
+
if (this.options.overrideStyles) {
|
|
90
99
|
this.target.style.setProperty("-webkit-touch-callout", "none", "important");
|
|
91
100
|
this.target.style.setProperty("-webkit-user-select", "none", "important");
|
|
92
101
|
this.target.style.setProperty("user-select", "none", "important");
|
|
@@ -99,20 +108,16 @@ export class LongPress {
|
|
|
99
108
|
}
|
|
100
109
|
/** Stops listening for the long press event. */
|
|
101
110
|
stop() {
|
|
102
|
-
|
|
111
|
+
this.handleRelease();
|
|
103
112
|
this.wasStarted = false;
|
|
104
|
-
if (this.options.overrideStyles
|
|
113
|
+
if (this.options.overrideStyles) {
|
|
105
114
|
this.target.style.removeProperty("-webkit-touch-callout");
|
|
106
115
|
this.target.style.removeProperty("-webkit-user-select");
|
|
107
116
|
this.target.style.removeProperty("user-select");
|
|
108
117
|
}
|
|
109
118
|
this.target.removeEventListener("touchstart", this.handlePress);
|
|
110
|
-
this.target.removeEventListener("touchmove", this.handleMove);
|
|
111
|
-
this.target.removeEventListener("touchend", this.handleRelease);
|
|
112
119
|
if (!this.options.ignorePointerEvents) {
|
|
113
120
|
this.target.removeEventListener("pointerdown", this.handlePress);
|
|
114
|
-
this.target.removeEventListener("pointermove", this.handleMove);
|
|
115
|
-
this.target.removeEventListener("pointerup", this.handleRelease);
|
|
116
121
|
}
|
|
117
122
|
}
|
|
118
123
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"long-press.js","sourceRoot":"","sources":["../../src/utilities/long-press.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,YAAY,IAAI,MAAM,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,OAAO,SAAS;IAOpB,YAAY,
|
|
1
|
+
{"version":3,"file":"long-press.js","sourceRoot":"","sources":["../../src/utilities/long-press.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcp-b/wc-support",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Shared base classes, events, utilities, and styles for Sigvelo web component libraries.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"access": "public"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
|
-
"@mcp-b/design-tokens": "0.
|
|
60
|
+
"@mcp-b/design-tokens": "0.49.0"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
63
|
"lit": "^3.3.3",
|