@platformatic/vite 3.19.0 → 3.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/config.d.ts CHANGED
@@ -231,6 +231,7 @@ export interface PlatformaticViteConfig {
231
231
  maxHeapUsed?: number | string;
232
232
  maxHeapTotal?: number | string;
233
233
  maxYoungGeneration?: number | string;
234
+ codeRangeSize?: number | string;
234
235
  };
235
236
  undici?: {
236
237
  agentOptions?: {
@@ -530,5 +531,14 @@ export interface PlatformaticViteConfig {
530
531
  serverDirectory?: string;
531
532
  }
532
533
  | boolean;
534
+ notFoundHandler?:
535
+ | boolean
536
+ | string
537
+ | {
538
+ enabled?: boolean;
539
+ path?: string;
540
+ contentType?: string;
541
+ statusCode?: number;
542
+ };
533
543
  };
534
544
  }
package/index.js CHANGED
@@ -18,6 +18,29 @@ export async function transform (config, schema, options) {
18
18
  }
19
19
  }
20
20
 
21
+ if (typeof config.vite.notFoundHandler !== 'undefined') {
22
+ let enabled = false
23
+ let path = 'index.html'
24
+ let statusCode = 200
25
+ let contentType = 'text/html; charset=utf-8'
26
+
27
+ if (typeof config.vite.notFoundHandler === 'boolean') {
28
+ enabled = config.vite.notFoundHandler
29
+ } else if (typeof config.vite.notFoundHandler === 'string') {
30
+ enabled = true
31
+ path = config.vite.notFoundHandler
32
+ } else {
33
+ enabled = config.vite.notFoundHandler.enabled ?? false
34
+ path = config.vite.notFoundHandler.path ?? path
35
+ statusCode = config.vite.notFoundHandler.statusCode ?? statusCode
36
+ contentType = config.vite.notFoundHandler.contentType ?? contentType
37
+ }
38
+
39
+ config.vite.notFoundHandler = { enabled, path, statusCode, contentType }
40
+ } else {
41
+ config.vite.notFoundHandler = { enabled: false }
42
+ }
43
+
21
44
  return config
22
45
  }
23
46
 
package/lib/capability.js CHANGED
@@ -265,6 +265,14 @@ export class ViteCapability extends BaseCapability {
265
265
  schemaHide: true
266
266
  })
267
267
 
268
+ if (config.vite.notFoundHandler?.enabled) {
269
+ const { statusCode, contentType, path } = config.vite.notFoundHandler
270
+
271
+ this.#app.setNotFoundHandler((_, reply) => {
272
+ return reply.code(statusCode).type(contentType).sendFile(path, { contentType: false })
273
+ })
274
+ }
275
+
268
276
  await this.#app.ready()
269
277
  }
270
278
  }
package/lib/schema.js CHANGED
@@ -26,7 +26,7 @@ const vite = {
26
26
  default: {}
27
27
  },
28
28
  ssr: {
29
- oneOf: [
29
+ anyOf: [
30
30
  {
31
31
  type: 'object',
32
32
  properties: {
@@ -41,6 +41,23 @@ const vite = {
41
41
  { type: 'boolean' }
42
42
  ],
43
43
  default: false
44
+ },
45
+ notFoundHandler: {
46
+ anyOf: [
47
+ { type: 'boolean' },
48
+ { type: 'string' },
49
+ {
50
+ type: 'object',
51
+ properties: {
52
+ enabled: { type: 'boolean' },
53
+ path: { type: 'string', default: 'index.html' },
54
+ contentType: { type: 'string', default: 'text/html; charset=utf-8' },
55
+ statusCode: { type: 'number', default: 200 }
56
+ },
57
+ additionalProperties: false
58
+ }
59
+ ],
60
+ default: false
44
61
  }
45
62
  },
46
63
  default: {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platformatic/vite",
3
- "version": "3.19.0",
3
+ "version": "3.20.0",
4
4
  "description": "Platformatic Vite Capability",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -18,9 +18,9 @@
18
18
  "@fastify/static": "^8.0.0",
19
19
  "fastify": "^5.0.0",
20
20
  "semver": "^7.6.3",
21
- "@platformatic/basic": "3.19.0",
22
- "@platformatic/foundation": "3.19.0",
23
- "@platformatic/node": "3.19.0"
21
+ "@platformatic/basic": "3.20.0",
22
+ "@platformatic/foundation": "3.20.0",
23
+ "@platformatic/node": "3.20.0"
24
24
  },
25
25
  "devDependencies": {
26
26
  "cleaner-spec-reporter": "^0.5.0",
@@ -32,8 +32,8 @@
32
32
  "typescript": "^5.5.4",
33
33
  "vite": "^7.1.4",
34
34
  "ws": "^8.18.0",
35
- "@platformatic/gateway": "3.19.0",
36
- "@platformatic/service": "3.19.0"
35
+ "@platformatic/gateway": "3.20.0",
36
+ "@platformatic/service": "3.20.0"
37
37
  },
38
38
  "engines": {
39
39
  "node": ">=22.19.0"
package/schema.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "$id": "https://schemas.platformatic.dev/@platformatic/vite/3.19.0.json",
2
+ "$id": "https://schemas.platformatic.dev/@platformatic/vite/3.20.0.json",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
4
  "title": "Platformatic Vite Config",
5
5
  "type": "object",
@@ -549,6 +549,17 @@
549
549
  "type": "string"
550
550
  }
551
551
  ]
552
+ },
553
+ "codeRangeSize": {
554
+ "anyOf": [
555
+ {
556
+ "type": "number",
557
+ "minimum": 0
558
+ },
559
+ {
560
+ "type": "string"
561
+ }
562
+ ]
552
563
  }
553
564
  },
554
565
  "additionalProperties": false
@@ -1142,7 +1153,8 @@
1142
1153
  {
1143
1154
  "type": "string"
1144
1155
  }
1145
- ]
1156
+ ],
1157
+ "default": 4294967296
1146
1158
  },
1147
1159
  "maxYoungGeneration": {
1148
1160
  "anyOf": [
@@ -1153,7 +1165,20 @@
1153
1165
  {
1154
1166
  "type": "string"
1155
1167
  }
1156
- ]
1168
+ ],
1169
+ "default": 134217728
1170
+ },
1171
+ "codeRangeSize": {
1172
+ "anyOf": [
1173
+ {
1174
+ "type": "number",
1175
+ "minimum": 0
1176
+ },
1177
+ {
1178
+ "type": "string"
1179
+ }
1180
+ ],
1181
+ "default": 268435456
1157
1182
  }
1158
1183
  },
1159
1184
  "additionalProperties": false
@@ -1923,7 +1948,7 @@
1923
1948
  "default": {}
1924
1949
  },
1925
1950
  "ssr": {
1926
- "oneOf": [
1951
+ "anyOf": [
1927
1952
  {
1928
1953
  "type": "object",
1929
1954
  "properties": {
@@ -1953,6 +1978,38 @@
1953
1978
  }
1954
1979
  ],
1955
1980
  "default": false
1981
+ },
1982
+ "notFoundHandler": {
1983
+ "anyOf": [
1984
+ {
1985
+ "type": "boolean"
1986
+ },
1987
+ {
1988
+ "type": "string"
1989
+ },
1990
+ {
1991
+ "type": "object",
1992
+ "properties": {
1993
+ "enabled": {
1994
+ "type": "boolean"
1995
+ },
1996
+ "path": {
1997
+ "type": "string",
1998
+ "default": "index.html"
1999
+ },
2000
+ "contentType": {
2001
+ "type": "string",
2002
+ "default": "text/html; charset=utf-8"
2003
+ },
2004
+ "statusCode": {
2005
+ "type": "number",
2006
+ "default": 200
2007
+ }
2008
+ },
2009
+ "additionalProperties": false
2010
+ }
2011
+ ],
2012
+ "default": false
1956
2013
  }
1957
2014
  },
1958
2015
  "default": {},