@graphprotocol/hypergraph 0.4.2 → 0.5.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/Cli.js +1 -1
- package/dist/cli/bin.js +0 -0
- package/dist/cli/bin.js.map +1 -1
- package/dist/cli/bun.js +0 -0
- package/dist/cli/services/Model.d.ts +99 -0
- package/dist/cli/services/Model.d.ts.map +1 -0
- package/dist/cli/services/Model.js +52 -0
- package/dist/cli/services/Model.js.map +1 -0
- package/dist/cli/services/Typesync.d.ts +7 -4
- package/dist/cli/services/Typesync.d.ts.map +1 -1
- package/dist/cli/services/Typesync.js +106 -4
- package/dist/cli/services/Typesync.js.map +1 -1
- package/dist/cli/services/Utils.d.ts +81 -0
- package/dist/cli/services/Utils.d.ts.map +1 -1
- package/dist/cli/services/Utils.js +198 -8
- package/dist/cli/services/Utils.js.map +1 -1
- package/dist/cli/subcommands/typesync.d.ts +13 -2
- package/dist/cli/subcommands/typesync.d.ts.map +1 -1
- package/dist/cli/subcommands/typesync.js +141 -21
- package/dist/cli/subcommands/typesync.js.map +1 -1
- package/dist/entity/findMany.d.ts.map +1 -1
- package/dist/entity/findMany.js +21 -13
- package/dist/entity/findMany.js.map +1 -1
- package/dist/entity/types.d.ts +0 -6
- package/dist/entity/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/mapping/Mapping.d.ts +24 -12
- package/dist/mapping/Mapping.d.ts.map +1 -1
- package/dist/mapping/Mapping.js +12 -4
- package/dist/mapping/Mapping.js.map +1 -1
- package/dist/typesync-studio/dist/assets/authenticate-callback-XTxFqKgn.js +1 -0
- package/dist/typesync-studio/dist/assets/ccip-_s3urR1L.js +1 -0
- package/dist/typesync-studio/dist/assets/index-B-tctDXW.js +88 -0
- package/dist/typesync-studio/dist/assets/index-BHBkzpXd.css +1 -0
- package/dist/typesync-studio/dist/assets/index-bioTPE3q.js +215 -0
- package/dist/typesync-studio/dist/index.html +30 -0
- package/dist/typesync-studio/dist/manifest.json +20 -0
- package/dist/typesync-studio/dist/robots.txt +3 -0
- package/package.json +15 -8
- package/src/cli/Cli.ts +1 -1
- package/src/cli/bin.ts +0 -1
- package/src/cli/services/Model.ts +87 -0
- package/src/cli/services/Typesync.ts +137 -9
- package/src/cli/services/Utils.ts +231 -11
- package/src/cli/subcommands/typesync.ts +251 -42
- package/src/entity/findMany.ts +27 -15
- package/src/entity/types.ts +0 -6
- package/src/index.ts +1 -0
- package/src/mapping/Mapping.ts +21 -6
package/dist/cli/Cli.js
CHANGED
|
@@ -3,6 +3,6 @@ import { typesync } from './subcommands/typesync.js';
|
|
|
3
3
|
const hypergraph = /*#__PURE__*/Command.make('hypergraph').pipe(/*#__PURE__*/Command.withDescription('Hypergraph command line interface for building and interacting with @graphprotocol/hypergraph schemas'), /*#__PURE__*/Command.withSubcommands([typesync]));
|
|
4
4
|
export const run = /*#__PURE__*/Command.run(hypergraph, {
|
|
5
5
|
name: 'hypergraph',
|
|
6
|
-
version: '0.
|
|
6
|
+
version: '0.5.0-alpha.1'
|
|
7
7
|
});
|
|
8
8
|
//# sourceMappingURL=Cli.js.map
|
package/dist/cli/bin.js
CHANGED
|
File without changes
|
package/dist/cli/bin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.js","names":["NodeContext","NodeFileSystem","NodeRuntime","Ansi","AnsiDoc","Effect","Logger","LogLevel","run","AnsiDocLogger","runnable","suspend","process","argv","pipe","provide","layer","catchAllDefect","defect","gen","name","logError","cat","hardLine","text","annotate","red","die","replace","defaultLogger","withMinimumLogLevel","Debug","orDie","runMain","disableErrorReporting","env","NODE_ENV","disablePrettyLogger"],"sources":["../../src/cli/bin.ts"],"sourcesContent":[null],"mappings":";AAEA,SAASA,WAAW,EAAEC,cAAc,EAAEC,WAAW,QAAQ,uBAAuB;AAChF,OAAO,KAAKC,IAAI,MAAM,2BAA2B;AACjD,OAAO,KAAKC,OAAO,MAAM,8BAA8B;AACvD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;
|
|
1
|
+
{"version":3,"file":"bin.js","names":["NodeContext","NodeFileSystem","NodeRuntime","Ansi","AnsiDoc","Effect","Logger","LogLevel","run","AnsiDocLogger","runnable","suspend","process","argv","pipe","provide","layer","catchAllDefect","defect","gen","name","logError","cat","hardLine","text","annotate","red","die","replace","defaultLogger","withMinimumLogLevel","Debug","orDie","runMain","disableErrorReporting","env","NODE_ENV","disablePrettyLogger"],"sources":["../../src/cli/bin.ts"],"sourcesContent":[null],"mappings":";AAEA,SAASA,WAAW,EAAEC,cAAc,EAAEC,WAAW,QAAQ,uBAAuB;AAChF,OAAO,KAAKC,IAAI,MAAM,2BAA2B;AACjD,OAAO,KAAKC,OAAO,MAAM,8BAA8B;AACvD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,GAAG,QAAQ,UAAU;AAC9B,SAASC,aAAa,QAAQ,aAAa;AAE3C,MAAMC,QAAQ,gBAAGL,MAAM,CAACM,OAAO,CAAC,MAAMH,GAAG,CAACI,OAAO,CAACC,IAAI,CAAC,CAAC,CAACC,IAAI,cAC3DT,MAAM,CAACU,OAAO,CAACd,cAAc,CAACe,KAAK,CAAC,eACpCX,MAAM,CAACU,OAAO,CAACf,WAAW,CAACgB,KAAK,CAAC,CAClC;AAEDN,QAAQ,CAACI,IAAI,CACXT,MAAM,CAACY,cAAc,CAAEC,MAAM,IAC3Bb,MAAM,CAACc,GAAG,CAAC,aAAS;EAClB,IAAID,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAIA,MAAM,IAAIA,MAAM,CAACE,IAAI,KAAK,eAAe,EAAE;IAC/F,OAAO,OAAOf,MAAM,CAACgB,QAAQ,CAC3BjB,OAAO,CAACkB,GAAG,CAAClB,OAAO,CAACmB,QAAQ,EAAEnB,OAAO,CAACoB,IAAI,CAAC,YAAY,CAAC,CAACV,IAAI,CAACV,OAAO,CAACqB,QAAQ,CAACtB,IAAI,CAACuB,GAAG,CAAC,CAAC,CAAC,CAC3F;EACH;EACA,OAAOrB,MAAM,CAACsB,GAAG,CAACT,MAAM,CAAC;AAC3B,CAAC,CAAC,CACH,EACDb,MAAM,CAACU,OAAO,CAACT,MAAM,CAACsB,OAAO,CAACtB,MAAM,CAACuB,aAAa,EAAEpB,aAAa,CAAC,CAAC,EACnEH,MAAM,CAACwB,mBAAmB,CAACvB,QAAQ,CAACwB,KAAK,CAAC,EAC1C1B,MAAM,CAAC2B,KAAK,EACZ9B,WAAW,CAAC+B,OAAO,CAAC;EAAEC,qBAAqB,EAAEtB,OAAO,CAACuB,GAAG,CAACC,QAAQ,KAAK,MAAM;EAAEC,mBAAmB,EAAE;AAAI,CAAE,CAAC,CAC3G","ignoreList":[]}
|
package/dist/cli/bun.js
CHANGED
|
File without changes
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
export declare const TypesyncHypergraphSchemaStatus: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
3
|
+
export type TypesyncHypergraphSchemaStatus = typeof TypesyncHypergraphSchemaStatus.Type;
|
|
4
|
+
export declare const TypesyncHypergraphSchemaTypeProperty: Schema.extend<Schema.Union<[Schema.Struct<{
|
|
5
|
+
dataType: Schema.Literal<["String", "Number", "Boolean", "Date", "Point"]>;
|
|
6
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
7
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
8
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
9
|
+
}>, Schema.Struct<{
|
|
10
|
+
dataType: Schema.refine<`Relation(${string})`, Schema.Schema<string, string, never>>;
|
|
11
|
+
relationType: Schema.refine<string, typeof Schema.Trimmed>;
|
|
12
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
13
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
14
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
15
|
+
}>]>, Schema.Struct<{
|
|
16
|
+
status: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
17
|
+
}>>;
|
|
18
|
+
export type TypesyncHypergraphSchemaTypeProperty = typeof TypesyncHypergraphSchemaTypeProperty.Type;
|
|
19
|
+
declare const TypesyncHypergraphSchemaType_base: Schema.Class<TypesyncHypergraphSchemaType, {
|
|
20
|
+
status: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
21
|
+
properties: Schema.filter<Schema.filter<Schema.Array$<Schema.extend<Schema.Union<[Schema.Struct<{
|
|
22
|
+
dataType: Schema.Literal<["String", "Number", "Boolean", "Date", "Point"]>;
|
|
23
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
24
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
25
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
26
|
+
}>, Schema.Struct<{
|
|
27
|
+
dataType: Schema.refine<`Relation(${string})`, Schema.Schema<string, string, never>>;
|
|
28
|
+
relationType: Schema.refine<string, typeof Schema.Trimmed>;
|
|
29
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
30
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
31
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
32
|
+
}>]>, Schema.Struct<{
|
|
33
|
+
status: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
34
|
+
}>>>>>;
|
|
35
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
36
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
37
|
+
}, Schema.Struct.Encoded<{
|
|
38
|
+
status: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
39
|
+
properties: Schema.filter<Schema.filter<Schema.Array$<Schema.extend<Schema.Union<[Schema.Struct<{
|
|
40
|
+
dataType: Schema.Literal<["String", "Number", "Boolean", "Date", "Point"]>;
|
|
41
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
42
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
43
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
44
|
+
}>, Schema.Struct<{
|
|
45
|
+
dataType: Schema.refine<`Relation(${string})`, Schema.Schema<string, string, never>>;
|
|
46
|
+
relationType: Schema.refine<string, typeof Schema.Trimmed>;
|
|
47
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
48
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
49
|
+
optional: Schema.optional<Schema.NullishOr<typeof Schema.Boolean>>;
|
|
50
|
+
}>]>, Schema.Struct<{
|
|
51
|
+
status: Schema.NullOr<Schema.Literal<["published", "synced", "published_not_synced"]>>;
|
|
52
|
+
}>>>>>;
|
|
53
|
+
name: typeof Schema.NonEmptyTrimmedString;
|
|
54
|
+
knowledgeGraphId: Schema.NullOr<typeof Schema.UUID>;
|
|
55
|
+
}>, never, {
|
|
56
|
+
readonly name: string;
|
|
57
|
+
} & {
|
|
58
|
+
readonly knowledgeGraphId: string | null;
|
|
59
|
+
} & {
|
|
60
|
+
readonly properties: readonly (({
|
|
61
|
+
readonly name: string;
|
|
62
|
+
readonly knowledgeGraphId: string | null;
|
|
63
|
+
readonly optional?: boolean | null | undefined;
|
|
64
|
+
readonly dataType: `Relation(${string})`;
|
|
65
|
+
readonly relationType: string;
|
|
66
|
+
} | {
|
|
67
|
+
readonly name: string;
|
|
68
|
+
readonly knowledgeGraphId: string | null;
|
|
69
|
+
readonly optional?: boolean | null | undefined;
|
|
70
|
+
readonly dataType: "String" | "Number" | "Boolean" | "Date" | "Point";
|
|
71
|
+
}) & {
|
|
72
|
+
readonly status: "published" | "synced" | "published_not_synced" | null;
|
|
73
|
+
})[];
|
|
74
|
+
} & {
|
|
75
|
+
readonly status: "published" | "synced" | "published_not_synced" | null;
|
|
76
|
+
}, {}, {}>;
|
|
77
|
+
export declare class TypesyncHypergraphSchemaType extends TypesyncHypergraphSchemaType_base {
|
|
78
|
+
}
|
|
79
|
+
declare const TypesyncHypergraphSchema_base: Schema.Class<TypesyncHypergraphSchema, {
|
|
80
|
+
types: Schema.filter<Schema.filter<Schema.filter<Schema.Array$<typeof TypesyncHypergraphSchemaType>>>>;
|
|
81
|
+
}, Schema.Struct.Encoded<{
|
|
82
|
+
types: Schema.filter<Schema.filter<Schema.filter<Schema.Array$<typeof TypesyncHypergraphSchemaType>>>>;
|
|
83
|
+
}>, never, {
|
|
84
|
+
readonly types: readonly TypesyncHypergraphSchemaType[];
|
|
85
|
+
}, {}, {}>;
|
|
86
|
+
export declare class TypesyncHypergraphSchema extends TypesyncHypergraphSchema_base {
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Extending the hypergraph [Mapping definition](../../mapping/Mapping.ts) to make it an effect Schema instance.
|
|
90
|
+
* Allows decoding as well as passing in the api request payload
|
|
91
|
+
*/
|
|
92
|
+
export declare const TypesyncHypergraphMapping: Schema.Record$<typeof Schema.NonEmptyTrimmedString, Schema.Struct<{
|
|
93
|
+
typeIds: Schema.filter<Schema.Array$<typeof Schema.UUID>>;
|
|
94
|
+
properties: Schema.optional<Schema.UndefinedOr<Schema.Record$<typeof Schema.NonEmptyTrimmedString, typeof Schema.UUID>>>;
|
|
95
|
+
relations: Schema.optional<Schema.UndefinedOr<Schema.Record$<typeof Schema.NonEmptyTrimmedString, typeof Schema.UUID>>>;
|
|
96
|
+
}>>;
|
|
97
|
+
export type TypesyncHypergraphMapping = typeof TypesyncHypergraphMapping.Type;
|
|
98
|
+
export {};
|
|
99
|
+
//# sourceMappingURL=Model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../../src/cli/services/Model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,eAAO,MAAM,8BAA8B,gFAS1C,CAAC;AACF,MAAM,MAAM,8BAA8B,GAAG,OAAO,8BAA8B,CAAC,IAAI,CAAC;AAExF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;GAShD,CAAC;AACF,MAAM,MAAM,oCAAoC,GAAG,OAAO,oCAAoC,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACpG,qBAAa,4BAA6B,SAAQ,iCAahD;CAAG;;;;;;;;AACL,qBAAa,wBAAyB,SAAQ,6BAgB5C;CAAG;AAEL;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;GAqBpC,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAC,IAAI,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Schema } from 'effect';
|
|
2
|
+
import * as Mapping from '../../mapping/Mapping.js';
|
|
3
|
+
import * as Utils from '../../mapping/Utils.js';
|
|
4
|
+
export const TypesyncHypergraphSchemaStatus = /*#__PURE__*/Schema.NullOr(/*#__PURE__*/Schema.Literal(
|
|
5
|
+
// the type/property has been synced to the schema file and published to the Knowledge Graph
|
|
6
|
+
'published',
|
|
7
|
+
// the type/property has been synced to the schema file, but requires publishing to the Knowledge Graph
|
|
8
|
+
'synced',
|
|
9
|
+
// the type/property exists in the Knowledge Graph, has been added to the users schema through the Typesync UI, but requires syncing to the schema file
|
|
10
|
+
'published_not_synced'));
|
|
11
|
+
export const TypesyncHypergraphSchemaTypeProperty = /*#__PURE__*/Schema.Union(Mapping.SchemaTypePropertyPrimitive, Mapping.SchemaTypePropertyRelation).pipe(/*#__PURE__*/Schema.extend(/*#__PURE__*/Schema.Struct({
|
|
12
|
+
status: TypesyncHypergraphSchemaStatus
|
|
13
|
+
})));
|
|
14
|
+
export class TypesyncHypergraphSchemaType extends /*#__PURE__*/Schema.Class('/Hypergraph/cli/models/TypesyncHypergraphSchemaType')({
|
|
15
|
+
... /*#__PURE__*/Mapping.SchemaType.omit('properties').fields,
|
|
16
|
+
status: TypesyncHypergraphSchemaStatus,
|
|
17
|
+
properties: /*#__PURE__*/Schema.Array(TypesyncHypergraphSchemaTypeProperty).pipe(/*#__PURE__*/Schema.minItems(1), /*#__PURE__*/Schema.filter(Utils.namesAreUnique, {
|
|
18
|
+
identifier: 'DuplicatePropertyNames',
|
|
19
|
+
jsonSchema: {},
|
|
20
|
+
description: 'The property.name must be unique across all properties in the type'
|
|
21
|
+
}))
|
|
22
|
+
}) {}
|
|
23
|
+
export class TypesyncHypergraphSchema extends /*#__PURE__*/Schema.Class('/Hypergraph/cli/models/TypesyncHypergraphSchema')({
|
|
24
|
+
types: /*#__PURE__*/Schema.Array(TypesyncHypergraphSchemaType).pipe(/*#__PURE__*/Schema.minItems(1), /*#__PURE__*/Schema.filter(Utils.namesAreUnique, {
|
|
25
|
+
identifier: 'DuplicateTypeNames',
|
|
26
|
+
jsonSchema: {},
|
|
27
|
+
description: 'The type.name must be unique across all types in the schema'
|
|
28
|
+
}), /*#__PURE__*/Schema.filter(Mapping.allRelationPropertyTypesExist, {
|
|
29
|
+
identifier: 'AllRelationTypesExist',
|
|
30
|
+
jsonSchema: {},
|
|
31
|
+
description: 'Each type property of dataType RELATION must have a type of the same name in the schema'
|
|
32
|
+
}))
|
|
33
|
+
}) {}
|
|
34
|
+
/**
|
|
35
|
+
* Extending the hypergraph [Mapping definition](../../mapping/Mapping.ts) to make it an effect Schema instance.
|
|
36
|
+
* Allows decoding as well as passing in the api request payload
|
|
37
|
+
*/
|
|
38
|
+
export const TypesyncHypergraphMapping = /*#__PURE__*/Schema.Record({
|
|
39
|
+
key: Schema.NonEmptyTrimmedString,
|
|
40
|
+
value: /*#__PURE__*/Schema.Struct({
|
|
41
|
+
typeIds: /*#__PURE__*/Schema.Array(Schema.UUID).pipe(/*#__PURE__*/Schema.minItems(1)),
|
|
42
|
+
properties: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.UndefinedOr(/*#__PURE__*/Schema.Record({
|
|
43
|
+
key: Schema.NonEmptyTrimmedString,
|
|
44
|
+
value: Schema.UUID
|
|
45
|
+
}))),
|
|
46
|
+
relations: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.UndefinedOr(/*#__PURE__*/Schema.Record({
|
|
47
|
+
key: Schema.NonEmptyTrimmedString,
|
|
48
|
+
value: Schema.UUID
|
|
49
|
+
})))
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=Model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Model.js","names":["Schema","Mapping","Utils","TypesyncHypergraphSchemaStatus","NullOr","Literal","TypesyncHypergraphSchemaTypeProperty","Union","SchemaTypePropertyPrimitive","SchemaTypePropertyRelation","pipe","extend","Struct","status","TypesyncHypergraphSchemaType","Class","SchemaType","omit","fields","properties","Array","minItems","filter","namesAreUnique","identifier","jsonSchema","description","TypesyncHypergraphSchema","types","allRelationPropertyTypesExist","TypesyncHypergraphMapping","Record","key","NonEmptyTrimmedString","value","typeIds","UUID","optional","UndefinedOr","relations"],"sources":["../../../src/cli/services/Model.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAM,QAAQ,QAAQ;AAE/B,OAAO,KAAKC,OAAO,MAAM,0BAA0B;AACnD,OAAO,KAAKC,KAAK,MAAM,wBAAwB;AAE/C,OAAO,MAAMC,8BAA8B,gBAAGH,MAAM,CAACI,MAAM,cACzDJ,MAAM,CAACK,OAAO;AACZ;AACA,WAAW;AACX;AACA,QAAQ;AACR;AACA,sBAAsB,CACvB,CACF;AAGD,OAAO,MAAMC,oCAAoC,gBAAGN,MAAM,CAACO,KAAK,CAC9DN,OAAO,CAACO,2BAA2B,EACnCP,OAAO,CAACQ,0BAA0B,CACnC,CAACC,IAAI,cACJV,MAAM,CAACW,MAAM,cACXX,MAAM,CAACY,MAAM,CAAC;EACZC,MAAM,EAAEV;CACT,CAAC,CACH,CACF;AAED,OAAM,MAAOW,4BAA6B,sBAAQd,MAAM,CAACe,KAAK,CAC5D,qDAAqD,CACtD,CAAC;EACA,GAAG,cAAAd,OAAO,CAACe,UAAU,CAACC,IAAI,CAAC,YAAY,CAAC,CAACC,MAAM;EAC/CL,MAAM,EAAEV,8BAA8B;EACtCgB,UAAU,eAAEnB,MAAM,CAACoB,KAAK,CAACd,oCAAoC,CAAC,CAACI,IAAI,cACjEV,MAAM,CAACqB,QAAQ,CAAC,CAAC,CAAC,eAClBrB,MAAM,CAACsB,MAAM,CAACpB,KAAK,CAACqB,cAAc,EAAE;IAClCC,UAAU,EAAE,wBAAwB;IACpCC,UAAU,EAAE,EAAE;IACdC,WAAW,EAAE;GACd,CAAC;CAEL,CAAC;AACF,OAAM,MAAOC,wBAAyB,sBAAQ3B,MAAM,CAACe,KAAK,CACxD,iDAAiD,CAClD,CAAC;EACAa,KAAK,eAAE5B,MAAM,CAACoB,KAAK,CAACN,4BAA4B,CAAC,CAACJ,IAAI,cACpDV,MAAM,CAACqB,QAAQ,CAAC,CAAC,CAAC,eAClBrB,MAAM,CAACsB,MAAM,CAACpB,KAAK,CAACqB,cAAc,EAAE;IAClCC,UAAU,EAAE,oBAAoB;IAChCC,UAAU,EAAE,EAAE;IACdC,WAAW,EAAE;GACd,CAAC,eACF1B,MAAM,CAACsB,MAAM,CAACrB,OAAO,CAAC4B,6BAA6B,EAAE;IACnDL,UAAU,EAAE,uBAAuB;IACnCC,UAAU,EAAE,EAAE;IACdC,WAAW,EAAE;GACd,CAAC;CAEL,CAAC;AAEF;;;;AAIA,OAAO,MAAMI,yBAAyB,gBAAG9B,MAAM,CAAC+B,MAAM,CAAC;EACrDC,GAAG,EAAEhC,MAAM,CAACiC,qBAAqB;EACjCC,KAAK,eAAElC,MAAM,CAACY,MAAM,CAAC;IACnBuB,OAAO,eAAEnC,MAAM,CAACoB,KAAK,CAACpB,MAAM,CAACoC,IAAI,CAAC,CAAC1B,IAAI,cAACV,MAAM,CAACqB,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3DF,UAAU,eAAEnB,MAAM,CAACqC,QAAQ,cACzBrC,MAAM,CAACsC,WAAW,cAChBtC,MAAM,CAAC+B,MAAM,CAAC;MACZC,GAAG,EAAEhC,MAAM,CAACiC,qBAAqB;MACjCC,KAAK,EAAElC,MAAM,CAACoC;KACf,CAAC,CACH,CACF;IACDG,SAAS,eAAEvC,MAAM,CAACqC,QAAQ,cACxBrC,MAAM,CAACsC,WAAW,cAChBtC,MAAM,CAAC+B,MAAM,CAAC;MACZC,GAAG,EAAEhC,MAAM,CAACiC,qBAAqB;MACjCC,KAAK,EAAElC,MAAM,CAACoC;KACf,CAAC,CACH;GAEJ;CACF,CAAC","ignoreList":[]}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { FileSystem, Path } from '@effect/platform';
|
|
1
|
+
import { FileSystem, KeyValueStore, Path } from '@effect/platform';
|
|
2
2
|
import { Cause, Effect, Stream } from 'effect';
|
|
3
|
+
import { type TypesyncHypergraphMapping, TypesyncHypergraphSchema } from './Model.js';
|
|
3
4
|
declare const TypesyncSchemaStreamBuilder_base: Effect.Service.Class<TypesyncSchemaStreamBuilder, "/Hypergraph/cli/services/TypesyncSchemaStreamBuilder", {
|
|
4
|
-
readonly dependencies: readonly [import("effect/Layer").Layer<FileSystem.FileSystem, never, never>];
|
|
5
|
+
readonly dependencies: readonly [import("effect/Layer").Layer<FileSystem.FileSystem, never, never>, import("effect/Layer").Layer<KeyValueStore.KeyValueStore, never, never>];
|
|
5
6
|
readonly effect: Effect.Effect<{
|
|
6
|
-
readonly hypergraphSchemaStream: (cwd?: string) => Effect.Effect<Stream.Stream<Uint8Array<ArrayBufferLike>, never, never>,
|
|
7
|
-
|
|
7
|
+
readonly hypergraphSchemaStream: (cwd?: string) => Effect.Effect<Stream.Stream<Uint8Array<ArrayBufferLike>, never, never>, import("@effect/platform/Error").PlatformError, never>;
|
|
8
|
+
readonly syncSchema: (schema: TypesyncHypergraphSchema) => Effect.Effect<TypesyncHypergraphSchema, import("@effect/platform/Error").PlatformError, never>;
|
|
9
|
+
readonly syncMapping: (schema: TypesyncHypergraphSchema, mapping: TypesyncHypergraphMapping) => Effect.Effect<TypesyncHypergraphSchema, import("@effect/platform/Error").PlatformError, never>;
|
|
10
|
+
}, never, FileSystem.FileSystem | KeyValueStore.KeyValueStore | Path.Path>;
|
|
8
11
|
}>;
|
|
9
12
|
export declare class TypesyncSchemaStreamBuilder extends TypesyncSchemaStreamBuilder_base {
|
|
10
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Typesync.d.ts","sourceRoot":"","sources":["../../../src/cli/services/Typesync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Typesync.d.ts","sourceRoot":"","sources":["../../../src/cli/services/Typesync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGnE,OAAO,EAAE,KAAK,EAAQ,MAAM,EAAgC,MAAM,EAAE,MAAM,QAAQ,CAAC;AAInF,OAAO,EACL,KAAK,yBAAyB,EAC9B,wBAAwB,EAGzB,MAAM,YAAY,CAAC;;;;;sCA+Lc,wBAAwB;uCA8CvB,wBAAwB,WAAW,yBAAyB;;;AA1O/F,qBAAa,2BAA4B,SAAQ,gCAuShD;CAAG;AACJ,eAAO,MAAM,KAAK,6EAAsC,CAAC;;;;AAEzD,qBAAa,kBAAmB,SAAQ,wBAA8D;IACpG,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;CAAG"}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
|
-
import { FileSystem, Path } from '@effect/platform';
|
|
1
|
+
import { FileSystem, KeyValueStore, Path } from '@effect/platform';
|
|
2
2
|
import { NodeFileSystem } from '@effect/platform-node';
|
|
3
3
|
import { AnsiDoc } from '@effect/printer-ansi';
|
|
4
4
|
import { Cause, Data, Effect, Array as EffectArray, Option, Stream } from 'effect';
|
|
5
|
-
import {
|
|
5
|
+
import { propertyIsRelation } from '../../mapping/Mapping.js';
|
|
6
|
+
import { toCamelCase, toPascalCase } from '../../mapping/Utils.js';
|
|
7
|
+
import { TypesyncHypergraphSchema, TypesyncHypergraphSchemaType } from './Model.js';
|
|
8
|
+
import { buildMappingFile, buildSchemaFile, parseHypergraphMapping, parseSchema } from './Utils.js';
|
|
6
9
|
export class TypesyncSchemaStreamBuilder extends /*#__PURE__*/Effect.Service()('/Hypergraph/cli/services/TypesyncSchemaStreamBuilder', {
|
|
7
|
-
dependencies: [NodeFileSystem.layer],
|
|
10
|
+
dependencies: [NodeFileSystem.layer, KeyValueStore.layerMemory],
|
|
8
11
|
effect: /*#__PURE__*/Effect.gen(function* () {
|
|
9
12
|
const fs = yield* FileSystem.FileSystem;
|
|
10
13
|
const path = yield* Path.Path;
|
|
14
|
+
const kv = yield* KeyValueStore.KeyValueStore;
|
|
11
15
|
const encoder = new TextEncoder();
|
|
16
|
+
const SCHEMA_FILE_PATH_STORAGE_KEY = 'SCHEMA_FILE_PATH';
|
|
17
|
+
const MAPPING_FILE_PATH_STORAGE_KEY = 'MAPPING_FILE_PATH';
|
|
12
18
|
const schemaCandidates = (cwd = '.') => EffectArray.make(path.resolve(cwd, 'schema.ts'), path.resolve(cwd, 'src/schema.ts'), path.resolve(cwd, 'app/schema.ts'), path.resolve(cwd, 'src/app/schema.ts'));
|
|
13
19
|
const mappingCandidates = (cwd = '.') => EffectArray.make(path.resolve(cwd, 'mapping.ts'), path.resolve(cwd, 'src/mapping.ts'), path.resolve(cwd, 'app/mapping.ts'), path.resolve(cwd, 'src/app/mapping.ts'));
|
|
14
20
|
const jiti = yield* Effect.tryPromise({
|
|
@@ -117,18 +123,114 @@ export class TypesyncSchemaStreamBuilder extends /*#__PURE__*/Effect.Service()('
|
|
|
117
123
|
const schemaFilePath = yield* findHypergraphSchema(schemaFileCandidates);
|
|
118
124
|
if (Option.isNone(schemaFilePath)) {
|
|
119
125
|
yield* Effect.logDebug(AnsiDoc.text('No Hypergraph schema file found. Searched:'), AnsiDoc.cats(schemaFileCandidates.map(candidate => AnsiDoc.text(candidate))));
|
|
126
|
+
} else if (Option.isSome(schemaFilePath)) {
|
|
127
|
+
// store schema file location in KeyValueStore for reference
|
|
128
|
+
yield* kv.set(SCHEMA_FILE_PATH_STORAGE_KEY, schemaFilePath.value);
|
|
120
129
|
}
|
|
121
130
|
// Fetch the Mapping definition from any mapping.ts in the directory.
|
|
122
131
|
// If exists, use it to get the knowledgeGraphId for each type/property in the parsed schema
|
|
123
132
|
const mappingFilePath = yield* findHypergraphSchema(mappingCandidates(cwd));
|
|
133
|
+
if (Option.isSome(mappingFilePath)) {
|
|
134
|
+
// store mapping file location in KeyValueStore for reference
|
|
135
|
+
yield* kv.set(MAPPING_FILE_PATH_STORAGE_KEY, mappingFilePath.value);
|
|
136
|
+
}
|
|
124
137
|
return currentSchemaStream(schemaFilePath, mappingFilePath).pipe(Stream.concat(watchSchemaStream(schemaFilePath, mappingFilePath)), Stream.map(stream => {
|
|
125
138
|
const jsonData = JSON.stringify(stream);
|
|
126
139
|
const sseData = `data: ${jsonData}\n\n`;
|
|
127
140
|
return encoder.encode(sseData);
|
|
128
141
|
}));
|
|
129
142
|
});
|
|
143
|
+
/**
|
|
144
|
+
* Write the user-submitted Hypergraph schema to the schema.ts file in the users repo.
|
|
145
|
+
*
|
|
146
|
+
* @param schema the user-submitted Hypergraph schema from the Typesync UI
|
|
147
|
+
* @returns the updated Hypergraph schema
|
|
148
|
+
*/
|
|
149
|
+
const syncSchema = schema => Effect.gen(function* () {
|
|
150
|
+
const cwd = process.cwd();
|
|
151
|
+
const schemaFilePath = yield* kv.get(SCHEMA_FILE_PATH_STORAGE_KEY).pipe(Effect.map(Option.getOrElse(() => path.join(cwd, 'src', 'schema.ts'))));
|
|
152
|
+
// update schema file with updated content from the typesync studio UI
|
|
153
|
+
yield* fs.writeFileString(schemaFilePath, buildSchemaFile(schema));
|
|
154
|
+
return TypesyncHypergraphSchema.make({
|
|
155
|
+
types: EffectArray.map(schema.types, type => TypesyncHypergraphSchemaType.make({
|
|
156
|
+
name: type.name,
|
|
157
|
+
knowledgeGraphId: type.knowledgeGraphId,
|
|
158
|
+
status: type.knowledgeGraphId != null ? 'published' : 'synced',
|
|
159
|
+
properties: EffectArray.map(type.properties, prop => {
|
|
160
|
+
if (propertyIsRelation(prop)) {
|
|
161
|
+
return {
|
|
162
|
+
name: prop.name,
|
|
163
|
+
knowledgeGraphId: prop.knowledgeGraphId,
|
|
164
|
+
dataType: prop.dataType,
|
|
165
|
+
relationType: prop.relationType,
|
|
166
|
+
status: prop.knowledgeGraphId != null ? 'published' : 'synced'
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
return {
|
|
170
|
+
name: prop.name,
|
|
171
|
+
knowledgeGraphId: prop.knowledgeGraphId,
|
|
172
|
+
dataType: prop.dataType,
|
|
173
|
+
status: prop.knowledgeGraphId != null ? 'published' : 'synced'
|
|
174
|
+
};
|
|
175
|
+
})
|
|
176
|
+
}))
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
/**
|
|
180
|
+
* Update the mapping.ts file in the users repo with the up-to-date, published to the Knowledge Graph, mapping
|
|
181
|
+
*
|
|
182
|
+
* @param schema the Hypergraph schema
|
|
183
|
+
* @param mapping the up-to-date Hypergraph Mapping with all types/properties having Id
|
|
184
|
+
* @returns the updated schema with connected knowledgeGraphIds
|
|
185
|
+
*/
|
|
186
|
+
const syncMapping = (schema, mapping) => Effect.gen(function* () {
|
|
187
|
+
const cwd = process.cwd();
|
|
188
|
+
const mappingFilePath = yield* kv.get(MAPPING_FILE_PATH_STORAGE_KEY).pipe(Effect.map(Option.getOrElse(() => path.join(cwd, 'src', 'mapping.ts'))));
|
|
189
|
+
// update mapping file with updated content from the typesync studio UI
|
|
190
|
+
yield* fs.writeFileString(mappingFilePath, buildMappingFile(mapping));
|
|
191
|
+
// update Schema to update with generated GRC-20 Ids for types/properties
|
|
192
|
+
return TypesyncHypergraphSchema.make({
|
|
193
|
+
types: EffectArray.map(schema.types, type => {
|
|
194
|
+
const mappingEntry = mapping[toPascalCase(type.name)];
|
|
195
|
+
let knowledgeGraphId = type.knowledgeGraphId;
|
|
196
|
+
if (!knowledgeGraphId) {
|
|
197
|
+
const typeKnowledgeGraphId = mappingEntry?.typeIds?.[0] ? mappingEntry.typeIds[0] : null;
|
|
198
|
+
if (typeKnowledgeGraphId) {
|
|
199
|
+
knowledgeGraphId = typeKnowledgeGraphId;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
return TypesyncHypergraphSchemaType.make({
|
|
203
|
+
name: type.name,
|
|
204
|
+
knowledgeGraphId,
|
|
205
|
+
status: knowledgeGraphId != null ? 'published' : 'synced',
|
|
206
|
+
properties: EffectArray.map(type.properties, prop => {
|
|
207
|
+
const propName = toCamelCase(prop.name);
|
|
208
|
+
if (propertyIsRelation(prop)) {
|
|
209
|
+
const relKnowledgeGraphId = prop.knowledgeGraphId || mappingEntry?.relations?.[propName] || null;
|
|
210
|
+
return {
|
|
211
|
+
name: prop.name,
|
|
212
|
+
knowledgeGraphId: relKnowledgeGraphId,
|
|
213
|
+
dataType: prop.dataType,
|
|
214
|
+
relationType: prop.relationType,
|
|
215
|
+
status: relKnowledgeGraphId != null ? 'published' : 'synced'
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
const propKnowledgeGraphId = prop.knowledgeGraphId || mappingEntry?.properties?.[propName] || null;
|
|
219
|
+
return {
|
|
220
|
+
name: prop.name,
|
|
221
|
+
knowledgeGraphId: propKnowledgeGraphId,
|
|
222
|
+
dataType: prop.dataType,
|
|
223
|
+
status: propKnowledgeGraphId != null ? 'published' : 'synced'
|
|
224
|
+
};
|
|
225
|
+
})
|
|
226
|
+
});
|
|
227
|
+
})
|
|
228
|
+
});
|
|
229
|
+
});
|
|
130
230
|
return {
|
|
131
|
-
hypergraphSchemaStream
|
|
231
|
+
hypergraphSchemaStream,
|
|
232
|
+
syncSchema,
|
|
233
|
+
syncMapping
|
|
132
234
|
};
|
|
133
235
|
})
|
|
134
236
|
}) {}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Typesync.js","names":["FileSystem","Path","NodeFileSystem","AnsiDoc","Cause","Data","Effect","Array","EffectArray","Option","Stream","parseHypergraphMapping","parseSchema","TypesyncSchemaStreamBuilder","Service","dependencies","layer","effect","gen","fs","path","encoder","TextEncoder","schemaCandidates","cwd","make","resolve","mappingCandidates","jiti","tryPromise","try","createJiti","import","meta","url","moduleCache","tryNative","catch","cause","MappingLoaderError","pipe","cached","loadMapping","fnUntraced","mappingFilePath","tryMapPromise","instance","map","mapError","message","tapErrorCause","logWarning","cats","text","pretty","orElseSucceed","findHypergraphSchema","candidates","findFirst","_","exists","currentSchemaStream","schemaFilePath","fromEffect","schema","match","onNone","succeed","onSome","readFileString","mapping","logError","types","watchSchemaStream","schemaWatch","empty","watch","mappingWatch","mergeAll","concurrency","buffer","capacity","strategy","mapEffect","hypergraphSchemaStream","schemaFileCandidates","isNone","logDebug","candidate","concat","stream","jsonData","JSON","stringify","sseData","encode","Default","TaggedError"],"sources":["../../../src/cli/services/Typesync.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Typesync.js","names":["FileSystem","KeyValueStore","Path","NodeFileSystem","AnsiDoc","Cause","Data","Effect","Array","EffectArray","Option","Stream","propertyIsRelation","toCamelCase","toPascalCase","TypesyncHypergraphSchema","TypesyncHypergraphSchemaType","buildMappingFile","buildSchemaFile","parseHypergraphMapping","parseSchema","TypesyncSchemaStreamBuilder","Service","dependencies","layer","layerMemory","effect","gen","fs","path","kv","encoder","TextEncoder","SCHEMA_FILE_PATH_STORAGE_KEY","MAPPING_FILE_PATH_STORAGE_KEY","schemaCandidates","cwd","make","resolve","mappingCandidates","jiti","tryPromise","try","createJiti","import","meta","url","moduleCache","tryNative","catch","cause","MappingLoaderError","pipe","cached","loadMapping","fnUntraced","mappingFilePath","tryMapPromise","instance","map","mapError","message","tapErrorCause","logWarning","cats","text","pretty","orElseSucceed","findHypergraphSchema","candidates","findFirst","_","exists","currentSchemaStream","schemaFilePath","fromEffect","schema","match","onNone","succeed","onSome","readFileString","mapping","logError","types","watchSchemaStream","schemaWatch","empty","watch","mappingWatch","mergeAll","concurrency","buffer","capacity","strategy","mapEffect","hypergraphSchemaStream","schemaFileCandidates","isNone","logDebug","candidate","isSome","set","value","concat","stream","jsonData","JSON","stringify","sseData","encode","syncSchema","process","get","getOrElse","join","writeFileString","type","name","knowledgeGraphId","status","properties","prop","dataType","relationType","syncMapping","mappingEntry","typeKnowledgeGraphId","typeIds","propName","relKnowledgeGraphId","relations","propKnowledgeGraphId","Default","TaggedError"],"sources":["../../../src/cli/services/Typesync.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import * as Mapping from '../../mapping/Mapping.js';
|
|
2
|
+
import type * as Model from './Model.js';
|
|
1
3
|
declare const SchemaParserFailure_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
|
|
2
4
|
readonly _tag: "/Hypergraph/cli/errors/SchemaParserFailure";
|
|
3
5
|
} & Readonly<A>;
|
|
@@ -6,5 +8,84 @@ export declare class SchemaParserFailure extends SchemaParserFailure_base<{
|
|
|
6
8
|
readonly cause: unknown;
|
|
7
9
|
}> {
|
|
8
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Builds a string of the schema.ts file contents after parsing the schema into the correct format.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
*
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const schema = Model.TypesyncHypergraphSchema.make({
|
|
18
|
+
* types: [
|
|
19
|
+
* {
|
|
20
|
+
* name: "User",
|
|
21
|
+
* knowledgeGraphId: null,
|
|
22
|
+
* status: null,
|
|
23
|
+
* properties: [
|
|
24
|
+
* {
|
|
25
|
+
* name: "name",
|
|
26
|
+
* dataType: "String",
|
|
27
|
+
* knowledgeGraphId: null,
|
|
28
|
+
* optional: null,
|
|
29
|
+
* status: null
|
|
30
|
+
* }
|
|
31
|
+
* ]
|
|
32
|
+
* }
|
|
33
|
+
* ]
|
|
34
|
+
* })
|
|
35
|
+
* const schemaFile = buildSchemaFile(schema)
|
|
36
|
+
*
|
|
37
|
+
* expect(schemaFile).toEqual(`
|
|
38
|
+
* import { Entity, Type } from '@graphprotocol/hypergraph';
|
|
39
|
+
*
|
|
40
|
+
* export class User extends Entity.Class<User>('User')({
|
|
41
|
+
* name: Type.String
|
|
42
|
+
* }) {}
|
|
43
|
+
* `)
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export declare function buildSchemaFile(schema: Model.TypesyncHypergraphSchema): string;
|
|
47
|
+
export declare function buildMappingFile(mapping: Mapping.Mapping | Model.TypesyncHypergraphMapping): string;
|
|
48
|
+
/**
|
|
49
|
+
* Builds a string of the mapping.ts file contents after parsing the schema into the correct mapping format.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
*
|
|
53
|
+
* ```typescript
|
|
54
|
+
* const schema = Model.TypesyncHypergraphSchema.make({
|
|
55
|
+
* types: [
|
|
56
|
+
* {
|
|
57
|
+
* name: "User",
|
|
58
|
+
* knowledgeGraphId: "7f9562d4-034d-4385-bf5c-f02cdebba47a",
|
|
59
|
+
* status: null,
|
|
60
|
+
* properties: [
|
|
61
|
+
* {
|
|
62
|
+
* name: "name",
|
|
63
|
+
* dataType: "String",
|
|
64
|
+
* knowledgeGraphId: "a126ca53-0c8e-48d5-b888-82c734c38935",
|
|
65
|
+
* optional: null,
|
|
66
|
+
* status: null
|
|
67
|
+
* }
|
|
68
|
+
* ]
|
|
69
|
+
* }
|
|
70
|
+
* ]
|
|
71
|
+
* })
|
|
72
|
+
* const mappingFile = buildMappingFile(schema)
|
|
73
|
+
*
|
|
74
|
+
* expect(mappingFile).toEqual(`
|
|
75
|
+
* import type { Mapping } from '@graphprotocol/hypergraph/mapping';
|
|
76
|
+
* import { Id } from '@graphprotocol/hypergraph';
|
|
77
|
+
*
|
|
78
|
+
* export const mapping: Mapping = {
|
|
79
|
+
* User: {
|
|
80
|
+
* typeIds: [Id('7f9562d4-034d-4385-bf5c-f02cdebba47a')],
|
|
81
|
+
* properties: {
|
|
82
|
+
* name: Id('a126ca53-0c8e-48d5-b888-82c734c38935'),
|
|
83
|
+
* }
|
|
84
|
+
* }
|
|
85
|
+
* }
|
|
86
|
+
* `)
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
export declare function buildMappingFileFromSchema(schema: Model.TypesyncHypergraphSchema): string;
|
|
9
90
|
export {};
|
|
10
91
|
//# sourceMappingURL=Utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/cli/services/Utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../src/cli/services/Utils.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAEpD,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAC;;;;AA+IzC,qBAAa,mBAAoB,SAAQ,yBAA+D;IACtG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;CAAG;AA8GL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,UAQrE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,yBAAyB,UAoD1F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,KAAK,CAAC,wBAAwB,UAIhF"}
|