@lo-tek/interfaces 0.37.0 → 0.38.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/CHANGELOG.md +137 -2
- package/README.md +4 -3
- package/agent/astro.md +1 -1
- package/agent/bundles.md +1 -1
- package/agent/datastar.md +48 -48
- package/agent/html.md +51 -51
- package/agent/react.md +1 -1
- package/agent/templates.md +49 -49
- package/core/lotek-core.wasm +0 -0
- package/core/lotek.wasm +0 -0
- package/dist/components/default-texts.d.ts +6 -0
- package/dist/components/default-texts.d.ts.map +1 -1
- package/dist/components/default-texts.js +6 -0
- package/dist/components/default-texts.js.map +1 -1
- package/dist/components/frame/dialog/lt-dialog.d.ts.map +1 -1
- package/dist/components/frame/dialog/lt-dialog.js +5 -2
- package/dist/components/frame/dialog/lt-dialog.js.map +1 -1
- package/dist/components/frame/error-summary/error-summary.d.ts +15 -2
- package/dist/components/frame/error-summary/error-summary.d.ts.map +1 -1
- package/dist/components/frame/error-summary/error-summary.js +33 -11
- package/dist/components/frame/error-summary/error-summary.js.map +1 -1
- package/dist/components/frame/error-summary/lt-error-summary.d.ts +11 -0
- package/dist/components/frame/error-summary/lt-error-summary.d.ts.map +1 -1
- package/dist/components/frame/error-summary/lt-error-summary.js +114 -8
- package/dist/components/frame/error-summary/lt-error-summary.js.map +1 -1
- package/dist/components/frame/field/lt-field.d.ts.map +1 -1
- package/dist/components/frame/field/lt-field.js +34 -14
- package/dist/components/frame/field/lt-field.js.map +1 -1
- package/dist/components/frame/popover/lt-popover.d.ts +6 -2
- package/dist/components/frame/popover/lt-popover.d.ts.map +1 -1
- package/dist/components/frame/popover/lt-popover.js +44 -14
- package/dist/components/frame/popover/lt-popover.js.map +1 -1
- package/dist/components/frame/session-timeout/lt-session-timeout.d.ts.map +1 -1
- package/dist/components/frame/session-timeout/lt-session-timeout.js +43 -6
- package/dist/components/frame/session-timeout/lt-session-timeout.js.map +1 -1
- package/dist/components/frame/suggestion/lt-suggestion.d.ts +8 -2
- package/dist/components/frame/suggestion/lt-suggestion.d.ts.map +1 -1
- package/dist/components/frame/suggestion/lt-suggestion.js +56 -37
- package/dist/components/frame/suggestion/lt-suggestion.js.map +1 -1
- package/dist/components/frame/tabs/lt-tabs.d.ts +32 -10
- package/dist/components/frame/tabs/lt-tabs.d.ts.map +1 -1
- package/dist/components/frame/tabs/lt-tabs.js +85 -21
- package/dist/components/frame/tabs/lt-tabs.js.map +1 -1
- package/dist/components/host-element.d.ts +49 -0
- package/dist/components/host-element.d.ts.map +1 -1
- package/dist/components/host-element.js +74 -0
- package/dist/components/host-element.js.map +1 -1
- package/dist/components/standalone/connection-status/connection-status.d.ts +5 -1
- package/dist/components/standalone/connection-status/connection-status.d.ts.map +1 -1
- package/dist/components/standalone/connection-status/connection-status.js +5 -1
- package/dist/components/standalone/connection-status/connection-status.js.map +1 -1
- package/dist/components/standalone/connection-status/lt-connection-status.d.ts +11 -6
- package/dist/components/standalone/connection-status/lt-connection-status.d.ts.map +1 -1
- package/dist/components/standalone/connection-status/lt-connection-status.js +34 -10
- package/dist/components/standalone/connection-status/lt-connection-status.js.map +1 -1
- package/dist/diagnostics/core.d.ts +34 -0
- package/dist/diagnostics/core.d.ts.map +1 -1
- package/dist/diagnostics/core.js +14 -2
- package/dist/diagnostics/core.js.map +1 -1
- package/dist/lotek.css +1 -1
- package/dist/lt.d.ts +1 -1
- package/dist/react.d.ts +2 -0
- package/dist/react.d.ts.map +1 -1
- package/dist/vocabulary/classes.d.ts.map +1 -1
- package/dist/vocabulary/classes.js +34 -0
- package/dist/vocabulary/classes.js.map +1 -1
- package/dist/vocabulary/elements.d.ts.map +1 -1
- package/dist/vocabulary/elements.js +87 -7
- package/dist/vocabulary/elements.js.map +1 -1
- package/dist/vocabulary/types.d.ts +54 -0
- package/dist/vocabulary/types.d.ts.map +1 -1
- package/live-templates.xml +3 -2
- package/manifest/manifest.json +133 -8
- package/manifest/manifest.schema.json +73 -0
- package/package.json +2 -1
- package/src/components/default-texts.ts +7 -0
- package/src/components/frame/dialog/lt-dialog.ts +5 -2
- package/src/components/frame/error-summary/error-summary.ts +45 -11
- package/src/components/frame/error-summary/lt-error-summary.ts +121 -7
- package/src/components/frame/field/lt-field.ts +65 -28
- package/src/components/frame/popover/lt-popover.ts +43 -12
- package/src/components/frame/session-timeout/lt-session-timeout.ts +40 -6
- package/src/components/frame/suggestion/lt-suggestion.ts +57 -36
- package/src/components/frame/tabs/lt-tabs.ts +114 -38
- package/src/components/host-element.ts +93 -0
- package/src/components/standalone/connection-status/connection-status.ts +7 -1
- package/src/components/standalone/connection-status/lt-connection-status.ts +36 -10
- package/src/diagnostics/core.ts +19 -2
- package/src/vocabulary/classes.ts +34 -0
- package/src/vocabulary/elements.ts +87 -7
- package/src/vocabulary/types.ts +50 -0
- package/web-types.json +1 -1
|
@@ -27,7 +27,10 @@ export const elements = {
|
|
|
27
27
|
"description": "The control the field wires: an `<input>`, `<textarea>` or `<select>` with its `<option>`s. `type=\"hidden\"` does not count, and only the first one is wired. The template writes `for` on the label and `id` on the control, or wraps the control in the label.",
|
|
28
28
|
"content": "none",
|
|
29
29
|
"unique": true,
|
|
30
|
-
"stableId": true
|
|
30
|
+
"stableId": true,
|
|
31
|
+
"name": {
|
|
32
|
+
"after": "label"
|
|
33
|
+
}
|
|
31
34
|
},
|
|
32
35
|
"help": {
|
|
33
36
|
"selector": ".lt-help-text",
|
|
@@ -72,7 +75,8 @@ export const elements = {
|
|
|
72
75
|
"selector": "[role='tablist'], .lt-tabs__list",
|
|
73
76
|
"description": "The tab list, a `<ul>` where each `<li>` gets `role=\"presentation\"`. It needs a name, such as `aria-label`. When the server has written `role=\"tab\"` on the links, the list can also hold other links.",
|
|
74
77
|
"content": "free",
|
|
75
|
-
"unique": true
|
|
78
|
+
"unique": true,
|
|
79
|
+
"name": {}
|
|
76
80
|
},
|
|
77
81
|
"tab": {
|
|
78
82
|
"selector": "a[role='tab'][href^='#'], .lt-tabs__list a[href^='#']:not([role])",
|
|
@@ -84,7 +88,10 @@ export const elements = {
|
|
|
84
88
|
"selector": "[role='tabpanel'], .lt-tabs__panel:not([role])",
|
|
85
89
|
"description": "The content of one tab, with the id the link points to. The panel has the same name as the tab: the heading at the top of the panel is the name when it says the same as the tab.",
|
|
86
90
|
"content": "free",
|
|
87
|
-
"multiple": true
|
|
91
|
+
"multiple": true,
|
|
92
|
+
"name": {
|
|
93
|
+
"component": true
|
|
94
|
+
}
|
|
88
95
|
}
|
|
89
96
|
},
|
|
90
97
|
"events": {
|
|
@@ -124,6 +131,10 @@ export const elements = {
|
|
|
124
131
|
"content": "text",
|
|
125
132
|
"multiple": true
|
|
126
133
|
}
|
|
134
|
+
},
|
|
135
|
+
"name": {
|
|
136
|
+
"after": "title",
|
|
137
|
+
"id": true
|
|
127
138
|
}
|
|
128
139
|
},
|
|
129
140
|
"lt-popover": {
|
|
@@ -217,13 +228,19 @@ export const elements = {
|
|
|
217
228
|
"description": "The field the user types in: `role=\"combobox\"`, otherwise the first `<input>`. The template writes `for` on the label and `id` on the field, or wraps the field in the label.",
|
|
218
229
|
"content": "none",
|
|
219
230
|
"unique": true,
|
|
220
|
-
"stableId": true
|
|
231
|
+
"stableId": true,
|
|
232
|
+
"name": {
|
|
233
|
+
"after": "label"
|
|
234
|
+
}
|
|
221
235
|
},
|
|
222
236
|
"list": {
|
|
223
237
|
"selector": "[role='listbox'], .lt-suggestion__list",
|
|
224
238
|
"description": "The list of suggestions. It sits in the top layer when it is open, `popover=\"manual\"`, and has the label as its name.",
|
|
225
239
|
"content": "parts",
|
|
226
|
-
"unique": true
|
|
240
|
+
"unique": true,
|
|
241
|
+
"name": {
|
|
242
|
+
"component": true
|
|
243
|
+
}
|
|
227
244
|
},
|
|
228
245
|
"option": {
|
|
229
246
|
"selector": "[role='option'], .lt-suggestion__list > li:not([role])",
|
|
@@ -249,6 +266,34 @@ export const elements = {
|
|
|
249
266
|
"content": "none",
|
|
250
267
|
"unique": true,
|
|
251
268
|
"optional": true
|
|
269
|
+
},
|
|
270
|
+
"label": {
|
|
271
|
+
"selector": "label",
|
|
272
|
+
"description": "The label. The component writes `for` on it from the field's id when it does not wrap the field, and names the list after it.",
|
|
273
|
+
"content": "text",
|
|
274
|
+
"optional": true
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
"texts": {
|
|
278
|
+
"suggestionNone": {
|
|
279
|
+
"text": "No matches",
|
|
280
|
+
"replacedBy": [
|
|
281
|
+
"count-none",
|
|
282
|
+
"count-other"
|
|
283
|
+
]
|
|
284
|
+
},
|
|
285
|
+
"suggestionOne": {
|
|
286
|
+
"text": "One match",
|
|
287
|
+
"replacedBy": [
|
|
288
|
+
"count-one",
|
|
289
|
+
"count-other"
|
|
290
|
+
]
|
|
291
|
+
},
|
|
292
|
+
"suggestionOther": {
|
|
293
|
+
"text": "{n} matches",
|
|
294
|
+
"replacedBy": [
|
|
295
|
+
"count-other"
|
|
296
|
+
]
|
|
252
297
|
}
|
|
253
298
|
},
|
|
254
299
|
"events": {
|
|
@@ -278,7 +323,10 @@ export const elements = {
|
|
|
278
323
|
"selector": ":scope > dialog",
|
|
279
324
|
"description": "The `<dialog>` element, as a direct child of the host.",
|
|
280
325
|
"content": "free",
|
|
281
|
-
"unique": true
|
|
326
|
+
"unique": true,
|
|
327
|
+
"name": {
|
|
328
|
+
"after": "title"
|
|
329
|
+
}
|
|
282
330
|
},
|
|
283
331
|
"title": {
|
|
284
332
|
"selector": "h1, h2, h3, h4, h5, h6",
|
|
@@ -321,6 +369,21 @@ export const elements = {
|
|
|
321
369
|
}
|
|
322
370
|
},
|
|
323
371
|
"parts": {},
|
|
372
|
+
"texts": {
|
|
373
|
+
"toastRegion": {
|
|
374
|
+
"text": "Notifications",
|
|
375
|
+
"replacedBy": [
|
|
376
|
+
"label",
|
|
377
|
+
"aria-label"
|
|
378
|
+
]
|
|
379
|
+
},
|
|
380
|
+
"toastClose": {
|
|
381
|
+
"text": "Close message",
|
|
382
|
+
"replacedBy": [
|
|
383
|
+
"close-label"
|
|
384
|
+
]
|
|
385
|
+
}
|
|
386
|
+
},
|
|
324
387
|
"events": {
|
|
325
388
|
"toast-dismiss": {}
|
|
326
389
|
}
|
|
@@ -347,7 +410,10 @@ export const elements = {
|
|
|
347
410
|
"selector": "dialog",
|
|
348
411
|
"description": "The `<dialog>` element with the warning.",
|
|
349
412
|
"content": "free",
|
|
350
|
-
"unique": true
|
|
413
|
+
"unique": true,
|
|
414
|
+
"name": {
|
|
415
|
+
"after": "title"
|
|
416
|
+
}
|
|
351
417
|
},
|
|
352
418
|
"title": {
|
|
353
419
|
"selector": "h1, h2, h3, h4, h5, h6",
|
|
@@ -401,6 +467,20 @@ export const elements = {
|
|
|
401
467
|
}
|
|
402
468
|
},
|
|
403
469
|
"parts": {},
|
|
470
|
+
"texts": {
|
|
471
|
+
"connectionOffline": {
|
|
472
|
+
"text": "No connection. What you type is not being saved.",
|
|
473
|
+
"replacedBy": [
|
|
474
|
+
"offline-text"
|
|
475
|
+
]
|
|
476
|
+
},
|
|
477
|
+
"connectionOnline": {
|
|
478
|
+
"text": "Connection restored.",
|
|
479
|
+
"replacedBy": [
|
|
480
|
+
"online-text"
|
|
481
|
+
]
|
|
482
|
+
}
|
|
483
|
+
},
|
|
404
484
|
"events": {
|
|
405
485
|
"connection-lost": {},
|
|
406
486
|
"connection-restored": {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elements.js","sourceRoot":"","sources":["../../src/vocabulary/elements.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,UAAU,EAAE;QACV,MAAM,EAAE,iDAAiD;QACzD,aAAa,EAAE,mcAAmc;QACld,YAAY,EAAE;YACZ,UAAU,EAAE;gBACV,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,0BAA0B;aAC1C;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,+CAA+C;aAC/D;YACD,cAAc,EAAE;gBACd,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,kEAAkE;aAClF;SACF;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,wFAAwF;gBACvG,SAAS,EAAE,MAAM;aAClB;YACD,SAAS,EAAE;gBACT,UAAU,EAAE,8CAA8C;gBAC1D,aAAa,EAAE,mQAAmQ;gBAClR,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"elements.js","sourceRoot":"","sources":["../../src/vocabulary/elements.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,30 @@ export type Part = {
|
|
|
36
36
|
optional?: true;
|
|
37
37
|
/** The part must have an id from the server; the component never writes one. */
|
|
38
38
|
stableId?: true;
|
|
39
|
+
/** LO-TEK demands a name for the part. */
|
|
40
|
+
name?: Name;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* A name LO-TEK demands where WAI-ARIA does not, or one the component gives
|
|
44
|
+
* itself. WAI-ARIA's own demands, by role, are in the core, and `lotek check`
|
|
45
|
+
* reports an element the markup gives no name (`without-name`).
|
|
46
|
+
*
|
|
47
|
+
* `after` is the part the component points `aria-labelledby` at when the
|
|
48
|
+
* markup has neither `aria-label` nor `aria-labelledby`, such as the heading
|
|
49
|
+
* of a dialog; then that part's name is enough. With `id` the part must have
|
|
50
|
+
* an id from the template, since the component does not write one. With
|
|
51
|
+
* `component` the component names it itself, after what the other rules
|
|
52
|
+
* check, such as the list in a suggestion field after the label, and no
|
|
53
|
+
* rule judges its name in the markup.
|
|
54
|
+
*
|
|
55
|
+
* Each of them is held to the component by a contract in
|
|
56
|
+
* `interfaces/scripts/accessibility/contracts.ts`: a mutation that takes the name away
|
|
57
|
+
* must fail in the browsers, and `lotek check` must report it.
|
|
58
|
+
*/
|
|
59
|
+
export type Name = {
|
|
60
|
+
after?: string;
|
|
61
|
+
id?: true;
|
|
62
|
+
component?: true;
|
|
39
63
|
};
|
|
40
64
|
/**
|
|
41
65
|
* An event an element dispatches, such as `dialog-toggle`. `detail` is the
|
|
@@ -52,9 +76,35 @@ export type Element = {
|
|
|
52
76
|
/** Empty for the elements that create all of their content themselves. */
|
|
53
77
|
parts?: Record<string, Part>;
|
|
54
78
|
events?: Record<string, ElementEvent>;
|
|
79
|
+
/** LO-TEK demands a name for the element itself. */
|
|
80
|
+
name?: Name;
|
|
81
|
+
/** The texts the element writes itself, by their name in `DEFAULT_TEXTS`. */
|
|
82
|
+
texts?: Record<string, DefaultText>;
|
|
55
83
|
/** Attributes that have been removed, with what applies instead. */
|
|
56
84
|
removed?: Record<string, string>;
|
|
57
85
|
};
|
|
86
|
+
/**
|
|
87
|
+
* A text the element writes itself when nobody has given it another, from
|
|
88
|
+
* `DEFAULT_TEXTS`. `replacedBy` is the attributes that replace it; any one
|
|
89
|
+
* of them is enough, and `lotek check` warns when none is there on a page in
|
|
90
|
+
* another language than the text's.
|
|
91
|
+
*/
|
|
92
|
+
export type DefaultText = {
|
|
93
|
+
text: string;
|
|
94
|
+
replacedBy: readonly string[];
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* A text the stylesheet shows in `::after` on an element with the class and
|
|
98
|
+
* `attribute`, with `value` when the selector requires one, and none of the
|
|
99
|
+
* attributes in `unless`. `variable` is the CSS variable that replaces it.
|
|
100
|
+
*/
|
|
101
|
+
export type CssText = {
|
|
102
|
+
variable: string;
|
|
103
|
+
text: string;
|
|
104
|
+
attribute: string;
|
|
105
|
+
value?: string;
|
|
106
|
+
unless?: readonly string[];
|
|
107
|
+
};
|
|
58
108
|
/** The content of `elements.ts`: tag to element. */
|
|
59
109
|
export type Elements = Record<string, Element>;
|
|
60
110
|
/**
|
|
@@ -85,6 +135,10 @@ export type ClassInfo = {
|
|
|
85
135
|
partOf?: string;
|
|
86
136
|
/** The parts the markup consists of, for the classes with a fixed structure. */
|
|
87
137
|
parts?: Record<string, Part>;
|
|
138
|
+
/** LO-TEK demands a name for the element with the class. */
|
|
139
|
+
name?: Name;
|
|
140
|
+
/** The texts the stylesheet shows on it. */
|
|
141
|
+
texts?: readonly CssText[];
|
|
88
142
|
attributes: Record<string, ClassAttribute>;
|
|
89
143
|
};
|
|
90
144
|
/** The content of `classes.ts`: class name to class. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vocabulary/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,MAAM,SAAS,GAAG,CACpB;IAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAChD,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5B;;;;;;;;;;GAUG;AACH,MAAM,MAAM,IAAI,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAC3C,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,uEAAuE;IACvE,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,gFAAgF;IAChF,QAAQ,CAAC,EAAE,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vocabulary/types.ts"],"names":[],"mappings":"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"}
|
package/live-templates.xml
CHANGED
|
@@ -15,8 +15,9 @@
|
|
|
15
15
|
<option name="HTML" value="true" />
|
|
16
16
|
</context>
|
|
17
17
|
</template>
|
|
18
|
-
<template name="lt-error-summary" value="<form novalidate> <!-- The component sets the class, role="alert" and tabindex="-1"
|
|
18
|
+
<template name="lt-error-summary" value="<form novalidate> <!-- The component sets the class, role="alert" and tabindex="-1"; the id and aria-labelledby that name the box are the template's. --> <lt-error-summary id="$errors$" aria-labelledby="$errors_title$" hidden> <h2 id="$errors_title$"></h2> <ul class="lt-list"></ul> </lt-error-summary> <label class="lt-label" for="$email$">Email address</label> <input class="lt-input" id="$email$" type="email" /> <button class="lt-button">Send application</button> </form>" description="Error summary. Moves focus to the box when it appears, and to the control when a link in the list is followed." toReformat="false" toShortenFQNames="false">
|
|
19
19
|
<variable name="errors" expression="" defaultValue=""errors"" alwaysStopAt="true" />
|
|
20
|
+
<variable name="errors_title" expression="" defaultValue=""errors-title"" alwaysStopAt="true" />
|
|
20
21
|
<variable name="email" expression="" defaultValue=""email"" alwaysStopAt="true" />
|
|
21
22
|
<context>
|
|
22
23
|
<option name="HTML" value="true" />
|
|
@@ -54,7 +55,7 @@
|
|
|
54
55
|
<option name="HTML" value="true" />
|
|
55
56
|
</context>
|
|
56
57
|
</template>
|
|
57
|
-
<template name="lt-connection-status" value="<lt-connection-status class="lt-connection-status" data-ignore-morph></lt-connection-status>" description="Tells the user when the connection to the server is lost. The app reports with `reportFailure()` and `reportSuccess()`." toReformat="false" toShortenFQNames="false">
|
|
58
|
+
<template name="lt-connection-status" value="<lt-connection-status class="lt-connection-status" role="status" aria-live="polite" data-ignore-morph></lt-connection-status>" description="Tells the user when the connection to the server is lost. The app reports with `reportFailure()` and `reportSuccess()`." toReformat="false" toShortenFQNames="false">
|
|
58
59
|
<context>
|
|
59
60
|
<option name="HTML" value="true" />
|
|
60
61
|
</context>
|
package/manifest/manifest.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.38.0",
|
|
5
|
+
"textLanguage": "en",
|
|
5
6
|
"elements": {
|
|
6
7
|
"lt-field": {
|
|
7
8
|
"link": "https://lo-tek.sobernetics.no/components/field/",
|
|
@@ -31,7 +32,10 @@
|
|
|
31
32
|
"description": "The control the field wires: an `<input>`, `<textarea>` or `<select>` with its `<option>`s. `type=\"hidden\"` does not count, and only the first one is wired. The template writes `for` on the label and `id` on the control, or wraps the control in the label.",
|
|
32
33
|
"content": "none",
|
|
33
34
|
"unique": true,
|
|
34
|
-
"stableId": true
|
|
35
|
+
"stableId": true,
|
|
36
|
+
"name": {
|
|
37
|
+
"after": "label"
|
|
38
|
+
}
|
|
35
39
|
},
|
|
36
40
|
"help": {
|
|
37
41
|
"selector": ".lt-help-text",
|
|
@@ -76,7 +80,8 @@
|
|
|
76
80
|
"selector": "[role='tablist'], .lt-tabs__list",
|
|
77
81
|
"description": "The tab list, a `<ul>` where each `<li>` gets `role=\"presentation\"`. It needs a name, such as `aria-label`. When the server has written `role=\"tab\"` on the links, the list can also hold other links.",
|
|
78
82
|
"content": "free",
|
|
79
|
-
"unique": true
|
|
83
|
+
"unique": true,
|
|
84
|
+
"name": {}
|
|
80
85
|
},
|
|
81
86
|
"tab": {
|
|
82
87
|
"selector": "a[role='tab'][href^='#'], .lt-tabs__list a[href^='#']:not([role])",
|
|
@@ -88,7 +93,10 @@
|
|
|
88
93
|
"selector": "[role='tabpanel'], .lt-tabs__panel:not([role])",
|
|
89
94
|
"description": "The content of one tab, with the id the link points to. The panel has the same name as the tab: the heading at the top of the panel is the name when it says the same as the tab.",
|
|
90
95
|
"content": "free",
|
|
91
|
-
"multiple": true
|
|
96
|
+
"multiple": true,
|
|
97
|
+
"name": {
|
|
98
|
+
"component": true
|
|
99
|
+
}
|
|
92
100
|
}
|
|
93
101
|
},
|
|
94
102
|
"events": {
|
|
@@ -128,6 +136,10 @@
|
|
|
128
136
|
"content": "text",
|
|
129
137
|
"multiple": true
|
|
130
138
|
}
|
|
139
|
+
},
|
|
140
|
+
"name": {
|
|
141
|
+
"after": "title",
|
|
142
|
+
"id": true
|
|
131
143
|
}
|
|
132
144
|
},
|
|
133
145
|
"lt-popover": {
|
|
@@ -221,13 +233,19 @@
|
|
|
221
233
|
"description": "The field the user types in: `role=\"combobox\"`, otherwise the first `<input>`. The template writes `for` on the label and `id` on the field, or wraps the field in the label.",
|
|
222
234
|
"content": "none",
|
|
223
235
|
"unique": true,
|
|
224
|
-
"stableId": true
|
|
236
|
+
"stableId": true,
|
|
237
|
+
"name": {
|
|
238
|
+
"after": "label"
|
|
239
|
+
}
|
|
225
240
|
},
|
|
226
241
|
"list": {
|
|
227
242
|
"selector": "[role='listbox'], .lt-suggestion__list",
|
|
228
243
|
"description": "The list of suggestions. It sits in the top layer when it is open, `popover=\"manual\"`, and has the label as its name.",
|
|
229
244
|
"content": "parts",
|
|
230
|
-
"unique": true
|
|
245
|
+
"unique": true,
|
|
246
|
+
"name": {
|
|
247
|
+
"component": true
|
|
248
|
+
}
|
|
231
249
|
},
|
|
232
250
|
"option": {
|
|
233
251
|
"selector": "[role='option'], .lt-suggestion__list > li:not([role])",
|
|
@@ -253,6 +271,34 @@
|
|
|
253
271
|
"content": "none",
|
|
254
272
|
"unique": true,
|
|
255
273
|
"optional": true
|
|
274
|
+
},
|
|
275
|
+
"label": {
|
|
276
|
+
"selector": "label",
|
|
277
|
+
"description": "The label. The component writes `for` on it from the field's id when it does not wrap the field, and names the list after it.",
|
|
278
|
+
"content": "text",
|
|
279
|
+
"optional": true
|
|
280
|
+
}
|
|
281
|
+
},
|
|
282
|
+
"texts": {
|
|
283
|
+
"suggestionNone": {
|
|
284
|
+
"text": "No matches",
|
|
285
|
+
"replacedBy": [
|
|
286
|
+
"count-none",
|
|
287
|
+
"count-other"
|
|
288
|
+
]
|
|
289
|
+
},
|
|
290
|
+
"suggestionOne": {
|
|
291
|
+
"text": "One match",
|
|
292
|
+
"replacedBy": [
|
|
293
|
+
"count-one",
|
|
294
|
+
"count-other"
|
|
295
|
+
]
|
|
296
|
+
},
|
|
297
|
+
"suggestionOther": {
|
|
298
|
+
"text": "{n} matches",
|
|
299
|
+
"replacedBy": [
|
|
300
|
+
"count-other"
|
|
301
|
+
]
|
|
256
302
|
}
|
|
257
303
|
},
|
|
258
304
|
"events": {
|
|
@@ -282,7 +328,10 @@
|
|
|
282
328
|
"selector": ":scope > dialog",
|
|
283
329
|
"description": "The `<dialog>` element, as a direct child of the host.",
|
|
284
330
|
"content": "free",
|
|
285
|
-
"unique": true
|
|
331
|
+
"unique": true,
|
|
332
|
+
"name": {
|
|
333
|
+
"after": "title"
|
|
334
|
+
}
|
|
286
335
|
},
|
|
287
336
|
"title": {
|
|
288
337
|
"selector": "h1, h2, h3, h4, h5, h6",
|
|
@@ -325,6 +374,21 @@
|
|
|
325
374
|
}
|
|
326
375
|
},
|
|
327
376
|
"parts": {},
|
|
377
|
+
"texts": {
|
|
378
|
+
"toastRegion": {
|
|
379
|
+
"text": "Notifications",
|
|
380
|
+
"replacedBy": [
|
|
381
|
+
"label",
|
|
382
|
+
"aria-label"
|
|
383
|
+
]
|
|
384
|
+
},
|
|
385
|
+
"toastClose": {
|
|
386
|
+
"text": "Close message",
|
|
387
|
+
"replacedBy": [
|
|
388
|
+
"close-label"
|
|
389
|
+
]
|
|
390
|
+
}
|
|
391
|
+
},
|
|
328
392
|
"events": {
|
|
329
393
|
"toast-dismiss": {}
|
|
330
394
|
}
|
|
@@ -351,7 +415,10 @@
|
|
|
351
415
|
"selector": "dialog",
|
|
352
416
|
"description": "The `<dialog>` element with the warning.",
|
|
353
417
|
"content": "free",
|
|
354
|
-
"unique": true
|
|
418
|
+
"unique": true,
|
|
419
|
+
"name": {
|
|
420
|
+
"after": "title"
|
|
421
|
+
}
|
|
355
422
|
},
|
|
356
423
|
"title": {
|
|
357
424
|
"selector": "h1, h2, h3, h4, h5, h6",
|
|
@@ -405,6 +472,20 @@
|
|
|
405
472
|
}
|
|
406
473
|
},
|
|
407
474
|
"parts": {},
|
|
475
|
+
"texts": {
|
|
476
|
+
"connectionOffline": {
|
|
477
|
+
"text": "No connection. What you type is not being saved.",
|
|
478
|
+
"replacedBy": [
|
|
479
|
+
"offline-text"
|
|
480
|
+
]
|
|
481
|
+
},
|
|
482
|
+
"connectionOnline": {
|
|
483
|
+
"text": "Connection restored.",
|
|
484
|
+
"replacedBy": [
|
|
485
|
+
"online-text"
|
|
486
|
+
]
|
|
487
|
+
}
|
|
488
|
+
},
|
|
408
489
|
"events": {
|
|
409
490
|
"connection-lost": {},
|
|
410
491
|
"connection-restored": {}
|
|
@@ -731,6 +812,7 @@
|
|
|
731
812
|
"optional": true
|
|
732
813
|
}
|
|
733
814
|
},
|
|
815
|
+
"name": {},
|
|
734
816
|
"attributes": {
|
|
735
817
|
"data-state": {
|
|
736
818
|
"values": [
|
|
@@ -749,6 +831,22 @@
|
|
|
749
831
|
"link": "https://lo-tek.sobernetics.no/components/fieldset/",
|
|
750
832
|
"content": "text",
|
|
751
833
|
"partOf": "lt-fieldset",
|
|
834
|
+
"texts": [
|
|
835
|
+
{
|
|
836
|
+
"variable": "--lt-label-required-text",
|
|
837
|
+
"text": " (required)",
|
|
838
|
+
"attribute": "data-required",
|
|
839
|
+
"value": "text"
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"variable": "--lt-label-optional-text",
|
|
843
|
+
"text": " (optional)",
|
|
844
|
+
"attribute": "data-optional",
|
|
845
|
+
"unless": [
|
|
846
|
+
"data-required"
|
|
847
|
+
]
|
|
848
|
+
}
|
|
849
|
+
],
|
|
752
850
|
"attributes": {
|
|
753
851
|
"data-required": {
|
|
754
852
|
"values": [
|
|
@@ -879,6 +977,22 @@
|
|
|
879
977
|
"description": "A label for form fields, with marking of required and optional. A CSS component.",
|
|
880
978
|
"link": "https://lo-tek.sobernetics.no/components/label/",
|
|
881
979
|
"content": "text",
|
|
980
|
+
"texts": [
|
|
981
|
+
{
|
|
982
|
+
"variable": "--lt-label-required-text",
|
|
983
|
+
"text": " (required)",
|
|
984
|
+
"attribute": "data-required",
|
|
985
|
+
"value": "text"
|
|
986
|
+
},
|
|
987
|
+
{
|
|
988
|
+
"variable": "--lt-label-optional-text",
|
|
989
|
+
"text": " (optional)",
|
|
990
|
+
"attribute": "data-optional",
|
|
991
|
+
"unless": [
|
|
992
|
+
"data-required"
|
|
993
|
+
]
|
|
994
|
+
}
|
|
995
|
+
],
|
|
882
996
|
"attributes": {
|
|
883
997
|
"data-required": {
|
|
884
998
|
"values": [
|
|
@@ -1325,6 +1439,7 @@
|
|
|
1325
1439
|
"multiple": true
|
|
1326
1440
|
}
|
|
1327
1441
|
},
|
|
1442
|
+
"name": {},
|
|
1328
1443
|
"attributes": {}
|
|
1329
1444
|
},
|
|
1330
1445
|
"lt-toggle-group__option": {
|
|
@@ -2148,6 +2263,8 @@
|
|
|
2148
2263
|
"table": {
|
|
2149
2264
|
"base": {
|
|
2150
2265
|
"class": "lt-connection-status",
|
|
2266
|
+
"role": "status",
|
|
2267
|
+
"aria-live": "polite",
|
|
2151
2268
|
"data-ignore-morph": ""
|
|
2152
2269
|
},
|
|
2153
2270
|
"options": {
|
|
@@ -2476,6 +2593,14 @@
|
|
|
2476
2593
|
"kind": "text"
|
|
2477
2594
|
},
|
|
2478
2595
|
"description": "The id of the box, so the form can move focus here after submission."
|
|
2596
|
+
},
|
|
2597
|
+
{
|
|
2598
|
+
"name": "titleId",
|
|
2599
|
+
"required": false,
|
|
2600
|
+
"type": {
|
|
2601
|
+
"kind": "text"
|
|
2602
|
+
},
|
|
2603
|
+
"description": "The id of the heading. The box takes its name from it with `aria-labelledby`. Default: the box's `id` with `-title`, so the markup carries the wiring whenever the box has an id. An empty one counts as none; one with whitespace throws."
|
|
2479
2604
|
}
|
|
2480
2605
|
],
|
|
2481
2606
|
"returns": {
|