@eui/eds-wc 22.0.0-alpha.39 → 22.0.0-alpha.41

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.
@@ -0,0 +1,110 @@
1
+ import { EdsBaseElement } from '../shared/index.js';
2
+ /**
3
+ * `<eds-wc-content-item>` — A flexible teaser that links to a page of interest and gives a quick
4
+ * overview of its content. Supports picture (left / right / top), inline (event/date-block) and
5
+ * divider variants. Layout is derived from projected children:
6
+ *
7
+ * - A `<eds-wc-content-item-picture position="top">` switches to stacked layout.
8
+ * - A `<eds-wc-date-block>` switches to inline (event) layout.
9
+ *
10
+ * @slot picture - Picture wrapper (`<eds-wc-content-item-picture>`).
11
+ * @slot date-block - Date block element (`<eds-wc-date-block>`).
12
+ * @slot - Default slot (typically `<eds-wc-content-item-body>` and any other content).
13
+ *
14
+ * @example
15
+ * ```html
16
+ * <eds-wc-content-item>
17
+ * <eds-wc-content-item-picture slot="picture">
18
+ * <img class="eds-content-item__image" src="news.jpg" alt="" />
19
+ * </eds-wc-content-item-picture>
20
+ * <eds-wc-content-item-body>
21
+ * <eds-wc-content-item-title><a href="/news">Headline</a></eds-wc-content-item-title>
22
+ * <eds-wc-content-item-description>Teaser text.</eds-wc-content-item-description>
23
+ * </eds-wc-content-item-body>
24
+ * </eds-wc-content-item>
25
+ * ```
26
+ */
27
+ export declare class EdsWcContentItem extends EdsBaseElement {
28
+ /** Whether to display a bottom divider (for vertical lists). */
29
+ hasDivider: boolean;
30
+ /** Data attribute for e2e testing. */
31
+ dataE2e: string;
32
+ /** ARIA role (reflected, defaults to `article`). */
33
+ role: string;
34
+ private _isStack;
35
+ private _isInline;
36
+ private _picturePosition;
37
+ static styles: import("lit").CSSResult;
38
+ protected render(): import("lit-html").TemplateResult<1>;
39
+ protected updated(): void;
40
+ private _reflectLayout;
41
+ private _onPictureSlotChange;
42
+ private _onDateBlockSlotChange;
43
+ }
44
+ export type EdsWcContentItemPicturePosition = 'left' | 'right' | 'top';
45
+ export type EdsWcContentItemPictureSize = 'large' | 'small';
46
+ /**
47
+ * `<eds-wc-content-item-picture>` — Wrapper for the content item's image.
48
+ * Controls image size, position relative to the content, and an optional hover zoom.
49
+ *
50
+ * @slot - The native `<img>` (add `class="eds-content-item__image"` to it).
51
+ */
52
+ export declare class EdsWcContentItemPicture extends EdsBaseElement {
53
+ /** Position relative to the content. `top` switches parent to stacked layout. */
54
+ position: EdsWcContentItemPicturePosition;
55
+ /** Size of the picture. `small` renders a compact square thumbnail. */
56
+ size: EdsWcContentItemPictureSize;
57
+ /** Enables a subtle zoom effect on hover. */
58
+ hasZoom: boolean;
59
+ static styles: import("lit").CSSResult;
60
+ protected render(): import("lit-html").TemplateResult<1>;
61
+ }
62
+ export declare class EdsWcContentItemBody extends EdsBaseElement {
63
+ static styles: import("lit").CSSResult;
64
+ protected render(): import("lit-html").TemplateResult<1>;
65
+ }
66
+ export declare class EdsWcContentItemLabels extends EdsBaseElement {
67
+ /** ARIA role for the labels group (reflected, defaults to `group`). */
68
+ role: string;
69
+ static styles: import("lit").CSSResult;
70
+ protected render(): import("lit-html").TemplateResult<1>;
71
+ }
72
+ export declare class EdsWcContentItemPrimaryMeta extends EdsBaseElement {
73
+ static styles: import("lit").CSSResult;
74
+ protected render(): import("lit-html").TemplateResult<1>;
75
+ /**
76
+ * Add dot separators between consecutive children (the ::slotted pseudo
77
+ * can only target one compound selector, so we use JS for the ::before).
78
+ */
79
+ private _addDots;
80
+ }
81
+ export declare class EdsWcContentItemTitle extends EdsBaseElement {
82
+ static styles: import("lit").CSSResult;
83
+ protected render(): import("lit-html").TemplateResult<1>;
84
+ }
85
+ export declare class EdsWcContentItemDescription extends EdsBaseElement {
86
+ static styles: import("lit").CSSResult;
87
+ protected render(): import("lit-html").TemplateResult<1>;
88
+ }
89
+ export declare class EdsWcContentItemSecondaryMeta extends EdsBaseElement {
90
+ static styles: import("lit").CSSResult;
91
+ protected render(): import("lit-html").TemplateResult<1>;
92
+ }
93
+ export declare class EdsWcContentItemSecondaryMetaItem extends EdsBaseElement {
94
+ static styles: import("lit").CSSResult;
95
+ protected render(): import("lit-html").TemplateResult<1>;
96
+ }
97
+ declare global {
98
+ interface HTMLElementTagNameMap {
99
+ 'eds-wc-content-item': EdsWcContentItem;
100
+ 'eds-wc-content-item-picture': EdsWcContentItemPicture;
101
+ 'eds-wc-content-item-body': EdsWcContentItemBody;
102
+ 'eds-wc-content-item-labels': EdsWcContentItemLabels;
103
+ 'eds-wc-content-item-primary-meta': EdsWcContentItemPrimaryMeta;
104
+ 'eds-wc-content-item-title': EdsWcContentItemTitle;
105
+ 'eds-wc-content-item-description': EdsWcContentItemDescription;
106
+ 'eds-wc-content-item-secondary-meta': EdsWcContentItemSecondaryMeta;
107
+ 'eds-wc-content-item-secondary-meta-item': EdsWcContentItemSecondaryMetaItem;
108
+ }
109
+ }
110
+ //# sourceMappingURL=eds-wc-content-item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eds-wc-content-item.d.ts","sourceRoot":"","sources":["../../src/eds-content-item/eds-wc-content-item.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMpD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBACa,gBAAiB,SAAQ,cAAc;IAChD,gEAAgE;IAEhE,UAAU,UAAS;IAEnB,sCAAsC;IAEtC,OAAO,SAAsB;IAE7B,oDAAoD;IAE3C,IAAI,SAAa;IAEjB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAuB;IAExD,OAAgB,MAAM,0BAuCpB;cAEiB,MAAM;cAQN,OAAO,IAAI,IAAI;IAIlC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,sBAAsB;CAKjC;AAMD,MAAM,MAAM,+BAA+B,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AACvE,MAAM,MAAM,2BAA2B,GAAG,OAAO,GAAG,OAAO,CAAC;AAE5D;;;;;GAKG;AACH,qBACa,uBAAwB,SAAQ,cAAc;IACvD,iFAAiF;IAEjF,QAAQ,EAAE,+BAA+B,CAAU;IAEnD,uEAAuE;IAEvE,IAAI,EAAE,2BAA2B,CAAW;IAE5C,6CAA6C;IAE7C,OAAO,UAAS;IAEhB,OAAgB,MAAM,0BAyCpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,oBAAqB,SAAQ,cAAc;IACpD,OAAgB,MAAM,0BAQpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,sBAAuB,SAAQ,cAAc;IACtD,uEAAuE;IAE9D,IAAI,SAAW;IAExB,OAAgB,MAAM,0BAOpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,2BAA4B,SAAQ,cAAc;IAC3D,OAAgB,MAAM,0BAiBpB;cAEiB,MAAM;IAIzB;;;OAGG;IACH,OAAO,CAAC,QAAQ;CAwBnB;AAMD,qBACa,qBAAsB,SAAQ,cAAc;IACrD,OAAgB,MAAM,0BAMpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,2BAA4B,SAAQ,cAAc;IAC3D,OAAgB,MAAM,0BAMpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,6BAA8B,SAAQ,cAAc;IAC7D,OAAgB,MAAM,0BASpB;cAEiB,MAAM;CAG5B;AAMD,qBACa,iCAAkC,SAAQ,cAAc;IACjE,OAAgB,MAAM,0BAMpB;cAEiB,MAAM;CAG5B;AAMD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,qBAAqB,EAAE,gBAAgB,CAAC;QACxC,6BAA6B,EAAE,uBAAuB,CAAC;QACvD,0BAA0B,EAAE,oBAAoB,CAAC;QACjD,4BAA4B,EAAE,sBAAsB,CAAC;QACrD,kCAAkC,EAAE,2BAA2B,CAAC;QAChE,2BAA2B,EAAE,qBAAqB,CAAC;QACnD,iCAAiC,EAAE,2BAA2B,CAAC;QAC/D,oCAAoC,EAAE,6BAA6B,CAAC;QACpE,yCAAyC,EAAE,iCAAiC,CAAC;KAChF;CACJ"}
@@ -0,0 +1,420 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { html, css } from 'lit';
8
+ import { customElement, property, state } from 'lit/decorators.js';
9
+ import { EdsBaseElement } from '../shared/index.js';
10
+ /* ────────────────────────────────────────────────────────────────────────────
11
+ * eds-wc-content-item — Main container
12
+ * ──────────────────────────────────────────────────────────────────────────── */
13
+ /**
14
+ * `<eds-wc-content-item>` — A flexible teaser that links to a page of interest and gives a quick
15
+ * overview of its content. Supports picture (left / right / top), inline (event/date-block) and
16
+ * divider variants. Layout is derived from projected children:
17
+ *
18
+ * - A `<eds-wc-content-item-picture position="top">` switches to stacked layout.
19
+ * - A `<eds-wc-date-block>` switches to inline (event) layout.
20
+ *
21
+ * @slot picture - Picture wrapper (`<eds-wc-content-item-picture>`).
22
+ * @slot date-block - Date block element (`<eds-wc-date-block>`).
23
+ * @slot - Default slot (typically `<eds-wc-content-item-body>` and any other content).
24
+ *
25
+ * @example
26
+ * ```html
27
+ * <eds-wc-content-item>
28
+ * <eds-wc-content-item-picture slot="picture">
29
+ * <img class="eds-content-item__image" src="news.jpg" alt="" />
30
+ * </eds-wc-content-item-picture>
31
+ * <eds-wc-content-item-body>
32
+ * <eds-wc-content-item-title><a href="/news">Headline</a></eds-wc-content-item-title>
33
+ * <eds-wc-content-item-description>Teaser text.</eds-wc-content-item-description>
34
+ * </eds-wc-content-item-body>
35
+ * </eds-wc-content-item>
36
+ * ```
37
+ */
38
+ let EdsWcContentItem = class EdsWcContentItem extends EdsBaseElement {
39
+ constructor() {
40
+ super(...arguments);
41
+ /** Whether to display a bottom divider (for vertical lists). */
42
+ this.hasDivider = false;
43
+ /** Data attribute for e2e testing. */
44
+ this.dataE2e = 'eds-content-item';
45
+ /** ARIA role (reflected, defaults to `article`). */
46
+ this.role = 'article';
47
+ this._isStack = false;
48
+ this._isInline = false;
49
+ this._picturePosition = null;
50
+ }
51
+ static { this.styles = css `
52
+ :host, *, *::before, *::after { box-sizing: border-box; }
53
+
54
+ :host {
55
+ display: flex;
56
+ flex-flow: row nowrap;
57
+ align-items: flex-start;
58
+ gap: var(--eds-sp-m);
59
+ font: var(--eds-f-paragraph-m);
60
+ color: var(--eds-c-foreground);
61
+ }
62
+
63
+ :host([picture-position='right']) ::slotted([slot='picture']) {
64
+ order: 2;
65
+ }
66
+
67
+ :host([stack]) {
68
+ flex-direction: column;
69
+ align-items: stretch;
70
+ gap: var(--eds-sp-s);
71
+ }
72
+
73
+ :host([inline]) {
74
+ align-items: flex-start;
75
+ gap: var(--eds-sp-m);
76
+ }
77
+
78
+ :host([divider]) {
79
+ padding-bottom: var(--eds-sp-m);
80
+ border-bottom: var(--eds-bw-xs) solid var(--eds-c-border-divider);
81
+ }
82
+
83
+ /* Responsive: collapse to stacked on mobile for non-inline variants */
84
+ @media (max-width: 767px) {
85
+ :host(:not([inline])) {
86
+ flex-direction: column;
87
+ align-items: stretch;
88
+ }
89
+ }
90
+ `; }
91
+ render() {
92
+ return html `
93
+ <slot name="picture" @slotchange="${this._onPictureSlotChange}"></slot>
94
+ <slot name="date-block" @slotchange="${this._onDateBlockSlotChange}"></slot>
95
+ <slot></slot>
96
+ `;
97
+ }
98
+ updated() {
99
+ this._reflectLayout();
100
+ }
101
+ _reflectLayout() {
102
+ this.toggleAttribute('stack', this._isStack);
103
+ this.toggleAttribute('inline', this._isInline);
104
+ if (this._picturePosition) {
105
+ this.setAttribute('picture-position', this._picturePosition);
106
+ }
107
+ else {
108
+ this.removeAttribute('picture-position');
109
+ }
110
+ }
111
+ _onPictureSlotChange(e) {
112
+ const slot = e.target;
113
+ const pictures = slot.assignedElements();
114
+ if (pictures.length > 0) {
115
+ const picture = pictures[0];
116
+ const pos = picture.getAttribute('position') || 'left';
117
+ const nextStack = pos === 'top';
118
+ if (this._isStack !== nextStack)
119
+ this._isStack = nextStack;
120
+ if (this._picturePosition !== pos)
121
+ this._picturePosition = pos;
122
+ }
123
+ else {
124
+ if (this._isStack)
125
+ this._isStack = false;
126
+ if (this._picturePosition !== null)
127
+ this._picturePosition = null;
128
+ }
129
+ }
130
+ _onDateBlockSlotChange(e) {
131
+ const slot = e.target;
132
+ const next = slot.assignedElements().length > 0;
133
+ if (this._isInline !== next)
134
+ this._isInline = next;
135
+ }
136
+ };
137
+ __decorate([
138
+ property({ type: Boolean, reflect: true, attribute: 'divider' })
139
+ ], EdsWcContentItem.prototype, "hasDivider", void 0);
140
+ __decorate([
141
+ property({ type: String, attribute: 'data-e2e' })
142
+ ], EdsWcContentItem.prototype, "dataE2e", void 0);
143
+ __decorate([
144
+ property({ type: String, reflect: true, attribute: 'role' })
145
+ ], EdsWcContentItem.prototype, "role", void 0);
146
+ __decorate([
147
+ state()
148
+ ], EdsWcContentItem.prototype, "_isStack", void 0);
149
+ __decorate([
150
+ state()
151
+ ], EdsWcContentItem.prototype, "_isInline", void 0);
152
+ __decorate([
153
+ state()
154
+ ], EdsWcContentItem.prototype, "_picturePosition", void 0);
155
+ EdsWcContentItem = __decorate([
156
+ customElement('eds-wc-content-item')
157
+ ], EdsWcContentItem);
158
+ export { EdsWcContentItem };
159
+ /**
160
+ * `<eds-wc-content-item-picture>` — Wrapper for the content item's image.
161
+ * Controls image size, position relative to the content, and an optional hover zoom.
162
+ *
163
+ * @slot - The native `<img>` (add `class="eds-content-item__image"` to it).
164
+ */
165
+ let EdsWcContentItemPicture = class EdsWcContentItemPicture extends EdsBaseElement {
166
+ constructor() {
167
+ super(...arguments);
168
+ /** Position relative to the content. `top` switches parent to stacked layout. */
169
+ this.position = 'left';
170
+ /** Size of the picture. `small` renders a compact square thumbnail. */
171
+ this.size = 'large';
172
+ /** Enables a subtle zoom effect on hover. */
173
+ this.hasZoom = false;
174
+ }
175
+ static { this.styles = css `
176
+ :host, *, *::before, *::after { box-sizing: border-box; }
177
+
178
+ :host {
179
+ --_eds-content-item-picture-width: 13.125rem;
180
+ --_eds-content-item-picture-ratio: 3 / 2;
181
+
182
+ display: block;
183
+ flex: 0 0 auto;
184
+ width: var(--_eds-content-item-picture-width);
185
+ aspect-ratio: var(--_eds-content-item-picture-ratio);
186
+ overflow: hidden;
187
+ border-radius: var(--eds-br-m);
188
+ }
189
+
190
+ ::slotted(.eds-content-item__image) {
191
+ display: block;
192
+ width: 100%;
193
+ height: 100%;
194
+ object-fit: cover;
195
+ transition: transform 0.3s ease;
196
+ }
197
+
198
+ :host([size='large']) {
199
+ --_eds-content-item-picture-width: 13.125rem;
200
+ --_eds-content-item-picture-ratio: 3 / 2;
201
+ }
202
+
203
+ :host([size='small']) {
204
+ --_eds-content-item-picture-width: 8.75rem;
205
+ --_eds-content-item-picture-ratio: 1 / 1;
206
+ }
207
+
208
+ :host([position='top']) {
209
+ --_eds-content-item-picture-width: 100%;
210
+ --_eds-content-item-picture-ratio: 16 / 9;
211
+ }
212
+
213
+ :host([zoom]:hover) ::slotted(.eds-content-item__image) {
214
+ transform: scale(1.05);
215
+ }
216
+ `; }
217
+ render() {
218
+ return html `<slot></slot>`;
219
+ }
220
+ };
221
+ __decorate([
222
+ property({ type: String, reflect: true })
223
+ ], EdsWcContentItemPicture.prototype, "position", void 0);
224
+ __decorate([
225
+ property({ type: String, reflect: true })
226
+ ], EdsWcContentItemPicture.prototype, "size", void 0);
227
+ __decorate([
228
+ property({ type: Boolean, reflect: true, attribute: 'zoom' })
229
+ ], EdsWcContentItemPicture.prototype, "hasZoom", void 0);
230
+ EdsWcContentItemPicture = __decorate([
231
+ customElement('eds-wc-content-item-picture')
232
+ ], EdsWcContentItemPicture);
233
+ export { EdsWcContentItemPicture };
234
+ /* ────────────────────────────────────────────────────────────────────────────
235
+ * eds-wc-content-item-body — Content block
236
+ * ──────────────────────────────────────────────────────────────────────────── */
237
+ let EdsWcContentItemBody = class EdsWcContentItemBody extends EdsBaseElement {
238
+ static { this.styles = css `
239
+ :host {
240
+ display: flex;
241
+ flex-direction: column;
242
+ flex: 1 1 auto;
243
+ min-width: 0;
244
+ gap: var(--eds-sp-xs);
245
+ }
246
+ `; }
247
+ render() {
248
+ return html `<slot></slot>`;
249
+ }
250
+ };
251
+ EdsWcContentItemBody = __decorate([
252
+ customElement('eds-wc-content-item-body')
253
+ ], EdsWcContentItemBody);
254
+ export { EdsWcContentItemBody };
255
+ /* ────────────────────────────────────────────────────────────────────────────
256
+ * eds-wc-content-item-labels — Labels group
257
+ * ──────────────────────────────────────────────────────────────────────────── */
258
+ let EdsWcContentItemLabels = class EdsWcContentItemLabels extends EdsBaseElement {
259
+ constructor() {
260
+ super(...arguments);
261
+ /** ARIA role for the labels group (reflected, defaults to `group`). */
262
+ this.role = 'group';
263
+ }
264
+ static { this.styles = css `
265
+ :host {
266
+ display: flex;
267
+ flex-wrap: wrap;
268
+ gap: var(--eds-sp-2xs);
269
+ margin-bottom: var(--eds-sp-3xs);
270
+ }
271
+ `; }
272
+ render() {
273
+ return html `<slot></slot>`;
274
+ }
275
+ };
276
+ __decorate([
277
+ property({ type: String, reflect: true, attribute: 'role' })
278
+ ], EdsWcContentItemLabels.prototype, "role", void 0);
279
+ EdsWcContentItemLabels = __decorate([
280
+ customElement('eds-wc-content-item-labels')
281
+ ], EdsWcContentItemLabels);
282
+ export { EdsWcContentItemLabels };
283
+ /* ────────────────────────────────────────────────────────────────────────────
284
+ * eds-wc-content-item-primary-meta — Primary metadata
285
+ * ──────────────────────────────────────────────────────────────────────────── */
286
+ let EdsWcContentItemPrimaryMeta = class EdsWcContentItemPrimaryMeta extends EdsBaseElement {
287
+ static { this.styles = css `
288
+ :host {
289
+ display: flex;
290
+ flex-wrap: wrap;
291
+ align-items: center;
292
+ gap: var(--eds-sp-xs);
293
+ font: var(--eds-f-microcopy-xs);
294
+ text-transform: uppercase;
295
+ letter-spacing: 0.04em;
296
+ color: var(--eds-c-foreground);
297
+ }
298
+
299
+ /* Dot separators between consecutive slotted meta entries */
300
+ ::slotted(* + *) {
301
+ padding-left: calc(var(--eds-sp-3xs) + var(--eds-sp-xs));
302
+ position: relative;
303
+ }
304
+ `; }
305
+ render() {
306
+ return html `<slot @slotchange="${this._addDots}"></slot>`;
307
+ }
308
+ /**
309
+ * Add dot separators between consecutive children (the ::slotted pseudo
310
+ * can only target one compound selector, so we use JS for the ::before).
311
+ */
312
+ _addDots(e) {
313
+ const slot = e.target;
314
+ const children = slot.assignedElements();
315
+ children.forEach((child, i) => {
316
+ const el = child;
317
+ // Clean up any previously injected dots.
318
+ el.querySelectorAll('.eds-ci-dot').forEach(d => d.remove());
319
+ if (i > 0) {
320
+ const dot = document.createElement('span');
321
+ dot.className = 'eds-ci-dot';
322
+ dot.setAttribute('aria-hidden', 'true');
323
+ dot.style.cssText = `
324
+ display: inline-block;
325
+ width: var(--eds-sp-3xs);
326
+ height: var(--eds-sp-3xs);
327
+ margin-right: var(--eds-sp-xs);
328
+ border-radius: var(--eds-br-full);
329
+ background: currentcolor;
330
+ vertical-align: middle;
331
+ `;
332
+ el.insertBefore(dot, el.firstChild);
333
+ }
334
+ });
335
+ }
336
+ };
337
+ EdsWcContentItemPrimaryMeta = __decorate([
338
+ customElement('eds-wc-content-item-primary-meta')
339
+ ], EdsWcContentItemPrimaryMeta);
340
+ export { EdsWcContentItemPrimaryMeta };
341
+ /* ────────────────────────────────────────────────────────────────────────────
342
+ * eds-wc-content-item-title — Title
343
+ * ──────────────────────────────────────────────────────────────────────────── */
344
+ let EdsWcContentItemTitle = class EdsWcContentItemTitle extends EdsBaseElement {
345
+ static { this.styles = css `
346
+ :host {
347
+ display: block;
348
+ font: var(--eds-f-heading-xs);
349
+ color: var(--eds-c-foreground);
350
+ }
351
+ `; }
352
+ render() {
353
+ return html `<slot></slot>`;
354
+ }
355
+ };
356
+ EdsWcContentItemTitle = __decorate([
357
+ customElement('eds-wc-content-item-title')
358
+ ], EdsWcContentItemTitle);
359
+ export { EdsWcContentItemTitle };
360
+ /* ────────────────────────────────────────────────────────────────────────────
361
+ * eds-wc-content-item-description — Description
362
+ * ──────────────────────────────────────────────────────────────────────────── */
363
+ let EdsWcContentItemDescription = class EdsWcContentItemDescription extends EdsBaseElement {
364
+ static { this.styles = css `
365
+ :host {
366
+ display: block;
367
+ font: var(--eds-f-paragraph-m);
368
+ color: var(--eds-c-foreground);
369
+ }
370
+ `; }
371
+ render() {
372
+ return html `<slot></slot>`;
373
+ }
374
+ };
375
+ EdsWcContentItemDescription = __decorate([
376
+ customElement('eds-wc-content-item-description')
377
+ ], EdsWcContentItemDescription);
378
+ export { EdsWcContentItemDescription };
379
+ /* ────────────────────────────────────────────────────────────────────────────
380
+ * eds-wc-content-item-secondary-meta — Secondary metadata container
381
+ * ──────────────────────────────────────────────────────────────────────────── */
382
+ let EdsWcContentItemSecondaryMeta = class EdsWcContentItemSecondaryMeta extends EdsBaseElement {
383
+ static { this.styles = css `
384
+ :host {
385
+ display: flex;
386
+ flex-wrap: wrap;
387
+ gap: var(--eds-sp-xs) var(--eds-sp-m);
388
+ margin-top: var(--eds-sp-3xs);
389
+ font: var(--eds-f-paragraph-s);
390
+ color: var(--eds-c-foreground);
391
+ }
392
+ `; }
393
+ render() {
394
+ return html `<slot></slot>`;
395
+ }
396
+ };
397
+ EdsWcContentItemSecondaryMeta = __decorate([
398
+ customElement('eds-wc-content-item-secondary-meta')
399
+ ], EdsWcContentItemSecondaryMeta);
400
+ export { EdsWcContentItemSecondaryMeta };
401
+ /* ────────────────────────────────────────────────────────────────────────────
402
+ * eds-wc-content-item-secondary-meta-item — Single secondary meta entry
403
+ * ──────────────────────────────────────────────────────────────────────────── */
404
+ let EdsWcContentItemSecondaryMetaItem = class EdsWcContentItemSecondaryMetaItem extends EdsBaseElement {
405
+ static { this.styles = css `
406
+ :host {
407
+ display: inline-flex;
408
+ align-items: center;
409
+ gap: var(--eds-sp-2xs);
410
+ }
411
+ `; }
412
+ render() {
413
+ return html `<slot></slot>`;
414
+ }
415
+ };
416
+ EdsWcContentItemSecondaryMetaItem = __decorate([
417
+ customElement('eds-wc-content-item-secondary-meta-item')
418
+ ], EdsWcContentItemSecondaryMetaItem);
419
+ export { EdsWcContentItemSecondaryMetaItem };
420
+ //# sourceMappingURL=eds-wc-content-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eds-wc-content-item.js","sourceRoot":"","sources":["../../src/eds-content-item/eds-wc-content-item.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;kFAEkF;AAElF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,cAAc;IAA7C;;QACH,gEAAgE;QAEhE,eAAU,GAAG,KAAK,CAAC;QAEnB,sCAAsC;QAEtC,YAAO,GAAG,kBAAkB,CAAC;QAE7B,oDAAoD;QAE3C,SAAI,GAAG,SAAS,CAAC;QAET,aAAQ,GAAG,KAAK,CAAC;QACjB,cAAS,GAAG,KAAK,CAAC;QAClB,qBAAgB,GAAkB,IAAI,CAAC;IAqF5D,CAAC;aAnFmB,WAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAuC3B,AAvCqB,CAuCpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA;gDAC6B,IAAI,CAAC,oBAAoB;mDACtB,IAAI,CAAC,sBAAsB;;SAErE,CAAC;IACN,CAAC;IAEkB,OAAO;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAEO,cAAc;QAClB,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,CAAQ;QACjC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAyB,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACzC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC;YACvD,MAAM,SAAS,GAAG,GAAG,KAAK,KAAK,CAAC;YAChC,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC3D,IAAI,IAAI,CAAC,gBAAgB,KAAK,GAAG;gBAAE,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC;QACnE,CAAC;aAAM,CAAC;YACJ,IAAI,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACzC,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI;gBAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACrE,CAAC;IACL,CAAC;IAEO,sBAAsB,CAAC,CAAQ;QACnC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAyB,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACvD,CAAC;;AAhGD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;oDAC9C;AAInB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;iDACrB;AAIpB;IADR,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;8CACnC;AAET;IAAhB,KAAK,EAAE;kDAA0B;AACjB;IAAhB,KAAK,EAAE;mDAA2B;AAClB;IAAhB,KAAK,EAAE;0DAAgD;AAf/C,gBAAgB;IAD5B,aAAa,CAAC,qBAAqB,CAAC;GACxB,gBAAgB,CAoG5B;;AASD;;;;;GAKG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,cAAc;IAApD;;QACH,iFAAiF;QAEjF,aAAQ,GAAoC,MAAM,CAAC;QAEnD,uEAAuE;QAEvE,SAAI,GAAgC,OAAO,CAAC;QAE5C,6CAA6C;QAE7C,YAAO,GAAG,KAAK,CAAC;IAgDpB,CAAC;aA9CmB,WAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyC3B,AAzCqB,CAyCpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAvDD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;yDACS;AAInD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qDACE;AAI5C;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;wDAC9C;AAXP,uBAAuB;IADnC,aAAa,CAAC,6BAA6B,CAAC;GAChC,uBAAuB,CA2DnC;;AAED;;kFAEkF;AAG3E,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,cAAc;aACpC,WAAM,GAAG,GAAG,CAAA;;;;;;;;KAQ3B,AARqB,CAQpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAbQ,oBAAoB;IADhC,aAAa,CAAC,0BAA0B,CAAC;GAC7B,oBAAoB,CAchC;;AAED;;kFAEkF;AAG3E,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,cAAc;IAAnD;;QACH,uEAAuE;QAE9D,SAAI,GAAG,OAAO,CAAC;IAc5B,CAAC;aAZmB,WAAM,GAAG,GAAG,CAAA;;;;;;;KAO3B,AAPqB,CAOpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAbQ;IADR,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;oDACrC;AAHf,sBAAsB;IADlC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,sBAAsB,CAiBlC;;AAED;;kFAEkF;AAG3E,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,cAAc;aAC3C,WAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;KAiB3B,AAjBqB,CAiBpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,sBAAsB,IAAI,CAAC,QAAQ,WAAW,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACK,QAAQ,CAAC,CAAQ;QACrB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAyB,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACzC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,EAAE,GAAG,KAAoB,CAAC;YAChC,yCAAyC;YACzC,EAAE,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACR,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3C,GAAG,CAAC,SAAS,GAAG,YAAY,CAAC;gBAC7B,GAAG,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBACxC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG;;;;;;;;iBAQnB,CAAC;gBACF,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;;AAnDQ,2BAA2B;IADvC,aAAa,CAAC,kCAAkC,CAAC;GACrC,2BAA2B,CAoDvC;;AAED;;kFAEkF;AAG3E,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,cAAc;aACrC,WAAM,GAAG,GAAG,CAAA;;;;;;KAM3B,AANqB,CAMpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAXQ,qBAAqB;IADjC,aAAa,CAAC,2BAA2B,CAAC;GAC9B,qBAAqB,CAYjC;;AAED;;kFAEkF;AAG3E,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,cAAc;aAC3C,WAAM,GAAG,GAAG,CAAA;;;;;;KAM3B,AANqB,CAMpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAXQ,2BAA2B;IADvC,aAAa,CAAC,iCAAiC,CAAC;GACpC,2BAA2B,CAYvC;;AAED;;kFAEkF;AAG3E,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,cAAc;aAC7C,WAAM,GAAG,GAAG,CAAA;;;;;;;;;KAS3B,AATqB,CASpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAdQ,6BAA6B;IADzC,aAAa,CAAC,oCAAoC,CAAC;GACvC,6BAA6B,CAezC;;AAED;;kFAEkF;AAG3E,IAAM,iCAAiC,GAAvC,MAAM,iCAAkC,SAAQ,cAAc;aACjD,WAAM,GAAG,GAAG,CAAA;;;;;;KAM3B,AANqB,CAMpB;IAEiB,MAAM;QACrB,OAAO,IAAI,CAAA,eAAe,CAAC;IAC/B,CAAC;;AAXQ,iCAAiC;IAD7C,aAAa,CAAC,yCAAyC,CAAC;GAC5C,iCAAiC,CAY7C"}
@@ -0,0 +1,3 @@
1
+ export { EdsWcContentItem, EdsWcContentItemPicture, EdsWcContentItemBody, EdsWcContentItemLabels, EdsWcContentItemPrimaryMeta, EdsWcContentItemTitle, EdsWcContentItemDescription, EdsWcContentItemSecondaryMeta, EdsWcContentItemSecondaryMetaItem, } from './eds-wc-content-item';
2
+ export type { EdsWcContentItemPicturePosition, EdsWcContentItemPictureSize, } from './eds-wc-content-item';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eds-content-item/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,iCAAiC,GACpC,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACR,+BAA+B,EAC/B,2BAA2B,GAC9B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { EdsWcContentItem, EdsWcContentItemPicture, EdsWcContentItemBody, EdsWcContentItemLabels, EdsWcContentItemPrimaryMeta, EdsWcContentItemTitle, EdsWcContentItemDescription, EdsWcContentItemSecondaryMeta, EdsWcContentItemSecondaryMetaItem, } from './eds-wc-content-item';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eds-content-item/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,iCAAiC,GACpC,MAAM,uBAAuB,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import { EdsBaseElement } from '../shared/eds-base.js';
2
+ /** Size variants supported by the EDS text input (mirrors `EdsInputTextSize`). */
3
+ export type EdsWcInputTextSize = 's' | 'm' | 'l';
2
4
  /**
3
5
  * `<eds-wc-input-text>` — EDS Text Input Web Component.
4
6
  *
@@ -37,6 +39,8 @@ export declare class EdsWcInputText extends EdsBaseElement {
37
39
  clearable: boolean;
38
40
  /** Show a loading spinner inside the input. */
39
41
  loading: boolean;
42
+ /** Size variant — reflected as the `size` host attribute. */
43
+ size: EdsWcInputTextSize;
40
44
  /** Accessible label (when no visible label element). */
41
45
  ariaLabel: string | null;
42
46
  private _input;
@@ -1 +1 @@
1
- {"version":3,"file":"eds-wc-input-text.d.ts","sourceRoot":"","sources":["../../src/eds-input-text/eds-wc-input-text.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBACa,cAAe,SAAQ,cAAc;IAC9C,qBAAqB;IAErB,KAAK,SAAM;IAEX,wBAAwB;IAExB,WAAW,SAAM;IAEjB,wDAAwD;IAExD,IAAI,SAAU;IAEd,sBAAsB;IAEtB,QAAQ,UAAS;IAEjB,sBAAsB;IAEtB,QAAQ,UAAS;IAEjB,2BAA2B;IAE3B,OAAO,UAAS;IAEhB,kDAAkD;IAElD,SAAS,UAAS;IAElB,+CAA+C;IAE/C,OAAO,UAAS;IAEhB,wDAAwD;IAE/C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGzC,OAAO,CAAC,MAAM,CAAoB;IAElC,sDAAsD;IACtD,IAAI,YAAY,IAAI,gBAAgB,CAEnC;IAED,OAAgB,MAAM,0BAuHpB;cAEiB,MAAM;IA6BzB,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,QAAQ;CAOnB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,mBAAmB,EAAE,cAAc,CAAC;KACvC;CACJ"}
1
+ {"version":3,"file":"eds-wc-input-text.d.ts","sourceRoot":"","sources":["../../src/eds-input-text/eds-wc-input-text.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,kFAAkF;AAClF,MAAM,MAAM,kBAAkB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBACa,cAAe,SAAQ,cAAc;IAC9C,qBAAqB;IAErB,KAAK,SAAM;IAEX,wBAAwB;IAExB,WAAW,SAAM;IAEjB,wDAAwD;IAExD,IAAI,SAAU;IAEd,sBAAsB;IAEtB,QAAQ,UAAS;IAEjB,sBAAsB;IAEtB,QAAQ,UAAS;IAEjB,2BAA2B;IAE3B,OAAO,UAAS;IAEhB,kDAAkD;IAElD,SAAS,UAAS;IAElB,+CAA+C;IAE/C,OAAO,UAAS;IAEhB,6DAA6D;IAE7D,IAAI,EAAE,kBAAkB,CAAO;IAE/B,wDAAwD;IAE/C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGzC,OAAO,CAAC,MAAM,CAAoB;IAElC,sDAAsD;IACtD,IAAI,YAAY,IAAI,gBAAgB,CAEnC;IAED,OAAgB,MAAM,0BAkJpB;cAEiB,MAAM;IA6BzB,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,QAAQ;CAOnB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,mBAAmB,EAAE,cAAc,CAAC;KACvC;CACJ"}
@@ -47,6 +47,8 @@ let EdsWcInputText = class EdsWcInputText extends EdsBaseElement {
47
47
  this.clearable = false;
48
48
  /** Show a loading spinner inside the input. */
49
49
  this.loading = false;
50
+ /** Size variant — reflected as the `size` host attribute. */
51
+ this.size = 'm';
50
52
  /** Accessible label (when no visible label element). */
51
53
  this.ariaLabel = null;
52
54
  }
@@ -60,16 +62,42 @@ let EdsWcInputText = class EdsWcInputText extends EdsBaseElement {
60
62
  position: relative;
61
63
  }
62
64
 
65
+ :host {
66
+ /* Size-driven privates (defaults = m) */
67
+ --_eds-input-text-min-height: var(--eds-si-4xl);
68
+ --_eds-input-text-pad-v: var(--eds-sp-xs);
69
+ --_eds-input-text-pad-h: var(--eds-sp-s);
70
+ --_eds-input-text-font: var(--eds-f-paragraph-m);
71
+ --_eds-input-text-placeholder-font: var(--eds-f-placeholder-m);
72
+ }
73
+
74
+ :host([size="s"]) {
75
+ --_eds-input-text-min-height: var(--eds-si-3xl); /* 32px */
76
+ --_eds-input-text-pad-v: var(--eds-sp-2xs);
77
+ --_eds-input-text-pad-h: var(--eds-sp-s);
78
+ --_eds-input-text-font: var(--eds-f-paragraph-s);
79
+ --_eds-input-text-placeholder-font: var(--eds-f-placeholder-s);
80
+ }
81
+
82
+ :host([size="l"]) {
83
+ --_eds-input-text-min-height: var(--eds-si-6xl); /* 48px */
84
+ --_eds-input-text-pad-v: var(--eds-sp-s);
85
+ --_eds-input-text-pad-h: var(--eds-sp-m);
86
+ --_eds-input-text-font: var(--eds-f-paragraph-l);
87
+ /* No --eds-f-placeholder-l token exists; l reuses the m placeholder font. */
88
+ --_eds-input-text-placeholder-font: var(--eds-f-placeholder-m);
89
+ }
90
+
63
91
  input {
64
- font: var(--eds-f-paragraph-m);
92
+ font: var(--_eds-input-text-font);
65
93
  appearance: none;
66
94
  background-color: var(--eds-c-surface-elevation);
67
95
  border: var(--eds-bw-xs) solid var(--eds-c-border-neutral);
68
96
  border-radius: var(--eds-br-s);
69
97
  box-shadow: none;
70
98
  color: var(--eds-c-foreground-default);
71
- min-height: var(--eds-si-3xl);
72
- padding: var(--eds-sp-xs) var(--eds-sp-s);
99
+ min-height: var(--_eds-input-text-min-height);
100
+ padding: var(--_eds-input-text-pad-v) var(--_eds-input-text-pad-h);
73
101
  width: 100%;
74
102
  box-sizing: border-box;
75
103
  outline: none;
@@ -77,7 +105,8 @@ let EdsWcInputText = class EdsWcInputText extends EdsBaseElement {
77
105
  }
78
106
 
79
107
  input::placeholder {
80
- color: var(--eds-c-foreground-subtler);
108
+ color: var(--eds-c-foreground-placeholder);
109
+ font: var(--_eds-input-text-placeholder-font);
81
110
  opacity: 1;
82
111
  }
83
112
 
@@ -240,6 +269,9 @@ __decorate([
240
269
  __decorate([
241
270
  property({ type: Boolean, reflect: true })
242
271
  ], EdsWcInputText.prototype, "loading", void 0);
272
+ __decorate([
273
+ property({ type: String, reflect: true })
274
+ ], EdsWcInputText.prototype, "size", void 0);
243
275
  __decorate([
244
276
  property({ type: String, attribute: 'aria-label' })
245
277
  ], EdsWcInputText.prototype, "ariaLabel", void 0);