@farm.js/core 0.1.0-beta.44 → 0.1.0-beta.46

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 (84) hide show
  1. package/dist/api/route-manager.cjs.map +1 -1
  2. package/dist/api/route-manager.mjs +2 -2
  3. package/dist/api.cjs.map +1 -1
  4. package/dist/api.mjs +3 -3
  5. package/dist/{chunk-EPBXX44K.mjs → chunk-3UUEBVR3.mjs} +3 -3
  6. package/dist/{chunk-IRYMQRYJ.mjs → chunk-ECLWCE4H.mjs} +2 -2
  7. package/dist/{chunk-MYNLKNAW.mjs → chunk-EHUGMAWL.mjs} +2 -2
  8. package/dist/{chunk-FY34HLY7.mjs → chunk-LGCIIMFR.mjs} +2 -2
  9. package/dist/{chunk-FY34HLY7.mjs.map → chunk-LGCIIMFR.mjs.map} +1 -1
  10. package/dist/{chunk-MU2QKVYL.mjs → chunk-MP2SDRRB.mjs} +2 -2
  11. package/dist/{chunk-VHYARVB7.mjs → chunk-TIESOJ7Z.mjs} +2 -2
  12. package/dist/{chunk-LIIZPHDO.mjs → chunk-TQJMU5BP.mjs} +16 -16
  13. package/dist/chunk-TQJMU5BP.mjs.map +1 -0
  14. package/dist/{chunk-KEPCW6EI.mjs → chunk-U5SPS2HR.mjs} +10 -1
  15. package/dist/chunk-U5SPS2HR.mjs.map +1 -0
  16. package/dist/{chunk-4MYKKWR4.mjs → chunk-V7VDW7IY.mjs} +7 -7
  17. package/dist/{chunk-BQWTEZSS.mjs → chunk-W2O6SKJU.mjs} +2 -2
  18. package/dist/{chunk-X4MNGHCU.mjs → chunk-XR7M5VXU.mjs} +2 -2
  19. package/dist/{chunk-TUYEGV7H.mjs → chunk-YKAUAZA4.mjs} +7 -3
  20. package/dist/chunk-YKAUAZA4.mjs.map +1 -0
  21. package/dist/client/lifecycle.mjs +2 -2
  22. package/dist/client-plugins.cjs +1 -1
  23. package/dist/client-plugins.cjs.map +1 -1
  24. package/dist/client-plugins.mjs +2 -2
  25. package/dist/client.cjs +1 -1
  26. package/dist/client.cjs.map +1 -1
  27. package/dist/client.mjs +2 -2
  28. package/dist/{devtools-3MSKJ4TE.mjs → devtools-BUFIHBX3.mjs} +3 -3
  29. package/dist/docs.cjs.map +1 -1
  30. package/dist/docs.mjs +3 -3
  31. package/dist/index.cjs +24 -11
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.d.mts +1 -1
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.mjs +14 -12
  36. package/dist/index.mjs.map +1 -1
  37. package/dist/internal/build-runtime.cjs +22 -11
  38. package/dist/internal/build-runtime.cjs.map +1 -1
  39. package/dist/internal/build-runtime.d.mts +1 -1
  40. package/dist/internal/build-runtime.d.ts +1 -1
  41. package/dist/internal/build-runtime.mjs +9 -9
  42. package/dist/internal/client-runtime.cjs +1 -1
  43. package/dist/internal/client-runtime.cjs.map +1 -1
  44. package/dist/internal/client-runtime.mjs +2 -2
  45. package/dist/internal/config-runtime.cjs +6 -2
  46. package/dist/internal/config-runtime.cjs.map +1 -1
  47. package/dist/internal/config-runtime.d.mts +1 -1
  48. package/dist/internal/config-runtime.d.ts +1 -1
  49. package/dist/internal/config-runtime.mjs +3 -3
  50. package/dist/{layers-3ZHU4XTZ.mjs → layers-KJI5XUAP.mjs} +2 -2
  51. package/dist/middleware.cjs.map +1 -1
  52. package/dist/middleware.mjs +3 -3
  53. package/dist/plugin.cjs +16 -9
  54. package/dist/plugin.cjs.map +1 -1
  55. package/dist/plugin.mjs +6 -6
  56. package/dist/server.cjs +24 -11
  57. package/dist/server.cjs.map +1 -1
  58. package/dist/server.d.mts +1 -1
  59. package/dist/server.d.ts +1 -1
  60. package/dist/server.mjs +9 -7
  61. package/dist/server.mjs.map +1 -1
  62. package/dist/testing.mjs +2 -2
  63. package/dist/{utils-CjZRiq-l.d.mts → utils-9OPxcT1T.d.mts} +9 -1
  64. package/dist/{utils-_LOF-V9f.d.ts → utils-CIIoLfn9.d.ts} +9 -1
  65. package/dist/version.cjs +1 -1
  66. package/dist/version.cjs.map +1 -1
  67. package/dist/version.mjs +1 -1
  68. package/dist/vite.cjs +22 -11
  69. package/dist/vite.cjs.map +1 -1
  70. package/dist/vite.mjs +6 -6
  71. package/package.json +1 -1
  72. package/dist/chunk-KEPCW6EI.mjs.map +0 -1
  73. package/dist/chunk-LIIZPHDO.mjs.map +0 -1
  74. package/dist/chunk-TUYEGV7H.mjs.map +0 -1
  75. /package/dist/{chunk-EPBXX44K.mjs.map → chunk-3UUEBVR3.mjs.map} +0 -0
  76. /package/dist/{chunk-IRYMQRYJ.mjs.map → chunk-ECLWCE4H.mjs.map} +0 -0
  77. /package/dist/{chunk-MYNLKNAW.mjs.map → chunk-EHUGMAWL.mjs.map} +0 -0
  78. /package/dist/{chunk-MU2QKVYL.mjs.map → chunk-MP2SDRRB.mjs.map} +0 -0
  79. /package/dist/{chunk-VHYARVB7.mjs.map → chunk-TIESOJ7Z.mjs.map} +0 -0
  80. /package/dist/{chunk-4MYKKWR4.mjs.map → chunk-V7VDW7IY.mjs.map} +0 -0
  81. /package/dist/{chunk-BQWTEZSS.mjs.map → chunk-W2O6SKJU.mjs.map} +0 -0
  82. /package/dist/{chunk-X4MNGHCU.mjs.map → chunk-XR7M5VXU.mjs.map} +0 -0
  83. /package/dist/{devtools-3MSKJ4TE.mjs.map → devtools-BUFIHBX3.mjs.map} +0 -0
  84. /package/dist/{layers-3ZHU4XTZ.mjs.map → layers-KJI5XUAP.mjs.map} +0 -0
package/dist/vite.mjs CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  farmI18nClientBridgePlugin,
4
4
  farmPlugin,
5
5
  rewriteEarlySsrRelativeImports
6
- } from "./chunk-LIIZPHDO.mjs";
6
+ } from "./chunk-TQJMU5BP.mjs";
7
7
  import "./chunk-XJTDE4L4.mjs";
8
8
  import "./chunk-CAUVJN4X.mjs";
9
9
  import "./chunk-AMZZCRQ7.mjs";
@@ -18,7 +18,7 @@ import "./chunk-E257KFBU.mjs";
18
18
  import "./chunk-7MABZJIM.mjs";
19
19
  import "./chunk-H3A35IQ2.mjs";
20
20
  import "./chunk-BNTDKO7T.mjs";
21
- import "./chunk-TUYEGV7H.mjs";
21
+ import "./chunk-YKAUAZA4.mjs";
22
22
  import "./chunk-7ZVN3YZI.mjs";
23
23
  import "./chunk-GY2STC2S.mjs";
24
24
  import "./chunk-JHCNZLFT.mjs";
@@ -33,15 +33,15 @@ import "./chunk-H53KVQUU.mjs";
33
33
  import "./chunk-QKVUNGAH.mjs";
34
34
  import "./chunk-HFQ2I2EA.mjs";
35
35
  import "./chunk-T4QJQK76.mjs";
36
- import "./chunk-VHYARVB7.mjs";
36
+ import "./chunk-TIESOJ7Z.mjs";
37
37
  import "./chunk-P7QDS5AT.mjs";
38
38
  import "./chunk-E6EPN5BT.mjs";
39
- import "./chunk-MU2QKVYL.mjs";
39
+ import "./chunk-MP2SDRRB.mjs";
40
40
  import "./chunk-XJ65E7MB.mjs";
41
41
  import "./chunk-FQYDHKKU.mjs";
42
42
  import "./chunk-SXWF4QRU.mjs";
43
43
  import "./chunk-GIELMNBG.mjs";
44
- import "./chunk-KEPCW6EI.mjs";
44
+ import "./chunk-U5SPS2HR.mjs";
45
45
  import "./chunk-QGOHVJ6J.mjs";
46
46
  import "./chunk-5B33VWGX.mjs";
47
47
  import "./chunk-YTMDIHQN.mjs";
@@ -60,7 +60,7 @@ import "./chunk-RBRLLZL5.mjs";
60
60
  import "./chunk-WZ5QFROO.mjs";
61
61
  import "./chunk-7ZMKVETU.mjs";
62
62
  import "./chunk-FXG2PS27.mjs";
63
- import "./chunk-FY34HLY7.mjs";
63
+ import "./chunk-LGCIIMFR.mjs";
64
64
  import "./chunk-CGILA3WO.mjs";
65
65
  export {
66
66
  defineConfig,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farm.js/core",
3
- "version": "0.1.0-beta.44",
3
+ "version": "0.1.0-beta.46",
4
4
  "description": "Core Farm.js framework for modern integrated apps",
5
5
  "keywords": [
6
6
  "@farm.js/core",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils.ts"],"sourcesContent":["import type { RouteSegment, ParsedRoute } from \"./types\";\nimport path from \"path\";\n\nexport function parseRoutePath(filePath: string): ParsedRoute {\n const segments: RouteSegment[] = [];\n const normalizedPath = filePath.replace(/\\\\/g, \"/\");\n const pathParts = normalizedPath.split(\"/\").filter(Boolean);\n\n const fileName = pathParts.pop() || \"\";\n const fileType = getRouteType(fileName);\n\n for (const part of pathParts) {\n // Route groups like `(marketing)` organize files without adding URL\n // segments. Mirrors isRouteGroup in router.ts for programmatic routes.\n if (part.startsWith(\"(\") && part.endsWith(\")\")) continue;\n if (part.startsWith(\"[\") && part.endsWith(\"]\")) {\n let segment = part.slice(1, -1);\n const isDynamic = true;\n let isOptional = false;\n let isCatchAll = false;\n\n if (segment.startsWith(\"[\") && segment.endsWith(\"]\")) {\n isOptional = true;\n segment = segment.slice(1, -1);\n if (segment.startsWith(\"...\")) {\n segment = segment.slice(3);\n isCatchAll = true;\n }\n } else if (segment.startsWith(\"...\")) {\n segment = segment.slice(3);\n isCatchAll = true;\n }\n\n segments.push({ segment, isDynamic, isOptional, isCatchAll });\n } else {\n segments.push({\n segment: part,\n isDynamic: false,\n isOptional: false,\n isCatchAll: false,\n });\n }\n }\n\n return {\n segments,\n filePath: normalizedPath,\n type: fileType,\n };\n}\n\nfunction getRouteType(fileName: string): ParsedRoute[\"type\"] {\n const baseName = fileName.replace(/\\.(tsx?|jsx?|vue|svelte|mdx?|markdown)$/, \"\");\n\n switch (baseName) {\n case \"page\":\n return \"page\";\n case \"layout\":\n return \"layout\";\n case \"loading\":\n return \"loading\";\n case \"error\":\n return \"error\";\n case \"not-found\":\n return \"not-found\";\n default:\n return \"page\";\n }\n}\n\nexport function segmentsToPattern(segments: RouteSegment[]): string {\n if (segments.length === 0) return \"/\";\n\n return (\n \"/\" +\n segments\n .map((segment) => {\n if (!segment.isDynamic) return segment.segment;\n\n if (segment.isCatchAll) {\n return segment.isOptional ? `*${segment.segment}?` : `*${segment.segment}`;\n }\n\n return `:${segment.segment}`;\n })\n .join(\"/\")\n );\n}\n\nexport function matchRoute(\n url: string,\n segments: RouteSegment[],\n): { params: Record<string, string>; matches: boolean } {\n const urlParts = url.split(\"/\").filter(Boolean);\n const params: Record<string, string> = {};\n if (segments.length === 0) {\n return { params, matches: urlParts.length === 0 };\n }\n\n let urlIndex = 0;\n let segmentIndex = 0;\n\n while (segmentIndex < segments.length && urlIndex <= urlParts.length) {\n const segment = segments[segmentIndex];\n\n if (!segment.isDynamic) {\n if (urlParts[urlIndex] !== segment.segment) {\n return { params: {}, matches: false };\n }\n urlIndex++;\n segmentIndex++;\n } else if (segment.isCatchAll) {\n const remainingParts = urlParts.slice(urlIndex);\n\n if (remainingParts.length === 0 && !segment.isOptional) {\n return { params: {}, matches: false };\n }\n\n params[segment.segment] = remainingParts.join(\"/\");\n urlIndex = urlParts.length;\n segmentIndex++;\n } else {\n if (urlIndex >= urlParts.length) {\n return { params: {}, matches: false };\n }\n\n params[segment.segment] = urlParts[urlIndex];\n urlIndex++;\n segmentIndex++;\n }\n }\n\n const matches = segmentIndex === segments.length && urlIndex === urlParts.length;\n\n return { params, matches };\n}\n\nexport function resolveAppPath(root: string, ...paths: string[]): string {\n return path.resolve(root, ...paths);\n}\n\nexport function toViteModuleId(filePath: string, root: string): string {\n if (!path.isAbsolute(filePath)) return filePath;\n\n const relativePath = path.relative(root, filePath);\n if (relativePath && !relativePath.startsWith(\"..\") && !path.isAbsolute(relativePath)) {\n return `/${relativePath.split(path.sep).join(\"/\")}`;\n }\n\n const normalizedPath = filePath.replace(/\\\\/g, \"/\");\n return normalizedPath.startsWith(\"/\") ? `/@fs${normalizedPath}` : `/@fs/${normalizedPath}`;\n}\n\nexport async function fileExists(filePath: string): Promise<boolean> {\n try {\n const fs = await import(\"fs/promises\");\n await fs.access(filePath);\n return true;\n } catch {\n return false;\n }\n}\n\nexport async function globFiles(pattern: string, cwd: string): Promise<string[]> {\n const glob = await import(\"fast-glob\");\n return glob.default(pattern, { cwd, absolute: false });\n}\n\nexport function parseSearchParams(\n searchParams: URLSearchParams,\n): Record<string, string | string[]> {\n const result: Record<string, string | string[]> = {};\n\n for (const [key, value] of searchParams.entries()) {\n if (key in result) {\n const existing = result[key];\n if (Array.isArray(existing)) {\n existing.push(value);\n } else {\n result[key] = [existing, value];\n }\n } else {\n result[key] = value;\n }\n }\n\n return result;\n}\n\nexport const logger = {\n info: (message: string) => console.log(`[info] ${message}`),\n success: (message: string) => console.log(`[success] ${message}`),\n warn: (message: string) => console.warn(`⚠️ ${message}`),\n error: (message: string) => console.error(`❌ ${message}`),\n ready: (message: string) => console.log(`${message}`),\n event: (message: string) => console.log(` ${message}`),\n};\n"],"mappings":"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","names":[]}