@orange-halo/components 1.0.0 → 2.1.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/custom-elements.json +3182 -73
- package/dist/base.js +3 -3
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/oh-accordion.js +33 -33
- package/dist/oh-alert.js +26 -26
- package/dist/oh-badge.js +11 -11
- package/dist/oh-breadcrumb.js +20 -20
- package/dist/oh-button.d.ts +7 -1
- package/dist/oh-button.d.ts.map +1 -1
- package/dist/oh-button.js +118 -89
- package/dist/oh-button.js.map +1 -1
- package/dist/oh-card.d.ts.map +1 -1
- package/dist/oh-card.js +38 -66
- package/dist/oh-card.js.map +1 -1
- package/dist/oh-checkbox-group.d.ts +8 -0
- package/dist/oh-checkbox-group.d.ts.map +1 -1
- package/dist/oh-checkbox-group.figma.js +1 -1
- package/dist/oh-checkbox-group.figma.js.map +1 -1
- package/dist/oh-checkbox-group.js +40 -26
- package/dist/oh-checkbox-group.js.map +1 -1
- package/dist/oh-checkbox.d.ts +11 -2
- package/dist/oh-checkbox.d.ts.map +1 -1
- package/dist/oh-checkbox.js +44 -28
- package/dist/oh-checkbox.js.map +1 -1
- package/dist/oh-container.d.ts +5 -5
- package/dist/oh-container.js +15 -15
- package/dist/oh-drawer.d.ts +7 -2
- package/dist/oh-drawer.d.ts.map +1 -1
- package/dist/oh-drawer.js +52 -25
- package/dist/oh-drawer.js.map +1 -1
- package/dist/oh-footer.d.ts +5 -0
- package/dist/oh-footer.d.ts.map +1 -1
- package/dist/oh-footer.js +9 -4
- package/dist/oh-footer.js.map +1 -1
- package/dist/oh-hero.d.ts +5 -0
- package/dist/oh-hero.d.ts.map +1 -1
- package/dist/oh-hero.js +55 -51
- package/dist/oh-hero.js.map +1 -1
- package/dist/oh-icon.js +9 -9
- package/dist/oh-input.d.ts +11 -3
- package/dist/oh-input.d.ts.map +1 -1
- package/dist/oh-input.figma.js +2 -2
- package/dist/oh-input.figma.js.map +1 -1
- package/dist/oh-input.js +49 -37
- package/dist/oh-input.js.map +1 -1
- package/dist/oh-link.d.ts +1 -1
- package/dist/oh-link.js +35 -35
- package/dist/oh-modal.d.ts +10 -4
- package/dist/oh-modal.d.ts.map +1 -1
- package/dist/oh-modal.js +75 -72
- package/dist/oh-modal.js.map +1 -1
- package/dist/oh-navbar.d.ts.map +1 -1
- package/dist/oh-navbar.js +4 -5
- package/dist/oh-navbar.js.map +1 -1
- package/dist/oh-progress.d.ts.map +1 -1
- package/dist/oh-progress.js +21 -35
- package/dist/oh-progress.js.map +1 -1
- package/dist/oh-radio-group.d.ts +8 -0
- package/dist/oh-radio-group.d.ts.map +1 -1
- package/dist/oh-radio-group.js +40 -26
- package/dist/oh-radio-group.js.map +1 -1
- package/dist/oh-radio.d.ts +10 -1
- package/dist/oh-radio.d.ts.map +1 -1
- package/dist/oh-radio.js +44 -28
- package/dist/oh-radio.js.map +1 -1
- package/dist/oh-select.d.ts +10 -2
- package/dist/oh-select.d.ts.map +1 -1
- package/dist/oh-select.js +51 -32
- package/dist/oh-select.js.map +1 -1
- package/dist/oh-skip-link.d.ts.map +1 -1
- package/dist/oh-skip-link.js +15 -14
- package/dist/oh-skip-link.js.map +1 -1
- package/dist/oh-tabs.js +15 -15
- package/dist/oh-toggle.d.ts +5 -2
- package/dist/oh-toggle.d.ts.map +1 -1
- package/dist/oh-toggle.js +18 -20
- package/dist/oh-toggle.js.map +1 -1
- package/dist/styles/typography.js +50 -50
- package/package.json +15 -4
package/dist/oh-drawer.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* - Smooth slide animation
|
|
17
17
|
*
|
|
18
18
|
* 3. ACCESSIBILITY
|
|
19
|
-
* - Focus trap when open
|
|
19
|
+
* - Focus trap when open (focus guards at each end of the panel)
|
|
20
20
|
* - Escape key closes
|
|
21
21
|
* - aria-modal and role="dialog"
|
|
22
22
|
* - Returns focus to trigger on close
|
|
@@ -38,7 +38,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
38
38
|
import { html, css } from "lit";
|
|
39
39
|
import { customElement, property, state, query } from "lit/decorators.js";
|
|
40
40
|
import { OhElement, baseStyles } from "./base.js";
|
|
41
|
-
import {
|
|
41
|
+
import { getFocusableElementsDeep } from "@orange-halo/utils";
|
|
42
42
|
import "./oh-button.js";
|
|
43
43
|
import "./oh-icon.js";
|
|
44
44
|
let OhDrawer = class OhDrawer extends OhElement {
|
|
@@ -86,14 +86,27 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
86
86
|
z-index: 1000;
|
|
87
87
|
display: flex;
|
|
88
88
|
flex-direction: column;
|
|
89
|
-
|
|
89
|
+
/* Hidden once it has slid away, so its shadow can't show at the
|
|
90
|
+
viewport edge while closed */
|
|
91
|
+
visibility: hidden;
|
|
92
|
+
transition:
|
|
93
|
+
transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle),
|
|
94
|
+
visibility 0s linear var(--oh-motion-relaxed);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/* Opening: visible at once, so focus can move into the panel on the
|
|
98
|
+
next frame (see ACCESSIBILITY_LESSONS.md 21) */
|
|
99
|
+
.drawer.is-open {
|
|
100
|
+
visibility: visible;
|
|
101
|
+
transition:
|
|
102
|
+
transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle),
|
|
103
|
+
visibility 0s;
|
|
90
104
|
}
|
|
91
105
|
|
|
92
106
|
/* Left position (default) */
|
|
93
107
|
.drawer--left {
|
|
94
108
|
left: 0;
|
|
95
|
-
|
|
96
|
-
box-shadow: var(--oh-shadow-lg);
|
|
109
|
+
box-shadow: var(--oh-elevation-strong);
|
|
97
110
|
transform: translateX(-100%);
|
|
98
111
|
}
|
|
99
112
|
|
|
@@ -104,8 +117,7 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
104
117
|
/* Right position */
|
|
105
118
|
.drawer--right {
|
|
106
119
|
right: 0;
|
|
107
|
-
|
|
108
|
-
box-shadow: calc(-1 * var(--oh-shadow-offset-x, 4px)) var(--oh-shadow-offset-y, 4px) 0 0 var(--oh-color-warm-dune);
|
|
120
|
+
box-shadow: calc(-1 * var(--oh-elevation-offset-lg)) var(--oh-elevation-offset-lg) 0 0 var(--oh-color-border-strong);
|
|
109
121
|
transform: translateX(100%);
|
|
110
122
|
}
|
|
111
123
|
|
|
@@ -119,14 +131,13 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
119
131
|
align-items: center;
|
|
120
132
|
justify-content: space-between;
|
|
121
133
|
padding: var(--oh-spacing-4);
|
|
122
|
-
border-bottom: var(--oh-border-width-md) solid var(--oh-color-border-default);
|
|
123
134
|
flex-shrink: 0;
|
|
124
135
|
}
|
|
125
136
|
|
|
126
137
|
.drawer__title {
|
|
127
|
-
font-family: var(--oh-font-family
|
|
128
|
-
font-size: var(--oh-font-size
|
|
129
|
-
font-weight: var(--oh-font-weight
|
|
138
|
+
font-family: var(--oh-typography-body-font-family);
|
|
139
|
+
font-size: var(--oh-typography-heading-h5-font-size);
|
|
140
|
+
font-weight: var(--oh-typography-emphasis-font-weight);
|
|
130
141
|
color: var(--oh-color-text-primary);
|
|
131
142
|
margin: 0;
|
|
132
143
|
}
|
|
@@ -138,6 +149,15 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
138
149
|
padding: var(--oh-spacing-4);
|
|
139
150
|
}
|
|
140
151
|
|
|
152
|
+
/* Focus guards: focusable but never seen; focus moves on at once. */
|
|
153
|
+
.focus-guard {
|
|
154
|
+
position: absolute;
|
|
155
|
+
width: 1px;
|
|
156
|
+
height: 1px;
|
|
157
|
+
overflow: hidden;
|
|
158
|
+
clip-path: inset(50%);
|
|
159
|
+
}
|
|
160
|
+
|
|
141
161
|
/* Reduced motion */
|
|
142
162
|
@media (prefers-reduced-motion: reduce) {
|
|
143
163
|
.drawer-backdrop,
|
|
@@ -154,7 +174,6 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
154
174
|
disconnectedCallback() {
|
|
155
175
|
super.disconnectedCallback();
|
|
156
176
|
document.removeEventListener("keydown", this._handleKeydown);
|
|
157
|
-
this._cleanupFocusTrap?.();
|
|
158
177
|
}
|
|
159
178
|
updated(changedProperties) {
|
|
160
179
|
if (changedProperties.has("open")) {
|
|
@@ -167,20 +186,20 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
167
186
|
}
|
|
168
187
|
}
|
|
169
188
|
_onOpen() {
|
|
170
|
-
// Store the trigger element for focus return
|
|
171
|
-
|
|
189
|
+
// Store the trigger element for focus return. Follow focus into shadow
|
|
190
|
+
// roots: a trigger inside another component (the navbar's menu button)
|
|
191
|
+
// is reported as that component's host, which can't take focus.
|
|
192
|
+
let active = document.activeElement;
|
|
193
|
+
while (active?.shadowRoot?.activeElement)
|
|
194
|
+
active = active.shadowRoot.activeElement;
|
|
195
|
+
this._triggerElement = active;
|
|
172
196
|
// Prevent body scroll
|
|
173
197
|
document.body.style.overflow = "hidden";
|
|
174
198
|
// Add keydown listener
|
|
175
199
|
document.addEventListener("keydown", this._handleKeydown);
|
|
176
|
-
//
|
|
200
|
+
// Focus the close button after render. The focus guards keep focus inside.
|
|
177
201
|
requestAnimationFrame(() => {
|
|
178
|
-
|
|
179
|
-
this._cleanupFocusTrap = trapFocus(this._drawer);
|
|
180
|
-
// Focus the close button
|
|
181
|
-
const closeBtn = this._drawer.querySelector("oh-button");
|
|
182
|
-
closeBtn?.focus();
|
|
183
|
-
}
|
|
202
|
+
this._drawer?.querySelector("oh-button")?.focus();
|
|
184
203
|
});
|
|
185
204
|
}
|
|
186
205
|
_onClose() {
|
|
@@ -188,9 +207,6 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
188
207
|
document.body.style.overflow = "";
|
|
189
208
|
// Remove keydown listener
|
|
190
209
|
document.removeEventListener("keydown", this._handleKeydown);
|
|
191
|
-
// Clean up focus trap
|
|
192
|
-
this._cleanupFocusTrap?.();
|
|
193
|
-
this._cleanupFocusTrap = undefined;
|
|
194
210
|
// Return focus to trigger
|
|
195
211
|
this._triggerElement?.focus();
|
|
196
212
|
this._triggerElement = null;
|
|
@@ -208,6 +224,15 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
208
224
|
_handleBackdropClick() {
|
|
209
225
|
this._close();
|
|
210
226
|
}
|
|
227
|
+
/**
|
|
228
|
+
* Focus guards: Tab past the last control lands on the end guard, which
|
|
229
|
+
* wraps to the first; Shift+Tab before the first wraps to the last. This
|
|
230
|
+
* holds however the browser orders Tab (Safari skips links by default).
|
|
231
|
+
*/
|
|
232
|
+
_focusEdge(edge) {
|
|
233
|
+
const items = getFocusableElementsDeep(this._drawer).filter((el) => !el.classList.contains("focus-guard"));
|
|
234
|
+
(edge === "first" ? items[0] : items[items.length - 1])?.focus();
|
|
235
|
+
}
|
|
211
236
|
/** Public method to open the drawer */
|
|
212
237
|
show() {
|
|
213
238
|
this.open = true;
|
|
@@ -240,6 +265,7 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
240
265
|
aria-label=${this.heading || "Navigation menu"}
|
|
241
266
|
?inert=${!this.open}
|
|
242
267
|
>
|
|
268
|
+
<span class="focus-guard" tabindex="0" @focus=${() => this._focusEdge("last")}></span>
|
|
243
269
|
<div class="drawer__header">
|
|
244
270
|
${this.heading
|
|
245
271
|
? html `<h2 class="drawer__title">${this.heading}</h2>`
|
|
@@ -248,7 +274,7 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
248
274
|
variant="secondary"
|
|
249
275
|
size="sm"
|
|
250
276
|
icon-only
|
|
251
|
-
|
|
277
|
+
accessible-label="Close menu"
|
|
252
278
|
@click=${this._close}
|
|
253
279
|
>
|
|
254
280
|
<oh-icon name="close"></oh-icon>
|
|
@@ -258,6 +284,7 @@ let OhDrawer = class OhDrawer extends OhElement {
|
|
|
258
284
|
<div class="drawer__content">
|
|
259
285
|
<slot></slot>
|
|
260
286
|
</div>
|
|
287
|
+
<span class="focus-guard" tabindex="0" @focus=${() => this._focusEdge("first")}></span>
|
|
261
288
|
</div>
|
|
262
289
|
`;
|
|
263
290
|
}
|
package/dist/oh-drawer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-drawer.js","sourceRoot":"","sources":["../src/oh-drawer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;;;;;;;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"oh-drawer.js","sourceRoot":"","sources":["../src/oh-drawer.ts"],"names":[],"mappings":"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"}
|
package/dist/oh-footer.d.ts
CHANGED
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
* - White/inverse text and links
|
|
16
16
|
* - Generous padding
|
|
17
17
|
*
|
|
18
|
+
* BRAND PATTERN: this belongs to the Orange Halo brand, not the core. Import
|
|
19
|
+
* it from @orange-halo/brand-orange-halo; importing it from components is
|
|
20
|
+
* deprecated and stops working in components 3.0, when this file moves to
|
|
21
|
+
* the brand package (brand plan phase 8).
|
|
22
|
+
*
|
|
18
23
|
* @element oh-footer
|
|
19
24
|
*
|
|
20
25
|
* @slot logo - Slot for logo element
|
package/dist/oh-footer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-footer.d.ts","sourceRoot":"","sources":["../src/oh-footer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"oh-footer.d.ts","sourceRoot":"","sources":["../src/oh-footer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAElD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,iBAAiB,CAAC;AAEzB,qBACa,QAAS,SAAQ,SAAS;IACrC,OAAgB,MAAM,4BAmCpB;IAEF,qBAAqB;IAErB,SAAS,SAAM;IAEf,MAAM;CAyBP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
|
package/dist/oh-footer.js
CHANGED
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
* - White/inverse text and links
|
|
16
16
|
* - Generous padding
|
|
17
17
|
*
|
|
18
|
+
* BRAND PATTERN: this belongs to the Orange Halo brand, not the core. Import
|
|
19
|
+
* it from @orange-halo/brand-orange-halo; importing it from components is
|
|
20
|
+
* deprecated and stops working in components 3.0, when this file moves to
|
|
21
|
+
* the brand package (brand plan phase 8).
|
|
22
|
+
*
|
|
18
23
|
* @element oh-footer
|
|
19
24
|
*
|
|
20
25
|
* @slot logo - Slot for logo element
|
|
@@ -47,9 +52,9 @@ let OhFooter = class OhFooter extends OhElement {
|
|
|
47
52
|
display: block;
|
|
48
53
|
background-color: var(--oh-color-accent-default);
|
|
49
54
|
color: var(--oh-color-text-on-accent);
|
|
50
|
-
font-family: var(--oh-font-family
|
|
51
|
-
font-size: var(--oh-font-size
|
|
52
|
-
line-height: var(--oh-line-height
|
|
55
|
+
font-family: var(--oh-typography-body-font-family);
|
|
56
|
+
font-size: var(--oh-typography-body-base-font-size);
|
|
57
|
+
line-height: var(--oh-typography-body-base-line-height);
|
|
53
58
|
padding: var(--oh-spacing-8) 0;
|
|
54
59
|
}
|
|
55
60
|
|
|
@@ -69,7 +74,7 @@ let OhFooter = class OhFooter extends OhElement {
|
|
|
69
74
|
}
|
|
70
75
|
|
|
71
76
|
/* Responsive - tablet: brand section spans full width */
|
|
72
|
-
@media (max-width:
|
|
77
|
+
@media (max-width: 768px) {
|
|
73
78
|
.footer__brand {
|
|
74
79
|
grid-column: 1 / -1;
|
|
75
80
|
}
|
package/dist/oh-footer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-footer.js","sourceRoot":"","sources":["../src/oh-footer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"oh-footer.js","sourceRoot":"","sources":["../src/oh-footer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;;;;;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAElD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,iBAAiB,CAAC;AAGlB,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,SAAS;IAAhC;;QAsCL,qBAAqB;QAErB,cAAS,GAAG,EAAE,CAAC;IA2BjB,CAAC;aAlEiB,WAAM,GAAG;QACvB,UAAU;QACV,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgCF;KACF,AAnCqB,CAmCpB;IAMF,MAAM;QACJ,OAAO,IAAI,CAAA;;;;;;;;;gBASC,IAAI,CAAC,SAAS;YACd,CAAC,CAAC,IAAI,CAAA,gCAAgC,IAAI,CAAC,SAAS,MAAM;YAC1D,CAAC,CAAC,IAAI;;;;;;;;;;;KAWjB,CAAC;IACJ,CAAC;;AA1BD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CACZ;AAxCJ,QAAQ;IADpB,aAAa,CAAC,WAAW,CAAC;GACd,QAAQ,CAmEpB"}
|
package/dist/oh-hero.d.ts
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
*
|
|
4
4
|
* A prominent hero section for page headers.
|
|
5
5
|
*
|
|
6
|
+
* BRAND PATTERN: this belongs to the Orange Halo brand, not the core. Import
|
|
7
|
+
* it from @orange-halo/brand-orange-halo; importing it from components is
|
|
8
|
+
* deprecated and stops working in components 3.0, when this file moves to
|
|
9
|
+
* the brand package (brand plan phase 8).
|
|
10
|
+
*
|
|
6
11
|
* @element oh-hero
|
|
7
12
|
*/
|
|
8
13
|
import { LitElement } from "lit";
|
package/dist/oh-hero.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-hero.d.ts","sourceRoot":"","sources":["../src/oh-hero.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"oh-hero.d.ts","sourceRoot":"","sources":["../src/oh-hero.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAa,UAAU,EAAW,MAAM,KAAK,CAAC;AAGrD,OAAO,kBAAkB,CAAC;AAE1B,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAChD,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjD,qBACa,MAAO,SAAQ,UAAU;IACpC,OAAgB,MAAM,0BA+IpB;IAGF,OAAO,EAAE,WAAW,CAAa;IAGjC,IAAI,EAAE,QAAQ,CAAQ;IAGtB,OAAO,SAAM;IAGb,QAAQ,SAAM;IAGd,WAAW,SAAM;IAGjB,WAAW,SAAK;IAGhB,UAAU,SAAK;IAEN,MAAM;CA4ChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,MAAM,CAAC;KACnB;CACF"}
|
package/dist/oh-hero.js
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
*
|
|
4
4
|
* A prominent hero section for page headers.
|
|
5
5
|
*
|
|
6
|
+
* BRAND PATTERN: this belongs to the Orange Halo brand, not the core. Import
|
|
7
|
+
* it from @orange-halo/brand-orange-halo; importing it from components is
|
|
8
|
+
* deprecated and stops working in components 3.0, when this file moves to
|
|
9
|
+
* the brand package (brand plan phase 8).
|
|
10
|
+
*
|
|
6
11
|
* @element oh-hero
|
|
7
12
|
*/
|
|
8
13
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -28,89 +33,88 @@ let OhHero = class OhHero extends LitElement {
|
|
|
28
33
|
static { this.styles = css `
|
|
29
34
|
:host {
|
|
30
35
|
display: block;
|
|
31
|
-
background-color: var(--oh-color-brand-primary
|
|
32
|
-
color: var(--oh-color-text-on-brand
|
|
33
|
-
font-family: var(--oh-font-family
|
|
36
|
+
background-color: var(--oh-color-brand-primary);
|
|
37
|
+
color: var(--oh-color-text-on-brand);
|
|
38
|
+
font-family: var(--oh-typography-body-font-family);
|
|
34
39
|
}
|
|
35
40
|
|
|
36
41
|
.hero {
|
|
37
|
-
padding:
|
|
42
|
+
padding: var(--oh-spacing-12) 0;
|
|
38
43
|
}
|
|
39
44
|
|
|
40
45
|
.hero--journey {
|
|
41
|
-
padding:
|
|
46
|
+
padding: var(--oh-spacing-8) 0;
|
|
42
47
|
}
|
|
43
48
|
|
|
44
49
|
/* Container styles - matches oh-container */
|
|
45
50
|
.hero__container {
|
|
46
51
|
width: 100%;
|
|
47
|
-
max-width: var(--hero-max-width,
|
|
52
|
+
max-width: var(--hero-max-width, var(--oh-layout-container-lg));
|
|
48
53
|
margin-left: auto;
|
|
49
54
|
margin-right: auto;
|
|
50
|
-
padding-left: var(--oh-spacing-4
|
|
51
|
-
padding-right: var(--oh-spacing-4
|
|
55
|
+
padding-left: var(--oh-spacing-4);
|
|
56
|
+
padding-right: var(--oh-spacing-4);
|
|
52
57
|
box-sizing: border-box;
|
|
53
58
|
}
|
|
54
59
|
|
|
55
60
|
/* Size variants */
|
|
56
61
|
:host([size="sm"]) {
|
|
57
|
-
--hero-max-width:
|
|
62
|
+
--hero-max-width: var(--oh-layout-container-sm);
|
|
58
63
|
}
|
|
59
64
|
|
|
60
65
|
:host([size="md"]) {
|
|
61
|
-
--hero-max-width:
|
|
66
|
+
--hero-max-width: var(--oh-layout-container-md);
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
:host([size="lg"]) {
|
|
65
|
-
--hero-max-width:
|
|
70
|
+
--hero-max-width: var(--oh-layout-container-lg);
|
|
66
71
|
}
|
|
67
72
|
|
|
68
73
|
:host([size="xl"]) {
|
|
69
|
-
--hero-max-width:
|
|
74
|
+
--hero-max-width: var(--oh-layout-container-xl);
|
|
70
75
|
}
|
|
71
76
|
|
|
72
77
|
.hero__heading {
|
|
73
|
-
font-size:
|
|
74
|
-
font-weight:
|
|
75
|
-
line-height:
|
|
76
|
-
margin: 0 0
|
|
77
|
-
color: var(--oh-color-text-on-brand
|
|
78
|
+
font-size: var(--oh-typography-heading-h1-font-size);
|
|
79
|
+
font-weight: var(--oh-typography-heading-h1-font-weight);
|
|
80
|
+
line-height: var(--oh-typography-heading-h1-line-height);
|
|
81
|
+
margin: 0 0 var(--oh-spacing-4) 0;
|
|
82
|
+
color: var(--oh-color-text-on-brand);
|
|
78
83
|
}
|
|
79
84
|
|
|
80
85
|
.hero__subtitle {
|
|
81
|
-
font-size:
|
|
82
|
-
font-weight:
|
|
83
|
-
line-height:
|
|
84
|
-
margin: 0 0
|
|
85
|
-
color: var(--oh-color-text-on-brand
|
|
86
|
-
opacity: 0.85;
|
|
86
|
+
font-size: var(--oh-typography-body-xl-font-size);
|
|
87
|
+
font-weight: var(--oh-typography-body-xl-font-weight);
|
|
88
|
+
line-height: var(--oh-typography-body-xl-line-height);
|
|
89
|
+
margin: 0 0 var(--oh-spacing-6) 0;
|
|
90
|
+
color: var(--oh-color-text-on-brand);
|
|
87
91
|
max-width: 65ch;
|
|
88
92
|
}
|
|
89
93
|
|
|
90
94
|
.hero__actions {
|
|
91
95
|
display: flex;
|
|
92
96
|
flex-wrap: wrap;
|
|
93
|
-
gap:
|
|
94
|
-
margin-top:
|
|
97
|
+
gap: var(--oh-spacing-4);
|
|
98
|
+
margin-top: var(--oh-spacing-6);
|
|
95
99
|
}
|
|
96
100
|
|
|
97
101
|
.hero__journey-heading {
|
|
98
|
-
font-size:
|
|
99
|
-
font-weight:
|
|
100
|
-
line-height:
|
|
101
|
-
margin: 0 0
|
|
102
|
-
color: var(--oh-color-text-on-brand
|
|
102
|
+
font-size: var(--oh-typography-heading-h2-font-size);
|
|
103
|
+
font-weight: var(--oh-typography-heading-h2-font-weight);
|
|
104
|
+
line-height: var(--oh-typography-heading-h2-line-height);
|
|
105
|
+
margin: 0 0 var(--oh-spacing-6) 0;
|
|
106
|
+
color: var(--oh-color-text-on-brand);
|
|
103
107
|
}
|
|
104
108
|
|
|
105
109
|
.hero__journey-name {
|
|
106
110
|
display: block;
|
|
107
|
-
font-
|
|
108
|
-
font-
|
|
111
|
+
font-family: var(--oh-typography-eyebrow-font-family);
|
|
112
|
+
font-size: var(--oh-typography-eyebrow-font-size);
|
|
113
|
+
font-weight: var(--oh-typography-eyebrow-font-weight);
|
|
109
114
|
text-transform: uppercase;
|
|
110
|
-
letter-spacing:
|
|
111
|
-
color: var(--oh-color-text-on-brand
|
|
112
|
-
|
|
113
|
-
margin-bottom: 8px;
|
|
115
|
+
letter-spacing: var(--oh-typography-eyebrow-letter-spacing);
|
|
116
|
+
color: var(--oh-color-text-on-brand);
|
|
117
|
+
margin-bottom: var(--oh-spacing-2);
|
|
114
118
|
}
|
|
115
119
|
|
|
116
120
|
.hero__page-name {
|
|
@@ -118,40 +122,40 @@ let OhHero = class OhHero extends LitElement {
|
|
|
118
122
|
}
|
|
119
123
|
|
|
120
124
|
.hero__progress-wrapper {
|
|
121
|
-
margin-top:
|
|
122
|
-
max-width:
|
|
125
|
+
margin-top: var(--oh-spacing-4);
|
|
126
|
+
max-width: var(--oh-layout-container-sm);
|
|
123
127
|
}
|
|
124
128
|
|
|
125
129
|
/* Responsive container padding - matches oh-container */
|
|
126
130
|
@media (min-width: 640px) {
|
|
127
131
|
.hero__container {
|
|
128
|
-
padding-left: var(--oh-spacing-6
|
|
129
|
-
padding-right: var(--oh-spacing-6
|
|
132
|
+
padding-left: var(--oh-spacing-6);
|
|
133
|
+
padding-right: var(--oh-spacing-6);
|
|
130
134
|
}
|
|
131
135
|
}
|
|
132
136
|
|
|
133
137
|
@media (min-width: 1024px) {
|
|
134
138
|
.hero__container {
|
|
135
|
-
padding-left: var(--oh-spacing-8
|
|
136
|
-
padding-right: var(--oh-spacing-8
|
|
139
|
+
padding-left: var(--oh-spacing-8);
|
|
140
|
+
padding-right: var(--oh-spacing-8);
|
|
137
141
|
}
|
|
138
142
|
}
|
|
139
143
|
|
|
140
144
|
@media (max-width: 768px) {
|
|
141
145
|
.hero {
|
|
142
|
-
padding:
|
|
146
|
+
padding: var(--oh-spacing-8) 0;
|
|
143
147
|
}
|
|
144
148
|
.hero__heading {
|
|
145
|
-
font-size:
|
|
149
|
+
font-size: var(--oh-typography-heading-h2-font-size);
|
|
146
150
|
}
|
|
147
151
|
.hero__subtitle {
|
|
148
|
-
font-size:
|
|
152
|
+
font-size: var(--oh-typography-body-lg-font-size);
|
|
149
153
|
}
|
|
150
154
|
.hero--journey {
|
|
151
|
-
padding:
|
|
155
|
+
padding: var(--oh-spacing-6) 0;
|
|
152
156
|
}
|
|
153
157
|
.hero__journey-heading {
|
|
154
|
-
font-size:
|
|
158
|
+
font-size: var(--oh-typography-heading-h3-font-size);
|
|
155
159
|
}
|
|
156
160
|
.hero__progress-wrapper {
|
|
157
161
|
max-width: 100%;
|
|
@@ -160,10 +164,10 @@ let OhHero = class OhHero extends LitElement {
|
|
|
160
164
|
|
|
161
165
|
@media (max-width: 480px) {
|
|
162
166
|
.hero__heading {
|
|
163
|
-
font-size:
|
|
167
|
+
font-size: var(--oh-typography-heading-h3-font-size);
|
|
164
168
|
}
|
|
165
169
|
.hero__journey-heading {
|
|
166
|
-
font-size:
|
|
170
|
+
font-size: var(--oh-typography-heading-h4-font-size);
|
|
167
171
|
}
|
|
168
172
|
.hero__actions {
|
|
169
173
|
flex-direction: column;
|
|
@@ -174,7 +178,7 @@ let OhHero = class OhHero extends LitElement {
|
|
|
174
178
|
if (this.variant === "journey") {
|
|
175
179
|
const progressLabel = `Step ${this.currentStep} of ${this.totalSteps}`;
|
|
176
180
|
return html `
|
|
177
|
-
<div class="hero hero--journey"
|
|
181
|
+
<div class="hero hero--journey">
|
|
178
182
|
<div class="hero__container">
|
|
179
183
|
<h1 class="hero__journey-heading">
|
|
180
184
|
${this.journeyName
|
|
@@ -198,7 +202,7 @@ let OhHero = class OhHero extends LitElement {
|
|
|
198
202
|
`;
|
|
199
203
|
}
|
|
200
204
|
return html `
|
|
201
|
-
<div class="hero"
|
|
205
|
+
<div class="hero">
|
|
202
206
|
<div class="hero__container">
|
|
203
207
|
${this.heading
|
|
204
208
|
? html `<h1 class="hero__heading">${this.heading}</h1>`
|
package/dist/oh-hero.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-hero.js","sourceRoot":"","sources":["../src/oh-hero.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"oh-hero.js","sourceRoot":"","sources":["../src/oh-hero.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;;;;;;;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,kBAAkB,CAAC;AAMnB,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,UAAU;IAA/B;;QAmJL,YAAO,GAAgB,SAAS,CAAC;QAGjC,SAAI,GAAa,IAAI,CAAC;QAGtB,YAAO,GAAG,EAAE,CAAC;QAGb,aAAQ,GAAG,EAAE,CAAC;QAGd,gBAAW,GAAG,EAAE,CAAC;QAGjB,gBAAW,GAAG,CAAC,CAAC;QAGhB,eAAU,GAAG,CAAC,CAAC;IA8CjB,CAAC;aAlNiB,WAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+I3B,AA/IqB,CA+IpB;IAuBO,MAAM;QACb,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,aAAa,GAAG,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YACvE,OAAO,IAAI,CAAA;;;;gBAID,IAAI,CAAC,WAAW;gBAChB,CAAC,CAAC,IAAI,CAAA,oCAAoC,IAAI,CAAC,WAAW,SAAS;gBACnE,CAAC,CAAC,OAAO;8CACqB,IAAI,CAAC,OAAO;;;;yBAIjC,IAAI,CAAC,WAAW;uBAClB,IAAI,CAAC,UAAU;wBACd,aAAa;;;;;;;;;OAS9B,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAA;;;YAGH,IAAI,CAAC,OAAO;YACZ,CAAC,CAAC,IAAI,CAAA,6BAA6B,IAAI,CAAC,OAAO,OAAO;YACtD,CAAC,CAAC,OAAO;YACT,IAAI,CAAC,QAAQ;YACb,CAAC,CAAC,IAAI,CAAA,6BAA6B,IAAI,CAAC,QAAQ,MAAM;YACtD,CAAC,CAAC,OAAO;;;;;;KAMhB,CAAC;IACJ,CAAC;;AA/DD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;uCACT;AAGjC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oCACpB;AAGtB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uCACd;AAGb;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wCACb;AAGd;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;2CACrC;AAGjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;2CACtC;AAGhB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;0CACtC;AArKJ,MAAM;IADlB,aAAa,CAAC,SAAS,CAAC;GACZ,MAAM,CAmNlB"}
|
package/dist/oh-icon.js
CHANGED
|
@@ -215,17 +215,17 @@ let OhIcon = class OhIcon extends OhElement {
|
|
|
215
215
|
justify-content: center;
|
|
216
216
|
color: inherit;
|
|
217
217
|
text-decoration: none;
|
|
218
|
-
border-radius: var(--oh-shape-
|
|
219
|
-
padding: var(--oh-spacing-2
|
|
220
|
-
margin: calc(-1 * var(--oh-spacing-2
|
|
218
|
+
border-radius: var(--oh-shape-compact);
|
|
219
|
+
padding: var(--oh-spacing-2);
|
|
220
|
+
margin: calc(-1 * var(--oh-spacing-2));
|
|
221
221
|
transition:
|
|
222
|
-
transform var(--oh-motion-snappy
|
|
223
|
-
box-shadow var(--oh-motion-snappy
|
|
222
|
+
transform var(--oh-motion-snappy) var(--oh-motion-ease-gentle),
|
|
223
|
+
box-shadow var(--oh-motion-snappy) var(--oh-motion-ease-gentle);
|
|
224
224
|
}
|
|
225
225
|
|
|
226
226
|
.icon-link:hover {
|
|
227
|
-
transform: translate(-
|
|
228
|
-
box-shadow:
|
|
227
|
+
transform: translate(var(--oh-lift-hover-md), var(--oh-lift-hover-md));
|
|
228
|
+
box-shadow: var(--oh-elevation-offset-lg) var(--oh-elevation-offset-lg) 0 0 var(--oh-color-border-default);
|
|
229
229
|
}
|
|
230
230
|
|
|
231
231
|
.icon-link:active {
|
|
@@ -238,12 +238,12 @@ let OhIcon = class OhIcon extends OhElement {
|
|
|
238
238
|
}
|
|
239
239
|
|
|
240
240
|
.icon-link:focus-visible {
|
|
241
|
-
box-shadow: 0 0 0 2px var(--oh-
|
|
241
|
+
box-shadow: 0 0 0 2px var(--oh-focus-ring-color);
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
/* Inverse link styles (for dark/colored backgrounds) */
|
|
245
245
|
:host([inverse]) .icon-link:hover {
|
|
246
|
-
box-shadow:
|
|
246
|
+
box-shadow: var(--oh-elevation-offset-lg) var(--oh-elevation-offset-lg) 0 0 var(--oh-color-text-on-accent);
|
|
247
247
|
}
|
|
248
248
|
|
|
249
249
|
:host([inverse]) .icon-link:focus-visible {
|
package/dist/oh-input.d.ts
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
* DESIGN DECISIONS:
|
|
8
8
|
* ─────────────────
|
|
9
9
|
* 1. CHUNKY & CONFIDENT
|
|
10
|
-
* - Thick border (
|
|
10
|
+
* - Thick border (stroke.control) that feels illustrative
|
|
11
11
|
* - Solid fill, no subtle gradients
|
|
12
|
-
* -
|
|
12
|
+
* - shape.control corners (matches button)
|
|
13
13
|
*
|
|
14
14
|
* 2. INSET SHADOW (PRESSED IN)
|
|
15
15
|
* - Shadow offset to top-left (inset)
|
|
@@ -19,11 +19,12 @@
|
|
|
19
19
|
* 3. FOCUS RISES UP
|
|
20
20
|
* - Inset shadow disappears
|
|
21
21
|
* - Outset shadow appears (field lifts)
|
|
22
|
-
* - Border turns
|
|
22
|
+
* - Border turns brand orange
|
|
23
23
|
* - Clear visual hierarchy
|
|
24
24
|
*
|
|
25
25
|
* @element oh-input
|
|
26
26
|
*/
|
|
27
|
+
import { type PropertyValues } from "lit";
|
|
27
28
|
import { OhElement } from "./base.js";
|
|
28
29
|
export type InputType = "text" | "email" | "password" | "search" | "tel" | "url";
|
|
29
30
|
export type InputState = "default" | "hover" | "focus";
|
|
@@ -46,6 +47,13 @@ export declare class OhInput extends OhElement {
|
|
|
46
47
|
private _handleChange;
|
|
47
48
|
focus(): void;
|
|
48
49
|
blur(): void;
|
|
50
|
+
/**
|
|
51
|
+
* Errors that appear after first render (e.g. on submit) are announced via
|
|
52
|
+
* role="alert". Errors present on page load are only linked with
|
|
53
|
+
* aria-describedby, so they aren't read out unprompted.
|
|
54
|
+
*/
|
|
55
|
+
private _announceError;
|
|
56
|
+
willUpdate(changed: PropertyValues): void;
|
|
49
57
|
render(): import("lit").TemplateResult<1>;
|
|
50
58
|
}
|
|
51
59
|
declare global {
|
package/dist/oh-input.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-input.d.ts","sourceRoot":"","sources":["../src/oh-input.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;
|
|
1
|
+
{"version":3,"file":"oh-input.d.ts","sourceRoot":"","sources":["../src/oh-input.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;AACjF,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAEvD,qBACa,OAAQ,SAAQ,SAAS;IACpC,OAAgB,MAAM,4BAoKpB;IAGF,IAAI,EAAE,SAAS,CAAU;IAGzB,KAAK,SAAM;IAGX,WAAW,SAAM;IAGjB,KAAK,SAAM;IAGX,UAAU,SAAM;IAGhB,SAAS,SAAM;IAGf,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,UAAU,EAAE,UAAU,CAAa;IAGnC,OAAO,CAAC,MAAM,CAAoB;IAElC,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;IAIrB,KAAK;IAIL,IAAI;IAIJ;;;;OAIG;IAEH,OAAO,CAAC,cAAc,CAAS;IAE/B,UAAU,CAAC,OAAO,EAAE,cAAc;IAMlC,MAAM;CAyDP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
|
package/dist/oh-input.figma.js
CHANGED
|
@@ -28,8 +28,8 @@ figma.connect("https://www.figma.com/design/q9ZYrOj2w9DrTVmgQFU7bu/OHDS?node-id=
|
|
|
28
28
|
value="${props.value}"
|
|
29
29
|
placeholder="${props.showPlaceholder ? props.placeholder : ""}"
|
|
30
30
|
?required="${props.required}"
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
helpertext="${props.helperText}"
|
|
32
|
+
errortext="${props.errorText}"
|
|
33
33
|
></oh-input>
|
|
34
34
|
`,
|
|
35
35
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oh-input.figma.js","sourceRoot":"","sources":["../src/oh-input.figma.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;;;;;;;;;;;GAYG;AAEH,KAAK,CAAC,OAAO,CACX,uEAAuE,EACvE;IACE,KAAK,EAAE;QACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAClD,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QACxC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QACnC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QACvC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;KACtC;IACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAA;;iBAEX,KAAK,CAAC,KAAK;iBACX,KAAK,CAAC,KAAK;uBACL,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;qBAChD,KAAK,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"oh-input.figma.js","sourceRoot":"","sources":["../src/oh-input.figma.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;;;;;;;;;;;GAYG;AAEH,KAAK,CAAC,OAAO,CACX,uEAAuE,EACvE;IACE,KAAK,EAAE;QACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5B,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAClD,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QACxC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QACnC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QACvC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;KACtC;IACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAA;;iBAEX,KAAK,CAAC,KAAK;iBACX,KAAK,CAAC,KAAK;uBACL,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;qBAChD,KAAK,CAAC,QAAQ;sBACb,KAAK,CAAC,UAAU;qBACjB,KAAK,CAAC,SAAS;;KAE/B;CACF,CACF,CAAC"}
|