Skip to content

Commit a1a3c61

Browse files
authored
Bug: old management sdk in management example (#268)
* Working version with the new SDK * Cleans up format with prettier
1 parent 326c30b commit a1a3c61

File tree

3 files changed

+158
-112
lines changed

3 files changed

+158
-112
lines changed

using-management-sdk/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"start": "node src/index.js"
77
},
88
"dependencies": {
9-
"@graphcms/management": "1.1.0"
9+
"@hygraph/management-sdk": "^1.2.1"
1010
},
1111
"devDependencies": {
1212
"dotenv": "10.0.0"

using-management-sdk/src/index.js

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,75 @@
11
require('dotenv').config();
22

33
const {
4-
newMigration,
5-
FieldType,
6-
RelationType,
7-
Renderer,
8-
} = require('@graphcms/management');
4+
Client,
5+
SimpleFieldType,
6+
RelationalFieldType,
7+
} = require('@hygraph/management-sdk');
98

109
// Create a new `migration` instance
11-
const migration = newMigration({
10+
const client = new Client({
1211
authToken: process.env.HYGRAPH_MIGRATION_TOKEN,
1312
endpoint: process.env.HYGRAPH_ENDPOINT,
1413
});
1514

1615
// create model for blog
17-
const blogModel = migration.createModel({
16+
client.createModel({
1817
apiId: 'Blog',
1918
apiIdPlural: 'Blogs',
2019
displayName: 'Blog',
2120
});
2221

2322
// add blog fields
24-
blogModel.addSimpleField({
23+
client.createSimpleField({
2524
apiId: 'title',
2625
displayName: 'Title',
27-
type: FieldType.String,
26+
modelApiId: 'Blog',
27+
type: SimpleFieldType.String,
2828
});
2929

30-
blogModel.addSimpleField({
30+
client.createSimpleField({
3131
apiId: 'excerpt',
3232
displayName: 'Excerpt',
33-
type: FieldType.String,
34-
formRenderer: Renderer.MultiLine,
33+
modelApiId: 'Blog',
34+
type: SimpleFieldType.String,
35+
formRenderer: 'GCMS_MULTI_LINE',
3536
});
3637

37-
blogModel.addSimpleField({
38+
client.createSimpleField({
3839
apiId: 'content',
3940
displayName: 'Content',
40-
type: FieldType.Richtext,
41+
modelApiId: 'Blog',
42+
type: SimpleFieldType.Richtext,
4143
});
4244

4345
// create model for author
44-
const authorModel = migration.createModel({
46+
client.createModel({
4547
apiId: 'Author',
4648
apiIdPlural: 'Authors',
4749
displayName: 'Author',
4850
});
4951

5052
// add author fields
51-
authorModel.addSimpleField({
53+
client.createSimpleField({
5254
apiId: 'name',
5355
displayName: 'Name',
54-
type: FieldType.String,
56+
modelApiId: 'Author',
57+
type: SimpleFieldType.String,
5558
});
5659

5760
// add relation to blog for author posts
5861

59-
// create model for author
60-
const authorRelation = migration.updateModel({
61-
apiId: 'Author',
62-
});
63-
64-
authorRelation.addRelationalField({
65-
apiId: 'authorPosts',
66-
displayName: 'Author Posts',
67-
relationType: RelationType.OneToMany,
68-
model: 'Blog',
62+
client.createRelationalField({
63+
parentApiId: 'Blog',
64+
apiId: 'author',
65+
displayName: 'Written By',
66+
type: RelationalFieldType.Relation,
67+
reverseField: {
68+
modelApiId: 'Author',
69+
apiId: 'posts',
70+
displayName: 'Posts',
71+
isList: true,
72+
},
6973
});
7074

71-
migration.run();
75+
client.run();

using-management-sdk/yarn.lock

Lines changed: 125 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -3,102 +3,144 @@
33

44

55
"@graphcms/management@1.1.0":
6-
version "1.1.0"
7-
resolved "https://registry.yarnpkg.com/@graphcms/management/-/management-1.1.0.tgz#7799d4faf010102dd0a142c60df230f9ead0cb43"
8-
integrity sha512-jN+qu06BvvX2fK+tz8Po1ySV43ls4iLqQzNxVyoCyHZTwKEQPOVkvp4TRpusTOkuTxyOeI5r+s1GnKfUeQdPdQ==
6+
"integrity" "sha512-jN+qu06BvvX2fK+tz8Po1ySV43ls4iLqQzNxVyoCyHZTwKEQPOVkvp4TRpusTOkuTxyOeI5r+s1GnKfUeQdPdQ=="
7+
"resolved" "https://registry.npmjs.org/@graphcms/management/-/management-1.1.0.tgz"
8+
"version" "1.1.0"
99
dependencies:
1010
"@types/nanoid" "2.1.0"
11-
graphql "15.5.0"
12-
graphql-request "3.4.0"
13-
nanoid "3.1.22"
11+
"graphql" "15.5.0"
12+
"graphql-request" "3.4.0"
13+
"nanoid" "3.1.22"
14+
15+
"@hygraph/management-sdk@^1.2.1":
16+
"integrity" "sha512-n9Vs29lZXWZdOB7NIy8eoNiQfPiVK5JQ/f0z6LJ434aC5JUHxa1fuzE+Rsq6ntTlTYTXaYMRqvsOHjFtRH9ovw=="
17+
"resolved" "https://registry.npmjs.org/@hygraph/management-sdk/-/management-sdk-1.2.1.tgz"
18+
"version" "1.2.1"
19+
dependencies:
20+
"graphql" "^16.5.0"
21+
"graphql-request" "^4.3.0"
1422

1523
"@types/nanoid@2.1.0":
16-
version "2.1.0"
17-
resolved "https://registry.yarnpkg.com/@types/nanoid/-/nanoid-2.1.0.tgz#41edfda78986e9127d0dc14de982de766f994020"
18-
integrity sha512-xdkn/oRTA0GSNPLIKZgHWqDTWZsVrieKomxJBOQUK9YDD+zfSgmwD5t4WJYra5S7XyhTw7tfvwznW+pFexaepQ==
24+
"integrity" "sha512-xdkn/oRTA0GSNPLIKZgHWqDTWZsVrieKomxJBOQUK9YDD+zfSgmwD5t4WJYra5S7XyhTw7tfvwznW+pFexaepQ=="
25+
"resolved" "https://registry.npmjs.org/@types/nanoid/-/nanoid-2.1.0.tgz"
26+
"version" "2.1.0"
1927
dependencies:
2028
"@types/node" "*"
2129

2230
"@types/node@*":
23-
version "15.12.4"
24-
resolved "https://registry.yarnpkg.com/@types/node/-/node-15.12.4.tgz#e1cf817d70a1e118e81922c4ff6683ce9d422e26"
25-
integrity sha512-zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA==
26-
27-
asynckit@^0.4.0:
28-
version "0.4.0"
29-
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
30-
integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
31-
32-
combined-stream@^1.0.8:
33-
version "1.0.8"
34-
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
35-
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
31+
"integrity" "sha512-zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA=="
32+
"resolved" "https://registry.npmjs.org/@types/node/-/node-15.12.4.tgz"
33+
"version" "15.12.4"
34+
35+
"asynckit@^0.4.0":
36+
"integrity" "sha1-x57Zf380y48robyXkLzDZkdLS3k= sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
37+
"resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
38+
"version" "0.4.0"
39+
40+
"combined-stream@^1.0.8":
41+
"integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
42+
"resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
43+
"version" "1.0.8"
3644
dependencies:
37-
delayed-stream "~1.0.0"
45+
"delayed-stream" "~1.0.0"
3846

39-
cross-fetch@^3.0.6:
40-
version "3.1.4"
41-
resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.4.tgz#9723f3a3a247bf8b89039f3a380a9244e8fa2f39"
42-
integrity sha512-1eAtFWdIubi6T4XPy6ei9iUFoKpUkIF971QLN8lIvvvwueI65+Nw5haMNKUwfJxabqlIIDODJKGrQ66gxC0PbQ==
47+
"cross-fetch@^3.0.6", "cross-fetch@^3.1.5":
48+
"integrity" "sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg=="
49+
"resolved" "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz"
50+
"version" "3.1.8"
51+
dependencies:
52+
"node-fetch" "^2.6.12"
53+
54+
"delayed-stream@~1.0.0":
55+
"integrity" "sha1-3zrhmayt+31ECqrgsp4icrJOxhk= sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
56+
"resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
57+
"version" "1.0.0"
58+
59+
"dotenv@10.0.0":
60+
"integrity" "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q=="
61+
"resolved" "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz"
62+
"version" "10.0.0"
63+
64+
"extract-files@^9.0.0":
65+
"integrity" "sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ=="
66+
"resolved" "https://registry.npmjs.org/extract-files/-/extract-files-9.0.0.tgz"
67+
"version" "9.0.0"
68+
69+
"form-data@^3.0.0":
70+
"integrity" "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg=="
71+
"resolved" "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz"
72+
"version" "3.0.1"
4373
dependencies:
44-
node-fetch "2.6.1"
45-
46-
delayed-stream@~1.0.0:
47-
version "1.0.0"
48-
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
49-
integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
50-
51-
dotenv@10.0.0:
52-
version "10.0.0"
53-
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
54-
integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
55-
56-
extract-files@^9.0.0:
57-
version "9.0.0"
58-
resolved "https://registry.yarnpkg.com/extract-files/-/extract-files-9.0.0.tgz#8a7744f2437f81f5ed3250ed9f1550de902fe54a"
59-
integrity sha512-CvdFfHkC95B4bBBk36hcEmvdR2awOdhhVUYH6S/zrVj3477zven/fJMYg7121h4T1xHZC+tetUpubpAhxwI7hQ==
60-
61-
form-data@^3.0.0:
62-
version "3.0.1"
63-
resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f"
64-
integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==
74+
"asynckit" "^0.4.0"
75+
"combined-stream" "^1.0.8"
76+
"mime-types" "^2.1.12"
77+
78+
"graphql-request@^4.3.0":
79+
"integrity" "sha512-2v6hQViJvSsifK606AliqiNiijb1uwWp6Re7o0RTyH+uRTv/u7Uqm2g4Fjq/LgZIzARB38RZEvVBFOQOVdlBow=="
80+
"resolved" "https://registry.npmjs.org/graphql-request/-/graphql-request-4.3.0.tgz"
81+
"version" "4.3.0"
6582
dependencies:
66-
asynckit "^0.4.0"
67-
combined-stream "^1.0.8"
68-
mime-types "^2.1.12"
69-
70-
graphql-request@3.4.0:
71-
version "3.4.0"
72-
resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-3.4.0.tgz#3a400cd5511eb3c064b1873afb059196bbea9c2b"
73-
integrity sha512-acrTzidSlwAj8wBNO7Q/UQHS8T+z5qRGquCQRv9J1InwR01BBWV9ObnoE+JS5nCCEj8wSGS0yrDXVDoRiKZuOg==
83+
"cross-fetch" "^3.1.5"
84+
"extract-files" "^9.0.0"
85+
"form-data" "^3.0.0"
86+
87+
"graphql-request@3.4.0":
88+
"integrity" "sha512-acrTzidSlwAj8wBNO7Q/UQHS8T+z5qRGquCQRv9J1InwR01BBWV9ObnoE+JS5nCCEj8wSGS0yrDXVDoRiKZuOg=="
89+
"resolved" "https://registry.npmjs.org/graphql-request/-/graphql-request-3.4.0.tgz"
90+
"version" "3.4.0"
7491
dependencies:
75-
cross-fetch "^3.0.6"
76-
extract-files "^9.0.0"
77-
form-data "^3.0.0"
78-
79-
graphql@15.5.0:
80-
version "15.5.0"
81-
resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5"
82-
integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA==
83-
84-
mime-db@1.48.0:
85-
version "1.48.0"
86-
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.48.0.tgz#e35b31045dd7eada3aaad537ed88a33afbef2d1d"
87-
integrity sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==
88-
89-
mime-types@^2.1.12:
90-
version "2.1.31"
91-
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.31.tgz#a00d76b74317c61f9c2db2218b8e9f8e9c5c9e6b"
92-
integrity sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==
92+
"cross-fetch" "^3.0.6"
93+
"extract-files" "^9.0.0"
94+
"form-data" "^3.0.0"
95+
96+
"graphql@^16.5.0", "graphql@14 - 16":
97+
"integrity" "sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg=="
98+
"resolved" "https://registry.npmjs.org/graphql/-/graphql-16.7.1.tgz"
99+
"version" "16.7.1"
100+
101+
"graphql@14.x || 15.x", "graphql@15.5.0":
102+
"integrity" "sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA=="
103+
"resolved" "https://registry.npmjs.org/graphql/-/graphql-15.5.0.tgz"
104+
"version" "15.5.0"
105+
106+
"mime-db@1.48.0":
107+
"integrity" "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ=="
108+
"resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz"
109+
"version" "1.48.0"
110+
111+
"mime-types@^2.1.12":
112+
"integrity" "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg=="
113+
"resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz"
114+
"version" "2.1.31"
93115
dependencies:
94-
mime-db "1.48.0"
116+
"mime-db" "1.48.0"
95117

96-
nanoid@3.1.22:
97-
version "3.1.22"
98-
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844"
99-
integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==
118+
"nanoid@3.1.22":
119+
"integrity" "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ=="
120+
"resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz"
121+
"version" "3.1.22"
100122

101-
node-fetch@2.6.1:
102-
version "2.6.1"
103-
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052"
104-
integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==
123+
"node-fetch@^2.6.12":
124+
"integrity" "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g=="
125+
"resolved" "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz"
126+
"version" "2.6.12"
127+
dependencies:
128+
"whatwg-url" "^5.0.0"
129+
130+
"tr46@~0.0.3":
131+
"integrity" "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
132+
"resolved" "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
133+
"version" "0.0.3"
134+
135+
"webidl-conversions@^3.0.0":
136+
"integrity" "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
137+
"resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
138+
"version" "3.0.1"
139+
140+
"whatwg-url@^5.0.0":
141+
"integrity" "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="
142+
"resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
143+
"version" "5.0.0"
144+
dependencies:
145+
"tr46" "~0.0.3"
146+
"webidl-conversions" "^3.0.0"

0 commit comments

Comments
 (0)