@visualli/core 0.1.4 → 0.1.6
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/animations/index.cjs +146 -0
- package/dist/animations/index.cjs.map +1 -0
- package/dist/animations/index.d.cts +81 -0
- package/dist/animations/index.d.ts +81 -0
- package/dist/animations/index.js +35 -0
- package/dist/animations/index.js.map +1 -0
- package/dist/chunk-6NXADJK2.js +562 -0
- package/dist/chunk-6NXADJK2.js.map +1 -0
- package/dist/chunk-F36SMC3K.js +106 -0
- package/dist/chunk-F36SMC3K.js.map +1 -0
- package/dist/chunk-G5H3P4YZ.js +273 -0
- package/dist/chunk-G5H3P4YZ.js.map +1 -0
- package/dist/chunk-GQMFBYLK.js +81 -0
- package/dist/chunk-GQMFBYLK.js.map +1 -0
- package/dist/chunk-I75TMOE4.js +108 -0
- package/dist/chunk-I75TMOE4.js.map +1 -0
- package/dist/chunk-LDJRGT2Q.js +163 -0
- package/dist/chunk-LDJRGT2Q.js.map +1 -0
- package/dist/chunk-LI3BVD6H.js +98 -0
- package/dist/chunk-LI3BVD6H.js.map +1 -0
- package/dist/chunk-LJYSKSCE.js +95 -0
- package/dist/chunk-LJYSKSCE.js.map +1 -0
- package/dist/chunk-LNTJTDB2.js +349 -0
- package/dist/chunk-LNTJTDB2.js.map +1 -0
- package/dist/chunk-PDP5CVUL.js +139 -0
- package/dist/chunk-PDP5CVUL.js.map +1 -0
- package/dist/chunk-VLGR5PZX.js +1 -0
- package/dist/chunk-VLGR5PZX.js.map +1 -0
- package/dist/config/index.cjs +391 -0
- package/dist/config/index.cjs.map +1 -0
- package/dist/config/index.d.cts +77 -0
- package/dist/config/index.d.ts +77 -0
- package/dist/config/index.js +38 -0
- package/dist/config/index.js.map +1 -0
- package/dist/constants/index.cjs +642 -0
- package/dist/constants/index.cjs.map +1 -0
- package/dist/constants/index.d.cts +448 -0
- package/dist/constants/index.d.ts +448 -0
- package/dist/constants/index.js +183 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/document-B3hnNr-F.d.cts +73 -0
- package/dist/document-B3hnNr-F.d.ts +73 -0
- package/dist/index.cjs +32 -32
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +15 -1044
- package/dist/index.d.ts +15 -1044
- package/dist/index.js +179 -1747
- package/dist/index.js.map +1 -1
- package/dist/layout/index.cjs +210 -0
- package/dist/layout/index.cjs.map +1 -0
- package/dist/layout/index.d.cts +80 -0
- package/dist/layout/index.d.ts +80 -0
- package/dist/layout/index.js +25 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/mindmap-DWS0WZT_.d.cts +118 -0
- package/dist/mindmap-DWS0WZT_.d.ts +118 -0
- package/dist/parser/index.cjs +739 -0
- package/dist/parser/index.cjs.map +1 -0
- package/dist/parser/index.d.cts +87 -0
- package/dist/parser/index.d.ts +87 -0
- package/dist/parser/index.js +43 -0
- package/dist/parser/index.js.map +1 -0
- package/dist/performance/index.cjs +167 -0
- package/dist/performance/index.cjs.map +1 -0
- package/dist/performance/index.d.cts +40 -0
- package/dist/performance/index.d.ts +40 -0
- package/dist/performance/index.js +12 -0
- package/dist/performance/index.js.map +1 -0
- package/dist/types/index.cjs +19 -0
- package/dist/types/index.cjs.map +1 -0
- package/dist/types/index.d.cts +8 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/viewport/index.cjs +131 -0
- package/dist/viewport/index.cjs.map +1 -0
- package/dist/viewport/index.d.cts +56 -0
- package/dist/viewport/index.d.ts +56 -0
- package/dist/viewport/index.js +26 -0
- package/dist/viewport/index.js.map +1 -0
- package/package.json +6 -1
- package/src/config/README.md +59 -0
- package/src/config/USAGE_EXAMPLES.md +285 -0
- package/src/config/index.ts +7 -0
- package/src/index.ts +1 -2
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/animations/index.ts
|
|
21
|
+
var animations_exports = {};
|
|
22
|
+
__export(animations_exports, {
|
|
23
|
+
ANIMATION_DURATION: () => ANIMATION_DURATION,
|
|
24
|
+
ANIMATION_PHASES: () => ANIMATION_PHASES,
|
|
25
|
+
COOLDOWN: () => COOLDOWN,
|
|
26
|
+
OPACITY: () => OPACITY,
|
|
27
|
+
TARGET_ZOOM: () => TARGET_ZOOM,
|
|
28
|
+
VIEWPORT_FRAMING: () => VIEWPORT_FRAMING,
|
|
29
|
+
ZOOM_THRESHOLDS: () => ZOOM_THRESHOLDS,
|
|
30
|
+
createCubicBezier: () => createCubicBezier,
|
|
31
|
+
easeInCubic: () => easeInCubic,
|
|
32
|
+
easeInOutCubic: () => easeInOutCubic,
|
|
33
|
+
easeInOutQuart: () => easeInOutQuart,
|
|
34
|
+
easeInOutSine: () => easeInOutSine,
|
|
35
|
+
easeOutCubic: () => easeOutCubic,
|
|
36
|
+
easeOutQuad: () => easeOutQuad,
|
|
37
|
+
easeZoomTransition: () => easeZoomTransition
|
|
38
|
+
});
|
|
39
|
+
module.exports = __toCommonJS(animations_exports);
|
|
40
|
+
|
|
41
|
+
// src/animations/easing.ts
|
|
42
|
+
var easeInOutCubic = (t) => t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;
|
|
43
|
+
var easeInOutQuart = (t) => t < 0.5 ? 8 * t * t * t * t : 1 - Math.pow(-2 * t + 2, 4) / 2;
|
|
44
|
+
var easeOutCubic = (t) => 1 - Math.pow(1 - t, 3);
|
|
45
|
+
var easeInCubic = (t) => t * t * t;
|
|
46
|
+
var easeOutQuad = (t) => 1 - (1 - t) * (1 - t);
|
|
47
|
+
var easeInOutSine = (t) => -(Math.cos(Math.PI * t) - 1) / 2;
|
|
48
|
+
function createCubicBezier(x1, y1, x2, y2) {
|
|
49
|
+
const N = 256;
|
|
50
|
+
const lut = new Float64Array(N + 1);
|
|
51
|
+
for (let i = 0; i <= N; i++) {
|
|
52
|
+
const target = i / N;
|
|
53
|
+
let lo = 0, hi = 1;
|
|
54
|
+
for (let j = 0; j < 20; j++) {
|
|
55
|
+
const mid = (lo + hi) / 2;
|
|
56
|
+
const om = 1 - mid;
|
|
57
|
+
const x = 3 * om * om * mid * x1 + 3 * om * mid * mid * x2 + mid * mid * mid;
|
|
58
|
+
if (x < target) lo = mid;
|
|
59
|
+
else hi = mid;
|
|
60
|
+
}
|
|
61
|
+
const u = (lo + hi) / 2;
|
|
62
|
+
const ou = 1 - u;
|
|
63
|
+
lut[i] = 3 * ou * ou * u * y1 + 3 * ou * u * u * y2 + u * u * u;
|
|
64
|
+
}
|
|
65
|
+
return (t) => {
|
|
66
|
+
if (t <= 0) return 0;
|
|
67
|
+
if (t >= 1) return 1;
|
|
68
|
+
const s = t * N;
|
|
69
|
+
const i = s | 0;
|
|
70
|
+
return lut[i] + (lut[i + 1] - lut[i]) * (s - i);
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
var easeZoomTransition = createCubicBezier(0.2, 0.8, 0.2, 1);
|
|
74
|
+
|
|
75
|
+
// src/animations/constants.ts
|
|
76
|
+
var ANIMATION_DURATION = {
|
|
77
|
+
ZOOM_IN_LAYER: 500,
|
|
78
|
+
ZOOM_OUT_LAYER: 500,
|
|
79
|
+
ZOOM_GESTURE: 500,
|
|
80
|
+
FADE_OUT: 200,
|
|
81
|
+
FADE_IN: 250,
|
|
82
|
+
COLOR_TRANSITION: 500,
|
|
83
|
+
CURSOR_CHANGE: 150,
|
|
84
|
+
LOADING_FADE: 200
|
|
85
|
+
};
|
|
86
|
+
var ANIMATION_PHASES = {
|
|
87
|
+
ZOOM_IN: {
|
|
88
|
+
ZOOM_TO_TARGET: 500,
|
|
89
|
+
FADE_OUT_START: 120,
|
|
90
|
+
FADE_OUT: 280,
|
|
91
|
+
CONTENT_SWAP: 310,
|
|
92
|
+
FADE_IN: 200,
|
|
93
|
+
TOTAL: 510
|
|
94
|
+
},
|
|
95
|
+
ZOOM_OUT: {
|
|
96
|
+
FADE_OUT: 200,
|
|
97
|
+
ZOOM_BACK: 50,
|
|
98
|
+
FADE_IN: 250,
|
|
99
|
+
TOTAL: 500
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
var ZOOM_THRESHOLDS = {
|
|
103
|
+
ENTER_LAYER: 5,
|
|
104
|
+
EXIT_LAYER: 0.5,
|
|
105
|
+
GESTURE_TRIGGER: 0.8
|
|
106
|
+
};
|
|
107
|
+
var COOLDOWN = {
|
|
108
|
+
NAVIGATION: 1e3,
|
|
109
|
+
ZOOM_GESTURE: 800,
|
|
110
|
+
DOUBLE_CLICK: 200
|
|
111
|
+
};
|
|
112
|
+
var OPACITY = {
|
|
113
|
+
VISIBLE: 1,
|
|
114
|
+
HIDDEN: 0,
|
|
115
|
+
TRANSITIONING: 0.3
|
|
116
|
+
};
|
|
117
|
+
var TARGET_ZOOM = {
|
|
118
|
+
NORMAL: 1,
|
|
119
|
+
FOCUSED: 0.8,
|
|
120
|
+
FILL_NODE: 3,
|
|
121
|
+
DETAIL: 2
|
|
122
|
+
};
|
|
123
|
+
var VIEWPORT_FRAMING = {
|
|
124
|
+
NODE_FILL_RATIO: 0.7,
|
|
125
|
+
EXIT_NODE_SIZE: 0.4,
|
|
126
|
+
PADDING_RATIO: 0.1
|
|
127
|
+
};
|
|
128
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
129
|
+
0 && (module.exports = {
|
|
130
|
+
ANIMATION_DURATION,
|
|
131
|
+
ANIMATION_PHASES,
|
|
132
|
+
COOLDOWN,
|
|
133
|
+
OPACITY,
|
|
134
|
+
TARGET_ZOOM,
|
|
135
|
+
VIEWPORT_FRAMING,
|
|
136
|
+
ZOOM_THRESHOLDS,
|
|
137
|
+
createCubicBezier,
|
|
138
|
+
easeInCubic,
|
|
139
|
+
easeInOutCubic,
|
|
140
|
+
easeInOutQuart,
|
|
141
|
+
easeInOutSine,
|
|
142
|
+
easeOutCubic,
|
|
143
|
+
easeOutQuad,
|
|
144
|
+
easeZoomTransition
|
|
145
|
+
});
|
|
146
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/animations/index.ts","../../src/animations/easing.ts","../../src/animations/constants.ts"],"sourcesContent":["export * from './easing.js';\nexport * from './constants.js';\n","// ─── Animation Easing Functions ───────────────────────────────────────────────\n//\n// Pure math easing functions for smooth, cinematic animations.\n// No DOM / RAF dependencies – usable in any runtime.\n\nexport type EasingFunction = (t: number) => number;\n\n/** Smooth cubic – slow start, fast middle, slow end. */\nexport const easeInOutCubic: EasingFunction = (t) =>\n t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n\n/** Smooth quartic – more dramatic than cubic. */\nexport const easeInOutQuart: EasingFunction = (t) =>\n t < 0.5 ? 8 * t * t * t * t : 1 - Math.pow(-2 * t + 2, 4) / 2;\n\n/** Fast start, slow end. */\nexport const easeOutCubic: EasingFunction = (t) => 1 - Math.pow(1 - t, 3);\n\n/** Slow start, fast end. */\nexport const easeInCubic: EasingFunction = (t) => t * t * t;\n\n/** Gentle ease-out (quadratic). */\nexport const easeOutQuad: EasingFunction = (t) => 1 - (1 - t) * (1 - t);\n\n/** Very smooth, organic sine easing. */\nexport const easeInOutSine: EasingFunction = (t) =>\n -(Math.cos(Math.PI * t) - 1) / 2;\n\n/**\n * Create a CSS cubic-bezier easing function from four control-point values.\n *\n * Builds a 256-entry lookup table at call time (once) so subsequent evaluations\n * are a single table lookup + linear interpolation.\n */\nexport function createCubicBezier(\n x1: number, y1: number,\n x2: number, y2: number,\n): EasingFunction {\n const N = 256;\n const lut = new Float64Array(N + 1);\n\n for (let i = 0; i <= N; i++) {\n const target = i / N;\n let lo = 0, hi = 1;\n for (let j = 0; j < 20; j++) {\n const mid = (lo + hi) / 2;\n const om = 1 - mid;\n const x = 3 * om * om * mid * x1 + 3 * om * mid * mid * x2 + mid * mid * mid;\n if (x < target) lo = mid; else hi = mid;\n }\n const u = (lo + hi) / 2;\n const ou = 1 - u;\n lut[i] = 3 * ou * ou * u * y1 + 3 * ou * u * u * y2 + u * u * u;\n }\n\n return (t: number): number => {\n if (t <= 0) return 0;\n if (t >= 1) return 1;\n const s = t * N;\n const i = s | 0;\n return lut[i] + (lut[i + 1] - lut[i]) * (s - i);\n };\n}\n\n/**\n * Zoom-transition easing — matches CSS cubic-bezier(0.2, 0.8, 0.2, 1).\n * Fast start with smooth, organic settle. Used for all layer transitions.\n * Pre-computed LUT: subsequent calls are a single table lookup + linear interpolation.\n */\nexport const easeZoomTransition: EasingFunction = createCubicBezier(0.2, 0.8, 0.2, 1);\n","// ─── Animation Constants ──────────────────────────────────────────────────────\n\n// ── Timing (ms) ───────────────────────────────────────────────────────────────\n\nexport const ANIMATION_DURATION = {\n ZOOM_IN_LAYER: 500,\n ZOOM_OUT_LAYER: 500,\n ZOOM_GESTURE: 500,\n FADE_OUT: 200,\n FADE_IN: 250,\n COLOR_TRANSITION: 500,\n CURSOR_CHANGE: 150,\n LOADING_FADE: 200,\n} as const;\n\nexport const ANIMATION_PHASES = {\n ZOOM_IN: {\n ZOOM_TO_TARGET: 500,\n FADE_OUT_START: 120,\n FADE_OUT: 280,\n CONTENT_SWAP: 310,\n FADE_IN: 200,\n TOTAL: 510,\n },\n ZOOM_OUT: {\n FADE_OUT: 200,\n ZOOM_BACK: 50,\n FADE_IN: 250,\n TOTAL: 500,\n },\n} as const;\n\n// ── Zoom Thresholds ───────────────────────────────────────────────────────────\n\nexport const ZOOM_THRESHOLDS = {\n ENTER_LAYER: 5.0,\n EXIT_LAYER: 0.5,\n GESTURE_TRIGGER: 0.8,\n} as const;\n\n// ── Cooldowns (ms) ────────────────────────────────────────────────────────────\n\nexport const COOLDOWN = {\n NAVIGATION: 1000,\n ZOOM_GESTURE: 800,\n DOUBLE_CLICK: 200,\n} as const;\n\n// ── Opacity ───────────────────────────────────────────────────────────────────\n\nexport const OPACITY = {\n VISIBLE: 1.0,\n HIDDEN: 0.0,\n TRANSITIONING: 0.3,\n} as const;\n\n// ── Target Zoom Levels ────────────────────────────────────────────────────────\n\nexport const TARGET_ZOOM = {\n NORMAL: 1.0,\n FOCUSED: 0.8,\n FILL_NODE: 3.0,\n DETAIL: 2.0,\n} as const;\n\n// ── Viewport Framing ──────────────────────────────────────────────────────────\n\nexport const VIEWPORT_FRAMING = {\n NODE_FILL_RATIO: 0.7,\n EXIT_NODE_SIZE: 0.4,\n PADDING_RATIO: 0.1,\n} as const;\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
type EasingFunction = (t: number) => number;
|
|
2
|
+
/** Smooth cubic – slow start, fast middle, slow end. */
|
|
3
|
+
declare const easeInOutCubic: EasingFunction;
|
|
4
|
+
/** Smooth quartic – more dramatic than cubic. */
|
|
5
|
+
declare const easeInOutQuart: EasingFunction;
|
|
6
|
+
/** Fast start, slow end. */
|
|
7
|
+
declare const easeOutCubic: EasingFunction;
|
|
8
|
+
/** Slow start, fast end. */
|
|
9
|
+
declare const easeInCubic: EasingFunction;
|
|
10
|
+
/** Gentle ease-out (quadratic). */
|
|
11
|
+
declare const easeOutQuad: EasingFunction;
|
|
12
|
+
/** Very smooth, organic sine easing. */
|
|
13
|
+
declare const easeInOutSine: EasingFunction;
|
|
14
|
+
/**
|
|
15
|
+
* Create a CSS cubic-bezier easing function from four control-point values.
|
|
16
|
+
*
|
|
17
|
+
* Builds a 256-entry lookup table at call time (once) so subsequent evaluations
|
|
18
|
+
* are a single table lookup + linear interpolation.
|
|
19
|
+
*/
|
|
20
|
+
declare function createCubicBezier(x1: number, y1: number, x2: number, y2: number): EasingFunction;
|
|
21
|
+
/**
|
|
22
|
+
* Zoom-transition easing — matches CSS cubic-bezier(0.2, 0.8, 0.2, 1).
|
|
23
|
+
* Fast start with smooth, organic settle. Used for all layer transitions.
|
|
24
|
+
* Pre-computed LUT: subsequent calls are a single table lookup + linear interpolation.
|
|
25
|
+
*/
|
|
26
|
+
declare const easeZoomTransition: EasingFunction;
|
|
27
|
+
|
|
28
|
+
declare const ANIMATION_DURATION: {
|
|
29
|
+
readonly ZOOM_IN_LAYER: 500;
|
|
30
|
+
readonly ZOOM_OUT_LAYER: 500;
|
|
31
|
+
readonly ZOOM_GESTURE: 500;
|
|
32
|
+
readonly FADE_OUT: 200;
|
|
33
|
+
readonly FADE_IN: 250;
|
|
34
|
+
readonly COLOR_TRANSITION: 500;
|
|
35
|
+
readonly CURSOR_CHANGE: 150;
|
|
36
|
+
readonly LOADING_FADE: 200;
|
|
37
|
+
};
|
|
38
|
+
declare const ANIMATION_PHASES: {
|
|
39
|
+
readonly ZOOM_IN: {
|
|
40
|
+
readonly ZOOM_TO_TARGET: 500;
|
|
41
|
+
readonly FADE_OUT_START: 120;
|
|
42
|
+
readonly FADE_OUT: 280;
|
|
43
|
+
readonly CONTENT_SWAP: 310;
|
|
44
|
+
readonly FADE_IN: 200;
|
|
45
|
+
readonly TOTAL: 510;
|
|
46
|
+
};
|
|
47
|
+
readonly ZOOM_OUT: {
|
|
48
|
+
readonly FADE_OUT: 200;
|
|
49
|
+
readonly ZOOM_BACK: 50;
|
|
50
|
+
readonly FADE_IN: 250;
|
|
51
|
+
readonly TOTAL: 500;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
declare const ZOOM_THRESHOLDS: {
|
|
55
|
+
readonly ENTER_LAYER: 5;
|
|
56
|
+
readonly EXIT_LAYER: 0.5;
|
|
57
|
+
readonly GESTURE_TRIGGER: 0.8;
|
|
58
|
+
};
|
|
59
|
+
declare const COOLDOWN: {
|
|
60
|
+
readonly NAVIGATION: 1000;
|
|
61
|
+
readonly ZOOM_GESTURE: 800;
|
|
62
|
+
readonly DOUBLE_CLICK: 200;
|
|
63
|
+
};
|
|
64
|
+
declare const OPACITY: {
|
|
65
|
+
readonly VISIBLE: 1;
|
|
66
|
+
readonly HIDDEN: 0;
|
|
67
|
+
readonly TRANSITIONING: 0.3;
|
|
68
|
+
};
|
|
69
|
+
declare const TARGET_ZOOM: {
|
|
70
|
+
readonly NORMAL: 1;
|
|
71
|
+
readonly FOCUSED: 0.8;
|
|
72
|
+
readonly FILL_NODE: 3;
|
|
73
|
+
readonly DETAIL: 2;
|
|
74
|
+
};
|
|
75
|
+
declare const VIEWPORT_FRAMING: {
|
|
76
|
+
readonly NODE_FILL_RATIO: 0.7;
|
|
77
|
+
readonly EXIT_NODE_SIZE: 0.4;
|
|
78
|
+
readonly PADDING_RATIO: 0.1;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export { ANIMATION_DURATION, ANIMATION_PHASES, COOLDOWN, type EasingFunction, OPACITY, TARGET_ZOOM, VIEWPORT_FRAMING, ZOOM_THRESHOLDS, createCubicBezier, easeInCubic, easeInOutCubic, easeInOutQuart, easeInOutSine, easeOutCubic, easeOutQuad, easeZoomTransition };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
type EasingFunction = (t: number) => number;
|
|
2
|
+
/** Smooth cubic – slow start, fast middle, slow end. */
|
|
3
|
+
declare const easeInOutCubic: EasingFunction;
|
|
4
|
+
/** Smooth quartic – more dramatic than cubic. */
|
|
5
|
+
declare const easeInOutQuart: EasingFunction;
|
|
6
|
+
/** Fast start, slow end. */
|
|
7
|
+
declare const easeOutCubic: EasingFunction;
|
|
8
|
+
/** Slow start, fast end. */
|
|
9
|
+
declare const easeInCubic: EasingFunction;
|
|
10
|
+
/** Gentle ease-out (quadratic). */
|
|
11
|
+
declare const easeOutQuad: EasingFunction;
|
|
12
|
+
/** Very smooth, organic sine easing. */
|
|
13
|
+
declare const easeInOutSine: EasingFunction;
|
|
14
|
+
/**
|
|
15
|
+
* Create a CSS cubic-bezier easing function from four control-point values.
|
|
16
|
+
*
|
|
17
|
+
* Builds a 256-entry lookup table at call time (once) so subsequent evaluations
|
|
18
|
+
* are a single table lookup + linear interpolation.
|
|
19
|
+
*/
|
|
20
|
+
declare function createCubicBezier(x1: number, y1: number, x2: number, y2: number): EasingFunction;
|
|
21
|
+
/**
|
|
22
|
+
* Zoom-transition easing — matches CSS cubic-bezier(0.2, 0.8, 0.2, 1).
|
|
23
|
+
* Fast start with smooth, organic settle. Used for all layer transitions.
|
|
24
|
+
* Pre-computed LUT: subsequent calls are a single table lookup + linear interpolation.
|
|
25
|
+
*/
|
|
26
|
+
declare const easeZoomTransition: EasingFunction;
|
|
27
|
+
|
|
28
|
+
declare const ANIMATION_DURATION: {
|
|
29
|
+
readonly ZOOM_IN_LAYER: 500;
|
|
30
|
+
readonly ZOOM_OUT_LAYER: 500;
|
|
31
|
+
readonly ZOOM_GESTURE: 500;
|
|
32
|
+
readonly FADE_OUT: 200;
|
|
33
|
+
readonly FADE_IN: 250;
|
|
34
|
+
readonly COLOR_TRANSITION: 500;
|
|
35
|
+
readonly CURSOR_CHANGE: 150;
|
|
36
|
+
readonly LOADING_FADE: 200;
|
|
37
|
+
};
|
|
38
|
+
declare const ANIMATION_PHASES: {
|
|
39
|
+
readonly ZOOM_IN: {
|
|
40
|
+
readonly ZOOM_TO_TARGET: 500;
|
|
41
|
+
readonly FADE_OUT_START: 120;
|
|
42
|
+
readonly FADE_OUT: 280;
|
|
43
|
+
readonly CONTENT_SWAP: 310;
|
|
44
|
+
readonly FADE_IN: 200;
|
|
45
|
+
readonly TOTAL: 510;
|
|
46
|
+
};
|
|
47
|
+
readonly ZOOM_OUT: {
|
|
48
|
+
readonly FADE_OUT: 200;
|
|
49
|
+
readonly ZOOM_BACK: 50;
|
|
50
|
+
readonly FADE_IN: 250;
|
|
51
|
+
readonly TOTAL: 500;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
declare const ZOOM_THRESHOLDS: {
|
|
55
|
+
readonly ENTER_LAYER: 5;
|
|
56
|
+
readonly EXIT_LAYER: 0.5;
|
|
57
|
+
readonly GESTURE_TRIGGER: 0.8;
|
|
58
|
+
};
|
|
59
|
+
declare const COOLDOWN: {
|
|
60
|
+
readonly NAVIGATION: 1000;
|
|
61
|
+
readonly ZOOM_GESTURE: 800;
|
|
62
|
+
readonly DOUBLE_CLICK: 200;
|
|
63
|
+
};
|
|
64
|
+
declare const OPACITY: {
|
|
65
|
+
readonly VISIBLE: 1;
|
|
66
|
+
readonly HIDDEN: 0;
|
|
67
|
+
readonly TRANSITIONING: 0.3;
|
|
68
|
+
};
|
|
69
|
+
declare const TARGET_ZOOM: {
|
|
70
|
+
readonly NORMAL: 1;
|
|
71
|
+
readonly FOCUSED: 0.8;
|
|
72
|
+
readonly FILL_NODE: 3;
|
|
73
|
+
readonly DETAIL: 2;
|
|
74
|
+
};
|
|
75
|
+
declare const VIEWPORT_FRAMING: {
|
|
76
|
+
readonly NODE_FILL_RATIO: 0.7;
|
|
77
|
+
readonly EXIT_NODE_SIZE: 0.4;
|
|
78
|
+
readonly PADDING_RATIO: 0.1;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export { ANIMATION_DURATION, ANIMATION_PHASES, COOLDOWN, type EasingFunction, OPACITY, TARGET_ZOOM, VIEWPORT_FRAMING, ZOOM_THRESHOLDS, createCubicBezier, easeInCubic, easeInOutCubic, easeInOutQuart, easeInOutSine, easeOutCubic, easeOutQuad, easeZoomTransition };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ANIMATION_DURATION,
|
|
3
|
+
ANIMATION_PHASES,
|
|
4
|
+
COOLDOWN,
|
|
5
|
+
OPACITY,
|
|
6
|
+
TARGET_ZOOM,
|
|
7
|
+
VIEWPORT_FRAMING,
|
|
8
|
+
ZOOM_THRESHOLDS,
|
|
9
|
+
createCubicBezier,
|
|
10
|
+
easeInCubic,
|
|
11
|
+
easeInOutCubic,
|
|
12
|
+
easeInOutQuart,
|
|
13
|
+
easeInOutSine,
|
|
14
|
+
easeOutCubic,
|
|
15
|
+
easeOutQuad,
|
|
16
|
+
easeZoomTransition
|
|
17
|
+
} from "../chunk-F36SMC3K.js";
|
|
18
|
+
export {
|
|
19
|
+
ANIMATION_DURATION,
|
|
20
|
+
ANIMATION_PHASES,
|
|
21
|
+
COOLDOWN,
|
|
22
|
+
OPACITY,
|
|
23
|
+
TARGET_ZOOM,
|
|
24
|
+
VIEWPORT_FRAMING,
|
|
25
|
+
ZOOM_THRESHOLDS,
|
|
26
|
+
createCubicBezier,
|
|
27
|
+
easeInCubic,
|
|
28
|
+
easeInOutCubic,
|
|
29
|
+
easeInOutQuart,
|
|
30
|
+
easeInOutSine,
|
|
31
|
+
easeOutCubic,
|
|
32
|
+
easeOutQuad,
|
|
33
|
+
easeZoomTransition
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|