@shivaedev/platform 0.15.0 → 0.16.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 (71) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +83 -49
  3. package/dist/rpc/identity.d.ts +1 -0
  4. package/dist/rpc/identity.d.ts.map +1 -1
  5. package/dist/rpc/identity.js.map +1 -1
  6. package/dist/rpc/requireAdmin.d.ts +5 -0
  7. package/dist/rpc/requireAdmin.d.ts.map +1 -0
  8. package/dist/rpc/requireAdmin.js +14 -0
  9. package/dist/rpc/requireAdmin.js.map +1 -0
  10. package/dist/server/MigrationOptions.d.ts +11 -0
  11. package/dist/server/MigrationOptions.d.ts.map +1 -0
  12. package/dist/server/MigrationOptions.js +2 -0
  13. package/dist/server/MigrationOptions.js.map +1 -0
  14. package/dist/server/appHost.d.ts +5 -10
  15. package/dist/server/appHost.d.ts.map +1 -1
  16. package/dist/server/appHost.js.map +1 -1
  17. package/dist/server/appHostHttp.d.ts +7 -7
  18. package/dist/server/appHostHttp.d.ts.map +1 -1
  19. package/dist/server/appHostHttp.js +8 -7
  20. package/dist/server/appHostHttp.js.map +1 -1
  21. package/dist/server/better-auth/adapter.d.ts +1 -1
  22. package/dist/server/better-auth/adapter.d.ts.map +1 -1
  23. package/dist/server/databaseLayer.d.ts.map +1 -1
  24. package/dist/server/databaseLayer.js +18 -4
  25. package/dist/server/databaseLayer.js.map +1 -1
  26. package/dist/server/hostOptions.d.ts +1 -1
  27. package/dist/server/hostOptions.d.ts.map +1 -1
  28. package/dist/server/otlpHttpClient.js +1 -1
  29. package/dist/server/otlpHttpClient.js.map +1 -1
  30. package/dist/server/otlpTracing.js +2 -2
  31. package/dist/server/otlpTracing.js.map +1 -1
  32. package/dist/server/redactOtlpUrl.js +1 -1
  33. package/dist/server/redactOtlpUrl.js.map +1 -1
  34. package/dist/server/rpc-server/adapters/betterAuthSessions.d.ts +1 -1
  35. package/dist/server/rpc-server/adapters/betterAuthSessions.d.ts.map +1 -1
  36. package/dist/server/rpc-server/adapters/betterAuthSessions.js +1 -1
  37. package/dist/server/rpc-server/adapters/betterAuthSessions.js.map +1 -1
  38. package/dist/server/rpc-server/session.d.ts +3 -2
  39. package/dist/server/rpc-server/session.d.ts.map +1 -1
  40. package/dist/server/rpc-server/session.js +9 -5
  41. package/dist/server/rpc-server/session.js.map +1 -1
  42. package/dist/server/safeOtlpSerialization.js +2 -2
  43. package/dist/server/safeOtlpSerialization.js.map +1 -1
  44. package/dist/server/testing/makePlatformIt.d.ts +1 -1
  45. package/dist/server/testing/makePlatformIt.d.ts.map +1 -1
  46. package/dist/server/testing/makePlatformIt.js +1 -1
  47. package/dist/server/testing/makePlatformIt.js.map +1 -1
  48. package/dist/server/testing/types.d.ts +3 -3
  49. package/dist/server/testing/types.d.ts.map +1 -1
  50. package/dist/server/tracedGroup.d.ts +4 -0
  51. package/dist/server/tracedGroup.d.ts.map +1 -0
  52. package/dist/server/tracedGroup.js +13 -0
  53. package/dist/server/tracedGroup.js.map +1 -0
  54. package/package.json +15 -343
  55. package/src/rpc/identity.ts +1 -0
  56. package/src/rpc/requireAdmin.ts +14 -0
  57. package/src/server/MigrationOptions.ts +11 -0
  58. package/src/server/appHost.ts +4 -9
  59. package/src/server/appHostHttp.ts +11 -10
  60. package/src/server/better-auth/adapter.ts +1 -1
  61. package/src/server/databaseLayer.ts +22 -6
  62. package/src/server/hostOptions.ts +1 -1
  63. package/src/server/otlpHttpClient.ts +1 -1
  64. package/src/server/otlpTracing.ts +2 -2
  65. package/src/server/redactOtlpUrl.ts +1 -1
  66. package/src/server/rpc-server/adapters/betterAuthSessions.ts +2 -2
  67. package/src/server/rpc-server/session.ts +9 -6
  68. package/src/server/safeOtlpSerialization.ts +2 -2
  69. package/src/server/testing/makePlatformIt.ts +4 -4
  70. package/src/server/testing/types.ts +3 -3
  71. package/src/server/tracedGroup.ts +14 -0
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/server/rpc-server/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/server/rpc-server/session.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Effect, Layer } from "effect";
2
2
  import { OtlpSerialization } from "effect/observability";
3
- import { redactOtlpUrl } from "#redactOtlpUrl.ts";
4
- import { isSensitiveKey, REDACTED, redactText } from "#rpc-server/sensitive.ts";
3
+ import { redactOtlpUrl } from "#server/redactOtlpUrl.ts";
4
+ import { isSensitiveKey, REDACTED, redactText } from "#server/rpc-server/sensitive.ts";
5
5
  function sensitive(key) {
6
6
  return isSensitiveKey(key) || ["db.user", "db.user.name", "db.connection_string"].includes(key.toLowerCase());
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"safeOtlpSerialization.js","sourceRoot":"","sources":["../../src/server/safeOtlpSerialization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"safeOtlpSerialization.js","sourceRoot":"","sources":["../../src/server/safeOtlpSerialization.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Effect, type Layer } from "effect";
2
2
  import type { AnyDatabase } from "@shivaedev/effect-prisma/databaseTypes.ts";
3
- import type { CallerOptions, CallerResult } from "@shivaedev/effect-trpc/testing/types.ts";
3
+ import type { CallerOptions, CallerResult } from "@shivaedev/effect-trpc/server/testing/types.ts";
4
4
  import type { MakePlatformItOptions, PlatformHarness, PlatformIt } from "./types.ts";
5
5
  export declare function makePlatformIt<const TDatabase extends AnyDatabase>(database: TDatabase): <TCreateCaller extends (...arguments_: never[]) => object, TProvided, TLayerError, TExtension extends object = Record<never, never>>(options: MakePlatformItOptions<TDatabase, TCreateCaller, TProvided, TLayerError, TExtension> & {
6
6
  readonly layer: Layer.Layer<TProvided | Effect.Services<TDatabase>, TLayerError>;
@@ -1 +1 @@
1
- {"version":3,"file":"makePlatformIt.d.ts","sourceRoot":"","sources":["../../../src/server/testing/makePlatformIt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAI7E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAG3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAyDrF,wBAAgB,cAAc,CAAC,KAAK,CAAC,SAAS,SAAS,WAAW,EAAE,QAAQ,EAAE,SAAS,IAC9E,aAAa,SAAS,CAAC,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,SAAS,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,WAChI,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,GAAG;IAC9F,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;CACjF,KACC,UAAU,CACZ,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC,EACjG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CACtC,CACD"}
1
+ {"version":3,"file":"makePlatformIt.d.ts","sourceRoot":"","sources":["../../../src/server/testing/makePlatformIt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAI7E,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAC;AAGlG,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAyDrF,wBAAgB,cAAc,CAAC,KAAK,CAAC,SAAS,SAAS,WAAW,EAAE,QAAQ,EAAE,SAAS,IAC9E,aAAa,SAAS,CAAC,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,SAAS,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,WAChI,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,GAAG;IAC9F,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;CACjF,KACC,UAAU,CACZ,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,UAAU,CAAC,EACjG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CACtC,CACD"}
@@ -1,6 +1,6 @@
1
1
  import { Effect } from "effect";
2
2
  import { withTestTransaction } from "@shivaedev/effect-prisma/testing/transaction.ts";
3
- import { makeTrpcHarnessIt } from "@shivaedev/effect-trpc/testing/vitest.ts";
3
+ import { makeTrpcHarnessIt } from "@shivaedev/effect-trpc/server/testing/vitest.ts";
4
4
  function platformIt(database, options) {
5
5
  const trpcIt = makeTrpcHarnessIt({
6
6
  adapter: options.adapter,
@@ -1 +1 @@
1
- {"version":3,"file":"makePlatformIt.js","sourceRoot":"","sources":["../../../src/server/testing/makePlatformIt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAc,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAItF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAiC7E,SAAS,UAAU,CAAC,QAAqB,EAAE,OAAqB;IAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC;QAChC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzD,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAW,CAAC;YAClD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC;YAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,SAAS,OAAO,CAAS,QAA+B;gBACvD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,OAAO,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5C,CAAC,CAAC;KACH,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;QACxB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ;YAC7B,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC9B,OAAO,MAAM,CAAC,UAAU,CAAC;YAC1B,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,cAAc,CAAsC,QAAmB;IACtF,OAAO,CACN,OAEC,EAIA,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"makePlatformIt.js","sourceRoot":"","sources":["../../../src/server/testing/makePlatformIt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAc,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAItF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAiCpF,SAAS,UAAU,CAAC,QAAqB,EAAE,OAAqB;IAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC;QAChC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzD,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAW,CAAC;YAClD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC;YAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,SAAS,OAAO,CAAS,QAA+B;gBACvD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,OAAO,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5C,CAAC,CAAC;KACH,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;QACxB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ;YAC7B,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC9B,OAAO,MAAM,CAAC,UAAU,CAAC;YAC1B,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,cAAc,CAAsC,QAAmB;IACtF,OAAO,CACN,OAEC,EAIA,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC"}
@@ -2,9 +2,9 @@ import type { TestContext, Vitest } from "@effect/vitest";
2
2
  import type { Effect, Layer } from "effect";
3
3
  import type { AnyDatabase } from "@shivaedev/effect-prisma/databaseTypes.ts";
4
4
  import type { DatabaseService } from "@shivaedev/effect-prisma/testing/types.ts";
5
- import type { EffectTRPCAdapter } from "@shivaedev/effect-trpc/adapter.ts";
6
- import type { EffectCallerFactory } from "@shivaedev/effect-trpc/testing/caller.ts";
7
- import type { CallerOptions, CallerResult, TrpcHarnessTest, TrpcHarnessTester } from "@shivaedev/effect-trpc/testing/types.ts";
5
+ import type { EffectTRPCAdapter } from "@shivaedev/effect-trpc/server/adapter.ts";
6
+ import type { EffectCallerFactory } from "@shivaedev/effect-trpc/server/testing/caller.ts";
7
+ import type { CallerOptions, CallerResult, TrpcHarnessTest, TrpcHarnessTester } from "@shivaedev/effect-trpc/server/testing/types.ts";
8
8
  export type PlatformHarness<TDatabase extends AnyDatabase, TOptions, TCaller, TExtension> = Readonly<{
9
9
  db: DatabaseService<TDatabase>;
10
10
  trpc: EffectCallerFactory<TOptions, TCaller>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/testing/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC/H,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,IAAI,QAAQ,CAAC;IACpG,EAAE,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC,GACD,QAAQ,CAAC;IACR,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrF,CAAC,GACF,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;AAC7C,MAAM,MAAM,YAAY,CAAC,QAAQ,EAAE,SAAS,IAAI,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACrF,MAAM,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,IAAI,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACzF,MAAM,MAAM,UAAU,CAAC,QAAQ,EAAE,SAAS,IAAI,MAAM,CAAC,OAAO,GAAG;IAC9D,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;CACxD,CAAC;AACF,MAAM,WAAW,qBAAqB,CACrC,SAAS,SAAS,WAAW,EAC7B,aAAa,SAAS,CAAC,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,MAAM,EACxD,SAAS,EACT,WAAW,EACX,UAAU;IAEV,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,CACjB,IAAI,EAAE,QAAQ,CAAC;QACd,EAAE,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,EAAE,mBAAmB,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;KACvG,CAAC,EACF,OAAO,EAAE,WAAW,KAChB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;CACpD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/testing/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACtI,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,IAAI,QAAQ,CAAC;IACpG,EAAE,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC,GACD,QAAQ,CAAC;IACR,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrF,CAAC,GACF,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;AAC7C,MAAM,MAAM,YAAY,CAAC,QAAQ,EAAE,SAAS,IAAI,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACrF,MAAM,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,IAAI,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACzF,MAAM,MAAM,UAAU,CAAC,QAAQ,EAAE,SAAS,IAAI,MAAM,CAAC,OAAO,GAAG;IAC9D,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;CACxD,CAAC;AACF,MAAM,WAAW,qBAAqB,CACrC,SAAS,SAAS,WAAW,EAC7B,aAAa,SAAS,CAAC,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,MAAM,EACxD,SAAS,EACT,WAAW,EACX,UAAU;IAEV,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,CACjB,IAAI,EAAE,QAAQ,CAAC;QACd,EAAE,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,EAAE,mBAAmB,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;KACvG,CAAC,EACF,OAAO,EAAE,WAAW,KAChB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;CACpD"}
@@ -0,0 +1,4 @@
1
+ import type { Rpc, RpcGroup } from "effect/rpc";
2
+ import { RequestTracing } from "#rpc/middleware.ts";
3
+ export declare function tracedGroup<R extends Rpc.Any>(group: RpcGroup.RpcGroup<R>): RpcGroup.RpcGroup<Rpc.AddMiddleware<R, typeof RequestTracing>>;
4
+ //# sourceMappingURL=tracedGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracedGroup.d.ts","sourceRoot":"","sources":["../../src/server/tracedGroup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,wBAAgB,WAAW,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,kEAUzE"}
@@ -0,0 +1,13 @@
1
+ import { RequestTracing } from "#rpc/middleware.ts";
2
+ export function tracedGroup(group) {
3
+ const traced = group.middleware(RequestTracing);
4
+ for (const rpc of traced.requests.values()) {
5
+ const middlewares = new Set(rpc.middlewares);
6
+ middlewares.delete(RequestTracing);
7
+ middlewares.add(RequestTracing);
8
+ // Native middleware() clones each RPC but cannot move an existing middleware to the outermost position.
9
+ Object.assign(rpc, { middlewares });
10
+ }
11
+ return traced;
12
+ }
13
+ //# sourceMappingURL=tracedGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracedGroup.js","sourceRoot":"","sources":["../../src/server/tracedGroup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,UAAU,WAAW,CAAoB,KAA2B;IACzE,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAChD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC7C,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACnC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAChC,wGAAwG;QACxG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shivaedev/platform",
3
- "version": "0.15.0",
3
+ "version": "0.16.0",
4
4
  "description": "Opinionated Effect application infrastructure for ShivaeDev services",
5
5
  "homepage": "https://github.com/ShivaeDev/platform/tree/main/packages/platform#readme",
6
6
  "bugs": {
@@ -20,346 +20,15 @@
20
20
  "source": "./src/*.ts",
21
21
  "types": "./dist/*.d.ts",
22
22
  "default": "./dist/*.js"
23
- },
24
- "#errors/*.ts": {
25
- "source": "./src/errors/*.ts",
26
- "types": "./dist/errors/*.d.ts",
27
- "default": "./dist/errors/*.js"
28
- },
29
- "#node-http/*.ts": {
30
- "source": "./src/server/node-http/*.ts",
31
- "types": "./dist/server/node-http/*.d.ts",
32
- "default": "./dist/server/node-http/*.js"
33
- },
34
- "#rpc/*.ts": {
35
- "source": "./src/rpc/*.ts",
36
- "types": "./dist/rpc/*.d.ts",
37
- "default": "./dist/rpc/*.js"
38
- },
39
- "#rpc-server/*.ts": {
40
- "source": "./src/server/rpc-server/*.ts",
41
- "types": "./dist/server/rpc-server/*.d.ts",
42
- "default": "./dist/server/rpc-server/*.js"
43
- },
44
- "#runtime/*.ts": {
45
- "source": "./src/server/runtime/*.ts",
46
- "types": "./dist/server/runtime/*.d.ts",
47
- "default": "./dist/server/runtime/*.js"
48
- },
49
- "#appHost.ts": {
50
- "source": "./src/server/appHost.ts",
51
- "types": "./dist/server/appHost.d.ts",
52
- "default": "./dist/server/appHost.js"
53
- },
54
- "#better-auth/adapter.ts": {
55
- "source": "./src/server/better-auth/adapter.ts",
56
- "types": "./dist/server/better-auth/adapter.d.ts",
57
- "default": "./dist/server/better-auth/adapter.js"
58
- },
59
- "#better-auth/relation.ts": {
60
- "source": "./src/server/better-auth/relation.ts",
61
- "types": "./dist/server/better-auth/relation.d.ts",
62
- "default": "./dist/server/better-auth/relation.js"
63
- },
64
- "#better-auth/row-adapter.ts": {
65
- "source": "./src/server/better-auth/rowAdapter.ts",
66
- "types": "./dist/server/better-auth/rowAdapter.d.ts",
67
- "default": "./dist/server/better-auth/rowAdapter.js"
68
- },
69
- "#better-auth/where.ts": {
70
- "source": "./src/server/better-auth/where.ts",
71
- "types": "./dist/server/better-auth/where.d.ts",
72
- "default": "./dist/server/better-auth/where.js"
73
- },
74
- "#errors/rejected-field.ts": {
75
- "source": "./src/errors/rejectedField.ts",
76
- "types": "./dist/errors/rejectedField.d.ts",
77
- "default": "./dist/errors/rejectedField.js"
78
- },
79
- "#errors/taxonomy.ts": {
80
- "source": "./src/errors/taxonomy.ts",
81
- "types": "./dist/errors/taxonomy.d.ts",
82
- "default": "./dist/errors/taxonomy.js"
83
- },
84
- "#node-http/subscription-signal.ts": {
85
- "source": "./src/server/node-http/subscriptionSignal.ts",
86
- "types": "./dist/server/node-http/subscriptionSignal.d.ts",
87
- "default": "./dist/server/node-http/subscriptionSignal.js"
88
- },
89
- "#rpc-server/adapters/better-auth-sessions.ts": {
90
- "source": "./src/server/rpc-server/adapters/betterAuthSessions.ts",
91
- "types": "./dist/server/rpc-server/adapters/betterAuthSessions.d.ts",
92
- "default": "./dist/server/rpc-server/adapters/betterAuthSessions.js"
93
- },
94
- "#rpc-server/boundary.ts": {
95
- "source": "./src/server/rpc-server/boundary.ts",
96
- "types": "./dist/server/rpc-server/boundary.d.ts",
97
- "default": "./dist/server/rpc-server/boundary.js"
98
- },
99
- "#rpc-server/local.ts": {
100
- "source": "./src/server/rpc-server/local.ts",
101
- "types": "./dist/server/rpc-server/local.d.ts",
102
- "default": "./dist/server/rpc-server/local.js"
103
- },
104
- "#rpc-server/origin.ts": {
105
- "source": "./src/server/rpc-server/origin.ts",
106
- "types": "./dist/server/rpc-server/origin.d.ts",
107
- "default": "./dist/server/rpc-server/origin.js"
108
- },
109
- "#rpc-server/redact-cause.ts": {
110
- "source": "./src/server/rpc-server/redactCause.ts",
111
- "types": "./dist/server/rpc-server/redactCause.d.ts",
112
- "default": "./dist/server/rpc-server/redactCause.js"
113
- },
114
- "#rpc-server/redact.ts": {
115
- "source": "./src/server/rpc-server/redact.ts",
116
- "types": "./dist/server/rpc-server/redact.d.ts",
117
- "default": "./dist/server/rpc-server/redact.js"
118
- },
119
- "#rpc-server/sensitive.ts": {
120
- "source": "./src/server/rpc-server/sensitive.ts",
121
- "types": "./dist/server/rpc-server/sensitive.d.ts",
122
- "default": "./dist/server/rpc-server/sensitive.js"
123
- },
124
- "#rpc-server/session.ts": {
125
- "source": "./src/server/rpc-server/session.ts",
126
- "types": "./dist/server/rpc-server/session.d.ts",
127
- "default": "./dist/server/rpc-server/session.js"
128
- },
129
- "#rpc-server/tracing.ts": {
130
- "source": "./src/server/rpc-server/tracing.ts",
131
- "types": "./dist/server/rpc-server/tracing.d.ts",
132
- "default": "./dist/server/rpc-server/tracing.js"
133
- },
134
- "#rpc-server/transport.ts": {
135
- "source": "./src/server/rpc-server/transportHeaders.ts",
136
- "types": "./dist/server/rpc-server/transportHeaders.d.ts",
137
- "default": "./dist/server/rpc-server/transportHeaders.js"
138
- },
139
- "#rpc/identity.ts": {
140
- "source": "./src/rpc/identity.ts",
141
- "types": "./dist/rpc/identity.d.ts",
142
- "default": "./dist/rpc/identity.js"
143
- },
144
- "#rpc/middleware.ts": {
145
- "source": "./src/rpc/middleware.ts",
146
- "types": "./dist/rpc/middleware.d.ts",
147
- "default": "./dist/rpc/middleware.js"
148
- },
149
- "#runtime/make.ts": {
150
- "source": "./src/server/runtime/makePlatform.ts",
151
- "types": "./dist/server/runtime/makePlatform.d.ts",
152
- "default": "./dist/server/runtime/makePlatform.js"
153
- },
154
- "#runtime/types.ts": {
155
- "source": "./src/server/runtime/types.ts",
156
- "types": "./dist/server/runtime/types.d.ts",
157
- "default": "./dist/server/runtime/types.js"
158
- },
159
- "#testing/types.ts": {
160
- "source": "./src/server/testing/types.ts",
161
- "types": "./dist/server/testing/types.d.ts",
162
- "default": "./dist/server/testing/types.js"
163
- },
164
- "#testing/vitest.ts": {
165
- "source": "./src/server/testing/makePlatformIt.ts",
166
- "types": "./dist/server/testing/makePlatformIt.d.ts",
167
- "default": "./dist/server/testing/makePlatformIt.js"
168
- },
169
- "#otlpTracing.ts": {
170
- "source": "./src/server/otlpTracing.ts",
171
- "types": "./dist/server/otlpTracing.d.ts",
172
- "default": "./dist/server/otlpTracing.js"
173
- },
174
- "#boundedRpcRequest.ts": {
175
- "source": "./src/server/boundedRpcRequest.ts",
176
- "types": "./dist/server/boundedRpcRequest.d.ts",
177
- "default": "./dist/server/boundedRpcRequest.js"
178
- },
179
- "#databaseLayer.ts": {
180
- "source": "./src/server/databaseLayer.ts",
181
- "types": "./dist/server/databaseLayer.d.ts",
182
- "default": "./dist/server/databaseLayer.js"
183
- },
184
- "#hostOptions.ts": {
185
- "source": "./src/server/hostOptions.ts",
186
- "types": "./dist/server/hostOptions.d.ts",
187
- "default": "./dist/server/hostOptions.js"
188
- },
189
- "#otlpHttpClient.ts": {
190
- "source": "./src/server/otlpHttpClient.ts",
191
- "types": "./dist/server/otlpHttpClient.d.ts",
192
- "default": "./dist/server/otlpHttpClient.js"
193
- },
194
- "#safeOtlpSerialization.ts": {
195
- "source": "./src/server/safeOtlpSerialization.ts",
196
- "types": "./dist/server/safeOtlpSerialization.d.ts",
197
- "default": "./dist/server/safeOtlpSerialization.js"
198
- },
199
- "#redactOtlpUrl.ts": {
200
- "source": "./src/server/redactOtlpUrl.ts",
201
- "types": "./dist/server/redactOtlpUrl.d.ts",
202
- "default": "./dist/server/redactOtlpUrl.js"
203
23
  }
204
24
  },
205
25
  "exports": {
206
- "./boundedBody.ts": {
207
- "types": "./dist/server/boundedBody.d.ts",
208
- "source": "./src/server/boundedBody.ts",
209
- "import": "./dist/server/boundedBody.js",
210
- "default": "./dist/server/boundedBody.js"
211
- },
212
- "./appHost.ts": {
213
- "types": "./dist/server/appHost.d.ts",
214
- "source": "./src/server/appHost.ts",
215
- "import": "./dist/server/appHost.js",
216
- "default": "./dist/server/appHost.js"
217
- },
218
- "./better-auth/adapter.ts": {
219
- "types": "./dist/server/better-auth/adapter.d.ts",
220
- "source": "./src/server/better-auth/adapter.ts",
221
- "import": "./dist/server/better-auth/adapter.js",
222
- "default": "./dist/server/better-auth/adapter.js"
223
- },
224
- "./better-auth/relation.ts": {
225
- "types": "./dist/server/better-auth/relation.d.ts",
226
- "source": "./src/server/better-auth/relation.ts",
227
- "import": "./dist/server/better-auth/relation.js",
228
- "default": "./dist/server/better-auth/relation.js"
229
- },
230
- "./better-auth/row-adapter.ts": {
231
- "types": "./dist/server/better-auth/rowAdapter.d.ts",
232
- "source": "./src/server/better-auth/rowAdapter.ts",
233
- "import": "./dist/server/better-auth/rowAdapter.js",
234
- "default": "./dist/server/better-auth/rowAdapter.js"
235
- },
236
- "./better-auth/where.ts": {
237
- "types": "./dist/server/better-auth/where.d.ts",
238
- "source": "./src/server/better-auth/where.ts",
239
- "import": "./dist/server/better-auth/where.js",
240
- "default": "./dist/server/better-auth/where.js"
241
- },
242
- "./errors/rejected-field.ts": {
243
- "types": "./dist/errors/rejectedField.d.ts",
244
- "source": "./src/errors/rejectedField.ts",
245
- "import": "./dist/errors/rejectedField.js",
246
- "default": "./dist/errors/rejectedField.js"
247
- },
248
- "./errors/taxonomy.ts": {
249
- "types": "./dist/errors/taxonomy.d.ts",
250
- "source": "./src/errors/taxonomy.ts",
251
- "import": "./dist/errors/taxonomy.js",
252
- "default": "./dist/errors/taxonomy.js"
253
- },
254
- "./node-http/subscription-signal.ts": {
255
- "types": "./dist/server/node-http/subscriptionSignal.d.ts",
256
- "source": "./src/server/node-http/subscriptionSignal.ts",
257
- "import": "./dist/server/node-http/subscriptionSignal.js",
258
- "default": "./dist/server/node-http/subscriptionSignal.js"
259
- },
260
- "./rpc/identity.ts": {
261
- "types": "./dist/rpc/identity.d.ts",
262
- "source": "./src/rpc/identity.ts",
263
- "import": "./dist/rpc/identity.js",
264
- "default": "./dist/rpc/identity.js"
265
- },
266
- "./rpc/middleware.ts": {
267
- "types": "./dist/rpc/middleware.d.ts",
268
- "source": "./src/rpc/middleware.ts",
269
- "import": "./dist/rpc/middleware.js",
270
- "default": "./dist/rpc/middleware.js"
271
- },
272
- "./rpc-server/adapters/better-auth-sessions.ts": {
273
- "types": "./dist/server/rpc-server/adapters/betterAuthSessions.d.ts",
274
- "source": "./src/server/rpc-server/adapters/betterAuthSessions.ts",
275
- "import": "./dist/server/rpc-server/adapters/betterAuthSessions.js",
276
- "default": "./dist/server/rpc-server/adapters/betterAuthSessions.js"
277
- },
278
- "./rpc-server/boundary.ts": {
279
- "types": "./dist/server/rpc-server/boundary.d.ts",
280
- "source": "./src/server/rpc-server/boundary.ts",
281
- "import": "./dist/server/rpc-server/boundary.js",
282
- "default": "./dist/server/rpc-server/boundary.js"
283
- },
284
- "./rpc-server/local.ts": {
285
- "types": "./dist/server/rpc-server/local.d.ts",
286
- "source": "./src/server/rpc-server/local.ts",
287
- "import": "./dist/server/rpc-server/local.js",
288
- "default": "./dist/server/rpc-server/local.js"
289
- },
290
- "./rpc-server/origin.ts": {
291
- "types": "./dist/server/rpc-server/origin.d.ts",
292
- "source": "./src/server/rpc-server/origin.ts",
293
- "import": "./dist/server/rpc-server/origin.js",
294
- "default": "./dist/server/rpc-server/origin.js"
295
- },
296
- "./rpc-server/redact-cause.ts": {
297
- "types": "./dist/server/rpc-server/redactCause.d.ts",
298
- "source": "./src/server/rpc-server/redactCause.ts",
299
- "import": "./dist/server/rpc-server/redactCause.js",
300
- "default": "./dist/server/rpc-server/redactCause.js"
301
- },
302
- "./rpc-server/redact.ts": {
303
- "types": "./dist/server/rpc-server/redact.d.ts",
304
- "source": "./src/server/rpc-server/redact.ts",
305
- "import": "./dist/server/rpc-server/redact.js",
306
- "default": "./dist/server/rpc-server/redact.js"
307
- },
308
- "./rpc-server/sensitive.ts": {
309
- "types": "./dist/server/rpc-server/sensitive.d.ts",
310
- "source": "./src/server/rpc-server/sensitive.ts",
311
- "import": "./dist/server/rpc-server/sensitive.js",
312
- "default": "./dist/server/rpc-server/sensitive.js"
313
- },
314
- "./rpc-server/session.ts": {
315
- "types": "./dist/server/rpc-server/session.d.ts",
316
- "source": "./src/server/rpc-server/session.ts",
317
- "import": "./dist/server/rpc-server/session.js",
318
- "default": "./dist/server/rpc-server/session.js"
319
- },
320
- "./rpc-server/tracing.ts": {
321
- "types": "./dist/server/rpc-server/tracing.d.ts",
322
- "source": "./src/server/rpc-server/tracing.ts",
323
- "import": "./dist/server/rpc-server/tracing.js",
324
- "default": "./dist/server/rpc-server/tracing.js"
325
- },
326
- "./rpc-server/transport.ts": {
327
- "types": "./dist/server/rpc-server/transportHeaders.d.ts",
328
- "source": "./src/server/rpc-server/transportHeaders.ts",
329
- "import": "./dist/server/rpc-server/transportHeaders.js",
330
- "default": "./dist/server/rpc-server/transportHeaders.js"
331
- },
332
- "./runtime/make.ts": {
333
- "types": "./dist/server/runtime/makePlatform.d.ts",
334
- "source": "./src/server/runtime/makePlatform.ts",
335
- "import": "./dist/server/runtime/makePlatform.js",
336
- "default": "./dist/server/runtime/makePlatform.js"
337
- },
338
- "./runtime/types.ts": {
339
- "types": "./dist/server/runtime/types.d.ts",
340
- "source": "./src/server/runtime/types.ts",
341
- "import": "./dist/server/runtime/types.js",
342
- "default": "./dist/server/runtime/types.js"
343
- },
344
- "./testing/types.ts": {
345
- "types": "./dist/server/testing/types.d.ts",
346
- "source": "./src/server/testing/types.ts",
347
- "import": "./dist/server/testing/types.js",
348
- "default": "./dist/server/testing/types.js"
349
- },
350
- "./testing/vitest.ts": {
351
- "types": "./dist/server/testing/makePlatformIt.d.ts",
352
- "source": "./src/server/testing/makePlatformIt.ts",
353
- "import": "./dist/server/testing/makePlatformIt.js",
354
- "default": "./dist/server/testing/makePlatformIt.js"
26
+ "./*.ts": {
27
+ "source": "./src/*.ts",
28
+ "types": "./dist/*.d.ts",
29
+ "default": "./dist/*.js"
355
30
  },
356
- "./package.json": "./package.json",
357
- "./otlpTracing.ts": {
358
- "types": "./dist/server/otlpTracing.d.ts",
359
- "source": "./src/server/otlpTracing.ts",
360
- "import": "./dist/server/otlpTracing.js",
361
- "default": "./dist/server/otlpTracing.js"
362
- }
31
+ "./package.json": "./package.json"
363
32
  },
364
33
  "files": [
365
34
  "dist",
@@ -386,16 +55,19 @@
386
55
  "@prisma-next/sql-contract": "0.16.0",
387
56
  "@prisma-next/sql-orm-client": "0.16.0",
388
57
  "@prisma-next/target-postgres": "0.16.0",
389
- "@shivaedev/effect-prisma": "0.9.2",
390
- "@shivaedev/effect-trpc": "0.7.2",
391
- "@shivaedev/quality": "0.24.0",
392
- "@shivaedev/test-story": "0.7.0",
58
+ "@shivaedev/effect-prisma": "0.10.0",
59
+ "@shivaedev/effect-test-sql": "0.5.4",
60
+ "@shivaedev/effect-trpc": "0.8.0",
61
+ "@shivaedev/quality": "0.25.0",
62
+ "@shivaedev/test-story": "0.7.1",
393
63
  "@trpc/client": "11.19.0",
394
64
  "@trpc/server": "11.19.0",
395
65
  "@types/node": "24.19.2",
66
+ "@types/pg": "8.20.0",
396
67
  "@typescript/native": "npm:typescript@7.0.2",
397
68
  "better-auth": "1.7.7",
398
69
  "effect": "4.0.4",
70
+ "pg": "8.23.0",
399
71
  "superjson": "2.2.6",
400
72
  "typescript": "npm:@typescript/typescript6@6.0.2",
401
73
  "vitest": "5.0.3"
@@ -405,8 +77,8 @@
405
77
  "@effect/sql-pg": "4.0.4",
406
78
  "@effect/vitest": "4.0.4",
407
79
  "@prisma-next/sql-orm-client": "0.16.0",
408
- "@shivaedev/effect-prisma": "0.9.2",
409
- "@shivaedev/effect-trpc": "0.7.2",
80
+ "@shivaedev/effect-prisma": "0.10.0",
81
+ "@shivaedev/effect-trpc": "0.8.0",
410
82
  "@trpc/server": "11.19.0",
411
83
  "better-auth": "1.7.7",
412
84
  "effect": "4.0.4"
@@ -13,5 +13,6 @@ export interface SessionUserValue extends IdentityValue {
13
13
  readonly email: string;
14
14
  readonly name: string;
15
15
  readonly providerAccounts?: readonly ProviderAccountValue[];
16
+ readonly role?: string | null | undefined;
16
17
  }
17
18
  export class SessionUser extends Context.Service<SessionUser, SessionUserValue>()("@shivaedev/platform/rpc/SessionUser") {}
@@ -0,0 +1,14 @@
1
+ import { Effect, Option } from "effect";
2
+ import { Forbidden, Unauthorized } from "#errors/taxonomy.ts";
3
+ import { SessionUser, type SessionUserValue } from "./identity.ts";
4
+
5
+ export const requireAdmin: Effect.Effect<SessionUserValue, Unauthorized | Forbidden> = Effect.gen(function* () {
6
+ const user = yield* Effect.serviceOption(SessionUser);
7
+ if (Option.isNone(user)) {
8
+ return yield* new Unauthorized({ message: "Authentication required" });
9
+ }
10
+ if (!user.value.role?.split(",").includes("admin")) {
11
+ return yield* new Forbidden({ message: "Administrator role required" });
12
+ }
13
+ return user.value;
14
+ });
@@ -0,0 +1,11 @@
1
+ import type { Duration } from "effect";
2
+ import type { Migrator } from "effect/sql";
3
+
4
+ export interface MigrationOptions<R = never> {
5
+ readonly loader: Migrator.Loader<R>;
6
+ readonly lockTimeout?: Duration.Input;
7
+ readonly mode?: "migrate" | "check" | "wait";
8
+ readonly pollInterval?: Duration.Input;
9
+ readonly table?: string;
10
+ readonly waitTimeout?: Duration.Input;
11
+ }
@@ -1,21 +1,16 @@
1
- import { Context, type Duration, type Effect } from "effect";
1
+ import { Context, type Effect } from "effect";
2
2
  import type { Rpc } from "effect/rpc";
3
- import type { Migrator } from "effect/sql";
4
3
  import type { makeLiveServer } from "@shivaedev/effect-contract/makeLiveServer.ts";
5
- import type { SessionPolicy, SessionShape } from "#rpc-server/session.ts";
6
4
  import { appHostHttp, deferredHost, migratedHost } from "#server/appHostHttp.ts";
7
5
  import { type DatabaseConfig, databaseLayer } from "#server/databaseLayer.ts";
8
6
  import type { HostOptions, HostPolicy } from "#server/hostOptions.ts";
7
+ import type { MigrationOptions } from "#server/MigrationOptions.ts";
8
+ import type { SessionPolicy, SessionShape } from "#server/rpc-server/session.ts";
9
9
 
10
10
  export class AppChanges extends Context.Service<AppChanges, Effect.Success<typeof makeLiveServer>>()("@shivaedev/platform/AppChanges") {}
11
11
  export interface AppDatabaseOptions<R = never> {
12
12
  readonly config?: DatabaseConfig;
13
- readonly migrations: {
14
- readonly loader: Migrator.Loader<R>;
15
- readonly mode?: "migrate" | "check";
16
- readonly table?: string;
17
- readonly lockTimeout?: Duration.Input;
18
- };
13
+ readonly migrations: MigrationOptions<R>;
19
14
  }
20
15
 
21
16
  export function appDatabase<R>(options: AppDatabaseOptions<R>) {