octane 0.2.8 → 0.2.11
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/cjs/hook-slot-cache.cjs +115 -0
- package/dist/cjs/index.cjs +8 -0
- package/dist/cjs/runtime.cjs +813 -347
- package/dist/cjs/runtime.server.cjs +171 -124
- package/dist/cjs/server/index.cjs +2 -0
- package/dist/cjs/version.cjs +1 -1
- package/dist/compiler/compile.js +654 -143
- package/dist/hook-slot-cache.d.ts +2 -0
- package/dist/hook-slot-cache.js +91 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +8 -0
- package/dist/runtime.d.ts +65 -31
- package/dist/runtime.js +804 -347
- package/dist/runtime.server.d.ts +5 -2
- package/dist/runtime.server.js +170 -124
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.js +2 -0
- package/dist/universal-core.js +13 -16
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,115 @@
|
|
|
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
|
+
var hook_slot_cache_exports = {};
|
|
20
|
+
__export(hook_slot_cache_exports, {
|
|
21
|
+
resolveHookPath: () => resolveHookPath
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(hook_slot_cache_exports);
|
|
24
|
+
const MAX_PATH_DEPTH = 16;
|
|
25
|
+
const MAX_BASE_SLOTS = 32;
|
|
26
|
+
const NATIVE_APPLY = Reflect.apply;
|
|
27
|
+
const INITIAL_SYMBOL_FOR = Symbol.for;
|
|
28
|
+
let NATIVE_SYMBOL_FOR = null;
|
|
29
|
+
try {
|
|
30
|
+
const text = NATIVE_APPLY(Function.prototype.toString, INITIAL_SYMBOL_FOR, []);
|
|
31
|
+
if (typeof INITIAL_SYMBOL_FOR === "function" && typeof text === "string" && /^function for\(\)\s*\{\s*\[native code\]\s*\}$/.test(text))
|
|
32
|
+
NATIVE_SYMBOL_FOR = INITIAL_SYMBOL_FOR;
|
|
33
|
+
} catch {
|
|
34
|
+
}
|
|
35
|
+
const frames = [];
|
|
36
|
+
function pathFrame(depth) {
|
|
37
|
+
return frames[depth] ??= { prefix: "", tag: "", size: 0, value: "", path: "", slots: null };
|
|
38
|
+
}
|
|
39
|
+
function resolveHookPath(stack, own, universal, server = false) {
|
|
40
|
+
const depth = stack.length;
|
|
41
|
+
let prefix = universal ? "@octane:universal-hook:" : "@octane:hook:";
|
|
42
|
+
let cacheable = depth < MAX_PATH_DEPTH;
|
|
43
|
+
for (let index = 0; index <= depth; index++) {
|
|
44
|
+
const last = index === depth;
|
|
45
|
+
const part = last ? own : stack[index];
|
|
46
|
+
cacheable &&= part === null || typeof part !== "object" && typeof part !== "function";
|
|
47
|
+
let tag;
|
|
48
|
+
let size;
|
|
49
|
+
let value;
|
|
50
|
+
let encoded;
|
|
51
|
+
if (!universal && last && own === void 0) {
|
|
52
|
+
tag = "";
|
|
53
|
+
size = 0;
|
|
54
|
+
value = "";
|
|
55
|
+
} else if (!universal) {
|
|
56
|
+
tag = typeof part === "number" ? "n" : server && typeof part === "string" ? "t" : "s";
|
|
57
|
+
value = typeof part === "number" ? String(part) : server && typeof part === "string" ? part : part.description ?? "";
|
|
58
|
+
size = value.length;
|
|
59
|
+
if (typeof value !== "string" || typeof size !== "number") {
|
|
60
|
+
encoded = tag + size + ":" + value;
|
|
61
|
+
cacheable = false;
|
|
62
|
+
}
|
|
63
|
+
} else {
|
|
64
|
+
tag = typeof part === "symbol" ? "s" : "v";
|
|
65
|
+
size = typeof part === "symbol" ? part.description?.length ?? 0 : String(part).length;
|
|
66
|
+
const head = typeof size === "number" ? void 0 : `${tag}${size}:`;
|
|
67
|
+
value = typeof part === "symbol" ? part.description ?? "" : String(part);
|
|
68
|
+
if (head !== void 0 || typeof value !== "string") {
|
|
69
|
+
encoded = `${head ?? `${tag}${size}:`}${value}`;
|
|
70
|
+
cacheable = false;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (last) {
|
|
74
|
+
const registry = Symbol;
|
|
75
|
+
const intern = registry.for;
|
|
76
|
+
if (!cacheable || intern !== NATIVE_SYMBOL_FOR) {
|
|
77
|
+
const key = prefix + (encoded ?? (tag === "" ? "" : tag + size + ":" + value));
|
|
78
|
+
return intern === NATIVE_SYMBOL_FOR ? intern(key) : NATIVE_APPLY(intern, registry, [key]);
|
|
79
|
+
}
|
|
80
|
+
const frame2 = pathFrame(depth);
|
|
81
|
+
const slots = frame2.slots ??= /* @__PURE__ */ new Map();
|
|
82
|
+
const cached = slots.get(own);
|
|
83
|
+
if (cached !== void 0 && cached.prefix === prefix && cached.tag === tag && cached.size === size && cached.value === value)
|
|
84
|
+
return cached.resolved;
|
|
85
|
+
const resolved = intern(prefix + (tag === "" ? "" : tag + size + ":" + value));
|
|
86
|
+
if (cached !== void 0) {
|
|
87
|
+
cached.prefix = prefix;
|
|
88
|
+
cached.tag = tag;
|
|
89
|
+
cached.size = size;
|
|
90
|
+
cached.value = value;
|
|
91
|
+
cached.resolved = resolved;
|
|
92
|
+
} else if (slots.size < MAX_BASE_SLOTS)
|
|
93
|
+
slots.set(own, { prefix, tag, size, value, resolved });
|
|
94
|
+
return resolved;
|
|
95
|
+
}
|
|
96
|
+
if (!cacheable) {
|
|
97
|
+
prefix += encoded ?? tag + size + ":" + value;
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
const frame = pathFrame(index);
|
|
101
|
+
if (frame.prefix !== prefix || frame.tag !== tag || frame.size !== size || frame.value !== value) {
|
|
102
|
+
frame.prefix = prefix;
|
|
103
|
+
frame.tag = tag;
|
|
104
|
+
frame.size = size;
|
|
105
|
+
frame.value = value;
|
|
106
|
+
frame.path = prefix + tag + size + ":" + value;
|
|
107
|
+
}
|
|
108
|
+
prefix = frame.path;
|
|
109
|
+
}
|
|
110
|
+
throw new Error("Unreachable hook path");
|
|
111
|
+
}
|
|
112
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
113
|
+
0 && (module.exports = {
|
|
114
|
+
resolveHookPath
|
|
115
|
+
});
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -96,8 +96,10 @@ __export(index_exports, {
|
|
|
96
96
|
evt0: () => import_runtime.evt0,
|
|
97
97
|
evt0u: () => import_runtime.evt0u,
|
|
98
98
|
evt1: () => import_runtime.evt1,
|
|
99
|
+
evt1e: () => import_runtime.evt1e,
|
|
99
100
|
evt1u: () => import_runtime.evt1u,
|
|
100
101
|
evt2: () => import_runtime.evt2,
|
|
102
|
+
evt2e: () => import_runtime.evt2e,
|
|
101
103
|
evt2u: () => import_runtime.evt2u,
|
|
102
104
|
evtN: () => import_runtime.evtN,
|
|
103
105
|
evtNu: () => import_runtime.evtNu,
|
|
@@ -120,6 +122,7 @@ __export(index_exports, {
|
|
|
120
122
|
injectStyle: () => import_runtime.injectStyle,
|
|
121
123
|
invokeManualHook: () => import_runtime.invokeManualHook,
|
|
122
124
|
isChildrenBlock: () => import_runtime.isChildrenBlock,
|
|
125
|
+
isHydratingStyle: () => import_runtime.isHydratingStyle,
|
|
123
126
|
isInActScope: () => import_runtime.isInActScope,
|
|
124
127
|
isValidElement: () => import_runtime.isValidElement,
|
|
125
128
|
keyedForBlock: () => import_runtime.keyedForBlock,
|
|
@@ -188,6 +191,7 @@ __export(index_exports, {
|
|
|
188
191
|
setSpread: () => import_runtime.setSpread,
|
|
189
192
|
setStringData: () => import_runtime.setStringData,
|
|
190
193
|
setStyle: () => import_runtime.setStyle,
|
|
194
|
+
setStyleProperties: () => import_runtime.setStyleProperties,
|
|
191
195
|
setStyleProperty: () => import_runtime.setStyleProperty,
|
|
192
196
|
setText: () => import_runtime.setText,
|
|
193
197
|
setTransitionFallbackTimeout: () => import_runtime.setTransitionFallbackTimeout,
|
|
@@ -324,8 +328,10 @@ var import_method_dep = require("./method-dep.cjs");
|
|
|
324
328
|
evt0,
|
|
325
329
|
evt0u,
|
|
326
330
|
evt1,
|
|
331
|
+
evt1e,
|
|
327
332
|
evt1u,
|
|
328
333
|
evt2,
|
|
334
|
+
evt2e,
|
|
329
335
|
evt2u,
|
|
330
336
|
evtN,
|
|
331
337
|
evtNu,
|
|
@@ -348,6 +354,7 @@ var import_method_dep = require("./method-dep.cjs");
|
|
|
348
354
|
injectStyle,
|
|
349
355
|
invokeManualHook,
|
|
350
356
|
isChildrenBlock,
|
|
357
|
+
isHydratingStyle,
|
|
351
358
|
isInActScope,
|
|
352
359
|
isValidElement,
|
|
353
360
|
keyedForBlock,
|
|
@@ -416,6 +423,7 @@ var import_method_dep = require("./method-dep.cjs");
|
|
|
416
423
|
setSpread,
|
|
417
424
|
setStringData,
|
|
418
425
|
setStyle,
|
|
426
|
+
setStyleProperties,
|
|
419
427
|
setStyleProperty,
|
|
420
428
|
setText,
|
|
421
429
|
setTransitionFallbackTimeout,
|