one 1.2.60 → 1.2.62

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.
@@ -36,43 +36,17 @@ __export(SSRCSSPlugin_exports, {
36
36
  });
37
37
  module.exports = __toCommonJS(SSRCSSPlugin_exports);
38
38
  var import_constants = require("../../constants.cjs");
39
- let cssCache = null,
40
- routesPreWarmed = !1;
41
- const CSS_CACHE_TTL = 1e3;
42
39
  function SSRCSSPlugin(pluginOpts) {
43
40
  let server;
44
41
  return {
45
42
  name: "one-plugin-ssr-css",
46
43
  apply: "serve",
47
44
  configureServer(server_) {
48
- server = server_;
49
- const preWarmRoutes = async () => {
50
- if (!routesPreWarmed) {
51
- routesPreWarmed = !0;
52
- try {
53
- await server.transformRequest(pluginOpts.entries[0]);
54
- const routeFiles = await collectRouteFiles(server, pluginOpts.entries);
55
- await Promise.all(routeFiles.map(file => server.transformRequest(file).catch(() => {}))), process.env.ONE_DEBUG && console.log(`[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`);
56
- } catch (err) {
57
- console.error("[one] Error pre-warming routes:", err);
58
- }
59
- }
60
- };
61
- server.watcher.on("change", () => {
62
- cssCache = null;
63
- }), server.middlewares.use(async (req, res, next) => {
45
+ server = server_, server.middlewares.use(async (req, res, next) => {
64
46
  if (req.url?.includes(import_constants.VIRTUAL_SSR_CSS_HREF)) {
65
- await preWarmRoutes(), invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
66
- const now = Date.now();
67
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
68
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
69
- return;
70
- }
47
+ invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
71
48
  const code = await collectStyle(server, pluginOpts.entries);
72
- cssCache = {
73
- css: code,
74
- timestamp: now
75
- }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
49
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
76
50
  return;
77
51
  }
78
52
  next();
@@ -171,18 +145,4 @@ async function collectStyleUrls(server, entries) {
171
145
  }
172
146
  return await Promise.all(entries.map(e => server.transformRequest(e))), await Promise.all(entries.map(url => traverse(url))), [...visited].filter(url => url.match(CSS_LANGS_RE));
173
147
  }
174
- const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/,
175
- DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
176
- async function collectRouteFiles(server, entries) {
177
- const routeFiles = [];
178
- for (const entry of entries) try {
179
- const result = await server.transformRequest(entry);
180
- if (!result?.code) continue;
181
- let match;
182
- for (; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null;) {
183
- const importPath = match[1];
184
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
185
- }
186
- } catch {}
187
- return routeFiles;
188
- }
148
+ const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
@@ -27,46 +27,17 @@ __export(SSRCSSPlugin_exports, {
27
27
  });
28
28
  module.exports = __toCommonJS(SSRCSSPlugin_exports);
29
29
  var import_constants = require("../../constants");
30
- let cssCache = null, routesPreWarmed = !1;
31
- const CSS_CACHE_TTL = 1e3;
32
30
  function SSRCSSPlugin(pluginOpts) {
33
31
  let server;
34
32
  return {
35
33
  name: "one-plugin-ssr-css",
36
34
  apply: "serve",
37
35
  configureServer(server_) {
38
- server = server_;
39
- const preWarmRoutes = async () => {
40
- if (!routesPreWarmed) {
41
- routesPreWarmed = !0;
42
- try {
43
- await server.transformRequest(pluginOpts.entries[0]);
44
- const routeFiles = await collectRouteFiles(server, pluginOpts.entries);
45
- await Promise.all(
46
- routeFiles.map(
47
- (file) => server.transformRequest(file).catch(() => {
48
- })
49
- )
50
- ), process.env.ONE_DEBUG && console.log(
51
- `[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`
52
- );
53
- } catch (err) {
54
- console.error("[one] Error pre-warming routes:", err);
55
- }
56
- }
57
- };
58
- server.watcher.on("change", () => {
59
- cssCache = null;
60
- }), server.middlewares.use(async (req, res, next) => {
36
+ server = server_, server.middlewares.use(async (req, res, next) => {
61
37
  if (req.url?.includes(import_constants.VIRTUAL_SSR_CSS_HREF)) {
62
- await preWarmRoutes(), invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
63
- const now = Date.now();
64
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
65
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
66
- return;
67
- }
38
+ invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
68
39
  const code = await collectStyle(server, pluginOpts.entries);
69
- cssCache = { css: code, timestamp: now }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
40
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
70
41
  return;
71
42
  }
72
43
  next();
@@ -168,20 +139,5 @@ async function collectStyleUrls(server, entries) {
168
139
  }
169
140
  return await Promise.all(entries.map((e) => server.transformRequest(e))), await Promise.all(entries.map((url) => traverse(url))), [...visited].filter((url) => url.match(CSS_LANGS_RE));
170
141
  }
171
- const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/, DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
172
- async function collectRouteFiles(server, entries) {
173
- const routeFiles = [];
174
- for (const entry of entries)
175
- try {
176
- const result = await server.transformRequest(entry);
177
- if (!result?.code) continue;
178
- let match;
179
- for (; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null; ) {
180
- const importPath = match[1];
181
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
182
- }
183
- } catch {
184
- }
185
- return routeFiles;
186
- }
142
+ const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
187
143
  //# sourceMappingURL=SSRCSSPlugin.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/vite/plugins/SSRCSSPlugin.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -37,47 +37,19 @@ __export(SSRCSSPlugin_exports, {
37
37
  collectStyle: () => collectStyle
38
38
  });
39
39
  module.exports = __toCommonJS(SSRCSSPlugin_exports);
40
- var import_constants = require("../../constants.native.js"),
41
- cssCache = null,
42
- routesPreWarmed = !1,
43
- CSS_CACHE_TTL = 1e3;
40
+ var import_constants = require("../../constants.native.js");
44
41
  function SSRCSSPlugin(pluginOpts) {
45
42
  var server;
46
43
  return {
47
44
  name: "one-plugin-ssr-css",
48
45
  apply: "serve",
49
46
  configureServer(server_) {
50
- server = server_;
51
- var preWarmRoutes = async function () {
52
- if (!routesPreWarmed) {
53
- routesPreWarmed = !0;
54
- try {
55
- await server.transformRequest(pluginOpts.entries[0]);
56
- var routeFiles = await collectRouteFiles(server, pluginOpts.entries);
57
- await Promise.all(routeFiles.map(function (file) {
58
- return server.transformRequest(file).catch(function () {});
59
- })), process.env.ONE_DEBUG && console.log(`[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`);
60
- } catch (err) {
61
- console.error("[one] Error pre-warming routes:", err);
62
- }
63
- }
64
- };
65
- server.watcher.on("change", function () {
66
- cssCache = null;
67
- }), server.middlewares.use(async function (req, res, next) {
47
+ server = server_, server.middlewares.use(async function (req, res, next) {
68
48
  var _req_url;
69
49
  if (!((_req_url = req.url) === null || _req_url === void 0) && _req_url.includes(import_constants.VIRTUAL_SSR_CSS_HREF)) {
70
- await preWarmRoutes(), invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
71
- var now = Date.now();
72
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
73
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
74
- return;
75
- }
50
+ invalidateModule(server, "\0" + import_constants.VIRTUAL_SSR_CSS_ENTRY + "?direct");
76
51
  var code = await collectStyle(server, pluginOpts.entries);
77
- cssCache = {
78
- css: code,
79
- timestamp: now
80
- }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
52
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
81
53
  return;
82
54
  }
83
55
  next();
@@ -189,34 +161,5 @@ async function collectStyleUrls(server, entries) {
189
161
  return url.match(CSS_LANGS_RE);
190
162
  });
191
163
  }
192
- var CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/,
193
- DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
194
- async function collectRouteFiles(server, entries) {
195
- var routeFiles = [],
196
- _iteratorNormalCompletion = !0,
197
- _didIteratorError = !1,
198
- _iteratorError = void 0;
199
- try {
200
- for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
201
- var entry = _step.value;
202
- try {
203
- var result = await server.transformRequest(entry);
204
- if (!result?.code) continue;
205
- for (var match = void 0; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null;) {
206
- var importPath = match[1];
207
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
208
- }
209
- } catch {}
210
- }
211
- } catch (err) {
212
- _didIteratorError = !0, _iteratorError = err;
213
- } finally {
214
- try {
215
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
216
- } finally {
217
- if (_didIteratorError) throw _iteratorError;
218
- }
219
- }
220
- return routeFiles;
221
- }
164
+ var CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
222
165
  //# sourceMappingURL=SSRCSSPlugin.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SSRCSSPlugin_exports","__export","SSRCSSPlugin","collectStyle","module","exports","import_constants","require","cssCache","routesPreWarmed","CSS_CACHE_TTL","pluginOpts","server","name","apply","configureServer","server_","preWarmRoutes","transformRequest","entries","routeFiles","collectRouteFiles","Promise","all","map","file","catch","process","env","ONE_DEBUG","console","log","length","err","error","watcher","on","middlewares","use","req","res","next","_req_url","url","includes","VIRTUAL_SSR_CSS_HREF","invalidateModule","VIRTUAL_SSR_CSS_ENTRY","now","Date","timestamp","setHeader","write","css","end","code","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","moduleGraph","getModuleById","transform","urls","collectStyleUrls","codes","prefix","buffer2","Buffer","from","codeOut2","Uint8Array","buffer","byteOffset","byteLength","processed","filename","config","lightningcss","toString","out","flat","filter","Boolean","join","codeOut","visited","Set","traverse","resolveUrl","add","importedModules","childMod","e","match","CSS_LANGS_RE","DYNAMIC_IMPORT_RE","_iteratorNormalCompletion","_didIteratorError","_iteratorError"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","SSRCSSPlugin_exports","__export","SSRCSSPlugin","collectStyle","module","exports","import_constants","require","pluginOpts","server","name","apply","configureServer","server_","middlewares","use","req","res","next","_req_url","url","includes","VIRTUAL_SSR_CSS_HREF","invalidateModule","VIRTUAL_SSR_CSS_ENTRY","code","entries","setHeader","write","end","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","moduleGraph","getModuleById","transform","urls","collectStyleUrls","codes","Promise","all","map","transformRequest","prefix","buffer2","Buffer","from","codeOut2","Uint8Array","buffer","byteOffset","byteLength","processed","filename","config","css","lightningcss","toString","err","console","error","out","flat","filter","Boolean","join","codeOut","visited","Set","traverse","resolveUrl","add","importedModules"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,44 +1,15 @@
1
1
  import { VIRTUAL_SSR_CSS_ENTRY, VIRTUAL_SSR_CSS_HREF } from "../../constants";
2
- let cssCache = null, routesPreWarmed = !1;
3
- const CSS_CACHE_TTL = 1e3;
4
2
  function SSRCSSPlugin(pluginOpts) {
5
3
  let server;
6
4
  return {
7
5
  name: "one-plugin-ssr-css",
8
6
  apply: "serve",
9
7
  configureServer(server_) {
10
- server = server_;
11
- const preWarmRoutes = async () => {
12
- if (!routesPreWarmed) {
13
- routesPreWarmed = !0;
14
- try {
15
- await server.transformRequest(pluginOpts.entries[0]);
16
- const routeFiles = await collectRouteFiles(server, pluginOpts.entries);
17
- await Promise.all(
18
- routeFiles.map(
19
- (file) => server.transformRequest(file).catch(() => {
20
- })
21
- )
22
- ), process.env.ONE_DEBUG && console.log(
23
- `[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`
24
- );
25
- } catch (err) {
26
- console.error("[one] Error pre-warming routes:", err);
27
- }
28
- }
29
- };
30
- server.watcher.on("change", () => {
31
- cssCache = null;
32
- }), server.middlewares.use(async (req, res, next) => {
8
+ server = server_, server.middlewares.use(async (req, res, next) => {
33
9
  if (req.url?.includes(VIRTUAL_SSR_CSS_HREF)) {
34
- await preWarmRoutes(), invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
35
- const now = Date.now();
36
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
37
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
38
- return;
39
- }
10
+ invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
40
11
  const code = await collectStyle(server, pluginOpts.entries);
41
- cssCache = { css: code, timestamp: now }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
12
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
42
13
  return;
43
14
  }
44
15
  next();
@@ -140,22 +111,7 @@ async function collectStyleUrls(server, entries) {
140
111
  }
141
112
  return await Promise.all(entries.map((e) => server.transformRequest(e))), await Promise.all(entries.map((url) => traverse(url))), [...visited].filter((url) => url.match(CSS_LANGS_RE));
142
113
  }
143
- const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/, DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
144
- async function collectRouteFiles(server, entries) {
145
- const routeFiles = [];
146
- for (const entry of entries)
147
- try {
148
- const result = await server.transformRequest(entry);
149
- if (!result?.code) continue;
150
- let match;
151
- for (; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null; ) {
152
- const importPath = match[1];
153
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
154
- }
155
- } catch {
156
- }
157
- return routeFiles;
158
- }
114
+ const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
159
115
  export {
160
116
  SSRCSSPlugin,
161
117
  collectStyle
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/vite/plugins/SSRCSSPlugin.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,41 +1,15 @@
1
1
  import { VIRTUAL_SSR_CSS_ENTRY, VIRTUAL_SSR_CSS_HREF } from "../../constants.mjs";
2
- let cssCache = null,
3
- routesPreWarmed = !1;
4
- const CSS_CACHE_TTL = 1e3;
5
2
  function SSRCSSPlugin(pluginOpts) {
6
3
  let server;
7
4
  return {
8
5
  name: "one-plugin-ssr-css",
9
6
  apply: "serve",
10
7
  configureServer(server_) {
11
- server = server_;
12
- const preWarmRoutes = async () => {
13
- if (!routesPreWarmed) {
14
- routesPreWarmed = !0;
15
- try {
16
- await server.transformRequest(pluginOpts.entries[0]);
17
- const routeFiles = await collectRouteFiles(server, pluginOpts.entries);
18
- await Promise.all(routeFiles.map(file => server.transformRequest(file).catch(() => {}))), process.env.ONE_DEBUG && console.log(`[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`);
19
- } catch (err) {
20
- console.error("[one] Error pre-warming routes:", err);
21
- }
22
- }
23
- };
24
- server.watcher.on("change", () => {
25
- cssCache = null;
26
- }), server.middlewares.use(async (req, res, next) => {
8
+ server = server_, server.middlewares.use(async (req, res, next) => {
27
9
  if (req.url?.includes(VIRTUAL_SSR_CSS_HREF)) {
28
- await preWarmRoutes(), invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
29
- const now = Date.now();
30
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
31
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
32
- return;
33
- }
10
+ invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
34
11
  const code = await collectStyle(server, pluginOpts.entries);
35
- cssCache = {
36
- css: code,
37
- timestamp: now
38
- }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
12
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
39
13
  return;
40
14
  }
41
15
  next();
@@ -134,20 +108,6 @@ async function collectStyleUrls(server, entries) {
134
108
  }
135
109
  return await Promise.all(entries.map(e => server.transformRequest(e))), await Promise.all(entries.map(url => traverse(url))), [...visited].filter(url => url.match(CSS_LANGS_RE));
136
110
  }
137
- const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/,
138
- DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
139
- async function collectRouteFiles(server, entries) {
140
- const routeFiles = [];
141
- for (const entry of entries) try {
142
- const result = await server.transformRequest(entry);
143
- if (!result?.code) continue;
144
- let match;
145
- for (; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null;) {
146
- const importPath = match[1];
147
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
148
- }
149
- } catch {}
150
- return routeFiles;
151
- }
111
+ const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
152
112
  export { SSRCSSPlugin, collectStyle };
153
113
  //# sourceMappingURL=SSRCSSPlugin.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["VIRTUAL_SSR_CSS_ENTRY","VIRTUAL_SSR_CSS_HREF","cssCache","routesPreWarmed","CSS_CACHE_TTL","SSRCSSPlugin","pluginOpts","server","name","apply","configureServer","server_","preWarmRoutes","transformRequest","entries","routeFiles","collectRouteFiles","Promise","all","map","file","catch","process","env","ONE_DEBUG","console","log","length","err","error","watcher","on","middlewares","use","req","res","next","url","includes","invalidateModule","now","Date","timestamp","setHeader","write","css","end","code","collectStyle","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","mod","moduleGraph","getModuleById","transform","urls","collectStyleUrls","out","prefix","buffer","Buffer","from","codeOut","Uint8Array","byteOffset","byteLength","processed","filename","config","lightningcss","toString","flat","filter","Boolean","join","visited","Set","traverse","resolveUrl","add","importedModules","childMod","e","match","CSS_LANGS_RE","DYNAMIC_IMPORT_RE","entry","result","exec","importPath","endsWith","push"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["VIRTUAL_SSR_CSS_ENTRY","VIRTUAL_SSR_CSS_HREF","SSRCSSPlugin","pluginOpts","server","name","apply","configureServer","server_","middlewares","use","req","res","next","url","includes","invalidateModule","code","collectStyle","entries","setHeader","write","end","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","mod","moduleGraph","getModuleById","transform","urls","collectStyleUrls","out","Promise","all","map","transformRequest","prefix","buffer","Buffer","from","codeOut","Uint8Array","byteOffset","byteLength","processed","filename","config","css","lightningcss","toString","err","console","error","flat","filter","Boolean","join","visited","Set","traverse","resolveUrl","add","importedModules","childMod","e","match","CSS_LANGS_RE"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,44 +1,16 @@
1
1
  import { VIRTUAL_SSR_CSS_ENTRY, VIRTUAL_SSR_CSS_HREF } from "../../constants.native.js";
2
- var cssCache = null,
3
- routesPreWarmed = !1,
4
- CSS_CACHE_TTL = 1e3;
5
2
  function SSRCSSPlugin(pluginOpts) {
6
3
  var server;
7
4
  return {
8
5
  name: "one-plugin-ssr-css",
9
6
  apply: "serve",
10
7
  configureServer(server_) {
11
- server = server_;
12
- var preWarmRoutes = async function () {
13
- if (!routesPreWarmed) {
14
- routesPreWarmed = !0;
15
- try {
16
- await server.transformRequest(pluginOpts.entries[0]);
17
- var routeFiles = await collectRouteFiles(server, pluginOpts.entries);
18
- await Promise.all(routeFiles.map(function (file) {
19
- return server.transformRequest(file).catch(function () {});
20
- })), process.env.ONE_DEBUG && console.log(`[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`);
21
- } catch (err) {
22
- console.error("[one] Error pre-warming routes:", err);
23
- }
24
- }
25
- };
26
- server.watcher.on("change", function () {
27
- cssCache = null;
28
- }), server.middlewares.use(async function (req, res, next) {
8
+ server = server_, server.middlewares.use(async function (req, res, next) {
29
9
  var _req_url;
30
10
  if (!((_req_url = req.url) === null || _req_url === void 0) && _req_url.includes(VIRTUAL_SSR_CSS_HREF)) {
31
- await preWarmRoutes(), invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
32
- var now = Date.now();
33
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
34
- res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(cssCache.css), res.end();
35
- return;
36
- }
11
+ invalidateModule(server, "\0" + VIRTUAL_SSR_CSS_ENTRY + "?direct");
37
12
  var code = await collectStyle(server, pluginOpts.entries);
38
- cssCache = {
39
- css: code,
40
- timestamp: now
41
- }, res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
13
+ res.setHeader("Content-Type", "text/css"), res.setHeader("Cache-Control", "no-store"), res.setHeader("Vary", "*"), res.write(code), res.end();
42
14
  return;
43
15
  }
44
16
  next();
@@ -150,35 +122,6 @@ async function collectStyleUrls(server, entries) {
150
122
  return url.match(CSS_LANGS_RE);
151
123
  });
152
124
  }
153
- var CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/,
154
- DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g;
155
- async function collectRouteFiles(server, entries) {
156
- var routeFiles = [],
157
- _iteratorNormalCompletion = !0,
158
- _didIteratorError = !1,
159
- _iteratorError = void 0;
160
- try {
161
- for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
162
- var entry = _step.value;
163
- try {
164
- var result = await server.transformRequest(entry);
165
- if (!result?.code) continue;
166
- for (var match = void 0; (match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null;) {
167
- var importPath = match[1];
168
- importPath && !importPath.includes("node_modules") && !importPath.startsWith("\0") && !importPath.startsWith("virtual:") && (importPath.endsWith(".tsx") || importPath.endsWith(".ts") || importPath.endsWith(".jsx") || importPath.endsWith(".js")) && routeFiles.push(importPath);
169
- }
170
- } catch {}
171
- }
172
- } catch (err) {
173
- _didIteratorError = !0, _iteratorError = err;
174
- } finally {
175
- try {
176
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
177
- } finally {
178
- if (_didIteratorError) throw _iteratorError;
179
- }
180
- }
181
- return routeFiles;
182
- }
125
+ var CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/;
183
126
  export { SSRCSSPlugin, collectStyle };
184
127
  //# sourceMappingURL=SSRCSSPlugin.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["VIRTUAL_SSR_CSS_ENTRY","VIRTUAL_SSR_CSS_HREF","cssCache","routesPreWarmed","CSS_CACHE_TTL","SSRCSSPlugin","pluginOpts","server","name","apply","configureServer","server_","preWarmRoutes","transformRequest","entries","routeFiles","collectRouteFiles","Promise","all","map","file","catch","process","env","ONE_DEBUG","console","log","length","err","error","watcher","on","middlewares","use","req","res","next","_req_url","url","includes","invalidateModule","now","Date","timestamp","setHeader","write","css","end","code","collectStyle","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","mod","moduleGraph","getModuleById","transform","urls","collectStyleUrls","codes","prefix","buffer2","Buffer","from","codeOut2","Uint8Array","buffer","byteOffset","byteLength","processed","filename","config","lightningcss","toString","out","flat","filter","Boolean","join","codeOut","visited","Set","traverse","resolveUrl","add","importedModules","childMod","e","match","CSS_LANGS_RE","DYNAMIC_IMPORT_RE","_iteratorNormalCompletion","_didIteratorError","_iteratorError"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["VIRTUAL_SSR_CSS_ENTRY","VIRTUAL_SSR_CSS_HREF","SSRCSSPlugin","pluginOpts","server","name","apply","configureServer","server_","middlewares","use","req","res","next","_req_url","url","includes","invalidateModule","code","collectStyle","entries","setHeader","write","end","resolveId","source","_importer","_options","startsWith","load","id","URL","slice","searchParams","has","JSON","stringify","transformIndexHtml","handler","tag","injectTo","attrs","rel","href","type","children","mod","moduleGraph","getModuleById","transform","urls","collectStyleUrls","codes","Promise","all","map","transformRequest","prefix","buffer2","Buffer","from","codeOut2","Uint8Array","buffer","byteOffset","byteLength","processed","filename","config","css","lightningcss","toString","err","console","error","out","flat","filter","Boolean","join","codeOut","visited","Set","traverse","resolveUrl","add","importedModules","childMod"],"sources":["../../../../src/vite/plugins/SSRCSSPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/env.d.ts ADDED
@@ -0,0 +1,43 @@
1
+ /// <reference types="vite/client" />
2
+
3
+ interface OneEnvVariables {
4
+ // Core One variables
5
+ /** Random number for each production build, or stable per dev server run. Useful for cache keys. */
6
+ ONE_CACHE_KEY: string
7
+ /** Your app.key setting from vite.config */
8
+ ONE_APP_NAME: string
9
+ /** Current running server URL in development, e.g. "http://0.0.0.0:8081". Set this yourself for production. */
10
+ ONE_SERVER_URL: string
11
+ /** "ssr", "ssg", or "spa" based on your defaultRenderMode setting */
12
+ ONE_DEFAULT_RENDER_MODE: 'ssr' | 'ssg' | 'spa'
13
+
14
+ // Platform detection
15
+ /** "client" for client-side web, "ssr" for server-side web, "ios" or "android" for native */
16
+ VITE_ENVIRONMENT: 'client' | 'ssr' | 'ios' | 'android'
17
+ /** "web" for all web builds (client and SSR), "native" for native platforms (iOS and Android) */
18
+ VITE_PLATFORM: 'web' | 'native'
19
+ /** "web" for web builds, "ios" or "android" for native. Matches Expo convention. */
20
+ EXPO_OS: 'web' | 'ios' | 'android'
21
+
22
+ // React Native (available in native builds)
23
+ /** The React Native version string */
24
+ REACT_NATIVE_VERSION: string
25
+ /** "ios" or "android" in native builds */
26
+ REACT_NATIVE_PLATFORM: 'ios' | 'android'
27
+ /** Dev server port for React Native */
28
+ REACT_NATIVE_SERVER_PUBLIC_PORT: string
29
+ }
30
+
31
+ declare global {
32
+ namespace NodeJS {
33
+ interface ProcessEnv extends Partial<OneEnvVariables> {}
34
+ }
35
+ }
36
+
37
+ interface ImportMetaEnv extends Partial<OneEnvVariables> {}
38
+
39
+ interface ImportMeta {
40
+ readonly env: ImportMetaEnv
41
+ }
42
+
43
+ export {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "1.2.60",
3
+ "version": "1.2.62",
4
4
  "license": "BSD-3-Clause",
5
5
  "sideEffects": [
6
6
  "setup.mjs",
@@ -85,7 +85,7 @@
85
85
  "import": "./metro-entry.js"
86
86
  },
87
87
  "./env": {
88
- "types": "./types/env.d.ts"
88
+ "types": "./env.d.ts"
89
89
  },
90
90
  "./image": {
91
91
  "types": "./types/image.d.ts",
@@ -103,9 +103,13 @@
103
103
  "types",
104
104
  "dist",
105
105
  "vendor",
106
+ "run.mjs",
107
+ "env.d.ts",
108
+ "server.js",
106
109
  "metro-entry.js",
107
110
  "metro-entry-ctx.js",
108
- "LICENSE"
111
+ "LICENSE",
112
+ "README.md"
109
113
  ],
110
114
  "scripts": {
111
115
  "build": "tamagui-build",
@@ -135,17 +139,17 @@
135
139
  "@react-navigation/routers": "~7.5.1",
136
140
  "@swc/core": "^1.14.0",
137
141
  "@ungap/structured-clone": "^1.2.0",
138
- "@vxrn/color-scheme": "1.2.60",
139
- "@vxrn/compiler": "1.2.60",
140
- "@vxrn/resolve": "1.2.60",
141
- "@vxrn/tslib-lite": "1.2.60",
142
- "@vxrn/use-isomorphic-layout-effect": "1.2.60",
143
- "@vxrn/vite-plugin-metro": "1.2.60",
142
+ "@vxrn/color-scheme": "1.2.62",
143
+ "@vxrn/compiler": "1.2.62",
144
+ "@vxrn/resolve": "1.2.62",
145
+ "@vxrn/tslib-lite": "1.2.62",
146
+ "@vxrn/use-isomorphic-layout-effect": "1.2.62",
147
+ "@vxrn/vite-plugin-metro": "1.2.62",
144
148
  "babel-dead-code-elimination": "1.0.10",
145
149
  "babel-plugin-module-resolver": "^5.0.2",
146
150
  "citty": "^0.1.6",
147
151
  "core-js": "^3.38.1",
148
- "create-vxrn": "1.2.60",
152
+ "create-vxrn": "1.2.62",
149
153
  "escape-string-regexp": "^5.0.0",
150
154
  "expo-linking": "~8.0.8",
151
155
  "expo-modules-core": "~3.0.24",
@@ -173,7 +177,7 @@
173
177
  "vite": "7.1.12",
174
178
  "vite-plugin-barrel": "^0.4.1",
175
179
  "vite-tsconfig-paths": "^5.1.4",
176
- "vxrn": "1.2.60",
180
+ "vxrn": "1.2.62",
177
181
  "ws": "^8.18.0",
178
182
  "xxhashjs": "^0.2.2"
179
183
  },
package/server.js ADDED
@@ -0,0 +1,9 @@
1
+ // empty for native
2
+
3
+ export const requestAsyncLocalStore = null
4
+
5
+ export const asyncHeadersCache = new WeakMap()
6
+
7
+ export async function setResponseHeaders(cb) {}
8
+
9
+ export function mergeHeaders(onto, from) {}
@@ -3,11 +3,6 @@ import { VIRTUAL_SSR_CSS_ENTRY, VIRTUAL_SSR_CSS_HREF } from '../../constants'
3
3
 
4
4
  // thanks to hi-ogawa https://github.com/hi-ogawa/vite-plugins/tree/main/packages/ssr-css
5
5
 
6
- // Track if we've pre-warmed routes and cached CSS
7
- let cssCache: { css: string; timestamp: number } | null = null
8
- let routesPreWarmed = false
9
- const CSS_CACHE_TTL = 1000 // 1 second cache for dev mode
10
-
11
6
  export function SSRCSSPlugin(pluginOpts: { entries: string[] }): Plugin {
12
7
  let server: ViteDevServer
13
8
 
@@ -17,64 +12,12 @@ export function SSRCSSPlugin(pluginOpts: { entries: string[] }): Plugin {
17
12
  configureServer(server_) {
18
13
  server = server_
19
14
 
20
- // Pre-warm route modules on first request to populate the module graph
21
- // This ensures CSS from all routes is collected even for lazy imports
22
- const preWarmRoutes = async () => {
23
- if (routesPreWarmed) return
24
- routesPreWarmed = true
25
-
26
- try {
27
- // Transform the virtual entry to get route module paths
28
- await server.transformRequest(pluginOpts.entries[0])
29
-
30
- // Get all route files from the module graph
31
- const routeFiles = await collectRouteFiles(server, pluginOpts.entries)
32
-
33
- // Transform each route file to warm its CSS dependencies
34
- await Promise.all(
35
- routeFiles.map((file) =>
36
- server.transformRequest(file).catch(() => {
37
- // Ignore errors - some routes may have issues
38
- })
39
- )
40
- )
41
-
42
- if (process.env.ONE_DEBUG) {
43
- console.log(
44
- `[one] Pre-warmed ${routeFiles.length} route modules for CSS collection`
45
- )
46
- }
47
- } catch (err) {
48
- console.error('[one] Error pre-warming routes:', err)
49
- }
50
- }
51
-
52
- // Invalidate CSS cache on HMR
53
- server.watcher.on('change', () => {
54
- cssCache = null
55
- })
56
-
57
15
  // invalidate virtual modules for each direct request
58
16
  server.middlewares.use(async (req, res, next) => {
59
17
  if (req.url?.includes(VIRTUAL_SSR_CSS_HREF)) {
60
- // Pre-warm routes on first CSS request
61
- await preWarmRoutes()
62
-
63
18
  invalidateModule(server, '\0' + VIRTUAL_SSR_CSS_ENTRY + '?direct')
64
19
 
65
- // Use cached CSS if fresh
66
- const now = Date.now()
67
- if (cssCache && now - cssCache.timestamp < CSS_CACHE_TTL) {
68
- res.setHeader('Content-Type', 'text/css')
69
- res.setHeader('Cache-Control', 'no-store')
70
- res.setHeader('Vary', '*')
71
- res.write(cssCache.css)
72
- res.end()
73
- return
74
- }
75
-
76
20
  const code = await collectStyle(server, pluginOpts.entries)
77
- cssCache = { css: code, timestamp: now }
78
21
 
79
22
  res.setHeader('Content-Type', 'text/css')
80
23
  res.setHeader('Cache-Control', 'no-store')
@@ -232,50 +175,3 @@ async function collectStyleUrls(
232
175
 
233
176
  // cf. https://github.com/vitejs/vite/blob/d6bde8b03d433778aaed62afc2be0630c8131908/packages/vite/src/node/constants.ts#L49C23-L50
234
177
  const CSS_LANGS_RE = /\.(css|less|sass|scss|styl|stylus|pcss|postcss|sss)(?:$|\?)/
235
-
236
- // Match route files from dynamic imports in virtual entry
237
- // Vite transforms import.meta.glob to:
238
- // const routes = { "./path/to/file.tsx": () => import("./path/to/file.tsx") }
239
- const DYNAMIC_IMPORT_RE = /import\s*\(\s*["'`]([^"'`]+)["'`]\s*\)/g
240
-
241
- /**
242
- * Collect all route file paths from the module graph.
243
- * This is used to pre-warm route modules so their CSS is included.
244
- */
245
- async function collectRouteFiles(
246
- server: ViteDevServer,
247
- entries: string[]
248
- ): Promise<string[]> {
249
- const routeFiles: string[] = []
250
-
251
- for (const entry of entries) {
252
- try {
253
- // Get the transformed code for the entry
254
- const result = await server.transformRequest(entry)
255
- if (!result?.code) continue
256
-
257
- // Extract dynamic import paths from the transformed code
258
- let match
259
- while ((match = DYNAMIC_IMPORT_RE.exec(result.code)) !== null) {
260
- const importPath = match[1]
261
- // Only include actual route files, not node_modules or virtual
262
- if (
263
- importPath &&
264
- !importPath.includes('node_modules') &&
265
- !importPath.startsWith('\0') &&
266
- !importPath.startsWith('virtual:') &&
267
- (importPath.endsWith('.tsx') ||
268
- importPath.endsWith('.ts') ||
269
- importPath.endsWith('.jsx') ||
270
- importPath.endsWith('.js'))
271
- ) {
272
- routeFiles.push(importPath)
273
- }
274
- }
275
- } catch {
276
- // Ignore errors
277
- }
278
- }
279
-
280
- return routeFiles
281
- }
package/types/env.d.ts ADDED
@@ -0,0 +1,30 @@
1
+ interface OneEnvVariables {
2
+ /** Random number for each production build, or stable per dev server run. Useful for cache keys. */
3
+ ONE_CACHE_KEY: string;
4
+ /** Your app.key setting from vite.config */
5
+ ONE_APP_NAME: string;
6
+ /** Current running server URL in development, e.g. "http://0.0.0.0:8081". Set this yourself for production. */
7
+ ONE_SERVER_URL: string;
8
+ /** "ssr", "ssg", or "spa" based on your defaultRenderMode setting */
9
+ ONE_DEFAULT_RENDER_MODE: 'ssr' | 'ssg' | 'spa';
10
+ /** "client" for client-side web, "ssr" for server-side web, "ios" or "android" for native */
11
+ VITE_ENVIRONMENT: 'client' | 'ssr' | 'ios' | 'android';
12
+ /** "web" for all web builds (client and SSR), "native" for native platforms (iOS and Android) */
13
+ VITE_PLATFORM: 'web' | 'native';
14
+ /** "web" for web builds, "ios" or "android" for native. Matches Expo convention. */
15
+ EXPO_OS: 'web' | 'ios' | 'android';
16
+ /** The React Native version string */
17
+ REACT_NATIVE_VERSION: string;
18
+ /** "ios" or "android" in native builds */
19
+ REACT_NATIVE_PLATFORM: 'ios' | 'android';
20
+ /** Dev server port for React Native */
21
+ REACT_NATIVE_SERVER_PUBLIC_PORT: string;
22
+ }
23
+ declare global {
24
+ namespace NodeJS {
25
+ interface ProcessEnv extends Partial<OneEnvVariables> {
26
+ }
27
+ }
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAEA,UAAU,eAAe;IAEvB,oGAAoG;IACpG,aAAa,EAAE,MAAM,CAAA;IACrB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAA;IACpB,+GAA+G;IAC/G,cAAc,EAAE,MAAM,CAAA;IACtB,qEAAqE;IACrE,uBAAuB,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;IAG9C,6FAA6F;IAC7F,gBAAgB,EAAE,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;IACtD,iGAAiG;IACjG,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAA;IAC/B,oFAAoF;IACpF,OAAO,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;IAGlC,sCAAsC;IACtC,oBAAoB,EAAE,MAAM,CAAA;IAC5B,0CAA0C;IAC1C,qBAAqB,EAAE,KAAK,GAAG,SAAS,CAAA;IACxC,uCAAuC;IACvC,+BAA+B,EAAE,MAAM,CAAA;CACxC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM,CAAC;QACf,UAAU,UAAW,SAAQ,OAAO,CAAC,eAAe,CAAC;SAAG;KACzD;CACF;AAQD,OAAO,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SSRCSSPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/SSRCSSPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAUjD,wBAAgB,YAAY,CAAC,UAAU,EAAE;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,MAAM,CAkItE;AAaD,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,mBAgD1E"}
1
+ {"version":3,"file":"SSRCSSPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/SSRCSSPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAKjD,wBAAgB,YAAY,CAAC,UAAU,EAAE;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,MAAM,CA8EtE;AAaD,wBAAsB,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,mBAgD1E"}