@aceshooting/lyra-ui 28.1.6 → 29.0.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 +10 -180
- package/README.md +10 -2
- package/dist/components/charts/chart/chart.class.js +2 -2
- package/dist/components/data/data-grid/data-grid.class.js +1 -1
- package/dist/components/data/table/table.class.js +2 -2
- package/dist/components/forms/combobox/option.class.js +1 -1
- package/dist/components/forms/select/select.class.js +1 -1
- package/dist/components/media/map/map-loader.d.ts +9 -1
- package/dist/components/media/map/map-loader.js +1 -1
- package/dist/components/media/map/map.class.d.ts +20 -11
- package/dist/components/media/map/map.class.js +4 -4
- package/dist/components/retrieval/graph/graph-model.d.ts +10 -1
- package/dist/components/retrieval/graph/graph-spatial-controller.js +30 -0
- package/dist/components/retrieval/graph/graph-spatial.js +1 -0
- package/dist/components/retrieval/graph/graph.class.d.ts +45 -6
- package/dist/components/retrieval/graph/graph.class.js +2 -2
- package/dist/components/retrieval/graph/graph.styles.js +1 -1
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.d.ts +22 -5
- package/dist/components/retrieval/knowledge-graph-explorer/knowledge-graph-explorer.class.js +6 -2
- package/dist/events.d.ts +10 -5
- package/dist/framework-types.d.ts +1 -1
- package/dist/internal/accessible-text-controller.js +1 -1
- package/dist/internal/autoloader-manifest.js +1 -1
- package/dist/internal/collection-source-tracker.js +1 -0
- package/dist/internal/default-strings/media.generated.js +1 -1
- package/dist/internal/default-strings/retrieval.generated.js +1 -1
- package/dist/internal/localization-types.d.ts +1 -1
- package/dist/internal/localization.js +1 -1
- package/dist/internal/package-metadata.js +1 -1
- package/dist/internal/positioner.js +1 -1
- package/dist/lyra.d.ts +1 -1
- package/llms/components/lr-geojson-viewer.md +1 -1
- package/llms/components/lr-graph.md +78 -8
- package/llms/components/lr-knowledge-graph-explorer.md +15 -2
- package/llms/components/lr-map.md +60 -25
- package/llms/index.md +1 -1
- package/llms/peers.md +4 -3
- package/llms/shared/ai-and-peers.md +4 -3
- package/llms/shared/imports-and-registration.md +1 -1
- package/llms/shared.md +5 -4
- package/locales.json +138 -138
- package/package.json +12 -6
- package/registrations.json +1 -1
- package/skills/lyra-ui/SKILL.md +8 -3
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
|
|
9
9
|
- **Release history** [CHANGELOG.md](../../CHANGELOG.md); family-wide breaking-change summaries: [media](https://github.com/aceshooting/lyra-ui/blob/main/packages/lyra-ui/llms/media.md)
|
|
10
10
|
- **Deprecations** none
|
|
11
|
-
- **Optional peers** `maplibre-gl` — see `llms/peers.md`
|
|
11
|
+
- **Optional peers** `@aceshooting/lyra-map`, `maplibre-gl` — see `llms/peers.md`
|
|
12
12
|
- **Themeable via** 26 parts, 8 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
|
|
17
17
|
## `lr-map`
|
|
18
18
|
|
|
19
|
-
A
|
|
19
|
+
A MapLibre-compatible wrapper using the optional `@aceshooting/lyra-map` modular engine by default,
|
|
20
|
+
with a declarative legend, a single choropleth GeoJSON fill layer, markers,
|
|
20
21
|
and additive `dataLayers` — plain GeoJSON, natively clustered points, or a heatmap density surface —
|
|
21
22
|
plus a peer-neutral `map` getter for common imperative operations. Its runtime value is the
|
|
22
23
|
underlying MapLibre map. The component observes its own map-container allocation and calls the
|
|
@@ -32,6 +33,11 @@ modes use the same expression semantics at initial render and after a theme chan
|
|
|
32
33
|
|
|
33
34
|
**Properties:**
|
|
34
35
|
|
|
36
|
+
- `engine: LyraMapEngine = 'modular'` — selects the optional `@aceshooting/lyra-map` companion.
|
|
37
|
+
Set `engine="maplibre"` before connecting to explicitly use the full canonical `maplibre-gl`
|
|
38
|
+
peer. A missing selected engine shows a localized fallback; it never selects another engine.
|
|
39
|
+
Later changes take effect after disconnect/reconnect. Native compatibility includes the full
|
|
40
|
+
engine payload and is a separate opt-in from the modular default.
|
|
35
41
|
- `center: [number, number] = [0, 0]`
|
|
36
42
|
- `zoom: number = 2` — `center` and `zoom` are the declarative camera. Assigning either moves the
|
|
37
43
|
map without emitting anything. When the camera settles after a user gesture or `fitBounds()`, the
|
|
@@ -457,18 +463,33 @@ payload beside the map.
|
|
|
457
463
|
`LyraMapPointRadiusInterpolation`, `LyraMapPointIcon`, `LyraMapPointIconMode`,
|
|
458
464
|
`LyraMapPointIconLineCap`, `LyraMapPointIconLineJoin`, `LyraMapMarker`, `LyraMapMarkerActivationDetail`,
|
|
459
465
|
`LyraMapMarkerActivationSource`, `LyraMapLegendToggleDetail`, `LyraMapLegendPanelToggleDetail`,
|
|
460
|
-
`LyraMapStyleSpecification`, and `LyraMapInstance`.
|
|
466
|
+
`LyraMapStyleSpecification`, `LyraMapEngine`, `LyraMapFeatureRequirements`, and `LyraMapInstance`.
|
|
461
467
|
|
|
462
468
|
**Getters:** `map: LyraMapInstance | undefined` → the underlying runtime `maplibregl.Map`, exposed
|
|
463
469
|
through the peer-neutral `getCanvas()`, `getCenter()`, `getZoom()`, `setCenter()`, `setZoom()`, and
|
|
464
470
|
`resize()` subset so merely importing Lyra does not require `maplibre-gl` declarations. A consumer
|
|
465
471
|
that installed the optional peer and needs its full imperative API can explicitly narrow the runtime
|
|
466
|
-
value to `
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
+
value to the selected engine's `Map` type. `LyraMapInstance.prepareFeatures?()` is present on the
|
|
473
|
+
modular engine and absent on canonical MapLibre, so guard it or narrow to the companion `Map`
|
|
474
|
+
before calling. Identity is preserved: `.map` is the engine instance, not a proxy.
|
|
475
|
+
|
|
476
|
+
The modular engine automatically prepares initial and replacement style requirements, including
|
|
477
|
+
projection and terrain. `<lr-map>` additionally awaits per-map main-thread and worker readiness
|
|
478
|
+
before adding generated choropleth or `dataLayers` sources and layers. New heatmap, clustering, and
|
|
479
|
+
symbol requirements are prepared when introduced. Failed or superseded preparations never apply
|
|
480
|
+
stale overlays, and disconnect aborts outstanding preparation.
|
|
481
|
+
|
|
482
|
+
For direct imperative mutations, call `await map.prepareFeatures(requirements, { signal })` with
|
|
483
|
+
actual `sources`, `layers`, `projection`, and `terrain` descriptors before introducing new families
|
|
484
|
+
through synchronous `addSource`, `addLayer`, `setProjection`, or `setTerrain` calls. Requirements use
|
|
485
|
+
`LyraMapFeatureRequirements`; `signal` is optional. A map constructed with `style: null` is initialized
|
|
486
|
+
by this per-map method before those mutations. Global `prepareStyle()` warms main modules only;
|
|
487
|
+
it does not replace per-map worker readiness. Same-family updates remain synchronous after readiness.
|
|
488
|
+
|
|
489
|
+
**Methods:** `LyraMap.preload(engine: LyraMapEngine = 'modular'): Promise<boolean>` starts the selected
|
|
490
|
+
optional-peer import without constructing a map or allocating a WebGL context. Pass `'maplibre'`
|
|
491
|
+
for an explicitly native element. It resolves to `false` when the selected peer is unavailable,
|
|
492
|
+
allowing an application to choose a fallback before connecting an element.
|
|
472
493
|
|
|
473
494
|
`fitBounds(bounds: LyraMapBounds, options?: LyraMapFitBoundsOptions): boolean` frames a box
|
|
474
495
|
`[[west, south], [east, north]]` in the viewport: the way to show every current marker, or a
|
|
@@ -616,7 +637,7 @@ A swatch rendering an entry's `icon` carries `data-icon="true"`, paints the glyp
|
|
|
616
637
|
own colour through `currentColor`, and drops the colour block, its border and the `pattern`
|
|
617
638
|
overlay — all three would sit on top of the shape they identify. The glyph stays decorative: the row's
|
|
618
639
|
visible label carries its meaning. That association is advertised only while it is true — while
|
|
619
|
-
the optional
|
|
640
|
+
the selected optional map peer is still loading, and after any failure, there is no map
|
|
620
641
|
container in the tree, so `legend` withholds `aria-controls` rather than leaving a dangling
|
|
621
642
|
idref.
|
|
622
643
|
Under `legendInteractive`, a row carrying a `value` wraps its swatch and label in a
|
|
@@ -663,8 +684,9 @@ peer unavailable, owner-realm WebGL2 unavailable, or initialization failed. A po
|
|
|
663
684
|
appended to the document's pre-mounted `[data-lr-live-region="assertive"]` sink rather than making
|
|
664
685
|
shadow chrome live; raw caught errors are never exposed.
|
|
665
686
|
|
|
666
|
-
**Standard peer controls:** after `lr-map-load`, narrow `.map` to the
|
|
667
|
-
|
|
687
|
+
**Standard peer controls:** after `lr-map-load`, narrow `.map` to the selected engine's `Map`.
|
|
688
|
+
For the default engine, import `NavigationControl` from `@aceshooting/lyra-map/controls/navigation`
|
|
689
|
+
and `ScaleControl` from `@aceshooting/lyra-map/controls/scale`, then use `addControl(new NavigationControl(), 'bottom-right')` and
|
|
668
690
|
`addControl(new ScaleControl({ unit: 'metric' }), 'bottom-left')`. No document-level peer CSS or
|
|
669
691
|
shadow-root modification is needed: navigation buttons, compass glyph, scale bar and control
|
|
670
692
|
corners are styled with Lyra tokens. The corners follow inline start/end under RTL. The legend
|
|
@@ -712,20 +734,32 @@ var(--lr-color-brand-quiet), var(--lr-color-mix-partner) var(--lr-color-mix-acti
|
|
|
712
734
|
control group), `--lr-color-border-subtle` (popup, legend and legend-limit rule edges),
|
|
713
735
|
`--lr-shadow`, `--lr-radius`.
|
|
714
736
|
|
|
715
|
-
**Optional peer deps:**
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
737
|
+
**Optional peer deps:** the default is `@aceshooting/lyra-map` `^1.0.0` (lazy-loaded). Install and
|
|
738
|
+
configure the companion's Vite plugin so the engine and module worker share the same emitted
|
|
739
|
+
feature graph:
|
|
740
|
+
|
|
741
|
+
```ts
|
|
742
|
+
// vite.config.ts
|
|
743
|
+
import { defineConfig } from 'vite';
|
|
744
|
+
import { lyraMapWorkerPlugin } from '@aceshooting/lyra-map/vite';
|
|
745
|
+
export default defineConfig({ plugins: [lyraMapWorkerPlugin()] });
|
|
746
|
+
```
|
|
747
|
+
|
|
748
|
+
The plugin disables document module-preload helpers for chunks also imported by workers. See the
|
|
749
|
+
companion README for Rollup/Rolldown integration or the explicit `setWorkerUrl()` override. Missing
|
|
750
|
+
worker configuration fails visibly. Importing the companion during SSR is safe; worker creation
|
|
751
|
+
occurs in the browser.
|
|
752
|
+
|
|
753
|
+
`<lr-map>` styles the generated canvas, marker, popup, and control DOM inside its shadow root;
|
|
754
|
+
a page-level map stylesheet is neither required nor able to reach those nodes. The explicit
|
|
755
|
+
`engine="maplibre"` choice uses the separate optional `maplibre-gl` `>=5 <7` peer. Canonical v6 needs
|
|
756
|
+
its own bundler-specific module-worker URL; v5's standard build includes its worker.
|
|
757
|
+
|
|
758
|
+
With the default companion configured:
|
|
721
759
|
|
|
722
760
|
```html
|
|
723
761
|
<lr-map center="[2.35, 48.85]" zoom="10"></lr-map>
|
|
724
762
|
<script type="module">
|
|
725
|
-
import { setWorkerUrl } from "maplibre-gl";
|
|
726
|
-
import workerUrl from "maplibre-gl/dist/maplibre-gl-worker.mjs?worker&url";
|
|
727
|
-
setWorkerUrl(workerUrl);
|
|
728
|
-
|
|
729
763
|
const m = document.querySelector("lr-map");
|
|
730
764
|
m.mapStyle = { version: 8, sources: {}, layers: [] }; // explicit, network-silent baseline
|
|
731
765
|
m.choropleth = {
|
|
@@ -752,8 +786,9 @@ Vite with v6:
|
|
|
752
786
|
</script>
|
|
753
787
|
```
|
|
754
788
|
|
|
755
|
-
|
|
756
|
-
|
|
789
|
+
For the explicit canonical engine, configure its worker before connecting the element. For example,
|
|
790
|
+
Vite with MapLibre v6 uses `setWorkerUrl` from `maplibre-gl` with a URL imported from
|
|
791
|
+
`maplibre-gl/dist/maplibre-gl-worker.mjs?worker&url`. Other bundlers use different forms; see
|
|
757
792
|
https://maplibre.org/maplibre-gl-js/docs/#esm.
|
|
758
793
|
|
|
759
794
|
**Known gotchas:**
|
|
@@ -798,7 +833,7 @@ undefined`, or changing `choropleth.sourceId` to a different value, now calls `r
|
|
|
798
833
|
(notably `url(...)`, which `background` also accepts and would otherwise fetch as soon as the
|
|
799
834
|
swatch renders). The required `pattern` remains distinct in forced colors through solid, dashed,
|
|
800
835
|
dotted, and double border/shape encodings.
|
|
801
|
-
- while the
|
|
836
|
+
- while the selected map peer is resolving, the host/base expose `aria-busy="true"` and show a
|
|
802
837
|
decorative `<lr-skeleton shape="rect" announce="false">` in place of the map container.
|
|
803
838
|
Ordinary sr-only text preserves the localized `loading` label without creating a shadow live
|
|
804
839
|
region.
|
package/llms/index.md
CHANGED
|
@@ -193,7 +193,7 @@ Optional peers: `llms/peers.md`. Safe `wa-*`/`sl-*` migration: `llms/migration.m
|
|
|
193
193
|
|
|
194
194
|
- `lr-flag` · lr-flag.js · `stable` since `4.0.0` — a country/language flag.
|
|
195
195
|
- `lr-sequence-playback` · lr-sequence-playback.js · `stable` since `9.0.0` — steps a current index through `[0, itemCount)` on a fixed interval (play/pause), the common building block behind ad-hoc play-timers in t...
|
|
196
|
-
- `lr-map` · lr-map.js · `stable` since `4.0.0` — a
|
|
196
|
+
- `lr-map` · lr-map.js · `stable` since `4.0.0` — a modular MapLibre-compatible wrapper with a declarative legend, choropleth GeoJSON layer, markers, and additive `dataLayers` GeoJSON ove...
|
|
197
197
|
- `lr-drop-zone` · lr-drop-zone.js · `experimental` since `16.0.0` — - a drag-and-drop region wrapper with no file input of its own.
|
|
198
198
|
- `lr-file-input` · lr-file-input.js · `stable` since `4.0.0` — a drag-drop + click-to-browse file dropzone.
|
|
199
199
|
- `lr-image-comparer` · lr-image-comparer.js · `stable` since `4.0.0` — compares two slotted surfaces with a keyboard- accessible range divider.
|
package/llms/peers.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# Optional peer dependencies
|
|
4
4
|
|
|
5
|
-
All
|
|
5
|
+
All 31 peers are **optional**: nothing here is needed to install or use the library,
|
|
6
6
|
but they have two deliberately different roles.
|
|
7
7
|
|
|
8
8
|
**Framework declaration peers (3).** React, Svelte, and Vue are compile-time peers
|
|
9
9
|
only when a project imports their matching opt-in declaration entry. Those entry points emit empty
|
|
10
10
|
JavaScript, no component imports these frameworks, and Lyra ships no runtime wrapper.
|
|
11
11
|
|
|
12
|
-
**Component-loaded peers (
|
|
12
|
+
**Component-loaded peers (28).** No component imports one eagerly. Install a
|
|
13
13
|
peer only when you use a component that needs it.
|
|
14
14
|
|
|
15
15
|
**How they load.** Most component-loaded peers resolve through a dynamic `import()` on first use.
|
|
@@ -38,7 +38,8 @@ for the page.
|
|
|
38
38
|
| Peer | Range | Needed by |
|
|
39
39
|
|---|---|---|
|
|
40
40
|
| `@aceshooting/lyra-flags` | `^2.3.0` | _(loaded by a shared internal module)_ |
|
|
41
|
-
| `@aceshooting/lyra-
|
|
41
|
+
| `@aceshooting/lyra-map` | `^1.0.0` | `lr-geojson-viewer`, `lr-map` |
|
|
42
|
+
| `@aceshooting/lyra-translations` | `^29.0.0` | _(not referenced by any component)_ |
|
|
42
43
|
| `@aiden0z/pptx-renderer` | `^1.3.0` | `lr-pptx-viewer` |
|
|
43
44
|
| `@sgratzl/chartjs-chart-boxplot` | `^4.0.0` | `lr-box-plot` |
|
|
44
45
|
| `chart.js` | `^4.0.1` | `lr-bar-chart`, `lr-box-plot`, `lr-bubble-chart`, `lr-chart`, `lr-doughnut-chart`, `lr-histogram`, `lr-line-chart`, `lr-pie-chart`, `lr-polar-area-chart`, `lr-radar-chart`, `lr-scatter-chart` |
|
|
@@ -118,7 +118,7 @@ preferred in production.
|
|
|
118
118
|
|
|
119
119
|
## Optional peer dependencies
|
|
120
120
|
|
|
121
|
-
All
|
|
121
|
+
All 31 peers are optional, in two groups. The 28 component-facing peers remain outside the default
|
|
122
122
|
install; components load them on demand where applicable. React, Svelte, and Vue are
|
|
123
123
|
compile-time-only peers for their matching
|
|
124
124
|
opt-in declaration entries (`custom-elements-jsx`, `svelte`, and `vue`): those entries emit empty
|
|
@@ -134,7 +134,7 @@ adapter (`loadLibphonenumberAdapter()`) rather than importing `libphonenumber-js
|
|
|
134
134
|
### Experimental DOCX editing companion
|
|
135
135
|
|
|
136
136
|
Use `@aceshooting/lyra-docs` for editing; `lr-docx-viewer` remains a viewer in Lyra UI.
|
|
137
|
-
The companion
|
|
137
|
+
The companion bundles a lazily loaded document engine. Its installed README owns
|
|
138
138
|
installation, admission limits, lifecycle, exact supported structures and save receipts.
|
|
139
139
|
|
|
140
140
|
```ts
|
|
@@ -149,7 +149,8 @@ replace-and-advance, Outline, Checks and Review panels, table formatting and loc
|
|
|
149
149
|
image tools. `createDocxSession({ mount })` supports a host-owned toolbar; it requires a
|
|
150
150
|
connected empty light-DOM mount. Both routes expose `can()`/`execute()`, `find()`/
|
|
151
151
|
`selectMatch()`/`replaceMatch()`, `outline()`/`selectOutlineItem()`, `inspectDocument()`/
|
|
152
|
-
`selectDiagnostic()`, and `review()`/`selectReviewItem()`.
|
|
152
|
+
`selectDiagnostic()`, and `review()`/`selectReviewItem()`. Await `execute()` before inspecting its
|
|
153
|
+
result or issuing a dependent command; it includes any required feature preparation. Query rows are copied, bounded
|
|
153
154
|
and revision-scoped; refresh after edits and pass the returned `expectedRevision` when
|
|
154
155
|
navigating. Queries do not save or fetch. Inspection covers body metadata only; capability
|
|
155
156
|
fields `preserved`, `renderable` and `editable` remain `unverified`, and the report is not
|
|
@@ -164,7 +164,7 @@ The entry points, then:
|
|
|
164
164
|
`lr-scatter-chart`), `lr-box-plot`, `lr-histogram`, `lr-map`, `lr-graph`,
|
|
165
165
|
`lr-knowledge-graph-explorer` and `lr-geojson-viewer`. Those always need their own subpath import,
|
|
166
166
|
from `all.js` exactly as from the root — the entry deliberately preserves the optional-peer
|
|
167
|
-
isolation contract rather than putting `chart.js`, `maplibre-gl`, or the `d3-*` set on the
|
|
167
|
+
isolation contract rather than putting `chart.js`, `@aceshooting/lyra-map`, `maplibre-gl`, or the `d3-*` set on the
|
|
168
168
|
critical path of every install. It is the one import that defeats tree-shaking.
|
|
169
169
|
(Server-side, `@aceshooting/lyra-ui/ssr/all.js` is the counterpart that _does_ register the
|
|
170
170
|
complete inventory, optional-peer families included; see "SSR and declarative shadow DOM".)
|
package/llms/shared.md
CHANGED
|
@@ -163,7 +163,7 @@ The entry points, then:
|
|
|
163
163
|
`lr-scatter-chart`), `lr-box-plot`, `lr-histogram`, `lr-map`, `lr-graph`,
|
|
164
164
|
`lr-knowledge-graph-explorer` and `lr-geojson-viewer`. Those always need their own subpath import,
|
|
165
165
|
from `all.js` exactly as from the root — the entry deliberately preserves the optional-peer
|
|
166
|
-
isolation contract rather than putting `chart.js`, `maplibre-gl`, or the `d3-*` set on the
|
|
166
|
+
isolation contract rather than putting `chart.js`, `@aceshooting/lyra-map`, `maplibre-gl`, or the `d3-*` set on the
|
|
167
167
|
critical path of every install. It is the one import that defeats tree-shaking.
|
|
168
168
|
(Server-side, `@aceshooting/lyra-ui/ssr/all.js` is the counterpart that _does_ register the
|
|
169
169
|
complete inventory, optional-peer families included; see "SSR and declarative shadow DOM".)
|
|
@@ -2706,7 +2706,7 @@ preferred in production.
|
|
|
2706
2706
|
|
|
2707
2707
|
## Optional peer dependencies
|
|
2708
2708
|
|
|
2709
|
-
All
|
|
2709
|
+
All 31 peers are optional, in two groups. The 28 component-facing peers remain outside the default
|
|
2710
2710
|
install; components load them on demand where applicable. React, Svelte, and Vue are
|
|
2711
2711
|
compile-time-only peers for their matching
|
|
2712
2712
|
opt-in declaration entries (`custom-elements-jsx`, `svelte`, and `vue`): those entries emit empty
|
|
@@ -2722,7 +2722,7 @@ adapter (`loadLibphonenumberAdapter()`) rather than importing `libphonenumber-js
|
|
|
2722
2722
|
### Experimental DOCX editing companion
|
|
2723
2723
|
|
|
2724
2724
|
Use `@aceshooting/lyra-docs` for editing; `lr-docx-viewer` remains a viewer in Lyra UI.
|
|
2725
|
-
The companion
|
|
2725
|
+
The companion bundles a lazily loaded document engine. Its installed README owns
|
|
2726
2726
|
installation, admission limits, lifecycle, exact supported structures and save receipts.
|
|
2727
2727
|
|
|
2728
2728
|
```ts
|
|
@@ -2737,7 +2737,8 @@ replace-and-advance, Outline, Checks and Review panels, table formatting and loc
|
|
|
2737
2737
|
image tools. `createDocxSession({ mount })` supports a host-owned toolbar; it requires a
|
|
2738
2738
|
connected empty light-DOM mount. Both routes expose `can()`/`execute()`, `find()`/
|
|
2739
2739
|
`selectMatch()`/`replaceMatch()`, `outline()`/`selectOutlineItem()`, `inspectDocument()`/
|
|
2740
|
-
`selectDiagnostic()`, and `review()`/`selectReviewItem()`.
|
|
2740
|
+
`selectDiagnostic()`, and `review()`/`selectReviewItem()`. Await `execute()` before inspecting its
|
|
2741
|
+
result or issuing a dependent command; it includes any required feature preparation. Query rows are copied, bounded
|
|
2741
2742
|
and revision-scoped; refresh after edits and pass the returned `expectedRevision` when
|
|
2742
2743
|
navigating. Queries do not save or fetch. Inspection covers body metadata only; capability
|
|
2743
2744
|
fields `preserved`, `renderable` and `editable` remain `unverified`, and the report is not
|