@based/functions 2.2.4 → 2.3.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.
@@ -40,6 +40,7 @@ export type BasedChannelFunction<P = any, K = any> = (based: BasedFunctionClient
40
40
  export type BasedChannelPublishFunction<P = any, M = any> = (based: BasedFunctionClient, payload: P, message: M, id: number, ctx: Context) => void;
41
41
  export type ChannelMessageFunction<M = any> = (message: M) => void;
42
42
  export type ChannelMessageFunctionInternal<K = any> = (message: K, err?: any) => void;
43
+ export type BasedJobFunction = ((based: BasedFunctionClient) => Promise<() => void>) | ((based: BasedFunctionClient) => () => void);
43
44
  export type UninstallFunction = () => Promise<void>;
44
45
  type FunctionConfigShared = {
45
46
  /** Function name */
@@ -96,7 +97,7 @@ type FunctionConfigShared = {
96
97
  timeoutCounter?: number;
97
98
  };
98
99
  type FunctionConfigSharedComplete = Required<FunctionConfigShared, 'maxPayloadSize' | 'rateLimitTokens' | 'version' | 'name'>;
99
- export type BasedFunctionTypes = 'channel' | 'query' | 'function' | 'stream' | 'app';
100
+ export type BasedFunctionTypes = 'channel' | 'query' | 'function' | 'stream' | 'app' | 'job';
100
101
  type BasedChannelFunctionConfig = {
101
102
  /** Function type `channel, function, query, stream, authorize` */
102
103
  type: 'channel';
@@ -158,8 +159,12 @@ type BasedAppFunctionConfig = {
158
159
  path?: string;
159
160
  favicon?: string;
160
161
  };
161
- export type BasedFunctionConfig<T extends BasedFunctionTypes = BasedFunctionTypes> = T extends 'channel' ? BasedChannelFunctionConfig & FunctionConfigShared : T extends 'function' ? BasedCallFunctionConfig & FunctionConfigShared : T extends 'query' ? BasedQueryFunctionConfig & FunctionConfigShared : T extends 'stream' ? BasedStreamFunctionConfig & FunctionConfigShared : T extends 'app' ? BasedAppFunctionConfig & FunctionConfigShared : (BasedChannelFunctionConfig & FunctionConfigShared) | (BasedCallFunctionConfig & FunctionConfigShared) | (BasedQueryFunctionConfig & FunctionConfigShared) | (BasedStreamFunctionConfig & FunctionConfigShared) | (BasedAppFunctionConfig & FunctionConfigShared);
162
- export type BasedFunctionConfigComplete<T extends BasedFunctionTypes = BasedFunctionTypes> = T extends 'channel' ? BasedChannelFunctionConfig & FunctionConfigSharedComplete : T extends 'function' ? BasedCallFunctionConfig & FunctionConfigSharedComplete : T extends 'query' ? BasedQueryFunctionConfig & FunctionConfigSharedComplete : T extends 'stream' ? BasedStreamFunctionConfig & FunctionConfigSharedComplete : T extends 'app' ? BasedAppFunctionConfig & FunctionConfigSharedComplete : (BasedChannelFunctionConfig & FunctionConfigSharedComplete) | (BasedCallFunctionConfig & FunctionConfigSharedComplete) | (BasedQueryFunctionConfig & FunctionConfigSharedComplete) | (BasedStreamFunctionConfig & FunctionConfigSharedComplete) | (BasedAppFunctionConfig & FunctionConfigSharedComplete);
162
+ type BasedJobFunctionConfig = {
163
+ type: 'job';
164
+ fn?: BasedFunction;
165
+ };
166
+ export type BasedFunctionConfig<T extends BasedFunctionTypes = BasedFunctionTypes> = T extends 'channel' ? BasedChannelFunctionConfig & FunctionConfigShared : T extends 'function' ? BasedCallFunctionConfig & FunctionConfigShared : T extends 'query' ? BasedQueryFunctionConfig & FunctionConfigShared : T extends 'stream' ? BasedStreamFunctionConfig & FunctionConfigShared : T extends 'job' ? BasedJobFunctionConfig & FunctionConfigShared : T extends 'app' ? BasedAppFunctionConfig & FunctionConfigShared : (BasedChannelFunctionConfig & FunctionConfigShared) | (BasedCallFunctionConfig & FunctionConfigShared) | (BasedQueryFunctionConfig & FunctionConfigShared) | (BasedStreamFunctionConfig & FunctionConfigShared) | (BasedJobFunctionConfig & FunctionConfigShared) | (BasedAppFunctionConfig & FunctionConfigShared);
167
+ export type BasedFunctionConfigComplete<T extends BasedFunctionTypes = BasedFunctionTypes> = T extends 'channel' ? BasedChannelFunctionConfig & FunctionConfigSharedComplete : T extends 'function' ? BasedCallFunctionConfig & FunctionConfigSharedComplete : T extends 'query' ? BasedQueryFunctionConfig & FunctionConfigSharedComplete : T extends 'stream' ? BasedStreamFunctionConfig & FunctionConfigSharedComplete : T extends 'job' ? BasedJobFunctionConfig & FunctionConfigSharedComplete : T extends 'app' ? BasedAppFunctionConfig & FunctionConfigSharedComplete : (BasedChannelFunctionConfig & FunctionConfigSharedComplete) | (BasedCallFunctionConfig & FunctionConfigSharedComplete) | (BasedQueryFunctionConfig & FunctionConfigSharedComplete) | (BasedStreamFunctionConfig & FunctionConfigSharedComplete) | (BasedJobFunctionConfig & FunctionConfigSharedComplete) | (BasedAppFunctionConfig & FunctionConfigSharedComplete);
163
168
  export type BasedAuthorizeFunctionConfig = {
164
169
  /** Function type `authorize` */
165
170
  type: 'authorize';
@@ -1 +1 @@
1
- {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":";;;AAiTA,SAAgB,YAAY,CAC1B,IAAO,EACP,KAAU;IAEV,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,IAAI,KAAK,IAAI;QACnB,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAA;AACH,CAAC;AAVD,oCAUC;AAED,SAAgB,eAAe,CAAC,KAAU;IACxC,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YACvB,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,KAAK,CAAC,IAAI,KAAK,UAAU;YACzB,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAA;AACH,CAAC;AAVD,0CAUC;AAED,SAAgB,qBAAqB,CACnC,IAAO,EACP,MAAW;IAEX,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACnC,CAAC;AALD,sDAKC;AAED,SAAgB,wBAAwB,CACtC,MAAW;IAEX,OAAO,eAAe,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC;AAJD,4DAIC"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":";;;AAiUA,SAAgB,YAAY,CAC1B,IAAO,EACP,KAAU;IAEV,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,IAAI,KAAK,IAAI;QACnB,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAA;AACH,CAAC;AAVD,oCAUC;AAED,SAAgB,eAAe,CAAC,KAAU;IACxC,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YACvB,KAAK,CAAC,IAAI,KAAK,OAAO;YACtB,KAAK,CAAC,IAAI,KAAK,UAAU;YACzB,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAA;AACH,CAAC;AAVD,0CAUC;AAED,SAAgB,qBAAqB,CACnC,IAAO,EACP,MAAW;IAEX,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACnC,CAAC;AALD,sDAKC;AAED,SAAgB,wBAAwB,CACtC,MAAW;IAEX,OAAO,eAAe,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC;AAJD,4DAIC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/functions",
3
- "version": "2.2.4",
3
+ "version": "2.3.0",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/functions.ts CHANGED
@@ -111,6 +111,10 @@ export type ChannelMessageFunctionInternal<K = any> = (
111
111
  err?: any
112
112
  ) => void
113
113
 
114
+ export type BasedJobFunction =
115
+ | ((based: BasedFunctionClient) => Promise<() => void>)
116
+ | ((based: BasedFunctionClient) => () => void)
117
+
114
118
  export type UninstallFunction = () => Promise<void>
115
119
 
116
120
  // ------------ Config -------------------
@@ -180,6 +184,7 @@ export type BasedFunctionTypes =
180
184
  | 'function'
181
185
  | 'stream'
182
186
  | 'app'
187
+ | 'job'
183
188
 
184
189
  type BasedChannelFunctionConfig = {
185
190
  /** Function type `channel, function, query, stream, authorize` */
@@ -247,6 +252,11 @@ type BasedAppFunctionConfig = {
247
252
  favicon?: string
248
253
  }
249
254
 
255
+ type BasedJobFunctionConfig = {
256
+ type: 'job'
257
+ fn?: BasedFunction
258
+ }
259
+
250
260
  export type BasedFunctionConfig<
251
261
  T extends BasedFunctionTypes = BasedFunctionTypes
252
262
  > = T extends 'channel'
@@ -257,6 +267,8 @@ export type BasedFunctionConfig<
257
267
  ? BasedQueryFunctionConfig & FunctionConfigShared
258
268
  : T extends 'stream'
259
269
  ? BasedStreamFunctionConfig & FunctionConfigShared
270
+ : T extends 'job'
271
+ ? BasedJobFunctionConfig & FunctionConfigShared
260
272
  : T extends 'app'
261
273
  ? BasedAppFunctionConfig & FunctionConfigShared
262
274
  :
@@ -264,6 +276,7 @@ export type BasedFunctionConfig<
264
276
  | (BasedCallFunctionConfig & FunctionConfigShared)
265
277
  | (BasedQueryFunctionConfig & FunctionConfigShared)
266
278
  | (BasedStreamFunctionConfig & FunctionConfigShared)
279
+ | (BasedJobFunctionConfig & FunctionConfigShared)
267
280
  | (BasedAppFunctionConfig & FunctionConfigShared)
268
281
 
269
282
  export type BasedFunctionConfigComplete<
@@ -276,6 +289,8 @@ export type BasedFunctionConfigComplete<
276
289
  ? BasedQueryFunctionConfig & FunctionConfigSharedComplete
277
290
  : T extends 'stream'
278
291
  ? BasedStreamFunctionConfig & FunctionConfigSharedComplete
292
+ : T extends 'job'
293
+ ? BasedJobFunctionConfig & FunctionConfigSharedComplete
279
294
  : T extends 'app'
280
295
  ? BasedAppFunctionConfig & FunctionConfigSharedComplete
281
296
  :
@@ -283,6 +298,7 @@ export type BasedFunctionConfigComplete<
283
298
  | (BasedCallFunctionConfig & FunctionConfigSharedComplete)
284
299
  | (BasedQueryFunctionConfig & FunctionConfigSharedComplete)
285
300
  | (BasedStreamFunctionConfig & FunctionConfigSharedComplete)
301
+ | (BasedJobFunctionConfig & FunctionConfigSharedComplete)
286
302
  | (BasedAppFunctionConfig & FunctionConfigSharedComplete)
287
303
 
288
304
  export type BasedAuthorizeFunctionConfig = {