@tanstack/start-client-core 1.166.9 → 1.166.11

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 (39) hide show
  1. package/dist/esm/client/ServerFunctionSerializationAdapter.js +15 -14
  2. package/dist/esm/client/ServerFunctionSerializationAdapter.js.map +1 -1
  3. package/dist/esm/client/hydrateStart.js +26 -31
  4. package/dist/esm/client/hydrateStart.js.map +1 -1
  5. package/dist/esm/client/index.js +1 -4
  6. package/dist/esm/client-rpc/createClientRpc.js +16 -15
  7. package/dist/esm/client-rpc/createClientRpc.js.map +1 -1
  8. package/dist/esm/client-rpc/frame-decoder.js +229 -241
  9. package/dist/esm/client-rpc/frame-decoder.js.map +1 -1
  10. package/dist/esm/client-rpc/index.js +1 -4
  11. package/dist/esm/client-rpc/serverFnFetcher.js +210 -259
  12. package/dist/esm/client-rpc/serverFnFetcher.js.map +1 -1
  13. package/dist/esm/constants.js +41 -49
  14. package/dist/esm/constants.js.map +1 -1
  15. package/dist/esm/createMiddleware.js +25 -36
  16. package/dist/esm/createMiddleware.js.map +1 -1
  17. package/dist/esm/createServerFn.js +187 -261
  18. package/dist/esm/createServerFn.js.map +1 -1
  19. package/dist/esm/createStart.js +25 -29
  20. package/dist/esm/createStart.js.map +1 -1
  21. package/dist/esm/fake-start-entry.js +7 -8
  22. package/dist/esm/fake-start-entry.js.map +1 -1
  23. package/dist/esm/getDefaultSerovalPlugins.js +7 -11
  24. package/dist/esm/getDefaultSerovalPlugins.js.map +1 -1
  25. package/dist/esm/getGlobalStartContext.js +10 -13
  26. package/dist/esm/getGlobalStartContext.js.map +1 -1
  27. package/dist/esm/getRouterInstance.js +7 -6
  28. package/dist/esm/getRouterInstance.js.map +1 -1
  29. package/dist/esm/getStartContextServerOnly.js +7 -6
  30. package/dist/esm/getStartContextServerOnly.js.map +1 -1
  31. package/dist/esm/getStartOptions.js +7 -6
  32. package/dist/esm/getStartOptions.js.map +1 -1
  33. package/dist/esm/index.js +6 -37
  34. package/dist/esm/safeObjectMerge.js +24 -24
  35. package/dist/esm/safeObjectMerge.js.map +1 -1
  36. package/package.json +4 -4
  37. package/dist/esm/client/index.js.map +0 -1
  38. package/dist/esm/client-rpc/index.js.map +0 -1
  39. package/dist/esm/index.js.map +0 -1
@@ -1,17 +1,18 @@
1
- import { createSerializationAdapter } from "@tanstack/router-core";
2
1
  import { TSS_SERVER_FUNCTION } from "../constants.js";
3
2
  import { createClientRpc } from "../client-rpc/createClientRpc.js";
4
- const ServerFunctionSerializationAdapter = createSerializationAdapter({
5
- key: "$TSS/serverfn",
6
- test: (v) => {
7
- if (typeof v !== "function") return false;
8
- if (!(TSS_SERVER_FUNCTION in v)) return false;
9
- return !!v[TSS_SERVER_FUNCTION];
10
- },
11
- toSerializable: ({ serverFnMeta }) => ({ functionId: serverFnMeta.id }),
12
- fromSerializable: ({ functionId }) => createClientRpc(functionId)
3
+ import { createSerializationAdapter } from "@tanstack/router-core";
4
+ //#region src/client/ServerFunctionSerializationAdapter.ts
5
+ var ServerFunctionSerializationAdapter = createSerializationAdapter({
6
+ key: "$TSS/serverfn",
7
+ test: (v) => {
8
+ if (typeof v !== "function") return false;
9
+ if (!(TSS_SERVER_FUNCTION in v)) return false;
10
+ return !!v[TSS_SERVER_FUNCTION];
11
+ },
12
+ toSerializable: ({ serverFnMeta }) => ({ functionId: serverFnMeta.id }),
13
+ fromSerializable: ({ functionId }) => createClientRpc(functionId)
13
14
  });
14
- export {
15
- ServerFunctionSerializationAdapter
16
- };
17
- //# sourceMappingURL=ServerFunctionSerializationAdapter.js.map
15
+ //#endregion
16
+ export { ServerFunctionSerializationAdapter };
17
+
18
+ //# sourceMappingURL=ServerFunctionSerializationAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerFunctionSerializationAdapter.js","sources":["../../../src/client/ServerFunctionSerializationAdapter.ts"],"sourcesContent":["import { createSerializationAdapter } from '@tanstack/router-core'\nimport { TSS_SERVER_FUNCTION } from '../constants'\nimport { createClientRpc } from '../client-rpc/createClientRpc'\n\nexport const ServerFunctionSerializationAdapter = createSerializationAdapter({\n key: '$TSS/serverfn',\n test: (v): v is { serverFnMeta: { id: string } } => {\n if (typeof v !== 'function') return false\n\n if (!(TSS_SERVER_FUNCTION in v)) return false\n\n return !!v[TSS_SERVER_FUNCTION]\n },\n toSerializable: ({ serverFnMeta }) => ({ functionId: serverFnMeta.id }),\n fromSerializable: ({ functionId }) => createClientRpc(functionId),\n})\n"],"names":[],"mappings":";;;AAIO,MAAM,qCAAqC,2BAA2B;AAAA,EAC3E,KAAK;AAAA,EACL,MAAM,CAAC,MAA6C;AAClD,QAAI,OAAO,MAAM,WAAY,QAAO;AAEpC,QAAI,EAAE,uBAAuB,GAAI,QAAO;AAExC,WAAO,CAAC,CAAC,EAAE,mBAAmB;AAAA,EAChC;AAAA,EACA,gBAAgB,CAAC,EAAE,aAAA,OAAoB,EAAE,YAAY,aAAa;EAClE,kBAAkB,CAAC,EAAE,WAAA,MAAiB,gBAAgB,UAAU;AAClE,CAAC;"}
1
+ {"version":3,"file":"ServerFunctionSerializationAdapter.js","names":[],"sources":["../../../src/client/ServerFunctionSerializationAdapter.ts"],"sourcesContent":["import { createSerializationAdapter } from '@tanstack/router-core'\nimport { TSS_SERVER_FUNCTION } from '../constants'\nimport { createClientRpc } from '../client-rpc/createClientRpc'\n\nexport const ServerFunctionSerializationAdapter = createSerializationAdapter({\n key: '$TSS/serverfn',\n test: (v): v is { serverFnMeta: { id: string } } => {\n if (typeof v !== 'function') return false\n\n if (!(TSS_SERVER_FUNCTION in v)) return false\n\n return !!v[TSS_SERVER_FUNCTION]\n },\n toSerializable: ({ serverFnMeta }) => ({ functionId: serverFnMeta.id }),\n fromSerializable: ({ functionId }) => createClientRpc(functionId),\n})\n"],"mappings":";;;;AAIA,IAAa,qCAAqC,2BAA2B;CAC3E,KAAK;CACL,OAAO,MAA6C;AAClD,MAAI,OAAO,MAAM,WAAY,QAAO;AAEpC,MAAI,EAAE,uBAAuB,GAAI,QAAO;AAExC,SAAO,CAAC,CAAC,EAAE;;CAEb,iBAAiB,EAAE,oBAAoB,EAAE,YAAY,aAAa,IAAI;CACtE,mBAAmB,EAAE,iBAAiB,gBAAgB,WAAW;CAClE,CAAC"}
@@ -1,36 +1,31 @@
1
- import { hydrate } from "@tanstack/router-core/ssr/client";
2
1
  import { ServerFunctionSerializationAdapter } from "./ServerFunctionSerializationAdapter.js";
2
+ import { hydrate } from "@tanstack/router-core/ssr/client";
3
3
  import { getRouter } from "#tanstack-router-entry";
4
4
  import { startInstance } from "#tanstack-start-entry";
5
+ //#region src/client/hydrateStart.ts
5
6
  async function hydrateStart() {
6
- const router = await getRouter();
7
- let serializationAdapters;
8
- if (startInstance) {
9
- const startOptions = await startInstance.getOptions();
10
- startOptions.serializationAdapters = startOptions.serializationAdapters ?? [];
11
- window.__TSS_START_OPTIONS__ = startOptions;
12
- serializationAdapters = startOptions.serializationAdapters;
13
- router.options.defaultSsr = startOptions.defaultSsr;
14
- } else {
15
- serializationAdapters = [];
16
- window.__TSS_START_OPTIONS__ = {
17
- serializationAdapters
18
- };
19
- }
20
- serializationAdapters.push(ServerFunctionSerializationAdapter);
21
- if (router.options.serializationAdapters) {
22
- serializationAdapters.push(...router.options.serializationAdapters);
23
- }
24
- router.update({
25
- basepath: process.env.TSS_ROUTER_BASEPATH,
26
- ...{ serializationAdapters }
27
- });
28
- if (!router.state.matches.length) {
29
- await hydrate(router);
30
- }
31
- return router;
7
+ const router = await getRouter();
8
+ let serializationAdapters;
9
+ if (startInstance) {
10
+ const startOptions = await startInstance.getOptions();
11
+ startOptions.serializationAdapters = startOptions.serializationAdapters ?? [];
12
+ window.__TSS_START_OPTIONS__ = startOptions;
13
+ serializationAdapters = startOptions.serializationAdapters;
14
+ router.options.defaultSsr = startOptions.defaultSsr;
15
+ } else {
16
+ serializationAdapters = [];
17
+ window.__TSS_START_OPTIONS__ = { serializationAdapters };
18
+ }
19
+ serializationAdapters.push(ServerFunctionSerializationAdapter);
20
+ if (router.options.serializationAdapters) serializationAdapters.push(...router.options.serializationAdapters);
21
+ router.update({
22
+ basepath: process.env.TSS_ROUTER_BASEPATH,
23
+ serializationAdapters
24
+ });
25
+ if (!router.state.matches.length) await hydrate(router);
26
+ return router;
32
27
  }
33
- export {
34
- hydrateStart
35
- };
36
- //# sourceMappingURL=hydrateStart.js.map
28
+ //#endregion
29
+ export { hydrateStart };
30
+
31
+ //# sourceMappingURL=hydrateStart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hydrateStart.js","sources":["../../../src/client/hydrateStart.ts"],"sourcesContent":["import { hydrate } from '@tanstack/router-core/ssr/client'\n\nimport { ServerFunctionSerializationAdapter } from './ServerFunctionSerializationAdapter'\nimport type { AnyStartInstanceOptions } from '../createStart'\nimport type { AnyRouter, AnySerializationAdapter } from '@tanstack/router-core'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { getRouter } from '#tanstack-router-entry'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { startInstance } from '#tanstack-start-entry'\n\nexport async function hydrateStart(): Promise<AnyRouter> {\n const router = await getRouter()\n\n let serializationAdapters: Array<AnySerializationAdapter>\n if (startInstance) {\n const startOptions = await startInstance.getOptions()\n startOptions.serializationAdapters =\n startOptions.serializationAdapters ?? []\n window.__TSS_START_OPTIONS__ = startOptions as AnyStartInstanceOptions\n serializationAdapters = startOptions.serializationAdapters\n router.options.defaultSsr = startOptions.defaultSsr\n } else {\n serializationAdapters = []\n window.__TSS_START_OPTIONS__ = {\n serializationAdapters,\n } as AnyStartInstanceOptions\n }\n\n serializationAdapters.push(ServerFunctionSerializationAdapter)\n if (router.options.serializationAdapters) {\n serializationAdapters.push(...router.options.serializationAdapters)\n }\n\n router.update({\n basepath: process.env.TSS_ROUTER_BASEPATH,\n ...{ serializationAdapters },\n })\n if (!router.state.matches.length) {\n await hydrate(router)\n }\n\n return router\n}\n"],"names":[],"mappings":";;;;AAUA,eAAsB,eAAmC;AACvD,QAAM,SAAS,MAAM,UAAA;AAErB,MAAI;AACJ,MAAI,eAAe;AACjB,UAAM,eAAe,MAAM,cAAc,WAAA;AACzC,iBAAa,wBACX,aAAa,yBAAyB,CAAA;AACxC,WAAO,wBAAwB;AAC/B,4BAAwB,aAAa;AACrC,WAAO,QAAQ,aAAa,aAAa;AAAA,EAC3C,OAAO;AACL,4BAAwB,CAAA;AACxB,WAAO,wBAAwB;AAAA,MAC7B;AAAA,IAAA;AAAA,EAEJ;AAEA,wBAAsB,KAAK,kCAAkC;AAC7D,MAAI,OAAO,QAAQ,uBAAuB;AACxC,0BAAsB,KAAK,GAAG,OAAO,QAAQ,qBAAqB;AAAA,EACpE;AAEA,SAAO,OAAO;AAAA,IACZ,UAAU,QAAQ,IAAI;AAAA,IACtB,GAAG,EAAE,sBAAA;AAAA,EAAsB,CAC5B;AACD,MAAI,CAAC,OAAO,MAAM,QAAQ,QAAQ;AAChC,UAAM,QAAQ,MAAM;AAAA,EACtB;AAEA,SAAO;AACT;"}
1
+ {"version":3,"file":"hydrateStart.js","names":[],"sources":["../../../src/client/hydrateStart.ts"],"sourcesContent":["import { hydrate } from '@tanstack/router-core/ssr/client'\n\nimport { ServerFunctionSerializationAdapter } from './ServerFunctionSerializationAdapter'\nimport type { AnyStartInstanceOptions } from '../createStart'\nimport type { AnyRouter, AnySerializationAdapter } from '@tanstack/router-core'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { getRouter } from '#tanstack-router-entry'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { startInstance } from '#tanstack-start-entry'\n\nexport async function hydrateStart(): Promise<AnyRouter> {\n const router = await getRouter()\n\n let serializationAdapters: Array<AnySerializationAdapter>\n if (startInstance) {\n const startOptions = await startInstance.getOptions()\n startOptions.serializationAdapters =\n startOptions.serializationAdapters ?? []\n window.__TSS_START_OPTIONS__ = startOptions as AnyStartInstanceOptions\n serializationAdapters = startOptions.serializationAdapters\n router.options.defaultSsr = startOptions.defaultSsr\n } else {\n serializationAdapters = []\n window.__TSS_START_OPTIONS__ = {\n serializationAdapters,\n } as AnyStartInstanceOptions\n }\n\n serializationAdapters.push(ServerFunctionSerializationAdapter)\n if (router.options.serializationAdapters) {\n serializationAdapters.push(...router.options.serializationAdapters)\n }\n\n router.update({\n basepath: process.env.TSS_ROUTER_BASEPATH,\n ...{ serializationAdapters },\n })\n if (!router.state.matches.length) {\n await hydrate(router)\n }\n\n return router\n}\n"],"mappings":";;;;;AAUA,eAAsB,eAAmC;CACvD,MAAM,SAAS,MAAM,WAAW;CAEhC,IAAI;AACJ,KAAI,eAAe;EACjB,MAAM,eAAe,MAAM,cAAc,YAAY;AACrD,eAAa,wBACX,aAAa,yBAAyB,EAAE;AAC1C,SAAO,wBAAwB;AAC/B,0BAAwB,aAAa;AACrC,SAAO,QAAQ,aAAa,aAAa;QACpC;AACL,0BAAwB,EAAE;AAC1B,SAAO,wBAAwB,EAC7B,uBACD;;AAGH,uBAAsB,KAAK,mCAAmC;AAC9D,KAAI,OAAO,QAAQ,sBACjB,uBAAsB,KAAK,GAAG,OAAO,QAAQ,sBAAsB;AAGrE,QAAO,OAAO;EACZ,UAAU,QAAQ,IAAI;EACjB;EACN,CAAC;AACF,KAAI,CAAC,OAAO,MAAM,QAAQ,OACxB,OAAM,QAAQ,OAAO;AAGvB,QAAO"}
@@ -1,5 +1,2 @@
1
1
  import { hydrateStart } from "./hydrateStart.js";
2
- export {
3
- hydrateStart
4
- };
5
- //# sourceMappingURL=index.js.map
2
+ export { hydrateStart };
@@ -1,20 +1,21 @@
1
1
  import { TSS_SERVER_FUNCTION } from "../constants.js";
2
2
  import { getStartOptions } from "../getStartOptions.js";
3
3
  import { serverFnFetcher } from "./serverFnFetcher.js";
4
+ //#region src/client-rpc/createClientRpc.ts
4
5
  function createClientRpc(functionId) {
5
- const url = process.env.TSS_SERVER_FN_BASE + functionId;
6
- const serverFnMeta = { id: functionId };
7
- const clientFn = (...args) => {
8
- const startFetch = getStartOptions()?.serverFns?.fetch;
9
- return serverFnFetcher(url, args, startFetch ?? fetch);
10
- };
11
- return Object.assign(clientFn, {
12
- url,
13
- serverFnMeta,
14
- [TSS_SERVER_FUNCTION]: true
15
- });
6
+ const url = process.env.TSS_SERVER_FN_BASE + functionId;
7
+ const serverFnMeta = { id: functionId };
8
+ const clientFn = (...args) => {
9
+ const startFetch = getStartOptions()?.serverFns?.fetch;
10
+ return serverFnFetcher(url, args, startFetch ?? fetch);
11
+ };
12
+ return Object.assign(clientFn, {
13
+ url,
14
+ serverFnMeta,
15
+ [TSS_SERVER_FUNCTION]: true
16
+ });
16
17
  }
17
- export {
18
- createClientRpc
19
- };
20
- //# sourceMappingURL=createClientRpc.js.map
18
+ //#endregion
19
+ export { createClientRpc };
20
+
21
+ //# sourceMappingURL=createClientRpc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createClientRpc.js","sources":["../../../src/client-rpc/createClientRpc.ts"],"sourcesContent":["import { TSS_SERVER_FUNCTION } from '../constants'\nimport { getStartOptions } from '../getStartOptions'\nimport { serverFnFetcher } from './serverFnFetcher'\nimport type { ClientFnMeta } from '../constants'\n\nexport function createClientRpc(functionId: string) {\n const url = process.env.TSS_SERVER_FN_BASE + functionId\n const serverFnMeta: ClientFnMeta = { id: functionId }\n\n const clientFn = (...args: Array<any>) => {\n const startFetch = getStartOptions()?.serverFns?.fetch\n return serverFnFetcher(url, args, startFetch ?? fetch)\n }\n\n return Object.assign(clientFn, {\n url,\n serverFnMeta,\n [TSS_SERVER_FUNCTION]: true,\n })\n}\n"],"names":[],"mappings":";;;AAKO,SAAS,gBAAgB,YAAoB;AAClD,QAAM,MAAM,QAAQ,IAAI,qBAAqB;AAC7C,QAAM,eAA6B,EAAE,IAAI,WAAA;AAEzC,QAAM,WAAW,IAAI,SAAqB;AACxC,UAAM,aAAa,mBAAmB,WAAW;AACjD,WAAO,gBAAgB,KAAK,MAAM,cAAc,KAAK;AAAA,EACvD;AAEA,SAAO,OAAO,OAAO,UAAU;AAAA,IAC7B;AAAA,IACA;AAAA,IACA,CAAC,mBAAmB,GAAG;AAAA,EAAA,CACxB;AACH;"}
1
+ {"version":3,"file":"createClientRpc.js","names":[],"sources":["../../../src/client-rpc/createClientRpc.ts"],"sourcesContent":["import { TSS_SERVER_FUNCTION } from '../constants'\nimport { getStartOptions } from '../getStartOptions'\nimport { serverFnFetcher } from './serverFnFetcher'\nimport type { ClientFnMeta } from '../constants'\n\nexport function createClientRpc(functionId: string) {\n const url = process.env.TSS_SERVER_FN_BASE + functionId\n const serverFnMeta: ClientFnMeta = { id: functionId }\n\n const clientFn = (...args: Array<any>) => {\n const startFetch = getStartOptions()?.serverFns?.fetch\n return serverFnFetcher(url, args, startFetch ?? fetch)\n }\n\n return Object.assign(clientFn, {\n url,\n serverFnMeta,\n [TSS_SERVER_FUNCTION]: true,\n })\n}\n"],"mappings":";;;;AAKA,SAAgB,gBAAgB,YAAoB;CAClD,MAAM,MAAM,QAAQ,IAAI,qBAAqB;CAC7C,MAAM,eAA6B,EAAE,IAAI,YAAY;CAErD,MAAM,YAAY,GAAG,SAAqB;EACxC,MAAM,aAAa,iBAAiB,EAAE,WAAW;AACjD,SAAO,gBAAgB,KAAK,MAAM,cAAc,MAAM;;AAGxD,QAAO,OAAO,OAAO,UAAU;EAC7B;EACA;GACC,sBAAsB;EACxB,CAAC"}