@kya-os/consent 0.1.0 → 0.1.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/dist/bundle/index.d.ts +44 -0
- package/dist/bundle/index.d.ts.map +1 -0
- package/dist/bundle/index.js +45 -0
- package/dist/bundle/index.js.map +1 -0
- package/dist/bundle/inline.d.ts +18 -0
- package/dist/bundle/inline.d.ts.map +1 -0
- package/dist/bundle/inline.js +18 -0
- package/dist/bundle/inline.js.map +1 -0
- package/dist/bundle/shell.d.ts +91 -0
- package/dist/bundle/shell.d.ts.map +1 -0
- package/dist/bundle/shell.js +282 -0
- package/dist/bundle/shell.js.map +1 -0
- package/dist/components/consent-button.d.ts +61 -0
- package/dist/components/consent-button.d.ts.map +1 -0
- package/dist/components/consent-button.js +177 -0
- package/dist/components/consent-button.js.map +1 -0
- package/dist/components/consent-checkbox.d.ts +61 -0
- package/dist/components/consent-checkbox.d.ts.map +1 -0
- package/dist/components/consent-checkbox.js +220 -0
- package/dist/components/consent-checkbox.js.map +1 -0
- package/dist/components/consent-input.d.ts +91 -0
- package/dist/components/consent-input.d.ts.map +1 -0
- package/dist/components/consent-input.js +332 -0
- package/dist/components/consent-input.js.map +1 -0
- package/dist/components/consent-oauth-button.d.ts +87 -0
- package/dist/components/consent-oauth-button.d.ts.map +1 -0
- package/dist/components/consent-oauth-button.js +389 -0
- package/dist/components/consent-oauth-button.js.map +1 -0
- package/dist/components/consent-otp-input.d.ts +92 -0
- package/dist/components/consent-otp-input.d.ts.map +1 -0
- package/dist/components/consent-otp-input.js +378 -0
- package/dist/components/consent-otp-input.js.map +1 -0
- package/dist/components/consent-permissions.d.ts +104 -0
- package/dist/components/consent-permissions.d.ts.map +1 -0
- package/dist/components/consent-permissions.js +430 -0
- package/dist/components/consent-permissions.js.map +1 -0
- package/dist/components/consent-shell.d.ts +72 -0
- package/dist/components/consent-shell.d.ts.map +1 -0
- package/dist/components/consent-shell.js +231 -0
- package/dist/components/consent-shell.js.map +1 -0
- package/dist/components/consent-terms.d.ts +89 -0
- package/dist/components/consent-terms.d.ts.map +1 -0
- package/dist/components/consent-terms.js +284 -0
- package/dist/components/consent-terms.js.map +1 -0
- package/dist/components/index.d.ts +19 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +23 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/mcp-consent.d.ts +152 -0
- package/dist/components/mcp-consent.d.ts.map +1 -0
- package/dist/components/mcp-consent.js +874 -0
- package/dist/components/mcp-consent.js.map +1 -0
- package/dist/consent.js +3737 -0
- package/dist/consent.min.js +1564 -0
- package/dist/constants/auth-modes.d.ts +7 -2
- package/dist/constants/auth-modes.d.ts.map +1 -1
- package/dist/constants/auth-modes.js +28 -36
- package/dist/constants/auth-modes.js.map +1 -1
- package/dist/constants/colors.js +1 -4
- package/dist/constants/colors.js.map +1 -1
- package/dist/constants/defaults.d.ts +1 -1
- package/dist/constants/defaults.d.ts.map +1 -1
- package/dist/constants/defaults.js +16 -19
- package/dist/constants/defaults.js.map +1 -1
- package/dist/constants/index.d.ts +3 -3
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +3 -26
- package/dist/constants/index.js.map +1 -1
- package/dist/index.d.ts +10 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -23
- package/dist/index.js.map +1 -1
- package/dist/react/index.d.ts +123 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +154 -0
- package/dist/react/index.js.map +1 -0
- package/dist/resolution/index.d.ts +3 -3
- package/dist/resolution/index.d.ts.map +1 -1
- package/dist/resolution/index.js +3 -19
- package/dist/resolution/index.js.map +1 -1
- package/dist/resolution/resolve-branding.d.ts +1 -1
- package/dist/resolution/resolve-branding.d.ts.map +1 -1
- package/dist/resolution/resolve-branding.js +14 -24
- package/dist/resolution/resolve-branding.js.map +1 -1
- package/dist/resolution/resolve-config.d.ts +2 -2
- package/dist/resolution/resolve-config.d.ts.map +1 -1
- package/dist/resolution/resolve-config.js +57 -53
- package/dist/resolution/resolve-config.js.map +1 -1
- package/dist/resolution/resolve-copy.d.ts +2 -2
- package/dist/resolution/resolve-copy.d.ts.map +1 -1
- package/dist/resolution/resolve-copy.js +35 -43
- package/dist/resolution/resolve-copy.js.map +1 -1
- package/dist/schemas/api.schemas.d.ts +7 -4
- package/dist/schemas/api.schemas.d.ts.map +1 -1
- package/dist/schemas/api.schemas.js +70 -74
- package/dist/schemas/api.schemas.js.map +1 -1
- package/dist/schemas/branding.schemas.js +17 -20
- package/dist/schemas/branding.schemas.js.map +1 -1
- package/dist/schemas/config.schemas.d.ts +1 -1
- package/dist/schemas/config.schemas.d.ts.map +1 -1
- package/dist/schemas/config.schemas.js +64 -70
- package/dist/schemas/config.schemas.js.map +1 -1
- package/dist/schemas/index.d.ts +4 -4
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +4 -20
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/modes.schemas.js +60 -63
- package/dist/schemas/modes.schemas.js.map +1 -1
- package/dist/security/escape.d.ts.map +1 -1
- package/dist/security/escape.js +12 -17
- package/dist/security/escape.js.map +1 -1
- package/dist/security/index.d.ts +2 -2
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +2 -18
- package/dist/security/index.js.map +1 -1
- package/dist/security/validators.js +9 -20
- package/dist/security/validators.js.map +1 -1
- package/dist/styles/css-variables.d.ts +1 -1
- package/dist/styles/css-variables.d.ts.map +1 -1
- package/dist/styles/css-variables.js +18 -27
- package/dist/styles/css-variables.js.map +1 -1
- package/dist/styles/index.d.ts +3 -3
- package/dist/styles/index.d.ts.map +1 -1
- package/dist/styles/index.js +3 -19
- package/dist/styles/index.js.map +1 -1
- package/dist/styles/stylesheet.d.ts +1 -1
- package/dist/styles/stylesheet.d.ts.map +1 -1
- package/dist/styles/stylesheet.js +20 -27
- package/dist/styles/stylesheet.js.map +1 -1
- package/dist/styles/tokens.js +1 -4
- package/dist/styles/tokens.js.map +1 -1
- package/dist/templates/base/base-template.d.ts +3 -3
- package/dist/templates/base/base-template.d.ts.map +1 -1
- package/dist/templates/base/base-template.js +31 -35
- package/dist/templates/base/base-template.js.map +1 -1
- package/dist/templates/base/components.js +49 -65
- package/dist/templates/base/components.js.map +1 -1
- package/dist/templates/base/index.d.ts +2 -2
- package/dist/templates/base/index.d.ts.map +1 -1
- package/dist/templates/base/index.js +2 -20
- package/dist/templates/base/index.js.map +1 -1
- package/dist/templates/index.d.ts +9 -9
- package/dist/templates/index.d.ts.map +1 -1
- package/dist/templates/index.js +9 -25
- package/dist/templates/index.js.map +1 -1
- package/dist/templates/modes/consent-only.template.d.ts +2 -2
- package/dist/templates/modes/consent-only.template.d.ts.map +1 -1
- package/dist/templates/modes/consent-only.template.js +11 -15
- package/dist/templates/modes/consent-only.template.js.map +1 -1
- package/dist/templates/modes/credentials.template.d.ts +4 -4
- package/dist/templates/modes/credentials.template.d.ts.map +1 -1
- package/dist/templates/modes/credentials.template.js +20 -24
- package/dist/templates/modes/credentials.template.js.map +1 -1
- package/dist/templates/modes/index.d.ts +6 -6
- package/dist/templates/modes/index.d.ts.map +1 -1
- package/dist/templates/modes/index.js +6 -16
- package/dist/templates/modes/index.js.map +1 -1
- package/dist/templates/modes/magic-link.template.d.ts +2 -2
- package/dist/templates/modes/magic-link.template.d.ts.map +1 -1
- package/dist/templates/modes/magic-link.template.js +14 -18
- package/dist/templates/modes/magic-link.template.js.map +1 -1
- package/dist/templates/modes/oauth.template.d.ts +2 -2
- package/dist/templates/modes/oauth.template.d.ts.map +1 -1
- package/dist/templates/modes/oauth.template.js +21 -25
- package/dist/templates/modes/oauth.template.js.map +1 -1
- package/dist/templates/modes/otp.template.d.ts +2 -2
- package/dist/templates/modes/otp.template.d.ts.map +1 -1
- package/dist/templates/modes/otp.template.js +17 -21
- package/dist/templates/modes/otp.template.js.map +1 -1
- package/dist/templates/modes/success.template.d.ts +2 -2
- package/dist/templates/modes/success.template.d.ts.map +1 -1
- package/dist/templates/modes/success.template.js +24 -29
- package/dist/templates/modes/success.template.js.map +1 -1
- package/dist/templates/registry.d.ts +4 -4
- package/dist/templates/registry.d.ts.map +1 -1
- package/dist/templates/registry.js +30 -38
- package/dist/templates/registry.js.map +1 -1
- package/dist/types/api.types.d.ts +6 -5
- package/dist/types/api.types.d.ts.map +1 -1
- package/dist/types/api.types.js +1 -2
- package/dist/types/api.types.js.map +1 -1
- package/dist/types/branding.types.js +1 -2
- package/dist/types/branding.types.js.map +1 -1
- package/dist/types/config.types.d.ts +5 -5
- package/dist/types/config.types.d.ts.map +1 -1
- package/dist/types/config.types.js +1 -2
- package/dist/types/config.types.js.map +1 -1
- package/dist/types/copy.types.js +1 -2
- package/dist/types/copy.types.js.map +1 -1
- package/dist/types/index.d.ts +6 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +6 -22
- package/dist/types/index.js.map +1 -1
- package/dist/types/modes.types.js +1 -4
- package/dist/types/modes.types.js.map +1 -1
- package/dist/types/page.types.d.ts +6 -6
- package/dist/types/page.types.d.ts.map +1 -1
- package/dist/types/page.types.js +1 -2
- package/dist/types/page.types.js.map +1 -1
- package/package.json +41 -4
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Consent Checkbox Web Component
|
|
3
|
+
*
|
|
4
|
+
* A styled checkbox for consent pages with label support.
|
|
5
|
+
* Works in browser, React, and SSR environments.
|
|
6
|
+
* Implements Form Associated Custom Elements for proper form participation.
|
|
7
|
+
*
|
|
8
|
+
* @module components/consent-checkbox
|
|
9
|
+
*/
|
|
10
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
11
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
12
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
13
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
14
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
15
|
+
};
|
|
16
|
+
import { LitElement, html, css } from 'lit';
|
|
17
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
18
|
+
/**
|
|
19
|
+
* ConsentCheckbox - A themed checkbox component with label
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```html
|
|
23
|
+
* <consent-checkbox name="terms" required>
|
|
24
|
+
* I agree to the <a href="/terms">Terms</a>
|
|
25
|
+
* </consent-checkbox>
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @fires change - Fired when checkbox state changes
|
|
29
|
+
* @csspart checkbox - The checkbox input element
|
|
30
|
+
* @csspart label - The label text wrapper
|
|
31
|
+
* @cssprop --consent-primary - Primary brand color for checked state
|
|
32
|
+
*/
|
|
33
|
+
let ConsentCheckbox = class ConsentCheckbox extends LitElement {
|
|
34
|
+
constructor() {
|
|
35
|
+
super();
|
|
36
|
+
/**
|
|
37
|
+
* Form field name
|
|
38
|
+
*/
|
|
39
|
+
this.name = '';
|
|
40
|
+
/**
|
|
41
|
+
* Checked state
|
|
42
|
+
*/
|
|
43
|
+
this.checked = false;
|
|
44
|
+
/**
|
|
45
|
+
* Required for form validation
|
|
46
|
+
*/
|
|
47
|
+
this.required = false;
|
|
48
|
+
/**
|
|
49
|
+
* Disabled state
|
|
50
|
+
*/
|
|
51
|
+
this.disabled = false;
|
|
52
|
+
/**
|
|
53
|
+
* Value when checked
|
|
54
|
+
*/
|
|
55
|
+
this.value = 'on';
|
|
56
|
+
this.internals = this.attachInternals();
|
|
57
|
+
}
|
|
58
|
+
// Update form value when properties change
|
|
59
|
+
updated(changedProperties) {
|
|
60
|
+
if (changedProperties.has('checked') || changedProperties.has('value')) {
|
|
61
|
+
this.updateFormValue();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
updateFormValue() {
|
|
65
|
+
// Update the form value based on checked state
|
|
66
|
+
if (this.checked) {
|
|
67
|
+
this.internals.setFormValue(this.value);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
this.internals.setFormValue(null);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
handleChange(e) {
|
|
74
|
+
const input = e.target;
|
|
75
|
+
this.checked = input.checked;
|
|
76
|
+
this.updateFormValue();
|
|
77
|
+
// Dispatch a change event that bubbles
|
|
78
|
+
this.dispatchEvent(new CustomEvent('change', {
|
|
79
|
+
detail: { checked: this.checked, value: this.value },
|
|
80
|
+
bubbles: true,
|
|
81
|
+
composed: true,
|
|
82
|
+
}));
|
|
83
|
+
}
|
|
84
|
+
render() {
|
|
85
|
+
return html `
|
|
86
|
+
<label part="label">
|
|
87
|
+
<input
|
|
88
|
+
part="checkbox"
|
|
89
|
+
type="checkbox"
|
|
90
|
+
name=${this.name}
|
|
91
|
+
.value=${this.value}
|
|
92
|
+
.checked=${this.checked}
|
|
93
|
+
?required=${this.required}
|
|
94
|
+
?disabled=${this.disabled}
|
|
95
|
+
@change=${this.handleChange}
|
|
96
|
+
/>
|
|
97
|
+
<span class="text">
|
|
98
|
+
<slot></slot>
|
|
99
|
+
</span>
|
|
100
|
+
</label>
|
|
101
|
+
`;
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
// Enable form association
|
|
105
|
+
ConsentCheckbox.formAssociated = true;
|
|
106
|
+
ConsentCheckbox.styles = css `
|
|
107
|
+
:host {
|
|
108
|
+
display: block;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
label {
|
|
112
|
+
display: flex;
|
|
113
|
+
align-items: flex-start;
|
|
114
|
+
gap: 0.75rem;
|
|
115
|
+
cursor: pointer;
|
|
116
|
+
font-size: 0.875rem;
|
|
117
|
+
color: #374151;
|
|
118
|
+
line-height: 1.5;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
:host([disabled]) label {
|
|
122
|
+
cursor: not-allowed;
|
|
123
|
+
opacity: 0.6;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/* Custom checkbox styling - matches AgentShield exactly */
|
|
127
|
+
input[type='checkbox'] {
|
|
128
|
+
/* Reset */
|
|
129
|
+
appearance: none;
|
|
130
|
+
-webkit-appearance: none;
|
|
131
|
+
margin: 0;
|
|
132
|
+
|
|
133
|
+
/* Size - matches AgentShield w-4 h-4 */
|
|
134
|
+
width: 1rem;
|
|
135
|
+
height: 1rem;
|
|
136
|
+
min-width: 1rem;
|
|
137
|
+
margin-top: 0.125rem; /* Align with text baseline */
|
|
138
|
+
|
|
139
|
+
/* Border */
|
|
140
|
+
border: 1px solid #d1d5db;
|
|
141
|
+
border-radius: 0.25rem;
|
|
142
|
+
|
|
143
|
+
/* Background */
|
|
144
|
+
background-color: white;
|
|
145
|
+
|
|
146
|
+
/* Interaction */
|
|
147
|
+
cursor: pointer;
|
|
148
|
+
position: relative;
|
|
149
|
+
transition: background-color 0.15s ease, border-color 0.15s ease;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
input[type='checkbox']:hover:not(:disabled) {
|
|
153
|
+
border-color: var(--consent-primary, #2563eb);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
input[type='checkbox']:focus-visible {
|
|
157
|
+
outline: 2px solid var(--consent-primary, #2563eb);
|
|
158
|
+
outline-offset: 2px;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/* Checked state */
|
|
162
|
+
input[type='checkbox']:checked {
|
|
163
|
+
background-color: var(--consent-primary, #2563eb);
|
|
164
|
+
border-color: var(--consent-primary, #2563eb);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/* Checkmark */
|
|
168
|
+
input[type='checkbox']:checked::after {
|
|
169
|
+
content: '';
|
|
170
|
+
position: absolute;
|
|
171
|
+
left: 4px;
|
|
172
|
+
top: 1px;
|
|
173
|
+
width: 5px;
|
|
174
|
+
height: 9px;
|
|
175
|
+
border: solid white;
|
|
176
|
+
border-width: 0 2px 2px 0;
|
|
177
|
+
transform: rotate(45deg);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/* Disabled */
|
|
181
|
+
input[type='checkbox']:disabled {
|
|
182
|
+
cursor: not-allowed;
|
|
183
|
+
opacity: 0.5;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/* Text wrapper */
|
|
187
|
+
.text {
|
|
188
|
+
flex: 1;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/* Links in label */
|
|
192
|
+
::slotted(a) {
|
|
193
|
+
color: var(--consent-primary, #2563eb);
|
|
194
|
+
text-decoration: underline;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
::slotted(a:hover) {
|
|
198
|
+
text-decoration: none;
|
|
199
|
+
}
|
|
200
|
+
`;
|
|
201
|
+
__decorate([
|
|
202
|
+
property({ type: String })
|
|
203
|
+
], ConsentCheckbox.prototype, "name", void 0);
|
|
204
|
+
__decorate([
|
|
205
|
+
property({ type: Boolean, reflect: true })
|
|
206
|
+
], ConsentCheckbox.prototype, "checked", void 0);
|
|
207
|
+
__decorate([
|
|
208
|
+
property({ type: Boolean })
|
|
209
|
+
], ConsentCheckbox.prototype, "required", void 0);
|
|
210
|
+
__decorate([
|
|
211
|
+
property({ type: Boolean, reflect: true })
|
|
212
|
+
], ConsentCheckbox.prototype, "disabled", void 0);
|
|
213
|
+
__decorate([
|
|
214
|
+
property({ type: String })
|
|
215
|
+
], ConsentCheckbox.prototype, "value", void 0);
|
|
216
|
+
ConsentCheckbox = __decorate([
|
|
217
|
+
customElement('consent-checkbox')
|
|
218
|
+
], ConsentCheckbox);
|
|
219
|
+
export { ConsentCheckbox };
|
|
220
|
+
//# sourceMappingURL=consent-checkbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent-checkbox.js","sourceRoot":"","sources":["../../src/components/consent-checkbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;;;;;;;AAEH,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;;;;;;;;;;;;;GAcG;AAEI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,UAAU;IAM7C;QACE,KAAK,EAAE,CAAC;QAIV;;WAEG;QAEH,SAAI,GAAG,EAAE,CAAC;QAEV;;WAEG;QAEH,YAAO,GAAG,KAAK,CAAC;QAEhB;;WAEG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;WAEG;QAEH,aAAQ,GAAG,KAAK,CAAC;QAEjB;;WAEG;QAEH,UAAK,GAAG,IAAI,CAAC;QA/BX,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC1C,CAAC;IAgID,2CAA2C;IACxB,OAAO,CAAC,iBAAuC;QAChE,IAAI,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,+CAA+C;QAC/C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,CAAQ;QAC3B,MAAM,KAAK,GAAG,CAAC,CAAC,MAA0B,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,uCAAuC;QACvC,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,QAAQ,EAAE;YACxB,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACpD,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACf,CAAC,CACH,CAAC;IACJ,CAAC;IAEQ,MAAM;QACb,OAAO,IAAI,CAAA;;;;;iBAKE,IAAI,CAAC,IAAI;mBACP,IAAI,CAAC,KAAK;qBACR,IAAI,CAAC,OAAO;sBACX,IAAI,CAAC,QAAQ;sBACb,IAAI,CAAC,QAAQ;oBACf,IAAI,CAAC,YAAY;;;;;;KAMhC,CAAC;IACJ,CAAC;;AAzLD,0BAA0B;AACnB,8BAAc,GAAG,IAAI,AAAP,CAAQ;AAuCb,sBAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8F3B,AA9FqB,CA8FpB;AAxHF;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CACjB;AAMV;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAC3B;AAMhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;iDACX;AAMjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDAC1B;AAMjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACd;AAvCF,eAAe;IAD3B,aAAa,CAAC,kBAAkB,CAAC;GACrB,eAAe,CA2L3B"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Consent Input Web Component
|
|
3
|
+
*
|
|
4
|
+
* A styled text input for consent pages with label and error support.
|
|
5
|
+
* Implements Form Associated Custom Elements for proper form participation.
|
|
6
|
+
*
|
|
7
|
+
* @module components/consent-input
|
|
8
|
+
*/
|
|
9
|
+
import { LitElement } from 'lit';
|
|
10
|
+
/**
|
|
11
|
+
* Input types supported
|
|
12
|
+
*/
|
|
13
|
+
export type InputType = 'text' | 'email' | 'password' | 'tel' | 'url';
|
|
14
|
+
/**
|
|
15
|
+
* ConsentInput - A themed input component with label
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```html
|
|
19
|
+
* <consent-input
|
|
20
|
+
* type="email"
|
|
21
|
+
* name="email"
|
|
22
|
+
* label="Email Address"
|
|
23
|
+
* placeholder="you@example.com"
|
|
24
|
+
* required
|
|
25
|
+
* ></consent-input>
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @fires input - Fired when input value changes
|
|
29
|
+
* @fires change - Fired when input loses focus after change
|
|
30
|
+
* @csspart input - The input element
|
|
31
|
+
* @csspart label - The label element
|
|
32
|
+
* @cssprop --consent-primary - Primary brand color for focus state
|
|
33
|
+
*/
|
|
34
|
+
export declare class ConsentInput extends LitElement {
|
|
35
|
+
static formAssociated: boolean;
|
|
36
|
+
private internals;
|
|
37
|
+
constructor();
|
|
38
|
+
/**
|
|
39
|
+
* Input type
|
|
40
|
+
*/
|
|
41
|
+
type: InputType;
|
|
42
|
+
/**
|
|
43
|
+
* Form field name
|
|
44
|
+
*/
|
|
45
|
+
name: string;
|
|
46
|
+
/**
|
|
47
|
+
* Input value
|
|
48
|
+
*/
|
|
49
|
+
value: string;
|
|
50
|
+
/**
|
|
51
|
+
* Label text
|
|
52
|
+
*/
|
|
53
|
+
label: string;
|
|
54
|
+
/**
|
|
55
|
+
* Placeholder text
|
|
56
|
+
*/
|
|
57
|
+
placeholder: string;
|
|
58
|
+
/**
|
|
59
|
+
* Required for form validation
|
|
60
|
+
*/
|
|
61
|
+
required: boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Disabled state
|
|
64
|
+
*/
|
|
65
|
+
disabled: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Autocomplete attribute
|
|
68
|
+
*/
|
|
69
|
+
autocomplete: string;
|
|
70
|
+
/**
|
|
71
|
+
* Error message to display
|
|
72
|
+
*/
|
|
73
|
+
error?: string;
|
|
74
|
+
/**
|
|
75
|
+
* Show password toggle for password inputs
|
|
76
|
+
*/
|
|
77
|
+
private showPassword;
|
|
78
|
+
static styles: import("lit").CSSResult;
|
|
79
|
+
protected updated(changedProperties: Map<string, unknown>): void;
|
|
80
|
+
private handleInput;
|
|
81
|
+
private handleChange;
|
|
82
|
+
private togglePasswordVisibility;
|
|
83
|
+
private renderPasswordToggle;
|
|
84
|
+
render(): import("lit").TemplateResult<1>;
|
|
85
|
+
}
|
|
86
|
+
declare global {
|
|
87
|
+
interface HTMLElementTagNameMap {
|
|
88
|
+
'consent-input': ConsentInput;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=consent-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent-input.d.ts","sourceRoot":"","sources":["../../src/components/consent-input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,KAAK,GAAG,KAAK,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,YAAa,SAAQ,UAAU;IAE1C,MAAM,CAAC,cAAc,UAAQ;IAE7B,OAAO,CAAC,SAAS,CAAmB;;IAOpC;;OAEG;IAEH,IAAI,EAAE,SAAS,CAAU;IAEzB;;OAEG;IAEH,IAAI,SAAM;IAEV;;OAEG;IAEH,KAAK,SAAM;IAEX;;OAEG;IAEH,KAAK,SAAM;IAEX;;OAEG;IAEH,WAAW,SAAM;IAEjB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,YAAY,SAAM;IAElB;;OAEG;IAEH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IAEH,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAgB,MAAM,0BAiIpB;cAGiB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAMlE,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,oBAAoB;IA8BnB,MAAM;CAgChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,YAAY,CAAC;KAC/B;CACF"}
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Consent Input Web Component
|
|
3
|
+
*
|
|
4
|
+
* A styled text input for consent pages with label and error support.
|
|
5
|
+
* Implements Form Associated Custom Elements for proper form participation.
|
|
6
|
+
*
|
|
7
|
+
* @module components/consent-input
|
|
8
|
+
*/
|
|
9
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
10
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
11
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
12
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
13
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
14
|
+
};
|
|
15
|
+
import { LitElement, html, css } from 'lit';
|
|
16
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
17
|
+
/**
|
|
18
|
+
* ConsentInput - A themed input component with label
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```html
|
|
22
|
+
* <consent-input
|
|
23
|
+
* type="email"
|
|
24
|
+
* name="email"
|
|
25
|
+
* label="Email Address"
|
|
26
|
+
* placeholder="you@example.com"
|
|
27
|
+
* required
|
|
28
|
+
* ></consent-input>
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @fires input - Fired when input value changes
|
|
32
|
+
* @fires change - Fired when input loses focus after change
|
|
33
|
+
* @csspart input - The input element
|
|
34
|
+
* @csspart label - The label element
|
|
35
|
+
* @cssprop --consent-primary - Primary brand color for focus state
|
|
36
|
+
*/
|
|
37
|
+
let ConsentInput = class ConsentInput extends LitElement {
|
|
38
|
+
constructor() {
|
|
39
|
+
super();
|
|
40
|
+
/**
|
|
41
|
+
* Input type
|
|
42
|
+
*/
|
|
43
|
+
this.type = 'text';
|
|
44
|
+
/**
|
|
45
|
+
* Form field name
|
|
46
|
+
*/
|
|
47
|
+
this.name = '';
|
|
48
|
+
/**
|
|
49
|
+
* Input value
|
|
50
|
+
*/
|
|
51
|
+
this.value = '';
|
|
52
|
+
/**
|
|
53
|
+
* Label text
|
|
54
|
+
*/
|
|
55
|
+
this.label = '';
|
|
56
|
+
/**
|
|
57
|
+
* Placeholder text
|
|
58
|
+
*/
|
|
59
|
+
this.placeholder = '';
|
|
60
|
+
/**
|
|
61
|
+
* Required for form validation
|
|
62
|
+
*/
|
|
63
|
+
this.required = false;
|
|
64
|
+
/**
|
|
65
|
+
* Disabled state
|
|
66
|
+
*/
|
|
67
|
+
this.disabled = false;
|
|
68
|
+
/**
|
|
69
|
+
* Autocomplete attribute
|
|
70
|
+
*/
|
|
71
|
+
this.autocomplete = '';
|
|
72
|
+
/**
|
|
73
|
+
* Show password toggle for password inputs
|
|
74
|
+
*/
|
|
75
|
+
this.showPassword = false;
|
|
76
|
+
this.internals = this.attachInternals();
|
|
77
|
+
}
|
|
78
|
+
// Update form value when properties change
|
|
79
|
+
updated(changedProperties) {
|
|
80
|
+
if (changedProperties.has('value')) {
|
|
81
|
+
this.internals.setFormValue(this.value || null);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
handleInput(e) {
|
|
85
|
+
const input = e.target;
|
|
86
|
+
this.value = input.value;
|
|
87
|
+
this.internals.setFormValue(this.value || null);
|
|
88
|
+
this.dispatchEvent(new CustomEvent('input', {
|
|
89
|
+
detail: { value: this.value },
|
|
90
|
+
bubbles: true,
|
|
91
|
+
composed: true,
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
handleChange(e) {
|
|
95
|
+
const input = e.target;
|
|
96
|
+
this.value = input.value;
|
|
97
|
+
this.dispatchEvent(new CustomEvent('change', {
|
|
98
|
+
detail: { value: this.value },
|
|
99
|
+
bubbles: true,
|
|
100
|
+
composed: true,
|
|
101
|
+
}));
|
|
102
|
+
}
|
|
103
|
+
togglePasswordVisibility() {
|
|
104
|
+
this.showPassword = !this.showPassword;
|
|
105
|
+
}
|
|
106
|
+
renderPasswordToggle() {
|
|
107
|
+
if (this.type !== 'password')
|
|
108
|
+
return null;
|
|
109
|
+
const icon = this.showPassword
|
|
110
|
+
? html `
|
|
111
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
112
|
+
<path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"/>
|
|
113
|
+
<line x1="1" y1="1" x2="23" y2="23"/>
|
|
114
|
+
</svg>
|
|
115
|
+
`
|
|
116
|
+
: html `
|
|
117
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
118
|
+
<path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/>
|
|
119
|
+
<circle cx="12" cy="12" r="3"/>
|
|
120
|
+
</svg>
|
|
121
|
+
`;
|
|
122
|
+
return html `
|
|
123
|
+
<button
|
|
124
|
+
type="button"
|
|
125
|
+
class="password-toggle"
|
|
126
|
+
@click=${this.togglePasswordVisibility}
|
|
127
|
+
tabindex="-1"
|
|
128
|
+
aria-label=${this.showPassword ? 'Hide password' : 'Show password'}
|
|
129
|
+
>
|
|
130
|
+
${icon}
|
|
131
|
+
</button>
|
|
132
|
+
`;
|
|
133
|
+
}
|
|
134
|
+
render() {
|
|
135
|
+
const inputType = this.type === 'password' && this.showPassword ? 'text' : this.type;
|
|
136
|
+
return html `
|
|
137
|
+
<div class="field">
|
|
138
|
+
${this.label
|
|
139
|
+
? html `
|
|
140
|
+
<label part="label" for="input">
|
|
141
|
+
${this.label}${this.required ? html `<span class="required">*</span>` : null}
|
|
142
|
+
</label>
|
|
143
|
+
`
|
|
144
|
+
: null}
|
|
145
|
+
<div class="input-wrapper${this.error ? ' has-error' : ''}">
|
|
146
|
+
<input
|
|
147
|
+
part="input"
|
|
148
|
+
id="input"
|
|
149
|
+
type=${inputType}
|
|
150
|
+
name=${this.name}
|
|
151
|
+
.value=${this.value}
|
|
152
|
+
placeholder=${this.placeholder}
|
|
153
|
+
?required=${this.required}
|
|
154
|
+
?disabled=${this.disabled}
|
|
155
|
+
autocomplete=${this.autocomplete || 'off'}
|
|
156
|
+
@input=${this.handleInput}
|
|
157
|
+
@change=${this.handleChange}
|
|
158
|
+
/>
|
|
159
|
+
${this.renderPasswordToggle()}
|
|
160
|
+
</div>
|
|
161
|
+
${this.error ? html `<div class="error-message">${this.error}</div>` : null}
|
|
162
|
+
</div>
|
|
163
|
+
`;
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
// Enable form association
|
|
167
|
+
ConsentInput.formAssociated = true;
|
|
168
|
+
ConsentInput.styles = css `
|
|
169
|
+
:host {
|
|
170
|
+
display: block;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.field {
|
|
174
|
+
display: flex;
|
|
175
|
+
flex-direction: column;
|
|
176
|
+
gap: 0.375rem;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
label {
|
|
180
|
+
font-size: 0.875rem;
|
|
181
|
+
font-weight: 500;
|
|
182
|
+
color: #374151;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.input-wrapper {
|
|
186
|
+
position: relative;
|
|
187
|
+
display: flex;
|
|
188
|
+
align-items: center;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/* Base input styles - use .input-wrapper for higher specificity */
|
|
192
|
+
.input-wrapper input {
|
|
193
|
+
width: 100%;
|
|
194
|
+
padding: 0.625rem 0.75rem;
|
|
195
|
+
font-size: 0.875rem;
|
|
196
|
+
font-family: inherit;
|
|
197
|
+
color: #111827;
|
|
198
|
+
background-color: white;
|
|
199
|
+
border: 1px solid #d1d5db;
|
|
200
|
+
border-radius: 0.5rem;
|
|
201
|
+
outline: none;
|
|
202
|
+
box-shadow: none;
|
|
203
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.input-wrapper input:focus {
|
|
207
|
+
border-color: var(--consent-primary, #2563eb);
|
|
208
|
+
box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.input-wrapper input:disabled {
|
|
212
|
+
background-color: #f9fafb;
|
|
213
|
+
cursor: not-allowed;
|
|
214
|
+
opacity: 0.6;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.input-wrapper input::placeholder {
|
|
218
|
+
color: #9ca3af;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/* Prevent browser validation styling before user interaction */
|
|
222
|
+
.input-wrapper input:invalid {
|
|
223
|
+
border-color: #d1d5db;
|
|
224
|
+
box-shadow: none;
|
|
225
|
+
outline: none;
|
|
226
|
+
background-color: white;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
/* Override browser autofill styling */
|
|
230
|
+
.input-wrapper input:-webkit-autofill,
|
|
231
|
+
.input-wrapper input:-webkit-autofill:hover,
|
|
232
|
+
.input-wrapper input:-webkit-autofill:focus {
|
|
233
|
+
-webkit-box-shadow: 0 0 0 1000px white inset;
|
|
234
|
+
-webkit-text-fill-color: #111827;
|
|
235
|
+
border-color: #d1d5db;
|
|
236
|
+
transition: background-color 5000s ease-in-out 0s;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/* Only show validation styling after user interaction */
|
|
240
|
+
.input-wrapper input:user-invalid {
|
|
241
|
+
border-color: #ef4444;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
.input-wrapper input:user-invalid:focus {
|
|
245
|
+
border-color: #ef4444;
|
|
246
|
+
box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/* Password toggle */
|
|
250
|
+
.input-wrapper input[type='password'] {
|
|
251
|
+
padding-right: 2.5rem;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
.password-toggle {
|
|
255
|
+
position: absolute;
|
|
256
|
+
right: 0.5rem;
|
|
257
|
+
padding: 0.375rem;
|
|
258
|
+
background: none;
|
|
259
|
+
border: none;
|
|
260
|
+
cursor: pointer;
|
|
261
|
+
color: #6b7280;
|
|
262
|
+
display: flex;
|
|
263
|
+
align-items: center;
|
|
264
|
+
justify-content: center;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
.password-toggle:hover {
|
|
268
|
+
color: #374151;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
.password-toggle svg {
|
|
272
|
+
width: 1.25rem;
|
|
273
|
+
height: 1.25rem;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
/* Error state - use class instead of attribute for proper specificity */
|
|
277
|
+
.input-wrapper.has-error input {
|
|
278
|
+
border-color: #ef4444;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.input-wrapper.has-error input:focus {
|
|
282
|
+
border-color: #ef4444;
|
|
283
|
+
box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.error-message {
|
|
287
|
+
font-size: 0.75rem;
|
|
288
|
+
color: #ef4444;
|
|
289
|
+
margin-top: 0.25rem;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
/* Required indicator */
|
|
293
|
+
.required {
|
|
294
|
+
color: #ef4444;
|
|
295
|
+
margin-left: 0.125rem;
|
|
296
|
+
}
|
|
297
|
+
`;
|
|
298
|
+
__decorate([
|
|
299
|
+
property({ type: String })
|
|
300
|
+
], ConsentInput.prototype, "type", void 0);
|
|
301
|
+
__decorate([
|
|
302
|
+
property({ type: String })
|
|
303
|
+
], ConsentInput.prototype, "name", void 0);
|
|
304
|
+
__decorate([
|
|
305
|
+
property({ type: String })
|
|
306
|
+
], ConsentInput.prototype, "value", void 0);
|
|
307
|
+
__decorate([
|
|
308
|
+
property({ type: String })
|
|
309
|
+
], ConsentInput.prototype, "label", void 0);
|
|
310
|
+
__decorate([
|
|
311
|
+
property({ type: String })
|
|
312
|
+
], ConsentInput.prototype, "placeholder", void 0);
|
|
313
|
+
__decorate([
|
|
314
|
+
property({ type: Boolean })
|
|
315
|
+
], ConsentInput.prototype, "required", void 0);
|
|
316
|
+
__decorate([
|
|
317
|
+
property({ type: Boolean, reflect: true })
|
|
318
|
+
], ConsentInput.prototype, "disabled", void 0);
|
|
319
|
+
__decorate([
|
|
320
|
+
property({ type: String })
|
|
321
|
+
], ConsentInput.prototype, "autocomplete", void 0);
|
|
322
|
+
__decorate([
|
|
323
|
+
property({ type: String })
|
|
324
|
+
], ConsentInput.prototype, "error", void 0);
|
|
325
|
+
__decorate([
|
|
326
|
+
state()
|
|
327
|
+
], ConsentInput.prototype, "showPassword", void 0);
|
|
328
|
+
ConsentInput = __decorate([
|
|
329
|
+
customElement('consent-input')
|
|
330
|
+
], ConsentInput);
|
|
331
|
+
export { ConsentInput };
|
|
332
|
+
//# sourceMappingURL=consent-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent-input.js","sourceRoot":"","sources":["../../src/components/consent-input.ts"],"names":[],"mappings":"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"}
|