@vectojs/core 1.32.7 → 1.33.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/dist/text.js CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkFQ2565ITjs = require('./chunk-FQ2565IT.js');
5
+ var _chunkUEIZDNK7js = require('./chunk-UEIZDNK7.js');
6
6
 
7
7
  // src/text/index.ts
8
8
  var _text = require('@vectojs/text'); _createStarExport(_text);
9
9
 
10
10
 
11
11
 
12
- exports.MSDFTextEntity = _chunkFQ2565ITjs.MSDFTextEntity; exports.SVGEntity = _chunkFQ2565ITjs.SVGEntity;
12
+ exports.MSDFTextEntity = _chunkUEIZDNK7js.MSDFTextEntity; exports.SVGEntity = _chunkUEIZDNK7js.SVGEntity;
package/dist/text.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  MSDFTextEntity,
3
3
  SVGEntity
4
- } from "./chunk-YTGGL4I4.mjs";
4
+ } from "./chunk-VFQMETOR.mjs";
5
5
 
6
6
  // src/text/index.ts
7
7
  export * from "@vectojs/text";
@@ -640,6 +640,33 @@ export declare abstract class Entity {
640
640
  * fixed viewport. Off by default (children render unclipped). Canvas2D only.
641
641
  */
642
642
  clipChildren: boolean;
643
+ /**
644
+ * Group this subtree's projected text into its own accessibility **region**,
645
+ * without clipping anything.
646
+ *
647
+ * The projection sorts every mirror into visual reading order, and it bands
648
+ * them into rows per region so that side-by-side columns stay contiguous runs
649
+ * in the DOM. That matters beyond reading order: a native `Selection` covers
650
+ * everything between its anchor and focus in DOM order, so two columns banded
651
+ * together let a vertical drag through one of them swallow the other.
652
+ *
653
+ * {@link clipChildren} also establishes a region, because a clipper is
654
+ * usually the column boundary you want. Reach for this flag when the two
655
+ * needs come apart — a sidebar, a card deck or any column that must not be
656
+ * absorbed by its neighbour's drag, but that draws nothing and has no reason
657
+ * to clip. Measured in a real app before this existed: a table-of-contents
658
+ * sidebar had to switch `clipChildren` on purely to escape the body column's
659
+ * bands, buying a per-frame `save`/`clip`/`restore` for an entity that paints
660
+ * nothing.
661
+ *
662
+ * Unlike `clipChildren`, this is honoured regardless of the node's box. The
663
+ * zero-area exemption on the clipping path exists because a zero-area clipper
664
+ * clips nothing; grouping is a declaration of intent that never consults
665
+ * geometry, and a pure grouping container often leaves `width`/`height` at 0.
666
+ *
667
+ * Off by default. Regions nest: the nearest enclosing region wins.
668
+ */
669
+ a11yRegion: boolean;
643
670
  protected listeners: Map<VectoEvent, Array<(e: any) => void>> | null;
644
671
  /** Capture-phase listeners (fired root→target before bubble). */
645
672
  protected captureListeners: Map<VectoEvent, Array<(e: any) => void>> | null;