@timber-js/app 0.2.0-alpha.119 → 0.2.0-alpha.120

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 (74) hide show
  1. package/LICENSE +8 -0
  2. package/dist/_chunks/{actions-DLijOcMe.js → actions-Cw-7NfJJ.js} +6 -6
  3. package/dist/_chunks/{actions-DLijOcMe.js.map → actions-Cw-7NfJJ.js.map} +1 -1
  4. package/dist/_chunks/{build-output-helper-B226qcTe.js → build-output-helper-DhxiT18k.js} +1 -1
  5. package/dist/_chunks/{build-output-helper-B226qcTe.js.map → build-output-helper-DhxiT18k.js.map} +1 -1
  6. package/dist/_chunks/cli-schema-sync-XV0I47Gj.js +2 -0
  7. package/dist/_chunks/{cli-schema-sync-DFZmnmqG.js → cli-schema-sync-q2wB0DyJ.js} +3 -2
  8. package/dist/_chunks/{cli-schema-sync-DFZmnmqG.js.map → cli-schema-sync-q2wB0DyJ.js.map} +1 -1
  9. package/dist/_chunks/{codec-registry-TNqK8N99.js → codec-registry-V7ARyeLN.js} +1 -1
  10. package/dist/_chunks/{codec-registry-TNqK8N99.js.map → codec-registry-V7ARyeLN.js.map} +1 -1
  11. package/dist/_chunks/{define-BY_dwMyV.js → define-8zQ8Vm7x.js} +3 -3
  12. package/dist/_chunks/{define-BY_dwMyV.js.map → define-8zQ8Vm7x.js.map} +1 -1
  13. package/dist/_chunks/{define-BlFkzZFs.js → define-zQX6e1tN.js} +3 -3
  14. package/dist/_chunks/{define-BlFkzZFs.js.map → define-zQX6e1tN.js.map} +1 -1
  15. package/dist/_chunks/{handler-store-bIAstrxQ.js → handler-store-iqnt2ghN.js} +1 -1
  16. package/dist/_chunks/{handler-store-bIAstrxQ.js.map → handler-store-iqnt2ghN.js.map} +1 -1
  17. package/dist/_chunks/{merge-search-params-Cm1j99HC.js → merge-search-params-CwxJzBLS.js} +1 -1
  18. package/dist/_chunks/{merge-search-params-Cm1j99HC.js.map → merge-search-params-CwxJzBLS.js.map} +1 -1
  19. package/dist/_chunks/{navigation-root-CPKTmf-y.js → navigation-root-DKsJ5Di7.js} +2 -2
  20. package/dist/_chunks/{navigation-root-CPKTmf-y.js.map → navigation-root-DKsJ5Di7.js.map} +1 -1
  21. package/dist/_chunks/{registry-D6-TmNLM.js → registry-Dp_hJL4s.js} +1 -1
  22. package/dist/_chunks/{registry-D6-TmNLM.js.map → registry-Dp_hJL4s.js.map} +1 -1
  23. package/dist/_chunks/{resolve-schema-BxtenpoR.js → resolve-schema-23Mc8aLi.js} +2 -2
  24. package/dist/_chunks/{resolve-schema-BxtenpoR.js.map → resolve-schema-23Mc8aLi.js.map} +1 -1
  25. package/dist/_chunks/{router-ref-115GHAhP.js → router-ref-sektkr-t.js} +2 -2
  26. package/dist/_chunks/{router-ref-115GHAhP.js.map → router-ref-sektkr-t.js.map} +1 -1
  27. package/dist/_chunks/{schema-bridge-o0SwFtXW.js → schema-bridge-eL5vQDSA.js} +1 -1
  28. package/dist/_chunks/{schema-bridge-o0SwFtXW.js.map → schema-bridge-eL5vQDSA.js.map} +1 -1
  29. package/dist/_chunks/{segment-context-BnxoPSFQ.js → segment-context-Bg0pFbLT.js} +1 -1
  30. package/dist/_chunks/{segment-context-BnxoPSFQ.js.map → segment-context-Bg0pFbLT.js.map} +1 -1
  31. package/dist/_chunks/{ssr-data-BP5-JJTi.js → ssr-data-BO5OvEvg.js} +1 -1
  32. package/dist/_chunks/{ssr-data-BP5-JJTi.js.map → ssr-data-BO5OvEvg.js.map} +1 -1
  33. package/dist/_chunks/{stale-reload-DZ_GjtPz.js → stale-reload-BCPRG0Cv.js} +1 -1
  34. package/dist/_chunks/{stale-reload-DZ_GjtPz.js.map → stale-reload-BCPRG0Cv.js.map} +1 -1
  35. package/dist/_chunks/{use-query-states-C0tklghY.js → use-query-states-D9SBlAfp.js} +2 -2
  36. package/dist/_chunks/{use-query-states-C0tklghY.js.map → use-query-states-D9SBlAfp.js.map} +1 -1
  37. package/dist/_chunks/{use-segment-params-6W0l-wqA.js → use-segment-params-CskiK-59.js} +2 -2
  38. package/dist/_chunks/{use-segment-params-6W0l-wqA.js.map → use-segment-params-CskiK-59.js.map} +1 -1
  39. package/dist/_chunks/{validation-AfEFM5ze.js → validation-Bm3Je-09.js} +1 -1
  40. package/dist/_chunks/{validation-AfEFM5ze.js.map → validation-Bm3Je-09.js.map} +1 -1
  41. package/dist/adapters/cloudflare.js +1 -1
  42. package/dist/adapters/nitro.js +1 -1
  43. package/dist/cache/index.js +1 -1
  44. package/dist/cli-schema-sync.d.ts.map +1 -1
  45. package/dist/cli.js +1 -1
  46. package/dist/client/error-boundary.js +2 -2
  47. package/dist/client/index.js +9 -9
  48. package/dist/client/internal.js +7 -7
  49. package/dist/codec.d.ts +1 -1
  50. package/dist/codec.d.ts.map +1 -1
  51. package/dist/codec.js +2 -2
  52. package/dist/codec.js.map +1 -1
  53. package/dist/cookies/index.js +3 -3
  54. package/dist/index.d.ts +0 -3
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +2 -4
  57. package/dist/index.js.map +1 -1
  58. package/dist/params/define-schema.d.ts +2 -1
  59. package/dist/params/define-schema.d.ts.map +1 -1
  60. package/dist/params/index.js +33 -3
  61. package/dist/params/index.js.map +1 -0
  62. package/dist/search-params/index.js +3 -3
  63. package/dist/segment-params/index.js +1 -1
  64. package/dist/server/index.js +1 -1
  65. package/dist/server/internal.js +3 -3
  66. package/package.json +6 -7
  67. package/src/cli-schema-sync.ts +2 -1
  68. package/src/cli.ts +0 -0
  69. package/src/codec.ts +4 -4
  70. package/src/index.ts +1 -9
  71. package/src/params/define-schema.ts +2 -1
  72. package/dist/_chunks/cli-schema-sync-BhXdbmgS.js +0 -2
  73. package/dist/_chunks/define-schema-CfEb8LSg.js +0 -31
  74. package/dist/_chunks/define-schema-CfEb8LSg.js.map +0 -1
package/dist/codec.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as validateSync, i as isStandardSchema, n as fromSchema, r as isCodec, t as fromArraySchema } from "./_chunks/schema-bridge-o0SwFtXW.js";
1
+ import { t as fromArraySchema } from "./_chunks/schema-bridge-eL5vQDSA.js";
2
2
  //#region src/codec.ts
3
3
  var codec = {
4
4
  string: {
@@ -41,6 +41,6 @@ var codec = {
41
41
  }
42
42
  };
43
43
  //#endregion
44
- export { codec, fromArraySchema, fromSchema, isCodec, isStandardSchema, validateSync };
44
+ export { codec, fromArraySchema };
45
45
 
46
46
  //# sourceMappingURL=codec.js.map
package/dist/codec.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","names":[],"sources":["../src/codec.ts"],"sourcesContent":["/**\n * @timber-js/app/codec — Shared codec protocol and Standard Schema bridge.\n *\n * The canonical import path for codec primitives shared across search params,\n * route params, and cookies.\n *\n * Design doc: design/23a-search-params-triage.md §\"Unify Codec<T> type\"\n */\n\n// ─── Codec protocol ──────────────────────────────────────────────────────\n\n/**\n * A codec that converts between string values and typed values.\n *\n * The canonical protocol shared across search params, cookies, and\n * any future timber feature that needs string ↔ typed conversion.\n */\nexport interface Codec<T> {\n /** String → typed value. Receives undefined when the value is absent. */\n parse(value: string | string[] | undefined): T;\n /** Typed value → string. Return null to omit/clear. */\n serialize(value: T): string | null;\n}\n\n/**\n * Recursive JSON-serializable type. The canonical definition for data that\n * can safely cross the RSC → client boundary.\n *\n * Previously exported from both @timber-js/app/server and @timber-js/app/client.\n * Moved here so there is exactly one canonical import path.\n */\nexport type JsonSerializable =\n | string\n | number\n | boolean\n | null\n | JsonSerializable[]\n | { [key: string]: JsonSerializable };\n\n// ─── Standard Schema bridge ──────────────────────────────────────────────\n\nexport {\n fromSchema,\n fromArraySchema,\n validateSync,\n isStandardSchema,\n isCodec,\n} from './schema-bridge.js';\nexport type { StandardSchemaV1, StandardSchemaResult } from './schema-bridge.js';\n\n// ─── Built-in segment param codecs ───────────────────────────────────────\n\nexport const codec = {\n string: {\n parse(value: string | string[] | undefined): string {\n return Array.isArray(value) ? value.join('/') : (value ?? '');\n },\n serialize(value: string): string | null {\n return value;\n },\n } satisfies Codec<string>,\n\n integer: {\n parse(value: string | string[] | undefined): number {\n const str = Array.isArray(value) ? value[0] : value;\n const n = Number(str);\n if (!Number.isInteger(n)) throw new Error(`Expected integer, got '${str}'`);\n return n;\n },\n serialize(value: number): string | null {\n return String(value);\n },\n } satisfies Codec<number>,\n\n slug: {\n parse(value: string | string[] | undefined): string {\n const str = Array.isArray(value) ? value[0] : value;\n if (!str || !/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(str)) {\n throw new Error(`Invalid slug: '${str}'`);\n }\n return str;\n },\n serialize(value: string): string | null {\n return value;\n },\n } satisfies Codec<string>,\n\n stringArray: {\n parse(value: string | string[] | undefined): string[] {\n if (Array.isArray(value)) return value;\n return value ? [value] : [];\n },\n serialize(value: string[]): string | null {\n return value.join('/');\n },\n } satisfies Codec<string[]>,\n} as const;\n"],"mappings":";;AAoDA,IAAa,QAAQ;CACnB,QAAQ;EACN,MAAM,OAA8C;AAClD,UAAO,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK,IAAI,GAAI,SAAS;;EAE5D,UAAU,OAA8B;AACtC,UAAO;;EAEV;CAED,SAAS;EACP,MAAM,OAA8C;GAClD,MAAM,MAAM,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK;GAC9C,MAAM,IAAI,OAAO,IAAI;AACrB,OAAI,CAAC,OAAO,UAAU,EAAE,CAAE,OAAM,IAAI,MAAM,0BAA0B,IAAI,GAAG;AAC3E,UAAO;;EAET,UAAU,OAA8B;AACtC,UAAO,OAAO,MAAM;;EAEvB;CAED,MAAM;EACJ,MAAM,OAA8C;GAClD,MAAM,MAAM,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK;AAC9C,OAAI,CAAC,OAAO,CAAC,6BAA6B,KAAK,IAAI,CACjD,OAAM,IAAI,MAAM,kBAAkB,IAAI,GAAG;AAE3C,UAAO;;EAET,UAAU,OAA8B;AACtC,UAAO;;EAEV;CAED,aAAa;EACX,MAAM,OAAgD;AACpD,OAAI,MAAM,QAAQ,MAAM,CAAE,QAAO;AACjC,UAAO,QAAQ,CAAC,MAAM,GAAG,EAAE;;EAE7B,UAAU,OAAgC;AACxC,UAAO,MAAM,KAAK,IAAI;;EAEzB;CACF"}
1
+ {"version":3,"file":"codec.js","names":[],"sources":["../src/codec.ts"],"sourcesContent":["/**\n * @timber-js/app/codec — Shared codec protocol and Standard Schema bridge.\n *\n * The canonical import path for codec primitives shared across search params,\n * route params, and cookies.\n *\n * Design doc: design/23a-search-params-triage.md §\"Unify Codec<T> type\"\n */\n\n// ─── Codec protocol ──────────────────────────────────────────────────────\n\n/**\n * A codec that converts between string values and typed values.\n *\n * The canonical protocol shared across search params, cookies, and\n * any future timber feature that needs string ↔ typed conversion.\n */\nexport interface Codec<T> {\n /** String → typed value. Receives undefined when the value is absent. */\n parse(value: string | string[] | undefined): T;\n /** Typed value → string. Return null to omit/clear. */\n serialize(value: T): string | null;\n}\n\n/**\n * Recursive JSON-serializable type. The canonical definition for data that\n * can safely cross the RSC → client boundary.\n *\n * Previously exported from both @timber-js/app/server and @timber-js/app/client.\n * Moved here so there is exactly one canonical import path.\n */\nexport type JsonSerializable =\n | string\n | number\n | boolean\n | null\n | JsonSerializable[]\n | { [key: string]: JsonSerializable };\n\n// ─── Standard Schema bridge ──────────────────────────────────────────────\n\nexport {\n // fromSchema,\n fromArraySchema,\n // validateSync,\n // isStandardSchema,\n // isCodec,\n} from './schema-bridge.js';\nexport type { StandardSchemaV1, StandardSchemaResult } from './schema-bridge.js';\n\n// ─── Built-in segment param codecs ───────────────────────────────────────\n\nexport const codec = {\n string: {\n parse(value: string | string[] | undefined): string {\n return Array.isArray(value) ? value.join('/') : (value ?? '');\n },\n serialize(value: string): string | null {\n return value;\n },\n } satisfies Codec<string>,\n\n integer: {\n parse(value: string | string[] | undefined): number {\n const str = Array.isArray(value) ? value[0] : value;\n const n = Number(str);\n if (!Number.isInteger(n)) throw new Error(`Expected integer, got '${str}'`);\n return n;\n },\n serialize(value: number): string | null {\n return String(value);\n },\n } satisfies Codec<number>,\n\n slug: {\n parse(value: string | string[] | undefined): string {\n const str = Array.isArray(value) ? value[0] : value;\n if (!str || !/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(str)) {\n throw new Error(`Invalid slug: '${str}'`);\n }\n return str;\n },\n serialize(value: string): string | null {\n return value;\n },\n } satisfies Codec<string>,\n\n stringArray: {\n parse(value: string | string[] | undefined): string[] {\n if (Array.isArray(value)) return value;\n return value ? [value] : [];\n },\n serialize(value: string[]): string | null {\n return value.join('/');\n },\n } satisfies Codec<string[]>,\n} as const;\n"],"mappings":";;AAoDA,IAAa,QAAQ;CACnB,QAAQ;EACN,MAAM,OAA8C;AAClD,UAAO,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK,IAAI,GAAI,SAAS;;EAE5D,UAAU,OAA8B;AACtC,UAAO;;EAEV;CAED,SAAS;EACP,MAAM,OAA8C;GAClD,MAAM,MAAM,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK;GAC9C,MAAM,IAAI,OAAO,IAAI;AACrB,OAAI,CAAC,OAAO,UAAU,EAAE,CAAE,OAAM,IAAI,MAAM,0BAA0B,IAAI,GAAG;AAC3E,UAAO;;EAET,UAAU,OAA8B;AACtC,UAAO,OAAO,MAAM;;EAEvB;CAED,MAAM;EACJ,MAAM,OAA8C;GAClD,MAAM,MAAM,MAAM,QAAQ,MAAM,GAAG,MAAM,KAAK;AAC9C,OAAI,CAAC,OAAO,CAAC,6BAA6B,KAAK,IAAI,CACjD,OAAM,IAAI,MAAM,kBAAkB,IAAI,GAAG;AAE3C,UAAO;;EAET,UAAU,OAA8B;AACtC,UAAO;;EAEV;CAED,aAAa;EACX,MAAM,OAAgD;AACpD,OAAI,MAAM,QAAQ,MAAM,CAAE,QAAO;AACjC,UAAO,QAAQ,CAAC,MAAM,GAAG,EAAE;;EAE7B,UAAU,OAAgC;AACxC,UAAO,MAAM,KAAK,IAAI;;EAEzB;CACF"}
@@ -1,6 +1,6 @@
1
- import { n as fromSchema } from "../_chunks/schema-bridge-o0SwFtXW.js";
2
- import { t as assertValidCookieName } from "../_chunks/validation-AfEFM5ze.js";
3
- import { n as getSsrData } from "../_chunks/ssr-data-BP5-JJTi.js";
1
+ import { n as fromSchema } from "../_chunks/schema-bridge-eL5vQDSA.js";
2
+ import { t as assertValidCookieName } from "../_chunks/validation-Bm3Je-09.js";
3
+ import { n as getSsrData } from "../_chunks/ssr-data-BO5OvEvg.js";
4
4
  import { useSyncExternalStore } from "react";
5
5
  import { getCookieJar } from "@timber-js/app/server";
6
6
  //#region src/client/use-cookie.ts
package/dist/index.d.ts CHANGED
@@ -12,9 +12,6 @@
12
12
  import type { PluginOption } from 'vite';
13
13
  import type { TimberUserConfig } from './config-types.js';
14
14
  export type { TimberUserConfig } from './config-types.js';
15
- export { defineSchema } from './params/define-schema.js';
16
- export type { InferCodecType, SchemaConfig } from './params/define-schema.js';
17
- export { codec } from './codec.js';
18
15
  export type { Metadata, MetadataRoute, MetadataHandler, MetadataResult } from './server/types.js';
19
16
  /**
20
17
  * Route map interface — augmented by the generated timber-routes.d.ts.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAU,YAAY,EAAE,MAAM,MAAM,CAAC;AAyBjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAc1D,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9E,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAQnC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAElG;;;;;;;;;GASG;AAEH,MAAM,WAAW,MAAM;CAAG;AAE1B;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAEvE;AAgGD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,YAAY,EAAE,CA+UhE;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAU,YAAY,EAAE,MAAM,MAAM,CAAC;AAyBjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAc1D,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAElG;;;;;;;;;GASG;AAEH,MAAM,WAAW,MAAM;CAAG;AAE1B;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAEvE;AAgGD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,YAAY,EAAE,CA+UhE;AAED,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -2,10 +2,8 @@ import { n as setViteServer } from "./_chunks/warnings-B30wpfaS.js";
2
2
  import { h as swallow } from "./_chunks/logger-DDmK5skc.js";
3
3
  import { t as scanRoutes } from "./_chunks/scanner-DmfoB7iK.js";
4
4
  import { n as collectInterceptionRewrites, r as generateRouteMap, t as collectLeafRoutes } from "./_chunks/walkers-DgOXkTts.js";
5
- import { a as DEFAULT_BUILD_DIR, c as mergeFileConfig, d as resolveClientJavascript, f as createNoopTimer, l as resolveAppDir, n as findSchemaFile, o as createPluginContext, r as parseExistingSchemaKeys, s as loadTimberConfigFile, t as collectDynamicSegments, u as resolveBuildDir } from "./_chunks/cli-schema-sync-DFZmnmqG.js";
5
+ import { a as DEFAULT_BUILD_DIR, c as mergeFileConfig, d as resolveClientJavascript, f as createNoopTimer, l as resolveAppDir, n as findSchemaFile, o as createPluginContext, r as parseExistingSchemaKeys, s as loadTimberConfigFile, t as collectDynamicSegments, u as resolveBuildDir } from "./_chunks/cli-schema-sync-q2wB0DyJ.js";
6
6
  import { t as formatSize } from "./_chunks/format-CR6v1pWE.js";
7
- import { t as defineSchema } from "./_chunks/define-schema-CfEb8LSg.js";
8
- import { codec } from "./codec.js";
9
7
  import { dirname, extname, join, normalize, resolve } from "node:path";
10
8
  import { createRequire } from "node:module";
11
9
  import react, { reactCompilerPreset } from "@vitejs/plugin-react";
@@ -7141,6 +7139,6 @@ function timber(config) {
7141
7139
  ];
7142
7140
  }
7143
7141
  //#endregion
7144
- export { codec, timber as default, timber, defineConfig, defineSchema, __exportAll as t };
7142
+ export { timber as default, timber, defineConfig, __exportAll as t };
7145
7143
 
7146
7144
  //# sourceMappingURL=index.js.map