satset-react 0.0.1-beta.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.
Files changed (141) hide show
  1. package/dist/adapter/index.d.ts +4 -0
  2. package/dist/adapter/index.d.ts.map +1 -0
  3. package/dist/adapter/index.js +8 -0
  4. package/dist/adapter/index.js.map +1 -0
  5. package/dist/adapter/node.d.ts +3 -0
  6. package/dist/adapter/node.d.ts.map +1 -0
  7. package/dist/adapter/node.js +244 -0
  8. package/dist/adapter/node.js.map +1 -0
  9. package/dist/adapter/types.d.ts +24 -0
  10. package/dist/adapter/types.d.ts.map +1 -0
  11. package/dist/adapter/types.js +3 -0
  12. package/dist/adapter/types.js.map +1 -0
  13. package/dist/adapter/vercel.d.ts +3 -0
  14. package/dist/adapter/vercel.d.ts.map +1 -0
  15. package/dist/adapter/vercel.js +173 -0
  16. package/dist/adapter/vercel.js.map +1 -0
  17. package/dist/assets/favicon.d.ts +2 -0
  18. package/dist/assets/favicon.d.ts.map +1 -0
  19. package/dist/assets/favicon.js +67 -0
  20. package/dist/assets/favicon.js.map +1 -0
  21. package/dist/assets/index.d.ts +6 -0
  22. package/dist/assets/index.d.ts.map +1 -0
  23. package/dist/assets/index.js +14 -0
  24. package/dist/assets/index.js.map +1 -0
  25. package/dist/assets/metadata.d.ts +23 -0
  26. package/dist/assets/metadata.d.ts.map +1 -0
  27. package/dist/assets/metadata.js +55 -0
  28. package/dist/assets/metadata.js.map +1 -0
  29. package/dist/assets/robots.d.ts +11 -0
  30. package/dist/assets/robots.d.ts.map +1 -0
  31. package/dist/assets/robots.js +70 -0
  32. package/dist/assets/robots.js.map +1 -0
  33. package/dist/assets/sitemap.d.ts +12 -0
  34. package/dist/assets/sitemap.d.ts.map +1 -0
  35. package/dist/assets/sitemap.js +71 -0
  36. package/dist/assets/sitemap.js.map +1 -0
  37. package/dist/cli/commands.d.ts +4 -0
  38. package/dist/cli/commands.d.ts.map +1 -0
  39. package/dist/cli/commands.js +74 -0
  40. package/dist/cli/commands.js.map +1 -0
  41. package/dist/cli/index.d.ts +3 -0
  42. package/dist/cli/index.d.ts.map +1 -0
  43. package/dist/cli/index.js +32 -0
  44. package/dist/cli/index.js.map +1 -0
  45. package/dist/components/ErrorBoundary.d.ts +22 -0
  46. package/dist/components/ErrorBoundary.d.ts.map +1 -0
  47. package/dist/components/ErrorBoundary.js +56 -0
  48. package/dist/components/ErrorBoundary.js.map +1 -0
  49. package/dist/components/Image.d.ts +15 -0
  50. package/dist/components/Image.d.ts.map +1 -0
  51. package/dist/components/Image.js +65 -0
  52. package/dist/components/Image.js.map +1 -0
  53. package/dist/components/Link.d.ts +14 -0
  54. package/dist/components/Link.d.ts.map +1 -0
  55. package/dist/components/Link.js +67 -0
  56. package/dist/components/Link.js.map +1 -0
  57. package/dist/components/Script.d.ts +10 -0
  58. package/dist/components/Script.d.ts.map +1 -0
  59. package/dist/components/Script.js +60 -0
  60. package/dist/components/Script.js.map +1 -0
  61. package/dist/components/index.d.ts +5 -0
  62. package/dist/components/index.d.ts.map +1 -0
  63. package/dist/components/index.js +15 -0
  64. package/dist/components/index.js.map +1 -0
  65. package/dist/core/hydrate.d.ts +8 -0
  66. package/dist/core/hydrate.d.ts.map +1 -0
  67. package/dist/core/hydrate.js +73 -0
  68. package/dist/core/hydrate.js.map +1 -0
  69. package/dist/core/index.d.ts +8 -0
  70. package/dist/core/index.d.ts.map +1 -0
  71. package/dist/core/index.js +19 -0
  72. package/dist/core/index.js.map +1 -0
  73. package/dist/core/ssr.d.ts +28 -0
  74. package/dist/core/ssr.d.ts.map +1 -0
  75. package/dist/core/ssr.js +91 -0
  76. package/dist/core/ssr.js.map +1 -0
  77. package/dist/core/types.d.ts +24 -0
  78. package/dist/core/types.d.ts.map +1 -0
  79. package/dist/core/types.js +3 -0
  80. package/dist/core/types.js.map +1 -0
  81. package/dist/index.d.ts +8 -0
  82. package/dist/index.d.ts.map +1 -0
  83. package/dist/index.js +27 -0
  84. package/dist/index.js.map +1 -0
  85. package/dist/navigation/notFound.d.ts +2 -0
  86. package/dist/navigation/notFound.d.ts.map +1 -0
  87. package/dist/navigation/notFound.js +9 -0
  88. package/dist/navigation/notFound.js.map +1 -0
  89. package/dist/router/file-system.d.ts +19 -0
  90. package/dist/router/file-system.d.ts.map +1 -0
  91. package/dist/router/file-system.js +332 -0
  92. package/dist/router/file-system.js.map +1 -0
  93. package/dist/router/index.d.ts +4 -0
  94. package/dist/router/index.d.ts.map +1 -0
  95. package/dist/router/index.js +12 -0
  96. package/dist/router/index.js.map +1 -0
  97. package/dist/router/router.d.ts +17 -0
  98. package/dist/router/router.d.ts.map +1 -0
  99. package/dist/router/router.js +138 -0
  100. package/dist/router/router.js.map +1 -0
  101. package/dist/router/types.d.ts +11 -0
  102. package/dist/router/types.d.ts.map +1 -0
  103. package/dist/router/types.js +3 -0
  104. package/dist/router/types.js.map +1 -0
  105. package/dist/server/build.d.ts +5 -0
  106. package/dist/server/build.d.ts.map +1 -0
  107. package/dist/server/build.js +449 -0
  108. package/dist/server/build.js.map +1 -0
  109. package/dist/server/bundler.d.ts +27 -0
  110. package/dist/server/bundler.d.ts.map +1 -0
  111. package/dist/server/bundler.js +213 -0
  112. package/dist/server/bundler.js.map +1 -0
  113. package/dist/server/dev.d.ts +11 -0
  114. package/dist/server/dev.d.ts.map +1 -0
  115. package/dist/server/dev.js +1052 -0
  116. package/dist/server/dev.js.map +1 -0
  117. package/dist/server/env.d.ts +10 -0
  118. package/dist/server/env.d.ts.map +1 -0
  119. package/dist/server/env.js +102 -0
  120. package/dist/server/env.js.map +1 -0
  121. package/dist/server/error-overlay.d.ts +11 -0
  122. package/dist/server/error-overlay.d.ts.map +1 -0
  123. package/dist/server/error-overlay.js +395 -0
  124. package/dist/server/error-overlay.js.map +1 -0
  125. package/dist/server/hmr.d.ts +8 -0
  126. package/dist/server/hmr.d.ts.map +1 -0
  127. package/dist/server/hmr.js +166 -0
  128. package/dist/server/hmr.js.map +1 -0
  129. package/dist/server/index.d.ts +5 -0
  130. package/dist/server/index.d.ts.map +1 -0
  131. package/dist/server/index.js +10 -0
  132. package/dist/server/index.js.map +1 -0
  133. package/dist/server/response.d.ts +38 -0
  134. package/dist/server/response.d.ts.map +1 -0
  135. package/dist/server/response.js +142 -0
  136. package/dist/server/response.js.map +1 -0
  137. package/dist/server/types.d.ts +13 -0
  138. package/dist/server/types.d.ts.map +1 -0
  139. package/dist/server/types.js +3 -0
  140. package/dist/server/types.js.map +1 -0
  141. package/package.json +70 -0
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = Link;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = __importDefault(require("react"));
9
+ function Link({ href, children, className, prefetch = true, replace = false, scroll = true, target, rel, }) {
10
+ const linkRef = react_1.default.useRef(null);
11
+ react_1.default.useEffect(() => {
12
+ // Prefetch on hover/focus
13
+ if (prefetch && linkRef.current) {
14
+ const handleMouseEnter = () => {
15
+ prefetchRoute(href);
16
+ };
17
+ const handleFocus = () => {
18
+ prefetchRoute(href);
19
+ };
20
+ const link = linkRef.current;
21
+ link.addEventListener('mouseenter', handleMouseEnter);
22
+ link.addEventListener('focus', handleFocus);
23
+ return () => {
24
+ link.removeEventListener('mouseenter', handleMouseEnter);
25
+ link.removeEventListener('focus', handleFocus);
26
+ };
27
+ }
28
+ }, [href, prefetch]);
29
+ const handleClick = (e) => {
30
+ // Allow default behavior for external links or special keys
31
+ if (target === '_blank' ||
32
+ e.ctrlKey ||
33
+ e.metaKey ||
34
+ e.shiftKey ||
35
+ e.altKey ||
36
+ href.startsWith('http://') ||
37
+ href.startsWith('https://') ||
38
+ href.startsWith('mailto:') ||
39
+ href.startsWith('tel:')) {
40
+ return;
41
+ }
42
+ e.preventDefault();
43
+ // Navigate
44
+ if (replace) {
45
+ window.history.replaceState({}, '', href);
46
+ }
47
+ else {
48
+ window.history.pushState({}, '', href);
49
+ }
50
+ // Scroll to top if needed
51
+ if (scroll) {
52
+ window.scrollTo(0, 0);
53
+ }
54
+ // Dispatch popstate event
55
+ window.dispatchEvent(new PopStateEvent('popstate'));
56
+ };
57
+ return ((0, jsx_runtime_1.jsx)("a", { ref: linkRef, href: href, onClick: handleClick, className: className, target: target, rel: rel, children: children }));
58
+ }
59
+ // Prefetch route data
60
+ function prefetchRoute(href) {
61
+ // Create link element for prefetch
62
+ const link = document.createElement('link');
63
+ link.rel = 'prefetch';
64
+ link.href = href;
65
+ document.head.appendChild(link);
66
+ }
67
+ //# sourceMappingURL=Link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Link.js","sourceRoot":"","sources":["../../src/components/Link.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ interface ScriptProps {
2
+ src: string;
3
+ strategy?: 'beforeInteractive' | 'afterInteractive' | 'lazyOnload';
4
+ onLoad?: () => void;
5
+ onError?: (error: Error) => void;
6
+ onReady?: () => void;
7
+ }
8
+ export default function Script({ src, strategy, onLoad, onError, onReady, }: ScriptProps): null;
9
+ export {};
10
+ //# sourceMappingURL=Script.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Script.d.ts","sourceRoot":"","sources":["../../src/components/Script.tsx"],"names":[],"mappings":"AAEA,UAAU,WAAW;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,mBAAmB,GAAG,kBAAkB,GAAG,YAAY,CAAC;IACnE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,GAAG,EACH,QAA6B,EAC7B,MAAM,EACN,OAAO,EACP,OAAO,GACR,EAAE,WAAW,QAsDb"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = Script;
7
+ const react_1 = __importDefault(require("react"));
8
+ function Script({ src, strategy = 'afterInteractive', onLoad, onError, onReady, }) {
9
+ const [loaded, setLoaded] = react_1.default.useState(false);
10
+ react_1.default.useEffect(() => {
11
+ // Check if script already exists
12
+ const existingScript = document.querySelector(`script[src="${src}"]`);
13
+ if (existingScript) {
14
+ setLoaded(true);
15
+ onReady?.();
16
+ return;
17
+ }
18
+ const loadScript = () => {
19
+ const script = document.createElement('script');
20
+ script.src = src;
21
+ script.async = true;
22
+ script.onload = () => {
23
+ setLoaded(true);
24
+ onLoad?.();
25
+ onReady?.();
26
+ };
27
+ script.onerror = () => {
28
+ const error = new Error(`Failed to load script: ${src}`);
29
+ console.error('[Satset Script]', error);
30
+ onError?.(error);
31
+ };
32
+ document.body.appendChild(script);
33
+ };
34
+ if (strategy === 'beforeInteractive') {
35
+ // Load immediately
36
+ loadScript();
37
+ }
38
+ else if (strategy === 'afterInteractive') {
39
+ // Load after page is interactive
40
+ if (document.readyState === 'complete') {
41
+ loadScript();
42
+ }
43
+ else {
44
+ window.addEventListener('load', loadScript);
45
+ return () => window.removeEventListener('load', loadScript);
46
+ }
47
+ }
48
+ else if (strategy === 'lazyOnload') {
49
+ // Load when idle
50
+ if ('requestIdleCallback' in window) {
51
+ requestIdleCallback(() => loadScript());
52
+ }
53
+ else {
54
+ setTimeout(loadScript, 1000);
55
+ }
56
+ }
57
+ }, [src, strategy, onLoad, onError, onReady]);
58
+ return null;
59
+ }
60
+ //# sourceMappingURL=Script.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Script.js","sourceRoot":"","sources":["../../src/components/Script.tsx"],"names":[],"mappings":";;;;;AAUA,yBA4DC;AAtED,kDAA0B;AAU1B,SAAwB,MAAM,CAAC,EAC7B,GAAG,EACH,QAAQ,GAAG,kBAAkB,EAC7B,MAAM,EACN,OAAO,EACP,OAAO,GACK;IACZ,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,iCAAiC;QACjC,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;QACtE,IAAI,cAAc,EAAE,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;YACjB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;YAEpB,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;gBACnB,SAAS,CAAC,IAAI,CAAC,CAAC;gBAChB,MAAM,EAAE,EAAE,CAAC;gBACX,OAAO,EAAE,EAAE,CAAC;YACd,CAAC,CAAC;YAEF,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;gBACpB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;gBACxC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC,CAAC;YAEF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC;QAEF,IAAI,QAAQ,KAAK,mBAAmB,EAAE,CAAC;YACrC,mBAAmB;YACnB,UAAU,EAAE,CAAC;QACf,CAAC;aAAM,IAAI,QAAQ,KAAK,kBAAkB,EAAE,CAAC;YAC3C,iCAAiC;YACjC,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBACvC,UAAU,EAAE,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC5C,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YACrC,iBAAiB;YACjB,IAAI,qBAAqB,IAAI,MAAM,EAAE,CAAC;gBACpC,mBAAmB,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAE9C,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { default as Link } from './Link';
2
+ export { default as Image } from './Image';
3
+ export { default as Script } from './Script';
4
+ export { default as ErrorBoundary } from './ErrorBoundary';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ErrorBoundary = exports.Script = exports.Image = exports.Link = void 0;
7
+ var Link_1 = require("./Link");
8
+ Object.defineProperty(exports, "Link", { enumerable: true, get: function () { return __importDefault(Link_1).default; } });
9
+ var Image_1 = require("./Image");
10
+ Object.defineProperty(exports, "Image", { enumerable: true, get: function () { return __importDefault(Image_1).default; } });
11
+ var Script_1 = require("./Script");
12
+ Object.defineProperty(exports, "Script", { enumerable: true, get: function () { return __importDefault(Script_1).default; } });
13
+ var ErrorBoundary_1 = require("./ErrorBoundary");
14
+ Object.defineProperty(exports, "ErrorBoundary", { enumerable: true, get: function () { return __importDefault(ErrorBoundary_1).default; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export interface HydrateOptions {
3
+ onRecoverableError?: (error: unknown, errorInfo?: any) => void;
4
+ }
5
+ export declare function hydrate(App: React.ComponentType<any>, options?: HydrateOptions): void;
6
+ export declare function hydrateProgressively(App: React.ComponentType<any>, options?: HydrateOptions): void;
7
+ export declare function hydrateComponent(Component: React.ComponentType<any>, elementId: string, props?: any): void;
8
+ //# sourceMappingURL=hydrate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hydrate.d.ts","sourceRoot":"","sources":["../../src/core/hydrate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,cAAc;IAC7B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAChE;AAED,wBAAgB,OAAO,CACrB,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAC7B,OAAO,GAAE,cAAmB,QA+B7B;AAGD,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAC7B,OAAO,GAAE,cAAmB,QAa7B;AAGD,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EACnC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,GAAQ,QAmBhB"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.hydrate = hydrate;
7
+ exports.hydrateProgressively = hydrateProgressively;
8
+ exports.hydrateComponent = hydrateComponent;
9
+ const react_1 = __importDefault(require("react"));
10
+ const client_1 = require("react-dom/client");
11
+ function hydrate(App, options = {}) {
12
+ const root = document.getElementById('root');
13
+ if (!root) {
14
+ throw new Error('[Satset] Root element #root not found');
15
+ }
16
+ try {
17
+ // Hydrate if server-rendered content exists
18
+ if (root.innerHTML.trim()) {
19
+ (0, client_1.hydrateRoot)(root, react_1.default.createElement(App), {
20
+ onRecoverableError: options.onRecoverableError || ((error) => {
21
+ console.error('[Satset] Hydration error:', error);
22
+ }),
23
+ });
24
+ }
25
+ else {
26
+ // Client-side render if no SSR content
27
+ const clientRoot = (0, client_1.createRoot)(root);
28
+ clientRoot.render(react_1.default.createElement(App));
29
+ }
30
+ }
31
+ catch (error) {
32
+ console.error('[Satset] Failed to hydrate:', error);
33
+ // Fallback to client-side render
34
+ const clientRoot = (0, client_1.createRoot)(root);
35
+ clientRoot.render(react_1.default.createElement(App));
36
+ }
37
+ }
38
+ // Progressive hydration (for large apps)
39
+ function hydrateProgressively(App, options = {}) {
40
+ // Use requestIdleCallback for non-critical hydration
41
+ if ('requestIdleCallback' in window) {
42
+ requestIdleCallback(() => {
43
+ hydrate(App, options);
44
+ });
45
+ }
46
+ else {
47
+ // Fallback to setTimeout
48
+ setTimeout(() => {
49
+ hydrate(App, options);
50
+ }, 0);
51
+ }
52
+ }
53
+ // Selective hydration (hydrate specific components)
54
+ function hydrateComponent(Component, elementId, props = {}) {
55
+ const element = document.getElementById(elementId);
56
+ if (!element) {
57
+ console.warn(`[Satset] Element #${elementId} not found for hydration`);
58
+ return;
59
+ }
60
+ try {
61
+ if (element.innerHTML.trim()) {
62
+ (0, client_1.hydrateRoot)(element, react_1.default.createElement(Component, props));
63
+ }
64
+ else {
65
+ const root = (0, client_1.createRoot)(element);
66
+ root.render(react_1.default.createElement(Component, props));
67
+ }
68
+ }
69
+ catch (error) {
70
+ console.error(`[Satset] Failed to hydrate component at #${elementId}:`, error);
71
+ }
72
+ }
73
+ //# sourceMappingURL=hydrate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../../src/core/hydrate.ts"],"names":[],"mappings":";;;;;AAOA,0BAiCC;AAGD,oDAeC;AAGD,4CAsBC;AAnFD,kDAA0B;AAC1B,6CAA2D;AAM3D,SAAgB,OAAO,CACrB,GAA6B,EAC7B,UAA0B,EAAE;IAE5B,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,CAAC;QACH,4CAA4C;QAC5C,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1B,IAAA,oBAAW,EACT,IAAI,EACJ,eAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EACxB;gBACE,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC3D,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;gBACpD,CAAC,CAAC;aACH,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,MAAM,UAAU,GAAG,IAAA,mBAAU,EAAC,IAAI,CAAC,CAAC;YACpC,UAAU,CAAC,MAAM,CAAC,eAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACpD,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAA,mBAAU,EAAC,IAAI,CAAC,CAAC;QACpC,UAAU,CAAC,MAAM,CAAC,eAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,yCAAyC;AACzC,SAAgB,oBAAoB,CAClC,GAA6B,EAC7B,UAA0B,EAAE;IAE5B,qDAAqD;IACrD,IAAI,qBAAqB,IAAI,MAAM,EAAE,CAAC;QACpC,mBAAmB,CAAC,GAAG,EAAE;YACvB,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,yBAAyB;QACzB,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACxB,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC;AACH,CAAC;AAED,oDAAoD;AACpD,SAAgB,gBAAgB,CAC9B,SAAmC,EACnC,SAAiB,EACjB,QAAa,EAAE;IAEf,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAEnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,qBAAqB,SAAS,0BAA0B,CAAC,CAAC;QACvE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7B,IAAA,oBAAW,EAAC,OAAO,EAAE,eAAK,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,eAAK,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;IACjF,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { renderToString, renderToStaticMarkup, renderToStream, escapeHtml } from './ssr';
2
+ export type { RenderOptions, SSRResult } from './ssr';
3
+ export { hydrate, hydrateProgressively, hydrateComponent } from './hydrate';
4
+ export type { HydrateOptions } from './hydrate';
5
+ export { notFound } from '../navigation/notFound';
6
+ export { SatsetResponse, buildSatsetRequest, sendSatsetResponse } from '../server/response';
7
+ export type { SatsetApp } from './types';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzF,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC5E,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE5F,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendSatsetResponse = exports.buildSatsetRequest = exports.SatsetResponse = exports.notFound = exports.hydrateComponent = exports.hydrateProgressively = exports.hydrate = exports.escapeHtml = exports.renderToStream = exports.renderToStaticMarkup = exports.renderToString = void 0;
4
+ var ssr_1 = require("./ssr");
5
+ Object.defineProperty(exports, "renderToString", { enumerable: true, get: function () { return ssr_1.renderToString; } });
6
+ Object.defineProperty(exports, "renderToStaticMarkup", { enumerable: true, get: function () { return ssr_1.renderToStaticMarkup; } });
7
+ Object.defineProperty(exports, "renderToStream", { enumerable: true, get: function () { return ssr_1.renderToStream; } });
8
+ Object.defineProperty(exports, "escapeHtml", { enumerable: true, get: function () { return ssr_1.escapeHtml; } });
9
+ var hydrate_1 = require("./hydrate");
10
+ Object.defineProperty(exports, "hydrate", { enumerable: true, get: function () { return hydrate_1.hydrate; } });
11
+ Object.defineProperty(exports, "hydrateProgressively", { enumerable: true, get: function () { return hydrate_1.hydrateProgressively; } });
12
+ Object.defineProperty(exports, "hydrateComponent", { enumerable: true, get: function () { return hydrate_1.hydrateComponent; } });
13
+ var notFound_1 = require("../navigation/notFound");
14
+ Object.defineProperty(exports, "notFound", { enumerable: true, get: function () { return notFound_1.notFound; } });
15
+ var response_1 = require("../server/response");
16
+ Object.defineProperty(exports, "SatsetResponse", { enumerable: true, get: function () { return response_1.SatsetResponse; } });
17
+ Object.defineProperty(exports, "buildSatsetRequest", { enumerable: true, get: function () { return response_1.buildSatsetRequest; } });
18
+ Object.defineProperty(exports, "sendSatsetResponse", { enumerable: true, get: function () { return response_1.sendSatsetResponse; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;AAAA,6BAAyF;AAAhF,qGAAA,cAAc,OAAA;AAAE,2GAAA,oBAAoB,OAAA;AAAE,qGAAA,cAAc,OAAA;AAAE,iGAAA,UAAU,OAAA;AAGzE,qCAA4E;AAAnE,kGAAA,OAAO,OAAA;AAAE,+GAAA,oBAAoB,OAAA;AAAE,2GAAA,gBAAgB,OAAA;AAGxD,mDAAkD;AAAzC,oGAAA,QAAQ,OAAA;AAEjB,+CAA4F;AAAnF,0GAAA,cAAc,OAAA;AAAE,8GAAA,kBAAkB,OAAA;AAAE,8GAAA,kBAAkB,OAAA"}
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ export interface RenderOptions {
3
+ url: string;
4
+ head?: {
5
+ title?: string;
6
+ meta?: Array<{
7
+ name?: string;
8
+ property?: string;
9
+ content: string;
10
+ }>;
11
+ links?: Array<{
12
+ rel: string;
13
+ href: string;
14
+ }>;
15
+ };
16
+ scripts?: string[];
17
+ styles?: string[];
18
+ }
19
+ export interface SSRResult {
20
+ html: string;
21
+ head: string;
22
+ body: string;
23
+ }
24
+ export declare function renderToString(App: React.ComponentType<any>, options: RenderOptions): SSRResult;
25
+ export declare function renderToStaticMarkup(App: React.ComponentType<any>): string;
26
+ export declare function escapeHtml(text: string): string;
27
+ export declare function renderToStream(App: React.ComponentType<any>, options: RenderOptions): Promise<ReadableStream>;
28
+ //# sourceMappingURL=ssr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr.d.ts","sourceRoot":"","sources":["../../src/core/ssr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACpE,KAAK,CAAC,EAAE,KAAK,CAAC;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC9C,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAC7B,OAAO,EAAE,aAAa,GACrB,SAAS,CA4DX;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,MAAM,CAG1E;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C;AAGD,wBAAsB,cAAc,CAClC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAC7B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC,CAazB"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.renderToString = renderToString;
7
+ exports.renderToStaticMarkup = renderToStaticMarkup;
8
+ exports.escapeHtml = escapeHtml;
9
+ exports.renderToStream = renderToStream;
10
+ const react_1 = __importDefault(require("react"));
11
+ const server_1 = require("react-dom/server");
12
+ function renderToString(App, options) {
13
+ const appHtml = (0, server_1.renderToString)(react_1.default.createElement(App));
14
+ const { title = 'Satset App', meta = [], links = [] } = options.head || {};
15
+ const { scripts = [], styles = [] } = options;
16
+ // Generate meta tags
17
+ const metaTags = meta
18
+ .map(m => {
19
+ if (m.name) {
20
+ return `<meta name="${m.name}" content="${m.content}" />`;
21
+ }
22
+ else if (m.property) {
23
+ return `<meta property="${m.property}" content="${m.content}" />`;
24
+ }
25
+ return '';
26
+ })
27
+ .join('\n ');
28
+ // Generate link tags
29
+ const linkTags = links
30
+ .map(l => `<link rel="${l.rel}" href="${l.href}" />`)
31
+ .join('\n ');
32
+ // Generate style tags
33
+ const styleTags = styles
34
+ .map(s => `<link rel="stylesheet" href="${s}" />`)
35
+ .join('\n ');
36
+ // Generate script tags
37
+ const scriptTags = scripts
38
+ .map(s => `<script type="module" src="${s}"></script>`)
39
+ .join('\n ');
40
+ const head = `
41
+ <meta charset="UTF-8" />
42
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
43
+ <title>${escapeHtml(title)}</title>
44
+ ${metaTags}
45
+ ${linkTags}
46
+ ${styleTags}
47
+ `.trim();
48
+ const body = `
49
+ <div id="root">${appHtml}</div>
50
+ ${scriptTags}
51
+ `.trim();
52
+ const html = `
53
+ <!DOCTYPE html>
54
+ <html lang="en">
55
+ <head>
56
+ ${head}
57
+ </head>
58
+ <body>
59
+ ${body}
60
+ </body>
61
+ </html>
62
+ `.trim();
63
+ return { html, head, body };
64
+ }
65
+ function renderToStaticMarkup(App) {
66
+ const { renderToStaticMarkup: reactRenderToStaticMarkup } = require('react-dom/server');
67
+ return reactRenderToStaticMarkup(react_1.default.createElement(App));
68
+ }
69
+ function escapeHtml(text) {
70
+ return text
71
+ .replace(/&/g, '&amp;')
72
+ .replace(/</g, '&lt;')
73
+ .replace(/>/g, '&gt;')
74
+ .replace(/"/g, '&quot;')
75
+ .replace(/'/g, '&#039;');
76
+ }
77
+ // Stream SSR (for large pages)
78
+ async function renderToStream(App, options) {
79
+ const { renderToPipeableStream } = require('react-dom/server');
80
+ return new Promise((resolve, reject) => {
81
+ const stream = renderToPipeableStream(react_1.default.createElement(App), {
82
+ onShellReady() {
83
+ resolve(stream);
84
+ },
85
+ onError(error) {
86
+ reject(error);
87
+ },
88
+ });
89
+ });
90
+ }
91
+ //# sourceMappingURL=ssr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/core/ssr.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ export interface SatsetApp {
3
+ default: React.ComponentType<any>;
4
+ getServerSideProps?: (context: ServerContext) => Promise<any>;
5
+ getStaticProps?: () => Promise<any>;
6
+ }
7
+ export interface ServerContext {
8
+ req: any;
9
+ res: any;
10
+ params: Record<string, string>;
11
+ query: Record<string, string>;
12
+ }
13
+ export interface PageProps {
14
+ [key: string]: any;
15
+ }
16
+ export interface LayoutProps {
17
+ children: React.ReactNode;
18
+ params?: Record<string, string>;
19
+ }
20
+ export interface ErrorPageProps {
21
+ error: Error;
22
+ reset: () => void;
23
+ }
24
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9D,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export * from './core';
2
+ export * from './router';
3
+ export * from './components';
4
+ export * from './server';
5
+ export * from './adapter';
6
+ export * from './assets';
7
+ export declare const version = "0.0.1";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AAEzB,eAAO,MAAM,OAAO,UAAU,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.version = void 0;
18
+ // Main entry point untuk @satset
19
+ __exportStar(require("./core"), exports);
20
+ __exportStar(require("./router"), exports);
21
+ __exportStar(require("./components"), exports);
22
+ __exportStar(require("./server"), exports);
23
+ __exportStar(require("./adapter"), exports);
24
+ __exportStar(require("./assets"), exports);
25
+ // Version info
26
+ exports.version = '0.0.1';
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,yCAAuB;AACvB,2CAAyB;AACzB,+CAA6B;AAC7B,2CAAyB;AACzB,4CAA0B;AAC1B,2CAAyB;AACzB,eAAe;AACF,QAAA,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function notFound(): never;
2
+ //# sourceMappingURL=notFound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notFound.d.ts","sourceRoot":"","sources":["../../src/navigation/notFound.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,IAAI,KAAK,CAIhC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.notFound = notFound;
4
+ function notFound() {
5
+ const e = new Error('Not Found');
6
+ e.__SATSET_NOT_FOUND = true;
7
+ throw e;
8
+ }
9
+ //# sourceMappingURL=notFound.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notFound.js","sourceRoot":"","sources":["../../src/navigation/notFound.ts"],"names":[],"mappings":";;AAAA,4BAIC;AAJD,SAAgB,QAAQ;IACtB,MAAM,CAAC,GAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,CAAC;AACV,CAAC"}
@@ -0,0 +1,19 @@
1
+ export interface Route {
2
+ path: string;
3
+ component: string;
4
+ exact?: boolean;
5
+ dynamic?: boolean;
6
+ params?: string[];
7
+ catchAllOptional?: boolean;
8
+ }
9
+ export interface RouteTree {
10
+ routes: Route[];
11
+ apiRoutes: Route[];
12
+ }
13
+ export declare function getRoutes(appDir: string): RouteTree;
14
+ export declare function matchRoute(pathname: string, routes: Route[]): {
15
+ route: Route;
16
+ params: Record<string, string>;
17
+ } | null;
18
+ export declare function generateRouteManifest(routes: Route[]): string;
19
+ //# sourceMappingURL=file-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/router/file-system.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,KAAK,EAAE,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAsDnD;AAyND,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,IAAI,CAqBrH;AAwDD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAS7D"}