@dbos-inc/dbos-sdk 3.5.44-preview.gc094fdab44 → 3.6.3-preview

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 (119) hide show
  1. package/README.md +6 -0
  2. package/dist/schemas/user_db_schema.d.ts +15 -0
  3. package/dist/schemas/user_db_schema.d.ts.map +1 -0
  4. package/dist/schemas/user_db_schema.js +33 -0
  5. package/dist/schemas/user_db_schema.js.map +1 -0
  6. package/dist/src/client.d.ts +4 -2
  7. package/dist/src/client.d.ts.map +1 -1
  8. package/dist/src/client.js +19 -6
  9. package/dist/src/client.js.map +1 -1
  10. package/dist/src/conductor/conductor.js +1 -1
  11. package/dist/src/conductor/conductor.js.map +1 -1
  12. package/dist/src/context.d.ts +3 -0
  13. package/dist/src/context.d.ts.map +1 -1
  14. package/dist/src/context.js.map +1 -1
  15. package/dist/src/dbos-executor.d.ts +27 -2
  16. package/dist/src/dbos-executor.d.ts.map +1 -1
  17. package/dist/src/dbos-executor.js +787 -21
  18. package/dist/src/dbos-executor.js.map +1 -1
  19. package/dist/src/{cli → dbos-runtime}/cli.d.ts +1 -1
  20. package/dist/src/dbos-runtime/cli.d.ts.map +1 -0
  21. package/dist/src/{cli → dbos-runtime}/cli.js +12 -3
  22. package/dist/src/dbos-runtime/cli.js.map +1 -0
  23. package/dist/src/dbos-runtime/commands.d.ts.map +1 -0
  24. package/dist/src/dbos-runtime/commands.js.map +1 -0
  25. package/dist/src/{config.d.ts → dbos-runtime/config.d.ts} +6 -2
  26. package/dist/src/dbos-runtime/config.d.ts.map +1 -0
  27. package/dist/src/{config.js → dbos-runtime/config.js} +43 -9
  28. package/dist/src/dbos-runtime/config.js.map +1 -0
  29. package/dist/src/dbos-runtime/docker_pg_helper.d.ts.map +1 -0
  30. package/dist/src/dbos-runtime/docker_pg_helper.js.map +1 -0
  31. package/dist/src/dbos-runtime/migrate.d.ts +3 -0
  32. package/dist/src/dbos-runtime/migrate.d.ts.map +1 -0
  33. package/dist/src/{cli → dbos-runtime}/migrate.js +29 -1
  34. package/dist/src/dbos-runtime/migrate.js.map +1 -0
  35. package/dist/src/{workflow_management.d.ts → dbos-runtime/workflow_management.d.ts} +6 -4
  36. package/dist/src/dbos-runtime/workflow_management.d.ts.map +1 -0
  37. package/dist/src/{workflow_management.js → dbos-runtime/workflow_management.js} +26 -5
  38. package/dist/src/dbos-runtime/workflow_management.js.map +1 -0
  39. package/dist/src/dbos.d.ts +196 -2
  40. package/dist/src/dbos.d.ts.map +1 -1
  41. package/dist/src/dbos.js +407 -11
  42. package/dist/src/dbos.js.map +1 -1
  43. package/dist/src/decorators.d.ts +38 -4
  44. package/dist/src/decorators.d.ts.map +1 -1
  45. package/dist/src/decorators.js +164 -9
  46. package/dist/src/decorators.js.map +1 -1
  47. package/dist/src/error.d.ts +8 -0
  48. package/dist/src/error.d.ts.map +1 -1
  49. package/dist/src/error.js +14 -1
  50. package/dist/src/error.js.map +1 -1
  51. package/dist/src/httpServer/handler.d.ts +13 -0
  52. package/dist/src/httpServer/handler.d.ts.map +1 -0
  53. package/dist/src/httpServer/handler.js +25 -0
  54. package/dist/src/httpServer/handler.js.map +1 -0
  55. package/dist/src/httpServer/handlerTypes.d.ts +14 -0
  56. package/dist/src/httpServer/handlerTypes.d.ts.map +1 -0
  57. package/dist/src/httpServer/handlerTypes.js +22 -0
  58. package/dist/src/httpServer/handlerTypes.js.map +1 -0
  59. package/dist/src/httpServer/middleware.d.ts +74 -0
  60. package/dist/src/httpServer/middleware.d.ts.map +1 -0
  61. package/dist/src/httpServer/middleware.js +108 -0
  62. package/dist/src/httpServer/middleware.js.map +1 -0
  63. package/dist/src/{adminserver.d.ts → httpServer/server.d.ts} +15 -6
  64. package/dist/src/httpServer/server.d.ts.map +1 -0
  65. package/dist/src/{adminserver.js → httpServer/server.js} +311 -28
  66. package/dist/src/httpServer/server.js.map +1 -0
  67. package/dist/src/index.d.ts +12 -3
  68. package/dist/src/index.d.ts.map +1 -1
  69. package/dist/src/index.js +40 -1
  70. package/dist/src/index.js.map +1 -1
  71. package/dist/src/paramdecorators.d.ts +39 -0
  72. package/dist/src/paramdecorators.d.ts.map +1 -0
  73. package/dist/src/paramdecorators.js +365 -0
  74. package/dist/src/paramdecorators.js.map +1 -0
  75. package/dist/src/procedure.d.ts +18 -0
  76. package/dist/src/procedure.d.ts.map +1 -0
  77. package/dist/src/procedure.js +3 -0
  78. package/dist/src/procedure.js.map +1 -0
  79. package/dist/src/transaction.d.ts +19 -0
  80. package/dist/src/transaction.d.ts.map +1 -0
  81. package/dist/src/transaction.js +11 -0
  82. package/dist/src/transaction.js.map +1 -0
  83. package/dist/src/user_database.d.ts +176 -0
  84. package/dist/src/user_database.d.ts.map +1 -0
  85. package/dist/src/user_database.js +540 -0
  86. package/dist/src/user_database.js.map +1 -0
  87. package/dist/src/utils.d.ts +22 -1
  88. package/dist/src/utils.d.ts.map +1 -1
  89. package/dist/src/utils.js +172 -20
  90. package/dist/src/utils.js.map +1 -1
  91. package/dist/src/wfqueue.d.ts +2 -0
  92. package/dist/src/wfqueue.d.ts.map +1 -1
  93. package/dist/src/wfqueue.js +1 -1
  94. package/dist/src/wfqueue.js.map +1 -1
  95. package/dist/src/workflow.d.ts +8 -0
  96. package/dist/src/workflow.d.ts.map +1 -1
  97. package/dist/src/workflow.js +11 -0
  98. package/dist/src/workflow.js.map +1 -1
  99. package/dist/tsconfig.tsbuildinfo +1 -1
  100. package/package.json +28 -4
  101. package/dist/src/adminserver.d.ts.map +0 -1
  102. package/dist/src/adminserver.js.map +0 -1
  103. package/dist/src/cli/cli.d.ts.map +0 -1
  104. package/dist/src/cli/cli.js.map +0 -1
  105. package/dist/src/cli/commands.d.ts.map +0 -1
  106. package/dist/src/cli/commands.js.map +0 -1
  107. package/dist/src/cli/docker_pg_helper.d.ts.map +0 -1
  108. package/dist/src/cli/docker_pg_helper.js.map +0 -1
  109. package/dist/src/cli/migrate.d.ts +0 -3
  110. package/dist/src/cli/migrate.d.ts.map +0 -1
  111. package/dist/src/cli/migrate.js.map +0 -1
  112. package/dist/src/config.d.ts.map +0 -1
  113. package/dist/src/config.js.map +0 -1
  114. package/dist/src/workflow_management.d.ts.map +0 -1
  115. package/dist/src/workflow_management.js.map +0 -1
  116. /package/dist/src/{cli → dbos-runtime}/commands.d.ts +0 -0
  117. /package/dist/src/{cli → dbos-runtime}/commands.js +0 -0
  118. /package/dist/src/{cli → dbos-runtime}/docker_pg_helper.d.ts +0 -0
  119. /package/dist/src/{cli → dbos-runtime}/docker_pg_helper.js +0 -0
@@ -26,28 +26,39 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.DBOSAdminServer = exports.WorkflowQueuesMetadataUrl = exports.DeactivateUrl = exports.PerfUrl = exports.HealthUrl = exports.WorkflowRecoveryUrl = exports.WorkflowUUIDHeader = void 0;
29
+ exports.DBOSHttpServer = exports.WorkflowQueuesMetadataUrl = exports.DeactivateUrl = exports.PerfUrl = exports.HealthUrl = exports.WorkflowRecoveryUrl = exports.WorkflowUUIDHeader = void 0;
30
30
  const koa_1 = __importDefault(require("koa"));
31
31
  const router_1 = __importDefault(require("@koa/router"));
32
32
  const bodyparser_1 = require("@koa/bodyparser");
33
33
  const cors_1 = __importDefault(require("@koa/cors"));
34
- const error_1 = require("./error");
34
+ const handlerTypes_1 = require("./handlerTypes");
35
+ const error_1 = require("../error");
36
+ const dbos_executor_1 = require("../dbos-executor");
37
+ const middleware_1 = require("./middleware");
38
+ const api_1 = require("@opentelemetry/api");
35
39
  const net = __importStar(require("net"));
36
40
  const perf_hooks_1 = require("perf_hooks");
37
- const utils_1 = require("./utils");
38
- const wfqueue_1 = require("./wfqueue");
41
+ const utils_1 = require("../utils");
42
+ const context_1 = require("../context");
43
+ const wfqueue_1 = require("../wfqueue");
39
44
  const serialize_error_1 = require("serialize-error");
40
- const workflow_management_1 = require("./workflow_management");
41
- const protocol = __importStar(require("./conductor/protocol"));
45
+ const workflow_management_1 = require("../dbos-runtime/workflow_management");
46
+ const core_1 = require("@opentelemetry/core");
47
+ const dbos_1 = require("../dbos");
48
+ const protocol = __importStar(require("../conductor/protocol"));
49
+ const decorators_1 = require("../decorators");
42
50
  exports.WorkflowUUIDHeader = 'dbos-idempotency-key';
43
51
  exports.WorkflowRecoveryUrl = '/dbos-workflow-recovery';
44
52
  exports.HealthUrl = '/dbos-healthz';
45
53
  exports.PerfUrl = '/dbos-perf';
54
+ // FIXME this should be /dbos-deactivate to be consistent with other endpoints.
46
55
  exports.DeactivateUrl = '/deactivate';
47
56
  exports.WorkflowQueuesMetadataUrl = '/dbos-workflow-queues-metadata';
48
- class DBOSAdminServer {
57
+ class DBOSHttpServer {
49
58
  dbosExec;
59
+ app;
50
60
  adminApp;
61
+ applicationRouter;
51
62
  logger;
52
63
  static nRegisteredEndpoints = 0;
53
64
  static instance = undefined;
@@ -58,9 +69,13 @@ class DBOSAdminServer {
58
69
  */
59
70
  constructor(dbosExec) {
60
71
  this.dbosExec = dbosExec;
72
+ this.applicationRouter = new router_1.default();
61
73
  this.logger = dbosExec.logger;
62
- this.adminApp = DBOSAdminServer.setupAdminApp(this.dbosExec);
63
- DBOSAdminServer.instance = this;
74
+ this.app = new koa_1.default();
75
+ this.adminApp = DBOSHttpServer.setupAdminApp(this.dbosExec);
76
+ DBOSHttpServer.registerDecoratedEndpoints(this.dbosExec, this.applicationRouter, this.app);
77
+ this.app.use(this.applicationRouter.routes()).use(this.applicationRouter.allowedMethods());
78
+ DBOSHttpServer.instance = this;
64
79
  }
65
80
  static setupAdminApp(dbosExec) {
66
81
  const adminRouter = new router_1.default();
@@ -68,24 +83,33 @@ class DBOSAdminServer {
68
83
  adminApp.use((0, bodyparser_1.bodyParser)());
69
84
  adminApp.use((0, cors_1.default)());
70
85
  // Register HTTP endpoints.
71
- DBOSAdminServer.registerHealthEndpoint(dbosExec, adminRouter);
72
- DBOSAdminServer.registerRecoveryEndpoint(dbosExec, adminRouter);
73
- DBOSAdminServer.registerPerfEndpoint(dbosExec, adminRouter);
74
- DBOSAdminServer.registerDeactivateEndpoint(dbosExec, adminRouter);
75
- DBOSAdminServer.registerCancelWorkflowEndpoint(dbosExec, adminRouter);
76
- DBOSAdminServer.registerResumeWorkflowEndpoint(dbosExec, adminRouter);
77
- DBOSAdminServer.registerRestartWorkflowEndpoint(dbosExec, adminRouter);
78
- DBOSAdminServer.registerQueueMetadataEndpoint(dbosExec, adminRouter);
79
- DBOSAdminServer.registerListWorkflowStepsEndpoint(dbosExec, adminRouter);
80
- DBOSAdminServer.registerListWorkflowsEndpoint(dbosExec, adminRouter);
81
- DBOSAdminServer.registerListQueuedWorkflowsEndpoint(dbosExec, adminRouter);
82
- DBOSAdminServer.registerGetWorkflowEndpoint(dbosExec, adminRouter);
83
- DBOSAdminServer.registerForkWorkflowEndpoint(dbosExec, adminRouter);
84
- DBOSAdminServer.registerGarbageCollectEndpoint(dbosExec, adminRouter);
85
- DBOSAdminServer.registerGlobalTimeoutEndpoint(dbosExec, adminRouter);
86
+ DBOSHttpServer.registerHealthEndpoint(dbosExec, adminRouter);
87
+ DBOSHttpServer.registerRecoveryEndpoint(dbosExec, adminRouter);
88
+ DBOSHttpServer.registerPerfEndpoint(dbosExec, adminRouter);
89
+ DBOSHttpServer.registerDeactivateEndpoint(dbosExec, adminRouter);
90
+ DBOSHttpServer.registerCancelWorkflowEndpoint(dbosExec, adminRouter);
91
+ DBOSHttpServer.registerResumeWorkflowEndpoint(dbosExec, adminRouter);
92
+ DBOSHttpServer.registerRestartWorkflowEndpoint(dbosExec, adminRouter);
93
+ DBOSHttpServer.registerQueueMetadataEndpoint(dbosExec, adminRouter);
94
+ DBOSHttpServer.registerListWorkflowStepsEndpoint(dbosExec, adminRouter);
95
+ DBOSHttpServer.registerListWorkflowsEndpoint(dbosExec, adminRouter);
96
+ DBOSHttpServer.registerListQueuedWorkflowsEndpoint(dbosExec, adminRouter);
97
+ DBOSHttpServer.registerGetWorkflowEndpoint(dbosExec, adminRouter);
98
+ DBOSHttpServer.registerForkWorkflowEndpoint(dbosExec, adminRouter);
99
+ DBOSHttpServer.registerGarbageCollectEndpoint(dbosExec, adminRouter);
100
+ DBOSHttpServer.registerGlobalTimeoutEndpoint(dbosExec, adminRouter);
86
101
  adminApp.use(adminRouter.routes()).use(adminRouter.allowedMethods());
87
102
  return adminApp;
88
103
  }
104
+ async appListen(port) {
105
+ await DBOSHttpServer.checkPortAvailabilityIPv4Ipv6(port, this.logger);
106
+ const appServer = DBOSHttpServer.nRegisteredEndpoints === 0
107
+ ? undefined
108
+ : this.app.listen(port, () => {
109
+ this.logger.info(`DBOS Server is running at http://localhost:${port}`);
110
+ });
111
+ return appServer;
112
+ }
89
113
  static async checkPortAvailabilityIPv4Ipv6(port, logger) {
90
114
  try {
91
115
  await this.checkPortAvailability(port, '127.0.0.1');
@@ -202,9 +226,9 @@ class DBOSAdminServer {
202
226
  static isDeactivated = false;
203
227
  static registerDeactivateEndpoint(dbosExec, router) {
204
228
  const deactivateHandler = async (koaCtxt, koaNext) => {
205
- if (!DBOSAdminServer.isDeactivated) {
229
+ if (!DBOSHttpServer.isDeactivated) {
206
230
  dbosExec.logger.info(`Deactivating DBOS executor ${utils_1.globalParams.executorID} with version ${utils_1.globalParams.appVersion}. This executor will complete existing workflows but will not create new workflows.`);
207
- DBOSAdminServer.isDeactivated = true;
231
+ DBOSHttpServer.isDeactivated = true;
208
232
  }
209
233
  await dbosExec.deactivateEventReceivers(false);
210
234
  koaCtxt.body = 'Deactivated';
@@ -449,6 +473,265 @@ class DBOSAdminServer {
449
473
  router.get(getWorkflowUrl, getWorkflowHandler);
450
474
  dbosExec.logger.debug(`DBOS Server Registered Get Workflow GET ${getWorkflowUrl}`);
451
475
  }
476
+ /**
477
+ * Register decorated functions as HTTP endpoints.
478
+ */
479
+ static registerDecoratedEndpoints(dbosExec, router, app) {
480
+ const globalMiddlewares = new Set();
481
+ // Register user declared endpoints, wrap around the endpoint with request parsing and response.
482
+ DBOSHttpServer.nRegisteredEndpoints = 0;
483
+ (0, decorators_1.getAllRegisteredFunctions)().forEach((registeredOperation) => {
484
+ const ro = registeredOperation;
485
+ if (!ro.apiURL)
486
+ return;
487
+ if (ro.isInstance) {
488
+ dbosExec.logger.warn(`Operation ${ro.className}/${ro.name} is registered with an endpoint (${ro.apiURL}) but cannot be invoked.`);
489
+ return;
490
+ }
491
+ ++DBOSHttpServer.nRegisteredEndpoints;
492
+ const defaults = ro.defaults;
493
+ // Check if we need to apply a custom CORS
494
+ if (defaults.koaCors) {
495
+ router.all(ro.apiURL, defaults.koaCors); // Use router.all to register with all methods including preflight requests
496
+ }
497
+ else {
498
+ if (dbosExec.config.http?.cors_middleware ?? true) {
499
+ router.all(ro.apiURL, (0, cors_1.default)({
500
+ credentials: dbosExec.config.http?.credentials ?? true,
501
+ origin: (o) => {
502
+ const whitelist = dbosExec.config.http?.allowed_origins;
503
+ const origin = o.request.header.origin ?? '*';
504
+ if (whitelist && whitelist.length > 0) {
505
+ return whitelist.includes(origin) ? origin : '';
506
+ }
507
+ return o.request.header.origin || '*';
508
+ },
509
+ allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS',
510
+ allowHeaders: ['Origin', 'X-Requested-With', 'Content-Type', 'Accept', 'Authorization'],
511
+ }));
512
+ }
513
+ }
514
+ // Check if we need to apply any Koa global middleware.
515
+ if (defaults?.koaGlobalMiddlewares) {
516
+ defaults.koaGlobalMiddlewares.forEach((koaMiddleware) => {
517
+ if (globalMiddlewares.has(koaMiddleware)) {
518
+ return;
519
+ }
520
+ dbosExec.logger.debug(`DBOS Server applying middleware ${koaMiddleware.name} globally`);
521
+ globalMiddlewares.add(koaMiddleware);
522
+ app.use(koaMiddleware);
523
+ });
524
+ }
525
+ // Wrapper function that parses request and send response.
526
+ const wrappedHandler = async (koaCtxt, koaNext) => {
527
+ const requestID = (0, middleware_1.getOrGenerateRequestID)(koaCtxt.request.headers);
528
+ koaCtxt.set(middleware_1.RequestIDHeader, requestID);
529
+ const httpTracer = new core_1.W3CTraceContextPropagator();
530
+ const extractedSpanContext = api_1.trace.getSpanContext(httpTracer.extract(api_1.ROOT_CONTEXT, koaCtxt.request.headers, api_1.defaultTextMapGetter));
531
+ let span;
532
+ const spanAttributes = {
533
+ operationType: dbos_executor_1.OperationType.HANDLER,
534
+ requestID: requestID,
535
+ requestIP: koaCtxt.request.ip,
536
+ requestURL: koaCtxt.request.url,
537
+ requestMethod: koaCtxt.request.method,
538
+ };
539
+ if (extractedSpanContext === undefined) {
540
+ span = dbosExec.tracer.startSpan(koaCtxt.url, spanAttributes);
541
+ }
542
+ else {
543
+ extractedSpanContext.isRemote = true;
544
+ span = dbosExec.tracer.startSpanWithContext(extractedSpanContext, koaCtxt.url, spanAttributes);
545
+ }
546
+ const dctx = {
547
+ request: {
548
+ headers: koaCtxt.request.headers,
549
+ rawHeaders: koaCtxt.req.rawHeaders,
550
+ params: koaCtxt.params,
551
+ body: koaCtxt.request.body,
552
+ rawBody: koaCtxt.request.rawBody,
553
+ query: koaCtxt.request.query,
554
+ querystring: koaCtxt.request.querystring,
555
+ url: koaCtxt.request.url,
556
+ ip: koaCtxt.request.ip,
557
+ requestID: requestID,
558
+ },
559
+ koaContext: koaCtxt,
560
+ operationType: dbos_executor_1.OperationType.HANDLER,
561
+ };
562
+ try {
563
+ // Check for auth first
564
+ if (defaults?.authMiddleware) {
565
+ await api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), async () => {
566
+ await (0, context_1.runWithTopContext)(dctx, async () => {
567
+ const res = await defaults.authMiddleware({
568
+ name: ro.name,
569
+ requiredRole: ro.getRequiredRoles(),
570
+ koaContext: koaCtxt,
571
+ logger: dbosExec.ctxLogger,
572
+ span,
573
+ query: (query, ...args) => {
574
+ return dbosExec.queryUserDbFunction(query, ...args);
575
+ },
576
+ });
577
+ if (res) {
578
+ dctx.authenticatedUser = res.authenticatedUser;
579
+ dctx.authenticatedRoles = res.authenticatedRoles;
580
+ }
581
+ });
582
+ });
583
+ }
584
+ // Parse the arguments.
585
+ const args = [];
586
+ ro.args.forEach((marg) => {
587
+ marg.argSource = marg.argSource ?? handlerTypes_1.ArgSources.DEFAULT; // Assign a default value.
588
+ let foundArg = undefined;
589
+ const isQueryMethod = ro.apiType === handlerTypes_1.APITypes.GET || ro.apiType === handlerTypes_1.APITypes.DELETE;
590
+ const isBodyMethod = ro.apiType === handlerTypes_1.APITypes.POST || ro.apiType === handlerTypes_1.APITypes.PUT || ro.apiType === handlerTypes_1.APITypes.PATCH;
591
+ if ((isQueryMethod && marg.argSource === handlerTypes_1.ArgSources.DEFAULT) || marg.argSource === handlerTypes_1.ArgSources.QUERY) {
592
+ foundArg = koaCtxt.request.query[marg.name];
593
+ if (foundArg !== undefined) {
594
+ args.push(foundArg);
595
+ }
596
+ else {
597
+ if (marg.argSource === handlerTypes_1.ArgSources.DEFAULT && koaCtxt.request.body) {
598
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment
599
+ foundArg = koaCtxt.request.body[marg.name];
600
+ if (foundArg !== undefined) {
601
+ args.push(foundArg);
602
+ }
603
+ }
604
+ }
605
+ }
606
+ else if ((isBodyMethod && marg.argSource === handlerTypes_1.ArgSources.DEFAULT) || marg.argSource === handlerTypes_1.ArgSources.BODY) {
607
+ if (koaCtxt.request.body) {
608
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment
609
+ foundArg = koaCtxt.request.body[marg.name];
610
+ if (foundArg !== undefined) {
611
+ args.push(foundArg);
612
+ }
613
+ }
614
+ if (!foundArg && marg.argSource === handlerTypes_1.ArgSources.DEFAULT) {
615
+ foundArg = koaCtxt.request.query[marg.name];
616
+ if (foundArg !== undefined) {
617
+ args.push(foundArg);
618
+ }
619
+ }
620
+ }
621
+ // Try to parse the argument from the URL if nothing found.
622
+ if (foundArg === undefined) {
623
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
624
+ args.push(koaCtxt.params[marg.name]);
625
+ }
626
+ //console.log(`found arg ${marg.name} ${idx} ${args[idx-1]}`);
627
+ });
628
+ // Extract workflow ID from headers (if any).
629
+ // We pass in the specified workflow ID to workflows and transactions, but doesn't restrict how handlers use it.
630
+ dctx.idAssignedForNextWorkflow = koaCtxt.get(exports.WorkflowUUIDHeader);
631
+ // Finally, invoke the transaction/workflow/plain function and properly set HTTP response.
632
+ // If functions return successfully and hasn't set the body, we set the body to the function return value. The status code will be automatically set to 200 or 204 (if the body is null/undefined).
633
+ // In case of an exception:
634
+ // - If a client-side error is thrown, we return 400.
635
+ // - If an error contains a `status` field, we return the specified status code.
636
+ // - Otherwise, we return 500.
637
+ // configuredInstance is currently null; we don't allow configured handlers now.
638
+ const wfParams = {
639
+ workflowUUID: dctx.idAssignedForNextWorkflow,
640
+ configuredInstance: null,
641
+ };
642
+ await api_1.context.with(api_1.trace.setSpan(api_1.context.active(), span), async () => {
643
+ await (0, context_1.runWithTopContext)(dctx, async () => {
644
+ if (ro.txnConfig) {
645
+ koaCtxt.body = await dbosExec.runTransactionTempWF(ro.registeredFunction, wfParams, ...args);
646
+ }
647
+ else if (ro.workflowConfig) {
648
+ koaCtxt.body = await (await dbosExec.workflow(ro.registeredFunction, wfParams, ...args)).getResult();
649
+ }
650
+ else if (ro.stepConfig) {
651
+ koaCtxt.body = await dbosExec.runStepTempWF(ro.registeredFunction, wfParams, ...args);
652
+ }
653
+ else {
654
+ // Directly invoke the handler code.
655
+ const cresult = await ro.invoke(undefined, [...args]);
656
+ const retValue = cresult;
657
+ // Set the body to the return value unless the body is already set by the handler.
658
+ if (koaCtxt.body === undefined) {
659
+ koaCtxt.body = retValue;
660
+ }
661
+ }
662
+ });
663
+ });
664
+ span?.setStatus({ code: api_1.SpanStatusCode.OK });
665
+ }
666
+ catch (e) {
667
+ if (e instanceof Error) {
668
+ const annotated_e = e;
669
+ if (annotated_e.dbos_already_logged !== true) {
670
+ dbos_1.DBOS.logger.error(e);
671
+ }
672
+ span?.setStatus({ code: api_1.SpanStatusCode.ERROR, message: e.message });
673
+ let st = e?.status || 500;
674
+ if ((0, error_1.isDataValidationError)(e)) {
675
+ st = 400; // Set to 400: client-side error.
676
+ }
677
+ koaCtxt.status = st;
678
+ koaCtxt.message = e.message;
679
+ koaCtxt.body = {
680
+ status: st,
681
+ message: e.message,
682
+ details: e,
683
+ };
684
+ }
685
+ else {
686
+ // FIXME we should have a standard, user friendly message for errors that are not instances of Error.
687
+ // using stringify() will not produce a pretty output, because our format function uses stringify() too.
688
+ dbos_1.DBOS.logger.error(utils_1.DBOSJSON.stringify(e));
689
+ span?.setStatus({ code: api_1.SpanStatusCode.ERROR, message: utils_1.DBOSJSON.stringify(e) });
690
+ koaCtxt.body = e;
691
+ koaCtxt.status = 500;
692
+ }
693
+ }
694
+ finally {
695
+ httpTracer.inject(api_1.trace.setSpanContext(api_1.ROOT_CONTEXT, span.spanContext()), {
696
+ context: koaCtxt,
697
+ }, {
698
+ set: (carrier, key, value) => {
699
+ carrier.context.set(key, value);
700
+ },
701
+ });
702
+ dbosExec.tracer.endSpan(span);
703
+ await koaNext();
704
+ }
705
+ };
706
+ // Actually register the endpoint.
707
+ // Middleware functions are applied directly to router verb methods to prevent duplicate calls.
708
+ const routeMiddlewares = [defaults.koaBodyParser ?? (0, bodyparser_1.bodyParser)()].concat(defaults.koaMiddlewares ?? []);
709
+ switch (ro.apiType) {
710
+ case handlerTypes_1.APITypes.GET:
711
+ router.get(ro.apiURL, ...routeMiddlewares, wrappedHandler);
712
+ dbosExec.logger.debug(`DBOS Server Registered GET ${ro.apiURL}`);
713
+ break;
714
+ case handlerTypes_1.APITypes.POST:
715
+ router.post(ro.apiURL, ...routeMiddlewares, wrappedHandler);
716
+ dbosExec.logger.debug(`DBOS Server Registered POST ${ro.apiURL}`);
717
+ break;
718
+ case handlerTypes_1.APITypes.PUT:
719
+ router.put(ro.apiURL, ...routeMiddlewares, wrappedHandler);
720
+ dbosExec.logger.debug(`DBOS Server Registered PUT ${ro.apiURL}`);
721
+ break;
722
+ case handlerTypes_1.APITypes.PATCH:
723
+ router.patch(ro.apiURL, ...routeMiddlewares, wrappedHandler);
724
+ dbosExec.logger.debug(`DBOS Server Registered PATCH ${ro.apiURL}`);
725
+ break;
726
+ case handlerTypes_1.APITypes.DELETE:
727
+ router.delete(ro.apiURL, ...routeMiddlewares, wrappedHandler);
728
+ dbosExec.logger.debug(`DBOS Server Registered DELETE ${ro.apiURL}`);
729
+ break;
730
+ default:
731
+ (0, utils_1.exhaustiveCheckGuard)(ro.apiType);
732
+ }
733
+ });
734
+ }
452
735
  }
453
- exports.DBOSAdminServer = DBOSAdminServer;
454
- //# sourceMappingURL=adminserver.js.map
736
+ exports.DBOSHttpServer = DBOSHttpServer;
737
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/httpServer/server.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,19 @@ export { SchedulerMode, SchedulerConfig } from './scheduler/scheduler';
4
4
  export { DBOSLifecycleCallback, ExternalRegistration } from './decorators';
5
5
  export { WorkflowQueue } from './wfqueue';
6
6
  export * as Error from './error';
7
- export { DBOSWorkflowConflictError } from './error';
7
+ export { DBOSResponseError, DBOSWorkflowConflictError } from './error';
8
+ export { TransactionConfig } from './transaction';
9
+ export { StoredProcedureConfig } from './procedure';
8
10
  export { WorkflowConfig, WorkflowHandle, StatusString, GetWorkflowsInput, GetQueuedWorkflowsInput, WorkflowStatus, } from './workflow';
9
11
  export { Debouncer, DebouncerClient } from './debouncer';
12
+ export { SerializationRecipe } from './utils';
10
13
  export { StepConfig } from './step';
11
- export { FunctionName, ConfiguredInstance, MethodParameter } from './decorators';
12
- export { DBOSConfig, DBOSExternalState } from './dbos-executor';
14
+ export { FunctionName, DBOSInitializer, DBOSMethodMiddlewareInstaller, ConfiguredInstance, MethodParameter, ArgName, OrmEntities, } from './decorators';
15
+ export { ArgRequired, ArgOptional, ArgDate, ArgVarchar, DefaultArgRequired, DefaultArgOptional, DefaultArgValidate, LogMask, LogMasks, SkipLogging, requestArgValidation, } from './paramdecorators';
16
+ export { readConfigFile, getApplicationDatabaseUrl, getApplicationDatabaseUrl as getDatabaseUrl, } from './dbos-runtime/config';
17
+ export { DBOSConfig, DBOSRuntimeConfig, DBOSExternalState, DBOSExternalState as DBOSEventReceiverState, } from './dbos-executor';
18
+ export { DBOSHttpAuthMiddleware, DBOSHttpAuthReturn, MiddlewareContext, Authentication, KoaBodyParser, KoaCors, KoaGlobalMiddleware, KoaMiddleware, } from './httpServer/middleware';
19
+ export { ArgSources } from './httpServer/handlerTypes';
20
+ export { ArgSource, } from './httpServer/handler';
21
+ export { InitContext } from './dbos';
13
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD,OAAO,EACL,cAAc,EACd,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EACL,cAAc,EACd,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EACL,YAAY,EAGZ,eAAe,EACf,6BAA6B,EAG7B,kBAAkB,EAGlB,eAAe,EACf,OAAO,EAGP,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,WAAW,EACX,WAAW,EACX,OAAO,EACP,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,EACP,QAAQ,EACR,WAAW,EACX,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,yBAAyB,IAAI,cAAc,GAC5C,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,IAAI,sBAAsB,GAC5C,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EAGjB,cAAc,EACd,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,aAAa,GACd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAEL,SAAS,GACV,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC"}
package/dist/src/index.js CHANGED
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.MethodParameter = exports.ConfiguredInstance = exports.DebouncerClient = exports.Debouncer = exports.StatusString = exports.DBOSWorkflowConflictError = exports.Error = exports.WorkflowQueue = exports.SchedulerMode = exports.DBOSClient = exports.DBOS = void 0;
26
+ exports.InitContext = exports.ArgSource = exports.ArgSources = exports.KoaMiddleware = exports.KoaGlobalMiddleware = exports.KoaCors = exports.KoaBodyParser = exports.Authentication = exports.getDatabaseUrl = exports.getApplicationDatabaseUrl = exports.readConfigFile = exports.requestArgValidation = exports.SkipLogging = exports.LogMasks = exports.LogMask = exports.DefaultArgValidate = exports.DefaultArgOptional = exports.DefaultArgRequired = exports.ArgVarchar = exports.ArgDate = exports.ArgOptional = exports.ArgRequired = exports.OrmEntities = exports.ArgName = exports.MethodParameter = exports.ConfiguredInstance = exports.DBOSInitializer = exports.DebouncerClient = exports.Debouncer = exports.StatusString = exports.DBOSWorkflowConflictError = exports.DBOSResponseError = exports.Error = exports.WorkflowQueue = exports.SchedulerMode = exports.DBOSClient = exports.DBOS = void 0;
27
27
  var dbos_1 = require("./dbos");
28
28
  Object.defineProperty(exports, "DBOS", { enumerable: true, get: function () { return dbos_1.DBOS; } });
29
29
  var client_1 = require("./client");
@@ -34,6 +34,7 @@ var wfqueue_1 = require("./wfqueue");
34
34
  Object.defineProperty(exports, "WorkflowQueue", { enumerable: true, get: function () { return wfqueue_1.WorkflowQueue; } });
35
35
  exports.Error = __importStar(require("./error"));
36
36
  var error_1 = require("./error");
37
+ Object.defineProperty(exports, "DBOSResponseError", { enumerable: true, get: function () { return error_1.DBOSResponseError; } });
37
38
  Object.defineProperty(exports, "DBOSWorkflowConflictError", { enumerable: true, get: function () { return error_1.DBOSWorkflowConflictError; } });
38
39
  var workflow_1 = require("./workflow");
39
40
  Object.defineProperty(exports, "StatusString", { enumerable: true, get: function () { return workflow_1.StatusString; } });
@@ -41,6 +42,44 @@ var debouncer_1 = require("./debouncer");
41
42
  Object.defineProperty(exports, "Debouncer", { enumerable: true, get: function () { return debouncer_1.Debouncer; } });
42
43
  Object.defineProperty(exports, "DebouncerClient", { enumerable: true, get: function () { return debouncer_1.DebouncerClient; } });
43
44
  var decorators_1 = require("./decorators");
45
+ // Method Decorators
46
+ Object.defineProperty(exports, "DBOSInitializer", { enumerable: true, get: function () { return decorators_1.DBOSInitializer; } });
47
+ // Class Instances
44
48
  Object.defineProperty(exports, "ConfiguredInstance", { enumerable: true, get: function () { return decorators_1.ConfiguredInstance; } });
49
+ // Parameter Decorators
45
50
  Object.defineProperty(exports, "MethodParameter", { enumerable: true, get: function () { return decorators_1.MethodParameter; } });
51
+ Object.defineProperty(exports, "ArgName", { enumerable: true, get: function () { return decorators_1.ArgName; } });
52
+ // ORM Class Decorators
53
+ Object.defineProperty(exports, "OrmEntities", { enumerable: true, get: function () { return decorators_1.OrmEntities; } });
54
+ var paramdecorators_1 = require("./paramdecorators");
55
+ Object.defineProperty(exports, "ArgRequired", { enumerable: true, get: function () { return paramdecorators_1.ArgRequired; } });
56
+ Object.defineProperty(exports, "ArgOptional", { enumerable: true, get: function () { return paramdecorators_1.ArgOptional; } });
57
+ Object.defineProperty(exports, "ArgDate", { enumerable: true, get: function () { return paramdecorators_1.ArgDate; } });
58
+ Object.defineProperty(exports, "ArgVarchar", { enumerable: true, get: function () { return paramdecorators_1.ArgVarchar; } });
59
+ Object.defineProperty(exports, "DefaultArgRequired", { enumerable: true, get: function () { return paramdecorators_1.DefaultArgRequired; } });
60
+ Object.defineProperty(exports, "DefaultArgOptional", { enumerable: true, get: function () { return paramdecorators_1.DefaultArgOptional; } });
61
+ Object.defineProperty(exports, "DefaultArgValidate", { enumerable: true, get: function () { return paramdecorators_1.DefaultArgValidate; } });
62
+ Object.defineProperty(exports, "LogMask", { enumerable: true, get: function () { return paramdecorators_1.LogMask; } });
63
+ Object.defineProperty(exports, "LogMasks", { enumerable: true, get: function () { return paramdecorators_1.LogMasks; } });
64
+ Object.defineProperty(exports, "SkipLogging", { enumerable: true, get: function () { return paramdecorators_1.SkipLogging; } });
65
+ Object.defineProperty(exports, "requestArgValidation", { enumerable: true, get: function () { return paramdecorators_1.requestArgValidation; } });
66
+ var config_1 = require("./dbos-runtime/config");
67
+ Object.defineProperty(exports, "readConfigFile", { enumerable: true, get: function () { return config_1.readConfigFile; } });
68
+ Object.defineProperty(exports, "getApplicationDatabaseUrl", { enumerable: true, get: function () { return config_1.getApplicationDatabaseUrl; } });
69
+ Object.defineProperty(exports, "getDatabaseUrl", { enumerable: true, get: function () { return config_1.getApplicationDatabaseUrl; } });
70
+ var middleware_1 = require("./httpServer/middleware");
71
+ // Middleware Decorators
72
+ Object.defineProperty(exports, "Authentication", { enumerable: true, get: function () { return middleware_1.Authentication; } });
73
+ Object.defineProperty(exports, "KoaBodyParser", { enumerable: true, get: function () { return middleware_1.KoaBodyParser; } });
74
+ Object.defineProperty(exports, "KoaCors", { enumerable: true, get: function () { return middleware_1.KoaCors; } });
75
+ Object.defineProperty(exports, "KoaGlobalMiddleware", { enumerable: true, get: function () { return middleware_1.KoaGlobalMiddleware; } });
76
+ Object.defineProperty(exports, "KoaMiddleware", { enumerable: true, get: function () { return middleware_1.KoaMiddleware; } });
77
+ var handlerTypes_1 = require("./httpServer/handlerTypes");
78
+ Object.defineProperty(exports, "ArgSources", { enumerable: true, get: function () { return handlerTypes_1.ArgSources; } });
79
+ var handler_1 = require("./httpServer/handler");
80
+ // Endpoint Parameter Decorators
81
+ Object.defineProperty(exports, "ArgSource", { enumerable: true, get: function () { return handler_1.ArgSource; } });
82
+ // Deprecated items below here...
83
+ var dbos_2 = require("./dbos");
84
+ Object.defineProperty(exports, "InitContext", { enumerable: true, get: function () { return dbos_2.InitContext; } });
46
85
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAEb,mCAAsC;AAA7B,oGAAA,UAAU,OAAA;AAEnB,mDAAuE;AAA9D,0GAAA,aAAa,OAAA;AAItB,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AAEtB,iDAAiC;AAEjC,iCAAoD;AAA3C,kHAAA,yBAAyB,OAAA;AAElC,uCAOoB;AAJlB,wGAAA,YAAY,OAAA;AAMd,yCAAyD;AAAhD,sGAAA,SAAS,OAAA;AAAE,4GAAA,eAAe,OAAA;AAInC,2CAAiF;AAA1D,gHAAA,kBAAkB,OAAA;AAAE,6GAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAEb,mCAAsC;AAA7B,oGAAA,UAAU,OAAA;AAEnB,mDAAuE;AAA9D,0GAAA,aAAa,OAAA;AAItB,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AAEtB,iDAAiC;AAEjC,iCAAuE;AAA9D,0GAAA,iBAAiB,OAAA;AAAE,kHAAA,yBAAyB,OAAA;AAMrD,uCAOoB;AAJlB,wGAAA,YAAY,OAAA;AAMd,yCAAyD;AAAhD,sGAAA,SAAS,OAAA;AAAE,4GAAA,eAAe,OAAA;AAMnC,2CAgBsB;AAbpB,oBAAoB;AACpB,6GAAA,eAAe,OAAA;AAGf,kBAAkB;AAClB,gHAAA,kBAAkB,OAAA;AAElB,uBAAuB;AACvB,6GAAA,eAAe,OAAA;AACf,qGAAA,OAAO,OAAA;AAEP,uBAAuB;AACvB,yGAAA,WAAW,OAAA;AAGb,qDAY2B;AAXzB,8GAAA,WAAW,OAAA;AACX,8GAAA,WAAW,OAAA;AACX,0GAAA,OAAO,OAAA;AACP,6GAAA,UAAU,OAAA;AACV,qHAAA,kBAAkB,OAAA;AAClB,qHAAA,kBAAkB,OAAA;AAClB,qHAAA,kBAAkB,OAAA;AAClB,0GAAA,OAAO,OAAA;AACP,2GAAA,QAAQ,OAAA;AACR,8GAAA,WAAW,OAAA;AACX,uHAAA,oBAAoB,OAAA;AAGtB,gDAI+B;AAH7B,wGAAA,cAAc,OAAA;AACd,mHAAA,yBAAyB,OAAA;AACzB,wGAAA,yBAAyB,OAAkB;AAU7C,sDAWiC;AAN/B,wBAAwB;AACxB,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,qGAAA,OAAO,OAAA;AACP,iHAAA,mBAAmB,OAAA;AACnB,2GAAA,aAAa,OAAA;AAGf,0DAAuD;AAA9C,0GAAA,UAAU,OAAA;AAEnB,gDAG8B;AAF5B,gCAAgC;AAChC,oGAAA,SAAS,OAAA;AAGX,iCAAiC;AAEjC,+BAAqC;AAA5B,mGAAA,WAAW,OAAA"}
@@ -0,0 +1,39 @@
1
+ import { MethodRegistrationBase } from './decorators';
2
+ export declare enum ArgRequiredOptions {
3
+ REQUIRED = "REQUIRED",
4
+ OPTIONAL = "OPTIONAL",
5
+ DEFAULT = "DEFAULT"
6
+ }
7
+ export declare function requestArgValidation(methReg: MethodRegistrationBase): void;
8
+ /** @deprecated */
9
+ export declare function ArgRequired(target: object, propertyKey: PropertyKey, parameterIndex: number): void;
10
+ /** @deprecated */
11
+ export declare function ArgOptional(target: object, propertyKey: PropertyKey, parameterIndex: number): void;
12
+ /** @deprecated */
13
+ export declare function ArgDate(): (target: object, propertyKey: PropertyKey, parameterIndex: number) => void;
14
+ /** @deprecated */
15
+ export declare function ArgVarchar(length: number): (target: object, propertyKey: PropertyKey, parameterIndex: number) => void;
16
+ /** @deprecated */
17
+ export declare function DefaultArgRequired<T extends {
18
+ new (...args: unknown[]): object;
19
+ }>(ctor: T): void;
20
+ /** @deprecated */
21
+ export declare function DefaultArgValidate<T extends {
22
+ new (...args: unknown[]): object;
23
+ }>(ctor: T): void;
24
+ /** @deprecated */
25
+ export declare function DefaultArgOptional<T extends {
26
+ new (...args: unknown[]): object;
27
+ }>(ctor: T): void;
28
+ export declare enum LogMasks {
29
+ NONE = "NONE",
30
+ HASH = "HASH",
31
+ SKIP = "SKIP"
32
+ }
33
+ export declare const LOGGER = "log";
34
+ /** @deprecated */
35
+ export declare function SkipLogging(target: object, propertyKey: PropertyKey, parameterIndex: number): void;
36
+ /** @deprecated */
37
+ export declare function LogMask(mask: LogMasks): (target: object, propertyKey: PropertyKey, parameterIndex: number) => void;
38
+ export declare function logMethodArgs<Args extends unknown[]>(methReg: MethodRegistrationBase, args: Args): Args;
39
+ //# sourceMappingURL=paramdecorators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paramdecorators.d.ts","sourceRoot":"","sources":["../../src/paramdecorators.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAOtD,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB;AAuBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,QAEnE;AA0CD,kBAAkB;AAClB,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAa3F;AAED,kBAAkB;AAClB,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAa3F;AAED,kBAAkB;AAClB,wBAAgB,OAAO,aAEI,MAAM,eAAe,WAAW,kBAAkB,MAAM,UAelF;AAED,kBAAkB;AAClB,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,YACd,MAAM,eAAe,WAAW,kBAAkB,MAAM,UAclF;AAED,kBAAkB;AAClB,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,CAAC,QAKzF;AAED,kBAAkB;AAClB,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,CAAC,QAKzF;AAED,kBAAkB;AAClB,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,CAAC,QAKzF;AAED,oBAAY,QAAQ;IAClB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAMD,eAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,kBAAkB;AAClB,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,QAW3F;AAED,kBAAkB;AAClB,wBAAgB,OAAO,CAAC,IAAI,EAAE,QAAQ,YACX,MAAM,eAAe,WAAW,kBAAkB,MAAM,UAYlF;AAwBD,wBAAgB,aAAa,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,QAwBhG"}