@xyo-network/manifest 2.89.0 → 2.89.2

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/package.json CHANGED
@@ -10,8 +10,8 @@
10
10
  },
11
11
  "description": "Primary SDK for using XYO Protocol 2.0",
12
12
  "dependencies": {
13
- "@xyo-network/manifest-model": "~2.89.0",
14
- "@xyo-network/manifest-wrapper": "~2.89.0"
13
+ "@xyo-network/manifest-model": "~2.89.2",
14
+ "@xyo-network/manifest-wrapper": "~2.89.2"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@xylabs/ts-scripts-yarn3": "^3.2.42",
@@ -61,6 +61,6 @@
61
61
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
62
62
  },
63
63
  "sideEffects": false,
64
- "version": "2.89.0",
64
+ "version": "2.89.2",
65
65
  "type": "module"
66
66
  }
@@ -0,0 +1,254 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://xyo.network/schemas/dapp-package-manifest-schema.json",
4
+ "definitions": {
5
+ "architecture": {
6
+ "description": "Architecture",
7
+ "enum": [
8
+ "386",
9
+ "amd64",
10
+ "arm",
11
+ "arm64",
12
+ "loong64",
13
+ "mips",
14
+ "mipsle",
15
+ "mips64",
16
+ "mips64le",
17
+ "ppc64",
18
+ "ppc64le",
19
+ "riscv64",
20
+ "s390x",
21
+ "wasm"
22
+ ],
23
+ "type": "string"
24
+ },
25
+ "config": {
26
+ "additionalProperties": true,
27
+ "description": "Config for a module",
28
+ "properties": {
29
+ "accountPath": {
30
+ "description": "HDWallet path to derive account",
31
+ "type": "string"
32
+ },
33
+ "architecture": {
34
+ "$ref": "#/definitions/architecture"
35
+ },
36
+ "description": {
37
+ "type": "string"
38
+ },
39
+ "features": {
40
+ "items": {
41
+ "$ref": "#/definitions/feature"
42
+ },
43
+ "type": "array"
44
+ },
45
+ "language": {
46
+ "$ref": "#/definitions/language"
47
+ },
48
+ "name": {
49
+ "type": "string"
50
+ },
51
+ "os": {
52
+ "$ref": "#/definitions/os"
53
+ },
54
+ "schema": {
55
+ "type": "string"
56
+ }
57
+ },
58
+ "required": [
59
+ "name",
60
+ "schema"
61
+ ],
62
+ "type": "object"
63
+ },
64
+ "external": {
65
+ "additionalProperties": false,
66
+ "definitions": {
67
+ "modules": {
68
+ "description": "A List of module permissions requests",
69
+ "items": {
70
+ "$ref": "#/definitions/external/definitions/moduleRequest"
71
+ },
72
+ "type": "array"
73
+ },
74
+ "moduleRequest": {
75
+ "description": "A module permissions request",
76
+ "additionalProperties": false,
77
+ "properties": {
78
+ "name": {
79
+ "description": "Name of the module the dApp is requesting permission to access",
80
+ "type": "string"
81
+ }
82
+ },
83
+ "type": "object"
84
+ }
85
+ },
86
+ "properties": {
87
+ "modules": {
88
+ "$ref": "#/definitions/external/definitions/modules"
89
+ }
90
+ },
91
+ "required": [
92
+ "modules"
93
+ ],
94
+ "type": "object"
95
+ },
96
+ "feature": {
97
+ "description": "Framework",
98
+ "enum": [
99
+ "angular",
100
+ "asp.net",
101
+ "browser",
102
+ "cryengine",
103
+ "corona",
104
+ "django",
105
+ "flutter",
106
+ "ionic",
107
+ "jquery",
108
+ "nodejs",
109
+ "phonegap",
110
+ "react",
111
+ "react-native",
112
+ "spring",
113
+ "unity",
114
+ "unreal",
115
+ "vue",
116
+ "xamarin"
117
+ ],
118
+ "type": "string"
119
+ },
120
+ "language": {
121
+ "description": "Language",
122
+ "enum": [
123
+ "c",
124
+ "c++",
125
+ "c#",
126
+ "go",
127
+ "java",
128
+ "javascript",
129
+ "kotlin",
130
+ "lua",
131
+ "python",
132
+ "ruby",
133
+ "rust",
134
+ "scala",
135
+ "solidity",
136
+ "swift"
137
+ ],
138
+ "type": "string"
139
+ },
140
+ "module": {
141
+ "additionalProperties": false,
142
+ "description": "Module Definition",
143
+ "properties": {
144
+ "config": {
145
+ "$ref": "#/definitions/config"
146
+ },
147
+ "description": {
148
+ "type": "string"
149
+ }
150
+ },
151
+ "required": [
152
+ "config"
153
+ ],
154
+ "type": "object"
155
+ },
156
+ "modules": {
157
+ "description": "List of Modules",
158
+ "items": {
159
+ "$ref": "#/definitions/module"
160
+ },
161
+ "nullable": true,
162
+ "type": "array"
163
+ },
164
+ "node": {
165
+ "additionalProperties": false,
166
+ "description": "Node Definition - Generally loaded into an existing or new Node Module",
167
+ "properties": {
168
+ "config": {
169
+ "$ref": "#/definitions/config"
170
+ },
171
+ "description": {
172
+ "type": "string"
173
+ },
174
+ "modules": {
175
+ "additionalProperties": false,
176
+ "description": "Modules in the Node",
177
+ "properties": {
178
+ "private": {
179
+ "$ref": "#/definitions/modules"
180
+ },
181
+ "public": {
182
+ "$ref": "#/definitions/modules"
183
+ }
184
+ },
185
+ "required": [],
186
+ "type": "object"
187
+ },
188
+ "name": {
189
+ "type": "string"
190
+ }
191
+ },
192
+ "required": [],
193
+ "type": "object"
194
+ },
195
+ "nodes": {
196
+ "description": "List of Node Manifests",
197
+ "items": {
198
+ "$ref": "#/definitions/node"
199
+ },
200
+ "type": "array"
201
+ },
202
+ "os": {
203
+ "description": "Operating System",
204
+ "enum": [
205
+ "aix",
206
+ "android",
207
+ "darwin",
208
+ "dragonfly",
209
+ "freebsd",
210
+ "illumos",
211
+ "ios",
212
+ "linux",
213
+ "netbsd",
214
+ "openbsd",
215
+ "osx",
216
+ "plan9",
217
+ "solaris",
218
+ "windows"
219
+ ],
220
+ "type": "string"
221
+ },
222
+ "payloads": {
223
+ "description": "List of Modules",
224
+ "items": {
225
+ "$ref": "#/definitions/module"
226
+ },
227
+ "nullable": true,
228
+ "type": "array"
229
+ }
230
+ },
231
+ "properties": {
232
+ "description": {
233
+ "type": "string"
234
+ },
235
+ "external": {
236
+ "$ref": "#/definitions/external",
237
+ "description": "The list of permission requests made by the dApp"
238
+ },
239
+ "nodes": {
240
+ "$ref": "#/definitions/nodes",
241
+ "description": "The list of Nodes that are defined in the manifest"
242
+ },
243
+ "schema": {
244
+ "pattern": "^network.xyo.dapp.manifest$",
245
+ "type": "string"
246
+ }
247
+ },
248
+ "required": [
249
+ "nodes",
250
+ "schema"
251
+ ],
252
+ "title": "XYO Dapp Manifest",
253
+ "type": "object"
254
+ }
@@ -0,0 +1,251 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "definitions": {
4
+ "architecture": {
5
+ "description": "Architecture",
6
+ "enum": [
7
+ "386",
8
+ "amd64",
9
+ "arm",
10
+ "arm64",
11
+ "loong64",
12
+ "mips",
13
+ "mipsle",
14
+ "mips64",
15
+ "mips64le",
16
+ "ppc64",
17
+ "ppc64le",
18
+ "riscv64",
19
+ "s390x",
20
+ "wasm"
21
+ ],
22
+ "type": "string"
23
+ },
24
+ "config": {
25
+ "additionalProperties": true,
26
+ "description": "Config for a module",
27
+ "properties": {
28
+ "accountPath": {
29
+ "description": "HDWallet path to derive account",
30
+ "type": "string"
31
+ },
32
+ "architecture": {
33
+ "$ref": "#/definitions/architecture"
34
+ },
35
+ "description": {
36
+ "type": "string"
37
+ },
38
+ "features": {
39
+ "items": {
40
+ "$ref": "#/definitions/feature"
41
+ },
42
+ "type": "array"
43
+ },
44
+ "language": {
45
+ "$ref": "#/definitions/language"
46
+ },
47
+ "name": {
48
+ "type": "string"
49
+ },
50
+ "os": {
51
+ "$ref": "#/definitions/os"
52
+ },
53
+ "schema": {
54
+ "type": "string"
55
+ }
56
+ },
57
+ "required": [
58
+ "name",
59
+ "schema"
60
+ ],
61
+ "type": "object"
62
+ },
63
+ "external": {
64
+ "additionalProperties": false,
65
+ "definitions": {
66
+ "modules": {
67
+ "description": "A List of module permissions requests",
68
+ "items": {
69
+ "$ref": "#/definitions/external/definitions/moduleRequest"
70
+ },
71
+ "type": "array"
72
+ },
73
+ "moduleRequest": {
74
+ "description": "A module permissions request",
75
+ "additionalProperties": false,
76
+ "properties": {
77
+ "name": {
78
+ "description": "Name of the module the dApp is requesting permission to access",
79
+ "type": "string"
80
+ }
81
+ },
82
+ "type": "object"
83
+ }
84
+ },
85
+ "properties": {
86
+ "modules": {
87
+ "$ref": "#/definitions/external/definitions/modules"
88
+ }
89
+ },
90
+ "required": [
91
+ "modules"
92
+ ],
93
+ "type": "object"
94
+ },
95
+ "feature": {
96
+ "description": "Framework",
97
+ "enum": [
98
+ "angular",
99
+ "asp.net",
100
+ "browser",
101
+ "cryengine",
102
+ "corona",
103
+ "django",
104
+ "flutter",
105
+ "ionic",
106
+ "jquery",
107
+ "nodejs",
108
+ "phonegap",
109
+ "react",
110
+ "react-native",
111
+ "spring",
112
+ "unity",
113
+ "unreal",
114
+ "vue",
115
+ "xamarin"
116
+ ],
117
+ "type": "string"
118
+ },
119
+ "language": {
120
+ "description": "Language",
121
+ "enum": [
122
+ "c",
123
+ "c++",
124
+ "c#",
125
+ "go",
126
+ "java",
127
+ "javascript",
128
+ "kotlin",
129
+ "lua",
130
+ "python",
131
+ "ruby",
132
+ "rust",
133
+ "scala",
134
+ "solidity",
135
+ "swift"
136
+ ],
137
+ "type": "string"
138
+ },
139
+ "module": {
140
+ "additionalProperties": false,
141
+ "description": "Module Definition",
142
+ "properties": {
143
+ "config": {
144
+ "$ref": "#/definitions/config"
145
+ },
146
+ "description": {
147
+ "type": "string"
148
+ }
149
+ },
150
+ "required": [
151
+ "config"
152
+ ],
153
+ "type": "object"
154
+ },
155
+ "modules": {
156
+ "description": "List of Modules",
157
+ "items": {
158
+ "$ref": "#/definitions/module"
159
+ },
160
+ "nullable": true,
161
+ "type": "array"
162
+ },
163
+ "node": {
164
+ "additionalProperties": false,
165
+ "description": "Node Definition - Generally loaded into an existing or new Node Module",
166
+ "properties": {
167
+ "config": {
168
+ "$ref": "#/definitions/config"
169
+ },
170
+ "description": {
171
+ "type": "string"
172
+ },
173
+ "modules": {
174
+ "additionalProperties": false,
175
+ "description": "Modules in the Node",
176
+ "properties": {
177
+ "private": {
178
+ "$ref": "#/definitions/modules"
179
+ },
180
+ "public": {
181
+ "$ref": "#/definitions/modules"
182
+ }
183
+ },
184
+ "required": [],
185
+ "type": "object"
186
+ },
187
+ "name": {
188
+ "type": "string"
189
+ }
190
+ },
191
+ "required": [],
192
+ "type": "object"
193
+ },
194
+ "nodes": {
195
+ "description": "List of Node Manifests",
196
+ "items": {
197
+ "$ref": "#/definitions/node"
198
+ },
199
+ "type": "array"
200
+ },
201
+ "os": {
202
+ "description": "Operating System",
203
+ "enum": [
204
+ "aix",
205
+ "android",
206
+ "darwin",
207
+ "dragonfly",
208
+ "freebsd",
209
+ "illumos",
210
+ "ios",
211
+ "linux",
212
+ "netbsd",
213
+ "openbsd",
214
+ "osx",
215
+ "plan9",
216
+ "solaris",
217
+ "windows"
218
+ ],
219
+ "type": "string"
220
+ },
221
+ "payloads": {
222
+ "description": "List of Modules",
223
+ "items": {
224
+ "$ref": "#/definitions/module"
225
+ },
226
+ "nullable": true,
227
+ "type": "array"
228
+ }
229
+ },
230
+ "additionalProperties": false,
231
+ "description": "Describes an XYO Package which is a collection of XYO Modules",
232
+ "properties": {
233
+ "description": {
234
+ "type": "string"
235
+ },
236
+ "nodes": {
237
+ "$ref": "#/definitions/nodes",
238
+ "description": "The list of Nodes that are defined in the manifest"
239
+ },
240
+ "schema": {
241
+ "pattern": "^network.xyo.manifest$",
242
+ "type": "string"
243
+ }
244
+ },
245
+ "required": [
246
+ "nodes",
247
+ "schema"
248
+ ],
249
+ "title": "XYO Manifest",
250
+ "type": "object"
251
+ }
package/src/schema.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "type": "string"
9
9
  },
10
10
  "nodes": {
11
- "$ref": "shared/definitions-schema.json#/definitions/nodes",
11
+ "$ref": "definitions-schema.json#/definitions/nodes",
12
12
  "description": "The list of Nodes that are defined in the manifest"
13
13
  },
14
14
  "schema": {
@@ -20,5 +20,6 @@
20
20
  "nodes",
21
21
  "schema"
22
22
  ],
23
- "title": "XYO Manifest"
23
+ "title": "XYO Manifest",
24
+ "type": "object"
24
25
  }
@@ -88,6 +88,9 @@
88
88
  "$ref": "#/definitions/external/definitions/modules"
89
89
  }
90
90
  },
91
+ "required": [
92
+ "modules"
93
+ ],
91
94
  "type": "object"
92
95
  },
93
96
  "feature": {
@@ -0,0 +1,2 @@
1
+ export * from './invalidCase'
2
+ export * from './validCase'
@@ -2,7 +2,7 @@ export const invalidDappPackageManifestSchema = {
2
2
  external: {
3
3
  modules1: [
4
4
  {
5
- name: 'SomeModule',
5
+ name: 0,
6
6
  },
7
7
  ],
8
8
  },
@@ -14,7 +14,7 @@ export const invalidDappPackageManifestSchema = {
14
14
  schema: 'network.xyo.node.config',
15
15
  },
16
16
  modules: {
17
- public1: [
17
+ public: [
18
18
  {
19
19
  config: {
20
20
  accountPath: "1'",
@@ -1,2 +1,2 @@
1
- export * from './invalidCase'
2
- export * from './validCase'
1
+ export * from './dappManifest'
2
+ export * from './manifest'
@@ -0,0 +1,2 @@
1
+ export * from './invalidCase'
2
+ export * from './validCase'
@@ -0,0 +1,23 @@
1
+ export const invalidPackageManifestSchema = {
2
+ nodes: [
3
+ {
4
+ config3: {
5
+ accountPath: "0'",
6
+ name: 1,
7
+ schema: 'network.xyo.node.config',
8
+ },
9
+ modules: {
10
+ public2: [
11
+ {
12
+ config: {
13
+ accountPath: "1'",
14
+ name: 'SomeArchivist',
15
+ schema: 'network.xyo.archivist.config',
16
+ },
17
+ },
18
+ ],
19
+ },
20
+ },
21
+ ],
22
+ schema: 'network.xyo.foo.manifest',
23
+ }
@@ -0,0 +1,23 @@
1
+ export const validPackageManifestSchema = {
2
+ nodes: [
3
+ {
4
+ config: {
5
+ accountPath: "0'",
6
+ name: 'DappNode',
7
+ schema: 'network.xyo.node.config',
8
+ },
9
+ modules: {
10
+ public: [
11
+ {
12
+ config: {
13
+ accountPath: "1'",
14
+ name: 'SomeArchivist',
15
+ schema: 'network.xyo.archivist.config',
16
+ },
17
+ },
18
+ ],
19
+ },
20
+ },
21
+ ],
22
+ schema: 'network.xyo.manifest',
23
+ }