@fusion.dev/helix-headless 0.113.0 → 0.115.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 +87 -1
- package/dist/element-events.generated.js +1 -0
- package/dist/map/area/map-area.d.ts +18 -0
- package/dist/map/area/map-area.js +7 -0
- package/dist/map/root/map-root.d.ts +20 -0
- package/dist/map/root/map-root.js +15 -1
- package/package.json +5 -5
- package/types/jsx.d.ts +84 -0
- package/types/vue.d.ts +21 -1
package/custom-elements.json
CHANGED
|
@@ -62448,9 +62448,28 @@
|
|
|
62448
62448
|
"declarations": [
|
|
62449
62449
|
{
|
|
62450
62450
|
"kind": "class",
|
|
62451
|
-
"description": "`connectMap` fills the shape as a layer of the map, under its place names.\nThe frame lists each area by its `label` and `description` for screen\nreaders.",
|
|
62451
|
+
"description": "`connectMap` fills the shape as a layer of the map, under its place names.\nThe frame lists each area by its `label` and `description` for screen\nreaders.\n\nSet `caption` to draw words on the map with the area, such as a letter for a\nsearch sector, in a color that reads on the map. It is drawn rather than\nfocusable, so it adds nothing to the tab order, and a screen reader reads\nthe area's `label` in the frame's list.",
|
|
62452
62452
|
"name": "HelixHeadlessMapArea",
|
|
62453
62453
|
"members": [
|
|
62454
|
+
{
|
|
62455
|
+
"kind": "field",
|
|
62456
|
+
"name": "caption",
|
|
62457
|
+
"type": {
|
|
62458
|
+
"text": "string | undefined"
|
|
62459
|
+
},
|
|
62460
|
+
"description": "Words drawn on the map with the area, such as `A` for a search sector.\nUnset, nothing is drawn. Keep it short: it is a caption on a map, and the\narea's `label` is what a screen reader hears.",
|
|
62461
|
+
"attribute": "caption"
|
|
62462
|
+
},
|
|
62463
|
+
{
|
|
62464
|
+
"kind": "field",
|
|
62465
|
+
"name": "captionPlacement",
|
|
62466
|
+
"type": {
|
|
62467
|
+
"text": "'inside' | 'outside'"
|
|
62468
|
+
},
|
|
62469
|
+
"default": "'inside'",
|
|
62470
|
+
"description": "Where the caption stands. `inside`, the default, at the point of the area\nfurthest from its edges. `outside`, just above the area's northernmost\npoint, clear of the shape, for an area whose caption would cover what is\nin it.",
|
|
62471
|
+
"attribute": "caption-placement"
|
|
62472
|
+
},
|
|
62454
62473
|
{
|
|
62455
62474
|
"kind": "field",
|
|
62456
62475
|
"name": "description",
|
|
@@ -62834,6 +62853,23 @@
|
|
|
62834
62853
|
}
|
|
62835
62854
|
],
|
|
62836
62855
|
"attributes": [
|
|
62856
|
+
{
|
|
62857
|
+
"name": "caption",
|
|
62858
|
+
"type": {
|
|
62859
|
+
"text": "string | undefined"
|
|
62860
|
+
},
|
|
62861
|
+
"description": "Words drawn on the map with the area, such as `A` for a search sector.\nUnset, nothing is drawn. Keep it short: it is a caption on a map, and the\narea's `label` is what a screen reader hears.",
|
|
62862
|
+
"fieldName": "caption"
|
|
62863
|
+
},
|
|
62864
|
+
{
|
|
62865
|
+
"name": "caption-placement",
|
|
62866
|
+
"type": {
|
|
62867
|
+
"text": "'inside' | 'outside'"
|
|
62868
|
+
},
|
|
62869
|
+
"default": "'inside'",
|
|
62870
|
+
"description": "Where the caption stands. `inside`, the default, at the point of the area\nfurthest from its edges. `outside`, just above the area's northernmost\npoint, clear of the shape, for an area whose caption would cover what is\nin it.",
|
|
62871
|
+
"fieldName": "captionPlacement"
|
|
62872
|
+
},
|
|
62837
62873
|
{
|
|
62838
62874
|
"name": "description",
|
|
62839
62875
|
"type": {
|
|
@@ -67583,6 +67619,44 @@
|
|
|
67583
67619
|
"text": "moved() => void"
|
|
67584
67620
|
}
|
|
67585
67621
|
},
|
|
67622
|
+
{
|
|
67623
|
+
"kind": "field",
|
|
67624
|
+
"name": "ready",
|
|
67625
|
+
"type": {
|
|
67626
|
+
"text": "boolean"
|
|
67627
|
+
},
|
|
67628
|
+
"description": "Whether the map has been drawn whole, which `drawn()` says. For a page that\nconnects after `helix-map-ready` has been sent, and missed it.",
|
|
67629
|
+
"readonly": true
|
|
67630
|
+
},
|
|
67631
|
+
{
|
|
67632
|
+
"kind": "field",
|
|
67633
|
+
"name": "whole",
|
|
67634
|
+
"type": {
|
|
67635
|
+
"text": "boolean"
|
|
67636
|
+
},
|
|
67637
|
+
"privacy": "private",
|
|
67638
|
+
"default": "false",
|
|
67639
|
+
"description": "What `ready` reads, written by `drawn()`."
|
|
67640
|
+
},
|
|
67641
|
+
{
|
|
67642
|
+
"kind": "method",
|
|
67643
|
+
"name": "drawn",
|
|
67644
|
+
"return": {
|
|
67645
|
+
"type": {
|
|
67646
|
+
"text": "void"
|
|
67647
|
+
}
|
|
67648
|
+
},
|
|
67649
|
+
"parameters": [
|
|
67650
|
+
{
|
|
67651
|
+
"name": "whole",
|
|
67652
|
+
"default": "true"
|
|
67653
|
+
}
|
|
67654
|
+
],
|
|
67655
|
+
"description": "Says the map has been drawn whole, or with `false`, that it no longer is.\n\n**Called by whatever draws the map**, as `connectMap` does once its driver\nhas every tile the view needs and the ground where there is terrain, and\nwith `false` when it disconnects. A page drawing its own map calls it when\nthat map is finished. The first call after the map was not drawn sends\n`helix-map-ready` and turns on `:state(ready)`, so a page can wait on the\nevent or select on the state, and a page that connects late reads `ready`.",
|
|
67656
|
+
"type": {
|
|
67657
|
+
"text": "drawn(whole = true) => void"
|
|
67658
|
+
}
|
|
67659
|
+
},
|
|
67586
67660
|
{
|
|
67587
67661
|
"kind": "method",
|
|
67588
67662
|
"name": "say",
|
|
@@ -68903,6 +68977,14 @@
|
|
|
68903
68977
|
"name": "helix-map-part-change",
|
|
68904
68978
|
"reactProp": "onhelix-map-part-change"
|
|
68905
68979
|
},
|
|
68980
|
+
{
|
|
68981
|
+
"type": {
|
|
68982
|
+
"text": "HelixMapReadyEvent"
|
|
68983
|
+
},
|
|
68984
|
+
"description": "The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages.",
|
|
68985
|
+
"name": "helix-map-ready",
|
|
68986
|
+
"reactProp": "onhelix-map-ready"
|
|
68987
|
+
},
|
|
68906
68988
|
{
|
|
68907
68989
|
"type": {
|
|
68908
68990
|
"text": "HelixMapRotateEvent"
|
|
@@ -69306,6 +69388,10 @@
|
|
|
69306
69388
|
"description": "The user has been still long enough for the header and footer to fade.",
|
|
69307
69389
|
"name": "idle"
|
|
69308
69390
|
},
|
|
69391
|
+
{
|
|
69392
|
+
"description": "The map has been drawn whole, after `helix-map-ready`.",
|
|
69393
|
+
"name": "ready"
|
|
69394
|
+
},
|
|
69309
69395
|
{
|
|
69310
69396
|
"description": "Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.",
|
|
69311
69397
|
"name": "settled",
|
|
@@ -9,6 +9,11 @@ import { type MapPoint } from '../route/map-route.js';
|
|
|
9
9
|
* The frame lists each area by its `label` and `description` for screen
|
|
10
10
|
* readers.
|
|
11
11
|
*
|
|
12
|
+
* Set `caption` to draw words on the map with the area, such as a letter for a
|
|
13
|
+
* search sector, in a color that reads on the map. It is drawn rather than
|
|
14
|
+
* focusable, so it adds nothing to the tab order, and a screen reader reads
|
|
15
|
+
* the area's `label` in the frame's list.
|
|
16
|
+
*
|
|
12
17
|
* @since 0.105.0
|
|
13
18
|
* @status experimental
|
|
14
19
|
* @category media
|
|
@@ -18,6 +23,19 @@ import { type MapPoint } from '../route/map-route.js';
|
|
|
18
23
|
* @event {HelixMapPartChangeEvent} helix-map-part-change - The area's points, name, or color changed. Used by `connectMap`; pages do not need to listen for it.
|
|
19
24
|
*/
|
|
20
25
|
export declare class HelixHeadlessMapArea extends HelixElement {
|
|
26
|
+
/**
|
|
27
|
+
* Words drawn on the map with the area, such as `A` for a search sector.
|
|
28
|
+
* Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
29
|
+
* area's `label` is what a screen reader hears.
|
|
30
|
+
*/
|
|
31
|
+
caption?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Where the caption stands. `inside`, the default, at the point of the area
|
|
34
|
+
* furthest from its edges. `outside`, just above the area's northernmost
|
|
35
|
+
* point, clear of the shape, for an area whose caption would cover what is
|
|
36
|
+
* in it.
|
|
37
|
+
*/
|
|
38
|
+
captionPlacement: 'inside' | 'outside';
|
|
21
39
|
/** More about the area. Read after its label in the frame's list. */
|
|
22
40
|
description?: string;
|
|
23
41
|
/**
|
|
@@ -11,6 +11,7 @@ import { pointsConverter } from '../route/map-route.js';
|
|
|
11
11
|
let HelixHeadlessMapArea = class HelixHeadlessMapArea extends HelixElement {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
|
+
this.captionPlacement = 'inside';
|
|
14
15
|
this.isMapLayer = true;
|
|
15
16
|
this.layerKind = 'area';
|
|
16
17
|
this.label = 'Area';
|
|
@@ -23,6 +24,12 @@ let HelixHeadlessMapArea = class HelixHeadlessMapArea extends HelixElement {
|
|
|
23
24
|
return nothing;
|
|
24
25
|
}
|
|
25
26
|
};
|
|
27
|
+
__decorate([
|
|
28
|
+
property()
|
|
29
|
+
], HelixHeadlessMapArea.prototype, "caption", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
property({ attribute: 'caption-placement' })
|
|
32
|
+
], HelixHeadlessMapArea.prototype, "captionPlacement", void 0);
|
|
26
33
|
__decorate([
|
|
27
34
|
property()
|
|
28
35
|
], HelixHeadlessMapArea.prototype, "description", void 0);
|
|
@@ -70,6 +70,7 @@ declare const HelixHeadlessMap_base: (new (...args: any[]) => import("@fusion.de
|
|
|
70
70
|
* @event {HelixMapClusterEvent} helix-map-cluster - A cluster was pressed. Sent from the marker that shows the cluster, with the names of its places.
|
|
71
71
|
* @event {HelixMapPanEvent} helix-map-pan - A pan button or arrow key was pressed. Move your map in response.
|
|
72
72
|
* @event {HelixMapPartChangeEvent} helix-map-part-change - Clustering was turned on or off. Used by `connectMap`; pages do not need to listen for it.
|
|
73
|
+
* @event {HelixMapReadyEvent} helix-map-ready - The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages.
|
|
73
74
|
* @event {HelixMapRotateEvent} helix-map-rotate - A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response.
|
|
74
75
|
* @event {HelixMapTiltEvent} helix-map-tilt - The 3D button, or Shift with Up or Down, was pressed. Tilt your map in response.
|
|
75
76
|
* @event {HelixMapZoomEvent} helix-map-zoom - A zoom button or key was pressed, with a direction. Zoom your map in response.
|
|
@@ -111,6 +112,7 @@ declare const HelixHeadlessMap_base: (new (...args: any[]) => import("@fusion.de
|
|
|
111
112
|
*
|
|
112
113
|
* @cssstate fullscreen - The map fills the screen.
|
|
113
114
|
* @cssstate idle - The user has been still long enough for the header and footer to fade.
|
|
115
|
+
* @cssstate ready - The map has been drawn whole, after `helix-map-ready`.
|
|
114
116
|
*/
|
|
115
117
|
export declare class HelixHeadlessMap extends HelixHeadlessMap_base {
|
|
116
118
|
/**
|
|
@@ -220,6 +222,24 @@ export declare class HelixHeadlessMap extends HelixHeadlessMap_base {
|
|
|
220
222
|
* say, so it says which way the map moved.
|
|
221
223
|
*/
|
|
222
224
|
moved(): void;
|
|
225
|
+
/**
|
|
226
|
+
* Whether the map has been drawn whole, which `drawn()` says. For a page that
|
|
227
|
+
* connects after `helix-map-ready` has been sent, and missed it.
|
|
228
|
+
*/
|
|
229
|
+
get ready(): boolean;
|
|
230
|
+
/** What `ready` reads, written by `drawn()`. */
|
|
231
|
+
private whole;
|
|
232
|
+
/**
|
|
233
|
+
* Says the map has been drawn whole, or with `false`, that it no longer is.
|
|
234
|
+
*
|
|
235
|
+
* **Called by whatever draws the map**, as `connectMap` does once its driver
|
|
236
|
+
* has every tile the view needs and the ground where there is terrain, and
|
|
237
|
+
* with `false` when it disconnects. A page drawing its own map calls it when
|
|
238
|
+
* that map is finished. The first call after the map was not drawn sends
|
|
239
|
+
* `helix-map-ready` and turns on `:state(ready)`, so a page can wait on the
|
|
240
|
+
* event or select on the state, and a page that connects late reads `ready`.
|
|
241
|
+
*/
|
|
242
|
+
drawn(whole?: boolean): void;
|
|
223
243
|
private say;
|
|
224
244
|
/** Records what a reader asked, so the answer can be said. */
|
|
225
245
|
private ask;
|
|
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
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
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { customElement, fillTemplate, formatNumbers, HelixActivateEvent, HelixElement, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, hostAria, KeyboardNavigationController, MixinViewport, } from '@fusion.dev/helix-core';
|
|
7
|
+
import { customElement, fillTemplate, formatNumbers, HelixActivateEvent, HelixElement, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, hostAria, KeyboardNavigationController, MixinViewport, } from '@fusion.dev/helix-core';
|
|
8
8
|
import { buildings, cloudRain, dotsNine, leaf, mountains, path, polygon, stack, target, } from '@fusion.dev/helix-icons';
|
|
9
9
|
import { html, nothing } from 'lit';
|
|
10
10
|
import { property, state } from 'lit/decorators.js';
|
|
@@ -67,6 +67,7 @@ let HelixHeadlessMap = class HelixHeadlessMap extends MixinViewport(HelixElement
|
|
|
67
67
|
this.said = '';
|
|
68
68
|
this.asked = undefined;
|
|
69
69
|
this.settling = undefined;
|
|
70
|
+
this.whole = false;
|
|
70
71
|
this.layersOpen = false;
|
|
71
72
|
this.handleOutside = (event) => {
|
|
72
73
|
if (!event.composedPath().includes(this)) {
|
|
@@ -141,6 +142,19 @@ let HelixHeadlessMap = class HelixHeadlessMap extends MixinViewport(HelixElement
|
|
|
141
142
|
clearTimeout(this.settling);
|
|
142
143
|
this.settling = setTimeout(() => this.say(), SETTLES);
|
|
143
144
|
}
|
|
145
|
+
get ready() {
|
|
146
|
+
return this.whole;
|
|
147
|
+
}
|
|
148
|
+
drawn(whole = true) {
|
|
149
|
+
if (whole === this.whole) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
this.whole = whole;
|
|
153
|
+
this.toggleState('ready', whole);
|
|
154
|
+
if (whole) {
|
|
155
|
+
this.dispatchEvent(new HelixMapReadyEvent());
|
|
156
|
+
}
|
|
157
|
+
}
|
|
144
158
|
say() {
|
|
145
159
|
const asked = this.asked;
|
|
146
160
|
this.asked = undefined;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fusion.dev/helix-headless",
|
|
3
3
|
"description": "Headless component tier. Structure, accessibility, state, and form participation. No styling.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.115.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ross Sheppard <ross.sheppard@fusion.dev>",
|
|
7
7
|
"repository": {
|
|
@@ -46,13 +46,13 @@
|
|
|
46
46
|
},
|
|
47
47
|
"bugs": "https://github.com/project-fusion/fusion/issues",
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@fusion.dev/helix-core": "0.
|
|
50
|
-
"@fusion.dev/helix-icons": "0.
|
|
49
|
+
"@fusion.dev/helix-core": "0.115.0",
|
|
50
|
+
"@fusion.dev/helix-icons": "0.115.0",
|
|
51
51
|
"uqr": "^0.1.3"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
|
-
"@fusion.dev/helix-cem": "0.
|
|
55
|
-
"@fusion.dev/helix-testing": "0.
|
|
54
|
+
"@fusion.dev/helix-cem": "0.115.0",
|
|
55
|
+
"@fusion.dev/helix-testing": "0.115.0",
|
|
56
56
|
"@fusion.dev/scripts": "0.0.0-dev",
|
|
57
57
|
"@happy-dom/global-registrator": "^20.0.0",
|
|
58
58
|
"@lit-labs/ssr": "^4.1.0",
|
package/types/jsx.d.ts
CHANGED
|
@@ -184,6 +184,7 @@ import type {
|
|
|
184
184
|
HelixMapClusterEvent,
|
|
185
185
|
HelixMapPanEvent,
|
|
186
186
|
HelixMapPartChangeEvent,
|
|
187
|
+
HelixMapReadyEvent,
|
|
187
188
|
HelixMapRotateEvent,
|
|
188
189
|
HelixMapTiltEvent,
|
|
189
190
|
HelixMapZoomEvent,
|
|
@@ -11473,6 +11474,20 @@ export type HelixHeadlessMapAreaHelixMapPartChangeElementEvent =
|
|
|
11473
11474
|
HelixHeadlessMapAreaElementEvent<HelixMapPartChangeEvent>;
|
|
11474
11475
|
|
|
11475
11476
|
export type HelixHeadlessMapAreaProps = {
|
|
11477
|
+
/** Words drawn on the map with the area, such as `A` for a search sector.
|
|
11478
|
+
Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
11479
|
+
area's `label` is what a screen reader hears. */
|
|
11480
|
+
caption?: (HelixHeadlessMapArea["caption"]) | undefined;
|
|
11481
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
11482
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
11483
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
11484
|
+
in it. */
|
|
11485
|
+
"caption-placement"?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
11486
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
11487
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
11488
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
11489
|
+
in it. */
|
|
11490
|
+
captionPlacement?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
11476
11491
|
/** More about the area. Read after its label in the frame's list. */
|
|
11477
11492
|
description?: (HelixHeadlessMapArea["description"]) | undefined;
|
|
11478
11493
|
/** A name this layer shares with other layers, such as a route and its
|
|
@@ -11493,6 +11508,20 @@ first. */
|
|
|
11493
11508
|
};
|
|
11494
11509
|
|
|
11495
11510
|
export type HelixHeadlessMapAreaSolidJsProps = {
|
|
11511
|
+
/** Words drawn on the map with the area, such as `A` for a search sector.
|
|
11512
|
+
Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
11513
|
+
area's `label` is what a screen reader hears. */
|
|
11514
|
+
"prop:caption"?: (HelixHeadlessMapArea["caption"]) | undefined;
|
|
11515
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
11516
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
11517
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
11518
|
+
in it. */
|
|
11519
|
+
"attr:caption-placement"?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
11520
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
11521
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
11522
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
11523
|
+
in it. */
|
|
11524
|
+
"prop:captionPlacement"?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
11496
11525
|
/** More about the area. Read after its label in the frame's list. */
|
|
11497
11526
|
"prop:description"?: (HelixHeadlessMapArea["description"]) | undefined;
|
|
11498
11527
|
/** A name this layer shares with other layers, such as a route and its
|
|
@@ -12025,6 +12054,9 @@ export type HelixHeadlessMapHelixMapPanElementEvent =
|
|
|
12025
12054
|
/** `helix-map-part-change` event type */
|
|
12026
12055
|
export type HelixHeadlessMapHelixMapPartChangeElementEvent =
|
|
12027
12056
|
HelixHeadlessMapElementEvent<HelixMapPartChangeEvent>;
|
|
12057
|
+
/** `helix-map-ready` event type */
|
|
12058
|
+
export type HelixHeadlessMapHelixMapReadyElementEvent =
|
|
12059
|
+
HelixHeadlessMapElementEvent<HelixMapReadyEvent>;
|
|
12028
12060
|
/** `helix-map-rotate` event type */
|
|
12029
12061
|
export type HelixHeadlessMapHelixMapRotateElementEvent =
|
|
12030
12062
|
HelixHeadlessMapElementEvent<HelixMapRotateEvent>;
|
|
@@ -12280,6 +12312,8 @@ at any zoom, and a consumer who wants their own units multiplies by them. */
|
|
|
12280
12312
|
"onhelix-map-part-change"?: ((
|
|
12281
12313
|
e: HelixHeadlessMapHelixMapPartChangeElementEvent,
|
|
12282
12314
|
) => void) | undefined;
|
|
12315
|
+
/** The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages. */
|
|
12316
|
+
"onhelix-map-ready"?: ((e: HelixHeadlessMapHelixMapReadyElementEvent) => void) | undefined;
|
|
12283
12317
|
/** A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response. */
|
|
12284
12318
|
"onhelix-map-rotate"?: ((
|
|
12285
12319
|
e: HelixHeadlessMapHelixMapRotateElementEvent,
|
|
@@ -12534,6 +12568,8 @@ at any zoom, and a consumer who wants their own units multiplies by them. */
|
|
|
12534
12568
|
"on:helix-map-part-change"?: ((
|
|
12535
12569
|
e: HelixHeadlessMapHelixMapPartChangeElementEvent,
|
|
12536
12570
|
) => void) | undefined;
|
|
12571
|
+
/** The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages. */
|
|
12572
|
+
"on:helix-map-ready"?: ((e: HelixHeadlessMapHelixMapReadyElementEvent) => void) | undefined;
|
|
12537
12573
|
/** A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response. */
|
|
12538
12574
|
"on:helix-map-rotate"?: ((
|
|
12539
12575
|
e: HelixHeadlessMapHelixMapRotateElementEvent,
|
|
@@ -32487,10 +32523,22 @@ export type CustomElements = {
|
|
|
32487
32523
|
* The frame lists each area by its `label` and `description` for screen
|
|
32488
32524
|
* readers.
|
|
32489
32525
|
*
|
|
32526
|
+
* Set `caption` to draw words on the map with the area, such as a letter for a
|
|
32527
|
+
* search sector, in a color that reads on the map. It is drawn rather than
|
|
32528
|
+
* focusable, so it adds nothing to the tab order, and a screen reader reads
|
|
32529
|
+
* the area's `label` in the frame's list.
|
|
32530
|
+
*
|
|
32490
32531
|
* ## Attributes & Properties
|
|
32491
32532
|
*
|
|
32492
32533
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
32493
32534
|
*
|
|
32535
|
+
* - `caption`: Words drawn on the map with the area, such as `A` for a search sector.
|
|
32536
|
+
* Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
32537
|
+
* area's `label` is what a screen reader hears.
|
|
32538
|
+
* - `caption-placement`/`captionPlacement`: Where the caption stands. `inside`, the default, at the point of the area
|
|
32539
|
+
* furthest from its edges. `outside`, just above the area's northernmost
|
|
32540
|
+
* point, clear of the shape, for an area whose caption would cover what is
|
|
32541
|
+
* in it.
|
|
32494
32542
|
* - `description`: More about the area. Read after its label in the frame's list.
|
|
32495
32543
|
* - `group`: A name this layer shares with other layers, such as a route and its
|
|
32496
32544
|
* dotted legs. The layers menu shows layers in the same group as one entry,
|
|
@@ -33190,6 +33238,8 @@ export type CustomElements = {
|
|
|
33190
33238
|
* - `pan-up-label`/`panUpLabel`: The pan up button's label.
|
|
33191
33239
|
* - `zoom-in-label`/`zoomInLabel`: The zoom in button's label.
|
|
33192
33240
|
* - `zoom-out-label`/`zoomOutLabel`: The zoom out button's label.
|
|
33241
|
+
* - `ready`: Whether the map has been drawn whole, which `drawn()` says. For a page that
|
|
33242
|
+
* connects after `helix-map-ready` has been sent, and missed it. (property only) (readonly)
|
|
33193
33243
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
33194
33244
|
*
|
|
33195
33245
|
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
@@ -33219,6 +33269,7 @@ export type CustomElements = {
|
|
|
33219
33269
|
* - `helix-map-cluster`: A cluster was pressed. Sent from the marker that shows the cluster, with the names of its places.
|
|
33220
33270
|
* - `helix-map-pan`: A pan button or arrow key was pressed. Move your map in response.
|
|
33221
33271
|
* - `helix-map-part-change`: Clustering was turned on or off. Used by `connectMap`; pages do not need to listen for it.
|
|
33272
|
+
* - `helix-map-ready`: The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages.
|
|
33222
33273
|
* - `helix-map-rotate`: A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response.
|
|
33223
33274
|
* - `helix-map-tilt`: The 3D button, or Shift with Up or Down, was pressed. Tilt your map in response.
|
|
33224
33275
|
* - `helix-map-zoom`: A zoom button or key was pressed, with a direction. Zoom your map in response.
|
|
@@ -33250,6 +33301,14 @@ export type CustomElements = {
|
|
|
33250
33301
|
* animation is one sentence, and it is the view's state where there is one:
|
|
33251
33302
|
* the zoom level, the way the map faces, its tilt. A pan has no state to
|
|
33252
33303
|
* say, so it says which way the map moved.
|
|
33304
|
+
* - `drawn(whole = true) => void`: Says the map has been drawn whole, or with `false`, that it no longer is.
|
|
33305
|
+
*
|
|
33306
|
+
* **Called by whatever draws the map**, as `connectMap` does once its driver
|
|
33307
|
+
* has every tile the view needs and the ground where there is terrain, and
|
|
33308
|
+
* with `false` when it disconnects. A page drawing its own map calls it when
|
|
33309
|
+
* that map is finished. The first call after the map was not drawn sends
|
|
33310
|
+
* `helix-map-ready` and turns on `:state(ready)`, so a page can wait on the
|
|
33311
|
+
* event or select on the state, and a page that connects late reads `ready`.
|
|
33253
33312
|
* - `rotate(by: number) => void`: Turns the map by some degrees, clockwise where positive.
|
|
33254
33313
|
* - `faceNorth() => void`: Turns the map to face north.
|
|
33255
33314
|
* - `tilt(by: number) => void`: Tilts the map by some degrees, toward the horizon where positive.
|
|
@@ -33307,6 +33366,7 @@ export type CustomElements = {
|
|
|
33307
33366
|
*
|
|
33308
33367
|
* - `fullscreen`: The map fills the screen.
|
|
33309
33368
|
* - `idle`: The user has been still long enough for the header and footer to fade.
|
|
33369
|
+
* - `ready`: The map has been drawn whole, after `helix-map-ready`.
|
|
33310
33370
|
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
33311
33371
|
*/
|
|
33312
33372
|
"helix-headless-map": Partial<
|
|
@@ -52544,10 +52604,22 @@ export type CustomElementsSolidJs = {
|
|
|
52544
52604
|
* The frame lists each area by its `label` and `description` for screen
|
|
52545
52605
|
* readers.
|
|
52546
52606
|
*
|
|
52607
|
+
* Set `caption` to draw words on the map with the area, such as a letter for a
|
|
52608
|
+
* search sector, in a color that reads on the map. It is drawn rather than
|
|
52609
|
+
* focusable, so it adds nothing to the tab order, and a screen reader reads
|
|
52610
|
+
* the area's `label` in the frame's list.
|
|
52611
|
+
*
|
|
52547
52612
|
* ## Attributes & Properties
|
|
52548
52613
|
*
|
|
52549
52614
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
52550
52615
|
*
|
|
52616
|
+
* - `caption`: Words drawn on the map with the area, such as `A` for a search sector.
|
|
52617
|
+
* Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
52618
|
+
* area's `label` is what a screen reader hears.
|
|
52619
|
+
* - `caption-placement`/`captionPlacement`: Where the caption stands. `inside`, the default, at the point of the area
|
|
52620
|
+
* furthest from its edges. `outside`, just above the area's northernmost
|
|
52621
|
+
* point, clear of the shape, for an area whose caption would cover what is
|
|
52622
|
+
* in it.
|
|
52551
52623
|
* - `description`: More about the area. Read after its label in the frame's list.
|
|
52552
52624
|
* - `group`: A name this layer shares with other layers, such as a route and its
|
|
52553
52625
|
* dotted legs. The layers menu shows layers in the same group as one entry,
|
|
@@ -53263,6 +53335,8 @@ export type CustomElementsSolidJs = {
|
|
|
53263
53335
|
* - `pan-up-label`/`panUpLabel`: The pan up button's label.
|
|
53264
53336
|
* - `zoom-in-label`/`zoomInLabel`: The zoom in button's label.
|
|
53265
53337
|
* - `zoom-out-label`/`zoomOutLabel`: The zoom out button's label.
|
|
53338
|
+
* - `ready`: Whether the map has been drawn whole, which `drawn()` says. For a page that
|
|
53339
|
+
* connects after `helix-map-ready` has been sent, and missed it. (property only) (readonly)
|
|
53266
53340
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
53267
53341
|
*
|
|
53268
53342
|
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
@@ -53292,6 +53366,7 @@ export type CustomElementsSolidJs = {
|
|
|
53292
53366
|
* - `helix-map-cluster`: A cluster was pressed. Sent from the marker that shows the cluster, with the names of its places.
|
|
53293
53367
|
* - `helix-map-pan`: A pan button or arrow key was pressed. Move your map in response.
|
|
53294
53368
|
* - `helix-map-part-change`: Clustering was turned on or off. Used by `connectMap`; pages do not need to listen for it.
|
|
53369
|
+
* - `helix-map-ready`: The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages.
|
|
53295
53370
|
* - `helix-map-rotate`: A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response.
|
|
53296
53371
|
* - `helix-map-tilt`: The 3D button, or Shift with Up or Down, was pressed. Tilt your map in response.
|
|
53297
53372
|
* - `helix-map-zoom`: A zoom button or key was pressed, with a direction. Zoom your map in response.
|
|
@@ -53323,6 +53398,14 @@ export type CustomElementsSolidJs = {
|
|
|
53323
53398
|
* animation is one sentence, and it is the view's state where there is one:
|
|
53324
53399
|
* the zoom level, the way the map faces, its tilt. A pan has no state to
|
|
53325
53400
|
* say, so it says which way the map moved.
|
|
53401
|
+
* - `drawn(whole = true) => void`: Says the map has been drawn whole, or with `false`, that it no longer is.
|
|
53402
|
+
*
|
|
53403
|
+
* **Called by whatever draws the map**, as `connectMap` does once its driver
|
|
53404
|
+
* has every tile the view needs and the ground where there is terrain, and
|
|
53405
|
+
* with `false` when it disconnects. A page drawing its own map calls it when
|
|
53406
|
+
* that map is finished. The first call after the map was not drawn sends
|
|
53407
|
+
* `helix-map-ready` and turns on `:state(ready)`, so a page can wait on the
|
|
53408
|
+
* event or select on the state, and a page that connects late reads `ready`.
|
|
53326
53409
|
* - `rotate(by: number) => void`: Turns the map by some degrees, clockwise where positive.
|
|
53327
53410
|
* - `faceNorth() => void`: Turns the map to face north.
|
|
53328
53411
|
* - `tilt(by: number) => void`: Tilts the map by some degrees, toward the horizon where positive.
|
|
@@ -53380,6 +53463,7 @@ export type CustomElementsSolidJs = {
|
|
|
53380
53463
|
*
|
|
53381
53464
|
* - `fullscreen`: The map fills the screen.
|
|
53382
53465
|
* - `idle`: The user has been still long enough for the header and footer to fade.
|
|
53466
|
+
* - `ready`: The map has been drawn whole, after `helix-map-ready`.
|
|
53383
53467
|
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
53384
53468
|
*/
|
|
53385
53469
|
"helix-headless-map": Partial<
|
package/types/vue.d.ts
CHANGED
|
@@ -200,6 +200,7 @@ import type {
|
|
|
200
200
|
HelixMapPartChangeEvent,
|
|
201
201
|
HelixMapClusterEvent,
|
|
202
202
|
HelixMapPanEvent,
|
|
203
|
+
HelixMapReadyEvent,
|
|
203
204
|
HelixMapRotateEvent,
|
|
204
205
|
HelixMapTiltEvent,
|
|
205
206
|
HelixMapZoomEvent,
|
|
@@ -5871,6 +5872,20 @@ export type HelixHeadlessMapAreaHelixMapPartChangeElementEvent =
|
|
|
5871
5872
|
HelixHeadlessMapAreaElementEvent<HelixMapPartChangeEvent>;
|
|
5872
5873
|
|
|
5873
5874
|
export type HelixHeadlessMapAreaVueProps = {
|
|
5875
|
+
/** Words drawn on the map with the area, such as `A` for a search sector.
|
|
5876
|
+
Unset, nothing is drawn. Keep it short: it is a caption on a map, and the
|
|
5877
|
+
area's `label` is what a screen reader hears. */
|
|
5878
|
+
caption?: (HelixHeadlessMapArea["caption"]) | undefined;
|
|
5879
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
5880
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
5881
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
5882
|
+
in it. */
|
|
5883
|
+
"caption-placement"?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
5884
|
+
/** Where the caption stands. `inside`, the default, at the point of the area
|
|
5885
|
+
furthest from its edges. `outside`, just above the area's northernmost
|
|
5886
|
+
point, clear of the shape, for an area whose caption would cover what is
|
|
5887
|
+
in it. */
|
|
5888
|
+
captionPlacement?: (HelixHeadlessMapArea["captionPlacement"]) | undefined;
|
|
5874
5889
|
/** More about the area. Read after its label in the frame's list. */
|
|
5875
5890
|
description?: (HelixHeadlessMapArea["description"]) | undefined;
|
|
5876
5891
|
/** A name this layer shares with other layers, such as a route and its
|
|
@@ -6169,6 +6184,9 @@ export type HelixHeadlessMapHelixMapPanElementEvent =
|
|
|
6169
6184
|
/** `helix-map-part-change` event type */
|
|
6170
6185
|
export type HelixHeadlessMapHelixMapPartChangeElementEvent =
|
|
6171
6186
|
HelixHeadlessMapElementEvent<HelixMapPartChangeEvent>;
|
|
6187
|
+
/** `helix-map-ready` event type */
|
|
6188
|
+
export type HelixHeadlessMapHelixMapReadyElementEvent =
|
|
6189
|
+
HelixHeadlessMapElementEvent<HelixMapReadyEvent>;
|
|
6172
6190
|
/** `helix-map-rotate` event type */
|
|
6173
6191
|
export type HelixHeadlessMapHelixMapRotateElementEvent =
|
|
6174
6192
|
HelixHeadlessMapElementEvent<HelixMapRotateEvent>;
|
|
@@ -6422,6 +6440,8 @@ export type HelixHeadlessMapVueEvents = {
|
|
|
6422
6440
|
"helix-map-pan": HelixHeadlessMapHelixMapPanElementEvent;
|
|
6423
6441
|
/** Clustering was turned on or off. Used by `connectMap`; pages do not need to listen for it. */
|
|
6424
6442
|
"helix-map-part-change": HelixHeadlessMapHelixMapPartChangeElementEvent;
|
|
6443
|
+
/** The map has been drawn whole: its style, every tile the view needs, and the ground where it has terrain. Sent once per connection. Show a map that is finished on it, where it would otherwise draw in stages. */
|
|
6444
|
+
"helix-map-ready": HelixHeadlessMapHelixMapReadyElementEvent;
|
|
6425
6445
|
/** A rotate or Face north button, or Shift with Left or Right, was pressed. Turn your map in response. */
|
|
6426
6446
|
"helix-map-rotate": HelixHeadlessMapHelixMapRotateElementEvent;
|
|
6427
6447
|
/** The 3D button, or Shift with Up or Down, was pressed. Tilt your map in response. */
|
|
@@ -12134,7 +12154,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
12134
12154
|
HelixHeadlessLoaderVueProps,
|
|
12135
12155
|
HelixHeadlessLoaderVueEvents
|
|
12136
12156
|
>;
|
|
12137
|
-
/** 'connectMap' fills the shape as a layer of the map, under its place names. The frame lists each area by its 'label' and 'description' for screen readers. */
|
|
12157
|
+
/** 'connectMap' fills the shape as a layer of the map, under its place names. The frame lists each area by its 'label' and 'description' for screen readers. Set 'caption' to draw words on the map with the area, such as a letter for a search sector, in a color that reads on the map. It is drawn rather than focusable, so it adds nothing to the tab order, and a screen reader reads the area's 'label' in the frame's list. */
|
|
12138
12158
|
"helix-headless-map-area": DefineCustomElement<
|
|
12139
12159
|
HelixHeadlessMapArea,
|
|
12140
12160
|
HelixHeadlessMapAreaVueProps,
|