@takazudo/zdtp 0.2.0 → 0.2.1

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.1
4
+
5
+ ### Features
6
+
7
+ - **Element Path Copy inspect mode.** A new crosshair toggle in the panel header arms an inspector: hold **Alt** and hover to draw a DevTools-style box + label over the host element under the cursor, then click to copy an annotated path block — unique CSS `selector`, human-readable `breadcrumb`, ARIA `role`, `text` snippet, identifying `attrs`, and rendered `size` — to the clipboard for precise human↔AI communication about the page. State persists in `localStorage`; the click is swallowed so host links/handlers don't fire. (e8bd453, 736d6d2, [#344](https://github.com/Takazudo/zudo-design-token-panel/pull/344))
8
+
9
+ ### Other Changes
10
+
11
+ - Apply pre-release deep-review fixes: extract a shared `usePortalMount()` hook used by both the highlight and element-path orchestrators (removing ~80 lines of duplicated portal/`astro:after-swap` lifecycle), render the header toggle via the shared `RoleButton` control, add a persistent visually-hidden `aria-live` region so screen readers announce copy results, and harden the `cssEscapeIdent` fallback for control characters. (9b893f6, a64f4d3, [#344](https://github.com/Takazudo/zudo-design-token-panel/pull/344))
12
+ - Bump GitHub Actions off the deprecated Node 20 runtime: `checkout` / `setup-node` / pnpm-setup and the artifact actions to their Node-24-matched versions. (08d5b48, b46fd66, [#339](https://github.com/Takazudo/zudo-design-token-panel/pull/339), [#341](https://github.com/Takazudo/zudo-design-token-panel/pull/341))
13
+ - Add a web-env bootstrap for Claude Code on the web. (23f00c3)
14
+
3
15
  ## 0.2.0
4
16
 
5
17
  First clean stable release on the `latest` dist-tag, promoting the
@@ -0,0 +1,86 @@
1
+ /**
2
+ * build-element-path — pure DOM → annotated-path generator.
3
+ *
4
+ * Produces a structured `ElementPathResult` describing a single host element,
5
+ * plus a `formatElementPath()` that renders it into the multi-line "annotated
6
+ * block" the Element Path Copy feature writes to the clipboard.
7
+ *
8
+ * Why an annotated block (not bare XPath / a single selector)?
9
+ * ----------------------------------------------------------
10
+ * The panel's whole reason to exist is better human↔AI communication about a
11
+ * page. A bare `/html/body/div[2]/...` (or even a terse CSS selector) tells an
12
+ * AI *where* an element is but nothing about *what* it is. The block bundles:
13
+ *
14
+ * - `selector` — a minimal, querySelector-able unique CSS selector so the
15
+ * element can be re-located programmatically.
16
+ * - `breadcrumb` — a human-readable tag/class ancestor chain (no nth-* noise)
17
+ * so a reader can picture the structure at a glance.
18
+ * - `role` — explicit or implicit ARIA role (semantics).
19
+ * - `text` — a short trimmed text snippet (what the element *says*).
20
+ * - `attrs` — a few identifying attributes (id / data-testid / href / …).
21
+ * - `size` — rendered width × height in CSS px.
22
+ *
23
+ * Everything here is pure and DOM-only (no Preact), so it unit-tests cleanly
24
+ * under jsdom.
25
+ */
26
+ export interface ElementPathResult {
27
+ /** One-line descriptor, e.g. `a.cta#signup`. */
28
+ summary: string;
29
+ /** Minimal unique CSS selector (querySelector-able). */
30
+ selector: string;
31
+ /** Readable ancestor chain with tag + first class, e.g. `body > nav.nav > a.cta`. */
32
+ breadcrumb: string;
33
+ /** Explicit or implicit ARIA role, or null when none is meaningful. */
34
+ role: string | null;
35
+ /** Trimmed, whitespace-collapsed, truncated text snippet, or null when empty. */
36
+ text: string | null;
37
+ /** A few identifying attributes rendered as `name="value"` strings. */
38
+ attrs: string[];
39
+ /** Rendered size in CSS px (0×0 when not laid out / detached). */
40
+ size: {
41
+ width: number;
42
+ height: number;
43
+ };
44
+ }
45
+ /**
46
+ * Escape a string for safe use as a CSS identifier (class / id segment).
47
+ * Prefers the native `CSS.escape`; falls back to a conservative manual escape
48
+ * for environments where it is unavailable (older jsdom, etc.).
49
+ */
50
+ export declare function cssEscapeIdent(value: string): string;
51
+ /**
52
+ * Build a minimal unique CSS selector for `el`.
53
+ *
54
+ * Strategy (closest to DevTools "Copy selector"):
55
+ * 1. If the element has a unique, valid id → `#id` (shortest possible).
56
+ * 2. Otherwise walk ancestors, prepending `tag:nth-of-type(n)` segments, and
57
+ * stop as soon as the accumulated selector matches exactly one element.
58
+ * An ancestor with a unique id anchors the chain early.
59
+ * 3. If we reach the root without uniqueness (degenerate DOM), return the
60
+ * full chain anyway — it is the best available.
61
+ */
62
+ export declare function buildUniqueSelector(el: Element): string;
63
+ /**
64
+ * Build a readable ancestor chain `tag.firstClass > … > tag.firstClass`,
65
+ * limited to the deepest `MAX_BREADCRUMB_DEPTH` segments. No nth-* noise — this
66
+ * is for humans, not querySelector.
67
+ */
68
+ export declare function buildBreadcrumb(el: Element): string;
69
+ /** Resolve explicit `role` attribute, else a small implicit-role mapping. */
70
+ export declare function resolveRole(el: Element): string | null;
71
+ /** Trimmed, whitespace-collapsed, truncated text snippet, or null when empty. */
72
+ export declare function resolveText(el: Element): string | null;
73
+ /** Collect up to `MAX_ATTRS` identifying attributes as `name="value"` strings. */
74
+ export declare function resolveAttrs(el: Element): string[];
75
+ /** One-line descriptor: `tag#id.class1.class2` (id first, then up to 2 classes). */
76
+ export declare function buildSummary(el: Element): string;
77
+ export declare function buildElementPath(el: Element): ElementPathResult;
78
+ /**
79
+ * Render an `ElementPathResult` into the multi-line annotated block copied to
80
+ * the clipboard. Only meaningful fields are emitted (no empty `role:`/`text:`
81
+ * lines), so the block stays compact for small/anonymous elements.
82
+ */
83
+ export declare function formatElementPath(result: ElementPathResult): string;
84
+ /** Convenience: build + format in one call. */
85
+ export declare function buildElementPathString(el: Element): string;
86
+ //# sourceMappingURL=build-element-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-element-path.d.ts","sourceRoot":"","sources":["../../src/element-path/build-element-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAMH,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,UAAU,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,iFAAiF;IACjF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,uEAAuE;IACvE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,kEAAkE;IAClE,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAoED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA2BpD;AAkED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAqCvD;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAenD;AAMD,6EAA6E;AAC7E,wBAAgB,WAAW,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAkBtD;AAED,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAKtD;AAED,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,EAAE,CAYlD;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAQhD;AAMD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,iBAAiB,CAgB/D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAUnE;AAED,+CAA+C;AAC/C,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAE1D"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * ElementPathContext — shared state for the Element Path Copy feature.
3
+ *
4
+ * Provided by `ElementPathOrchestrator`; consumed by the header toggle button
5
+ * (`ElementPathToggleButton`) and the inspector overlay. When the context is
6
+ * null (component rendered outside the orchestrator — e.g. a bare unit test),
7
+ * consumers degrade gracefully and render nothing.
8
+ */
9
+ export interface ElementPathContextValue {
10
+ /** Whether inspect mode is enabled (persisted). */
11
+ enabled: boolean;
12
+ /** Enable / disable inspect mode. */
13
+ setEnabled: (enabled: boolean) => void;
14
+ /** Toggle inspect mode. */
15
+ toggle: () => void;
16
+ }
17
+ export declare const ElementPathContext: import("preact").Context<ElementPathContextValue | null>;
18
+ //# sourceMappingURL=element-path-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-path-context.d.ts","sourceRoot":"","sources":["../../src/element-path/element-path-context.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,uBAAuB;IACtC,mDAAmD;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB,0DAAsD,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * ElementPathOrchestrator — integration layer for Element Path Copy.
3
+ *
4
+ * Responsibilities (mirrors HighlightOrchestrator):
5
+ * 1. Lifts and persists the `enabled` flag.
6
+ * 2. Provides ElementPathContext to all descendants (header toggle button).
7
+ * 3. Mounts the InspectorOverlay in a portal at document.body so the box,
8
+ * label, and toast render above host content regardless of where the panel
9
+ * shell lives — and persist even while the panel is closed.
10
+ * 4. Recreates the portal mount on `astro:after-swap` when Astro replaces body.
11
+ *
12
+ * panel.tsx wraps its tree in this component.
13
+ */
14
+ import type { ComponentChildren } from 'preact';
15
+ export declare function ElementPathOrchestrator({ children }: {
16
+ children: ComponentChildren;
17
+ }): import("preact").JSX.Element;
18
+ //# sourceMappingURL=element-path-orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-path-orchestrator.d.ts","sourceRoot":"","sources":["../../src/element-path/element-path-orchestrator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AA+BhD,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,iBAAiB,CAAA;CAAE,gCA2BpF"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Element Path Copy — persisted feature state.
3
+ *
4
+ * The feature has a single persisted bit: whether inspect mode is enabled.
5
+ * When enabled, holding Alt and hovering highlights the element under the
6
+ * cursor (DevTools-style box + label); clicking copies an annotated path block
7
+ * to the clipboard.
8
+ *
9
+ * Persistence mirrors the highlight subsystem: the key is derived from
10
+ * `panelConfig.storagePrefix` at call-time (never at module init) so a host's
11
+ * `configurePanel({ storagePrefix })` is respected.
12
+ */
13
+ /**
14
+ * Load the persisted enabled flag from localStorage. Defaults to `false`
15
+ * (inspect mode off) on any parse/access failure or when absent.
16
+ */
17
+ export declare function loadElementPathEnabled(): boolean;
18
+ /** Persist the enabled flag to localStorage. Degrades silently when storage is unavailable. */
19
+ export declare function saveElementPathEnabled(enabled: boolean): void;
20
+ //# sourceMappingURL=element-path-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-path-state.d.ts","sourceRoot":"","sources":["../../src/element-path/element-path-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAgBH;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAMhD;AAED,+FAA+F;AAC/F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAM7D"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * ElementPathToast — transient top-center notification shown after a copy.
3
+ *
4
+ * Rendered inside the Element Path Copy portal (outside `.tokenpanel-shell`), so
5
+ * it carries its own `--tokentweak-*` scope via panel.css. `pointer-events:none`
6
+ * keeps it from intercepting hover while inspect mode is active.
7
+ *
8
+ * Stateless: the parent owns the message lifecycle (auto-dismiss timer). When
9
+ * `message` is null nothing renders.
10
+ *
11
+ * Purely visual — it carries no ARIA live-region semantics. InspectorOverlay
12
+ * renders a separate always-mounted visually-hidden live region for screen
13
+ * reader announcements (a region inserted already-populated is often not
14
+ * announced), so duplicating `role="status"` here would be redundant and
15
+ * unreliable. The icon is `aria-hidden` and the text is conveyed by the
16
+ * persistent announcer.
17
+ */
18
+ import type { JSX } from 'preact';
19
+ export interface ElementPathToastProps {
20
+ /** Toast body; null hides the toast. */
21
+ message: string | null;
22
+ /** Whether the copy succeeded — drives the accent colour. */
23
+ ok: boolean;
24
+ }
25
+ export declare function ElementPathToast({ message, ok }: ElementPathToastProps): JSX.Element | null;
26
+ //# sourceMappingURL=element-path-toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-path-toast.d.ts","sourceRoot":"","sources":["../../src/element-path/element-path-toast.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,WAAW,qBAAqB;IACpC,wCAAwC;IACxC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6DAA6D;IAC7D,EAAE,EAAE,OAAO,CAAC;CACb;AAED,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,qBAAqB,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CA+B3F"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * ElementPathToggleButton — header button that enables/disables inspect mode.
3
+ *
4
+ * A crosshair/target icon. When active, holding Alt and hovering the page
5
+ * highlights elements; clicking copies an annotated path block. Reads
6
+ * ElementPathContext; renders nothing when used outside the orchestrator.
7
+ *
8
+ * Follows the chrome-button policy via the shared `RoleButton` control
9
+ * (role="button" + tabIndex + Enter/Space wiring), exposing `aria-pressed`
10
+ * through its `ariaProps` bag.
11
+ */
12
+ import type { JSX } from 'preact';
13
+ export declare function ElementPathToggleButton(): JSX.Element | null;
14
+ //# sourceMappingURL=element-path-toggle-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-path-toggle-button.d.ts","sourceRoot":"","sources":["../../src/element-path/element-path-toggle-button.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAIlC,wBAAgB,uBAAuB,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAuC5D"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Element Path Copy — public surface of the feature module.
3
+ *
4
+ * Lets a developer inspect any host element (hold Alt + hover for a
5
+ * DevTools-style highlight, click to copy an annotated path block to the
6
+ * clipboard) for precise human↔AI communication about the page.
7
+ */
8
+ export { ElementPathOrchestrator } from './element-path-orchestrator';
9
+ export { ElementPathToggleButton } from './element-path-toggle-button';
10
+ export { ElementPathContext } from './element-path-context';
11
+ export type { ElementPathContextValue } from './element-path-context';
12
+ export { buildElementPath, buildElementPathString, formatElementPath, buildUniqueSelector, buildBreadcrumb, } from './build-element-path';
13
+ export type { ElementPathResult } from './build-element-path';
14
+ export { loadElementPathEnabled, saveElementPathEnabled } from './element-path-state';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/element-path/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * InspectorOverlay — the interactive heart of Element Path Copy.
3
+ *
4
+ * Behaviour (only while the feature is `enabled`):
5
+ * 1. Holding **Alt** arms the inspector. While Alt is down, the element under
6
+ * the cursor is resolved via `document.elementFromPoint` (panel surfaces
7
+ * excluded) and drawn with a DevTools-style box + an attached label tag
8
+ * (`tag#id.class W × H`) on its top-left edge.
9
+ * 2. **Clicking** while armed copies the annotated path block for that element
10
+ * to the clipboard (the click is swallowed so host links/handlers don't
11
+ * fire) and shows a transient top-center toast.
12
+ *
13
+ * Rendering follows the highlight-overlay convention: the box + label positions
14
+ * are written imperatively from a RAF loop (so they track scroll/reflow without
15
+ * a Preact re-render per frame). Preact only re-renders when the hovered element
16
+ * or armed/toast state changes.
17
+ *
18
+ * Self-contained — does NOT own its portal mount; the orchestrator decides where
19
+ * in the DOM this renders.
20
+ */
21
+ import type { JSX } from 'preact';
22
+ export interface InspectorOverlayProps {
23
+ /** Whether inspect mode is enabled. When false the overlay is fully inert. */
24
+ enabled: boolean;
25
+ }
26
+ export declare function InspectorOverlay({ enabled }: InspectorOverlayProps): JSX.Element | null;
27
+ //# sourceMappingURL=inspector-overlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspector-overlay.d.ts","sourceRoot":"","sources":["../../src/element-path/inspector-overlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAuBlC,MAAM,WAAW,qBAAqB;IACpC,8EAA8E;IAC9E,OAAO,EAAE,OAAO,CAAC;CAClB;AA0BD,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE,qBAAqB,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CA+RvF"}
@@ -66,6 +66,13 @@ export interface FindElementsOptions {
66
66
  */
67
67
  mode?: 'equality' | 'differential';
68
68
  }
69
+ /**
70
+ * Selector matching every panel-owned surface that must NEVER be treated as a
71
+ * host element (the shell, modals, and the highlight/element-path portal mounts).
72
+ * Exported so the Element Path Copy inspector can skip the same surfaces when
73
+ * resolving the element under the cursor.
74
+ */
75
+ export declare const PANEL_EXCLUSION_SELECTOR = ".tokenpanel-shell, [data-design-token-panel-modal], #tokenpanel-highlight-mount, #tokenpanel-elpath-mount";
69
76
  /**
70
77
  * Find all DOM elements whose computed style reflects the given CSS custom
71
78
  * property.
@@ -1 +1 @@
1
- {"version":3,"file":"find-elements.d.ts","sourceRoot":"","sources":["../../src/highlight/find-elements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAEH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;IACxG;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,cAAc,CAAC;CACpC;AAkhBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,mBAAmB,GAC5B,kBAAkB,CAiIpB"}
1
+ {"version":3,"file":"find-elements.d.ts","sourceRoot":"","sources":["../../src/highlight/find-elements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAEH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;IACxG;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,cAAc,CAAC;CACpC;AAoOD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,8GACwE,CAAC;AA6S9G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,mBAAmB,GAC5B,kBAAkB,CAiIpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"highlight-orchestrator.d.ts","sourceRoot":"","sources":["../../src/highlight/highlight-orchestrator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAqBhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,KAAK,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;AAEzG,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAqBvF;AA8GD,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,iBAAiB,CAAA;CAAE,gCA0NlF"}
1
+ {"version":3,"file":"highlight-orchestrator.d.ts","sourceRoot":"","sources":["../../src/highlight/highlight-orchestrator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAsBhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,KAAK,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;AAEzG,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAqBvF;AAiED,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,iBAAiB,CAAA;CAAE,gCA0NlF"}