@fluixi/core 1.0.0-alpha.100
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/LICENSE +21 -0
- package/README.md +334 -0
- package/dist/cdn/core.global.js +2 -0
- package/dist/cli/generate.cjs +5639 -0
- package/dist/cli/generate.d.ts +7 -0
- package/dist/cli/generate.d.ts.map +1 -0
- package/dist/cli/generate.js +2580 -0
- package/dist/cli/generate.mjs +5644 -0
- package/dist/cli/index.cjs +5639 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +2580 -0
- package/dist/cli/index.mjs +5644 -0
- package/dist/cli/run.cjs +64 -0
- package/dist/cli/run.d.ts +3 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli/run.js +62 -0
- package/dist/cli/run.mjs +40 -0
- package/dist/fluixi.d.ts +5 -0
- package/dist/src/cdn/chunk-RKBFEFZP.mjs +987 -0
- package/dist/src/cdn/core.cjs +1592 -0
- package/dist/src/cdn/core.d.ts +16 -0
- package/dist/src/cdn/core.d.ts.map +1 -0
- package/dist/src/cdn/core.js +15 -0
- package/dist/src/cdn/core.mjs +714 -0
- package/dist/src/cdn/router-V2THK27H.mjs +74 -0
- package/dist/src/index.cjs +1711 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +11 -0
- package/dist/src/index.mjs +1833 -0
- package/dist/src/jsx-dev-runtime.cjs +26 -0
- package/dist/src/jsx-dev-runtime.d.ts +2 -0
- package/dist/src/jsx-dev-runtime.d.ts.map +1 -0
- package/dist/src/jsx-dev-runtime.js +1 -0
- package/dist/src/jsx-dev-runtime.mjs +24 -0
- package/dist/src/jsx-runtime.cjs +26 -0
- package/dist/src/jsx-runtime.d.ts +7 -0
- package/dist/src/jsx-runtime.d.ts.map +1 -0
- package/dist/src/jsx-runtime.js +8 -0
- package/dist/src/jsx-runtime.mjs +24 -0
- package/dist/src/lib/client/chunk-FDOPDB6Z.mjs +53 -0
- package/dist/src/lib/client/index.cjs +1210 -0
- package/dist/src/lib/client/index.d.ts +51 -0
- package/dist/src/lib/client/index.d.ts.map +1 -0
- package/dist/src/lib/client/index.js +174 -0
- package/dist/src/lib/client/index.mjs +293 -0
- package/dist/src/lib/client/router-4PTBPZLQ.mjs +891 -0
- package/dist/src/lib/context/context.cjs +81 -0
- package/dist/src/lib/context/context.d.ts +73 -0
- package/dist/src/lib/context/context.d.ts.map +1 -0
- package/dist/src/lib/context/context.js +93 -0
- package/dist/src/lib/context/context.mjs +64 -0
- package/dist/src/lib/context/index.cjs +83 -0
- package/dist/src/lib/context/index.d.ts +3 -0
- package/dist/src/lib/context/index.d.ts.map +1 -0
- package/dist/src/lib/context/index.js +1 -0
- package/dist/src/lib/context/index.mjs +64 -0
- package/dist/src/lib/control-flow.cjs +35 -0
- package/dist/src/lib/control-flow.d.ts +4 -0
- package/dist/src/lib/control-flow.d.ts.map +1 -0
- package/dist/src/lib/control-flow.js +1 -0
- package/dist/src/lib/control-flow.mjs +25 -0
- package/dist/src/lib/core.cjs +1710 -0
- package/dist/src/lib/core.d.ts +91 -0
- package/dist/src/lib/core.d.ts.map +1 -0
- package/dist/src/lib/core.js +158 -0
- package/dist/src/lib/core.mjs +1833 -0
- package/dist/src/lib/env/index.cjs +44 -0
- package/dist/src/lib/env/index.d.ts +26 -0
- package/dist/src/lib/env/index.d.ts.map +1 -0
- package/dist/src/lib/env/index.js +31 -0
- package/dist/src/lib/env/index.mjs +23 -0
- package/dist/src/lib/i18n/index.cjs +123 -0
- package/dist/src/lib/i18n/index.d.ts +110 -0
- package/dist/src/lib/i18n/index.d.ts.map +1 -0
- package/dist/src/lib/i18n/index.js +164 -0
- package/dist/src/lib/i18n/index.mjs +103 -0
- package/dist/src/lib/index.cjs +598 -0
- package/dist/src/lib/index.d.ts +81 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/src/lib/index.js +130 -0
- package/dist/src/lib/index.mjs +688 -0
- package/dist/src/lib/isomorphic.cjs +90 -0
- package/dist/src/lib/isomorphic.d.ts +114 -0
- package/dist/src/lib/isomorphic.d.ts.map +1 -0
- package/dist/src/lib/isomorphic.js +132 -0
- package/dist/src/lib/isomorphic.mjs +69 -0
- package/dist/src/lib/jsx-runtime/index.cjs +21 -0
- package/dist/src/lib/jsx-runtime/index.d.ts +13 -0
- package/dist/src/lib/jsx-runtime/index.d.ts.map +1 -0
- package/dist/src/lib/jsx-runtime/index.js +13 -0
- package/dist/src/lib/jsx-runtime/index.mjs +4 -0
- package/dist/src/lib/jsx-runtime/jsx-dev-runtime.cjs +21 -0
- package/dist/src/lib/jsx-runtime/jsx-dev-runtime.d.ts +2 -0
- package/dist/src/lib/jsx-runtime/jsx-dev-runtime.d.ts.map +1 -0
- package/dist/src/lib/jsx-runtime/jsx-dev-runtime.js +1 -0
- package/dist/src/lib/jsx-runtime/jsx-dev-runtime.mjs +4 -0
- package/dist/src/lib/plugins/fluixi-routes-plugin.cjs +302 -0
- package/dist/src/lib/plugins/fluixi-routes-plugin.d.ts +35 -0
- package/dist/src/lib/plugins/fluixi-routes-plugin.d.ts.map +1 -0
- package/dist/src/lib/plugins/fluixi-routes-plugin.js +118 -0
- package/dist/src/lib/plugins/fluixi-routes-plugin.mjs +271 -0
- package/dist/src/lib/plugins/index.cjs +311 -0
- package/dist/src/lib/plugins/index.d.ts +6 -0
- package/dist/src/lib/plugins/index.d.ts.map +1 -0
- package/dist/src/lib/plugins/index.js +7 -0
- package/dist/src/lib/plugins/index.mjs +279 -0
- package/dist/src/lib/plugins/route-codegen.cjs +73 -0
- package/dist/src/lib/plugins/route-codegen.d.ts +12 -0
- package/dist/src/lib/plugins/route-codegen.d.ts.map +1 -0
- package/dist/src/lib/plugins/route-codegen.js +80 -0
- package/dist/src/lib/plugins/route-codegen.mjs +52 -0
- package/dist/src/lib/plugins/route-scanner.cjs +189 -0
- package/dist/src/lib/plugins/route-scanner.d.ts +38 -0
- package/dist/src/lib/plugins/route-scanner.d.ts.map +1 -0
- package/dist/src/lib/plugins/route-scanner.js +215 -0
- package/dist/src/lib/plugins/route-scanner.mjs +158 -0
- package/dist/src/lib/plugins/vite.cjs +27 -0
- package/dist/src/lib/plugins/vite.d.ts +3 -0
- package/dist/src/lib/plugins/vite.d.ts.map +1 -0
- package/dist/src/lib/plugins/vite.js +1 -0
- package/dist/src/lib/plugins/vite.mjs +6 -0
- package/dist/src/lib/render/await.cjs +38 -0
- package/dist/src/lib/render/await.d.ts +26 -0
- package/dist/src/lib/render/await.d.ts.map +1 -0
- package/dist/src/lib/render/await.js +45 -0
- package/dist/src/lib/render/await.mjs +17 -0
- package/dist/src/lib/render/component.cjs +221 -0
- package/dist/src/lib/render/component.d.ts +296 -0
- package/dist/src/lib/render/component.d.ts.map +1 -0
- package/dist/src/lib/render/component.js +514 -0
- package/dist/src/lib/render/component.mjs +214 -0
- package/dist/src/lib/render/deferred.cjs +175 -0
- package/dist/src/lib/render/deferred.d.ts +36 -0
- package/dist/src/lib/render/deferred.d.ts.map +1 -0
- package/dist/src/lib/render/deferred.js +141 -0
- package/dist/src/lib/render/deferred.mjs +158 -0
- package/dist/src/lib/render/index.cjs +573 -0
- package/dist/src/lib/render/index.d.ts +98 -0
- package/dist/src/lib/render/index.d.ts.map +1 -0
- package/dist/src/lib/render/index.js +180 -0
- package/dist/src/lib/render/index.mjs +590 -0
- package/dist/src/lib/render/lazy.cjs +67 -0
- package/dist/src/lib/render/lazy.d.ts +49 -0
- package/dist/src/lib/render/lazy.d.ts.map +1 -0
- package/dist/src/lib/render/lazy.js +105 -0
- package/dist/src/lib/render/lazy.mjs +50 -0
- package/dist/src/lib/render/suspense.cjs +141 -0
- package/dist/src/lib/render/suspense.d.ts +65 -0
- package/dist/src/lib/render/suspense.d.ts.map +1 -0
- package/dist/src/lib/render/suspense.js +196 -0
- package/dist/src/lib/render/suspense.mjs +136 -0
- package/dist/src/lib/render/versions.cjs +35 -0
- package/dist/src/lib/render/versions.d.ts +2 -0
- package/dist/src/lib/render/versions.d.ts.map +1 -0
- package/dist/src/lib/render/versions.js +21 -0
- package/dist/src/lib/render/versions.mjs +14 -0
- package/dist/src/lib/router/data.cjs +228 -0
- package/dist/src/lib/router/data.d.ts +142 -0
- package/dist/src/lib/router/data.d.ts.map +1 -0
- package/dist/src/lib/router/data.js +258 -0
- package/dist/src/lib/router/data.mjs +214 -0
- package/dist/src/lib/router/index.cjs +921 -0
- package/dist/src/lib/router/index.d.ts +274 -0
- package/dist/src/lib/router/index.d.ts.map +1 -0
- package/dist/src/lib/router/index.js +904 -0
- package/dist/src/lib/router/index.mjs +938 -0
- package/dist/src/lib/router/scroll.cjs +79 -0
- package/dist/src/lib/router/scroll.d.ts +19 -0
- package/dist/src/lib/router/scroll.d.ts.map +1 -0
- package/dist/src/lib/router/scroll.js +68 -0
- package/dist/src/lib/router/scroll.mjs +58 -0
- package/dist/src/lib/router/transition.cjs +75 -0
- package/dist/src/lib/router/transition.d.ts +81 -0
- package/dist/src/lib/router/transition.d.ts.map +1 -0
- package/dist/src/lib/router/transition.js +136 -0
- package/dist/src/lib/router/transition.mjs +54 -0
- package/dist/src/lib/server/hydration.cjs +169 -0
- package/dist/src/lib/server/hydration.d.ts +198 -0
- package/dist/src/lib/server/hydration.d.ts.map +1 -0
- package/dist/src/lib/server/hydration.js +345 -0
- package/dist/src/lib/server/hydration.mjs +148 -0
- package/dist/src/lib/server/index.cjs +406 -0
- package/dist/src/lib/server/index.d.ts +115 -0
- package/dist/src/lib/server/index.d.ts.map +1 -0
- package/dist/src/lib/server/index.js +164 -0
- package/dist/src/lib/server/index.mjs +384 -0
- package/dist/src/lib/server/reactive.cjs +197 -0
- package/dist/src/lib/server/reactive.d.ts +239 -0
- package/dist/src/lib/server/reactive.d.ts.map +1 -0
- package/dist/src/lib/server/reactive.js +413 -0
- package/dist/src/lib/server/reactive.mjs +176 -0
- package/dist/src/lib/storage/cache.cjs +51 -0
- package/dist/src/lib/storage/cache.d.ts +18 -0
- package/dist/src/lib/storage/cache.d.ts.map +1 -0
- package/dist/src/lib/storage/cache.js +42 -0
- package/dist/src/lib/storage/cache.mjs +30 -0
- package/dist/src/lib/storage/index.cjs +246 -0
- package/dist/src/lib/storage/index.d.ts +83 -0
- package/dist/src/lib/storage/index.d.ts.map +1 -0
- package/dist/src/lib/storage/index.js +179 -0
- package/dist/src/lib/storage/index.mjs +231 -0
- package/dist/src/lib/storage/persisted.cjs +91 -0
- package/dist/src/lib/storage/persisted.d.ts +53 -0
- package/dist/src/lib/storage/persisted.d.ts.map +1 -0
- package/dist/src/lib/storage/persisted.js +75 -0
- package/dist/src/lib/storage/persisted.mjs +70 -0
- package/dist/src/lib/theme/color-scheme.cjs +281 -0
- package/dist/src/lib/theme/color-scheme.d.ts +61 -0
- package/dist/src/lib/theme/color-scheme.d.ts.map +1 -0
- package/dist/src/lib/theme/color-scheme.js +120 -0
- package/dist/src/lib/theme/color-scheme.mjs +265 -0
- package/dist/src/lib/theme/index.cjs +267 -0
- package/dist/src/lib/theme/index.d.ts +78 -0
- package/dist/src/lib/theme/index.d.ts.map +1 -0
- package/dist/src/lib/theme/index.js +135 -0
- package/dist/src/lib/theme/index.mjs +251 -0
- package/dist/src/lib/theme/provider.cjs +346 -0
- package/dist/src/lib/theme/provider.d.ts +34 -0
- package/dist/src/lib/theme/provider.d.ts.map +1 -0
- package/dist/src/lib/theme/provider.js +60 -0
- package/dist/src/lib/theme/provider.mjs +332 -0
- package/dist/src/lib/utils/index.cjs +209 -0
- package/dist/src/lib/utils/index.d.ts +286 -0
- package/dist/src/lib/utils/index.d.ts.map +1 -0
- package/dist/src/lib/utils/index.js +434 -0
- package/dist/src/lib/utils/index.mjs +188 -0
- package/dist/src/routes.cjs +37 -0
- package/dist/src/routes.d.ts +22 -0
- package/dist/src/routes.d.ts.map +1 -0
- package/dist/src/routes.js +20 -0
- package/dist/src/routes.mjs +17 -0
- package/dist/src/server.cjs +405 -0
- package/dist/src/server.d.ts +63 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.js +62 -0
- package/dist/src/server.mjs +382 -0
- package/dist/src/utils.cjs +21 -0
- package/dist/src/utils.d.ts +10 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +9 -0
- package/dist/src/utils.mjs +4 -0
- package/dist/src/version.generated.cjs +26 -0
- package/dist/src/version.generated.d.ts +3 -0
- package/dist/src/version.generated.d.ts.map +1 -0
- package/dist/src/version.generated.js +3 -0
- package/dist/src/version.generated.mjs +5 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/package.json +164 -0
- package/src/index.ts +19 -0
- package/types/fluixi.d.ts +5 -0
- package/types/vinxi.d.ts +50 -0
|
@@ -0,0 +1,197 @@
|
|
|
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/lib/server/reactive.ts
|
|
21
|
+
var reactive_exports = {};
|
|
22
|
+
__export(reactive_exports, {
|
|
23
|
+
batch: () => batch,
|
|
24
|
+
createComputed: () => createComputed,
|
|
25
|
+
createContext: () => createContext,
|
|
26
|
+
createDeferred: () => createDeferred,
|
|
27
|
+
createEffect: () => createEffect,
|
|
28
|
+
createMemo: () => createMemo,
|
|
29
|
+
createRenderEffect: () => createRenderEffect,
|
|
30
|
+
createResource: () => createResource,
|
|
31
|
+
createRoot: () => createRoot,
|
|
32
|
+
createSelector: () => createSelector,
|
|
33
|
+
createSignal: () => createSignal,
|
|
34
|
+
createStore: () => createStore,
|
|
35
|
+
getOwner: () => getOwner,
|
|
36
|
+
getSharedConfig: () => getSharedConfig,
|
|
37
|
+
isClient: () => isClient,
|
|
38
|
+
isServer: () => isServer,
|
|
39
|
+
onCleanup: () => onCleanup,
|
|
40
|
+
runWithOwner: () => runWithOwner,
|
|
41
|
+
setOwner: () => setOwner,
|
|
42
|
+
sharedConfig: () => sharedConfig,
|
|
43
|
+
startTransition: () => startTransition,
|
|
44
|
+
untrack: () => untrack,
|
|
45
|
+
useContext: () => useContext
|
|
46
|
+
});
|
|
47
|
+
module.exports = __toCommonJS(reactive_exports);
|
|
48
|
+
function createSignal(value, options) {
|
|
49
|
+
let current = value;
|
|
50
|
+
const read = (() => current);
|
|
51
|
+
const write = (newValue) => {
|
|
52
|
+
if (typeof newValue === "function") {
|
|
53
|
+
current = newValue(current);
|
|
54
|
+
} else {
|
|
55
|
+
current = newValue;
|
|
56
|
+
}
|
|
57
|
+
return current;
|
|
58
|
+
};
|
|
59
|
+
return [read, write];
|
|
60
|
+
}
|
|
61
|
+
function createEffect(fn, value, options) {
|
|
62
|
+
try {
|
|
63
|
+
fn(value);
|
|
64
|
+
} catch (error) {
|
|
65
|
+
console.error("[Fluixi Server] Effect error:", error);
|
|
66
|
+
}
|
|
67
|
+
return { dispose: () => {
|
|
68
|
+
} };
|
|
69
|
+
}
|
|
70
|
+
function createMemo(fn, value, options) {
|
|
71
|
+
const computed = fn(value);
|
|
72
|
+
return (() => computed);
|
|
73
|
+
}
|
|
74
|
+
function createRoot(fn) {
|
|
75
|
+
const cleanups = [];
|
|
76
|
+
const dispose = () => {
|
|
77
|
+
cleanups.forEach((cleanup) => {
|
|
78
|
+
try {
|
|
79
|
+
cleanup();
|
|
80
|
+
} catch (error) {
|
|
81
|
+
console.error("[Fluixi Server] Cleanup error:", error);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
cleanups.length = 0;
|
|
85
|
+
};
|
|
86
|
+
try {
|
|
87
|
+
return fn(dispose);
|
|
88
|
+
} catch (error) {
|
|
89
|
+
dispose();
|
|
90
|
+
throw error;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
function batch(fn) {
|
|
94
|
+
return fn();
|
|
95
|
+
}
|
|
96
|
+
function untrack(fn) {
|
|
97
|
+
return fn();
|
|
98
|
+
}
|
|
99
|
+
var currentCleanups = null;
|
|
100
|
+
function onCleanup(fn) {
|
|
101
|
+
if (currentCleanups) {
|
|
102
|
+
currentCleanups.push(fn);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
var currentOwner = null;
|
|
106
|
+
function getOwner() {
|
|
107
|
+
return currentOwner;
|
|
108
|
+
}
|
|
109
|
+
function runWithOwner(owner, fn) {
|
|
110
|
+
const prev = currentOwner;
|
|
111
|
+
currentOwner = owner;
|
|
112
|
+
try {
|
|
113
|
+
return fn();
|
|
114
|
+
} finally {
|
|
115
|
+
currentOwner = prev;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
var contextMap = /* @__PURE__ */ new Map();
|
|
119
|
+
function createContext(defaultValue) {
|
|
120
|
+
const id = /* @__PURE__ */ Symbol("context");
|
|
121
|
+
const Provider = (props) => {
|
|
122
|
+
const prevValue = contextMap.get(id);
|
|
123
|
+
contextMap.set(id, props.value);
|
|
124
|
+
try {
|
|
125
|
+
return props.children;
|
|
126
|
+
} finally {
|
|
127
|
+
if (prevValue !== void 0) {
|
|
128
|
+
contextMap.set(id, prevValue);
|
|
129
|
+
} else {
|
|
130
|
+
contextMap.delete(id);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
return {
|
|
135
|
+
id,
|
|
136
|
+
Provider,
|
|
137
|
+
defaultValue
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function useContext(context) {
|
|
141
|
+
const value = contextMap.get(context.id);
|
|
142
|
+
return value !== void 0 ? value : context.defaultValue;
|
|
143
|
+
}
|
|
144
|
+
function createComputed(fn) {
|
|
145
|
+
return createEffect(fn);
|
|
146
|
+
}
|
|
147
|
+
function createRenderEffect(fn) {
|
|
148
|
+
return createEffect(fn);
|
|
149
|
+
}
|
|
150
|
+
function createDeferred(fn) {
|
|
151
|
+
return createMemo(fn);
|
|
152
|
+
}
|
|
153
|
+
function createSelector(source) {
|
|
154
|
+
const value = source();
|
|
155
|
+
return (key) => key === value;
|
|
156
|
+
}
|
|
157
|
+
function createResource(source, fetcher, options) {
|
|
158
|
+
return [
|
|
159
|
+
() => void 0,
|
|
160
|
+
{
|
|
161
|
+
mutate: (v) => v,
|
|
162
|
+
refetch: () => {
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
];
|
|
166
|
+
}
|
|
167
|
+
function createStore(init) {
|
|
168
|
+
const state = { ...init };
|
|
169
|
+
function setStore(keyOrPatch, value) {
|
|
170
|
+
if (typeof keyOrPatch === "object" && keyOrPatch !== null && !Array.isArray(keyOrPatch)) {
|
|
171
|
+
for (const k of Object.keys(keyOrPatch)) {
|
|
172
|
+
const v = keyOrPatch[k];
|
|
173
|
+
state[k] = typeof v === "function" ? v(state[k]) : v;
|
|
174
|
+
}
|
|
175
|
+
} else {
|
|
176
|
+
state[keyOrPatch] = typeof value === "function" ? value(state[keyOrPatch]) : value;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return [state, setStore];
|
|
180
|
+
}
|
|
181
|
+
function startTransition(fn) {
|
|
182
|
+
fn();
|
|
183
|
+
}
|
|
184
|
+
var isServer = true;
|
|
185
|
+
var isClient = false;
|
|
186
|
+
var sharedConfig = {
|
|
187
|
+
context: null,
|
|
188
|
+
owner: null
|
|
189
|
+
};
|
|
190
|
+
function setOwner(owner) {
|
|
191
|
+
currentOwner = owner;
|
|
192
|
+
sharedConfig.owner = owner;
|
|
193
|
+
sharedConfig.context = owner;
|
|
194
|
+
}
|
|
195
|
+
function getSharedConfig() {
|
|
196
|
+
return sharedConfig;
|
|
197
|
+
}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module @fluixi/core/server/reactive
|
|
3
|
+
*
|
|
4
|
+
* Maps reactive primitives for server-side execution
|
|
5
|
+
* Following SolidJS pattern of server-specific reactive behavior
|
|
6
|
+
*
|
|
7
|
+
* Server mode:
|
|
8
|
+
* - Signals read-only snapshot
|
|
9
|
+
* - Effects run once
|
|
10
|
+
* - No scheduling
|
|
11
|
+
* - No subscriptions
|
|
12
|
+
*/
|
|
13
|
+
import type { SignalTuple, Accessor, Setter, SignalOptions, RootOwner, Context } from '@fluixi/reactive/signal';
|
|
14
|
+
/**
|
|
15
|
+
* Server createSignal - Returns snapshot value
|
|
16
|
+
*
|
|
17
|
+
* Signals read-only snapshot on server
|
|
18
|
+
* No reactivity, no tracking, just initial value
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* // On server, this returns a static snapshot
|
|
23
|
+
* const [count, setCount] = createSignal(0);
|
|
24
|
+
* console.log(count()); // 0
|
|
25
|
+
* setCount(1); // Updates value but triggers no effects
|
|
26
|
+
* console.log(count()); // 1
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function createSignal<T>(value: T, options?: SignalOptions<T>): SignalTuple<T>;
|
|
30
|
+
/**
|
|
31
|
+
* Server createEffect - Runs once, no tracking
|
|
32
|
+
*
|
|
33
|
+
* Effects run once on server, no scheduling
|
|
34
|
+
* Execute immediately and return no-op disposer
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* // On server, runs once immediately
|
|
39
|
+
* createEffect(() => {
|
|
40
|
+
* console.log('This runs once');
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export declare function createEffect(fn: (v?: any) => any, value?: any, options?: any): {
|
|
45
|
+
dispose: () => void;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Server createMemo - Compute once, return static accessor
|
|
49
|
+
*
|
|
50
|
+
* No tracking on server, single evaluation
|
|
51
|
+
* Memoizes value at creation time
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const [count] = createSignal(5);
|
|
56
|
+
* const doubled = createMemo(() => count() * 2);
|
|
57
|
+
* console.log(doubled()); // 10 (computed once)
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export declare function createMemo<T>(fn: (v?: T) => T, value?: T, options?: any): Accessor<T>;
|
|
61
|
+
/**
|
|
62
|
+
* Server createRoot - Creates owner but no reactive tracking
|
|
63
|
+
*
|
|
64
|
+
* Owners exist on server for tree structure
|
|
65
|
+
* Needed for context and cleanup, but no reactive tracking
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const result = createRoot((dispose) => {
|
|
70
|
+
* // Server: Executes once, maintains owner tree
|
|
71
|
+
* return <App />;
|
|
72
|
+
* });
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare function createRoot<T>(fn: (dispose: () => void) => T): T;
|
|
76
|
+
/**
|
|
77
|
+
* Server batch - Execute immediately, no batching
|
|
78
|
+
*
|
|
79
|
+
* No scheduling on server
|
|
80
|
+
* Just runs the function synchronously
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* batch(() => {
|
|
85
|
+
* setCount(1);
|
|
86
|
+
* setName('Alice');
|
|
87
|
+
* }); // Executes immediately
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export declare function batch<T>(fn: () => T): T;
|
|
91
|
+
/**
|
|
92
|
+
* Server untrack - Execute function (already untracked)
|
|
93
|
+
*
|
|
94
|
+
* No tracking on server anyway
|
|
95
|
+
* This is a no-op but exists for API compatibility
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* untrack(() => {
|
|
100
|
+
* return signal(); // Not tracked (but nothing is on server)
|
|
101
|
+
* });
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
export declare function untrack<T>(fn: () => T): T;
|
|
105
|
+
/**
|
|
106
|
+
* Server onCleanup - Register cleanup function
|
|
107
|
+
*
|
|
108
|
+
* Cleanup still needed for SSR resource management
|
|
109
|
+
* Stores cleanup for execution when root disposes
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```typescript
|
|
113
|
+
* createRoot((dispose) => {
|
|
114
|
+
* onCleanup(() => {
|
|
115
|
+
* console.log('Cleanup on dispose');
|
|
116
|
+
* });
|
|
117
|
+
* return result;
|
|
118
|
+
* });
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
export declare function onCleanup(fn: () => void): void;
|
|
122
|
+
/**
|
|
123
|
+
* Server getOwner - Get current reactive owner
|
|
124
|
+
*
|
|
125
|
+
* Owner tree maintained on server for context
|
|
126
|
+
*/
|
|
127
|
+
export declare function getOwner(): RootOwner | null;
|
|
128
|
+
/**
|
|
129
|
+
* Server runWithOwner - Run function with specific owner
|
|
130
|
+
*
|
|
131
|
+
* Owner switching for proper context nesting
|
|
132
|
+
*/
|
|
133
|
+
export declare function runWithOwner<T>(owner: RootOwner | null, fn: () => T): T;
|
|
134
|
+
/**
|
|
135
|
+
* Server createContext - Create context with default value
|
|
136
|
+
*
|
|
137
|
+
* Context lookup-based, no subscriptions on server
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```typescript
|
|
141
|
+
* const ThemeContext = createContext('light');
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
export declare function createContext<T>(defaultValue?: T): Context<T>;
|
|
145
|
+
/**
|
|
146
|
+
* Server useContext - Retrieve context value
|
|
147
|
+
*
|
|
148
|
+
* No subscriptions on server, just lookup
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* const theme = useContext(ThemeContext);
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
export declare function useContext<T>(context: Context<T>): T;
|
|
156
|
+
/**
|
|
157
|
+
* Server createComputed - Alias for createEffect
|
|
158
|
+
*
|
|
159
|
+
* On server, computed values run once like effects
|
|
160
|
+
*/
|
|
161
|
+
export declare function createComputed(fn: () => any): {
|
|
162
|
+
dispose: () => void;
|
|
163
|
+
};
|
|
164
|
+
/**
|
|
165
|
+
* Server createRenderEffect - Runs once for SSR rendering
|
|
166
|
+
*/
|
|
167
|
+
export declare function createRenderEffect(fn: () => any): {
|
|
168
|
+
dispose: () => void;
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* Server createDeferred - No deferring on server
|
|
172
|
+
*/
|
|
173
|
+
export declare function createDeferred<T>(fn: () => T): Accessor<T>;
|
|
174
|
+
/**
|
|
175
|
+
* Server createSelector - Returns static equality check
|
|
176
|
+
*/
|
|
177
|
+
/**
|
|
178
|
+
* The server stand-in for `createSelector`.
|
|
179
|
+
*
|
|
180
|
+
* On the client a selector is a fine-grained membership test that only notifies the two
|
|
181
|
+
* keys whose match changed. A server render produces one pass and has no subscriptions to
|
|
182
|
+
* be fine-grained about, so this reads the source once and compares.
|
|
183
|
+
*/
|
|
184
|
+
export declare function createSelector<T>(source: () => T): (key: T) => boolean;
|
|
185
|
+
/**
|
|
186
|
+
* Server createResource - Stub for resource creation
|
|
187
|
+
*/
|
|
188
|
+
export declare function createResource<T, S = true>(source: any, fetcher?: any, options?: any): [() => T | undefined, {
|
|
189
|
+
mutate: (v: T) => T;
|
|
190
|
+
refetch: () => void;
|
|
191
|
+
}];
|
|
192
|
+
export type Store<T extends object> = {
|
|
193
|
+
readonly [K in keyof T]: T[K];
|
|
194
|
+
};
|
|
195
|
+
export type SetStoreFunction<T extends object> = {
|
|
196
|
+
(patch: {
|
|
197
|
+
[K in keyof T]?: T[K] | ((prev: T[K]) => T[K]);
|
|
198
|
+
}): void;
|
|
199
|
+
<K extends keyof T>(key: K, value: T[K] | ((prev: T[K]) => T[K])): void;
|
|
200
|
+
};
|
|
201
|
+
/**
|
|
202
|
+
* Server createStore: plain object wrapper, no reactivity.
|
|
203
|
+
* Mirrors the client API so shared code compiles on both sides.
|
|
204
|
+
*/
|
|
205
|
+
export declare function createStore<T extends object>(init: T): [Store<T>, SetStoreFunction<T>];
|
|
206
|
+
/**
|
|
207
|
+
* Server startTransition - Execute immediately
|
|
208
|
+
*/
|
|
209
|
+
export declare function startTransition(fn: () => void): void;
|
|
210
|
+
/**
|
|
211
|
+
* Check if running on server
|
|
212
|
+
*/
|
|
213
|
+
export declare const isServer = true;
|
|
214
|
+
/**
|
|
215
|
+
* Check if running on client
|
|
216
|
+
*/
|
|
217
|
+
export declare const isClient = false;
|
|
218
|
+
export type { SignalTuple, Accessor, Setter, SignalOptions, RootOwner, Context };
|
|
219
|
+
/**
|
|
220
|
+
* Server sharedConfig - Empty config object for compatibility
|
|
221
|
+
*/
|
|
222
|
+
export declare const sharedConfig: {
|
|
223
|
+
context: RootOwner | null;
|
|
224
|
+
owner: RootOwner | null;
|
|
225
|
+
};
|
|
226
|
+
/**
|
|
227
|
+
* Set current reactive owner (for internal use)
|
|
228
|
+
* @internal
|
|
229
|
+
*/
|
|
230
|
+
export declare function setOwner(owner: RootOwner | null): void;
|
|
231
|
+
/**
|
|
232
|
+
* Get shared config (for compatibility)
|
|
233
|
+
* @internal
|
|
234
|
+
*/
|
|
235
|
+
export declare function getSharedConfig(): {
|
|
236
|
+
context: RootOwner | null;
|
|
237
|
+
owner: RootOwner | null;
|
|
238
|
+
};
|
|
239
|
+
//# sourceMappingURL=reactive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../../../src/lib/server/reactive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,MAAM,EACN,aAAa,EACb,SAAS,EACT,OAAO,EACR,MAAM,yBAAyB,CAAC;AAMjC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GACzB,WAAW,CAAC,CAAC,CAAC,CAehB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,EACpB,KAAK,CAAC,EAAE,GAAG,EACX,OAAO,CAAC,EAAE,GAAG,GACZ;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAUzB;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAChB,KAAK,CAAC,EAAE,CAAC,EACT,OAAO,CAAC,EAAE,GAAG,GACZ,QAAQ,CAAC,CAAC,CAAC,CAIb;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAsB/D;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAGvC;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAGzC;AAQD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAI9C;AAQD;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,SAAS,GAAG,IAAI,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAQvE;AAQD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAyB7D;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAIpD;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAErE;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAEzE;AAMD;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAE1D;AAMD;;GAEG;AAEH;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAGtE;AAMD;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EACxC,MAAM,EAAE,GAAG,EACX,OAAO,CAAC,EAAE,GAAG,EACb,OAAO,CAAC,EAAE,GAAG,GACZ,CAAC,MAAM,CAAC,GAAG,SAAS,EAAE;IAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC,CAQrE;AAMD,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,IAAI;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AACxE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI;IAC/C,CAAC,KAAK,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,GAAG,IAAI,CAAC;IAClE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CACzE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAC1C,IAAI,EAAE,CAAC,GACN,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAoBjC;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAEpD;AAQD;;GAEG;AACH,eAAO,MAAM,QAAQ,OAAO,CAAC;AAE7B;;GAEG;AACH,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAM9B,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAMjF;;GAEG;AACH,eAAO,MAAM,YAAY;aACN,SAAS,GAAG,IAAI;WAClB,SAAS,GAAG,IAAI;CAChC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAItD;AAED;;;GAGG;AACH,wBAAgB,eAAe;aAlBZ,SAAS,GAAG,IAAI;WAClB,SAAS,GAAG,IAAI;EAmBhC"}
|