@seamapi/nextlove-sdk-generator 1.10.5 → 1.11.1
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.
- package/lib/generate-python-sdk/class-file.js +8 -6
- package/lib/generate-python-sdk/class-file.js.map +1 -1
- package/lib/generate-python-sdk/generate-python-sdk.js +6 -40
- package/lib/generate-python-sdk/generate-python-sdk.js.map +1 -1
- package/lib/generate-python-sdk/templates/abstract-routes.template.js.map +1 -0
- package/lib/generate-python-sdk/templates/resource-dataclass.template.js.map +1 -0
- package/lib/generate-python-sdk/templates/routes.py.template.js +1 -1
- package/lib/generate-python-sdk/templates/routes.py.template.js.map +1 -1
- package/lib/generate-python-sdk/templates/utils/action-attempt.d.ts +1 -1
- package/lib/generate-python-sdk/templates/utils/action-attempt.js +1 -5
- package/lib/generate-python-sdk/templates/utils/action-attempt.js.map +1 -1
- package/package.json +1 -1
- package/src/lib/generate-python-sdk/class-file.ts +8 -7
- package/src/lib/generate-python-sdk/generate-python-sdk.ts +6 -42
- package/src/lib/generate-python-sdk/templates/routes.py.template.ts +1 -1
- package/src/lib/generate-python-sdk/templates/utils/action-attempt.ts +1 -5
- package/lib/generate-python-sdk/templates/.gitignore.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/.gitignore.template.js +0 -11
- package/lib/generate-python-sdk/templates/.gitignore.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/__init__.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/__init__.py.template.js +0 -13
- package/lib/generate-python-sdk/templates/__init__.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/auth.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/auth.py.template.js +0 -103
- package/lib/generate-python-sdk/templates/auth.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/conftest.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/conftest.py.template.js +0 -14
- package/lib/generate-python-sdk/templates/conftest.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/options.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/options.py.template.js +0 -68
- package/lib/generate-python-sdk/templates/options.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/parse_options.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/parse_options.py.template.js +0 -28
- package/lib/generate-python-sdk/templates/parse_options.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/pyproject.toml.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/pyproject.toml.template.js +0 -22
- package/lib/generate-python-sdk/templates/pyproject.toml.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/readme.md.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/readme.md.template.js +0 -48
- package/lib/generate-python-sdk/templates/readme.md.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/seam.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/seam.py.template.js +0 -118
- package/lib/generate-python-sdk/templates/seam.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/snippets/abstract-routes.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.js +0 -44
- package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/snippets/resource-dataclass.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/snippets/seam-api-exception-class.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/snippets/seam-api-exception-class.template.js +0 -17
- package/lib/generate-python-sdk/templates/snippets/seam-api-exception-class.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/test_smoke.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/test_smoke.py.template.js +0 -13
- package/lib/generate-python-sdk/templates/test_smoke.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/token.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/token.py.template.js +0 -49
- package/lib/generate-python-sdk/templates/token.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/utils/action_attempt_errors.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/utils/action_attempt_errors.py.template.js +0 -24
- package/lib/generate-python-sdk/templates/utils/action_attempt_errors.py.template.js.map +0 -1
- package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.d.ts +0 -2
- package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.js +0 -28
- package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.js.map +0 -1
- package/src/lib/generate-python-sdk/templates/.gitignore.template.ts +0 -10
- package/src/lib/generate-python-sdk/templates/__init__.py.template.ts +0 -12
- package/src/lib/generate-python-sdk/templates/auth.py.template.ts +0 -102
- package/src/lib/generate-python-sdk/templates/conftest.py.template.ts +0 -13
- package/src/lib/generate-python-sdk/templates/options.py.template.ts +0 -67
- package/src/lib/generate-python-sdk/templates/parse_options.py.template.ts +0 -27
- package/src/lib/generate-python-sdk/templates/pyproject.toml.template.ts +0 -21
- package/src/lib/generate-python-sdk/templates/readme.md.template.ts +0 -47
- package/src/lib/generate-python-sdk/templates/seam.py.template.ts +0 -117
- package/src/lib/generate-python-sdk/templates/snippets/abstract-seam.template.ts +0 -43
- package/src/lib/generate-python-sdk/templates/snippets/seam-api-exception-class.template.ts +0 -16
- package/src/lib/generate-python-sdk/templates/test_smoke.py.template.ts +0 -12
- package/src/lib/generate-python-sdk/templates/token.py.template.ts +0 -48
- package/src/lib/generate-python-sdk/templates/utils/action_attempt_errors.py.template.ts +0 -23
- package/src/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.ts +0 -27
- /package/lib/generate-python-sdk/templates/{snippets/abstract-routes.template.d.ts → abstract-routes.template.d.ts} +0 -0
- /package/lib/generate-python-sdk/templates/{snippets/abstract-routes.template.js → abstract-routes.template.js} +0 -0
- /package/lib/generate-python-sdk/templates/{snippets/resource-dataclass.template.d.ts → resource-dataclass.template.d.ts} +0 -0
- /package/lib/generate-python-sdk/templates/{snippets/resource-dataclass.template.js → resource-dataclass.template.js} +0 -0
- /package/src/lib/generate-python-sdk/templates/{snippets/abstract-routes.template.ts → abstract-routes.template.ts} +0 -0
- /package/src/lib/generate-python-sdk/templates/{snippets/resource-dataclass.template.ts → resource-dataclass.template.ts} +0 -0
|
@@ -57,21 +57,23 @@ export class ClassFile {
|
|
|
57
57
|
serializeToClass() {
|
|
58
58
|
const validClasses = [
|
|
59
59
|
`Abstract${this.name}`,
|
|
60
|
-
`AbstractSeam as Seam`,
|
|
61
60
|
...Array.from(new Set(this.methods.map((m) => m.return_resource.replace(/^List\[/, "").replace(/\]$/, "")))),
|
|
62
61
|
].filter((classInstance) => classInstance !== "");
|
|
63
62
|
const has_child_classes = this.child_class_identifiers.length > 0;
|
|
63
|
+
const is_action_attempt_class = this.name === "ActionAttempts";
|
|
64
64
|
return [
|
|
65
|
-
`from
|
|
65
|
+
`from typing import Optional, Any, List, Dict, Union`,
|
|
66
|
+
`from ..models import AbstractSeam as Seam`,
|
|
67
|
+
`from .models import (${validClasses
|
|
66
68
|
.filter((cls) => cls !== "None")
|
|
67
69
|
.join(",")})`,
|
|
68
|
-
`from typing import Optional, Any, List, Dict, Union`,
|
|
69
70
|
`${has_child_classes
|
|
70
71
|
? this.child_class_identifiers
|
|
71
|
-
.map((i) => `from
|
|
72
|
+
.map((i) => `from .${this.namespace}_${i.namespace} import ${i.class_name}`)
|
|
72
73
|
.join("\n")
|
|
73
74
|
: ""}`,
|
|
74
|
-
`${
|
|
75
|
+
`${is_action_attempt_class ? action_attempt_imports : ""}`,
|
|
76
|
+
"",
|
|
75
77
|
`class ${this.name}(Abstract${this.name}):`,
|
|
76
78
|
// TODO DOCSTRING
|
|
77
79
|
` seam: Seam`,
|
|
@@ -147,7 +149,7 @@ export class ClassFile {
|
|
|
147
149
|
.map((s) => ` ${s}`)
|
|
148
150
|
.join("\n");
|
|
149
151
|
}),
|
|
150
|
-
|
|
152
|
+
is_action_attempt_class ? action_attempt_utils_definitions : "",
|
|
151
153
|
].join("\n");
|
|
152
154
|
}
|
|
153
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-file.js","sourceRoot":"","sources":["../../src/lib/generate-python-sdk/class-file.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"class-file.js","sourceRoot":"","sources":["../../src/lib/generate-python-sdk/class-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,10 @@
|
|
|
1
1
|
import { ClassFile } from "./class-file.js";
|
|
2
2
|
import { pascalCase } from "change-case";
|
|
3
3
|
import { flattenObjSchema } from "../../lib/openapi/index.js";
|
|
4
|
-
import conftestPyTemplate from "./templates/conftest.py.template.js";
|
|
5
4
|
import routesPyTemplate from "./templates/routes.py.template.js";
|
|
6
|
-
import seamPyTemplate from "./templates/seam.py.template.js";
|
|
7
|
-
import test_smokePyTemplate from "./templates/test_smoke.py.template.js";
|
|
8
|
-
import pyprojectTomlTemplate from "./templates/pyproject.toml.template.js";
|
|
9
5
|
import { mapPythonType } from "./map-python-type.js";
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import abstractRoutesTemplate from "./templates/snippets/abstract-routes.template.js";
|
|
13
|
-
import abstractSeamTemplate from "./templates/snippets/abstract-seam.template.js";
|
|
14
|
-
import resourceDataclassTemplate from "./templates/snippets/resource-dataclass.template.js";
|
|
15
|
-
import readmeMdTemplate from "./templates/readme.md.template.js";
|
|
16
|
-
import initTemplate from "./templates/__init__.py.template.js";
|
|
17
|
-
import gitignoreTemplate from "./templates/.gitignore.template.js";
|
|
18
|
-
import SeamApiExceptionClassTemplate from "./templates/snippets/seam-api-exception-class.template.js";
|
|
19
|
-
import authPyTemplate from "./templates/auth.py.template.js";
|
|
20
|
-
import parseOptionsPyTemplate from "./templates/parse_options.py.template.js";
|
|
21
|
-
import optionsPyTemplate from "./templates/options.py.template.js";
|
|
22
|
-
import tokenPyTemplate from "./templates/token.py.template.js";
|
|
6
|
+
import abstractRoutesTemplate from "./templates/abstract-routes.template.js";
|
|
7
|
+
import resourceDataclassTemplate from "./templates/resource-dataclass.template.js";
|
|
23
8
|
import { getParameterAndResponseSchema } from "../../lib/openapi/get-parameter-and-response-schema.js";
|
|
24
9
|
import mapParentToChildResources from "../../lib/openapi/map-parent-to-children-resource.js";
|
|
25
10
|
import { deepFlattenOneOfAndAllOfSchema } from "../../lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.js";
|
|
@@ -105,14 +90,14 @@ export const generatePythonSDK = async (options = {}) => {
|
|
|
105
90
|
.map((ns) => (ns.length === 1 ? ns[0] : null))
|
|
106
91
|
.filter(Boolean);
|
|
107
92
|
for (const [_, cls] of Object.entries(class_map)) {
|
|
108
|
-
fs[`seam/${cls.namespace}.py`] = cls.serializeToClass();
|
|
93
|
+
fs[`seam/routes/${cls.namespace}.py`] = cls.serializeToClass();
|
|
109
94
|
}
|
|
110
|
-
fs[`seam/
|
|
95
|
+
fs[`seam/routes/models.py`] = [
|
|
111
96
|
`from typing import Any, Dict, List, Optional, Union`,
|
|
112
97
|
`from typing_extensions import Self`,
|
|
113
98
|
`import abc`,
|
|
114
99
|
`from dataclasses import dataclass`,
|
|
115
|
-
`from
|
|
100
|
+
`from ..utils.deep_attr_dict import DeepAttrDict`,
|
|
116
101
|
"",
|
|
117
102
|
"",
|
|
118
103
|
...Object.entries(openapi.components.schemas)
|
|
@@ -123,9 +108,6 @@ export const generatePythonSDK = async (options = {}) => {
|
|
|
123
108
|
})))),
|
|
124
109
|
"",
|
|
125
110
|
"",
|
|
126
|
-
SeamApiExceptionClassTemplate(),
|
|
127
|
-
"",
|
|
128
|
-
"",
|
|
129
111
|
...Object.entries(class_map)
|
|
130
112
|
.sort(
|
|
131
113
|
// define classes without children first for parent-child referencing
|
|
@@ -134,24 +116,8 @@ export const generatePythonSDK = async (options = {}) => {
|
|
|
134
116
|
"",
|
|
135
117
|
"",
|
|
136
118
|
abstractRoutesTemplate(top_level_namespaces),
|
|
137
|
-
"",
|
|
138
|
-
abstractSeamTemplate(),
|
|
139
119
|
].join("\n");
|
|
140
|
-
fs["
|
|
141
|
-
fs["pyproject.toml"] = pyprojectTomlTemplate();
|
|
142
|
-
fs[".gitignore"] = gitignoreTemplate();
|
|
143
|
-
fs["seam/__init__.py"] = initTemplate();
|
|
144
|
-
fs["seam/routes.py"] = routesPyTemplate(top_level_namespaces);
|
|
145
|
-
fs["seam/seam.py"] = seamPyTemplate();
|
|
146
|
-
fs["seam/auth.py"] = authPyTemplate();
|
|
147
|
-
fs["seam/token.py"] = tokenPyTemplate();
|
|
148
|
-
fs["seam/options.py"] = optionsPyTemplate();
|
|
149
|
-
fs["seam/parse_options.py"] = parseOptionsPyTemplate();
|
|
150
|
-
fs["seam/utils/deep_attr_dict.py"] = deepAttrDictPyTemplate();
|
|
151
|
-
fs["seam/utils/action_attempt_errors.py"] = actionAttemptsErrorsPyTemplate();
|
|
152
|
-
fs["tests/conftest.py"] = conftestPyTemplate();
|
|
153
|
-
fs["tests/test_smoke.py"] = test_smokePyTemplate();
|
|
154
|
-
fs["tests/__init__.py"] = "";
|
|
120
|
+
fs["seam/routes/__init__.py"] = routesPyTemplate(top_level_namespaces);
|
|
155
121
|
return fs;
|
|
156
122
|
};
|
|
157
123
|
function determineReturnResource({ route_path, response_arr_type, response_obj_type, }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-python-sdk.js","sourceRoot":"","sources":["../../src/lib/generate-python-sdk/generate-python-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"generate-python-sdk.js","sourceRoot":"","sources":["../../src/lib/generate-python-sdk/generate-python-sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abstract-routes.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/abstract-routes.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,eAAe,CAAC,UAAoB,EAAE,EAAE,CAAC;;EAEvC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,aAAa,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CACxE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-dataclass.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/resource-dataclass.template.ts"],"names":[],"mappings":"AAAA,eAAe,CACb,IAAY,EACZ,UAGE,EACF,EAAE,CAAC;QACG,IAAI;EACV,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;aAI/C,IAAI;EACf,UAAU;KACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IACT,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAAA;IAE1E,OAAO,SAAS,CAAC,CAAC,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,UAC5D,CAAC,CAAC,IACJ,WAAW,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAA;AACxC,CAAC,CAAC;KACD,IAAI,CAAC,IAAI,CAAC;QACL,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.py.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/routes.py.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,eAAe,CAAC,UAAoB,EAAE,EAAE,CACtC;IACE,
|
|
1
|
+
{"version":3,"file":"routes.py.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/routes.py.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,eAAe,CAAC,UAAoB,EAAE,EAAE,CACtC;IACE,oCAAoC;IACpC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;IACjE,EAAE;IACF,+BAA+B;IAC/B,uBAAuB;IACvB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,EAAE,MAAM,UAAU,CAAC,EAAE,CAAC,aAAa,CAAC;CAC3E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA"}
|
|
@@ -16,4 +16,4 @@ export declare const action_attempt_utils_specs: {
|
|
|
16
16
|
path: string;
|
|
17
17
|
}[];
|
|
18
18
|
export declare const action_attempt_utils_definitions: string;
|
|
19
|
-
export declare const action_attempt_imports = "import time\
|
|
19
|
+
export declare const action_attempt_imports = "import time\nfrom ..exceptions import SeamActionAttemptFailedError, SeamActionAttemptTimeoutError\n";
|
|
@@ -68,10 +68,6 @@ export const action_attempt_utils_definitions = [
|
|
|
68
68
|
" return action_attempt",
|
|
69
69
|
].join("\n");
|
|
70
70
|
export const action_attempt_imports = `import time
|
|
71
|
-
|
|
72
|
-
from seam.utils.action_attempt_errors import (
|
|
73
|
-
SeamActionAttemptFailedError,
|
|
74
|
-
SeamActionAttemptTimeoutError,
|
|
75
|
-
)
|
|
71
|
+
from ..exceptions import SeamActionAttemptFailedError, SeamActionAttemptTimeoutError
|
|
76
72
|
`;
|
|
77
73
|
//# sourceMappingURL=action-attempt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-attempt.js","sourceRoot":"","sources":["../../../../src/lib/generate-python-sdk/templates/utils/action-attempt.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC;QACE,WAAW,EAAE,kBAAkB;QAC/B,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC1D,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE;YACxD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,aAAa,EAAE,KAAK;aACrB;SACF;QACD,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,eAAe;QAChC,IAAI,EAAE,EAAE;KACT;IACD;QACE,WAAW,EAAE,iBAAiB;QAC9B,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,IAAI,EAAE,+BAA+B;gBACrC,QAAQ,EAAE,IAAI;aACf;SACF;QACD,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,eAAe;QAChC,IAAI,EAAE,EAAE;KACT;CACF,CAAA;AAED,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,EAAE;IACF,oJAAoJ;IACpJ,sBAAsB;IACtB,wBAAwB;IACxB,EAAE;IACF,mHAAmH;IACnH,EAAE;IACF,+CAA+C;IAC/C,oCAAoC;IACpC,wCAAwC;IACxC,EAAE;IACF,kCAAkC;IAClC,sEAAsE;IACtE,EAAE;IACF,kDAAkD;IAClD,2FAA2F;IAC3F,SAAS;IACT,EAAE;IACF,2CAA2C;IAC3C,0DAA0D;IAC1D,EAAE;IACF,2BAA2B;IAC3B,EAAE;IACF,0JAA0J;IAC1J,uHAAuH;IACvH,EAAE;IACF,+BAA+B;IAC/B,6GAA6G;IAC7G,yCAAyC;IACzC,uNAAuN;IACvN,EAAE;IACF,2BAA2B;CAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ,MAAM,CAAC,MAAM,sBAAsB,GAAG
|
|
1
|
+
{"version":3,"file":"action-attempt.js","sourceRoot":"","sources":["../../../../src/lib/generate-python-sdk/templates/utils/action-attempt.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC;QACE,WAAW,EAAE,kBAAkB;QAC/B,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC1D,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE;YACxD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,aAAa,EAAE,KAAK;aACrB;SACF;QACD,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,eAAe;QAChC,IAAI,EAAE,EAAE;KACT;IACD;QACE,WAAW,EAAE,iBAAiB;QAC9B,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,IAAI,EAAE,+BAA+B;gBACrC,QAAQ,EAAE,IAAI;aACf;SACF;QACD,WAAW,EAAE,EAAE;QACf,eAAe,EAAE,eAAe;QAChC,IAAI,EAAE,EAAE;KACT;CACF,CAAA;AAED,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,EAAE;IACF,oJAAoJ;IACpJ,sBAAsB;IACtB,wBAAwB;IACxB,EAAE;IACF,mHAAmH;IACnH,EAAE;IACF,+CAA+C;IAC/C,oCAAoC;IACpC,wCAAwC;IACxC,EAAE;IACF,kCAAkC;IAClC,sEAAsE;IACtE,EAAE;IACF,kDAAkD;IAClD,2FAA2F;IAC3F,SAAS;IACT,EAAE;IACF,2CAA2C;IAC3C,0DAA0D;IAC1D,EAAE;IACF,2BAA2B;IAC3B,EAAE;IACF,0JAA0J;IAC1J,uHAAuH;IACvH,EAAE;IACF,+BAA+B;IAC/B,6GAA6G;IAC7G,yCAAyC;IACzC,uNAAuN;IACvN,EAAE;IACF,2BAA2B;CAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ,MAAM,CAAC,MAAM,sBAAsB,GAAG;;CAErC,CAAA"}
|
package/package.json
CHANGED
|
@@ -120,7 +120,6 @@ export class ClassFile {
|
|
|
120
120
|
serializeToClass(): string {
|
|
121
121
|
const validClasses = [
|
|
122
122
|
`Abstract${this.name}`,
|
|
123
|
-
`AbstractSeam as Seam`,
|
|
124
123
|
...Array.from(
|
|
125
124
|
new Set(
|
|
126
125
|
this.methods.map((m) =>
|
|
@@ -130,24 +129,26 @@ export class ClassFile {
|
|
|
130
129
|
),
|
|
131
130
|
].filter((classInstance) => classInstance !== "")
|
|
132
131
|
const has_child_classes = this.child_class_identifiers.length > 0
|
|
132
|
+
const is_action_attempt_class = this.name === "ActionAttempts"
|
|
133
133
|
|
|
134
134
|
return [
|
|
135
|
-
`from
|
|
135
|
+
`from typing import Optional, Any, List, Dict, Union`,
|
|
136
|
+
`from ..models import AbstractSeam as Seam`,
|
|
137
|
+
`from .models import (${validClasses
|
|
136
138
|
.filter((cls) => cls !== "None")
|
|
137
139
|
.join(",")})`,
|
|
138
|
-
`from typing import Optional, Any, List, Dict, Union`,
|
|
139
140
|
`${
|
|
140
141
|
has_child_classes
|
|
141
142
|
? this.child_class_identifiers
|
|
142
143
|
.map(
|
|
143
144
|
(i) =>
|
|
144
|
-
`from
|
|
145
|
+
`from .${this.namespace}_${i.namespace} import ${i.class_name}`
|
|
145
146
|
)
|
|
146
147
|
.join("\n")
|
|
147
148
|
: ""
|
|
148
149
|
}`,
|
|
149
|
-
`${
|
|
150
|
-
|
|
150
|
+
`${is_action_attempt_class ? action_attempt_imports : ""}`,
|
|
151
|
+
"",
|
|
151
152
|
`class ${this.name}(Abstract${this.name}):`,
|
|
152
153
|
// TODO DOCSTRING
|
|
153
154
|
` seam: Seam`,
|
|
@@ -257,7 +258,7 @@ export class ClassFile {
|
|
|
257
258
|
.join("\n")
|
|
258
259
|
}
|
|
259
260
|
),
|
|
260
|
-
|
|
261
|
+
is_action_attempt_class ? action_attempt_utils_definitions : "",
|
|
261
262
|
].join("\n")
|
|
262
263
|
}
|
|
263
264
|
}
|
|
@@ -2,25 +2,10 @@ import type { ObjSchema, Route, SdkGeneratorOptions } from "lib/types.js"
|
|
|
2
2
|
import { ClassFile } from "./class-file.js"
|
|
3
3
|
import { pascalCase } from "change-case"
|
|
4
4
|
import { flattenObjSchema } from "lib/openapi/index.js"
|
|
5
|
-
import conftestPyTemplate from "./templates/conftest.py.template.js"
|
|
6
5
|
import routesPyTemplate from "./templates/routes.py.template.js"
|
|
7
|
-
import seamPyTemplate from "./templates/seam.py.template.js"
|
|
8
|
-
import test_smokePyTemplate from "./templates/test_smoke.py.template.js"
|
|
9
|
-
import pyprojectTomlTemplate from "./templates/pyproject.toml.template.js"
|
|
10
6
|
import { mapPythonType } from "./map-python-type.js"
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import abstractRoutesTemplate from "./templates/snippets/abstract-routes.template.js"
|
|
14
|
-
import abstractSeamTemplate from "./templates/snippets/abstract-seam.template.js"
|
|
15
|
-
import resourceDataclassTemplate from "./templates/snippets/resource-dataclass.template.js"
|
|
16
|
-
import readmeMdTemplate from "./templates/readme.md.template.js"
|
|
17
|
-
import initTemplate from "./templates/__init__.py.template.js"
|
|
18
|
-
import gitignoreTemplate from "./templates/.gitignore.template.js"
|
|
19
|
-
import SeamApiExceptionClassTemplate from "./templates/snippets/seam-api-exception-class.template.js"
|
|
20
|
-
import authPyTemplate from "./templates/auth.py.template.js"
|
|
21
|
-
import parseOptionsPyTemplate from "./templates/parse_options.py.template.js"
|
|
22
|
-
import optionsPyTemplate from "./templates/options.py.template.js"
|
|
23
|
-
import tokenPyTemplate from "./templates/token.py.template.js"
|
|
7
|
+
import abstractRoutesTemplate from "./templates/abstract-routes.template.js"
|
|
8
|
+
import resourceDataclassTemplate from "./templates/resource-dataclass.template.js"
|
|
24
9
|
import { getParameterAndResponseSchema } from "lib/openapi/get-parameter-and-response-schema.js"
|
|
25
10
|
import mapParentToChildResources from "lib/openapi/map-parent-to-children-resource.js"
|
|
26
11
|
import { deepFlattenOneOfAndAllOfSchema } from "lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.js"
|
|
@@ -136,15 +121,15 @@ export const generatePythonSDK = async (options: SdkGeneratorOptions = {}) => {
|
|
|
136
121
|
.filter<string>(Boolean as any)
|
|
137
122
|
|
|
138
123
|
for (const [_, cls] of Object.entries(class_map)) {
|
|
139
|
-
fs[`seam/${cls.namespace}.py`] = cls.serializeToClass()
|
|
124
|
+
fs[`seam/routes/${cls.namespace}.py`] = cls.serializeToClass()
|
|
140
125
|
}
|
|
141
126
|
|
|
142
|
-
fs[`seam/
|
|
127
|
+
fs[`seam/routes/models.py`] = [
|
|
143
128
|
`from typing import Any, Dict, List, Optional, Union`,
|
|
144
129
|
`from typing_extensions import Self`,
|
|
145
130
|
`import abc`,
|
|
146
131
|
`from dataclasses import dataclass`,
|
|
147
|
-
`from
|
|
132
|
+
`from ..utils.deep_attr_dict import DeepAttrDict`,
|
|
148
133
|
"",
|
|
149
134
|
"",
|
|
150
135
|
...Object.entries(openapi.components.schemas)
|
|
@@ -163,9 +148,6 @@ export const generatePythonSDK = async (options: SdkGeneratorOptions = {}) => {
|
|
|
163
148
|
),
|
|
164
149
|
"",
|
|
165
150
|
"",
|
|
166
|
-
SeamApiExceptionClassTemplate(),
|
|
167
|
-
"",
|
|
168
|
-
"",
|
|
169
151
|
...Object.entries(class_map)
|
|
170
152
|
.sort(
|
|
171
153
|
// define classes without children first for parent-child referencing
|
|
@@ -176,27 +158,9 @@ export const generatePythonSDK = async (options: SdkGeneratorOptions = {}) => {
|
|
|
176
158
|
"",
|
|
177
159
|
"",
|
|
178
160
|
abstractRoutesTemplate(top_level_namespaces),
|
|
179
|
-
"",
|
|
180
|
-
abstractSeamTemplate(),
|
|
181
161
|
].join("\n")
|
|
182
162
|
|
|
183
|
-
fs["
|
|
184
|
-
fs["pyproject.toml"] = pyprojectTomlTemplate()
|
|
185
|
-
fs[".gitignore"] = gitignoreTemplate()
|
|
186
|
-
|
|
187
|
-
fs["seam/__init__.py"] = initTemplate()
|
|
188
|
-
fs["seam/routes.py"] = routesPyTemplate(top_level_namespaces)
|
|
189
|
-
fs["seam/seam.py"] = seamPyTemplate()
|
|
190
|
-
fs["seam/auth.py"] = authPyTemplate()
|
|
191
|
-
fs["seam/token.py"] = tokenPyTemplate()
|
|
192
|
-
fs["seam/options.py"] = optionsPyTemplate()
|
|
193
|
-
fs["seam/parse_options.py"] = parseOptionsPyTemplate()
|
|
194
|
-
fs["seam/utils/deep_attr_dict.py"] = deepAttrDictPyTemplate()
|
|
195
|
-
fs["seam/utils/action_attempt_errors.py"] = actionAttemptsErrorsPyTemplate()
|
|
196
|
-
|
|
197
|
-
fs["tests/conftest.py"] = conftestPyTemplate()
|
|
198
|
-
fs["tests/test_smoke.py"] = test_smokePyTemplate()
|
|
199
|
-
fs["tests/__init__.py"] = ""
|
|
163
|
+
fs["seam/routes/__init__.py"] = routesPyTemplate(top_level_namespaces)
|
|
200
164
|
|
|
201
165
|
return fs
|
|
202
166
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { pascalCase } from "change-case"
|
|
2
2
|
export default (namespaces: string[]) =>
|
|
3
3
|
[
|
|
4
|
-
`from .
|
|
4
|
+
`from .models import AbstractRoutes`,
|
|
5
5
|
...namespaces.map((ns) => `from .${ns} import ${pascalCase(ns)}`),
|
|
6
6
|
``,
|
|
7
7
|
`class Routes(AbstractRoutes):`,
|
|
@@ -70,9 +70,5 @@ export const action_attempt_utils_definitions = [
|
|
|
70
70
|
].join("\n")
|
|
71
71
|
|
|
72
72
|
export const action_attempt_imports = `import time
|
|
73
|
-
|
|
74
|
-
from seam.utils.action_attempt_errors import (
|
|
75
|
-
SeamActionAttemptFailedError,
|
|
76
|
-
SeamActionAttemptTimeoutError,
|
|
77
|
-
)
|
|
73
|
+
from ..exceptions import SeamActionAttemptFailedError, SeamActionAttemptTimeoutError
|
|
78
74
|
`
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":".gitignore.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/.gitignore.template.ts"],"names":[],"mappings":"AAAA,eAAe,GAAG,EAAE,CAAC;;;;;;;;;CASpB,CAAA"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export default () => `# flake8: noqa
|
|
2
|
-
# type: ignore
|
|
3
|
-
|
|
4
|
-
from seam.seam import Seam, SeamApiException
|
|
5
|
-
from seam.options import SeamHttpInvalidOptionsError
|
|
6
|
-
from seam.auth import SeamHttpInvalidTokenError
|
|
7
|
-
from seam.utils.action_attempt_errors import (
|
|
8
|
-
SeamActionAttemptError,
|
|
9
|
-
SeamActionAttemptFailedError,
|
|
10
|
-
SeamActionAttemptTimeoutError,
|
|
11
|
-
)
|
|
12
|
-
`;
|
|
13
|
-
//# sourceMappingURL=__init__.py.template.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"__init__.py.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/__init__.py.template.ts"],"names":[],"mappings":"AAAA,eAAe,GAAG,EAAE,CAAC;;;;;;;;;;;CAWpB,CAAA"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
export default () => `from typing import Optional
|
|
2
|
-
from seam.options import (
|
|
3
|
-
SeamHttpInvalidOptionsError,
|
|
4
|
-
is_seam_http_options_with_api_key,
|
|
5
|
-
is_seam_http_options_with_personal_access_token,
|
|
6
|
-
)
|
|
7
|
-
from seam.token import (
|
|
8
|
-
is_jwt,
|
|
9
|
-
is_access_token,
|
|
10
|
-
is_client_session_token,
|
|
11
|
-
is_publishable_key,
|
|
12
|
-
is_seam_token,
|
|
13
|
-
TOKEN_PREFIX,
|
|
14
|
-
ACCESS_TOKEN_PREFIX,
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
class SeamHttpInvalidTokenError(Exception):
|
|
19
|
-
def __init__(self, message):
|
|
20
|
-
super().__init__(f"SeamHttp received an invalid token: {message}")
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
def get_auth_headers(
|
|
24
|
-
api_key: Optional[str] = None,
|
|
25
|
-
personal_access_token: Optional[str] = None,
|
|
26
|
-
workspace_id: Optional[str] = None,
|
|
27
|
-
):
|
|
28
|
-
if is_seam_http_options_with_api_key(
|
|
29
|
-
api_key=api_key,
|
|
30
|
-
personal_access_token=personal_access_token,
|
|
31
|
-
):
|
|
32
|
-
return get_auth_headers_for_api_key(api_key)
|
|
33
|
-
|
|
34
|
-
if is_seam_http_options_with_personal_access_token(
|
|
35
|
-
personal_access_token=personal_access_token,
|
|
36
|
-
api_key=api_key,
|
|
37
|
-
workspace_id=workspace_id,
|
|
38
|
-
):
|
|
39
|
-
return get_auth_headers_for_personal_access_token(
|
|
40
|
-
personal_access_token, workspace_id
|
|
41
|
-
)
|
|
42
|
-
|
|
43
|
-
raise SeamHttpInvalidOptionsError(
|
|
44
|
-
"Must specify an api_key or personal_access_token. "
|
|
45
|
-
"Attempted reading configuration from the environment, "
|
|
46
|
-
"but the environment variable SEAM_API_KEY is not set."
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
def get_auth_headers_for_api_key(api_key: str) -> dict:
|
|
51
|
-
if is_client_session_token(api_key):
|
|
52
|
-
raise SeamHttpInvalidTokenError(
|
|
53
|
-
"A Client Session Token cannot be used as an api_key"
|
|
54
|
-
)
|
|
55
|
-
|
|
56
|
-
if is_jwt(api_key):
|
|
57
|
-
raise SeamHttpInvalidTokenError("A JWT cannot be used as an api_key")
|
|
58
|
-
|
|
59
|
-
if is_access_token(api_key):
|
|
60
|
-
raise SeamHttpInvalidTokenError("An Access Token cannot be used as an api_key")
|
|
61
|
-
|
|
62
|
-
if is_publishable_key(api_key):
|
|
63
|
-
raise SeamHttpInvalidTokenError(
|
|
64
|
-
"A Publishable Key cannot be used as an api_key"
|
|
65
|
-
)
|
|
66
|
-
|
|
67
|
-
if not is_seam_token(api_key):
|
|
68
|
-
raise SeamHttpInvalidTokenError(
|
|
69
|
-
f"Unknown or invalid api_key format, expected token to start with {TOKEN_PREFIX}"
|
|
70
|
-
)
|
|
71
|
-
|
|
72
|
-
return {"authorization": f"Bearer {api_key}"}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
def get_auth_headers_for_personal_access_token(
|
|
76
|
-
personal_access_token: str, workspace_id: str
|
|
77
|
-
) -> dict:
|
|
78
|
-
if is_jwt(personal_access_token):
|
|
79
|
-
raise SeamHttpInvalidTokenError(
|
|
80
|
-
"A JWT cannot be used as a personal_access_token"
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
if is_client_session_token(personal_access_token):
|
|
84
|
-
raise SeamHttpInvalidTokenError(
|
|
85
|
-
"A Client Session Token cannot be used as a personal_access_token"
|
|
86
|
-
)
|
|
87
|
-
|
|
88
|
-
if is_publishable_key(personal_access_token):
|
|
89
|
-
raise SeamHttpInvalidTokenError(
|
|
90
|
-
"A Publishable Key cannot be used as a personal_access_token"
|
|
91
|
-
)
|
|
92
|
-
|
|
93
|
-
if not is_access_token(personal_access_token):
|
|
94
|
-
raise SeamHttpInvalidTokenError(
|
|
95
|
-
f"Unknown or invalid personal_access_token format, expected token to start with {ACCESS_TOKEN_PREFIX}"
|
|
96
|
-
)
|
|
97
|
-
|
|
98
|
-
return {
|
|
99
|
-
"authorization": f"Bearer {personal_access_token}",
|
|
100
|
-
"seam-workspace": workspace_id,
|
|
101
|
-
}
|
|
102
|
-
`;
|
|
103
|
-
//# sourceMappingURL=auth.py.template.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.py.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/auth.py.template.ts"],"names":[],"mappings":"AAAA,eAAe,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGpB,CAAA"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export default () => `import pytest
|
|
2
|
-
from seam import Seam
|
|
3
|
-
import random
|
|
4
|
-
import string
|
|
5
|
-
|
|
6
|
-
@pytest.fixture(scope="function")
|
|
7
|
-
def seam():
|
|
8
|
-
r = "".join(random.choices(string.ascii_uppercase + string.digits, k=10))
|
|
9
|
-
seam = Seam(
|
|
10
|
-
endpoint=f"https://{r}.fakeseamconnect.seam.vc", api_key="seam_apikey1_token"
|
|
11
|
-
)
|
|
12
|
-
yield seam
|
|
13
|
-
`;
|
|
14
|
-
//# sourceMappingURL=conftest.py.template.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"conftest.py.template.js","sourceRoot":"","sources":["../../../src/lib/generate-python-sdk/templates/conftest.py.template.ts"],"names":[],"mappings":"AAAA,eAAe,GAAG,EAAE,CAAC;;;;;;;;;;;;CAYpB,CAAA"}
|