strapi-typed-client 1.6.1 → 2.0.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.
Files changed (67) hide show
  1. package/README.md +2 -2
  2. package/dist/cli/commands/check.d.ts +2 -3
  3. package/dist/cli/commands/check.d.ts.map +1 -1
  4. package/dist/cli/commands/check.js +3 -3
  5. package/dist/cli/commands/check.js.map +1 -1
  6. package/dist/cli/commands/generate.d.ts +2 -3
  7. package/dist/cli/commands/generate.d.ts.map +1 -1
  8. package/dist/cli/commands/generate.js +3 -3
  9. package/dist/cli/commands/generate.js.map +1 -1
  10. package/dist/cli/commands/watch.d.ts +2 -3
  11. package/dist/cli/commands/watch.d.ts.map +1 -1
  12. package/dist/cli/commands/watch.js +15 -9
  13. package/dist/cli/commands/watch.js.map +1 -1
  14. package/dist/cli/utils/file-writer.d.ts +8 -7
  15. package/dist/cli/utils/file-writer.d.ts.map +1 -1
  16. package/dist/cli/utils/file-writer.js +17 -61
  17. package/dist/cli/utils/file-writer.js.map +1 -1
  18. package/dist/core/endpoint-converter.d.ts +5 -1
  19. package/dist/core/endpoint-converter.d.ts.map +1 -1
  20. package/dist/core/endpoint-converter.js +114 -8
  21. package/dist/core/endpoint-converter.js.map +1 -1
  22. package/dist/generator/auth-api-generator.d.ts +11 -3
  23. package/dist/generator/auth-api-generator.d.ts.map +1 -1
  24. package/dist/generator/auth-api-generator.js +213 -220
  25. package/dist/generator/auth-api-generator.js.map +1 -1
  26. package/dist/generator/client-generator.d.ts +8 -0
  27. package/dist/generator/client-generator.d.ts.map +1 -1
  28. package/dist/generator/client-generator.js +160 -54
  29. package/dist/generator/client-generator.js.map +1 -1
  30. package/dist/generator/custom-api-generator.d.ts +1 -1
  31. package/dist/generator/custom-api-generator.d.ts.map +1 -1
  32. package/dist/generator/custom-api-generator.js +29 -5
  33. package/dist/generator/custom-api-generator.js.map +1 -1
  34. package/dist/generator/index-generator.d.ts.map +1 -1
  35. package/dist/generator/index-generator.js +0 -1
  36. package/dist/generator/index-generator.js.map +1 -1
  37. package/dist/generator/index.d.ts +8 -0
  38. package/dist/generator/index.d.ts.map +1 -1
  39. package/dist/generator/index.js +50 -0
  40. package/dist/generator/index.js.map +1 -1
  41. package/dist/generator/plugin-api-generator.d.ts +2 -0
  42. package/dist/generator/plugin-api-generator.d.ts.map +1 -1
  43. package/dist/generator/plugin-api-generator.js +23 -1
  44. package/dist/generator/plugin-api-generator.js.map +1 -1
  45. package/dist/generator/plugin-registry.d.ts +5 -0
  46. package/dist/generator/plugin-registry.d.ts.map +1 -1
  47. package/dist/generator/plugin-registry.js +2 -1
  48. package/dist/generator/plugin-registry.js.map +1 -1
  49. package/dist/generator/types-generator.d.ts +13 -3
  50. package/dist/generator/types-generator.d.ts.map +1 -1
  51. package/dist/generator/types-generator.js +91 -101
  52. package/dist/generator/types-generator.js.map +1 -1
  53. package/dist/next/index.d.ts +8 -1
  54. package/dist/next/index.d.ts.map +1 -1
  55. package/dist/next/index.js +42 -45
  56. package/dist/next/index.js.map +1 -1
  57. package/dist/schema-types.d.ts +1 -1
  58. package/dist/schema-types.d.ts.map +1 -1
  59. package/dist/shared/client-header.d.ts +19 -0
  60. package/dist/shared/client-header.d.ts.map +1 -0
  61. package/dist/shared/client-header.js +58 -0
  62. package/dist/shared/client-header.js.map +1 -0
  63. package/package.json +9 -14
  64. package/dist/index.d.ts +0 -102
  65. package/dist/index.d.ts.map +0 -1
  66. package/dist/index.js +0 -79
  67. package/dist/index.js.map +0 -1
@@ -4,7 +4,7 @@
4
4
  * Usage in next.config.ts:
5
5
  *
6
6
  * import { withStrapiTypes } from 'strapi-typed-client/next'
7
- * export default withStrapiTypes()(nextConfig)
7
+ * export default withStrapiTypes({ output: './src/strapi', format: 'ts' })(nextConfig)
8
8
  */
9
9
  export interface StrapiTypesConfig {
10
10
  strapiUrl?: string;
@@ -13,5 +13,12 @@ export interface StrapiTypesConfig {
13
13
  format?: 'js' | 'ts';
14
14
  output?: string;
15
15
  }
16
+ /**
17
+ * Resolve the output dir from config. An explicit `output` is required — the
18
+ * generated client is meant to be committed to the consumer's source tree, not
19
+ * written into node_modules (a reinstall would wipe it). Throws an actionable
20
+ * error when `output` is missing.
21
+ */
22
+ export declare function resolveOutputDir(config: StrapiTypesConfig): string;
16
23
  export declare function withStrapiTypes(config?: StrapiTypesConfig): <T>(nextConfig: T) => T;
17
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AAoQD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,iBAAiB,IAC9C,CAAC,EAAE,YAAY,CAAC,KAAG,CAAC,CAgB/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AASD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CASlE;AAuOD,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,iBAAiB,IAC9C,CAAC,EAAE,YAAY,CAAC,KAAG,CAAC,CA6B/B"}
@@ -4,58 +4,32 @@
4
4
  * Usage in next.config.ts:
5
5
  *
6
6
  * import { withStrapiTypes } from 'strapi-typed-client/next'
7
- * export default withStrapiTypes()(nextConfig)
7
+ * export default withStrapiTypes({ output: './src/strapi', format: 'ts' })(nextConfig)
8
8
  */
9
9
  import { execFileSync } from 'child_process';
10
10
  import * as fs from 'fs';
11
11
  import { createRequire } from 'module';
12
12
  import * as path from 'path';
13
+ import { readClientHeaderConst } from '../shared/client-header.js';
14
+ import { getGeneratorVersion } from '../shared/version.js';
13
15
  const _require = createRequire(import.meta.url);
14
16
  function getPackageDir() {
15
17
  const pkgJsonPath = _require.resolve('strapi-typed-client/package.json');
16
18
  return path.dirname(pkgJsonPath);
17
19
  }
18
- function defaultOutputDir() {
19
- return path.join(getPackageDir(), 'dist');
20
- }
21
- function resolveOutputDir(config) {
22
- return config.output
23
- ? path.resolve(process.cwd(), config.output)
24
- : defaultOutputDir();
25
- }
26
20
  /**
27
- * Read schema hash baked at the top of the generated client. Slices the
28
- * first few hundred bytes so we don't load the full client just to compare
29
- * hashes. Tries client.ts (raw, .ts mode) then client.js (compiled, .js mode).
21
+ * Resolve the output dir from config. An explicit `output` is required the
22
+ * generated client is meant to be committed to the consumer's source tree, not
23
+ * written into node_modules (a reinstall would wipe it). Throws an actionable
24
+ * error when `output` is missing.
30
25
  */
31
- function readLocalHash(outputDir) {
32
- for (const file of ['client.ts', 'client.js']) {
33
- const p = path.join(outputDir, file);
34
- let fd;
35
- try {
36
- fd = fs.openSync(p, 'r');
37
- const buf = Buffer.alloc(300);
38
- const read = fs.readSync(fd, buf, 0, 300, 0);
39
- const head = buf.slice(0, read).toString('utf-8');
40
- const match = head.match(/SCHEMA_HASH\s*=\s*['"]([^'"]+)['"]/);
41
- if (match)
42
- return match[1];
43
- }
44
- catch {
45
- /* try next candidate */
46
- }
47
- finally {
48
- if (fd !== undefined) {
49
- try {
50
- fs.closeSync(fd);
51
- }
52
- catch {
53
- /* ignore */
54
- }
55
- }
56
- }
26
+ export function resolveOutputDir(config) {
27
+ if (!config.output || !config.output.trim()) {
28
+ throw new Error('[strapi-typed-client] withStrapiTypes requires an `output` directory.\n' +
29
+ "Point it at your source tree, e.g. withStrapiTypes({ output: './src/strapi', format: 'ts' }).\n" +
30
+ 'Generated code is meant to be committed to your repo, not written into node_modules.');
57
31
  }
58
- return null;
32
+ return path.resolve(process.cwd(), config.output.trim());
59
33
  }
60
34
  function generatedFilesExist(outputDir, format) {
61
35
  const files = format === 'ts'
@@ -103,8 +77,21 @@ async function startDevWatch(config) {
103
77
  const { generate } = await import('../cli/commands/generate.js');
104
78
  const { SseConnection } = await import('../shared/sse-client.js');
105
79
  const client = createApiClient({ url, token });
106
- let lastHash = generatedFilesExist(outputDir, format)
107
- ? readLocalHash(outputDir)
80
+ // Force a one-time regen if the committed client was produced by a
81
+ // different generator version (e.g. the package was upgraded). Its schema
82
+ // hash may still match the remote, but the OUTPUT shape can be stale — the
83
+ // bare CLI generate/check path version-checks via isGeneratedOutputFresh,
84
+ // and the dev watcher must do the same or upgraders silently keep old types.
85
+ const localVersion = readClientHeaderConst(outputDir, 'GENERATOR_VERSION');
86
+ const installedVersion = getGeneratorVersion();
87
+ const versionStale = !!localVersion &&
88
+ !!installedVersion &&
89
+ localVersion !== installedVersion;
90
+ if (versionStale) {
91
+ info(silent, `Generator updated (v${localVersion} → v${installedVersion}); regenerating types`);
92
+ }
93
+ let lastHash = !versionStale && generatedFilesExist(outputDir, format)
94
+ ? readClientHeaderConst(outputDir, 'SCHEMA_HASH')
108
95
  : null;
109
96
  let generating = false;
110
97
  info(silent, `Watching for schema changes ${dim('(SSE)')}`);
@@ -242,13 +229,23 @@ function isMainNextProcess() {
242
229
  export function withStrapiTypes(config) {
243
230
  return (nextConfig) => {
244
231
  const cfg = config ?? {};
245
- if (process.env.NODE_ENV === 'development' && isMainNextProcess()) {
246
- // next dev — SSE watcher (only one process via PID lock)
232
+ const isDev = process.env.NODE_ENV === 'development' && isMainNextProcess();
233
+ const isBuild = process.argv.includes('build');
234
+ // Generating modes need an explicit `output`; validate synchronously
235
+ // here so a missing config fails fast and clearly during next.config
236
+ // evaluation, rather than as an unhandled rejection inside the watcher.
237
+ if (isDev || isBuild) {
238
+ resolveOutputDir(cfg);
239
+ }
240
+ if (isDev) {
241
+ // next dev — SSE watcher (only one process via PID lock).
242
+ // Fire-and-forget: surface any async failure cleanly instead of as
243
+ // an unhandled rejection.
247
244
  if (acquireWatchLock()) {
248
- startDevWatch(cfg);
245
+ startDevWatch(cfg).catch(err => fail(err.message));
249
246
  }
250
247
  }
251
- else if (process.argv.includes('build')) {
248
+ else if (isBuild) {
252
249
  // next build — one-time sync generation
253
250
  runBuildGenerate(cfg);
254
251
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"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"}
@@ -57,7 +57,7 @@ export interface Attribute {
57
57
  type: AttributeType;
58
58
  required: boolean;
59
59
  unique?: boolean;
60
- defaultValue?: any;
60
+ defaultValue?: unknown;
61
61
  constraints?: AttributeConstraints;
62
62
  }
63
63
  export interface AttributeConstraints {
@@ -1 +1 @@
1
- {"version":3,"file":"schema-types.d.ts","sourceRoot":"","sources":["../src/schema-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-types.d.ts","sourceRoot":"","sources":["../src/schema-types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IACzB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,UAAU,EAAE,SAAS,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,SAAS,EAAE,QAAQ,EAAE,CAAA;IACrB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,UAAU,EAAE,cAAc,EAAE,CAAA;IAC5B,YAAY,EAAE,gBAAgB,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,SAAS,EAAE,QAAQ,EAAE,CAAA;IACrB,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,UAAU,EAAE,cAAc,EAAE,CAAA;IAC5B,YAAY,EAAE,gBAAgB,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,CAAA;IACnE,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,aAAa,CAAA;IACnB,QAAQ,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACrC;AAGD,MAAM,WAAW,oBAAoB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,aAAa,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAC7C;IACI,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,CAAA;IACnE,MAAM,EAAE,MAAM,CAAA;CACjB,CAAA"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Read a constant baked into the generated client header — SCHEMA_HASH and
3
+ * GENERATOR_VERSION are emitted as the first exports of client.ts/client.js, so
4
+ * reading the file head is enough and avoids parsing the whole client.
5
+ *
6
+ * Node-only (uses `fs`). Shared by the CLI file-writer and the Next.js plugin
7
+ * so the two readers can't drift. Do NOT re-export from the shared barrel —
8
+ * keep `fs` out of any browser bundle (same rule as `shared/version`).
9
+ *
10
+ * @module shared/client-header
11
+ */
12
+ /**
13
+ * Read a `export const <NAME> = '<value>'` baked into the generated client
14
+ * header. Tries client.ts (raw, .ts mode) first, then client.js (compiled, .js
15
+ * mode). Returns null when not generated or the constant is absent (e.g. a
16
+ * client produced before that constant was stamped).
17
+ */
18
+ export declare function readClientHeaderConst(outputDir: string, name: string): string | null;
19
+ //# sourceMappingURL=client-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-header.d.ts","sourceRoot":"","sources":["../../src/shared/client-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8BH;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACjC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CASf"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Read a constant baked into the generated client header — SCHEMA_HASH and
3
+ * GENERATOR_VERSION are emitted as the first exports of client.ts/client.js, so
4
+ * reading the file head is enough and avoids parsing the whole client.
5
+ *
6
+ * Node-only (uses `fs`). Shared by the CLI file-writer and the Next.js plugin
7
+ * so the two readers can't drift. Do NOT re-export from the shared barrel —
8
+ * keep `fs` out of any browser bundle (same rule as `shared/version`).
9
+ *
10
+ * @module shared/client-header
11
+ */
12
+ import * as fs from 'fs';
13
+ import * as path from 'path';
14
+ const HEADER_HEAD_BYTES = 512;
15
+ /**
16
+ * Read the first N bytes of a file without loading the whole thing.
17
+ */
18
+ function readFileHead(filePath, bytes) {
19
+ let fd;
20
+ try {
21
+ fd = fs.openSync(filePath, 'r');
22
+ const buf = Buffer.alloc(bytes);
23
+ const read = fs.readSync(fd, buf, 0, bytes, 0);
24
+ return buf.subarray(0, read).toString('utf-8');
25
+ }
26
+ catch {
27
+ return null;
28
+ }
29
+ finally {
30
+ if (fd !== undefined) {
31
+ try {
32
+ fs.closeSync(fd);
33
+ }
34
+ catch {
35
+ /* ignore */
36
+ }
37
+ }
38
+ }
39
+ }
40
+ /**
41
+ * Read a `export const <NAME> = '<value>'` baked into the generated client
42
+ * header. Tries client.ts (raw, .ts mode) first, then client.js (compiled, .js
43
+ * mode). Returns null when not generated or the constant is absent (e.g. a
44
+ * client produced before that constant was stamped).
45
+ */
46
+ export function readClientHeaderConst(outputDir, name) {
47
+ const re = new RegExp(`${name}\\s*=\\s*['"]([^'"]*)['"]`);
48
+ for (const file of ['client.ts', 'client.js']) {
49
+ const head = readFileHead(path.join(outputDir, file), HEADER_HEAD_BYTES);
50
+ if (!head)
51
+ continue;
52
+ const match = head.match(re);
53
+ if (match)
54
+ return match[1];
55
+ }
56
+ return null;
57
+ }
58
+ //# sourceMappingURL=client-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-header.js","sourceRoot":"","sources":["../../src/shared/client-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAE5B,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAE7B;;GAEG;AACH,SAAS,YAAY,CAAC,QAAgB,EAAE,KAAa;IACjD,IAAI,EAAsB,CAAA;IAC1B,IAAI,CAAC;QACD,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QAC9C,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAClD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAA;IACf,CAAC;YAAS,CAAC;QACP,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC;gBACD,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACpB,CAAC;YAAC,MAAM,CAAC;gBACL,YAAY;YAChB,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACjC,SAAiB,EACjB,IAAY;IAEZ,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,2BAA2B,CAAC,CAAA;IACzD,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,iBAAiB,CAAC,CAAA;QACxE,IAAI,CAAC,IAAI;YAAE,SAAQ;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC5B,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,8 @@
1
1
  {
2
2
  "name": "strapi-typed-client",
3
- "version": "1.6.1",
3
+ "version": "2.0.0",
4
4
  "type": "module",
5
5
  "description": "Type-safe Strapi v5 client with automatic TypeScript codegen and populate type inference",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
6
  "bin": {
9
7
  "strapi-types": "./dist/cli/index.js"
10
8
  },
@@ -42,11 +40,6 @@
42
40
  ]
43
41
  },
44
42
  "exports": {
45
- ".": {
46
- "types": "./dist/index.d.ts",
47
- "import": "./dist/index.js",
48
- "default": "./dist/index.js"
49
- },
50
43
  "./plugin": {
51
44
  "types": "./dist/plugin/index.d.ts",
52
45
  "import": "./dist/plugin/index.js",
@@ -111,14 +104,12 @@
111
104
  "@strapi/design-system": "^2.0.0",
112
105
  "@strapi/icons": "^2.0.0",
113
106
  "@types/node": "^25.6.0",
114
- "@types/qs": "^6.14.0",
115
107
  "@types/react": "^18.0.0",
116
108
  "@types/react-dom": "^18.0.0",
117
109
  "eslint": "^10.0.0",
118
110
  "husky": "^9.1.7",
119
111
  "lint-staged": "^16.2.7",
120
112
  "prettier": "^3.0.0",
121
- "qs": "^6.14.2",
122
113
  "react": "^18.0.0",
123
114
  "react-dom": "^18.0.0",
124
115
  "styled-components": "^6.0.0",
@@ -127,7 +118,7 @@
127
118
  "typescript-eslint": "^8.55.0",
128
119
  "vitepress": "^1.6.4",
129
120
  "vitepress-plugin-llms": "^1.11.0",
130
- "vitest": "^3.2.0"
121
+ "vitest": "^4.1.9"
131
122
  },
132
123
  "peerDependencies": {
133
124
  "@strapi/design-system": "^2.0.0",
@@ -150,14 +141,18 @@
150
141
  }
151
142
  },
152
143
  "engines": {
153
- "node": ">=18.0.0"
144
+ "node": ">=22.0.0"
154
145
  },
155
146
  "resolutions": {
156
- "esbuild": ">=0.25.0",
147
+ "brace-expansion": ">=5.0.6",
148
+ "esbuild": ">=0.28.1",
157
149
  "flatted": ">=3.4.2",
158
150
  "lodash": ">=4.17.23",
159
151
  "minimatch": ">=10.2.3",
160
- "rollup": ">=4.59.0"
152
+ "picomatch": ">=4.0.4",
153
+ "postcss": ">=8.5.10",
154
+ "rollup": ">=4.59.0",
155
+ "vite": ">=7.3.2"
161
156
  },
162
157
  "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
163
158
  }
package/dist/index.d.ts DELETED
@@ -1,102 +0,0 @@
1
- /**
2
- * A single validation issue inside a `ValidationError`.
3
- * Mirrors the Yup-style errors Strapi propagates from schema validation.
4
- */
5
- export interface StrapiValidationIssue {
6
- path: string[];
7
- message: string;
8
- name: string;
9
- }
10
- /**
11
- * Known Strapi v5 error names. Other strings still pass through at
12
- * runtime (for plugin or future-version errors) via the `(string & {})`
13
- * fallback.
14
- */
15
- export type StrapiErrorName = 'ValidationError' | 'BadRequestError' | 'PaginationError' | 'UnauthorizedError' | 'ForbiddenError' | 'PolicyError' | 'NotFoundError' | 'ConflictError' | 'PayloadTooLargeError' | 'RateLimitError' | 'ApplicationError' | (string & {});
16
- /**
17
- * Maps each known `StrapiErrorName` to its `details` payload shape.
18
- * Used by `isStrapiErrorOf` to narrow `details` after the discriminator
19
- * check. Wrapped in `Partial` because Strapi may omit `details` even
20
- * when the error name is known.
21
- */
22
- export type StrapiErrorDetailsMap = Partial<{
23
- ValidationError: {
24
- errors: StrapiValidationIssue[];
25
- };
26
- BadRequestError: Record<string, unknown>;
27
- PaginationError: Record<string, unknown>;
28
- UnauthorizedError: undefined;
29
- ForbiddenError: undefined;
30
- PolicyError: {
31
- policy?: string;
32
- message?: string;
33
- };
34
- NotFoundError: undefined;
35
- ConflictError: Record<string, unknown>;
36
- PayloadTooLargeError: undefined;
37
- RateLimitError: Record<string, unknown>;
38
- ApplicationError: Record<string, unknown>;
39
- }>;
40
- /**
41
- * Fallback shape when `errorName` is not in `StrapiErrorDetailsMap`
42
- * (e.g. 3rd-party plugin errors or Strapi versions newer than this client).
43
- */
44
- export interface UnknownStrapiErrorDetails {
45
- errorName: string;
46
- details?: Record<string, unknown>;
47
- }
48
- /**
49
- * Error thrown for non-2xx responses from Strapi. Use `isStrapiErrorOf`
50
- * to narrow `details` to its typed shape.
51
- *
52
- * @example
53
- * try { await strapi.articles.create({ title: '' }) }
54
- * catch (e) {
55
- * if (isStrapiErrorOf(e, 'ValidationError')) {
56
- * for (const issue of e.details?.errors ?? []) {
57
- * console.log(issue.path.join('.'), issue.message)
58
- * }
59
- * }
60
- * }
61
- */
62
- export declare class StrapiError extends Error {
63
- userMessage: string;
64
- status: number;
65
- statusText: string;
66
- /**
67
- * Strapi-side error name (e.g. "ValidationError"). `Error.name`
68
- * itself remains "StrapiError" so Sentry/sourcemap contracts are
69
- * unchanged.
70
- */
71
- errorName: StrapiErrorName;
72
- /** Narrow via `isStrapiErrorOf` for typed access. */
73
- details?: unknown;
74
- constructor(message: string, userMessage: string, status: number, statusText: string, details?: unknown, errorName?: StrapiErrorName);
75
- }
76
- export declare class StrapiConnectionError extends Error {
77
- url: string;
78
- cause?: Error;
79
- constructor(message: string, url: string, cause?: Error);
80
- }
81
- /** Type guard: is the value a StrapiError instance? */
82
- export declare function isStrapiError(err: unknown): err is StrapiError;
83
- /**
84
- * Type guard that narrows both `errorName` and `details` for a specific
85
- * Strapi error type.
86
- *
87
- * @example
88
- * if (isStrapiErrorOf(err, 'ValidationError')) {
89
- * err.details?.errors?.[0]?.path // string[] | undefined
90
- * }
91
- */
92
- export declare function isStrapiErrorOf<N extends keyof StrapiErrorDetailsMap>(err: unknown, name: N): err is StrapiError & {
93
- errorName: N;
94
- details: StrapiErrorDetailsMap[N];
95
- };
96
- export declare class StrapiClient {
97
- constructor(_config: {
98
- baseURL: string;
99
- token?: string;
100
- });
101
- }
102
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACrB,iBAAiB,GACjB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,gBAAgB,GAChB,aAAa,GACb,eAAe,GACf,eAAe,GACf,sBAAsB,GACtB,gBAAgB,GAChB,kBAAkB,GAClB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnB;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC;IACxC,eAAe,EAAE;QAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;KAAE,CAAA;IACpD,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,iBAAiB,EAAE,SAAS,CAAA;IAC5B,cAAc,EAAE,SAAS,CAAA;IACzB,WAAW,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAClD,aAAa,EAAE,SAAS,CAAA;IACxB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,oBAAoB,EAAE,SAAS,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC5C,CAAC,CAAA;AAEF;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,WAAY,SAAQ,KAAK;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB;;;;OAIG;IACH,SAAS,EAAE,eAAe,CAAA;IAC1B,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAA;gBAGb,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,OAAO,EACjB,SAAS,GAAE,eAAgC;CAUlD;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAA;gBAED,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAM1D;AAED,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,WAAW,CAE9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,qBAAqB,EACjE,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,CAAC,GACR,GAAG,IAAI,WAAW,GAAG;IACpB,SAAS,EAAE,CAAC,CAAA;IACZ,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAA;CACpC,CAEA;AAED,qBAAa,YAAY;gBACT,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;CAG3D"}
package/dist/index.js DELETED
@@ -1,79 +0,0 @@
1
- // Stub file — compiled to dist/index.js by `tsc`.
2
- // When the user runs `npx strapi-types generate`, the generator overwrites
3
- // dist/index.js (and .d.ts) with real, schema-aware code.
4
- // Until then this stub provides importable symbols that throw at runtime
5
- // with a helpful message explaining what to do.
6
- //
7
- // IMPORTANT: keep this file in lockstep with what the generator emits in
8
- // `src/generator/client-generator.ts`. Pre-generation imports must compile.
9
- const NOT_GENERATED_MESSAGE = '[strapi-typed-client] Types have not been generated yet.\n' +
10
- 'Run: npx strapi-types generate --url <your-strapi-url>\n' +
11
- 'Docs: https://github.com/BoxLab-Ltd/strapi-typed-client#quick-start';
12
- /**
13
- * Error thrown for non-2xx responses from Strapi. Use `isStrapiErrorOf`
14
- * to narrow `details` to its typed shape.
15
- *
16
- * @example
17
- * try { await strapi.articles.create({ title: '' }) }
18
- * catch (e) {
19
- * if (isStrapiErrorOf(e, 'ValidationError')) {
20
- * for (const issue of e.details?.errors ?? []) {
21
- * console.log(issue.path.join('.'), issue.message)
22
- * }
23
- * }
24
- * }
25
- */
26
- export class StrapiError extends Error {
27
- userMessage;
28
- status;
29
- statusText;
30
- /**
31
- * Strapi-side error name (e.g. "ValidationError"). `Error.name`
32
- * itself remains "StrapiError" so Sentry/sourcemap contracts are
33
- * unchanged.
34
- */
35
- errorName;
36
- /** Narrow via `isStrapiErrorOf` for typed access. */
37
- details;
38
- constructor(message, userMessage, status, statusText, details, errorName = 'UnknownError') {
39
- super(message);
40
- this.name = 'StrapiError';
41
- this.userMessage = userMessage;
42
- this.status = status;
43
- this.statusText = statusText;
44
- this.errorName = errorName;
45
- this.details = details;
46
- }
47
- }
48
- export class StrapiConnectionError extends Error {
49
- url;
50
- cause;
51
- constructor(message, url, cause) {
52
- super(message);
53
- this.name = 'StrapiConnectionError';
54
- this.url = url;
55
- this.cause = cause;
56
- }
57
- }
58
- /** Type guard: is the value a StrapiError instance? */
59
- export function isStrapiError(err) {
60
- return err instanceof StrapiError;
61
- }
62
- /**
63
- * Type guard that narrows both `errorName` and `details` for a specific
64
- * Strapi error type.
65
- *
66
- * @example
67
- * if (isStrapiErrorOf(err, 'ValidationError')) {
68
- * err.details?.errors?.[0]?.path // string[] | undefined
69
- * }
70
- */
71
- export function isStrapiErrorOf(err, name) {
72
- return isStrapiError(err) && err.errorName === name;
73
- }
74
- export class StrapiClient {
75
- constructor(_config) {
76
- throw new Error(NOT_GENERATED_MESSAGE);
77
- }
78
- }
79
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,2EAA2E;AAC3E,0DAA0D;AAC1D,yEAAyE;AACzE,gDAAgD;AAChD,EAAE;AACF,yEAAyE;AACzE,4EAA4E;AAE5E,MAAM,qBAAqB,GACvB,4DAA4D;IAC5D,0DAA0D;IAC1D,qEAAqE,CAAA;AA4DzE;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAClC,WAAW,CAAQ;IACnB,MAAM,CAAQ;IACd,UAAU,CAAQ;IAClB;;;;OAIG;IACH,SAAS,CAAiB;IAC1B,qDAAqD;IACrD,OAAO,CAAU;IAEjB,YACI,OAAe,EACf,WAAmB,EACnB,MAAc,EACd,UAAkB,EAClB,OAAiB,EACjB,YAA6B,cAAc;QAE3C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,aAAa,CAAA;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;CACJ;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC5C,GAAG,CAAQ;IACX,KAAK,CAAQ;IAEb,YAAY,OAAe,EAAE,GAAW,EAAE,KAAa;QACnD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;QACnC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,CAAC;CACJ;AAED,uDAAuD;AACvD,MAAM,UAAU,aAAa,CAAC,GAAY;IACtC,OAAO,GAAG,YAAY,WAAW,CAAA;AACrC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC3B,GAAY,EACZ,IAAO;IAKP,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,CAAA;AACvD,CAAC;AAED,MAAM,OAAO,YAAY;IACrB,YAAY,OAA4C;QACpD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;IAC1C,CAAC;CACJ"}