@santi020k/lumen-core 4.1.0 → 4.3.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/README.md CHANGED
@@ -64,6 +64,16 @@
64
64
 
65
65
  Shared metadata, token constants, and tiny utilities used by the Lumen package family.
66
66
 
67
+ `getLumenActiveAnchorIndex(targets, activationOffset)` selects an index from document headings in
68
+ reading order, or returns `-1` for an empty list. It accounts for live root scroll padding (including
69
+ percentages), each target's scroll margin, an explicit minimum offset, and native rounding. The last
70
+ heading wins at the bottom of a scrollable document; non-scrolling pages use heading positions.
71
+ The framework adapters share this helper while retaining their event and lifecycle ownership.
72
+ `decodeLumenAnchorFragment(fragment)` also decodes links safely, preserving literal percent signs
73
+ when a fragment is not valid URI encoding. Mixed percentage/length scroll padding is resolved by
74
+ the browser once per computed value and viewport size; ordinary pixel and percentage values need
75
+ no measurement node.
76
+
67
77
  Most consumers should install a framework package such as `@santi020k/lumen-astro`, `@santi020k/lumen-react`, or `@santi020k/lumen-elements`.
68
78
 
69
79
  The package exports `lumenColors` and `lumenGlass` for consumers that need to mirror Lumen theme
@@ -0,0 +1,5 @@
1
+ /** Keep literal percent signs usable while decoding ordinary URL fragments. */
2
+ export declare const decodeLumenAnchorFragment: (fragment: string) => string;
3
+ /** Selects a document heading using its native fragment landing line. Returns -1 for no targets. */
4
+ export declare const getLumenActiveAnchorIndex: (targets: readonly HTMLElement[], activationOffset?: number) => number;
5
+ //# sourceMappingURL=anchor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../src/anchor.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,GAAI,UAAU,MAAM,KAAG,MAM5D,CAAA;AAwDD,oGAAoG;AACpG,eAAO,MAAM,yBAAyB,GACpC,SAAS,SAAS,WAAW,EAAE,EAC/B,yBAAoB,KACnB,MA0BF,CAAA"}
package/dist/anchor.js ADDED
@@ -0,0 +1,68 @@
1
+ /** Keep literal percent signs usable while decoding ordinary URL fragments. */
2
+ export const decodeLumenAnchorFragment = (fragment) => {
3
+ try {
4
+ return decodeURIComponent(fragment);
5
+ }
6
+ catch {
7
+ return fragment;
8
+ }
9
+ };
10
+ const measuredPadding = new WeakMap();
11
+ const scrollLength = (value, basis) => {
12
+ const amount = Number.parseFloat(value ?? '');
13
+ if (!Number.isFinite(amount))
14
+ return 0;
15
+ return value?.trim().endsWith('%') ? amount * basis / 100 : amount;
16
+ };
17
+ const getScrollPadding = (owner, scrollingElement) => {
18
+ const view = owner.defaultView;
19
+ if (!view)
20
+ return 0;
21
+ const value = view.getComputedStyle(scrollingElement).scrollPaddingTop;
22
+ const basis = scrollingElement.clientHeight;
23
+ if (!value || value === 'auto' || Number.isFinite(Number.parseFloat(value)))
24
+ return scrollLength(value, basis);
25
+ // Let the CSS engine resolve mixed percentage/length math instead of maintaining a CSS parser.
26
+ const key = `${value}:${basis}:${view.innerWidth}`;
27
+ const cached = measuredPadding.get(owner);
28
+ if (cached?.key === key)
29
+ return cached.value;
30
+ const container = owner.createElement('div');
31
+ const probe = owner.createElement('div');
32
+ container.style.cssText = `all:initial;position:fixed;top:0;left:0;width:0;height:${basis}px;contain:strict;visibility:hidden;pointer-events:none`;
33
+ probe.style.cssText = 'all:initial;display:block;width:0;min-height:0;max-height:none;padding:0;border:0;margin:0';
34
+ probe.style.height = value;
35
+ container.append(probe);
36
+ owner.documentElement.append(container);
37
+ const resolved = scrollLength(view.getComputedStyle(probe).height, basis);
38
+ container.remove();
39
+ measuredPadding.set(owner, { key, value: resolved });
40
+ return resolved;
41
+ };
42
+ const atDocumentEnd = (scrollingElement) => {
43
+ const maximum = scrollingElement.scrollHeight - scrollingElement.clientHeight;
44
+ return maximum > 0 && scrollingElement.scrollTop > 0 && scrollingElement.scrollTop >= maximum - 1;
45
+ };
46
+ /** Selects a document heading using its native fragment landing line. Returns -1 for no targets. */
47
+ export const getLumenActiveAnchorIndex = (targets, activationOffset = 0) => {
48
+ const owner = targets[0]?.ownerDocument;
49
+ if (!owner)
50
+ return -1;
51
+ const scrollingElement = owner.scrollingElement ?? owner.documentElement;
52
+ if (atDocumentEnd(scrollingElement))
53
+ return targets.length - 1;
54
+ const view = owner.defaultView;
55
+ const minimum = Number.isFinite(activationOffset) ? Math.max(0, activationOffset) : 0;
56
+ const padding = getScrollPadding(owner, scrollingElement);
57
+ let active = 0;
58
+ for (const [index, target] of targets.entries()) {
59
+ // Read live styles: text resizing, responsive headers, and target classes can change the landing line.
60
+ const margin = scrollLength(view?.getComputedStyle(target).scrollMarginTop, 0);
61
+ const landingLine = Math.max(minimum, padding + margin);
62
+ // Native fragment scrolling can round a fractional landing position to the next CSS pixel.
63
+ if (target.getBoundingClientRect().top > landingLine + 1)
64
+ break;
65
+ active = index;
66
+ }
67
+ return active;
68
+ };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './ai-surfaces.js';
2
2
  export { createLumenAmountFieldController, formatLumenAmountDraft, getLumenAmountValue, type LumenAmountChangeDetail, type LumenAmountFieldController, type LumenAmountOptions, parseLumenAmountDraft } from './amount-field.js';
3
+ export { decodeLumenAnchorFragment, getLumenActiveAnchorIndex } from './anchor.js';
3
4
  export { createLumenAttachmentPreviewController, type LumenAttachmentPreviewController, type LumenAttachmentPreviewLabels, lumenAttachmentPreviewLabels, type LumenAttachmentPreviewState, resolveLumenAttachmentPreviewState } from './attachments.js';
4
5
  export { createLumenBulletGeometry, type LumenBulletOptions, type LumenBulletRange } from './bullet-chart.js';
5
6
  export * from './chart-interaction.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,KAAK,0BAA0B,EAAE,KAAK,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAChO,OAAO,EACL,sCAAsC,EACtC,KAAK,gCAAgC,EACrC,KAAK,4BAA4B,EACjC,4BAA4B,EAC5B,KAAK,2BAA2B,EAChC,kCAAkC,EACnC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,yBAAyB,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC7G,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,oCAAoC,EACpC,+BAA+B,EAC/B,iCAAiC,EACjC,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,+BAA+B,EAC/B,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,uBAAuB,EACvB,gCAAgC,EAChC,iBAAiB,EACjB,eAAe,EACf,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,eAAe,EACpB,KAAK,+BAA+B,EACpC,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,eAAe,EACf,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,yBAAyB,EACzB,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,4BAA4B,EAAE,qBAAqB,EAAI,KAAK,qBAAqB,EAAE,KAAK,6BAA6B,EAAE,KAAK,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACnM,OAAO,EACL,KAAK,cAAc,EACnB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,6BAA6B,EAAE,KAAK,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,KAAK,oBAAoB,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AACrJ,OAAO,EACL,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,qBAAqB,EACtB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,eAAe,EACpB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,KAAK,2BAA2B,EAAE,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAA;AAC/P,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EACL,KAAK,2BAA2B,EAChC,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,sBAAsB,EACvB,MAAM,kBAAkB,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC/B,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,yBAAyB,EAAE,KAAK,yBAAyB,EAAE,KAAK,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AACjI,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,wBAAwB,EACzB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,2BAA2B,EAC3B,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,UAAU,EACV,KAAK,cAAc,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,sBAAsB,EACtB,kBAAkB,EAClB,KAAK,yBAAyB,EAC9B,0BAA0B,EAC3B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,+BAA+B,EAC/B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,iCAAiC,EACjC,kCAAkC,EAClC,kCAAkC,EAClC,4BAA4B,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,qBAAqB,EACtB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,uBAAuB,EACvB,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,4BAA4B,EAC5B,6BAA6B,EAC7B,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,KAAK,wBAAwB,EAC7B,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,6BAA6B,EAC7B,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oCAAoC,EAAE,KAAK,8BAA8B,EAAE,KAAK,2BAA2B,EAAE,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACjL,OAAO,EAAE,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACvJ,cAAc,uBAAuB,CAAA;AACrC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,gCAAgC,EACrC,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,2BAA2B,EAC5B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,EAC5B,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAChD,cAAc,oBAAoB,CAAA;AAClC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,sBAAsB,EACvB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,KAAK,yBAAyB,EAC9B,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,KAAK,2BAA2B,EAChC,4BAA4B,EAC5B,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,eAAe,EACf,KAAK,wBAAwB,EAC7B,yBAAyB,EACzB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,KAAK,gBAAgB,EAAE,2BAA2B,EAAE,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAC3J,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AACxH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,KAAK,gBAAgB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,WAAW,EACX,UAAU,EACV,WAAW,EACX,KAAK,kBAAkB,EACvB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACpB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,sCAAsC,EAAE,KAAK,gCAAgC,EAAE,KAAK,6BAA6B,EAAE,MAAM,yBAAyB,CAAA;AAC3J,OAAO,EAAE,gCAAgC,EAAE,KAAK,0BAA0B,EAAE,MAAM,mBAAmB,CAAA;AACrG,OAAO,EAAE,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAC/I,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACL,+BAA+B,EAC/B,wBAAwB,EACxB,+BAA+B,EAC/B,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,+BAA+B,EAC/B,0CAA0C,EAC1C,6BAA6B,EAC7B,8BAA8B,EAC9B,gCAAgC,EACjC,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './ai-surfaces.js';
2
2
  export { createLumenAmountFieldController, formatLumenAmountDraft, getLumenAmountValue, parseLumenAmountDraft } from './amount-field.js';
3
+ export { decodeLumenAnchorFragment, getLumenActiveAnchorIndex } from './anchor.js';
3
4
  export { createLumenAttachmentPreviewController, lumenAttachmentPreviewLabels, resolveLumenAttachmentPreviewState } from './attachments.js';
4
5
  export { createLumenBulletGeometry } from './bullet-chart.js';
5
6
  export * from './chart-interaction.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@santi020k/lumen-core",
3
- "version": "4.1.0",
3
+ "version": "4.3.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -117,7 +117,7 @@
117
117
  "libphonenumber-js": "^1.13.14"
118
118
  },
119
119
  "devDependencies": {
120
- "@rive-app/canvas": "2.44.0",
120
+ "@rive-app/canvas": "2.45.0",
121
121
  "@vitest/coverage-v8": "^5.0.3",
122
122
  "jsdom": "^30.1.1",
123
123
  "typescript": "~6.0.3",