vite-plugin-react-server 1.1.13 → 1.1.14

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 (159) hide show
  1. package/dist/package.json +3 -1
  2. package/dist/plugin/config/defaults.d.ts +2 -2
  3. package/dist/plugin/config/defaults.d.ts.map +1 -1
  4. package/dist/plugin/config/defaults.js +2 -2
  5. package/dist/plugin/config/defaults.js.map +1 -1
  6. package/dist/plugin/config/resolveOptions.d.ts.map +1 -1
  7. package/dist/plugin/config/resolveOptions.js +98 -61
  8. package/dist/plugin/config/resolveOptions.js.map +1 -1
  9. package/dist/plugin/error/toError.d.ts.map +1 -1
  10. package/dist/plugin/error/toError.js +0 -1
  11. package/dist/plugin/error/toError.js.map +1 -1
  12. package/dist/plugin/helpers/collectManifestCss.d.ts +1 -2
  13. package/dist/plugin/helpers/collectManifestCss.d.ts.map +1 -1
  14. package/dist/plugin/helpers/collectManifestCss.js +3 -5
  15. package/dist/plugin/helpers/collectManifestCss.js.map +1 -1
  16. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts +1 -1
  17. package/dist/plugin/helpers/collectViteModuleGraphCss.d.ts.map +1 -1
  18. package/dist/plugin/helpers/collectViteModuleGraphCss.js +6 -2
  19. package/dist/plugin/helpers/collectViteModuleGraphCss.js.map +1 -1
  20. package/dist/plugin/helpers/createCssProps.d.ts +1 -1
  21. package/dist/plugin/helpers/createCssProps.d.ts.map +1 -1
  22. package/dist/plugin/helpers/createCssProps.js +11 -32
  23. package/dist/plugin/helpers/createCssProps.js.map +1 -1
  24. package/dist/plugin/helpers/createRscStream.d.ts.map +1 -1
  25. package/dist/plugin/helpers/createRscStream.js +1 -0
  26. package/dist/plugin/helpers/createRscStream.js.map +1 -1
  27. package/dist/plugin/loader/createDefaultLoader.d.ts.map +1 -1
  28. package/dist/plugin/loader/createDefaultLoader.js +68 -4
  29. package/dist/plugin/loader/css-loader.development.d.ts +2 -15
  30. package/dist/plugin/loader/css-loader.development.d.ts.map +1 -1
  31. package/dist/plugin/loader/css-loader.development.js +16 -15
  32. package/dist/plugin/loader/css-loader.development.js.map +1 -1
  33. package/dist/plugin/loader/css-loader.production.d.ts +1 -1
  34. package/dist/plugin/loader/css-loader.production.d.ts.map +1 -1
  35. package/dist/plugin/loader/css-loader.production.js +1 -1
  36. package/dist/plugin/loader/css-loader.production.js.map +1 -1
  37. package/dist/plugin/loader/env-loader.development.d.ts +1 -0
  38. package/dist/plugin/loader/env-loader.development.d.ts.map +1 -1
  39. package/dist/plugin/loader/env-loader.development.js +17 -9
  40. package/dist/plugin/loader/handleExports.d.ts +1 -0
  41. package/dist/plugin/loader/handleExports.d.ts.map +1 -1
  42. package/dist/plugin/loader/handleExports.js +27 -8
  43. package/dist/plugin/loader/handleExports.js.map +1 -1
  44. package/dist/plugin/loader/react-loader.server.d.ts +2 -2
  45. package/dist/plugin/loader/react-loader.server.d.ts.map +1 -1
  46. package/dist/plugin/loader/react-loader.server.js +88 -26
  47. package/dist/plugin/loader/transformModuleIfNeeded.d.ts.map +1 -1
  48. package/dist/plugin/loader/transformModuleIfNeeded.js +1 -1
  49. package/dist/plugin/loader/transformModuleIfNeeded.js.map +1 -1
  50. package/dist/plugin/loader/transformModuleWithPreservedFunctions.d.ts.map +1 -1
  51. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js +86 -13
  52. package/dist/plugin/loader/transformModuleWithPreservedFunctions.js.map +1 -1
  53. package/dist/plugin/plugin.client.d.ts.map +1 -1
  54. package/dist/plugin/plugin.client.js +0 -1
  55. package/dist/plugin/plugin.client.js.map +1 -1
  56. package/dist/plugin/react-client/configureWorkerRequestHandler.d.ts.map +1 -1
  57. package/dist/plugin/react-client/configureWorkerRequestHandler.js +85 -6
  58. package/dist/plugin/react-client/configureWorkerRequestHandler.js.map +1 -1
  59. package/dist/plugin/react-client/createMessageHandlers.d.ts.map +1 -1
  60. package/dist/plugin/react-client/createMessageHandlers.js +3 -0
  61. package/dist/plugin/react-client/createMessageHandlers.js.map +1 -1
  62. package/dist/plugin/react-client/createWorkerStream.d.ts +2 -2
  63. package/dist/plugin/react-client/createWorkerStream.d.ts.map +1 -1
  64. package/dist/plugin/react-client/createWorkerStream.js +13 -2
  65. package/dist/plugin/react-client/createWorkerStream.js.map +1 -1
  66. package/dist/plugin/react-client/handleWorkerRscStream.d.ts.map +1 -1
  67. package/dist/plugin/react-client/handleWorkerRscStream.js +10 -3
  68. package/dist/plugin/react-client/handleWorkerRscStream.js.map +1 -1
  69. package/dist/plugin/react-client/restartWorker.d.ts.map +1 -1
  70. package/dist/plugin/react-client/restartWorker.js +2 -1
  71. package/dist/plugin/react-client/restartWorker.js.map +1 -1
  72. package/dist/plugin/react-server/configureReactServer.d.ts.map +1 -1
  73. package/dist/plugin/react-server/configureReactServer.js +1 -2
  74. package/dist/plugin/react-server/configureReactServer.js.map +1 -1
  75. package/dist/plugin/react-server/handleServerAction.d.ts.map +1 -1
  76. package/dist/plugin/react-server/handleServerAction.js +0 -16
  77. package/dist/plugin/react-server/handleServerAction.js.map +1 -1
  78. package/dist/plugin/react-static/createBuildLoader.d.ts.map +1 -0
  79. package/dist/plugin/react-static/createBuildLoader.js.map +1 -0
  80. package/dist/plugin/react-static/plugin.d.ts.map +1 -1
  81. package/dist/plugin/react-static/plugin.js +9 -12
  82. package/dist/plugin/react-static/plugin.js.map +1 -1
  83. package/dist/plugin/react-static/temporaryReferences.d.ts.map +1 -0
  84. package/dist/plugin/react-static/temporaryReferences.js.map +1 -0
  85. package/dist/plugin/transformer/plugin.server.js +2 -2
  86. package/dist/plugin/transformer/plugin.server.js.map +1 -1
  87. package/dist/plugin/types.d.ts +14 -3
  88. package/dist/plugin/types.d.ts.map +1 -1
  89. package/dist/plugin/worker/rsc/handleRender.d.ts.map +1 -1
  90. package/dist/plugin/worker/rsc/handleRender.js +1 -0
  91. package/dist/plugin/worker/rsc/handleRender.js.map +1 -1
  92. package/dist/plugin/worker/rsc/handlers.d.ts +3 -0
  93. package/dist/plugin/worker/rsc/handlers.d.ts.map +1 -0
  94. package/dist/plugin/worker/rsc/handlers.js +223 -0
  95. package/dist/plugin/worker/rsc/handlers.js.map +1 -0
  96. package/dist/plugin/worker/rsc/messageHandler.d.ts.map +1 -1
  97. package/dist/plugin/worker/rsc/messageHandler.js +5 -110
  98. package/dist/plugin/worker/rsc/messageHandler.js.map +1 -1
  99. package/dist/plugin/worker/rsc/rsc-worker.development.js +13 -16
  100. package/dist/plugin/worker/rsc/rsc-worker.development.js.map +1 -1
  101. package/dist/plugin/worker/rsc/state.d.ts +1 -2
  102. package/dist/plugin/worker/rsc/state.d.ts.map +1 -1
  103. package/dist/plugin/worker/rsc/state.js +1 -2
  104. package/dist/plugin/worker/rsc/state.js.map +1 -1
  105. package/dist/plugin/worker/rsc/userOptions.d.ts +2 -0
  106. package/dist/plugin/worker/rsc/userOptions.d.ts.map +1 -0
  107. package/dist/plugin/worker/rsc/userOptions.js +17 -0
  108. package/dist/plugin/worker/rsc/userOptions.js.map +1 -0
  109. package/dist/plugin/worker/types.d.ts +2 -1
  110. package/dist/plugin/worker/types.d.ts.map +1 -1
  111. package/dist/tsconfig.tsbuildinfo +1 -1
  112. package/package.json +5 -1
  113. package/plugin/config/defaults.tsx +5 -2
  114. package/plugin/config/resolveOptions.ts +101 -67
  115. package/plugin/error/toError.ts +0 -2
  116. package/plugin/helpers/collectManifestCss.ts +2 -6
  117. package/plugin/helpers/collectViteModuleGraphCss.ts +6 -0
  118. package/plugin/helpers/createCssProps.tsx +17 -46
  119. package/plugin/helpers/createRscStream.tsx +1 -0
  120. package/plugin/loader/createDefaultLoader.ts +80 -4
  121. package/plugin/loader/css-loader.development.ts +17 -34
  122. package/plugin/loader/css-loader.production.ts +2 -4
  123. package/plugin/loader/env-loader.development.ts +38 -15
  124. package/plugin/loader/handleExports.ts +36 -13
  125. package/plugin/loader/react-loader.server.ts +110 -32
  126. package/plugin/loader/transformModuleIfNeeded.ts +2 -2
  127. package/plugin/loader/transformModuleWithPreservedFunctions.ts +128 -21
  128. package/plugin/plugin.client.ts +0 -2
  129. package/plugin/react-client/configureWorkerRequestHandler.ts +107 -4
  130. package/plugin/react-client/createMessageHandlers.ts +3 -0
  131. package/plugin/react-client/createWorkerStream.ts +15 -1
  132. package/plugin/react-client/handleWorkerRscStream.ts +12 -3
  133. package/plugin/react-client/restartWorker.ts +1 -0
  134. package/plugin/react-server/configureReactServer.ts +1 -2
  135. package/plugin/react-server/handleServerAction.ts +1 -19
  136. package/plugin/react-static/plugin.ts +9 -12
  137. package/plugin/transformer/plugin.server.ts +2 -2
  138. package/plugin/types.ts +25 -2
  139. package/plugin/worker/rsc/handleRender.ts +1 -0
  140. package/plugin/worker/rsc/handlers.ts +243 -0
  141. package/plugin/worker/rsc/messageHandler.tsx +4 -118
  142. package/plugin/worker/rsc/rsc-worker.development.ts +17 -20
  143. package/plugin/worker/rsc/state.ts +2 -6
  144. package/plugin/worker/rsc/userOptions.ts +8 -0
  145. package/plugin/worker/types.ts +2 -0
  146. package/dist/plugin/loader/createBuildLoader.d.ts.map +0 -1
  147. package/dist/plugin/loader/createBuildLoader.js.map +0 -1
  148. package/dist/plugin/loader/plugin.d.ts +0 -22
  149. package/dist/plugin/loader/plugin.d.ts.map +0 -1
  150. package/dist/plugin/loader/plugin.js +0 -27
  151. package/dist/plugin/loader/temporaryReferences.d.ts.map +0 -1
  152. package/dist/plugin/loader/temporaryReferences.js.map +0 -1
  153. package/plugin/loader/plugin.ts +0 -33
  154. /package/dist/plugin/{loader → react-static}/createBuildLoader.d.ts +0 -0
  155. /package/dist/plugin/{loader → react-static}/createBuildLoader.js +0 -0
  156. /package/dist/plugin/{loader → react-static}/temporaryReferences.d.ts +0 -0
  157. /package/dist/plugin/{loader → react-static}/temporaryReferences.js +0 -0
  158. /package/plugin/{loader → react-static}/createBuildLoader.ts +0 -0
  159. /package/plugin/{loader → react-static}/temporaryReferences.ts +0 -0
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite-plugin-react-server",
3
- "version": "1.1.13",
3
+ "version": "1.1.14",
4
4
  "description": "Vite plugin for React Server Components (RSC)",
5
5
  "type": "module",
6
6
  "main": "./dist/plugin/index.js",
@@ -101,7 +101,9 @@
101
101
  "test:client-env": "npm run build && vitest run test/client/dev-client-server-env.test.ts --reporter=verbose",
102
102
  "test:todo": "npm run build && NODE_OPTIONS='--conditions react-server' vitest run test/server/todo.test.ts --reporter=verbose",
103
103
  "test:server-action": "npm run build && NODE_OPTIONS='--conditions react-server' vitest run test/server/server-action.test.ts --reporter=verbose",
104
+ "test:server-action-client": "npm run build && vitest run test/client/server-action.test.ts --reporter=verbose",
104
105
  "test:server-action-integration": "npm run build && NODE_OPTIONS='--conditions react-server' vitest run test/server/server-action-integration.test.ts --reporter=verbose",
106
+ "test:server-action-integration-client": "npm run build && vitest run test/client/server-action-integration.test.ts --reporter=verbose",
105
107
  "test": "npm run build && npm run test:server && npm run test:client && npm run test:unit",
106
108
  "test:coverage": "npm run setup:test-fixtures && vitest run --coverage",
107
109
  "test:ui": "npm run setup:test-fixtures && vitest --ui",
@@ -113,8 +113,8 @@ export declare const DEFAULT_CONFIG: {
113
113
  * /^"use client"[\s;]*\n?/m
114
114
  */
115
115
  readonly clientDirective: RegExp;
116
- readonly isServerFunction: (code: string) => boolean;
117
- readonly isClientComponent: (code: string) => boolean;
116
+ readonly isServerFunctionCode: (code: string, moduleId?: string) => boolean;
117
+ readonly isClientComponentCode: (code: string) => boolean;
118
118
  };
119
119
  readonly MODULE_ID: (id: string) => string;
120
120
  readonly VERBOSE: false;
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../plugin/config/defaults.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA8CD,MAAM,EAAE;+BACV,MAAM,EAAE;;qCAEA,MAAM,EAAE;;QAUpC;;WAEG;oCACgB,MAAM;QACzB;;WAEG;kCACc,MAAM;QACvB;;WAEG;mCACe,MAAM;QACxB;;WAEG;uCACmB,MAAM;QAC5B;;WAEG;sCACkB,MAAM;QAC3B;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;+BACW,MAAM;QACpB;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;0CAGsB,MAAM;2CACL,MAAM;;6BAGlB,MAAM;;CAEd,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../plugin/config/defaults.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA8CD,MAAM,EAAE;+BACV,MAAM,EAAE;;qCAEA,MAAM,EAAE;;QAUpC;;WAEG;oCACgB,MAAM;QACzB;;WAEG;kCACc,MAAM;QACvB;;WAEG;mCACe,MAAM;QACxB;;WAEG;uCACmB,MAAM;QAC5B;;WAEG;sCACkB,MAAM;QAC3B;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;+BACW,MAAM;QACpB;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;8CAG0B,MAAM,aAAa,MAAM;+CAIxB,MAAM;;6BAGtB,MAAM;;CAEd,CAAC"}
@@ -120,8 +120,8 @@ const DEFAULT_CONFIG = {
120
120
  * /^"use client"[\s;]*\n?/m
121
121
  */
122
122
  clientDirective: /^"use client"[\s;]*\n?/m,
123
- isServerFunction: (code) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) !== null,
124
- isClientComponent: (code) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective) !== null
123
+ isServerFunctionCode: (code, moduleId) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) !== null || moduleId && DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions(moduleId) || false,
124
+ isClientComponentCode: (code) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective) !== null
125
125
  },
126
126
  VERBOSE: false
127
127
  };
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sources":["../../../plugin/config/defaults.tsx"],"sourcesContent":["import { CssCollector } from \"../components/css-collector.js\";\nimport { Html } from \"../components/html.js\";\nexport const DEFAULT_CONFIG = {\n CLIENT_ASSETS_DIR: \"assets\",\n RSC_DIR: \"rsc\",\n MODULE_BASE: \"src\",\n MODULE_BASE_PATH: \"/\",\n MODULE_BASE_URL: \"/\",\n PUBLIC_ORIGIN: \"\",\n PAGE: \"page.tsx\",\n PROPS: \"props.ts\",\n CLIENT_ENTRY: undefined,\n SERVER_ENTRY: undefined,\n PAGE_EXPORT_NAME: \"Page\",\n PROPS_EXPORT_NAME: \"props\",\n HTML_WORKER_PATH: `worker/html/html-worker.${\n process.env[\"NODE_ENV\"] === \"production\" ? \"production\" : \"development\"\n }.js`,\n RSC_WORKER_PATH: `worker/rsc/rsc-worker.${\n process.env[\"NODE_ENV\"] === \"production\" ? \"production\" : \"development\"\n }.js`,\n LOADER_PATH: \"worker/loader.js\",\n RSC_EXTENSION: \".rsc\",\n CSS_COLLECTOR: CssCollector,\n HTML: Html,\n ON_METRICS: ()=>{},\n DEV_PORT: 5173,\n PREVIEW_PORT: 4173,\n DEV_HOST: \"localhost\",\n PREVIEW_HOST: \"localhost\",\n ENV_PREFIX: \"VITE_\",\n BUILD: {\n pages: [],\n client: \"client\",\n server: \"server\",\n static: \"static\",\n api: \"api\",\n outDir: \"dist\",\n assetsDir: \"assets\",\n hash: \"hash\",\n rscOutputPath: \"index.rsc\",\n htmlOutputPath: \"index.html\",\n preserveModulesRoot: true,\n },\n CSS: {\n inlineCss: false,\n purgeCss: false,\n inlineThreshold: 4096, // 4KB\n inlinePatterns: [] as RegExp[], // Always inline CSS modules\n linkPatterns: [] as RegExp[], // Always link node_modules CSS\n },\n MODULE_BASE_EXCEPTIONS: [] as string[],\n AUTO_DISCOVER: {\n // All REGEX tricks used here are based on the following:\n // $ = endsWith\n // ^ = startsWith\n // . = includes\n // \\ = escape\n // ? = optional\n // () = group\n // | = or\n /**\n * /\\.(m|c)?(j|t)sx?$/ and .lowerCase()\n */\n modulePattern: (n: string) => /\\.(m|c)?(j|t)sx?$/.test(n.toLowerCase()),\n /**\n * /\\.?page(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n pagePattern: (n: string) => /\\.?page(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /\\.?props(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n propsPattern: (n: string) => /\\.?props(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()), \n /**\n * /(\\.|\\/)?client(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n clientComponents: (n: string) => /(\\.|\\/)?client(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /(\\.|\\/)?server(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n serverFunctions: (n: string) => /(\\.|\\/)?server(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /\\.css$/\n */\n cssPattern: /\\.css$/,\n /**\n * /\\.css\\.js$/\n */\n cssModulePattern: /\\.css\\.js$/,\n /**\n * /^\\/@\\//\n */\n virtualPattern: /^\\/@\\//,\n /**\n * /^\\/node_modules\\//\n */\n vendorPattern: /^\\/node_modules\\//,\n /**\n * /\\.html$/\n */\n htmlPattern: /\\.html$/,\n /**\n * /\\.json$/\n */\n jsonPattern: /\\.json$/,\n /**\n * /\\.node(\\.js)?$/\n */\n nodeOnly: /\\.node(\\.js)?$/,\n /**\n * /\\.node(\\.js)?$/\n */\n dotFiles: (n: string) => n.split('/').some(p => p.startsWith('.')), \n /**\n * /\\.rsc$/\n */\n rscPattern: /\\.rsc$/, \n /**\n * /\\.(m|c)?(j|t)sx?$/\n */\n moduleExtension: /\\.(m|c)?(j|t)sx?$/,\n /**\n * /^\"use server\"[\\s;]*\\n?/m\n */\n serverDirective: /^\"use server\"[\\s;]*\\n?/m,\n /**\n * /^\"use client\"[\\s;]*\\n?/m\n */\n clientDirective: /^\"use client\"[\\s;]*\\n?/m,\n\n isServerFunction: (code: string) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) !== null,\n isClientComponent: (code: string) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective) !== null,\n \n },\n MODULE_ID: (id: string) => id,\n VERBOSE: false,\n} as const;"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sources":["../../../plugin/config/defaults.tsx"],"sourcesContent":["import { CssCollector } from \"../components/css-collector.js\";\nimport { Html } from \"../components/html.js\";\nexport const DEFAULT_CONFIG = {\n CLIENT_ASSETS_DIR: \"assets\",\n RSC_DIR: \"rsc\",\n MODULE_BASE: \"src\",\n MODULE_BASE_PATH: \"/\",\n MODULE_BASE_URL: \"/\",\n PUBLIC_ORIGIN: \"\",\n PAGE: \"page.tsx\",\n PROPS: \"props.ts\",\n CLIENT_ENTRY: undefined,\n SERVER_ENTRY: undefined,\n PAGE_EXPORT_NAME: \"Page\",\n PROPS_EXPORT_NAME: \"props\",\n HTML_WORKER_PATH: `worker/html/html-worker.${\n process.env[\"NODE_ENV\"] === \"production\" ? \"production\" : \"development\"\n }.js`,\n RSC_WORKER_PATH: `worker/rsc/rsc-worker.${\n process.env[\"NODE_ENV\"] === \"production\" ? \"production\" : \"development\"\n }.js`,\n LOADER_PATH: \"worker/loader.js\",\n RSC_EXTENSION: \".rsc\",\n CSS_COLLECTOR: CssCollector,\n HTML: Html,\n ON_METRICS: ()=>{},\n DEV_PORT: 5173,\n PREVIEW_PORT: 4173,\n DEV_HOST: \"localhost\",\n PREVIEW_HOST: \"localhost\",\n ENV_PREFIX: \"VITE_\",\n BUILD: {\n pages: [],\n client: \"client\",\n server: \"server\",\n static: \"static\",\n api: \"api\",\n outDir: \"dist\",\n assetsDir: \"assets\",\n hash: \"hash\",\n rscOutputPath: \"index.rsc\",\n htmlOutputPath: \"index.html\",\n preserveModulesRoot: true,\n },\n CSS: {\n inlineCss: false,\n purgeCss: false,\n inlineThreshold: 4096, // 4KB\n inlinePatterns: [] as RegExp[], // Always inline CSS modules\n linkPatterns: [] as RegExp[], // Always link node_modules CSS\n },\n MODULE_BASE_EXCEPTIONS: [] as string[],\n AUTO_DISCOVER: {\n // All REGEX tricks used here are based on the following:\n // $ = endsWith\n // ^ = startsWith\n // . = includes\n // \\ = escape\n // ? = optional\n // () = group\n // | = or\n /**\n * /\\.(m|c)?(j|t)sx?$/ and .lowerCase()\n */\n modulePattern: (n: string) => /\\.(m|c)?(j|t)sx?$/.test(n.toLowerCase()),\n /**\n * /\\.?page(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n pagePattern: (n: string) => /\\.?page(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /\\.?props(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n propsPattern: (n: string) => /\\.?props(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()), \n /**\n * /(\\.|\\/)?client(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n clientComponents: (n: string) => /(\\.|\\/)?client(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /(\\.|\\/)?server(\\.(m|c)?(j|t)sx?)$/ and .lowerCase()\n */\n serverFunctions: (n: string) => /(\\.|\\/)?server(\\.(m|c)?(j|t)sx?)$/.test(n.toLowerCase()),\n /**\n * /\\.css$/\n */\n cssPattern: /\\.css$/,\n /**\n * /\\.css\\.js$/\n */\n cssModulePattern: /\\.css\\.js$/,\n /**\n * /^\\/@\\//\n */\n virtualPattern: /^\\/@\\//,\n /**\n * /^\\/node_modules\\//\n */\n vendorPattern: /^\\/node_modules\\//,\n /**\n * /\\.html$/\n */\n htmlPattern: /\\.html$/,\n /**\n * /\\.json$/\n */\n jsonPattern: /\\.json$/,\n /**\n * /\\.node(\\.js)?$/\n */\n nodeOnly: /\\.node(\\.js)?$/,\n /**\n * /\\.node(\\.js)?$/\n */\n dotFiles: (n: string) => n.split('/').some(p => p.startsWith('.')), \n /**\n * /\\.rsc$/\n */\n rscPattern: /\\.rsc$/, \n /**\n * /\\.(m|c)?(j|t)sx?$/\n */\n moduleExtension: /\\.(m|c)?(j|t)sx?$/,\n /**\n * /^\"use server\"[\\s;]*\\n?/m\n */\n serverDirective: /^\"use server\"[\\s;]*\\n?/m,\n /**\n * /^\"use client\"[\\s;]*\\n?/m\n */\n clientDirective: /^\"use client\"[\\s;]*\\n?/m,\n\n isServerFunctionCode: (code: string, moduleId?: string) => \n code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) !== null || \n (moduleId && DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions(moduleId)) || \n false,\n isClientComponentCode: (code: string) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective) !== null,\n \n },\n MODULE_ID: (id: string) => id,\n VERBOSE: false,\n} as const;"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveOptions.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACb,MAAM,aAAa,CAAC;AA4CrB,eAAO,MAAM,cAAc,GACzB,CAAC,SAAS,WAAW,gBACrB,SAAS,SAAS,YAAY,0BAErB,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,KAExC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAkchC,CAAC"}
1
+ {"version":3,"file":"resolveOptions.d.ts","sourceRoot":"","sources":["../../../plugin/config/resolveOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACb,MAAM,aAAa,CAAC;AA+CrB,eAAO,MAAM,cAAc,GACzB,CAAC,SAAS,WAAW,gBACrB,SAAS,SAAS,YAAY,0BAErB,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,KAExC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAiehC,CAAC"}
@@ -23,7 +23,10 @@ const handleSearchQuery = (path) => {
23
23
  const filename = path.split("/").pop();
24
24
  return `${folder}/${filename}?${searchQuery}`;
25
25
  };
26
- const registerPath = (path, _pattern, _fallback) => {
26
+ const registerPath = (path, _pattern, ext) => {
27
+ if (ext && !path.endsWith(ext)) {
28
+ return path + ext;
29
+ }
27
30
  return path;
28
31
  };
29
32
  const resolveOptions = (options) => {
@@ -60,19 +63,19 @@ const resolveOptions = (options) => {
60
63
  removeExtension: true,
61
64
  moduleBasePath
62
65
  });
63
- const testModuleExtension = resolveAutoDiscoverMatcher(
66
+ const moduleExtension = resolveAutoDiscoverMatcher(
64
67
  options.autoDiscover?.moduleExtension,
65
68
  DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension
66
69
  );
67
- const testModulePattern = resolveAutoDiscoverMatcher(
70
+ const modulePattern = resolveAutoDiscoverMatcher(
68
71
  options.autoDiscover?.modulePattern,
69
- options.autoDiscover?.moduleExtension ? (id) => testModuleExtension(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern
72
+ options.autoDiscover?.moduleExtension ? (id) => moduleExtension(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern
70
73
  );
71
- const testJson = resolveAutoDiscoverMatcher(
74
+ const jsonPattern = resolveAutoDiscoverMatcher(
72
75
  options.autoDiscover?.jsonPattern,
73
76
  DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern
74
77
  );
75
- const testCss = resolveAutoDiscoverMatcher(
78
+ const cssPattern = resolveAutoDiscoverMatcher(
76
79
  options.autoDiscover?.cssPattern,
77
80
  DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern
78
81
  );
@@ -84,49 +87,49 @@ const resolveOptions = (options) => {
84
87
  options.autoDiscover?.rscPattern,
85
88
  DEFAULT_CONFIG.AUTO_DISCOVER.rscPattern
86
89
  );
87
- const testClientComponents = resolveAutoDiscoverMatcher(
90
+ const clientComponents = resolveAutoDiscoverMatcher(
88
91
  options.autoDiscover?.clientComponents,
89
- options.autoDiscover?.moduleExtension ? (id) => testModuleExtension(id.toLowerCase()) && /(\.|\/)?client(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents
92
+ options.autoDiscover?.moduleExtension ? (id) => moduleExtension(id.toLowerCase()) && /(\.|\/)?client(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents
90
93
  );
91
- const testServerFunctions = resolveAutoDiscoverMatcher(
94
+ const serverFunctions = resolveAutoDiscoverMatcher(
92
95
  options.autoDiscover?.serverFunctions,
93
- options.autoDiscover?.moduleExtension ? (id) => testModuleExtension(id.toLowerCase()) && /(\.|\/)?server(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions
96
+ options.autoDiscover?.moduleExtension ? (id) => moduleExtension(id.toLowerCase()) && /(\.|\/)?server(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions
94
97
  );
95
- const testNodeOnly = resolveAutoDiscoverMatcher(
98
+ const nodeOnly = resolveAutoDiscoverMatcher(
96
99
  options.autoDiscover?.nodeOnly,
97
100
  DEFAULT_CONFIG.AUTO_DISCOVER.nodeOnly
98
101
  );
99
- const testPropsPattern = resolveAutoDiscoverMatcher(
102
+ const propsPattern = resolveAutoDiscoverMatcher(
100
103
  options.autoDiscover?.propsPattern,
101
- options.autoDiscover?.moduleExtension ? (id) => testModuleExtension(id.toLowerCase()) && /(\.|\/)?props(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern
104
+ options.autoDiscover?.moduleExtension ? (id) => moduleExtension(id.toLowerCase()) && /(\.|\/)?props(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern
102
105
  );
103
- const testPagePattern = resolveAutoDiscoverMatcher(
106
+ const pagePattern = resolveAutoDiscoverMatcher(
104
107
  options.autoDiscover?.pagePattern,
105
- options.autoDiscover?.moduleExtension ? (id) => testModuleExtension(id.toLowerCase()) && /(\.|\/)?page(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern
108
+ options.autoDiscover?.moduleExtension ? (id) => moduleExtension(id.toLowerCase()) && /(\.|\/)?page(\.|\/)/.test(id.toLowerCase()) : DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern
106
109
  );
107
- const testCssModule = resolveAutoDiscoverMatcher(
110
+ const cssModulePattern = resolveAutoDiscoverMatcher(
108
111
  options.autoDiscover?.cssModulePattern,
109
112
  DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern
110
113
  );
111
- const testVendor = resolveAutoDiscoverMatcher(
114
+ const vendorPattern = resolveAutoDiscoverMatcher(
112
115
  options.autoDiscover?.vendorPattern,
113
116
  DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern
114
117
  );
115
- const testVirtual = resolveAutoDiscoverMatcher(
118
+ const virtualPattern = resolveAutoDiscoverMatcher(
116
119
  options.autoDiscover?.virtualPattern,
117
120
  DEFAULT_CONFIG.AUTO_DISCOVER.virtualPattern
118
121
  );
119
- const testDotFiles = resolveAutoDiscoverMatcher(
122
+ const dotFiles = resolveAutoDiscoverMatcher(
120
123
  options.autoDiscover?.dotFiles,
121
124
  DEFAULT_CONFIG.AUTO_DISCOVER.dotFiles
122
125
  );
123
- const isServerFunction = resolveAutoDiscoverMatcher(
126
+ const isServerFunctionCode = resolveAutoDiscoverMatcher(
124
127
  options.autoDiscover?.isServerFunction,
125
- options.autoDiscover?.serverDirective ? (code) => code.match(options.autoDiscover?.serverDirective) !== null : DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective
128
+ options.autoDiscover?.serverDirective ? (code, moduleId) => code.match(options.autoDiscover?.serverDirective) != null || moduleId && serverFunctions(moduleId) || false : (code, moduleId) => code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) != null || moduleId && serverFunctions(moduleId) || false
126
129
  );
127
- const isClientComponent = resolveAutoDiscoverMatcher(
130
+ const isClientComponentCode = resolveAutoDiscoverMatcher(
128
131
  options.autoDiscover?.isClientComponent,
129
- options.autoDiscover?.clientDirective ? (code) => code.match(options.autoDiscover?.clientDirective) !== null : DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective
132
+ options.autoDiscover?.clientDirective ? (code) => code.match(options.autoDiscover?.clientDirective) != null : DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective
130
133
  );
131
134
  const hashOption = typeof options.build?.hash === "string" ? options.build.hash : DEFAULT_CONFIG.BUILD.hash;
132
135
  const hashString = hashOption === "" ? "" : `-[${hashOption}]`;
@@ -152,52 +155,76 @@ const resolveOptions = (options) => {
152
155
  return n + hashString;
153
156
  }
154
157
  };
158
+ const jsExtension = options.autoDiscover?.jsExtension ?? ".js";
159
+ const cssExtension = options.autoDiscover?.cssExtension ?? ".css";
160
+ const htmlExtension = options.autoDiscover?.htmlExtension ?? ".html";
161
+ const jsonExtension = options.autoDiscover?.jsonExtension ?? ".json";
162
+ const rscExtension = options.autoDiscover?.rscExtension ?? ".rsc";
155
163
  const getOutputPath = (n) => {
156
164
  if (!n) return "";
157
165
  let path = handleSearchQuery(n);
158
- path = path.startsWith(moduleBase + "/") ? path.slice(moduleBase.length + 1) : path;
159
- if (testVendor(path))
160
- return registerPath(path, options.autoDiscover?.vendorPattern);
161
- if (testCssModule(path))
166
+ path = path.startsWith(moduleBase + moduleBasePath) ? path.slice(moduleBase.length + moduleBasePath.length) : path;
167
+ if (vendorPattern(path))
162
168
  return registerPath(
163
169
  path,
164
- options.autoDiscover?.cssModulePattern);
165
- if (testCss(path))
166
- return registerPath(path, options.autoDiscover?.cssPattern);
167
- if (testClientComponents(path))
170
+ options.autoDiscover?.vendorPattern,
171
+ jsExtension
172
+ );
173
+ if (cssModulePattern(path))
168
174
  return registerPath(
169
175
  path,
170
- options.autoDiscover?.clientComponents);
176
+ options.autoDiscover?.cssModulePattern,
177
+ cssExtension + jsExtension
178
+ );
179
+ if (cssPattern(path))
180
+ return registerPath(path, options.autoDiscover?.cssPattern, cssExtension);
181
+ if (clientComponents(path))
182
+ return registerPath(
183
+ path,
184
+ options.autoDiscover?.clientComponents,
185
+ jsExtension
186
+ );
171
187
  if (testHtml(path))
172
- return registerPath(path, options.autoDiscover?.htmlPattern);
173
- if (testJson(path))
174
- return registerPath(path, options.autoDiscover?.jsonPattern);
175
- if (testPropsPattern(path))
188
+ return registerPath(
189
+ path,
190
+ options.autoDiscover?.htmlPattern,
191
+ htmlExtension
192
+ );
193
+ if (jsonPattern(path))
194
+ return registerPath(
195
+ path,
196
+ options.autoDiscover?.jsonPattern,
197
+ jsonExtension
198
+ );
199
+ if (propsPattern(path))
176
200
  return registerPath(
177
201
  path,
178
202
  options.autoDiscover?.propsPattern,
179
- options.propsExportName?.toLowerCase() ?? DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()
203
+ jsExtension
180
204
  );
181
- if (testPagePattern(path))
205
+ if (pagePattern(path))
206
+ return registerPath(path, options.autoDiscover?.pagePattern, jsExtension);
207
+ if (serverFunctions(path))
182
208
  return registerPath(
183
209
  path,
184
- options.autoDiscover?.pagePattern,
185
- options.pageExportName?.toLowerCase() ?? DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()
210
+ options.autoDiscover?.serverFunctions,
211
+ jsExtension
186
212
  );
187
- if (testServerFunctions(path))
213
+ if (modulePattern(path))
188
214
  return registerPath(
189
215
  path,
190
- options.autoDiscover?.serverFunctions);
191
- if (testModulePattern(path)) return path;
216
+ options.autoDiscover?.modulePattern,
217
+ jsExtension
218
+ );
192
219
  return path;
193
220
  };
194
221
  const entryFile = (n, ssr) => {
195
- if (testVendor(n.name)) {
222
+ if (vendorPattern(n.name)) {
196
223
  const search = n.facadeModuleId?.split("?")[1];
197
224
  if (search) {
198
- return hash(`${n.name}.${search}.js`, ssr);
225
+ return hash(`${n.name}.${search}${jsExtension}`, ssr);
199
226
  } else {
200
- return hash(`${n.name}.js`, ssr);
227
+ return hash(`${n.name}${jsExtension}`, ssr);
201
228
  }
202
229
  }
203
230
  return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);
@@ -206,7 +233,12 @@ const resolveOptions = (options) => {
206
233
  return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);
207
234
  };
208
235
  const assetFile = (n, ssr) => {
209
- return hash(getOutputPath(normalizer(n.names[0])[0]), ssr);
236
+ const firstName = n.names[0];
237
+ const extIndex = firstName.lastIndexOf(".");
238
+ const nameWithoutExtension = firstName.slice(0, extIndex);
239
+ const extension = firstName.slice(extIndex);
240
+ const assetName = normalizer(nameWithoutExtension)[0] + extension;
241
+ return hash(getOutputPath(assetName), ssr);
210
242
  };
211
243
  const moduleID = typeof options.moduleID === "function" ? options.moduleID : (id) => {
212
244
  let normalizedId = id.replace(/^\/+|\/+$/g, "");
@@ -244,25 +276,30 @@ const resolveOptions = (options) => {
244
276
  assetFile: typeof options.build?.assetFile === "function" ? options.build.assetFile : assetFile
245
277
  };
246
278
  const autoDiscover = {
279
+ jsExtension,
280
+ cssExtension,
281
+ htmlExtension,
282
+ jsonExtension,
283
+ rscExtension,
247
284
  moduleExtension: options.autoDiscover?.moduleExtension ?? DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension,
248
285
  serverDirective: options.autoDiscover?.serverDirective ?? DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective,
249
286
  clientDirective: options.autoDiscover?.clientDirective ?? DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective,
250
- modulePattern: testModulePattern,
251
- cssPattern: testCss,
252
- jsonPattern: testJson,
253
- clientComponents: testClientComponents,
254
- serverFunctions: testServerFunctions,
255
- nodeOnly: testNodeOnly,
256
- propsPattern: testPropsPattern,
257
- pagePattern: testPagePattern,
258
- cssModulePattern: testCssModule,
259
- vendorPattern: testVendor,
260
- dotFiles: testDotFiles,
261
- virtualPattern: testVirtual,
287
+ modulePattern,
288
+ cssPattern,
289
+ jsonPattern,
290
+ clientComponents,
291
+ serverFunctions,
292
+ nodeOnly,
293
+ propsPattern,
294
+ pagePattern,
295
+ cssModulePattern,
296
+ vendorPattern,
297
+ dotFiles,
298
+ virtualPattern,
262
299
  htmlPattern: testHtml,
263
300
  rscPattern: testRsc,
264
- isServerFunction,
265
- isClientComponent
301
+ isServerFunctionCode,
302
+ isClientComponentCode
266
303
  };
267
304
  const pipeableStreamOptions = options.pipeableStreamOptions ? options.pipeableStreamOptions : {};
268
305
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type {\n StreamPluginOptions,\n ResolvedUserOptions,\n PagePropOpt,\n InlineCssOpt,\n} from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { join } from \"node:path\";\nimport { pluginRoot } from \"../root.js\";\nimport { CssCollector } from \"../components/css-collector.js\";\nimport { createInputNormalizer } from \"../helpers/inputNormalizer.js\";\nimport { resolveAutoDiscoverMatcher } from \"./resolveAutoDiscoverMatcher.js\";\n\n/**\n * Ensures a path ends with .js extension\n */\nconst addExtension = (path: string, extension: string = \"js\") => {\n if (path.endsWith(`.${extension}`)) return path;\n if (path.endsWith(\"/.\")) return path.slice(0, -2) + \".\" + extension;\n if (path.endsWith(\".\")) return path + \".\" + extension;\n return path + \".\" + extension;\n};\n\n/**\n * Handles search query parameters in file paths\n */\nconst handleSearchQuery = (path: string) => {\n const searchQuery = path.split(\"?\")[1];\n if (!searchQuery) return path;\n const folder = path.split(\"/\").slice(0, -1).join(\"/\");\n const filename = path.split(\"/\").pop();\n return `${folder}/${filename}?${searchQuery}`;\n};\n\n/**\n * Applies pattern matching to file paths\n */\nconst registerPath = (\n path: string,\n _pattern?: string | RegExp | ((path: string) => boolean) | undefined,\n _fallback?: string | undefined\n) => {\n return path;\n};\n\n// ============================================================================\n// Main Options Resolver\n// ============================================================================\n\nexport const resolveOptions = <\n T extends PagePropOpt = PagePropOpt,\n InlineCSS extends InlineCssOpt = InlineCssOpt\n>(\n options: StreamPluginOptions<T, InlineCSS>\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions<T, InlineCSS> }\n | { type: \"error\"; error: Error } => {\n // Basic configuration\n const projectRoot = options.projectRoot ?? process.cwd();\n const {\n pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,\n propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME,\n } = options;\n\n // Build configuration\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ?? `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n // Build options\n const preserveModulesRoot =\n options.build?.preserveModulesRoot ??\n DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n\n // Module path configuration\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : process.env.VITE_BASE_URL ?? DEFAULT_CONFIG.MODULE_BASE_PATH;\n\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : process.env.VITE_BASE_URL ?? DEFAULT_CONFIG.MODULE_BASE_URL;\n\n const moduleRootPath =\n typeof options.moduleRootPath === \"string\"\n ? options.moduleRootPath\n : join(projectRoot, outDir, client);\n\n const publicOrigin =\n typeof options.publicOrigin === \"string\"\n ? options.publicOrigin\n : process.env.VITE_PUBLIC_ORIGIN ?? DEFAULT_CONFIG.PUBLIC_ORIGIN;\n\n // Worker and loader paths\n const rscWorkerPath =\n typeof options.rscWorkerPath === \"string\"\n ? join(projectRoot, options.rscWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.RSC_WORKER_PATH);\n\n const htmlWorkerPath =\n typeof options.htmlWorkerPath === \"string\"\n ? join(projectRoot, options.htmlWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.HTML_WORKER_PATH);\n\n const loaderPath =\n typeof options.loaderPath === \"string\"\n ? join(projectRoot, options.loaderPath)\n : join(pluginRoot, DEFAULT_CONFIG.LOADER_PATH);\n // these will never be cleaned up, because, we are resolving the user options\n // and it's assumed they are relevant until the process stops\n if (process.env.VITE_BASE_URL !== moduleBaseURL) {\n process.env.VITE_BASE_URL = moduleBaseURL;\n }\n if (process.env.VITE_PUBLIC_ORIGIN !== publicOrigin) {\n process.env.VITE_PUBLIC_ORIGIN = publicOrigin;\n }\n\n const normalizer =\n options.normalizer ??\n createInputNormalizer({\n root: projectRoot,\n preserveModulesRoot:\n preserveModulesRoot === true ? moduleBase : undefined,\n removeExtension: true,\n moduleBasePath,\n });\n\n const testModuleExtension = resolveAutoDiscoverMatcher(\n options.autoDiscover?.moduleExtension,\n DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension\n );\n // Auto-discovery pattern matchers\n const testModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) => testModuleExtension(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const testJson = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const testCss = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n\n const testRsc = resolveAutoDiscoverMatcher(\n options.autoDiscover?.rscPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.rscPattern\n );\n\n const testClientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n testModuleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?client(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n\n const testServerFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n testModuleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?server(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n\n const testNodeOnly = resolveAutoDiscoverMatcher(\n options.autoDiscover?.nodeOnly,\n DEFAULT_CONFIG.AUTO_DISCOVER.nodeOnly\n );\n\n const testPropsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n testModuleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?props(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n\n const testPagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n testModuleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?page(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n\n const testCssModule = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n\n const testVendor = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n\n const testVirtual = resolveAutoDiscoverMatcher(\n options.autoDiscover?.virtualPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.virtualPattern\n );\n\n const testDotFiles = resolveAutoDiscoverMatcher(\n options.autoDiscover?.dotFiles,\n DEFAULT_CONFIG.AUTO_DISCOVER.dotFiles\n );\n\n const isServerFunction = resolveAutoDiscoverMatcher(\n options.autoDiscover?.isServerFunction,\n options.autoDiscover?.serverDirective\n ? (code: string) =>\n code.match(options.autoDiscover?.serverDirective!) !== null\n : DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective\n );\n\n const isClientComponent = resolveAutoDiscoverMatcher(\n options.autoDiscover?.isClientComponent,\n options.autoDiscover?.clientDirective\n ? (code: string) =>\n code.match(options.autoDiscover?.clientDirective!) !== null\n : DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective\n );\n\n const hashOption =\n typeof options.build?.hash === \"string\"\n ? options.build.hash\n : DEFAULT_CONFIG.BUILD.hash;\n\n const hashString = hashOption === \"\" ? \"\" : `-[${hashOption}]`;\n\n const addModuleExtension = (path: string) => {\n const isAsset =\n autoDiscover.cssPattern(path) || autoDiscover.jsonPattern(path);\n if (isAsset) {\n return path;\n }\n return addExtension(path);\n };\n\n // File naming and hashing\n\n const hash = (n: string | null, ssr: boolean) => {\n if (!n) return \"\";\n if (ssr) return n;\n if (hashString === \"\" || autoDiscover.nodeOnly(n)) {\n return n;\n }\n const extensionIndex = n.lastIndexOf(\".\");\n if (extensionIndex !== -1) {\n const extension = n.slice(extensionIndex);\n const filename = n.slice(0, extensionIndex);\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n };\n\n // Output path resolution\n const getOutputPath = (n: string | null) => {\n if (!n) return \"\";\n let path = handleSearchQuery(n);\n path = path.startsWith(moduleBase + \"/\")\n ? path.slice(moduleBase.length + 1)\n : path;\n\n if (testVendor(path))\n return registerPath(path, options.autoDiscover?.vendorPattern, \"vendor\");\n if (testCssModule(path))\n return registerPath(\n path,\n options.autoDiscover?.cssModulePattern,\n \".css.js\"\n );\n if (testCss(path))\n return registerPath(path, options.autoDiscover?.cssPattern, \".css\");\n if (testClientComponents(path))\n return registerPath(\n path,\n options.autoDiscover?.clientComponents,\n \"client\"\n );\n if (testHtml(path))\n return registerPath(path, options.autoDiscover?.htmlPattern, \".html\");\n if (testJson(path))\n return registerPath(path, options.autoDiscover?.jsonPattern, \".json\");\n if (testPropsPattern(path))\n return registerPath(\n path,\n options.autoDiscover?.propsPattern,\n options.propsExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PROPS_EXPORT_NAME.toLowerCase()\n );\n if (testPagePattern(path))\n return registerPath(\n path,\n options.autoDiscover?.pagePattern,\n options.pageExportName?.toLowerCase() ??\n DEFAULT_CONFIG.PAGE_EXPORT_NAME.toLowerCase()\n );\n if (testServerFunctions(path))\n return registerPath(\n path,\n options.autoDiscover?.serverFunctions,\n \"server\"\n );\n if (testModulePattern(path)) return path;\n return path;\n };\n\n // File naming functions\n const entryFile = (n: PreRenderedChunk, ssr: boolean) => {\n if (testVendor(n.name)) {\n const search = n.facadeModuleId?.split(\"?\")[1];\n if (search) {\n return hash(`${n.name}.${search}.js`, ssr);\n } else {\n return hash(`${n.name}.js`, ssr);\n }\n }\n return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);\n };\n\n const chunkFile = (n: PreRenderedChunk, ssr: boolean) => {\n return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);\n };\n\n const assetFile = (n: PreRenderedAsset, ssr: boolean) => {\n return hash(getOutputPath(normalizer(n.names[0])[0]), ssr);\n };\n\n const moduleID =\n typeof options.moduleID === \"function\"\n ? options.moduleID\n : (id: string) => {\n // First normalize the path to handle any leading/trailing slashes\n let normalizedId = id.replace(/^\\/+|\\/+$/g, \"\");\n\n // If moduleBasePath is set and id doesn't start with it, add it\n if (\n moduleBasePath !== \"\" &&\n !normalizedId.startsWith(moduleBasePath)\n ) {\n normalizedId = join(moduleBasePath, normalizedId);\n }\n\n // Handle moduleBase in production\n if (process.env[\"NODE_ENV\"] === \"production\") {\n if (normalizedId.startsWith(moduleBase)) {\n normalizedId = normalizedId.slice(moduleBase.length);\n } else if (normalizedId.startsWith(\"/\" + moduleBase)) {\n normalizedId = normalizedId.slice(moduleBase.length + 1);\n }\n }\n\n // Ensure the path starts with a slash\n if (!normalizedId.startsWith(\"/\")) {\n normalizedId = \"/\" + normalizedId;\n }\n\n return normalizedId;\n };\n\n const rscOutputPath =\n options.build?.rscOutputPath ?? DEFAULT_CONFIG.BUILD.rscOutputPath;\n const htmlOutputPath =\n options.build?.htmlOutputPath ?? DEFAULT_CONFIG.BUILD.htmlOutputPath;\n\n // Build configuration object\n const build = {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n rscOutputPath,\n htmlOutputPath,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n };\n\n // Auto-discovery configuration\n const autoDiscover = {\n moduleExtension:\n options.autoDiscover?.moduleExtension ??\n DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension,\n serverDirective:\n options.autoDiscover?.serverDirective ??\n DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective,\n clientDirective:\n options.autoDiscover?.clientDirective ??\n DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective,\n modulePattern: testModulePattern,\n cssPattern: testCss,\n jsonPattern: testJson,\n clientComponents: testClientComponents,\n serverFunctions: testServerFunctions,\n nodeOnly: testNodeOnly,\n propsPattern: testPropsPattern,\n pagePattern: testPagePattern,\n cssModulePattern: testCssModule,\n vendorPattern: testVendor,\n dotFiles: testDotFiles,\n virtualPattern: testVirtual,\n htmlPattern: testHtml,\n rscPattern: testRsc,\n isServerFunction: isServerFunction,\n isClientComponent: isClientComponent,\n };\n const pipeableStreamOptions = options.pipeableStreamOptions\n ? options.pipeableStreamOptions\n : {};\n\n // Return resolved options\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n moduleRootPath,\n publicOrigin,\n build: build,\n verbose: options.verbose ?? DEFAULT_CONFIG.VERBOSE,\n onMetrics: options.onMetrics ?? DEFAULT_CONFIG.ON_METRICS,\n onEvent: options.onEvent,\n Page: options.Page ?? undefined,\n props: options.props ?? undefined,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n CssCollector: options.CssCollector ?? CssCollector,\n normalizer: normalizer,\n moduleID: moduleID,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n css: {\n inlineCss: options.css?.inlineCss ?? DEFAULT_CONFIG.CSS.inlineCss,\n inlineThreshold:\n options.css?.inlineThreshold ?? DEFAULT_CONFIG.CSS.inlineThreshold,\n inlinePatterns:\n options.css?.inlinePatterns ?? DEFAULT_CONFIG.CSS.inlinePatterns,\n linkPatterns:\n options.css?.linkPatterns ?? DEFAULT_CONFIG.CSS.linkPatterns,\n },\n htmlWorkerPath: htmlWorkerPath,\n rscWorkerPath: rscWorkerPath,\n loaderPath: loaderPath,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n // moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipeableStreamOptions,\n } as ResolvedUserOptions<T, InlineCSS>,\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveOptions.js","sources":["../../../plugin/config/resolveOptions.ts"],"sourcesContent":["import type { PreRenderedAsset } from \"rollup\";\nimport type { PreRenderedChunk } from \"rollup\";\nimport type {\n StreamPluginOptions,\n ResolvedUserOptions,\n PagePropOpt,\n InlineCssOpt,\n} from \"../types.js\";\nimport { DEFAULT_CONFIG } from \"./defaults.js\";\nimport { join } from \"node:path\";\nimport { pluginRoot } from \"../root.js\";\nimport { CssCollector } from \"../components/css-collector.js\";\nimport { createInputNormalizer } from \"../helpers/inputNormalizer.js\";\nimport { resolveAutoDiscoverMatcher } from \"./resolveAutoDiscoverMatcher.js\";\n\n/**\n * Ensures a path ends with .js extension\n */\nconst addExtension = (path: string, extension: string = \"js\") => {\n if (path.endsWith(`.${extension}`)) return path;\n if (path.endsWith(\"/.\")) return path.slice(0, -2) + \".\" + extension;\n if (path.endsWith(\".\")) return path + \".\" + extension;\n return path + \".\" + extension;\n};\n\n/**\n * Handles search query parameters in file paths\n */\nconst handleSearchQuery = (path: string) => {\n const searchQuery = path.split(\"?\")[1];\n if (!searchQuery) return path;\n const folder = path.split(\"/\").slice(0, -1).join(\"/\");\n const filename = path.split(\"/\").pop();\n return `${folder}/${filename}?${searchQuery}`;\n};\n\n/**\n * Applies pattern matching to file paths\n */\nconst registerPath = (\n path: string,\n _pattern?: string | RegExp | ((path: string) => boolean) | undefined,\n ext?: string | undefined\n) => {\n if (ext && !path.endsWith(ext)) {\n return path + ext;\n }\n return path;\n};\n\n// ============================================================================\n// Main Options Resolver\n// ============================================================================\n\nexport const resolveOptions = <\n T extends PagePropOpt = PagePropOpt,\n InlineCSS extends InlineCssOpt = InlineCssOpt\n>(\n options: StreamPluginOptions<T, InlineCSS>\n):\n | { type: \"success\"; userOptions: ResolvedUserOptions<T, InlineCSS> }\n | { type: \"error\"; error: Error } => {\n // Basic configuration\n const projectRoot = options.projectRoot ?? process.cwd();\n const {\n pageExportName = DEFAULT_CONFIG.PAGE_EXPORT_NAME,\n propsExportName = DEFAULT_CONFIG.PROPS_EXPORT_NAME,\n } = options;\n\n // Build configuration\n const pages =\n typeof options.build?.pages === \"function\"\n ? options.build.pages\n : Array.isArray(options.build?.pages)\n ? options.build.pages\n : DEFAULT_CONFIG.BUILD.pages;\n\n let client = options.build?.client ?? DEFAULT_CONFIG.BUILD.client;\n let server = options.build?.server ?? DEFAULT_CONFIG.BUILD.server;\n const api = options.build?.api ?? DEFAULT_CONFIG.BUILD.api;\n const staticBuild = options.build?.static ?? DEFAULT_CONFIG.BUILD.static;\n const outDir = options.build?.outDir ?? DEFAULT_CONFIG.BUILD.outDir;\n const assetsDir =\n options.build?.assetsDir ?? `${DEFAULT_CONFIG.CLIENT_ASSETS_DIR}`;\n\n // Build options\n const preserveModulesRoot =\n options.build?.preserveModulesRoot ??\n DEFAULT_CONFIG.BUILD.preserveModulesRoot;\n\n // Module path configuration\n const moduleBase =\n typeof options.moduleBase === \"string\"\n ? options.moduleBase\n : DEFAULT_CONFIG.MODULE_BASE;\n\n const moduleBasePath =\n typeof options.moduleBasePath === \"string\"\n ? options.moduleBasePath\n : process.env.VITE_BASE_URL ?? DEFAULT_CONFIG.MODULE_BASE_PATH;\n\n const moduleBaseURL =\n typeof options.moduleBaseURL === \"string\"\n ? options.moduleBaseURL\n : process.env.VITE_BASE_URL ?? DEFAULT_CONFIG.MODULE_BASE_URL;\n\n const moduleRootPath =\n typeof options.moduleRootPath === \"string\"\n ? options.moduleRootPath\n : join(projectRoot, outDir, client);\n\n const publicOrigin =\n typeof options.publicOrigin === \"string\"\n ? options.publicOrigin\n : process.env.VITE_PUBLIC_ORIGIN ?? DEFAULT_CONFIG.PUBLIC_ORIGIN;\n\n // Worker and loader paths\n const rscWorkerPath =\n typeof options.rscWorkerPath === \"string\"\n ? join(projectRoot, options.rscWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.RSC_WORKER_PATH);\n\n const htmlWorkerPath =\n typeof options.htmlWorkerPath === \"string\"\n ? join(projectRoot, options.htmlWorkerPath)\n : join(pluginRoot, DEFAULT_CONFIG.HTML_WORKER_PATH);\n\n const loaderPath =\n typeof options.loaderPath === \"string\"\n ? join(projectRoot, options.loaderPath)\n : join(pluginRoot, DEFAULT_CONFIG.LOADER_PATH);\n // these will never be cleaned up, because, we are resolving the user options\n // and it's assumed they are relevant until the process stops\n if (process.env.VITE_BASE_URL !== moduleBaseURL) {\n process.env.VITE_BASE_URL = moduleBaseURL;\n }\n if (process.env.VITE_PUBLIC_ORIGIN !== publicOrigin) {\n process.env.VITE_PUBLIC_ORIGIN = publicOrigin;\n }\n\n const normalizer =\n options.normalizer ??\n createInputNormalizer({\n root: projectRoot,\n preserveModulesRoot:\n preserveModulesRoot === true ? moduleBase : undefined,\n removeExtension: true,\n moduleBasePath,\n });\n\n const moduleExtension = resolveAutoDiscoverMatcher(\n options.autoDiscover?.moduleExtension,\n DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension\n );\n // Auto-discovery pattern matchers\n const modulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.modulePattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) => moduleExtension(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.modulePattern\n );\n\n const jsonPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.jsonPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.jsonPattern\n );\n\n const cssPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssPattern\n );\n\n const testHtml = resolveAutoDiscoverMatcher(\n options.autoDiscover?.htmlPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.htmlPattern\n );\n\n const testRsc = resolveAutoDiscoverMatcher(\n options.autoDiscover?.rscPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.rscPattern\n );\n\n const clientComponents = resolveAutoDiscoverMatcher(\n options.autoDiscover?.clientComponents,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n moduleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?client(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.clientComponents\n );\n\n const serverFunctions = resolveAutoDiscoverMatcher(\n options.autoDiscover?.serverFunctions,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n moduleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?server(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.serverFunctions\n );\n\n const nodeOnly = resolveAutoDiscoverMatcher(\n options.autoDiscover?.nodeOnly,\n DEFAULT_CONFIG.AUTO_DISCOVER.nodeOnly\n );\n\n const propsPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.propsPattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n moduleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?props(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.propsPattern\n );\n\n const pagePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.pagePattern,\n options.autoDiscover?.moduleExtension\n ? (id: string) =>\n moduleExtension(id.toLowerCase()) &&\n /(\\.|\\/)?page(\\.|\\/)/.test(id.toLowerCase())\n : DEFAULT_CONFIG.AUTO_DISCOVER.pagePattern\n );\n\n const cssModulePattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.cssModulePattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.cssModulePattern\n );\n\n const vendorPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.vendorPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.vendorPattern\n );\n\n const virtualPattern = resolveAutoDiscoverMatcher(\n options.autoDiscover?.virtualPattern,\n DEFAULT_CONFIG.AUTO_DISCOVER.virtualPattern\n );\n\n const dotFiles = resolveAutoDiscoverMatcher(\n options.autoDiscover?.dotFiles,\n DEFAULT_CONFIG.AUTO_DISCOVER.dotFiles\n );\n\n const isServerFunctionCode = resolveAutoDiscoverMatcher(\n options.autoDiscover?.isServerFunction,\n options.autoDiscover?.serverDirective\n ? (code: string, moduleId?: string) =>\n code.match(options.autoDiscover?.serverDirective!) != null ||\n (moduleId && serverFunctions(moduleId)) ||\n false\n : (code: string, moduleId?: string) =>\n code.match(DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective) != null ||\n (moduleId && serverFunctions(moduleId)) ||\n false\n );\n\n const isClientComponentCode = resolveAutoDiscoverMatcher(\n options.autoDiscover?.isClientComponent,\n options.autoDiscover?.clientDirective\n ? (code: string) =>\n code.match(options.autoDiscover?.clientDirective!) != null\n : DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective\n );\n\n const hashOption =\n typeof options.build?.hash === \"string\"\n ? options.build.hash\n : DEFAULT_CONFIG.BUILD.hash;\n\n const hashString = hashOption === \"\" ? \"\" : `-[${hashOption}]`;\n\n const addModuleExtension = (path: string) => {\n const isAsset =\n autoDiscover.cssPattern(path) || autoDiscover.jsonPattern(path);\n if (isAsset) {\n return path;\n }\n return addExtension(path);\n };\n\n // File naming and hashing\n\n const hash = (n: string | null, ssr: boolean) => {\n if (!n) return \"\";\n if (ssr) return n;\n if (hashString === \"\" || autoDiscover.nodeOnly(n)) {\n return n;\n }\n const extensionIndex = n.lastIndexOf(\".\");\n if (extensionIndex !== -1) {\n const extension = n.slice(extensionIndex);\n const filename = n.slice(0, extensionIndex);\n return filename + hashString + extension;\n } else {\n return n + hashString;\n }\n };\n const jsExtension = options.autoDiscover?.jsExtension ?? \".js\";\n const cssExtension = options.autoDiscover?.cssExtension ?? \".css\";\n const htmlExtension = options.autoDiscover?.htmlExtension ?? \".html\";\n const jsonExtension = options.autoDiscover?.jsonExtension ?? \".json\";\n const rscExtension = options.autoDiscover?.rscExtension ?? \".rsc\";\n\n // Output path resolution\n const getOutputPath = (n: string | null) => {\n if (!n) return \"\";\n let path = handleSearchQuery(n);\n path = path.startsWith(moduleBase + moduleBasePath)\n ? path.slice(moduleBase.length + moduleBasePath.length)\n : path;\n\n if (vendorPattern(path))\n return registerPath(\n path,\n options.autoDiscover?.vendorPattern,\n jsExtension\n );\n if (cssModulePattern(path))\n return registerPath(\n path,\n options.autoDiscover?.cssModulePattern,\n cssExtension + jsExtension\n );\n if (cssPattern(path))\n return registerPath(path, options.autoDiscover?.cssPattern, cssExtension);\n if (clientComponents(path))\n return registerPath(\n path,\n options.autoDiscover?.clientComponents,\n jsExtension\n );\n if (testHtml(path))\n return registerPath(\n path,\n options.autoDiscover?.htmlPattern,\n htmlExtension\n );\n if (jsonPattern(path))\n return registerPath(\n path,\n options.autoDiscover?.jsonPattern,\n jsonExtension\n );\n if (propsPattern(path))\n return registerPath(\n path,\n options.autoDiscover?.propsPattern,\n jsExtension\n );\n if (pagePattern(path))\n return registerPath(path, options.autoDiscover?.pagePattern, jsExtension);\n if (serverFunctions(path))\n return registerPath(\n path,\n options.autoDiscover?.serverFunctions,\n jsExtension\n );\n if (modulePattern(path))\n return registerPath(\n path,\n options.autoDiscover?.modulePattern,\n jsExtension\n );\n return path;\n };\n\n // File naming functions\n const entryFile = (n: PreRenderedChunk, ssr: boolean) => {\n if (vendorPattern(n.name)) {\n const search = n.facadeModuleId?.split(\"?\")[1];\n if (search) {\n return hash(`${n.name}.${search}${jsExtension}`, ssr);\n } else {\n return hash(`${n.name}${jsExtension}`, ssr);\n }\n }\n return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);\n };\n\n const chunkFile = (n: PreRenderedChunk, ssr: boolean) => {\n return hash(addModuleExtension(getOutputPath(normalizer(n.name)[0])), ssr);\n };\n\n const assetFile = (n: PreRenderedAsset, ssr: boolean) => {\n const firstName = n.names[0];\n const extIndex = firstName.lastIndexOf(\".\");\n const nameWithoutExtension = firstName.slice(0, extIndex);\n const extension = firstName.slice(extIndex);\n const assetName = normalizer(nameWithoutExtension)[0] + extension;\n return hash(getOutputPath(assetName), ssr);\n };\n\n const moduleID =\n typeof options.moduleID === \"function\"\n ? options.moduleID\n : (id: string) => {\n // First normalize the path to handle any leading/trailing slashes\n let normalizedId = id.replace(/^\\/+|\\/+$/g, \"\");\n\n // If moduleBasePath is set and id doesn't start with it, add it\n if (\n moduleBasePath !== \"\" &&\n !normalizedId.startsWith(moduleBasePath)\n ) {\n normalizedId = join(moduleBasePath, normalizedId);\n }\n\n // Handle moduleBase in production\n if (process.env[\"NODE_ENV\"] === \"production\") {\n if (normalizedId.startsWith(moduleBase)) {\n normalizedId = normalizedId.slice(moduleBase.length);\n } else if (normalizedId.startsWith(\"/\" + moduleBase)) {\n normalizedId = normalizedId.slice(moduleBase.length + 1);\n }\n }\n\n // Ensure the path starts with a slash\n if (!normalizedId.startsWith(\"/\")) {\n normalizedId = \"/\" + normalizedId;\n }\n\n return normalizedId;\n };\n\n const rscOutputPath =\n options.build?.rscOutputPath ?? DEFAULT_CONFIG.BUILD.rscOutputPath;\n const htmlOutputPath =\n options.build?.htmlOutputPath ?? DEFAULT_CONFIG.BUILD.htmlOutputPath;\n\n // Build configuration object\n const build = {\n pages,\n client,\n server,\n static: staticBuild,\n outDir,\n assetsDir,\n api,\n hash: hashOption,\n preserveModulesRoot,\n rscOutputPath,\n htmlOutputPath,\n entryFile:\n typeof options.build?.entryFile === \"function\"\n ? options.build.entryFile\n : entryFile,\n chunkFile:\n typeof options.build?.chunkFile === \"function\"\n ? options.build.chunkFile\n : chunkFile,\n assetFile:\n typeof options.build?.assetFile === \"function\"\n ? options.build.assetFile\n : assetFile,\n };\n\n // Auto-discovery configuration\n const autoDiscover = {\n jsExtension: jsExtension,\n cssExtension: cssExtension,\n htmlExtension: htmlExtension,\n jsonExtension: jsonExtension,\n rscExtension: rscExtension,\n moduleExtension:\n options.autoDiscover?.moduleExtension ??\n DEFAULT_CONFIG.AUTO_DISCOVER.moduleExtension,\n serverDirective:\n options.autoDiscover?.serverDirective ??\n DEFAULT_CONFIG.AUTO_DISCOVER.serverDirective,\n clientDirective:\n options.autoDiscover?.clientDirective ??\n DEFAULT_CONFIG.AUTO_DISCOVER.clientDirective,\n modulePattern: modulePattern,\n cssPattern: cssPattern,\n jsonPattern: jsonPattern,\n clientComponents: clientComponents,\n serverFunctions: serverFunctions,\n nodeOnly: nodeOnly,\n propsPattern: propsPattern,\n pagePattern: pagePattern,\n cssModulePattern: cssModulePattern,\n vendorPattern: vendorPattern,\n dotFiles: dotFiles,\n virtualPattern: virtualPattern,\n htmlPattern: testHtml,\n rscPattern: testRsc,\n isServerFunctionCode: isServerFunctionCode,\n isClientComponentCode: isClientComponentCode,\n };\n const pipeableStreamOptions = options.pipeableStreamOptions\n ? options.pipeableStreamOptions\n : {};\n\n // Return resolved options\n try {\n return {\n type: \"success\",\n userOptions: {\n projectRoot,\n moduleBase,\n moduleBasePath,\n moduleBaseURL,\n moduleRootPath,\n publicOrigin,\n build: build,\n verbose: options.verbose ?? DEFAULT_CONFIG.VERBOSE,\n onMetrics: options.onMetrics ?? DEFAULT_CONFIG.ON_METRICS,\n onEvent: options.onEvent,\n Page: options.Page ?? undefined,\n props: options.props ?? undefined,\n Html: options.Html ?? DEFAULT_CONFIG.HTML,\n CssCollector: options.CssCollector ?? CssCollector,\n normalizer: normalizer,\n moduleID: moduleID,\n pageExportName: pageExportName,\n propsExportName: propsExportName,\n css: {\n inlineCss: options.css?.inlineCss ?? DEFAULT_CONFIG.CSS.inlineCss,\n inlineThreshold:\n options.css?.inlineThreshold ?? DEFAULT_CONFIG.CSS.inlineThreshold,\n inlinePatterns:\n options.css?.inlinePatterns ?? DEFAULT_CONFIG.CSS.inlinePatterns,\n linkPatterns:\n options.css?.linkPatterns ?? DEFAULT_CONFIG.CSS.linkPatterns,\n },\n htmlWorkerPath: htmlWorkerPath,\n rscWorkerPath: rscWorkerPath,\n loaderPath: loaderPath,\n clientEntry: options.clientEntry ?? DEFAULT_CONFIG.CLIENT_ENTRY,\n serverEntry: options.serverEntry ?? DEFAULT_CONFIG.SERVER_ENTRY,\n // moduleBaseExceptions: options.moduleBaseExceptions ?? [],\n autoDiscover: autoDiscover,\n pipeableStreamOptions,\n } as ResolvedUserOptions<T, InlineCSS>,\n };\n } catch (error) {\n return {\n type: \"error\",\n error:\n error instanceof Error ? error : new Error(\"Failed to resolve options\"),\n };\n }\n};\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"toError.d.ts","sourceRoot":"","sources":["../../../plugin/error/toError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAwBA;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,MAAM,GAAG,OAAiB,QAmB1E"}
1
+ {"version":3,"file":"toError.d.ts","sourceRoot":"","sources":["../../../plugin/error/toError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAwBA;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,MAAM,GAAG,OAAiB,QAiB1E"}
@@ -27,7 +27,6 @@ function toError(error) {
27
27
  function logError(error, logger = console) {
28
28
  const err = toError(error);
29
29
  if (process.env["NODE_ENV"] !== "production") {
30
- console.trace(err);
31
30
  if (err.stack && err.stack.includes(err.message)) {
32
31
  logger.error(err.stack);
33
32
  } else if (err.stack) {
@@ -1 +1 @@
1
- {"version":3,"file":"toError.js","sources":["../../../plugin/error/toError.ts"],"sourcesContent":["import type { Logger } from \"vite\";\n\nexport function toError(error: unknown): {\n name: string;\n message: string;\n stack?: string;\n cause?: unknown;\n} {\n if(typeof error === \"string\") {\n return {\n name: \"Error\",\n message: error,\n stack: undefined,\n cause: undefined,\n };\n }\n return error instanceof Error\n ? error\n : typeof error === \"object\" && error !== null\n ? {\n name: \"name\" in error ? String(error.name) : \"Unknown Error\",\n message: \"message\" in error ? typeof error.message === \"string\" ? error.message : JSON.stringify(error.message) : \"Unknown Error\",\n stack: \"stack\" in error ? String(error.stack) : undefined,\n cause: \"cause\" in error ? toError(error.cause) : error,\n }\n : {\n name: \"Unknown Error\",\n message: typeof error === \"string\" ? error : \"Unknown Error\",\n stack: undefined,\n cause: error,\n };\n}\n\nexport function logError(error: unknown, logger: Logger | Console = console) {\n const err = toError(error);\n if (process.env[\"NODE_ENV\"] !== \"production\") {\n console.trace(err)\n \n if (err.stack && err.stack.includes(err.message)) {\n logger.error(err.stack);\n } else if (err.stack) {\n logger.error(err.message + \"\\n\" + err.stack, {\n error: err,\n });\n } else {\n logger.error(err.message, {\n error: err,\n });\n }\n } else {\n logger.error(err.message);\n }\n}\n"],"names":[],"mappings":";;;;;AAEO,SAAS,QAAQ,KAKtB,EAAA;AACA,EAAG,IAAA,OAAO,UAAU,QAAU,EAAA;AAC5B,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,SAAA;AAAA,MACP,KAAO,EAAA;AAAA,KACT;AAAA;AAEF,EAAA,OAAO,iBAAiB,KACpB,GAAA,KAAA,GACA,OAAO,KAAU,KAAA,QAAA,IAAY,UAAU,IACvC,GAAA;AAAA,IACE,MAAM,MAAU,IAAA,KAAA,GAAQ,MAAO,CAAA,KAAA,CAAM,IAAI,CAAI,GAAA,eAAA;AAAA,IAC7C,OAAS,EAAA,SAAA,IAAa,KAAQ,GAAA,OAAO,KAAM,CAAA,OAAA,KAAY,QAAW,GAAA,KAAA,CAAM,OAAU,GAAA,IAAA,CAAK,SAAU,CAAA,KAAA,CAAM,OAAO,CAAI,GAAA,eAAA;AAAA,IAClH,OAAO,OAAW,IAAA,KAAA,GAAQ,MAAO,CAAA,KAAA,CAAM,KAAK,CAAI,GAAA,SAAA;AAAA,IAChD,OAAO,OAAW,IAAA,KAAA,GAAQ,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAI,GAAA;AAAA,GAEnD,GAAA;AAAA,IACE,IAAM,EAAA,eAAA;AAAA,IACN,OAAS,EAAA,OAAO,KAAU,KAAA,QAAA,GAAW,KAAQ,GAAA,eAAA;AAAA,IAC7C,KAAO,EAAA,SAAA;AAAA,IACP,KAAO,EAAA;AAAA,GACT;AACN;AAEO,SAAS,QAAA,CAAS,KAAgB,EAAA,MAAA,GAA2B,OAAS,EAAA;AAC3E,EAAM,MAAA,GAAA,GAAM,QAAQ,KAAK,CAAA;AACzB,EAAA,IAAI,OAAQ,CAAA,GAAA,CAAI,UAAU,CAAA,KAAM,YAAc,EAAA;AAC5C,IAAA,OAAA,CAAQ,MAAM,GAAG,CAAA;AAEjB,IAAA,IAAI,IAAI,KAAS,IAAA,GAAA,CAAI,MAAM,QAAS,CAAA,GAAA,CAAI,OAAO,CAAG,EAAA;AAChD,MAAO,MAAA,CAAA,KAAA,CAAM,IAAI,KAAK,CAAA;AAAA,KACxB,MAAA,IAAW,IAAI,KAAO,EAAA;AACpB,MAAA,MAAA,CAAO,KAAM,CAAA,GAAA,CAAI,OAAU,GAAA,IAAA,GAAO,IAAI,KAAO,EAAA;AAAA,QAC3C,KAAO,EAAA;AAAA,OACR,CAAA;AAAA,KACI,MAAA;AACL,MAAO,MAAA,CAAA,KAAA,CAAM,IAAI,OAAS,EAAA;AAAA,QACxB,KAAO,EAAA;AAAA,OACR,CAAA;AAAA;AACH,GACK,MAAA;AACL,IAAO,MAAA,CAAA,KAAA,CAAM,IAAI,OAAO,CAAA;AAAA;AAE5B;;;;"}
1
+ {"version":3,"file":"toError.js","sources":["../../../plugin/error/toError.ts"],"sourcesContent":["import type { Logger } from \"vite\";\n\nexport function toError(error: unknown): {\n name: string;\n message: string;\n stack?: string;\n cause?: unknown;\n} {\n if(typeof error === \"string\") {\n return {\n name: \"Error\",\n message: error,\n stack: undefined,\n cause: undefined,\n };\n }\n return error instanceof Error\n ? error\n : typeof error === \"object\" && error !== null\n ? {\n name: \"name\" in error ? String(error.name) : \"Unknown Error\",\n message: \"message\" in error ? typeof error.message === \"string\" ? error.message : JSON.stringify(error.message) : \"Unknown Error\",\n stack: \"stack\" in error ? String(error.stack) : undefined,\n cause: \"cause\" in error ? toError(error.cause) : error,\n }\n : {\n name: \"Unknown Error\",\n message: typeof error === \"string\" ? error : \"Unknown Error\",\n stack: undefined,\n cause: error,\n };\n}\n\nexport function logError(error: unknown, logger: Logger | Console = console) {\n const err = toError(error);\n if (process.env[\"NODE_ENV\"] !== \"production\") {\n if (err.stack && err.stack.includes(err.message)) {\n logger.error(err.stack);\n } else if (err.stack) {\n logger.error(err.message + \"\\n\" + err.stack, {\n error: err,\n });\n } else {\n logger.error(err.message, {\n error: err,\n });\n }\n } else {\n logger.error(err.message);\n }\n}\n"],"names":[],"mappings":";;;;;AAEO,SAAS,QAAQ,KAKtB,EAAA;AACA,EAAG,IAAA,OAAO,UAAU,QAAU,EAAA;AAC5B,IAAO,OAAA;AAAA,MACL,IAAM,EAAA,OAAA;AAAA,MACN,OAAS,EAAA,KAAA;AAAA,MACT,KAAO,EAAA,SAAA;AAAA,MACP,KAAO,EAAA;AAAA,KACT;AAAA;AAEF,EAAA,OAAO,iBAAiB,KACpB,GAAA,KAAA,GACA,OAAO,KAAU,KAAA,QAAA,IAAY,UAAU,IACvC,GAAA;AAAA,IACE,MAAM,MAAU,IAAA,KAAA,GAAQ,MAAO,CAAA,KAAA,CAAM,IAAI,CAAI,GAAA,eAAA;AAAA,IAC7C,OAAS,EAAA,SAAA,IAAa,KAAQ,GAAA,OAAO,KAAM,CAAA,OAAA,KAAY,QAAW,GAAA,KAAA,CAAM,OAAU,GAAA,IAAA,CAAK,SAAU,CAAA,KAAA,CAAM,OAAO,CAAI,GAAA,eAAA;AAAA,IAClH,OAAO,OAAW,IAAA,KAAA,GAAQ,MAAO,CAAA,KAAA,CAAM,KAAK,CAAI,GAAA,SAAA;AAAA,IAChD,OAAO,OAAW,IAAA,KAAA,GAAQ,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAI,GAAA;AAAA,GAEnD,GAAA;AAAA,IACE,IAAM,EAAA,eAAA;AAAA,IACN,OAAS,EAAA,OAAO,KAAU,KAAA,QAAA,GAAW,KAAQ,GAAA,eAAA;AAAA,IAC7C,KAAO,EAAA,SAAA;AAAA,IACP,KAAO,EAAA;AAAA,GACT;AACN;AAEO,SAAS,QAAA,CAAS,KAAgB,EAAA,MAAA,GAA2B,OAAS,EAAA;AAC3E,EAAM,MAAA,GAAA,GAAM,QAAQ,KAAK,CAAA;AACzB,EAAA,IAAI,OAAQ,CAAA,GAAA,CAAI,UAAU,CAAA,KAAM,YAAc,EAAA;AAC5C,IAAA,IAAI,IAAI,KAAS,IAAA,GAAA,CAAI,MAAM,QAAS,CAAA,GAAA,CAAI,OAAO,CAAG,EAAA;AAChD,MAAO,MAAA,CAAA,KAAA,CAAM,IAAI,KAAK,CAAA;AAAA,KACxB,MAAA,IAAW,IAAI,KAAO,EAAA;AACpB,MAAA,MAAA,CAAO,KAAM,CAAA,GAAA,CAAI,OAAU,GAAA,IAAA,GAAO,IAAI,KAAO,EAAA;AAAA,QAC3C,KAAO,EAAA;AAAA,OACR,CAAA;AAAA,KACI,MAAA;AACL,MAAO,MAAA,CAAA,KAAA,CAAM,IAAI,OAAS,EAAA;AAAA,QACxB,KAAO,EAAA;AAAA,OACR,CAAA;AAAA;AACH,GACK,MAAA;AACL,IAAO,MAAA,CAAA,KAAA,CAAM,IAAI,OAAO,CAAA;AAAA;AAE5B;;;;"}
@@ -1,7 +1,6 @@
1
1
  import type { Manifest } from "vite";
2
- import type { ResolvedUserOptions } from "../types.js";
3
2
  /**
4
3
  * Collects CSS file paths from a manifest by walking through imports starting from a given file
5
4
  */
6
- export declare function collectManifestCss(manifest: Manifest, startFile: string | string[], userOptions: Pick<ResolvedUserOptions, "normalizer">): Record<string, string>;
5
+ export declare function collectManifestCss(manifest: Manifest, startFile: string | string[]): Record<string, string>;
7
6
  //# sourceMappingURL=collectManifestCss.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collectManifestCss.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/collectManifestCss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAC5B,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,GACnD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkDxB"}
1
+ {"version":3,"file":"collectManifestCss.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/collectManifestCss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAErC;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgDxB"}
@@ -3,7 +3,7 @@
3
3
  * Copyright (c) Nico Brinkkemper
4
4
  * MIT License
5
5
  */
6
- function collectManifestCss(manifest, startFile, userOptions) {
6
+ function collectManifestCss(manifest, startFile) {
7
7
  const cssInputs = {};
8
8
  const visited = /* @__PURE__ */ new Set();
9
9
  const toVisit = Array.isArray(startFile) ? startFile : [startFile];
@@ -17,8 +17,7 @@ function collectManifestCss(manifest, startFile, userOptions) {
17
17
  }
18
18
  if (fileInfo.css) {
19
19
  for (const cssFile of fileInfo.css) {
20
- const [keyNormalized, valueNormalized] = userOptions.normalizer(cssFile);
21
- cssInputs[keyNormalized] = valueNormalized;
20
+ cssInputs[cssFile] = cssFile + ".css";
22
21
  }
23
22
  }
24
23
  if (fileInfo.imports) {
@@ -30,8 +29,7 @@ function collectManifestCss(manifest, startFile, userOptions) {
30
29
  const importedFile = manifest[importPath];
31
30
  if (importedFile?.css) {
32
31
  for (const cssFile of importedFile.css) {
33
- const [keyNormalized, valueNormalized] = userOptions.normalizer(cssFile);
34
- cssInputs[keyNormalized] = valueNormalized;
32
+ cssInputs[cssFile] = cssFile + ".css";
35
33
  }
36
34
  }
37
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collectManifestCss.js","sources":["../../../plugin/helpers/collectManifestCss.ts"],"sourcesContent":["import type { Manifest } from \"vite\";\nimport type { ResolvedUserOptions } from \"../types.js\";\n\n/**\n * Collects CSS file paths from a manifest by walking through imports starting from a given file\n */\nexport function collectManifestCss(\n manifest: Manifest,\n startFile: string | string[],\n userOptions: Pick<ResolvedUserOptions, \"normalizer\">\n): Record<string, string> {\n const cssInputs: Record<string, string> = {};\n const visited = new Set<string>();\n \n // Convert startFile to array and ensure we have valid file paths\n const toVisit = Array.isArray(startFile) ? startFile : [startFile];\n\n \n while (toVisit.length > 0) {\n const currentFile = toVisit.pop()!;\n if (visited.has(currentFile)) continue;\n visited.add(currentFile);\n \n const fileInfo = manifest[currentFile];\n if (!fileInfo) {\n continue;\n }\n\n // Add CSS files from the css property\n if (fileInfo.css) {\n for (const cssFile of fileInfo.css) {\n const [keyNormalized, valueNormalized] = userOptions.normalizer(cssFile);\n cssInputs[keyNormalized] = valueNormalized;\n }\n }\n\n // Add imports to visit\n if (fileInfo.imports) {\n for (const importPath of fileInfo.imports) {\n // Skip if we've already visited this import\n if (visited.has(importPath)) {\n continue;\n }\n \n // Add the import to visit\n toVisit.push(importPath);\n \n // Check if the imported file has CSS\n const importedFile = manifest[importPath];\n if (importedFile?.css) {\n for (const cssFile of importedFile.css) {\n const [keyNormalized, valueNormalized] = userOptions.normalizer(cssFile);\n cssInputs[keyNormalized] = valueNormalized;\n }\n }\n }\n }\n }\n\n return cssInputs;\n} "],"names":[],"mappings":";;;;;AAMO,SAAS,kBAAA,CACd,QACA,EAAA,SAAA,EACA,WACwB,EAAA;AACxB,EAAA,MAAM,YAAoC,EAAC;AAC3C,EAAM,MAAA,OAAA,uBAAc,GAAY,EAAA;AAGhC,EAAA,MAAM,UAAU,KAAM,CAAA,OAAA,CAAQ,SAAS,CAAI,GAAA,SAAA,GAAY,CAAC,SAAS,CAAA;AAGjE,EAAO,OAAA,OAAA,CAAQ,SAAS,CAAG,EAAA;AACzB,IAAM,MAAA,WAAA,GAAc,QAAQ,GAAI,EAAA;AAChC,IAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,WAAW,CAAG,EAAA;AAC9B,IAAA,OAAA,CAAQ,IAAI,WAAW,CAAA;AAEvB,IAAM,MAAA,QAAA,GAAW,SAAS,WAAW,CAAA;AACrC,IAAA,IAAI,CAAC,QAAU,EAAA;AACb,MAAA;AAAA;AAIF,IAAA,IAAI,SAAS,GAAK,EAAA;AAChB,MAAW,KAAA,MAAA,OAAA,IAAW,SAAS,GAAK,EAAA;AAClC,QAAA,MAAM,CAAC,aAAe,EAAA,eAAe,CAAI,GAAA,WAAA,CAAY,WAAW,OAAO,CAAA;AACvE,QAAA,SAAA,CAAU,aAAa,CAAI,GAAA,eAAA;AAAA;AAC7B;AAIF,IAAA,IAAI,SAAS,OAAS,EAAA;AACpB,MAAW,KAAA,MAAA,UAAA,IAAc,SAAS,OAAS,EAAA;AAEzC,QAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAG,EAAA;AAC3B,UAAA;AAAA;AAIF,QAAA,OAAA,CAAQ,KAAK,UAAU,CAAA;AAGvB,QAAM,MAAA,YAAA,GAAe,SAAS,UAAU,CAAA;AACxC,QAAA,IAAI,cAAc,GAAK,EAAA;AACrB,UAAW,KAAA,MAAA,OAAA,IAAW,aAAa,GAAK,EAAA;AACtC,YAAA,MAAM,CAAC,aAAe,EAAA,eAAe,CAAI,GAAA,WAAA,CAAY,WAAW,OAAO,CAAA;AACvE,YAAA,SAAA,CAAU,aAAa,CAAI,GAAA,eAAA;AAAA;AAC7B;AACF;AACF;AACF;AAGF,EAAO,OAAA,SAAA;AACT;;;;"}
1
+ {"version":3,"file":"collectManifestCss.js","sources":["../../../plugin/helpers/collectManifestCss.ts"],"sourcesContent":["import type { Manifest } from \"vite\";\n\n/**\n * Collects CSS file paths from a manifest by walking through imports starting from a given file\n */\nexport function collectManifestCss(\n manifest: Manifest,\n startFile: string | string[],\n): Record<string, string> {\n const cssInputs: Record<string, string> = {};\n const visited = new Set<string>();\n \n // Convert startFile to array and ensure we have valid file paths\n const toVisit = Array.isArray(startFile) ? startFile : [startFile];\n\n \n while (toVisit.length > 0) {\n const currentFile = toVisit.pop()!;\n if (visited.has(currentFile)) continue;\n visited.add(currentFile);\n \n const fileInfo = manifest[currentFile];\n if (!fileInfo) {\n continue;\n }\n\n // Add CSS files from the css property\n if (fileInfo.css) {\n for (const cssFile of fileInfo.css) {\n cssInputs[cssFile] = cssFile + '.css';\n }\n }\n\n // Add imports to visit\n if (fileInfo.imports) {\n for (const importPath of fileInfo.imports) {\n // Skip if we've already visited this import\n if (visited.has(importPath)) {\n continue;\n }\n \n // Add the import to visit\n toVisit.push(importPath);\n \n // Check if the imported file has CSS\n const importedFile = manifest[importPath];\n if (importedFile?.css) {\n for (const cssFile of importedFile.css) {\n cssInputs[cssFile] = cssFile + '.css';\n }\n }\n }\n }\n }\n\n return cssInputs;\n} "],"names":[],"mappings":";;;;;AAKO,SAAS,kBAAA,CACd,UACA,SACwB,EAAA;AACxB,EAAA,MAAM,YAAoC,EAAC;AAC3C,EAAM,MAAA,OAAA,uBAAc,GAAY,EAAA;AAGhC,EAAA,MAAM,UAAU,KAAM,CAAA,OAAA,CAAQ,SAAS,CAAI,GAAA,SAAA,GAAY,CAAC,SAAS,CAAA;AAGjE,EAAO,OAAA,OAAA,CAAQ,SAAS,CAAG,EAAA;AACzB,IAAM,MAAA,WAAA,GAAc,QAAQ,GAAI,EAAA;AAChC,IAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,WAAW,CAAG,EAAA;AAC9B,IAAA,OAAA,CAAQ,IAAI,WAAW,CAAA;AAEvB,IAAM,MAAA,QAAA,GAAW,SAAS,WAAW,CAAA;AACrC,IAAA,IAAI,CAAC,QAAU,EAAA;AACb,MAAA;AAAA;AAIF,IAAA,IAAI,SAAS,GAAK,EAAA;AAChB,MAAW,KAAA,MAAA,OAAA,IAAW,SAAS,GAAK,EAAA;AAClC,QAAU,SAAA,CAAA,OAAO,IAAI,OAAU,GAAA,MAAA;AAAA;AACjC;AAIF,IAAA,IAAI,SAAS,OAAS,EAAA;AACpB,MAAW,KAAA,MAAA,UAAA,IAAc,SAAS,OAAS,EAAA;AAEzC,QAAI,IAAA,OAAA,CAAQ,GAAI,CAAA,UAAU,CAAG,EAAA;AAC3B,UAAA;AAAA;AAIF,QAAA,OAAA,CAAQ,KAAK,UAAU,CAAA;AAGvB,QAAM,MAAA,YAAA,GAAe,SAAS,UAAU,CAAA;AACxC,QAAA,IAAI,cAAc,GAAK,EAAA;AACrB,UAAW,KAAA,MAAA,OAAA,IAAW,aAAa,GAAK,EAAA;AACtC,YAAU,SAAA,CAAA,OAAO,IAAI,OAAU,GAAA,MAAA;AAAA;AACjC;AACF;AACF;AACF;AAGF,EAAO,OAAA,SAAA;AACT;;;;"}
@@ -26,7 +26,7 @@ export declare function collectViteModuleGraphCss<T extends PagePropOpt = PagePr
26
26
  moduleGraph: ModuleGraph | EnvironmentModuleGraph;
27
27
  onCss?: (cssContent: CssContent, parentUrl: string) => void;
28
28
  parentUrl?: string;
29
- handlerOptions: Pick<CreateHandlerOptions<T, InlineCSS>, "pagePath" | "moduleBaseURL" | "moduleBasePath" | "moduleRootPath" | "projectRoot" | "css" | "loader">;
29
+ handlerOptions: Pick<CreateHandlerOptions<T, InlineCSS>, "pagePath" | "moduleBaseURL" | "moduleBasePath" | "moduleRootPath" | "projectRoot" | "css" | "loader" | "normalizer" | "moduleID">;
30
30
  }): Promise<CollectViteModuleGraphCssResult>;
31
31
  export {};
32
32
  //# sourceMappingURL=collectViteModuleGraphCss.d.ts.map