@flowcore/sdk 1.52.0 → 1.54.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 (99) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +2 -2
  3. package/esm/commands/api-key/api-key.create.d.ts +20 -23
  4. package/esm/commands/api-key/api-key.create.d.ts.map +1 -1
  5. package/esm/commands/api-key/api-key.create.js +21 -62
  6. package/esm/commands/api-key/api-key.delete.d.ts +22 -12
  7. package/esm/commands/api-key/api-key.delete.d.ts.map +1 -1
  8. package/esm/commands/api-key/api-key.delete.js +27 -41
  9. package/esm/commands/api-key/api-key.edit.d.ts +41 -0
  10. package/esm/commands/api-key/api-key.edit.d.ts.map +1 -0
  11. package/esm/commands/api-key/api-key.edit.js +40 -0
  12. package/esm/commands/api-key/api-key.list.d.ts +20 -8
  13. package/esm/commands/api-key/api-key.list.d.ts.map +1 -1
  14. package/esm/commands/api-key/api-key.list.js +27 -36
  15. package/esm/commands/index.d.ts +3 -0
  16. package/esm/commands/index.d.ts.map +1 -1
  17. package/esm/commands/index.js +3 -0
  18. package/esm/commands/secret/secret.create.d.ts +23 -8
  19. package/esm/commands/secret/secret.create.d.ts.map +1 -1
  20. package/esm/commands/secret/secret.create.js +27 -39
  21. package/esm/commands/secret/secret.delete.d.ts +20 -8
  22. package/esm/commands/secret/secret.delete.d.ts.map +1 -1
  23. package/esm/commands/secret/secret.delete.js +27 -41
  24. package/esm/commands/secret/secret.edit.d.ts +45 -0
  25. package/esm/commands/secret/secret.edit.d.ts.map +1 -0
  26. package/esm/commands/secret/secret.edit.js +40 -0
  27. package/esm/commands/secret/secret.list.d.ts +20 -7
  28. package/esm/commands/secret/secret.list.d.ts.map +1 -1
  29. package/esm/commands/secret/secret.list.js +27 -41
  30. package/esm/commands/variable/variable.create.d.ts +21 -7
  31. package/esm/commands/variable/variable.create.d.ts.map +1 -1
  32. package/esm/commands/variable/variable.create.js +26 -44
  33. package/esm/commands/variable/variable.delete.d.ts +20 -8
  34. package/esm/commands/variable/variable.delete.d.ts.map +1 -1
  35. package/esm/commands/variable/variable.delete.js +27 -44
  36. package/esm/commands/variable/variable.edit.d.ts +45 -0
  37. package/esm/commands/variable/variable.edit.d.ts.map +1 -0
  38. package/esm/commands/variable/variable.edit.js +40 -0
  39. package/esm/commands/variable/variable.list.d.ts +19 -7
  40. package/esm/commands/variable/variable.list.d.ts.map +1 -1
  41. package/esm/commands/variable/variable.list.js +27 -47
  42. package/esm/contracts/api-key.d.ts +22 -1
  43. package/esm/contracts/api-key.d.ts.map +1 -1
  44. package/esm/contracts/api-key.js +17 -0
  45. package/esm/contracts/secret.d.ts +16 -0
  46. package/esm/contracts/secret.d.ts.map +1 -0
  47. package/esm/contracts/secret.js +11 -0
  48. package/esm/contracts/variable.d.ts +5 -1
  49. package/esm/contracts/variable.d.ts.map +1 -1
  50. package/esm/contracts/variable.js +4 -0
  51. package/package.json +1 -1
  52. package/script/commands/api-key/api-key.create.d.ts +20 -23
  53. package/script/commands/api-key/api-key.create.d.ts.map +1 -1
  54. package/script/commands/api-key/api-key.create.js +21 -62
  55. package/script/commands/api-key/api-key.delete.d.ts +22 -12
  56. package/script/commands/api-key/api-key.delete.d.ts.map +1 -1
  57. package/script/commands/api-key/api-key.delete.js +27 -41
  58. package/script/commands/api-key/api-key.edit.d.ts +41 -0
  59. package/script/commands/api-key/api-key.edit.d.ts.map +1 -0
  60. package/script/commands/api-key/api-key.edit.js +44 -0
  61. package/script/commands/api-key/api-key.list.d.ts +20 -8
  62. package/script/commands/api-key/api-key.list.d.ts.map +1 -1
  63. package/script/commands/api-key/api-key.list.js +27 -36
  64. package/script/commands/index.d.ts +3 -0
  65. package/script/commands/index.d.ts.map +1 -1
  66. package/script/commands/index.js +3 -0
  67. package/script/commands/secret/secret.create.d.ts +23 -8
  68. package/script/commands/secret/secret.create.d.ts.map +1 -1
  69. package/script/commands/secret/secret.create.js +27 -39
  70. package/script/commands/secret/secret.delete.d.ts +20 -8
  71. package/script/commands/secret/secret.delete.d.ts.map +1 -1
  72. package/script/commands/secret/secret.delete.js +27 -41
  73. package/script/commands/secret/secret.edit.d.ts +45 -0
  74. package/script/commands/secret/secret.edit.d.ts.map +1 -0
  75. package/script/commands/secret/secret.edit.js +44 -0
  76. package/script/commands/secret/secret.list.d.ts +20 -7
  77. package/script/commands/secret/secret.list.d.ts.map +1 -1
  78. package/script/commands/secret/secret.list.js +27 -41
  79. package/script/commands/variable/variable.create.d.ts +21 -7
  80. package/script/commands/variable/variable.create.d.ts.map +1 -1
  81. package/script/commands/variable/variable.create.js +26 -44
  82. package/script/commands/variable/variable.delete.d.ts +20 -8
  83. package/script/commands/variable/variable.delete.d.ts.map +1 -1
  84. package/script/commands/variable/variable.delete.js +27 -44
  85. package/script/commands/variable/variable.edit.d.ts +45 -0
  86. package/script/commands/variable/variable.edit.d.ts.map +1 -0
  87. package/script/commands/variable/variable.edit.js +44 -0
  88. package/script/commands/variable/variable.list.d.ts +19 -7
  89. package/script/commands/variable/variable.list.d.ts.map +1 -1
  90. package/script/commands/variable/variable.list.js +27 -47
  91. package/script/contracts/api-key.d.ts +22 -1
  92. package/script/contracts/api-key.d.ts.map +1 -1
  93. package/script/contracts/api-key.js +18 -1
  94. package/script/contracts/secret.d.ts +16 -0
  95. package/script/contracts/secret.d.ts.map +1 -0
  96. package/script/contracts/secret.js +14 -0
  97. package/script/contracts/variable.d.ts +5 -1
  98. package/script/contracts/variable.d.ts.map +1 -1
  99. package/script/contracts/variable.js +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"variable.delete.d.ts","sourceRoot":"","sources":["../../../src/commands/variable/variable.delete.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAIhE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;CACZ;AA4BD;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACrF;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO;IAW/D;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAMtD"}
1
+ {"version":3,"file":"variable.delete.d.ts","sourceRoot":"","sources":["../../../src/commands/variable/variable.delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;CACZ;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC;IAC9E;;OAEG;IACH,UAAmB,cAAc,EAAE,OAAO,CAAQ;IAElD;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,IAAI,OAAO;CAG5C"}
@@ -1,55 +1,38 @@
1
- import { Type } from "@sinclair/typebox";
2
- import { GraphQlCommand } from "../../common/command-graphql.js";
3
- import { parseResponseHelper } from "../../utils/parse-response-helper.js";
4
- import { CommandError } from "../../exceptions/command-error.js";
5
- const graphQlQueryById = `
6
- mutation FLOWCORE_SDK_VARIABLE_DELETE($tenantId: ID!, $key: String!) {
7
- organization(id: $tenantId) {
8
- removeVariable(key: $key)
9
- }
10
- }
11
- `;
12
- const responseSchema = Type.Object({
13
- errors: Type.Optional(Type.Array(Type.Object({
14
- message: Type.String(),
15
- }))),
16
- data: Type.Union([
17
- Type.Object({
18
- organization: Type.Object({
19
- removeVariable: Type.Union([Type.Boolean(), Type.Null()]),
20
- }),
21
- }),
22
- Type.Null(),
23
- ]),
24
- });
1
+ import { Command } from "../../common/command.js";
25
2
  /**
26
- * Create a variable
3
+ * Delete a variable
27
4
  */
28
- export class VariableDeleteCommand extends GraphQlCommand {
5
+ export class VariableDeleteCommand extends Command {
29
6
  /**
30
- * The allowed modes for the command
7
+ * Whether the command should retry on failure
31
8
  */
32
- allowedModes = ["bearer"];
9
+ retryOnFailure = false;
33
10
  /**
34
- * Parse the response
11
+ * Get the method
35
12
  */
36
- parseResponse(rawResponse) {
37
- const response = parseResponseHelper(responseSchema, rawResponse);
38
- if (response.errors) {
39
- throw new CommandError(this.constructor.name, response.errors[0].message);
40
- }
41
- if (!response.data || response.data.organization.removeVariable !== true) {
42
- throw new CommandError(this.constructor.name, "Failed to delete variable");
43
- }
44
- return response.data.organization.removeVariable;
13
+ getMethod() {
14
+ return "DELETE";
45
15
  }
46
16
  /**
47
- * Get the body for the request
17
+ * Get the base url
18
+ */
19
+ getBaseUrl() {
20
+ return "https://tenant-store.api.flowcore.io";
21
+ }
22
+ /**
23
+ * Get the path
24
+ */
25
+ getPath() {
26
+ return `/api/v1/tenants/${this.input.tenantId}/variables/${this.input.key}`;
27
+ }
28
+ /**
29
+ * The allowed modes for the command
30
+ */
31
+ allowedModes = ["bearer"];
32
+ /**
33
+ * Parse the response
48
34
  */
49
- getBody() {
50
- return {
51
- query: graphQlQueryById,
52
- variables: this.input,
53
- };
35
+ parseResponse() {
36
+ return true;
54
37
  }
55
38
  }
@@ -0,0 +1,45 @@
1
+ import { Command } from "../../common/command.js";
2
+ import { type Variable } from "../../contracts/variable.js";
3
+ /**
4
+ * The input for the variable edit command
5
+ */
6
+ export interface VariableEditInput {
7
+ /** The tenant id */
8
+ tenantId: string;
9
+ /** The key of the variable */
10
+ key: string;
11
+ /** The value of the variable */
12
+ value?: string;
13
+ /** The description of the variable */
14
+ description?: string;
15
+ }
16
+ /**
17
+ * Edit a variable
18
+ */
19
+ export declare class VariableEditCommand extends Command<VariableEditInput, Variable> {
20
+ /**
21
+ * Whether the command should retry on failure
22
+ */
23
+ protected retryOnFailure: boolean;
24
+ /**
25
+ * Get the method
26
+ */
27
+ protected getMethod(): string;
28
+ /**
29
+ * Get the base url
30
+ */
31
+ protected getBaseUrl(): string;
32
+ /**
33
+ * Get the path
34
+ */
35
+ protected getPath(): string;
36
+ /**
37
+ * The allowed modes for the command
38
+ */
39
+ protected allowedModes: ("apiKey" | "bearer")[];
40
+ /**
41
+ * Parse the response
42
+ */
43
+ protected parseResponse(rawResponse: unknown): Variable;
44
+ }
45
+ //# sourceMappingURL=variable.edit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variable.edit.d.ts","sourceRoot":"","sources":["../../../src/commands/variable/variable.edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEjD,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,6BAA6B,CAAA;AAE3E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC;IAC3E;;OAEG;IACH,UAAmB,cAAc,EAAE,OAAO,CAAQ;IAElD;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ;CAGjE"}
@@ -0,0 +1,40 @@
1
+ import { Command } from "../../common/command.js";
2
+ import { parseResponseHelper } from "../../utils/parse-response-helper.js";
3
+ import { VariableSchema } from "../../contracts/variable.js";
4
+ /**
5
+ * Edit a variable
6
+ */
7
+ export class VariableEditCommand extends Command {
8
+ /**
9
+ * Whether the command should retry on failure
10
+ */
11
+ retryOnFailure = false;
12
+ /**
13
+ * Get the method
14
+ */
15
+ getMethod() {
16
+ return "PATCH";
17
+ }
18
+ /**
19
+ * Get the base url
20
+ */
21
+ getBaseUrl() {
22
+ return "https://tenant-store.api.flowcore.io";
23
+ }
24
+ /**
25
+ * Get the path
26
+ */
27
+ getPath() {
28
+ return `/api/v1/tenants/${this.input.tenantId}/variables/${this.input.key}`;
29
+ }
30
+ /**
31
+ * The allowed modes for the command
32
+ */
33
+ allowedModes = ["bearer"];
34
+ /**
35
+ * Parse the response
36
+ */
37
+ parseResponse(rawResponse) {
38
+ return parseResponseHelper(VariableSchema, rawResponse);
39
+ }
40
+ }
@@ -1,5 +1,5 @@
1
- import { GraphQlCommand } from "../../common/command-graphql.js";
2
- import type { Variable } from "../../contracts/variable.js";
1
+ import { Command } from "../../common/command.js";
2
+ import { type Variable } from "../../contracts/variable.js";
3
3
  /**
4
4
  * The input for the variable list command
5
5
  */
@@ -10,7 +10,23 @@ export interface VariableListInput {
10
10
  /**
11
11
  * List variables
12
12
  */
13
- export declare class VariableListCommand extends GraphQlCommand<VariableListInput, Variable[]> {
13
+ export declare class VariableListCommand extends Command<VariableListInput, Variable[]> {
14
+ /**
15
+ * Whether the command should retry on failure
16
+ */
17
+ protected retryOnFailure: boolean;
18
+ /**
19
+ * Get the method
20
+ */
21
+ protected getMethod(): string;
22
+ /**
23
+ * Get the base url
24
+ */
25
+ protected getBaseUrl(): string;
26
+ /**
27
+ * Get the path
28
+ */
29
+ protected getPath(): string;
14
30
  /**
15
31
  * The allowed modes for the command
16
32
  */
@@ -19,9 +35,5 @@ export declare class VariableListCommand extends GraphQlCommand<VariableListInpu
19
35
  * Parse the response
20
36
  */
21
37
  protected parseResponse(rawResponse: unknown): Variable[];
22
- /**
23
- * Get the body for the request
24
- */
25
- protected getBody(): Record<string, unknown>;
26
38
  }
27
39
  //# sourceMappingURL=variable.list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"variable.list.d.ts","sourceRoot":"","sources":["../../../src/commands/variable/variable.list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAEhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAG3D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAkCD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,iBAAiB,EAAE,QAAQ,EAAE,CAAC;IACpF;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ,EAAE;IAWlE;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAMtD"}
1
+ {"version":3,"file":"variable.list.d.ts","sourceRoot":"","sources":["../../../src/commands/variable/variable.list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEjD,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,6BAA6B,CAAA;AAG3E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,QAAQ,EAAE,CAAC;IAC7E;;OAEG;IACH,UAAmB,cAAc,EAAE,OAAO,CAAQ;IAElD;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,QAAQ,EAAE;CAGnE"}
@@ -1,37 +1,33 @@
1
- import { Type } from "@sinclair/typebox";
2
- import { GraphQlCommand } from "../../common/command-graphql.js";
1
+ import { Command } from "../../common/command.js";
3
2
  import { parseResponseHelper } from "../../utils/parse-response-helper.js";
4
- import { CommandError } from "../../exceptions/command-error.js";
5
- const graphQlQueryById = `
6
- query FLOWCORE_SDK_VARIABLE_LIST($tenantId: ID!) {
7
- organization(search: {id: $tenantId}) {
8
- variables {
9
- key
10
- value
11
- }
12
- }
13
- }
14
- `;
15
- const responseSchema = Type.Object({
16
- errors: Type.Optional(Type.Array(Type.Object({
17
- message: Type.String(),
18
- }))),
19
- data: Type.Union([
20
- Type.Object({
21
- organization: Type.Object({
22
- variables: Type.Array(Type.Object({
23
- key: Type.String(),
24
- value: Type.String(),
25
- })),
26
- }),
27
- }),
28
- Type.Null(),
29
- ]),
30
- });
3
+ import { VariableSchema } from "../../contracts/variable.js";
4
+ import { Type } from "@sinclair/typebox";
31
5
  /**
32
6
  * List variables
33
7
  */
34
- export class VariableListCommand extends GraphQlCommand {
8
+ export class VariableListCommand extends Command {
9
+ /**
10
+ * Whether the command should retry on failure
11
+ */
12
+ retryOnFailure = false;
13
+ /**
14
+ * Get the method
15
+ */
16
+ getMethod() {
17
+ return "GET";
18
+ }
19
+ /**
20
+ * Get the base url
21
+ */
22
+ getBaseUrl() {
23
+ return "https://tenant-store.api.flowcore.io";
24
+ }
25
+ /**
26
+ * Get the path
27
+ */
28
+ getPath() {
29
+ return `/api/v1/tenants/${this.input.tenantId}/variables`;
30
+ }
35
31
  /**
36
32
  * The allowed modes for the command
37
33
  */
@@ -40,22 +36,6 @@ export class VariableListCommand extends GraphQlCommand {
40
36
  * Parse the response
41
37
  */
42
38
  parseResponse(rawResponse) {
43
- const response = parseResponseHelper(responseSchema, rawResponse);
44
- if (response.errors) {
45
- throw new CommandError(this.constructor.name, response.errors[0].message);
46
- }
47
- if (!response.data) {
48
- throw new CommandError(this.constructor.name, "Failed to list variables");
49
- }
50
- return response.data.organization.variables;
51
- }
52
- /**
53
- * Get the body for the request
54
- */
55
- getBody() {
56
- return {
57
- query: graphQlQueryById,
58
- variables: this.input,
59
- };
39
+ return parseResponseHelper(Type.Array(VariableSchema), rawResponse);
60
40
  }
61
41
  }
@@ -1,14 +1,35 @@
1
- import { type Static, type TObject, type TString } from "@sinclair/typebox";
1
+ import { type Static, type TNull, type TObject, type TString, type TUnion } from "@sinclair/typebox";
2
2
  /**
3
3
  * The schema for an api key
4
4
  */
5
5
  export declare const ApiKeySchema: TObject<{
6
6
  id: TString;
7
+ tenantId: TString;
7
8
  name: TString;
9
+ description: TString;
10
+ maskedApiKey: TString;
8
11
  createdAt: TString;
12
+ lastUsedAt: TUnion<[TString, TNull]>;
9
13
  }>;
10
14
  /**
11
15
  * The type for an api key
12
16
  */
13
17
  export type ApiKey = Static<typeof ApiKeySchema>;
18
+ /**
19
+ * The schema for an api key with value
20
+ */
21
+ export declare const ApiKeyWithValueSchema: TObject<{
22
+ id: TString;
23
+ tenantId: TString;
24
+ name: TString;
25
+ description: TString;
26
+ maskedApiKey: TString;
27
+ createdAt: TString;
28
+ lastUsedAt: TUnion<[TString, TNull]>;
29
+ apiKey: TString;
30
+ }>;
31
+ /**
32
+ * The type for an api key with value
33
+ */
34
+ export type ApiKeyWithValue = Static<typeof ApiKeyWithValueSchema>;
14
35
  //# sourceMappingURL=api-key.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-key.d.ts","sourceRoot":"","sources":["../../src/contracts/api-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAQ,MAAM,mBAAmB,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC;IACjC,EAAE,EAAE,OAAO,CAAA;IACX,IAAI,EAAE,OAAO,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;CACnB,CAIC,CAAA;AACF;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA"}
1
+ {"version":3,"file":"api-key.d.ts","sourceRoot":"","sources":["../../src/contracts/api-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAE1G;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC;IACjC,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;CACrC,CAQC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA;AAEhD;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC;IAC1C,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;IACpC,MAAM,EAAE,OAAO,CAAA;CAChB,CASC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
@@ -4,6 +4,23 @@ import { Type } from "@sinclair/typebox";
4
4
  */
5
5
  export const ApiKeySchema = Type.Object({
6
6
  id: Type.String(),
7
+ tenantId: Type.String(),
7
8
  name: Type.String(),
9
+ description: Type.String(),
10
+ maskedApiKey: Type.String(),
8
11
  createdAt: Type.String(),
12
+ lastUsedAt: Type.Union([Type.String(), Type.Null()]),
13
+ });
14
+ /**
15
+ * The schema for an api key with value
16
+ */
17
+ export const ApiKeyWithValueSchema = Type.Object({
18
+ id: Type.String(),
19
+ tenantId: Type.String(),
20
+ name: Type.String(),
21
+ description: Type.String(),
22
+ maskedApiKey: Type.String(),
23
+ createdAt: Type.String(),
24
+ lastUsedAt: Type.Union([Type.String(), Type.Null()]),
25
+ apiKey: Type.String(),
9
26
  });
@@ -0,0 +1,16 @@
1
+ import { type Static, type TNull, type TObject, type TString, type TUnion } from "@sinclair/typebox";
2
+ /**
3
+ * The schema for a secret
4
+ */
5
+ export declare const SecretSchema: TObject<{
6
+ tenantId: TString;
7
+ key: TString;
8
+ description: TString;
9
+ createdAt: TString;
10
+ updatedAt: TUnion<[TString, TNull]>;
11
+ }>;
12
+ /**
13
+ * The type for a secret
14
+ */
15
+ export type Secret = Static<typeof SecretSchema>;
16
+ //# sourceMappingURL=secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.d.ts","sourceRoot":"","sources":["../../src/contracts/secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAE1G;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAA;IACjB,GAAG,EAAE,OAAO,CAAA;IACZ,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,SAAS,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;CACpC,CAMC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { Type } from "@sinclair/typebox";
2
+ /**
3
+ * The schema for a secret
4
+ */
5
+ export const SecretSchema = Type.Object({
6
+ tenantId: Type.String(),
7
+ key: Type.String(),
8
+ description: Type.String(),
9
+ createdAt: Type.String(),
10
+ updatedAt: Type.Union([Type.String(), Type.Null()]),
11
+ });
@@ -1,10 +1,14 @@
1
- import { type Static, type TObject, type TString } from "@sinclair/typebox";
1
+ import { type Static, type TNull, type TObject, type TString, type TUnion } from "@sinclair/typebox";
2
2
  /**
3
3
  * The schema for a variable
4
4
  */
5
5
  export declare const VariableSchema: TObject<{
6
+ tenantId: TString;
6
7
  key: TString;
8
+ description: TString;
7
9
  value: TString;
10
+ createdAt: TString;
11
+ updatedAt: TUnion<[TString, TNull]>;
8
12
  }>;
9
13
  /**
10
14
  * The type for a variable
@@ -1 +1 @@
1
- {"version":3,"file":"variable.d.ts","sourceRoot":"","sources":["../../src/contracts/variable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAQ,MAAM,mBAAmB,CAAA;AAEjF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC;IACnC,GAAG,EAAE,OAAO,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;CACf,CAGC,CAAA;AACF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"variable.d.ts","sourceRoot":"","sources":["../../src/contracts/variable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAE1G;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAA;IACjB,GAAG,EAAE,OAAO,CAAA;IACZ,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,OAAO,CAAA;IAClB,SAAS,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;CACpC,CAOC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -3,6 +3,10 @@ import { Type } from "@sinclair/typebox";
3
3
  * The schema for a variable
4
4
  */
5
5
  export const VariableSchema = Type.Object({
6
+ tenantId: Type.String(),
6
7
  key: Type.String(),
8
+ description: Type.String(),
7
9
  value: Type.String(),
10
+ createdAt: Type.String(),
11
+ updatedAt: Type.Union([Type.String(), Type.Null()]),
8
12
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowcore/sdk",
3
- "version": "1.52.0",
3
+ "version": "1.54.0",
4
4
  "description": "Flowcore SDK",
5
5
  "homepage": "https://github.com/flowcore-io/flowcore-sdk#readme",
6
6
  "repository": {
@@ -1,46 +1,43 @@
1
- import { GraphQlCommand } from "../../common/command-graphql.js";
2
- import type { ApiKey } from "../../contracts/api-key.js";
3
- import type { FlowcoreClient } from "../../common/flowcore-client.js";
1
+ import { Command } from "../../common/command.js";
2
+ import { type ApiKeyWithValue } from "../../contracts/api-key.js";
4
3
  /**
5
- * The input for the API key create command
4
+ * The input for the api key create command
6
5
  */
7
6
  export interface ApiKeyCreateInput {
8
7
  /** The tenant id */
9
8
  tenantId: string;
10
- /** The name of the API key */
9
+ /** The name of the api key */
11
10
  name: string;
11
+ /** The description of the api key */
12
+ description?: string;
12
13
  }
13
14
  /**
14
- * Create an API key
15
+ * Create an api key
15
16
  */
16
- export declare class ApiKeyCreateCommand extends GraphQlCommand<ApiKeyCreateInput, ApiKey & {
17
- value: string;
18
- }> {
17
+ export declare class ApiKeyCreateCommand extends Command<ApiKeyCreateInput, ApiKeyWithValue> {
19
18
  /**
20
19
  * Whether the command should retry on failure
21
20
  */
22
21
  protected retryOnFailure: boolean;
23
22
  /**
24
- * The allowed modes for the command
23
+ * Get the method
25
24
  */
26
- protected allowedModes: ("apiKey" | "bearer")[];
25
+ protected getMethod(): string;
27
26
  /**
28
- * Parse the response
27
+ * Get the base url
28
+ */
29
+ protected getBaseUrl(): string;
30
+ /**
31
+ * Get the path
29
32
  */
30
- protected parseResponse(rawResponse: unknown): ApiKey & {
31
- value: string;
32
- };
33
+ protected getPath(): string;
33
34
  /**
34
- * Get the body for the request
35
+ * The allowed modes for the command
35
36
  */
36
- protected getBody(): Record<string, unknown>;
37
+ protected allowedModes: ("apiKey" | "bearer")[];
37
38
  /**
38
- * Fill in the missing fields
39
+ * Parse the response
39
40
  */
40
- protected processResponse(flowcoreClient: FlowcoreClient, response: ApiKey & {
41
- value: string;
42
- }): Promise<ApiKey & {
43
- value: string;
44
- }>;
41
+ protected parseResponse(rawResponse: unknown): ApiKeyWithValue;
45
42
  }
46
43
  //# sourceMappingURL=api-key.create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-key.create.d.ts","sourceRoot":"","sources":["../../../src/commands/api-key/api-key.create.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAIrE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAA;CACb;AA4BD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,iBAAiB,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;IACpG;;OAEG;IACH,UAAmB,cAAc,EAAE,OAAO,CAAQ;IAElD;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAC9B,WAAW,EAAE,OAAO,GACnB,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE;IAiB7B;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAOrD;;OAEG;cACsB,eAAe,CACtC,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GACnC,OAAO,CAAC,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAevC"}
1
+ {"version":3,"file":"api-key.create.d.ts","sourceRoot":"","sources":["../../../src/commands/api-key/api-key.create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEjD,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,4BAA4B,CAAA;AAExF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,eAAe,CAAC;IAClF;;OAEG;IACH,UAAmB,cAAc,EAAE,OAAO,CAAQ;IAElD;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;IACH,UAAmB,YAAY,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAa;IAErE;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,eAAe;CAGxE"}
@@ -1,85 +1,44 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ApiKeyCreateCommand = void 0;
4
- const typebox_1 = require("@sinclair/typebox");
5
- const command_graphql_js_1 = require("../../common/command-graphql.js");
4
+ const command_js_1 = require("../../common/command.js");
6
5
  const parse_response_helper_js_1 = require("../../utils/parse-response-helper.js");
7
- const api_key_list_js_1 = require("./api-key.list.js");
8
- const command_error_js_1 = require("../../exceptions/command-error.js");
9
- const graphQlQueryById = `
10
- mutation FLOWCORE_SDK_API_KEY_CREATE($tenantId: ID!, $name: String!) {
11
- organization(id: $tenantId) {
12
- createApiKey(name: $name)
13
- }
14
- }
15
- `;
16
- const responseSchema = typebox_1.Type.Object({
17
- errors: typebox_1.Type.Optional(typebox_1.Type.Array(typebox_1.Type.Object({
18
- message: typebox_1.Type.String(),
19
- }))),
20
- data: typebox_1.Type.Union([
21
- typebox_1.Type.Object({
22
- organization: typebox_1.Type.Object({
23
- createApiKey: typebox_1.Type.Union([typebox_1.Type.String(), typebox_1.Type.Null()]),
24
- }),
25
- }),
26
- typebox_1.Type.Null(),
27
- ]),
28
- });
6
+ const api_key_js_1 = require("../../contracts/api-key.js");
29
7
  /**
30
- * Create an API key
8
+ * Create an api key
31
9
  */
32
- class ApiKeyCreateCommand extends command_graphql_js_1.GraphQlCommand {
10
+ class ApiKeyCreateCommand extends command_js_1.Command {
33
11
  /**
34
12
  * Whether the command should retry on failure
35
13
  */
36
14
  retryOnFailure = false;
37
15
  /**
38
- * The allowed modes for the command
16
+ * Get the method
39
17
  */
40
- allowedModes = ["bearer"];
18
+ getMethod() {
19
+ return "POST";
20
+ }
41
21
  /**
42
- * Parse the response
22
+ * Get the base url
43
23
  */
44
- parseResponse(rawResponse) {
45
- const response = (0, parse_response_helper_js_1.parseResponseHelper)(responseSchema, rawResponse);
46
- if (response.errors) {
47
- throw new command_error_js_1.CommandError(this.constructor.name, response.errors[0].message);
48
- }
49
- if (!response.data || response.data?.organization.createApiKey === null) {
50
- throw new command_error_js_1.CommandError(this.constructor.name, "Failed to create API key");
51
- }
52
- return {
53
- id: "",
54
- name: "",
55
- createdAt: "",
56
- value: response.data.organization.createApiKey,
57
- };
24
+ getBaseUrl() {
25
+ return "https://tenant-store.api.flowcore.io";
58
26
  }
59
27
  /**
60
- * Get the body for the request
28
+ * Get the path
61
29
  */
62
- getBody() {
63
- return {
64
- query: graphQlQueryById,
65
- variables: this.input,
66
- };
30
+ getPath() {
31
+ return "/api/v1/api-keys";
67
32
  }
68
33
  /**
69
- * Fill in the missing fields
34
+ * The allowed modes for the command
35
+ */
36
+ allowedModes = ["bearer"];
37
+ /**
38
+ * Parse the response
70
39
  */
71
- async processResponse(flowcoreClient, response) {
72
- const apiKeys = await flowcoreClient.execute(new api_key_list_js_1.ApiKeyListCommand({
73
- tenantId: this.input.tenantId,
74
- }));
75
- const apiKey = apiKeys.find((apiKey) => apiKey.name === this.input.name);
76
- if (!apiKey) {
77
- throw new Error("API key not found");
78
- }
79
- return {
80
- ...apiKey,
81
- value: response.value,
82
- };
40
+ parseResponse(rawResponse) {
41
+ return (0, parse_response_helper_js_1.parseResponseHelper)(api_key_js_1.ApiKeyWithValueSchema, rawResponse);
83
42
  }
84
43
  }
85
44
  exports.ApiKeyCreateCommand = ApiKeyCreateCommand;