@qwik.dev/core 2.0.0-beta.3 → 2.0.0-beta.31

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 (139) hide show
  1. package/dist/backpatch/index.d.ts +2 -0
  2. package/dist/backpatch/index.mjs +5 -0
  3. package/dist/backpatch/package.json +8 -0
  4. package/dist/backpatch-executor.debug.js +39 -0
  5. package/dist/backpatch-executor.js +1 -0
  6. package/dist/build/package.json +1 -1
  7. package/dist/cli.mjs +12961 -0
  8. package/dist/core-internal.d.ts +1117 -707
  9. package/dist/core.min.mjs +2 -1
  10. package/dist/core.mjs +12216 -8953
  11. package/dist/core.mjs.map +1 -1
  12. package/dist/core.prod.mjs +8677 -5376
  13. package/dist/insights/index.qwik.mjs +80 -57
  14. package/dist/insights/vite/index.mjs +36 -33
  15. package/dist/loader/index.mjs +2 -2
  16. package/dist/loader/package.json +1 -1
  17. package/dist/optimizer.d.ts +47 -278
  18. package/dist/optimizer.mjs +2427 -3791
  19. package/dist/preloader.mjs +212 -117
  20. package/dist/qwikloader.debug.js +173 -135
  21. package/dist/qwikloader.js +1 -1
  22. package/dist/server.d.ts +51 -203
  23. package/dist/server.mjs +1661 -1157
  24. package/dist/server.prod.mjs +3452 -0
  25. package/dist/starters/adapters/aws-lambda/adapters/aws-lambda/{vite.config.mts → vite.config.ts} +2 -2
  26. package/dist/starters/adapters/aws-lambda/package.json +3 -2
  27. package/dist/starters/adapters/aws-lambda/src/entry_aws-lambda.tsx +2 -6
  28. package/dist/starters/adapters/azure-swa/adapters/azure-swa/{vite.config.mts → vite.config.ts} +2 -2
  29. package/dist/starters/adapters/azure-swa/package.json +3 -2
  30. package/dist/starters/adapters/azure-swa/src/entry.azure-swa.tsx +2 -3
  31. package/dist/starters/adapters/bun/adapters/bun/{vite.config.mts → vite.config.ts} +3 -3
  32. package/dist/starters/adapters/bun/package.json +3 -2
  33. package/dist/starters/adapters/bun/src/entry.bun.ts +0 -2
  34. package/dist/starters/adapters/cloud-run/adapters/cloud-run/{vite.config.mts → vite.config.ts} +2 -2
  35. package/dist/starters/adapters/cloud-run/package.json +3 -2
  36. package/dist/starters/adapters/cloud-run/src/entry.cloud-run.tsx +1 -3
  37. package/dist/starters/adapters/cloudflare-pages/adapters/cloudflare-pages/{vite.config.mts → vite.config.ts} +2 -2
  38. package/dist/starters/adapters/cloudflare-pages/package.json +3 -2
  39. package/dist/starters/adapters/cloudflare-pages/src/entry.cloudflare-pages.tsx +2 -3
  40. package/dist/starters/adapters/cloudflare-workers/README.md +52 -0
  41. package/dist/starters/adapters/cloudflare-workers/adapters/cloudflare-workers/vite.config.ts +15 -0
  42. package/dist/starters/adapters/cloudflare-workers/gitignore +3 -0
  43. package/dist/starters/adapters/cloudflare-workers/package.json +31 -0
  44. package/dist/starters/adapters/cloudflare-workers/public/.assetsignore +4 -0
  45. package/dist/starters/adapters/cloudflare-workers/public/_headers +11 -0
  46. package/dist/starters/adapters/cloudflare-workers/public/_redirects +1 -0
  47. package/dist/starters/adapters/cloudflare-workers/src/entry.cloudflare-pages.tsx +23 -0
  48. package/dist/starters/adapters/cloudflare-workers/worker-configuration.d.ts +5 -0
  49. package/dist/starters/adapters/cloudflare-workers/wrangler.jsonc +41 -0
  50. package/dist/starters/adapters/deno/adapters/deno/{vite.config.mts → vite.config.ts} +2 -2
  51. package/dist/starters/adapters/deno/package.json +3 -2
  52. package/dist/starters/adapters/deno/src/entry.deno.ts +0 -2
  53. package/dist/starters/adapters/express/adapters/express/{vite.config.mts → vite.config.ts} +2 -2
  54. package/dist/starters/adapters/express/package.json +4 -3
  55. package/dist/starters/adapters/express/src/entry.express.tsx +1 -3
  56. package/dist/starters/adapters/fastify/adapters/fastify/{vite.config.mts → vite.config.ts} +2 -2
  57. package/dist/starters/adapters/fastify/package.json +4 -3
  58. package/dist/starters/adapters/fastify/src/entry.fastify.tsx +1 -1
  59. package/dist/starters/adapters/fastify/src/plugins/fastify-qwik.ts +1 -2
  60. package/dist/starters/adapters/firebase/adapters/firebase/{vite.config.mts → vite.config.ts} +2 -2
  61. package/dist/starters/adapters/firebase/package.json +3 -2
  62. package/dist/starters/adapters/firebase/src/entry-firebase.tsx +2 -3
  63. package/dist/starters/adapters/netlify-edge/adapters/netlify-edge/{vite.config.mts → vite.config.ts} +2 -2
  64. package/dist/starters/adapters/netlify-edge/package.json +5 -4
  65. package/dist/starters/adapters/netlify-edge/src/entry.netlify-edge.tsx +2 -3
  66. package/dist/starters/adapters/node-server/adapters/node-server/{vite.config.mts → vite.config.ts} +2 -2
  67. package/dist/starters/adapters/node-server/package.json +3 -2
  68. package/dist/starters/adapters/node-server/src/entry.node-server.tsx +0 -2
  69. package/dist/starters/adapters/{static/adapters/static/vite.config.mts → ssg/adapters/ssg/vite.config.ts} +3 -3
  70. package/dist/starters/adapters/ssg/package.json +20 -0
  71. package/dist/starters/adapters/vercel-edge/README.md +2 -2
  72. package/dist/starters/adapters/vercel-edge/adapters/vercel-edge/{vite.config.mts → vite.config.ts} +2 -2
  73. package/dist/starters/adapters/vercel-edge/package.json +3 -2
  74. package/dist/starters/adapters/vercel-edge/src/entry.vercel-edge.tsx +2 -3
  75. package/dist/starters/adapters/vercel-edge/vercel.json +1 -1
  76. package/dist/starters/features/auth/package.json +1 -1
  77. package/dist/starters/features/compiled-i18n/package.json +37 -0
  78. package/dist/starters/features/compiled-i18n/src/components/locale-selector/locale-selector.tsx +30 -0
  79. package/dist/starters/features/compiled-i18n/src/entry.ssr.tsx +31 -0
  80. package/dist/starters/features/compiled-i18n/src/routes/plugin@compiled-i18n.ts +28 -0
  81. package/dist/starters/features/csr/index.html +27 -0
  82. package/dist/starters/features/csr/package.json +29 -0
  83. package/dist/starters/features/csr/src/root.tsx +15 -0
  84. package/dist/starters/features/csr/vite.config.ts +13 -0
  85. package/dist/starters/features/cypress/src/actions/example.action.ts +5 -0
  86. package/dist/starters/features/cypress/src/components/example/example.cy.tsx +50 -8
  87. package/dist/starters/features/cypress/src/components/example/example.tsx +13 -3
  88. package/dist/starters/features/cypress/src/loaders/example.loader.ts +5 -0
  89. package/dist/starters/features/pandacss/package.json +1 -1
  90. package/dist/starters/features/postcss/postcss.config.js +1 -1
  91. package/dist/starters/features/storybook/.storybook/tsconfig.json +0 -1
  92. package/dist/starters/features/styled-vanilla-extract/package.json +2 -1
  93. package/dist/starters/features/tailwind/package.json +2 -2
  94. package/dist/starters/features/tailwind/prettier.config.js +10 -0
  95. package/dist/starters/features/tailwind-v3/package.json +1 -1
  96. package/dist/starters/features/tailwind-v3/prettier.config.js +10 -0
  97. package/dist/testing/index.d.ts +928 -6
  98. package/dist/testing/index.mjs +16212 -11578
  99. package/dist/testing/package.json +1 -1
  100. package/handlers.mjs +1 -1
  101. package/package.json +34 -56
  102. package/public.d.ts +5 -1
  103. package/{qwik-cli.cjs → qwik-cli.mjs} +1 -1
  104. package/server.d.ts +2 -0
  105. package/bindings/qwik.darwin-arm64.node +0 -0
  106. package/bindings/qwik.darwin-x64.node +0 -0
  107. package/bindings/qwik.linux-x64-gnu.node +0 -0
  108. package/bindings/qwik.wasm.cjs +0 -471
  109. package/bindings/qwik.wasm.mjs +0 -464
  110. package/bindings/qwik.win32-x64-msvc.node +0 -0
  111. package/bindings/qwik_wasm_bg.wasm +0 -0
  112. package/dist/build/index.cjs +0 -35
  113. package/dist/build/index.cjs.map +0 -7
  114. package/dist/build/index.dev.cjs +0 -37
  115. package/dist/build/index.dev.cjs.map +0 -7
  116. package/dist/build/index.prod.cjs +0 -37
  117. package/dist/build/index.prod.cjs.map +0 -7
  118. package/dist/cli.cjs +0 -5545
  119. package/dist/core.cjs +0 -11800
  120. package/dist/core.cjs.map +0 -1
  121. package/dist/core.prod.cjs +0 -5661
  122. package/dist/insights/index.qwik.cjs +0 -1
  123. package/dist/insights/vite/index.cjs +0 -1
  124. package/dist/loader/index.cjs +0 -4
  125. package/dist/optimizer.cjs +0 -4020
  126. package/dist/preloader.cjs +0 -269
  127. package/dist/server.cjs +0 -3037
  128. package/dist/starters/adapters/static/package.json +0 -19
  129. package/dist/starters/features/localize/package.json +0 -37
  130. package/dist/starters/features/localize/src/entry.ssr.tsx +0 -30
  131. package/dist/starters/features/localize/src/locales/message.en.json +0 -8
  132. package/dist/starters/features/localize/src/locales/message.it.json +0 -8
  133. package/dist/starters/features/localize/src/routes/[locale]/i18n-utils.ts +0 -94
  134. package/dist/starters/features/localize/src/routes/[locale]/index.tsx +0 -52
  135. package/dist/starters/features/localize/src/routes/[locale]/layout.tsx +0 -12
  136. package/dist/starters/features/playwright/playwright-report/index.html +0 -22026
  137. package/dist/starters/features/tailwind/.prettierrc.js +0 -3
  138. package/dist/testing/index.cjs +0 -33331
  139. /package/dist/starters/adapters/{static → ssg}/README.md +0 -0
@@ -1,269 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const build = require("@qwik.dev/core/build");
4
- const doc = build.isBrowser ? document : void 0;
5
- const config = {
6
- $DEBUG$: false,
7
- $maxIdlePreloads$: 25,
8
- $invPreloadProbability$: 0.65
9
- };
10
- const rel = build.isBrowser && doc.createElement("link").relList.supports("modulepreload") ? "modulePreload" : "preload";
11
- const loadStart = Date.now();
12
- const isJSRegex = /\.[mc]?js$/;
13
- const BundleImportState_None = 0;
14
- const BundleImportState_Queued = 1;
15
- const BundleImportState_Preload = 2;
16
- const BundleImportState_Alias = 3;
17
- const BundleImportState_Loaded = 4;
18
- const bundles = /* @__PURE__ */ new Map();
19
- let queueDirty;
20
- let preloadCount = 0;
21
- const queue = [];
22
- const log = (...args) => {
23
- console.log(
24
- `Preloader ${Date.now() - loadStart}ms ${preloadCount}/${queue.length} queued>`,
25
- ...args
26
- );
27
- };
28
- const sortQueue = () => {
29
- if (queueDirty) {
30
- queue.sort((a, b) => a.$inverseProbability$ - b.$inverseProbability$);
31
- queueDirty = false;
32
- }
33
- };
34
- const trigger = () => {
35
- if (!queue.length) {
36
- return;
37
- }
38
- sortQueue();
39
- while (queue.length) {
40
- const bundle = queue[0];
41
- const inverseProbability = bundle.$inverseProbability$;
42
- const probability = 1 - inverseProbability;
43
- const allowedPreloads = graph ? (
44
- // The more likely the bundle, the more simultaneous preloads we want to allow
45
- Math.max(1, config.$maxIdlePreloads$ * probability)
46
- ) : (
47
- // While the graph is not available, we limit to 2 preloads
48
- 2
49
- );
50
- if (probability >= 0.99 || preloadCount < allowedPreloads) {
51
- queue.shift();
52
- preloadOne(bundle);
53
- } else {
54
- break;
55
- }
56
- }
57
- if (config.$DEBUG$ && !queue.length) {
58
- const loaded = [...bundles.values()].filter((b) => b.$state$ > BundleImportState_None);
59
- const waitTime = loaded.reduce((acc, b) => acc + b.$waitedMs$, 0);
60
- const loadTime = loaded.reduce((acc, b) => acc + b.$loadedMs$, 0);
61
- log(
62
- `>>>> done ${loaded.length}/${bundles.size} total: ${waitTime}ms waited, ${loadTime}ms loaded`
63
- );
64
- }
65
- };
66
- const preloadOne = (bundle) => {
67
- if (bundle.$state$ >= BundleImportState_Preload) {
68
- return;
69
- }
70
- preloadCount++;
71
- const start = Date.now();
72
- bundle.$waitedMs$ = start - bundle.$createdTs$;
73
- bundle.$state$ = BundleImportState_Preload;
74
- config.$DEBUG$ && log(
75
- `<< load ${Math.round((1 - bundle.$inverseProbability$) * 100)}% after ${`${bundle.$waitedMs$}ms`}`,
76
- bundle.$name$
77
- );
78
- const link = doc.createElement("link");
79
- link.href = new URL(`${base}${bundle.$name$}`, doc.baseURI).toString();
80
- link.rel = rel;
81
- link.as = "script";
82
- link.onload = link.onerror = () => {
83
- preloadCount--;
84
- const end = Date.now();
85
- bundle.$loadedMs$ = end - start;
86
- bundle.$state$ = BundleImportState_Loaded;
87
- config.$DEBUG$ && log(`>> done after ${bundle.$loadedMs$}ms`, bundle.$name$);
88
- link.remove();
89
- trigger();
90
- };
91
- doc.head.appendChild(link);
92
- };
93
- const adjustProbabilities = (bundle, newInverseProbability, seen) => {
94
- if (seen?.has(bundle)) {
95
- return;
96
- }
97
- const previousInverseProbability = bundle.$inverseProbability$;
98
- bundle.$inverseProbability$ = newInverseProbability;
99
- if (previousInverseProbability - bundle.$inverseProbability$ < 0.01) {
100
- return;
101
- }
102
- if (
103
- // don't queue until we have initialized the preloader
104
- base != null && bundle.$state$ < BundleImportState_Preload && bundle.$inverseProbability$ < config.$invPreloadProbability$
105
- ) {
106
- if (bundle.$state$ === BundleImportState_None) {
107
- bundle.$state$ = BundleImportState_Queued;
108
- queue.push(bundle);
109
- config.$DEBUG$ && log(`queued ${Math.round((1 - bundle.$inverseProbability$) * 100)}%`, bundle.$name$);
110
- }
111
- queueDirty = true;
112
- }
113
- if (bundle.$deps$) {
114
- seen ||= /* @__PURE__ */ new Set();
115
- seen.add(bundle);
116
- const probability = 1 - bundle.$inverseProbability$;
117
- for (const dep of bundle.$deps$) {
118
- const depBundle = getBundle(dep.$name$);
119
- if (depBundle.$inverseProbability$ === 0) {
120
- continue;
121
- }
122
- let newInverseProbability2;
123
- if (dep.$importProbability$ > 0.5 && (probability === 1 || probability >= 0.99 && depsCount < 100)) {
124
- depsCount++;
125
- newInverseProbability2 = Math.min(0.01, 1 - dep.$importProbability$);
126
- } else {
127
- const newInverseImportProbability = 1 - dep.$importProbability$ * probability;
128
- const prevAdjust = dep.$factor$;
129
- const factor = newInverseImportProbability / prevAdjust;
130
- newInverseProbability2 = Math.max(0.02, depBundle.$inverseProbability$ * factor);
131
- dep.$factor$ = factor;
132
- }
133
- adjustProbabilities(depBundle, newInverseProbability2, seen);
134
- }
135
- }
136
- };
137
- const handleBundle = (name, inverseProbability) => {
138
- const bundle = getBundle(name);
139
- if (bundle && bundle.$inverseProbability$ > inverseProbability) {
140
- adjustProbabilities(bundle, inverseProbability);
141
- }
142
- };
143
- let depsCount;
144
- const preload = (name, probability) => {
145
- if (!name?.length) {
146
- return;
147
- }
148
- depsCount = 0;
149
- let inverseProbability = probability ? 1 - probability : 0.4;
150
- if (Array.isArray(name)) {
151
- for (let i = name.length - 1; i >= 0; i--) {
152
- const item = name[i];
153
- if (typeof item === "number") {
154
- inverseProbability = 1 - item / 10;
155
- } else {
156
- handleBundle(item, inverseProbability);
157
- }
158
- }
159
- } else {
160
- handleBundle(name, inverseProbability);
161
- }
162
- if (build.isBrowser) {
163
- trigger();
164
- }
165
- };
166
- if (build.isBrowser) {
167
- document.addEventListener("qsymbol", (ev) => {
168
- const { symbol, href } = ev.detail;
169
- if (href) {
170
- const hash = symbol.slice(symbol.lastIndexOf("_") + 1);
171
- preload(hash, 1);
172
- }
173
- });
174
- }
175
- let base;
176
- let graph;
177
- const makeBundle = (name, deps) => {
178
- return {
179
- $name$: name,
180
- $state$: isJSRegex.test(name) ? BundleImportState_None : BundleImportState_Alias,
181
- $deps$: deps,
182
- $inverseProbability$: 1,
183
- $createdTs$: Date.now(),
184
- $waitedMs$: 0,
185
- $loadedMs$: 0
186
- };
187
- };
188
- const parseBundleGraph = (serialized) => {
189
- const graph2 = /* @__PURE__ */ new Map();
190
- let i = 0;
191
- while (i < serialized.length) {
192
- const name = serialized[i++];
193
- const deps = [];
194
- let idx;
195
- let probability = 1;
196
- while (idx = serialized[i], typeof idx === "number") {
197
- if (idx < 0) {
198
- probability = -idx / 10;
199
- } else {
200
- deps.push({
201
- $name$: serialized[idx],
202
- $importProbability$: probability,
203
- $factor$: 1
204
- });
205
- }
206
- i++;
207
- }
208
- graph2.set(name, deps);
209
- }
210
- return graph2;
211
- };
212
- const getBundle = (name) => {
213
- let bundle = bundles.get(name);
214
- if (!bundle) {
215
- let deps;
216
- if (graph) {
217
- deps = graph.get(name);
218
- if (!deps) {
219
- return;
220
- }
221
- if (!deps.length) {
222
- deps = void 0;
223
- }
224
- }
225
- bundle = makeBundle(name, deps);
226
- bundles.set(name, bundle);
227
- }
228
- return bundle;
229
- };
230
- const loadBundleGraph = (basePath, serializedResponse, opts) => {
231
- if (opts) {
232
- if ("d" in opts) {
233
- config.$DEBUG$ = !!opts.d;
234
- }
235
- if ("P" in opts) {
236
- config.$maxIdlePreloads$ = opts["P"];
237
- }
238
- if ("Q" in opts) {
239
- config.$invPreloadProbability$ = 1 - opts["Q"];
240
- }
241
- }
242
- if (!build.isBrowser || basePath == null) {
243
- return;
244
- }
245
- base = basePath;
246
- if (serializedResponse) {
247
- serializedResponse.then((r) => r.text()).then((text) => {
248
- graph = parseBundleGraph(JSON.parse(text));
249
- const toAdjust = [];
250
- for (const [name, deps] of graph.entries()) {
251
- const bundle = getBundle(name);
252
- bundle.$deps$ = deps;
253
- if (bundle.$inverseProbability$ < 1) {
254
- toAdjust.push([bundle, bundle.$inverseProbability$]);
255
- bundle.$inverseProbability$ = 1;
256
- }
257
- }
258
- config.$DEBUG$ && log(`parseBundleGraph got ${graph.size} bundles, adjusting ${toAdjust.length}`);
259
- for (const [bundle, inverseProbability] of toAdjust) {
260
- adjustProbabilities(bundle, inverseProbability);
261
- }
262
- trigger();
263
- }).catch(console.warn);
264
- }
265
- };
266
- exports.g = parseBundleGraph;
267
- exports.h = handleBundle;
268
- exports.l = loadBundleGraph;
269
- exports.p = preload;