attio 0.0.1-experimental.20241015 → 0.0.1-experimental.20241028
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/client/forms/boolean.d.ts +11 -0
- package/lib/client/forms/index.d.ts +1 -0
- package/lib/client/forms/path.d.ts +3 -2
- package/lib/client/hooks/index.d.ts +1 -0
- package/lib/client/hooks/use-form.d.ts +7 -3
- package/lib/client/hooks/use-records.d.ts +14 -0
- package/lib/client/index.d.ts +3 -0
- package/lib/client/platform.d.ts +1 -0
- package/lib/client/register-bulk-record-action.d.ts +36 -0
- package/lib/commands/create.js +1 -1
- package/lib/graphql/generate-operations.js +126 -169
- package/lib/graphql/graphql-error.js +29 -0
- package/lib/machines/code-gen-machine.js +3 -2
- package/lib/machines/js-machine.js +1 -1
- package/lib/server/webhook-handlers.d.ts +7 -7
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -1
- package/lib/graphql/parse-schema.js +0 -75
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Prettify } from "../util/prettify";
|
|
2
2
|
import { FormArray } from "./array";
|
|
3
|
+
import { FormBoolean } from "./boolean";
|
|
3
4
|
import { FormNumber } from "./number";
|
|
4
5
|
import { FormString } from "./string";
|
|
5
6
|
type Assert<TCat, TAnimal> = TCat extends TAnimal ? TCat : never;
|
|
6
7
|
type Join<A extends string | number | null, B extends string | number> = A extends null ? B : `${A}.${B}`;
|
|
7
|
-
export type ValueType = "string" | "number" | "
|
|
8
|
-
export type SchemaNode = FormString | FormNumber | FormArray<any> | {
|
|
8
|
+
export type ValueType = "string" | "number" | "boolean" | "array";
|
|
9
|
+
export type SchemaNode = FormString | FormNumber | FormBoolean | FormArray<any> | {
|
|
9
10
|
type: "object";
|
|
10
11
|
};
|
|
11
12
|
type PathWithTypeRecursive<TState, TRoot extends string | number | null> = TState extends FormString ? {
|
|
@@ -27,13 +27,13 @@ type Form<TSchema extends FormSchema> = React.FC<{
|
|
|
27
27
|
onSubmit: (values: ValueOf<TSchema>) => void;
|
|
28
28
|
}>;
|
|
29
29
|
/**
|
|
30
|
-
* A text
|
|
30
|
+
* A text or number input field.
|
|
31
31
|
*/
|
|
32
32
|
type Input<TSchema extends FormSchema> = React.FC<{
|
|
33
33
|
/** The label of the input field */
|
|
34
34
|
label: string;
|
|
35
35
|
/** The path to the value of the input field, e.g. `"name"` or `"address.street"` */
|
|
36
|
-
data: PathTo<TSchema, "string" | "number" | "
|
|
36
|
+
data: PathTo<TSchema, "string" | "number" | "boolean">;
|
|
37
37
|
/** The optional placeholder text of the input field */
|
|
38
38
|
placeholder?: string;
|
|
39
39
|
/** Whether the input field is disabled */
|
|
@@ -130,12 +130,16 @@ export interface FormApi<TSchema extends FormSchema> {
|
|
|
130
130
|
* This will validate the form and call the `onSubmit` handler.
|
|
131
131
|
*/
|
|
132
132
|
submit: () => void;
|
|
133
|
+
/**
|
|
134
|
+
* Changes the value of a field.
|
|
135
|
+
*/
|
|
136
|
+
change: <TPath extends PathTo<TSchema, "string" | "number">>(path: TPath, value: ValueOf<TSchema>[TPath]) => void;
|
|
133
137
|
/**
|
|
134
138
|
* The <Form> component to wrap the fields of this form and provide a submit handler.
|
|
135
139
|
*/
|
|
136
140
|
Form: Form<TSchema>;
|
|
137
141
|
/**
|
|
138
|
-
* An input field for a string, number, or
|
|
142
|
+
* An input field for a string, number, or boolean.
|
|
139
143
|
*/
|
|
140
144
|
Input: Input<TSchema>;
|
|
141
145
|
/**
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ObjectSlug } from "../object-slug.js";
|
|
2
|
+
/**
|
|
3
|
+
* Get information about the currently selected records.
|
|
4
|
+
*/
|
|
5
|
+
export declare function useRecords(): {
|
|
6
|
+
/**
|
|
7
|
+
* The IDs of the selected records.
|
|
8
|
+
*/
|
|
9
|
+
recordIds: Array<string>;
|
|
10
|
+
/**
|
|
11
|
+
* The object type of the selected records.
|
|
12
|
+
*/
|
|
13
|
+
object: ObjectSlug;
|
|
14
|
+
};
|
package/lib/client/index.d.ts
CHANGED
|
@@ -3,9 +3,12 @@ export * from "./components/index.js";
|
|
|
3
3
|
export { runQuery, Query } from "./run-query.js";
|
|
4
4
|
export * as Forms from "./forms/index.js";
|
|
5
5
|
export { FormArray } from "./forms/array.js";
|
|
6
|
+
export { FormBoolean } from "./forms/boolean.js";
|
|
6
7
|
export { FormNumber } from "./forms/number.js";
|
|
7
8
|
export { FormString } from "./forms/string.js";
|
|
8
9
|
export { FormValue } from "./forms/value.js";
|
|
9
10
|
export * from "./forms/path.js";
|
|
10
11
|
export { Icon, AttioIcon } from "./icon.js";
|
|
11
12
|
export { registerRecordAction } from "./register-record-action.js";
|
|
13
|
+
export { registerBulkRecordAction } from "./register-bulk-record-action.js";
|
|
14
|
+
export { platform } from "./platform.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const platform: "web-app" | "mobile-app";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ObjectSlug } from "./object-slug";
|
|
2
|
+
/**
|
|
3
|
+
* Registers a component that renders an <Action/> button for a set of records in Attio.
|
|
4
|
+
*
|
|
5
|
+
* You should use this in your `app.tsx` file to register where you want your
|
|
6
|
+
* app to surface inside the Attio UI.
|
|
7
|
+
*
|
|
8
|
+
* ## EXAMPLE USAGE
|
|
9
|
+
*
|
|
10
|
+
* ----
|
|
11
|
+
* ```tsx
|
|
12
|
+
* // app.tsx
|
|
13
|
+
* import { registerBulkRecordAction } from "attio/client";
|
|
14
|
+
* import { SendBulkInvoiceButton } from "./send-invoice-button";
|
|
15
|
+
* import React from "react";
|
|
16
|
+
*
|
|
17
|
+
* registerBulkRecordAction("send-bulk-invoice", <SendBulkInvoiceButton />);
|
|
18
|
+
* ```
|
|
19
|
+
* ----
|
|
20
|
+
*/
|
|
21
|
+
export declare function registerBulkRecordAction(
|
|
22
|
+
/**
|
|
23
|
+
* The unique identifier for the action.
|
|
24
|
+
*
|
|
25
|
+
* It is only used internally; never shown to the user.
|
|
26
|
+
*/
|
|
27
|
+
id: string,
|
|
28
|
+
/**
|
|
29
|
+
* The React element to render for the action.
|
|
30
|
+
*/
|
|
31
|
+
action: React.ReactElement, options?: {
|
|
32
|
+
/**
|
|
33
|
+
* If provided then the action will only be shown on records of the specified object(s).
|
|
34
|
+
*/
|
|
35
|
+
objects: ObjectSlug | Array<ObjectSlug>;
|
|
36
|
+
}): void;
|
package/lib/commands/create.js
CHANGED
|
@@ -61,7 +61,7 @@ export default function Create({ args: [argName = ""], options: { dev, title, la
|
|
|
61
61
|
React.createElement(Text, { color: "red" }, snapshot.context.error))),
|
|
62
62
|
React.createElement(Box, { flexDirection: "column" },
|
|
63
63
|
React.createElement(Box, { marginRight: 1 },
|
|
64
|
-
React.createElement(Text, null, "What would you like to call your new
|
|
64
|
+
React.createElement(Text, null, "What would you like to call your new app? (in \"Title Case\")")),
|
|
65
65
|
React.createElement(Box, null,
|
|
66
66
|
React.createElement(Text, null, "> "),
|
|
67
67
|
React.createElement(Text, { color: "yellow" },
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
+
import { codegen } from "@graphql-codegen/core";
|
|
2
|
+
import * as typescriptOpsPlugin from "@graphql-codegen/typescript-operations";
|
|
1
3
|
import fs from "fs";
|
|
2
|
-
import { parse,
|
|
4
|
+
import { parse, isExecutableDefinitionNode, Kind, OperationTypeNode } from "graphql";
|
|
3
5
|
import path from "path";
|
|
4
6
|
import { format } from "prettier";
|
|
5
|
-
import { getLineAndColumn, GraphQLError } from "./
|
|
7
|
+
import { getLineAndColumn, GraphQLError } from "./graphql-error.js";
|
|
6
8
|
function findGraphQLFiles(dir) {
|
|
7
9
|
const files = [];
|
|
8
10
|
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
9
11
|
for (const entry of entries) {
|
|
10
12
|
const fullPath = path.join(dir, entry.name);
|
|
13
|
+
if (entry.isDirectory() && entry.name === "node_modules") {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
11
16
|
if (entry.isDirectory()) {
|
|
12
17
|
files.push(...findGraphQLFiles(fullPath));
|
|
13
18
|
}
|
|
@@ -32,189 +37,131 @@ function findGeneratedFiles(dir) {
|
|
|
32
37
|
}
|
|
33
38
|
return files;
|
|
34
39
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
37
|
-
.getValues()
|
|
38
|
-
.map((v) => `'${v.name}'`)
|
|
39
|
-
.join(" | ");
|
|
40
|
-
return values;
|
|
41
|
-
}
|
|
42
|
-
function generateTypeDefinition(type) {
|
|
43
|
-
if (isNonNullType(type)) {
|
|
44
|
-
return generateTypeDefinition(type.ofType);
|
|
45
|
-
}
|
|
46
|
-
if (isListType(type)) {
|
|
47
|
-
return `(${generateTypeDefinition(type.ofType)})[]`;
|
|
48
|
-
}
|
|
49
|
-
if (isObjectType(type) || isInputObjectType(type)) {
|
|
50
|
-
return type.name;
|
|
51
|
-
}
|
|
52
|
-
if (isEnumType(type)) {
|
|
53
|
-
return generateEnumTypeDefinition(type);
|
|
54
|
-
}
|
|
55
|
-
switch (type.name) {
|
|
56
|
-
case "Int":
|
|
57
|
-
case "Float":
|
|
58
|
-
return "number";
|
|
59
|
-
case "String":
|
|
60
|
-
case "ID":
|
|
61
|
-
return "string";
|
|
62
|
-
case "Boolean":
|
|
63
|
-
return "boolean";
|
|
64
|
-
default:
|
|
65
|
-
return "any";
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
function generateInputObjectTypeDefinition(type) {
|
|
69
|
-
const fields = Object.values(type.getFields())
|
|
70
|
-
.map((field) => `${field.name}: ${generateTypeDefinition(field.type)}`)
|
|
71
|
-
.join(", ");
|
|
72
|
-
return `{ ${fields} }`;
|
|
73
|
-
}
|
|
74
|
-
function generateTypeDefinitionFromSelectionSet(selectionSet, parentType, schema) {
|
|
75
|
-
const fieldDefinitions = selectionSet.selections
|
|
76
|
-
.map((selection) => {
|
|
77
|
-
switch (selection.kind) {
|
|
78
|
-
case Kind.FIELD: {
|
|
79
|
-
const field = parentType.getFields()[selection.name.value];
|
|
80
|
-
if (!field) {
|
|
81
|
-
if (selection.name.value === "__typename") {
|
|
82
|
-
return null;
|
|
83
|
-
}
|
|
84
|
-
throw new Error(`Field ${selection.name.value} not found in type ${parentType.name}`);
|
|
85
|
-
}
|
|
86
|
-
let fieldType = field.type;
|
|
87
|
-
let fieldTypeDefinition = "";
|
|
88
|
-
if (selection.selectionSet) {
|
|
89
|
-
if (isObjectType(getNamedType(fieldType)) ||
|
|
90
|
-
isInterfaceType(getNamedType(fieldType))) {
|
|
91
|
-
fieldTypeDefinition = generateTypeDefinitionFromSelectionSet(selection.selectionSet, getNamedType(fieldType), schema);
|
|
92
|
-
if (isListType(fieldType) ||
|
|
93
|
-
(isNonNullType(fieldType) && isListType(fieldType.ofType))) {
|
|
94
|
-
fieldTypeDefinition = `(${fieldTypeDefinition})[]`;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
fieldTypeDefinition = generateTypeDefinition(fieldType);
|
|
100
|
-
if (isListType(fieldType) && !isNonNullType(fieldType.ofType)) {
|
|
101
|
-
fieldTypeDefinition = `(${generateTypeDefinition(fieldType.ofType)} | null)[]`;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return `${selection.name.value}: ${fieldTypeDefinition} ${isNonNullType(fieldType) ? "" : " | null"}`;
|
|
105
|
-
}
|
|
106
|
-
case Kind.FRAGMENT_SPREAD:
|
|
107
|
-
throw new Error("FragmentSpread not supported");
|
|
108
|
-
case Kind.INLINE_FRAGMENT: {
|
|
109
|
-
if (!selection.typeCondition) {
|
|
110
|
-
return generateTypeDefinitionFromSelectionSet(selection.selectionSet, parentType, schema);
|
|
111
|
-
}
|
|
112
|
-
const typeName = selection.typeCondition.name.value;
|
|
113
|
-
const type = schema.getType(typeName);
|
|
114
|
-
if (!isObjectType(type) && !isInterfaceType(type)) {
|
|
115
|
-
throw new Error(`Inline fragment type ${typeName} is not an object or interface type`);
|
|
116
|
-
}
|
|
117
|
-
const inlineFragmentType = generateTypeDefinitionFromSelectionSet(selection.selectionSet, type, schema);
|
|
118
|
-
return `{ __typename: "${typeName}"; ${inlineFragmentType.slice(1, -1)} }`;
|
|
119
|
-
}
|
|
120
|
-
default:
|
|
121
|
-
return selection;
|
|
122
|
-
}
|
|
123
|
-
})
|
|
124
|
-
.filter((def) => def !== null);
|
|
125
|
-
if (fieldDefinitions.length === 1 && fieldDefinitions[0].startsWith("{")) {
|
|
126
|
-
return fieldDefinitions[0];
|
|
127
|
-
}
|
|
128
|
-
if (fieldDefinitions.every((def) => def.startsWith("{"))) {
|
|
129
|
-
return fieldDefinitions.join(" | ");
|
|
130
|
-
}
|
|
131
|
-
return `{${fieldDefinitions.join(",")}}`;
|
|
132
|
-
}
|
|
133
|
-
function generateReturnType(selectionSet, schema) {
|
|
134
|
-
const queryType = schema.getQueryType();
|
|
135
|
-
if (!queryType) {
|
|
136
|
-
throw new Error("Query type not found in schema");
|
|
137
|
-
}
|
|
138
|
-
return generateTypeDefinitionFromSelectionSet(selectionSet, queryType, schema);
|
|
139
|
-
}
|
|
140
|
-
function generateOperationFunction(graphqlFileName, operationName, variableDefinitions, schema, selectionSet) {
|
|
141
|
-
const typeName = operationName === null
|
|
142
|
-
? ""
|
|
143
|
-
: `${operationName.charAt(0).toUpperCase() + operationName.slice(1)}`;
|
|
144
|
-
const returnType = generateReturnType(selectionSet, schema);
|
|
145
|
-
let input;
|
|
146
|
-
const variables = variableDefinitions
|
|
147
|
-
.map((def) => {
|
|
148
|
-
const varType = schema.getType(print(def.type).replace(/[!]/g, ""));
|
|
149
|
-
const varTypeString = isInputObjectType(varType)
|
|
150
|
-
? generateInputObjectTypeDefinition(varType)
|
|
151
|
-
: generateTypeDefinition(varType);
|
|
152
|
-
return `${def.variable.name.value}: ${varTypeString}`;
|
|
153
|
-
})
|
|
154
|
-
.join(", ");
|
|
155
|
-
input = variables
|
|
156
|
-
? `export interface ${typeName}Variables { ${variables} }`
|
|
157
|
-
: `export type ${typeName}Variables = never`;
|
|
158
|
-
return `
|
|
159
|
-
declare module "./${graphqlFileName}" {
|
|
160
|
-
${input}
|
|
161
|
-
|
|
162
|
-
export interface ${typeName}Result ${returnType}
|
|
163
|
-
|
|
164
|
-
const value: Query<${typeName}Variables, ${typeName}Result>
|
|
165
|
-
export default value
|
|
40
|
+
function repairTypeScriptOutput(output) {
|
|
41
|
+
return output.replace(/__typename\?: '[^']+',\s*/g, "");
|
|
166
42
|
}
|
|
167
|
-
|
|
168
|
-
}
|
|
169
|
-
export async function generateOperationFromQuery(graphqlFileName, query, schema) {
|
|
170
|
-
let ast;
|
|
43
|
+
export async function generateOperationFromQuery(fullGraphqlFileName, query, schema) {
|
|
44
|
+
let parsedQuery = {};
|
|
171
45
|
try {
|
|
172
|
-
|
|
46
|
+
parsedQuery = parse(query);
|
|
173
47
|
}
|
|
174
|
-
catch (
|
|
175
|
-
if (
|
|
176
|
-
throw new GraphQLError(
|
|
48
|
+
catch (error) {
|
|
49
|
+
if (error.message.startsWith("Syntax Error: Unexpected Name")) {
|
|
50
|
+
throw new GraphQLError(error.message, error.locations, query, fullGraphqlFileName);
|
|
177
51
|
}
|
|
178
|
-
throw e;
|
|
179
|
-
}
|
|
180
|
-
let operation = "";
|
|
181
|
-
const schemaErrors = validateSchema(schema);
|
|
182
|
-
if (schemaErrors.length > 0) {
|
|
183
|
-
throw new Error(`Schema validation errors: ${schemaErrors.map((e) => e.message).join("\n")}`);
|
|
184
|
-
}
|
|
185
|
-
const validationErrors = validate(schema, ast);
|
|
186
|
-
const filteredErrors = validationErrors.filter((error) => !error.message.includes("is not executable"));
|
|
187
|
-
const firstError = filteredErrors[0];
|
|
188
|
-
if (firstError) {
|
|
189
|
-
throw new GraphQLError(firstError.message, firstError.locations ?? [{ line: 1, column: 1 }], query, graphqlFileName);
|
|
190
52
|
}
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
53
|
+
parsedQuery.definitions?.forEach((def) => {
|
|
54
|
+
if (def && def.kind === Kind.OPERATION_DEFINITION) {
|
|
55
|
+
const location = def.loc;
|
|
56
|
+
if (!location) {
|
|
57
|
+
throw new Error("Expected a location");
|
|
58
|
+
}
|
|
59
|
+
switch (def.operation) {
|
|
194
60
|
case OperationTypeNode.MUTATION:
|
|
61
|
+
throw new GraphQLError(`Mutations are not supported`, [getLineAndColumn(query, location)], query, fullGraphqlFileName);
|
|
195
62
|
case OperationTypeNode.SUBSCRIPTION:
|
|
196
|
-
throw new GraphQLError(`
|
|
63
|
+
throw new GraphQLError(`Subscriptions are not supported`, [getLineAndColumn(query, location)], query, fullGraphqlFileName);
|
|
197
64
|
case OperationTypeNode.QUERY:
|
|
198
|
-
if (operation) {
|
|
199
|
-
throw new GraphQLError(`Only one query is allowed per .graphql file`, node.loc ? [getLineAndColumn(query, node.loc)] : [{ line: 1, column: 1 }], query, graphqlFileName);
|
|
200
|
-
}
|
|
201
|
-
const operationName = node.name?.value ?? null;
|
|
202
|
-
const variableDefinitions = node.variableDefinitions || [];
|
|
203
|
-
operation = generateOperationFunction(graphqlFileName, operationName, variableDefinitions, schema, node.selectionSet);
|
|
204
65
|
break;
|
|
205
66
|
default:
|
|
206
|
-
return
|
|
67
|
+
return def.operation;
|
|
207
68
|
}
|
|
208
|
-
}
|
|
69
|
+
}
|
|
209
70
|
});
|
|
210
|
-
|
|
71
|
+
const queries = parsedQuery.definitions?.filter((def) => def &&
|
|
72
|
+
def.kind === Kind.OPERATION_DEFINITION &&
|
|
73
|
+
isExecutableDefinitionNode(def) &&
|
|
74
|
+
def.operation === OperationTypeNode.QUERY) ?? [];
|
|
75
|
+
if (queries.length > 1) {
|
|
76
|
+
const location = queries[1]?.loc;
|
|
77
|
+
if (!location) {
|
|
78
|
+
throw new Error("Expected a location");
|
|
79
|
+
}
|
|
80
|
+
throw new GraphQLError(`Only one query is allowed per .graphql file`, [getLineAndColumn(query, location)], query, fullGraphqlFileName);
|
|
81
|
+
}
|
|
82
|
+
if (!queries.length) {
|
|
83
|
+
throw new GraphQLError(`No query found.`, [{ line: 1, column: 1 }], query, fullGraphqlFileName);
|
|
84
|
+
}
|
|
85
|
+
const def = queries[0];
|
|
86
|
+
switch (def.kind) {
|
|
87
|
+
case Kind.OPERATION_DEFINITION:
|
|
88
|
+
const name = (isExecutableDefinitionNode(def) && def.kind === Kind.OPERATION_DEFINITION
|
|
89
|
+
? def.name?.value
|
|
90
|
+
: undefined) ?? "";
|
|
91
|
+
const capitalizedName = name
|
|
92
|
+
? name.charAt(0).toUpperCase() + name.slice(1)
|
|
93
|
+
: "Unnamed_1_";
|
|
94
|
+
let code = "";
|
|
95
|
+
try {
|
|
96
|
+
code = await codegen({
|
|
97
|
+
documents: [{ document: parsedQuery }],
|
|
98
|
+
config: {},
|
|
99
|
+
filename: "relative/pathTo/filename.ts",
|
|
100
|
+
schema,
|
|
101
|
+
plugins: [
|
|
102
|
+
{
|
|
103
|
+
"typescript-operations": {
|
|
104
|
+
avoidOptionals: true,
|
|
105
|
+
enumsAsTypes: true,
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
pluginMap: {
|
|
110
|
+
"typescript-operations": typescriptOpsPlugin,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
if (error.message.startsWith("GraphQL Document Validation failed with")) {
|
|
116
|
+
const errorMatch = error.message.match(/Error 0: (.+)\n\s+at GraphQL request:(\d+):(\d+)/);
|
|
117
|
+
if (errorMatch) {
|
|
118
|
+
const [, errorMessage, line, column] = errorMatch;
|
|
119
|
+
throw new GraphQLError(errorMessage, [{ line: parseInt(line), column: parseInt(column) }], query, fullGraphqlFileName);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (error.message.startsWith("Unable to find root schema type for")) {
|
|
123
|
+
throw new GraphQLError(error.message, [{ line: 1, column: 1 }], query, fullGraphqlFileName);
|
|
124
|
+
}
|
|
125
|
+
throw error;
|
|
126
|
+
}
|
|
127
|
+
return format(`
|
|
128
|
+
declare module "./${path.basename(fullGraphqlFileName)}" {
|
|
129
|
+
${repairTypeScriptOutput(code)}
|
|
130
|
+
const value: Query<${capitalizedName}QueryVariables, ${capitalizedName}Query>
|
|
131
|
+
export default value
|
|
132
|
+
}
|
|
133
|
+
`, { parser: "typescript" });
|
|
134
|
+
case Kind.FRAGMENT_DEFINITION:
|
|
135
|
+
case Kind.SCHEMA_DEFINITION:
|
|
136
|
+
case Kind.SCALAR_TYPE_DEFINITION:
|
|
137
|
+
case Kind.OBJECT_TYPE_DEFINITION:
|
|
138
|
+
case Kind.INTERFACE_TYPE_DEFINITION:
|
|
139
|
+
case Kind.UNION_TYPE_DEFINITION:
|
|
140
|
+
case Kind.ENUM_TYPE_DEFINITION:
|
|
141
|
+
case Kind.INPUT_OBJECT_TYPE_DEFINITION:
|
|
142
|
+
case Kind.DIRECTIVE_DEFINITION:
|
|
143
|
+
case Kind.SCHEMA_EXTENSION:
|
|
144
|
+
case Kind.SCALAR_TYPE_EXTENSION:
|
|
145
|
+
case Kind.OBJECT_TYPE_EXTENSION:
|
|
146
|
+
case Kind.INTERFACE_TYPE_EXTENSION:
|
|
147
|
+
case Kind.UNION_TYPE_EXTENSION:
|
|
148
|
+
case Kind.ENUM_TYPE_EXTENSION:
|
|
149
|
+
case Kind.INPUT_OBJECT_TYPE_EXTENSION:
|
|
150
|
+
const location = def.loc;
|
|
151
|
+
if (!location) {
|
|
152
|
+
throw new Error("Expected a location");
|
|
153
|
+
}
|
|
154
|
+
throw new GraphQLError(`File should contain only a single query`, [getLineAndColumn(query, location)], query, fullGraphqlFileName);
|
|
155
|
+
default:
|
|
156
|
+
return def;
|
|
157
|
+
}
|
|
211
158
|
}
|
|
212
159
|
export async function generateOperations(rootDir, schema) {
|
|
213
160
|
await Promise.all(findGeneratedFiles(rootDir).map(async (file) => fs.promises.unlink(file)));
|
|
214
161
|
const graphqlFiles = findGraphQLFiles(rootDir);
|
|
215
162
|
await Promise.all(graphqlFiles.map(async (file) => {
|
|
216
|
-
const
|
|
217
|
-
const operation = await generateOperationFromQuery(
|
|
163
|
+
const query = fs.readFileSync(file, "utf-8");
|
|
164
|
+
const operation = await generateOperationFromQuery(file, query, schema);
|
|
218
165
|
const formattedOperation = await format(`/**
|
|
219
166
|
* ****************************************************
|
|
220
167
|
* THIS FILE IS AUTO-GENERATED AT DEVELOPMENT TIME.
|
|
@@ -222,7 +169,17 @@ export async function generateOperations(rootDir, schema) {
|
|
|
222
169
|
* DO NOT EDIT DIRECTLY OR COMMIT IT TO SOURCE CONTROL.
|
|
223
170
|
* ****************************************************
|
|
224
171
|
*/
|
|
225
|
-
import {Query
|
|
172
|
+
import {Query} from "attio/client"
|
|
173
|
+
|
|
174
|
+
type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
|
|
175
|
+
|
|
176
|
+
type Scalars = {
|
|
177
|
+
ID: { input: string; output: string };
|
|
178
|
+
String: { input: string; output: string };
|
|
179
|
+
Boolean: { input: boolean; output: boolean };
|
|
180
|
+
Int: { input: number; output: number };
|
|
181
|
+
Float: { input: number; output: number };
|
|
182
|
+
};
|
|
226
183
|
|
|
227
184
|
${operation}
|
|
228
185
|
`, { parser: "typescript" });
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { codeFrameColumns } from "@babel/code-frame";
|
|
2
|
+
export class GraphQLError extends Error {
|
|
3
|
+
constructor(message, locations, source, filename) {
|
|
4
|
+
super(message);
|
|
5
|
+
this.locations = locations;
|
|
6
|
+
this.source = source;
|
|
7
|
+
this.filename = filename;
|
|
8
|
+
}
|
|
9
|
+
toString() {
|
|
10
|
+
const { line, column } = this.locations[0];
|
|
11
|
+
return `${this.message}\n\n${this.filename}:${this.locations[0].line}\n\n${codeFrameColumns(this.source, {
|
|
12
|
+
start: { line, column },
|
|
13
|
+
})}\n`;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export function getLineAndColumn(source, location) {
|
|
17
|
+
let line = 1;
|
|
18
|
+
let column = 1;
|
|
19
|
+
for (let i = 0; i < location.start; i++) {
|
|
20
|
+
if (source[i] === "\n") {
|
|
21
|
+
line++;
|
|
22
|
+
column = 1;
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
column++;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return { line, column };
|
|
29
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { readFileSync } from "fs";
|
|
2
|
+
import { parse } from "graphql";
|
|
1
3
|
import { sendTo, assign, setup, fromCallback } from "xstate";
|
|
2
4
|
import { generateOperations } from "../graphql/generate-operations.js";
|
|
3
|
-
import { parseSchema } from "../graphql/parse-schema.js";
|
|
4
5
|
import { findNodeModulesPath } from "../util/find-node-modules-path.js";
|
|
5
6
|
export const codeGenMachine = setup({
|
|
6
7
|
types: {
|
|
@@ -17,7 +18,7 @@ export const codeGenMachine = setup({
|
|
|
17
18
|
sendBack({ type: "Error", error: new Error("No schema found") });
|
|
18
19
|
return;
|
|
19
20
|
}
|
|
20
|
-
const
|
|
21
|
+
const schema = parse(readFileSync(path, "utf8"));
|
|
21
22
|
sendBack({ type: "Schema Loaded", schema });
|
|
22
23
|
}
|
|
23
24
|
catch (error) {
|
|
@@ -53,7 +53,7 @@ export const jsMachine = setup({
|
|
|
53
53
|
}),
|
|
54
54
|
write,
|
|
55
55
|
outfile: path.resolve("dist", "index.js"),
|
|
56
|
-
loader: { ".png": "dataurl", ".graphql": "text" },
|
|
56
|
+
loader: { ".png": "dataurl", ".graphql": "text", ".gql": "text" },
|
|
57
57
|
});
|
|
58
58
|
return {
|
|
59
59
|
rebuild: async () => {
|
|
@@ -22,11 +22,11 @@ export interface WebhookHandler {
|
|
|
22
22
|
id: string;
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
-
export declare function createWebhookHandler({ fileName }: {
|
|
25
|
+
export declare function createWebhookHandler({ fileName, }: {
|
|
26
26
|
fileName: string;
|
|
27
|
-
}): WebhookHandler
|
|
28
|
-
export declare function listWebhookHandlers(): Array<WebhookHandler
|
|
29
|
-
export declare function updateWebhookHandler(id: string, {
|
|
30
|
-
|
|
31
|
-
}): void
|
|
32
|
-
export declare function deleteWebhookHandler(id: string): void
|
|
27
|
+
}): Promise<WebhookHandler>;
|
|
28
|
+
export declare function listWebhookHandlers(): Promise<Array<WebhookHandler>>;
|
|
29
|
+
export declare function updateWebhookHandler(id: string, { externalWebhookId }: {
|
|
30
|
+
externalWebhookId: string;
|
|
31
|
+
}): Promise<void>;
|
|
32
|
+
export declare function deleteWebhookHandler(id: string): Promise<void>;
|
package/lib/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../client/icon.ts","../client/hooks/use-async-cache.ts","../../../../node_modules/@types/react/global.d.ts","../../../../node_modules/csstype/index.d.ts","../../../../node_modules/@types/prop-types/index.d.ts","../../../../node_modules/@types/scheduler/tracing.d.ts","../../../../node_modules/@types/react/index.d.ts","../client/hooks/use-dialog.ts","../client/components/combobox.ts","../client/util/prettify.ts","../client/forms/value.ts","../client/forms/array.ts","../client/forms/number.ts","../client/forms/string.ts","../client/forms/path.ts","../client/hooks/use-form.ts","../client/run-query.ts","../client/hooks/use-query.ts","../client/object-slug.ts","../client/hooks/use-record.ts","../client/hooks/index.ts","../client/components/action.ts","../client/components/multistep.ts","../client/components/section.ts","../client/components/text-block.ts","../client/components/row.ts","../client/components/index.ts","../client/forms/index.ts","../client/register-record-action.ts","../client/index.ts","../server/connections.ts","../server/env.ts","../server/webhook-handlers.ts","../server/index.ts","../global.d.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/header.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/readable.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/file.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/fetch.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/formdata.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/connector.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/client.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/errors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/global-origin.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/handlers.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-client.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/api.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/cookies.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/patch.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/filereader.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/websocket.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/content-type.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/cache.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/interceptors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/index.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/dom-events.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/readline/promises.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/test.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/fetch.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/utils.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/filter-boolean.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/is-array.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/json-parse.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/array-includes.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/set-has.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/map-has.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/array-index-of.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/recommended.d.ts","../reset.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"6d926f2cb301b2a97ceaf4ea3f3d1ac8d4e5d07a7976743998230b641ef4279a","signature":"f2f25ef79d522fff3996d4395186cbe73598047729f7aa38f3dbdf473629b5dd"},{"version":"5e598d58705128f3fc737afb4bca664130e47da42edf16016c8b6b779496097c","signature":"8ef49329160b5cc2511044937ec57af12bebd598bf8730e92fe741e74bfe1e50"},{"version":"0bd5e7096c7bc02bf70b2cc017fc45ef489cb19bd2f32a71af39ff5787f1b56a","affectsGlobalScope":true},"ba7617784f6b9aeac5e20c5eea869bbc3ef31b905f59c796b0fd401dae17c111","a7e32dcb90bf0c1b7a1e4ac89b0f7747cbcba25e7beddc1ebf17be1e161842ad","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"e6f3077b1780226627f76085397d10c77a4d851c7154fd4b3f1eb114f4c2e56d","affectsGlobalScope":true},{"version":"aa21da835fb476db1dce444c27b559fe45c6e092f88335b7a3712a767f23cc74","signature":"0101b423f6ba50657dbbc6897561a270dee36348bab5214c800516ecd365825f"},{"version":"471069dd09cf40ac3ef20f5d5ac811c62d9355bf1af427aaf56af352caa03800","signature":"ac7830513a716e3f25ed9750d205918992e3c079dac0192483c96689759878a1"},{"version":"f3d8b45c64db8e04d5c17a786e0bb3cedf28cf17e5e1cf64ca508dfb9be8b445","signature":"6160ae0bbe477143d1305f9dc83625cd982fb58cf7dfe4adaf8b9d1481a82435"},{"version":"f98b305df05877e41cb6a0bb0c695b845cb51315ae3086c0ba65ea14e702884c","signature":"a43afb187c7124518644543c4c152a0482c8d7babae5d5dc8d4f3f03a860b589"},{"version":"6ce58fa9b55e1a462b6cee9834cb3188d521f775efc69e22430ffd8023093788","signature":"391a5ac9b7aa6c9dba25dc93618c81a97e6745a5e6b89321279a4cb4837c6d70"},{"version":"94baaf22c93fd2985c932fc0cfb08cbd62e4da27fbc0ba57911ac6b025ae8140","signature":"e3f8496b36a06218491cd4eba74ba02f30f56b52d77de2cbff5c6e246b41bbf7"},{"version":"ebd91663568c964003ba3fbf1ac1f73bd3af87e8388a745be910cabd7628eb18","signature":"0fc585169b89978ffa134e547229a28858181f87810226c0bf864460ecddfece"},{"version":"8e46164e3247ef9b4896871ebe633a999370ec15ae6e7325f49cef7ab18d3d8e","signature":"f7fa3ca3bef889e704c554e1ccbf9a302d5e8b544fc0514bb8250031472e8aa5"},{"version":"7333ff95837dc1e5921bf32c5e3fe7f0267f76bc5980cd65d1c7f316877ae0ad","signature":"f4758d0aaa23eb99a35063b5c40465939692ff3162503ad211d758c7f86a8082"},{"version":"c9110436c3c5ef03550074c5f89048707803804de8606d419fe01345ee54aeb2","signature":"c3f07f0027508b70e33755245bdc56d8c11b04b6145565b6d191bcc6d1db69bb"},{"version":"cce6cdec39a1cca6b76fd0b721ddfbac0f9ee8cfb2a02b183d98bf0d7238589a","signature":"04a366335c19c4d7ba987e0dc9bb11942b1da7c9e24bac5e0a19961f30d8b850"},{"version":"111a7bdd0e13f9ba800aea82b496c711b59e988242bad4feb894688845be3eee","signature":"eea233968f029246924644d2a28e1bd4abe4b08b31fa51b00f3738a8e952127b"},{"version":"0bd02cc6e97882e0ed4c2f3b64d3e059e7a36474652ca83c0fffce49e85c45cd","signature":"82f8a7af28b426d39f7ce43e738e8149260740b9ce96b7c936b994ea86946cb7"},{"version":"cdf8d756c26835e7c5d7742037cb9d5c7ef406a2f534e3d01cd514c10b40ed2c","signature":"4312e24fcf79c6f5fe60f98882b9aa2a58435d697bd0dbaa9033a257400b74b5"},{"version":"2c51aa186a1456cd6a989480f242aa1667e1be93d02d9fa98cef79942f2ed1c3","signature":"a50dca904f195f34cbbb5f9ea0b0f93362bd99c7df81d65d10977d9080567d76"},{"version":"fd59e59fe1f07d9d1b3207e4bf8124979188e1ebca0bf9b6659db55b345ee29e","signature":"079c8bab76840406ff2944ec61b083016c35a5143791cbf6361c021e1beab338"},{"version":"02235c65b9a16a7386fa65ec4f3f20e382ee077b9137e5250a16501f46691686","signature":"6102fd5ec32ea812dbaa5022005379d45b865fadf5eab27b6e753e4a6e59f0f8"},{"version":"6dfc0a38bc7779b1a354f7435d9001b67bb7b95fca5a9290e3504b931fb4d72c","signature":"277c51834b3a89f13dc7acea475e8b095c9c1a108120d18c6da00e24076fee06"},{"version":"9f863e6c2657492c5d8a3e24315162427944afbc2e8e8a075be901159b3bbb51","signature":"b8bedd9b16d10307518e9e47f0c598fbbcc064bcd4cdd38a919b3f51484e77bf"},{"version":"9b000b551c95015f2e90e7cdbbb4826ff4319588953d64ac2f732581af35e93f","signature":"2bb44fc83b73600f019686a4f96dfa05e9a08d3865966be284ec396a026d00ce"},{"version":"98de56be44db4f995cc16ecdcf421e6f4bc6f9930eb698cabf38351fd9d5c105","signature":"3ce7bc0c50f9d1d513da6f349abdf0b0a1e7dcf3c2181d745fed57f744d84e5b"},{"version":"8369d9b1a3570fcb4f6e50cc82405d234d70b7d4162c0fdde6e60930b4610303","signature":"2dbbc25729c354d8872f182a965fc0fa3a6b28d74d862d48fcea69640f4f1eda"},{"version":"838ee22690433e513f2f42296f7b43747f543b2903228a6523239e2ba5e721ff","signature":"c2595dca1ee3950de0dec7d4d0dc9d2c771bb1d7cff585af370de9b3c5ada5b9"},{"version":"e81d7f2bc7c3516d5a737d3943fe1e9b90dcd7053da457f4b86b89ff3d8db01e","signature":"131d92fc162d994206160175c4ea71126a16e5dfc9ff84a1954c68ee9d0ac834"},{"version":"73d6d7e1ae65fb7b5c0f971a34f0ed823a0ed6adfd3bd29cb3a314db6c5fd753","signature":"cfe58d764a530a5002ed4d0522dab853f933241401c935623422e8e81ffb4455"},{"version":"a6bad771846f88850db075475604517fed5d445c16529659b9c3e8aad8408993","signature":"6d5fe372af4dd7be34046355bf401783112cf131545bcd5b6e56a7a15617b225"},{"version":"5f42d2c0f93a119feaa02a6163dad3937bcbb313e4e06a00ae9dbd31e38387d1","signature":"d5c4ace73a5e02f115af1999f2c318a09867710ecac7396236b184b33a519c3d"},{"version":"e0918784966cad929cb82e5d775a213a651269418b511d3c1ca65d740e226176","affectsGlobalScope":true},"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"41fb2a1c108fbf46609ce5a451b7ec78eb9b5ada95fd5b94643e4b26397de0b3","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","87ef1a23caa071b07157c72077fa42b86d30568f9dc9e31eed24d5d14fc30ba8","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447",{"version":"98e4a7b236b99d95ba3b38f30392dc9370020002350dab42e78ae1a6353dcdd3","affectsGlobalScope":true},{"version":"dcf299a72c98d55f888980dffe2cd19020cdef6cbb32a0b28ef30b496ef7642d","affectsGlobalScope":true},{"version":"2e707bebde6153d06452cb3d03a9889a922853da46caf00f5fcc358c490bd6b1","affectsGlobalScope":true},{"version":"22f9c4223c59fd47ea5aadee362aec0b1adc9a6e58f58d9d848d71732f676abf","affectsGlobalScope":true},{"version":"8c5c8110577288007799018d817ecec25fe3eb3aefba99fc8720eb7c1bcd306e","affectsGlobalScope":true},{"version":"db41487da1c62b8a2e9aeaba4b79b9e2270452cfca0165bacb22ab50b2fb9bed","affectsGlobalScope":true},{"version":"eb0d8eac52f68a5fd4f4e8119040c907ca182f45f883e29b5e61cb9eeecb068a","affectsGlobalScope":true},{"version":"1bc1de3b1f094ed8f0612239c11d3163c1b1d7e197ecc6c1606051a3be8bfb5d","affectsGlobalScope":true},{"version":"78eebaa895ec3bfc488e0f2a7a05d573604be33f692187381ba8108cfe31b8c4","affectsGlobalScope":true},"5fc07ceecfafaba4308ea6c954298a259294fe3736b1e3cecda45ef626653769","289235dc0bf9e32f655ebd3a49b7992a122c1ddc9ada0a71fd1337cbac17dfe7"],"root":[46,47,[53,80]],"options":{"allowJs":false,"allowSyntheticDefaultImports":true,"allowUmdGlobalAccess":false,"allowUnreachableCode":false,"allowUnusedLabels":false,"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":false,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":1,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":false,"outDir":"./","removeComments":false,"sourceMap":false,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":6},"fileIdsList":[[168],[167,169,170,171,172,173,174,175],[81],[116],[117,122,150],[118,129,130,137,147,158],[118,119,129,137],[120,159],[121,122,130,138],[122,147,155],[123,125,129,137],[116,124],[125,126],[129],[127,129],[116,129],[129,130,131,147,158],[129,130,131,144,147,150],[114,117,163],[125,129,132,137,147,158],[129,130,132,133,137,147,155,158],[132,134,147,155,158],[81,82,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165],[129,135],[136,158,163],[125,129,137,147],[91,95,158],[91,147,158],[86],[88,91,155,158],[137,155],[166],[86,166],[88,91,137,158],[83,84,87,90,117,129,147,158],[83,89],[87,91,117,150,158,166],[117,166],[107,117,166],[85,86,166],[91],[85,86,87,88,89,90,91,92,93,95,96,97,98,99,100,101,102,103,104,105,106,108,109,110,111,112,113],[91,98,99],[89,91,99,100],[90],[83,86,91],[91,95,99,100],[95],[89,91,94,158],[83,88,89,91,95,98],[117,147],[86,91,107,117,163,166],[138],[139],[116,140],[141,157,163],[142],[143],[129,144,145],[144,146,159,161],[117,129,147,148,149,150],[117,147,149],[147,148],[150],[151],[116,147],[129,153,154],[153,154],[122,137,147,155],[156],[137,157],[117,132,143,158],[122,159],[147,160],[136,161],[162],[117,122,129,131,140,147,158,161,163],[147,164],[48,49,50,51],[46,52],[54,67,68,69,70,71],[52],[56],[57,58,59],[55,57,58,59],[47,53,61,63,65],[52,54,56,60],[62],[64],[46,56,57,58,59,60,62,66,72,73,74],[76,77,78]],"referencedMap":[[172,1],[175,1],[169,1],[174,1],[176,2],[173,1],[81,3],[82,3],[116,4],[117,5],[118,6],[119,7],[120,8],[121,9],[122,10],[123,11],[124,12],[125,13],[126,13],[128,14],[127,15],[129,16],[130,17],[131,18],[115,19],[132,20],[133,21],[134,22],[166,23],[135,24],[136,25],[137,26],[98,27],[105,28],[97,27],[112,29],[89,30],[88,31],[111,32],[106,33],[109,34],[91,35],[90,36],[86,37],[85,38],[108,39],[87,40],[92,41],[96,41],[114,42],[113,41],[100,43],[101,44],[103,45],[99,46],[102,47],[107,32],[94,48],[95,49],[104,50],[84,51],[110,52],[138,53],[139,54],[140,55],[141,56],[142,57],[143,58],[144,59],[145,59],[146,60],[147,61],[149,62],[148,63],[150,64],[151,65],[152,66],[153,67],[154,68],[155,69],[156,70],[157,71],[158,72],[159,73],[160,74],[161,75],[162,76],[163,77],[164,78],[52,79],[67,80],[72,81],[68,82],[71,82],[69,82],[70,82],[57,83],[73,84],[58,83],[60,85],[59,83],[66,86],[53,82],[61,87],[63,88],[65,89],[75,90],[74,89],[79,91]],"exportedModulesMap":[[172,1],[175,1],[169,1],[174,1],[176,2],[173,1],[81,3],[82,3],[116,4],[117,5],[118,6],[119,7],[120,8],[121,9],[122,10],[123,11],[124,12],[125,13],[126,13],[128,14],[127,15],[129,16],[130,17],[131,18],[115,19],[132,20],[133,21],[134,22],[166,23],[135,24],[136,25],[137,26],[98,27],[105,28],[97,27],[112,29],[89,30],[88,31],[111,32],[106,33],[109,34],[91,35],[90,36],[86,37],[85,38],[108,39],[87,40],[92,41],[96,41],[114,42],[113,41],[100,43],[101,44],[103,45],[99,46],[102,47],[107,32],[94,48],[95,49],[104,50],[84,51],[110,52],[138,53],[139,54],[140,55],[141,56],[142,57],[143,58],[144,59],[145,59],[146,60],[147,61],[149,62],[148,63],[150,64],[151,65],[152,66],[153,67],[154,68],[155,69],[156,70],[157,71],[158,72],[159,73],[160,74],[161,75],[162,76],[163,77],[164,78],[52,79],[67,80],[72,81],[68,82],[71,82],[69,82],[70,82],[57,83],[73,84],[58,83],[60,85],[59,83],[66,86],[53,82],[61,87],[63,88],[65,89],[75,90],[74,89],[79,91]],"semanticDiagnosticsPerFile":[172,175,167,169,170,171,174,176,173,168,81,82,116,117,118,119,120,121,122,123,124,125,126,128,127,129,130,131,115,165,132,133,134,166,135,136,137,98,105,97,112,89,88,111,106,109,91,90,86,85,108,87,92,93,96,83,114,113,100,101,103,99,102,107,94,95,104,84,110,138,139,140,141,142,143,144,145,146,147,149,148,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,50,48,52,51,49,44,45,9,8,2,10,11,12,13,14,15,16,17,3,18,4,19,23,20,21,22,24,25,26,5,27,28,29,30,6,34,31,32,33,35,7,36,41,42,37,38,39,40,1,43,67,54,72,68,71,69,70,57,73,58,60,59,56,66,47,53,61,63,65,46,75,64,74,62,55,80,177,76,77,79,78],"latestChangedDtsFile":"./server/index.d.ts"},"version":"5.4.5"}
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../client/icon.ts","../client/hooks/use-async-cache.ts","../../../../node_modules/@types/react/global.d.ts","../../../../node_modules/csstype/index.d.ts","../../../../node_modules/@types/prop-types/index.d.ts","../../../../node_modules/@types/scheduler/tracing.d.ts","../../../../node_modules/@types/react/index.d.ts","../client/hooks/use-dialog.ts","../client/components/combobox.ts","../client/util/prettify.ts","../client/forms/value.ts","../client/forms/array.ts","../client/forms/boolean.ts","../client/forms/number.ts","../client/forms/string.ts","../client/forms/path.ts","../client/hooks/use-form.ts","../client/run-query.ts","../client/hooks/use-query.ts","../client/object-slug.ts","../client/hooks/use-record.ts","../client/hooks/use-records.ts","../client/hooks/index.ts","../client/components/action.ts","../client/components/multistep.ts","../client/components/section.ts","../client/components/text-block.ts","../client/components/row.ts","../client/components/index.ts","../client/forms/index.ts","../client/register-record-action.ts","../client/register-bulk-record-action.ts","../client/platform.ts","../client/index.ts","../server/connections.ts","../server/env.ts","../server/webhook-handlers.ts","../server/index.ts","../global.d.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/header.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/readable.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/file.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/fetch.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/formdata.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/connector.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/client.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/errors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/global-origin.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/handlers.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-client.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/api.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/cookies.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/patch.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/filereader.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/websocket.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/content-type.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/cache.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/interceptors.d.ts","../../../../node_modules/@types/node/node_modules/undici-types/index.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/dom-events.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/readline/promises.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/test.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/fetch.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/utils.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/filter-boolean.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/is-array.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/json-parse.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/array-includes.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/set-has.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/map-has.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/array-index-of.d.ts","../../../../node_modules/@total-typescript/ts-reset/dist/recommended.d.ts","../reset.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"6d926f2cb301b2a97ceaf4ea3f3d1ac8d4e5d07a7976743998230b641ef4279a","signature":"f2f25ef79d522fff3996d4395186cbe73598047729f7aa38f3dbdf473629b5dd"},{"version":"5e598d58705128f3fc737afb4bca664130e47da42edf16016c8b6b779496097c","signature":"8ef49329160b5cc2511044937ec57af12bebd598bf8730e92fe741e74bfe1e50"},{"version":"0bd5e7096c7bc02bf70b2cc017fc45ef489cb19bd2f32a71af39ff5787f1b56a","affectsGlobalScope":true},"ba7617784f6b9aeac5e20c5eea869bbc3ef31b905f59c796b0fd401dae17c111","a7e32dcb90bf0c1b7a1e4ac89b0f7747cbcba25e7beddc1ebf17be1e161842ad","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"e6f3077b1780226627f76085397d10c77a4d851c7154fd4b3f1eb114f4c2e56d","affectsGlobalScope":true},{"version":"aa21da835fb476db1dce444c27b559fe45c6e092f88335b7a3712a767f23cc74","signature":"0101b423f6ba50657dbbc6897561a270dee36348bab5214c800516ecd365825f"},{"version":"471069dd09cf40ac3ef20f5d5ac811c62d9355bf1af427aaf56af352caa03800","signature":"ac7830513a716e3f25ed9750d205918992e3c079dac0192483c96689759878a1"},{"version":"f3d8b45c64db8e04d5c17a786e0bb3cedf28cf17e5e1cf64ca508dfb9be8b445","signature":"6160ae0bbe477143d1305f9dc83625cd982fb58cf7dfe4adaf8b9d1481a82435"},{"version":"f98b305df05877e41cb6a0bb0c695b845cb51315ae3086c0ba65ea14e702884c","signature":"a43afb187c7124518644543c4c152a0482c8d7babae5d5dc8d4f3f03a860b589"},{"version":"6ce58fa9b55e1a462b6cee9834cb3188d521f775efc69e22430ffd8023093788","signature":"391a5ac9b7aa6c9dba25dc93618c81a97e6745a5e6b89321279a4cb4837c6d70"},{"version":"e005b9a224c324ebff914adf8377a830242d19c8ec89cf37f49da3c591261505","signature":"f4783c5d93ca3ed79b044399e6b518bd079a26751b2d91dbf7a13a96363a65ed"},{"version":"94baaf22c93fd2985c932fc0cfb08cbd62e4da27fbc0ba57911ac6b025ae8140","signature":"e3f8496b36a06218491cd4eba74ba02f30f56b52d77de2cbff5c6e246b41bbf7"},{"version":"ebd91663568c964003ba3fbf1ac1f73bd3af87e8388a745be910cabd7628eb18","signature":"0fc585169b89978ffa134e547229a28858181f87810226c0bf864460ecddfece"},{"version":"a8238c04c811f1f3a5f668bd1d01de528ea481a2f024d1c7f409d7fd41e15617","signature":"9eded0e2a8992a20c2ef9817b095e0190e347ec47f3c10f43168d08be69eb61c"},{"version":"9776f726e9eae9a202e51255aa178641519735a5a79708894a96f15d2c63ddda","signature":"3e302a0bb44041ea4a96c805f4ffa052eb3deb3da5b3ace5e1487e045ef9647b"},{"version":"c9110436c3c5ef03550074c5f89048707803804de8606d419fe01345ee54aeb2","signature":"c3f07f0027508b70e33755245bdc56d8c11b04b6145565b6d191bcc6d1db69bb"},{"version":"cce6cdec39a1cca6b76fd0b721ddfbac0f9ee8cfb2a02b183d98bf0d7238589a","signature":"04a366335c19c4d7ba987e0dc9bb11942b1da7c9e24bac5e0a19961f30d8b850"},{"version":"111a7bdd0e13f9ba800aea82b496c711b59e988242bad4feb894688845be3eee","signature":"eea233968f029246924644d2a28e1bd4abe4b08b31fa51b00f3738a8e952127b"},{"version":"0bd02cc6e97882e0ed4c2f3b64d3e059e7a36474652ca83c0fffce49e85c45cd","signature":"82f8a7af28b426d39f7ce43e738e8149260740b9ce96b7c936b994ea86946cb7"},{"version":"46f309332243a71a5bedb6fcec92ed03acb4e9bcb4acbdcc5619818c91852fc9","signature":"47139af66634c25bd225b02c8806f16313c41688a99d1df57e804c36687020b0"},{"version":"dcbba3a54dfaa9746b9f07898a63497b69feacb283622484113d58e52d27c72a","signature":"dafc6c6e776c5a379d564e950bf90a3f50eec36c3fdbf3ec526b4613ed2924af"},{"version":"2c51aa186a1456cd6a989480f242aa1667e1be93d02d9fa98cef79942f2ed1c3","signature":"a50dca904f195f34cbbb5f9ea0b0f93362bd99c7df81d65d10977d9080567d76"},{"version":"fd59e59fe1f07d9d1b3207e4bf8124979188e1ebca0bf9b6659db55b345ee29e","signature":"079c8bab76840406ff2944ec61b083016c35a5143791cbf6361c021e1beab338"},{"version":"02235c65b9a16a7386fa65ec4f3f20e382ee077b9137e5250a16501f46691686","signature":"6102fd5ec32ea812dbaa5022005379d45b865fadf5eab27b6e753e4a6e59f0f8"},{"version":"6dfc0a38bc7779b1a354f7435d9001b67bb7b95fca5a9290e3504b931fb4d72c","signature":"277c51834b3a89f13dc7acea475e8b095c9c1a108120d18c6da00e24076fee06"},{"version":"9f863e6c2657492c5d8a3e24315162427944afbc2e8e8a075be901159b3bbb51","signature":"b8bedd9b16d10307518e9e47f0c598fbbcc064bcd4cdd38a919b3f51484e77bf"},{"version":"9b000b551c95015f2e90e7cdbbb4826ff4319588953d64ac2f732581af35e93f","signature":"2bb44fc83b73600f019686a4f96dfa05e9a08d3865966be284ec396a026d00ce"},{"version":"7551f5776de43e2de35106640bb489a3b3fda2aa87e12b1b39fb5d422d565051","signature":"3396739b1a9a097787e119a402ad97a8d996db9d40f66d575ee417849997a03a"},{"version":"8369d9b1a3570fcb4f6e50cc82405d234d70b7d4162c0fdde6e60930b4610303","signature":"2dbbc25729c354d8872f182a965fc0fa3a6b28d74d862d48fcea69640f4f1eda"},{"version":"64ea473fbd856d0d2f9f0a40c17462e7f85c26cb19ca2ead52a898e1dfc94d8c","signature":"4c485fa1530ac94c15e93beb4e9a9a2f7c3ddd90532cf261cfa9aa2d2d860850"},{"version":"8bd3cdbec99430fdd5c3b99d10b631d34bd2e8fd44525b8521cfea8a44bf423d","signature":"8567c2485ecebe3ea1eb5483206e12ff675af0a1bada874a7d44e9c5a617eba0"},{"version":"f3806310a74fcbadf0cfe6ae7efb7685193656e031fa356e2ded8a0295902d20","signature":"0b841ead387cfdc9195088a1af987524b353c56920a1a140f827e61ff9611f06"},{"version":"e81d7f2bc7c3516d5a737d3943fe1e9b90dcd7053da457f4b86b89ff3d8db01e","signature":"131d92fc162d994206160175c4ea71126a16e5dfc9ff84a1954c68ee9d0ac834"},{"version":"73d6d7e1ae65fb7b5c0f971a34f0ed823a0ed6adfd3bd29cb3a314db6c5fd753","signature":"cfe58d764a530a5002ed4d0522dab853f933241401c935623422e8e81ffb4455"},{"version":"f6614224c85ad32e0ce48c4d7a6a1df1840dbef73575b70a6ce4bd4c7d66e8e8","signature":"89baca0d300875c5d3ec2bb35a5822ea964b19c9b2796464d218ece6439ad7f5"},{"version":"5f42d2c0f93a119feaa02a6163dad3937bcbb313e4e06a00ae9dbd31e38387d1","signature":"d5c4ace73a5e02f115af1999f2c318a09867710ecac7396236b184b33a519c3d"},{"version":"e0918784966cad929cb82e5d775a213a651269418b511d3c1ca65d740e226176","affectsGlobalScope":true},"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","d69a3298a197fe5d59edba0ec23b4abf2c8e7b8c6718eac97833633cd664e4c9",{"version":"41fb2a1c108fbf46609ce5a451b7ec78eb9b5ada95fd5b94643e4b26397de0b3","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9c611eff81287837680c1f4496daf9e737d6f3a1ff17752207814b8f8e1265af","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","b5d4e3e524f2eead4519c8e819eaf7fa44a27c22418eff1b7b2d0ebc5fdc510d","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","87ef1a23caa071b07157c72077fa42b86d30568f9dc9e31eed24d5d14fc30ba8","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"46755a4afc53df75f0bfce72259fb971daac826b0cdd8c4eaccad2755a817403","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447",{"version":"98e4a7b236b99d95ba3b38f30392dc9370020002350dab42e78ae1a6353dcdd3","affectsGlobalScope":true},{"version":"dcf299a72c98d55f888980dffe2cd19020cdef6cbb32a0b28ef30b496ef7642d","affectsGlobalScope":true},{"version":"2e707bebde6153d06452cb3d03a9889a922853da46caf00f5fcc358c490bd6b1","affectsGlobalScope":true},{"version":"22f9c4223c59fd47ea5aadee362aec0b1adc9a6e58f58d9d848d71732f676abf","affectsGlobalScope":true},{"version":"8c5c8110577288007799018d817ecec25fe3eb3aefba99fc8720eb7c1bcd306e","affectsGlobalScope":true},{"version":"db41487da1c62b8a2e9aeaba4b79b9e2270452cfca0165bacb22ab50b2fb9bed","affectsGlobalScope":true},{"version":"eb0d8eac52f68a5fd4f4e8119040c907ca182f45f883e29b5e61cb9eeecb068a","affectsGlobalScope":true},{"version":"1bc1de3b1f094ed8f0612239c11d3163c1b1d7e197ecc6c1606051a3be8bfb5d","affectsGlobalScope":true},{"version":"78eebaa895ec3bfc488e0f2a7a05d573604be33f692187381ba8108cfe31b8c4","affectsGlobalScope":true},"5fc07ceecfafaba4308ea6c954298a259294fe3736b1e3cecda45ef626653769","289235dc0bf9e32f655ebd3a49b7992a122c1ddc9ada0a71fd1337cbac17dfe7"],"root":[46,47,[53,84]],"options":{"allowJs":false,"allowSyntheticDefaultImports":true,"allowUmdGlobalAccess":false,"allowUnreachableCode":false,"allowUnusedLabels":false,"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":false,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":1,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":false,"outDir":"./","removeComments":false,"sourceMap":false,"strict":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":6},"fileIdsList":[[172],[171,173,174,175,176,177,178,179],[85],[120],[121,126,154],[122,133,134,141,151,162],[122,123,133,141],[124,163],[125,126,134,142],[126,151,159],[127,129,133,141],[120,128],[129,130],[133],[131,133],[120,133],[133,134,135,151,162],[133,134,135,148,151,154],[118,121,167],[129,133,136,141,151,162],[133,134,136,137,141,151,159,162],[136,138,151,159,162],[85,86,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[133,139],[140,162,167],[129,133,141,151],[95,99,162],[95,151,162],[90],[92,95,159,162],[141,159],[170],[90,170],[92,95,141,162],[87,88,91,94,121,133,151,162],[87,93],[91,95,121,154,162,170],[121,170],[111,121,170],[89,90,170],[95],[89,90,91,92,93,94,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,112,113,114,115,116,117],[95,102,103],[93,95,103,104],[94],[87,90,95],[95,99,103,104],[99],[93,95,98,162],[87,92,93,95,99,102],[121,151],[90,95,111,121,167,170],[142],[143],[120,144],[145,161,167],[146],[147],[133,148,149],[148,150,163,165],[121,133,151,152,153,154],[121,151,153],[151,152],[154],[155],[120,151],[133,157,158],[157,158],[126,141,151,159],[160],[141,161],[121,136,147,162],[126,163],[151,164],[140,165],[166],[121,126,133,135,144,151,162,165,167],[151,168],[48,49,50,51],[46,52],[54,69,70,71,72,73],[52],[56],[57,58,59,60],[55,57,58,59,60],[47,53,62,64,66,67],[52,54,56,61],[63],[65],[46,56,57,58,59,60,61,63,68,74,75,76,77,78],[80,81,82]],"referencedMap":[[176,1],[179,1],[173,1],[178,1],[180,2],[177,1],[85,3],[86,3],[120,4],[121,5],[122,6],[123,7],[124,8],[125,9],[126,10],[127,11],[128,12],[129,13],[130,13],[132,14],[131,15],[133,16],[134,17],[135,18],[119,19],[136,20],[137,21],[138,22],[170,23],[139,24],[140,25],[141,26],[102,27],[109,28],[101,27],[116,29],[93,30],[92,31],[115,32],[110,33],[113,34],[95,35],[94,36],[90,37],[89,38],[112,39],[91,40],[96,41],[100,41],[118,42],[117,41],[104,43],[105,44],[107,45],[103,46],[106,47],[111,32],[98,48],[99,49],[108,50],[88,51],[114,52],[142,53],[143,54],[144,55],[145,56],[146,57],[147,58],[148,59],[149,59],[150,60],[151,61],[153,62],[152,63],[154,64],[155,65],[156,66],[157,67],[158,68],[159,69],[160,70],[161,71],[162,72],[163,73],[164,74],[165,75],[166,76],[167,77],[168,78],[52,79],[69,80],[74,81],[70,82],[73,82],[71,82],[72,82],[57,83],[58,83],[75,84],[59,83],[61,85],[60,83],[68,86],[53,82],[62,87],[64,88],[66,89],[67,89],[79,90],[77,89],[76,89],[83,91]],"exportedModulesMap":[[176,1],[179,1],[173,1],[178,1],[180,2],[177,1],[85,3],[86,3],[120,4],[121,5],[122,6],[123,7],[124,8],[125,9],[126,10],[127,11],[128,12],[129,13],[130,13],[132,14],[131,15],[133,16],[134,17],[135,18],[119,19],[136,20],[137,21],[138,22],[170,23],[139,24],[140,25],[141,26],[102,27],[109,28],[101,27],[116,29],[93,30],[92,31],[115,32],[110,33],[113,34],[95,35],[94,36],[90,37],[89,38],[112,39],[91,40],[96,41],[100,41],[118,42],[117,41],[104,43],[105,44],[107,45],[103,46],[106,47],[111,32],[98,48],[99,49],[108,50],[88,51],[114,52],[142,53],[143,54],[144,55],[145,56],[146,57],[147,58],[148,59],[149,59],[150,60],[151,61],[153,62],[152,63],[154,64],[155,65],[156,66],[157,67],[158,68],[159,69],[160,70],[161,71],[162,72],[163,73],[164,74],[165,75],[166,76],[167,77],[168,78],[52,79],[69,80],[74,81],[70,82],[73,82],[71,82],[72,82],[57,83],[58,83],[75,84],[59,83],[61,85],[60,83],[68,86],[53,82],[62,87],[64,88],[66,89],[67,89],[79,90],[77,89],[76,89],[83,91]],"semanticDiagnosticsPerFile":[176,179,171,173,174,175,178,180,177,172,85,86,120,121,122,123,124,125,126,127,128,129,130,132,131,133,134,135,119,169,136,137,138,170,139,140,141,102,109,101,116,93,92,115,110,113,95,94,90,89,112,91,96,97,100,87,118,117,104,105,107,103,106,111,98,99,108,88,114,142,143,144,145,146,147,148,149,150,151,153,152,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,50,48,52,51,49,44,45,9,8,2,10,11,12,13,14,15,16,17,3,18,4,19,23,20,21,22,24,25,26,5,27,28,29,30,6,34,31,32,33,35,7,36,41,42,37,38,39,40,1,43,69,54,74,70,73,71,72,57,58,75,59,61,60,56,68,47,53,62,64,66,67,46,79,65,78,77,76,63,55,84,181,80,81,83,82],"latestChangedDtsFile":"./server/index.d.ts"},"version":"5.4.5"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "attio",
|
|
3
|
-
"version": "0.0.1-experimental.
|
|
3
|
+
"version": "0.0.1-experimental.20241028",
|
|
4
4
|
"bin": "lib/attio.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -29,6 +29,8 @@
|
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@babel/code-frame": "7.24.7",
|
|
31
31
|
"@fal-works/esbuild-plugin-global-externals": "^2.1.2",
|
|
32
|
+
"@graphql-codegen/core": "4.0.2",
|
|
33
|
+
"@graphql-codegen/typescript-operations": "4.3.0",
|
|
32
34
|
"@hono/graphql-server": "0.5.1",
|
|
33
35
|
"@hono/node-server": "1.13.1",
|
|
34
36
|
"@swc/core": "^1.3.58",
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { codeFrameColumns } from "@babel/code-frame";
|
|
2
|
-
import fs from "fs";
|
|
3
|
-
import { parse, validateSchema, buildASTSchema } from "graphql";
|
|
4
|
-
import { validateSDL } from "graphql/validation/validate.js";
|
|
5
|
-
export class GraphQLError extends Error {
|
|
6
|
-
constructor(message, locations, source, filename) {
|
|
7
|
-
super(message);
|
|
8
|
-
this.locations = locations;
|
|
9
|
-
this.source = source;
|
|
10
|
-
this.filename = filename;
|
|
11
|
-
}
|
|
12
|
-
toString() {
|
|
13
|
-
const { line, column } = this.locations[0];
|
|
14
|
-
return `${this.message}\n\n${this.filename}:${this.locations[0].line}\n\n${codeFrameColumns(this.source, {
|
|
15
|
-
start: { line, column },
|
|
16
|
-
})}\n`;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
export function getLineAndColumn(source, location) {
|
|
20
|
-
let line = 1;
|
|
21
|
-
let column = 1;
|
|
22
|
-
for (let i = 0; i < location.start; i++) {
|
|
23
|
-
if (source[i] === "\n") {
|
|
24
|
-
line++;
|
|
25
|
-
column = 1;
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
column++;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return { line, column };
|
|
32
|
-
}
|
|
33
|
-
export function parseSchemaString(schemaString, schemaPath) {
|
|
34
|
-
let parsedSchema;
|
|
35
|
-
try {
|
|
36
|
-
parsedSchema = parse(schemaString);
|
|
37
|
-
}
|
|
38
|
-
catch (e) {
|
|
39
|
-
throw new GraphQLError(e.message, e.locations, schemaString, schemaPath);
|
|
40
|
-
}
|
|
41
|
-
parsedSchema = {
|
|
42
|
-
...parsedSchema,
|
|
43
|
-
definitions: parsedSchema.definitions
|
|
44
|
-
.slice()
|
|
45
|
-
.sort((a, b) => {
|
|
46
|
-
if (!a.name)
|
|
47
|
-
return -1;
|
|
48
|
-
if (!b.name)
|
|
49
|
-
return 1;
|
|
50
|
-
if (a.name.value.toLowerCase() > b.name.value.toLowerCase())
|
|
51
|
-
return 1;
|
|
52
|
-
if (a.name.value.toLowerCase() < b.name.value.toLowerCase())
|
|
53
|
-
return -1;
|
|
54
|
-
return 0;
|
|
55
|
-
}),
|
|
56
|
-
};
|
|
57
|
-
const sdlValidationErrors = validateSDL(parsedSchema);
|
|
58
|
-
if (sdlValidationErrors.length) {
|
|
59
|
-
throw new GraphQLError(sdlValidationErrors[0].message, sdlValidationErrors[0].locations ?? [{ line: 1, column: 1 }], schemaString, schemaPath);
|
|
60
|
-
}
|
|
61
|
-
const schema = buildASTSchema(parsedSchema, { assumeValid: false, assumeValidSDL: false });
|
|
62
|
-
const schemaValidationErrors = validateSchema(schema);
|
|
63
|
-
if (schemaValidationErrors.length > 0) {
|
|
64
|
-
throw new GraphQLError(schemaValidationErrors[0].message, schemaValidationErrors[0].locations ?? [{ line: 1, column: 1 }], schemaString, schemaPath);
|
|
65
|
-
}
|
|
66
|
-
return {
|
|
67
|
-
source: schemaString,
|
|
68
|
-
documentNode: parsedSchema,
|
|
69
|
-
schema,
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
export function parseSchema(schemaPath) {
|
|
73
|
-
const schemaString = fs.readFileSync(schemaPath, "utf-8");
|
|
74
|
-
return parseSchemaString(schemaString, schemaPath);
|
|
75
|
-
}
|