Skip to content

Commit f91fd50

Browse files
author
Paul Le Cam
authored
Glaze setup (#56)
1 parent dffa24f commit f91fd50

File tree

192 files changed

+152048
-2698
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

192 files changed

+152048
-2698
lines changed

.github/workflows/main.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
runs-on: ${{ matrix.os }}
88
strategy:
99
matrix:
10-
node: ['16.x']
10+
node: ['14.x', '16.x']
1111
os: [ubuntu-latest, macOS-latest]
1212

1313
steps:

.yarn/releases/yarn-1.18.0.cjs

+147,155
Large diffs are not rendered by default.

.yarnrc

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2+
# yarn lockfile v1
3+
4+
5+
yarn-path ".yarn/releases/yarn-1.18.0.cjs"

CHANGELOG.md CHANGELOG-IDX.md

File renamed without changes.

README.md

+8-10
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,23 @@ Packages providing the JavaScript/TypeScript implementation of the [IDX protocol
1111
1212
## Installation
1313

14-
This monorepo uses workspaces from npm v7, included with Node v15.
15-
If you are using an older version of Node, make sure to install npm v7.
14+
This monorepo uses Yarn's workspaces, make sure to install it first if you don't already have it.
1615

17-
1. `npm install` to install the dependencies
18-
1. `npm run build` to build all the packages
16+
1. `yarn install` to install the dependencies
17+
1. `yarn build` to build all the packages
1918

2019
### Additional scripts
2120

22-
- `npm run lint` to run the linter in all packages
23-
- `npm test` to run tests in all packages
21+
- `yarn lint` to run the linter in all packages
22+
- `yarn test` to run tests in all packages
2423

2524
## Packages
2625

2726
### IDX
2827

29-
- [`@ceramicstudio/idx`](https://developers.idx.xyz/reference/idx/) in [`packages/core`](packages/core)
30-
- [`@ceramicstudio/idx-constants`](https://developers.idx.xyz/reference/idx-constants/) in [`packages/constants`](packages/constants)
31-
- [`@ceramicstudio/idx-cli`](https://developers.idx.xyz/reference/cli/) in [`packages/cli`](packages/cli)
32-
- [`@ceramicstudio/idx-tools`](https://developers.idx.xyz/reference/idx-tools/) in [`packages/tools`](packages/tools)
28+
- [`@ceramicstudio/idx`](https://developers.idx.xyz/reference/idx/) in [`packages/idx`](packages/idx)
29+
- [`@ceramicstudio/idx-constants`](https://developers.idx.xyz/reference/idx-constants/) in [`packages/idx-constants`](packages/constants)
30+
- [`@ceramicstudio/idx-tools`](https://developers.idx.xyz/reference/idx-tools/) in [`packages/idx-tools`](packages/idx-tools)
3331

3432
### Jest environments
3533

package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@
1515
},
1616
"devDependencies": {
1717
"@size-limit/preset-small-lib": "^5.0.1",
18-
"@types/jest": "^26.0.20",
19-
"@typescript-eslint/eslint-plugin": "^4.26.1",
20-
"@typescript-eslint/parser": "^4.26.1",
21-
"eslint": "^7.28.0",
18+
"@types/jest": "^26.0.24",
19+
"@typescript-eslint/eslint-plugin": "^4.28.2",
20+
"@typescript-eslint/parser": "^4.28.2",
21+
"eslint": "^7.30.0",
2222
"eslint-config-3box": "^0.2.0",
2323
"eslint-plugin-jest": "^24.3.6",
24-
"husky": "^7.0.0",
24+
"husky": "^7.0.1",
2525
"jest": "^27.0.6",
2626
"lerna": "^4.0.0",
2727
"prettier": "^2.3.0",

packages/3box-essentials/.eslintrc.js

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module.exports = {
2+
extends: ['3box', '3box/jest', '3box/typescript'],
3+
parserOptions: {
4+
project: ['tsconfig.json'],
5+
},
6+
}

packages/3box-essentials/.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
*.log
2+
.DS_Store
3+
node_modules
4+
dist
File renamed without changes.
File renamed without changes.

packages/3box-essentials/README.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# 3Box essentials data model
2+
3+
## Installation
4+
5+
```sh
6+
npm install --dev @datamodels/3box-essentials
7+
```
8+
9+
## License
10+
11+
Apache-2.0 OR MIT

packages/3box-essentials/package.json

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "@datamodels/3box-essentials",
3+
"version": "0.1.0",
4+
"author": "3Box Labs",
5+
"homepage": "https://idx.xyz",
6+
"license": "(Apache-2.0 OR MIT)",
7+
"main": "dist/index.js",
8+
"module": "dist/3box-essentials.esm.js",
9+
"typings": "dist/index.d.ts",
10+
"files": [
11+
"dist"
12+
],
13+
"engines": {
14+
"node": ">=14"
15+
},
16+
"scripts": {
17+
"start": "tsdx watch",
18+
"build": "tsdx build --tsconfig tsconfig.build.json",
19+
"test": "tsdx test",
20+
"lint": "eslint src test --fix",
21+
"prepublish": "npm run build"
22+
},
23+
"devDependencies": {
24+
"@glazed/types": "^0.1.0"
25+
}
26+
}
File renamed without changes.

packages/3box-essentials/src/index.ts

+242
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,242 @@
1+
import type { ModelTypeAliases, EncodedSignedModel } from '@glazed/types'
2+
3+
export type Attestation = {
4+
'did-jwt'?: string
5+
'did-jwt-vc'?: string
6+
}
7+
8+
export type AlsoKnownAsAccount = {
9+
protocol: string
10+
id: string
11+
host?: string
12+
claim?: string
13+
attestations?: Array<Attestation>
14+
}
15+
16+
export type AlsoKnownAs = {
17+
accounts: Array<AlsoKnownAsAccount>
18+
}
19+
20+
export type ImageMetadata = {
21+
src: string
22+
mimeType: string
23+
width: number
24+
height: number
25+
size?: number
26+
}
27+
28+
export type ImageSources = {
29+
original: ImageMetadata
30+
alternatives?: Array<ImageMetadata>
31+
}
32+
33+
export type BasicProfile = {
34+
name?: string
35+
image?: ImageSources
36+
description?: string
37+
emoji?: string
38+
background?: ImageSources
39+
birthDate?: string
40+
url?: string
41+
gender?: string
42+
homeLocation?: string
43+
residenceCountry?: string
44+
nationalities?: Array<string>
45+
affiliations?: Array<string>
46+
}
47+
48+
export type CryptoAccounts = Record<string, string>
49+
50+
export type JWERecipient = {
51+
header: Record<string, any>
52+
encrypted_key: string
53+
}
54+
55+
export type JWE = {
56+
protected: string
57+
iv: string
58+
ciphertext: string
59+
tag: string
60+
aad?: string
61+
recipients?: Array<JWERecipient>
62+
}
63+
64+
export type WrappedJWE = { jwe: JWE }
65+
66+
export type AuthData = {
67+
id: WrappedJWE
68+
pub: string
69+
data: WrappedJWE
70+
}
71+
72+
export type ThreeIdKeychain = {
73+
authMap: Record<string, AuthData>
74+
pastSeeds: Array<JWE>
75+
}
76+
77+
export type ModelTypes = ModelTypeAliases<
78+
{
79+
AlsoKnownAs: AlsoKnownAs
80+
BasicProfile: BasicProfile
81+
CryptoAccounts: CryptoAccounts
82+
ThreeIdKeychain: ThreeIdKeychain
83+
},
84+
{
85+
alsoKnownAs: 'AlsoKnownAs'
86+
basicProfile: 'BasicProfile'
87+
cryptoAccounts: 'CryptoAccounts'
88+
threeIdKeychain: 'ThreeIdKeychain'
89+
}
90+
>
91+
92+
export const model: EncodedSignedModel<ModelTypes> = {
93+
definitions: {
94+
alsoKnownAs: [
95+
{
96+
jws: {
97+
payload: 'AXESIOWmE0CF2MHEz0PmBVBOkCvzCVXNE5Mg-894RRaXaZJe',
98+
signatures: [
99+
{
100+
protected:
101+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
102+
signature:
103+
'GurUQxUEzBdidKjlPdv09NLD-aG787p47ghUMW2PA5av49soVKe3I4xntq4OzXHXm-weLzuMFUFxkURvgUDuAA',
104+
},
105+
],
106+
link: 'bafyreihfuyjubboyyhcm6q7gavie5ebl6mevltitsmqpxt3yiuljo2msly',
107+
},
108+
linkedBlock:
109+
'o2RkYXRho2RuYW1lbUFsc28gS25vd24gQXNmc2NoZW1heEtjZXJhbWljOi8vazN5NTJsN3FidjFmcnlvanQ4bjhjdzJrMDRwOXdwNjdseTU5aXdxczY1ZGVqc281NjZmaWo1d3NkcmI4NzF5aW9rZGVzY3JpcHRpb254ZEFsc28gS25vd24gQXMgaXMgYSBkYXRhIHNldCB0aGF0IHN0b3JlcyBhIGxpc3Qgb2YgYWNjb3VudHMgdGhhdCBhcmUgcHVibGljbHkgbGlua2VkIHRvIHRoZSB1c2VycyBESURmaGVhZGVyomZzY2hlbWF4S2NlcmFtaWM6Ly9rM3k1Mmw3cWJ2MWZyeTFmcDRzMG53ZGFyaDB2YWh1c2FycHBvc2dldnkwcGVtaXlreW1kMm9yZDZzd3RoYXJjd2tjb250cm9sbGVyc4F4OGRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBZ2RvY3R5cGVkdGlsZQ==',
110+
},
111+
],
112+
basicProfile: [
113+
{
114+
jws: {
115+
payload: 'AXESIHQlyxvLYuiHGvjCREWnS0HxQV6z7lfPRe4mRdViHjWU',
116+
signatures: [
117+
{
118+
protected:
119+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
120+
signature:
121+
'619cILy5j-zkYwz0pJ2cYnPnVqmYf6YJcuqxcLoaRqvCL341HOoTm0siEOG_Jmu1alT_UUuah1dlrqubgIe1BA',
122+
},
123+
],
124+
link: 'bafyreiduexfrxs3c5cdrv6gcirc2os2b6fav5m7ok7hul3rgixkwehrvsq',
125+
},
126+
linkedBlock:
127+
'o2RkYXRho2RuYW1lbUJhc2ljIFByb2ZpbGVmc2NoZW1heEtjZXJhbWljOi8vazN5NTJsN3FidjFmcnh0NzA2Z3Fmem1xNmNicWRrcHR6azh1dWRhcnlobGtmNmx5OXZ4MjFocXU0cjZrMWpxaW9rZGVzY3JpcHRpb254I0Jhc2ljIHByb2ZpbGUgaW5mb3JtYXRpb24gZm9yIGEgRElEZmhlYWRlcqJmc2NoZW1heEtjZXJhbWljOi8vazN5NTJsN3FidjFmcnkxZnA0czBud2RhcmgwdmFodXNhcnBwb3NnZXZ5MHBlbWl5a3ltZDJvcmQ2c3d0aGFyY3drY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
128+
},
129+
],
130+
cryptoAccounts: [
131+
{
132+
jws: {
133+
payload: 'AXESIILyy1_0_U8dXhlxpyWOMxBDKion3W2mMbfS5WmuL-Xb',
134+
signatures: [
135+
{
136+
protected:
137+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
138+
signature:
139+
'IKbedepBBpEdE9DKx6WjCYYyFdo9mfgv422_vLlT8vusBGM-P7YiEn6t3iYHrMi-dzrnE4Lp8wY0aqhFnDuWCA',
140+
},
141+
],
142+
link: 'bafyreiec6lfv75h5j4ov4glru4sy4myqimvcuj65nwtddn6s4vu24l7f3m',
143+
},
144+
linkedBlock:
145+
'o2RkYXRho2RuYW1lb0NyeXB0byBBY2NvdW50c2ZzY2hlbWF4S2NlcmFtaWM6Ly9rM3k1Mmw3cWJ2MWZyeXB1c3NqYnVycWc0ZnlreXl5Y2Z1MHA5em5jNzVsdjJ0NWNnNHhhc2xoYWdrZDdoN21rZ2tkZXNjcmlwdGlvbngiQ3J5cHRvIGFjY291bnRzIGxpbmtlZCB0byB5b3VyIERJRGZoZWFkZXKiZnNjaGVtYXhLY2VyYW1pYzovL2szeTUybDdxYnYxZnJ5MWZwNHMwbndkYXJoMHZhaHVzYXJwcG9zZ2V2eTBwZW1peWt5bWQyb3JkNnN3dGhhcmN3a2NvbnRyb2xsZXJzgXg4ZGlkOmtleTp6Nk1rc05ZRTZXdE1aM1dMYlB3Y3A5R203ZFQ3SjNEc05QOGF1UU5uUHBRQnUzN0FnZG9jdHlwZWR0aWxl',
146+
},
147+
],
148+
threeIdKeychain: [
149+
{
150+
jws: {
151+
payload: 'AXESIGyI_q2lZeGlUOHKcp--mfAyATQxgGxLVs6czea19pDb',
152+
signatures: [
153+
{
154+
protected:
155+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
156+
signature:
157+
'Ozhsz077CUps_NHDd_8g4OD3lbysXtJQDZWTpzeBfwjZ5mqDv_uvPPYkhJuld6N0hWTSBi7y6K2iNHYlDdfqCA',
158+
},
159+
],
160+
link: 'bafyreidmrd7k3jlf4gsvbyokokp35gpqgiatimmanrfvntu4zxtll5uq3m',
161+
},
162+
linkedBlock:
163+
'o2RkYXRho2RuYW1lbDNJRCBLZXljaGFpbmZzY2hlbWF4S2NlcmFtaWM6Ly9rM3k1Mmw3cWJ2MWZyeGlvZGZvNmYyNXdvY2I4eno2MHl3cXc0c3FjcHJzMjZxeDFxeDQ2N2w0eWJ4cGx5YnZnZ2tkZXNjcmlwdGlvbnBLZXkgZGF0YSBmb3IgM0lEZmhlYWRlcqJmc2NoZW1heEtjZXJhbWljOi8vazN5NTJsN3FidjFmcnkxZnA0czBud2RhcmgwdmFodXNhcnBwb3NnZXZ5MHBlbWl5a3ltZDJvcmQ2c3d0aGFyY3drY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
164+
},
165+
],
166+
},
167+
schemas: {
168+
AlsoKnownAs: [
169+
{
170+
jws: {
171+
payload: 'AXESIALdl9Z9fNLBS6NfkZ2JRIClBQFb0cIi2rVwS1Kie2k1',
172+
signatures: [
173+
{
174+
protected:
175+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
176+
signature:
177+
'bg4CcLmHGYPYsRvl_EObk2HgtOjijDNBJrOzupI2NMT-n_3Wj4GaUn83wA2IqTtql5uZRpgBYqxOjGdH4GB6CA',
178+
},
179+
],
180+
link: 'bafyreiac3wl5m7l42lauxi27sgoysreauucqcw6ryirnvnlqjnjke63jgu',
181+
},
182+
linkedBlock:
183+
'o2RkYXRhp2R0eXBlZm9iamVjdGV0aXRsZWtBbHNvS25vd25Bc2ckc2NoZW1heCdodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSNocmVxdWlyZWSBaGFjY291bnRzanByb3BlcnRpZXOhaGFjY291bnRzomR0eXBlZWFycmF5ZWl0ZW1zoWQkcmVmdSMvZGVmaW5pdGlvbnMvQWNjb3VudGtkZWZpbml0aW9uc6JnQWNjb3VudKNkdHlwZWZvYmplY3RocmVxdWlyZWSCaHByb3RvY29sYmlkanByb3BlcnRpZXOlYmlkomR0eXBlZnN0cmluZ2ltYXhMZW5ndGgZAcJkaG9zdKJkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGJZlY2xhaW2iZHR5cGVmc3RyaW5naW1heExlbmd0aBkBwmhwcm90b2NvbKJkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGDJsYXR0ZXN0YXRpb25zomR0eXBlZWFycmF5ZWl0ZW1zoWQkcmVmeBkjL2RlZmluaXRpb25zL0F0dGVzdGF0aW9ua0F0dGVzdGF0aW9uomR0eXBlZm9iamVjdGpwcm9wZXJ0aWVzomdkaWQtand0omR0eXBlZnN0cmluZ2ltYXhMZW5ndGgZA+hqZGlkLWp3dC12Y6JkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGQPodGFkZGl0aW9uYWxQcm9wZXJ0aWVz9GZoZWFkZXKiZnNjaGVtYfdrY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
184+
},
185+
],
186+
BasicProfile: [
187+
{
188+
jws: {
189+
payload: 'AXESIMy4lYCUWSpzFW5jKQ0mYJOQ67EQnv5Exuv3F599h-et',
190+
signatures: [
191+
{
192+
protected:
193+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
194+
signature:
195+
'yeEnzWKALkvTn_X7wjgL3ldLW8I8vWANs5QZmqI6PGbU5AJl12eIuWyID-mRPuGF9flovtGNX1P-qKkc6Y8JBA',
196+
},
197+
],
198+
link: 'bafyreigmxckybfczfjzrk3tdfegsmyetsdv3cee67zcmn27xc6px3b7hvu',
199+
},
200+
linkedBlock:
201+
'o2RkYXRhpWR0eXBlZm9iamVjdGV0aXRsZWxCYXNpY1Byb2ZpbGVnJHNjaGVtYXgnaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjanByb3BlcnRpZXOsY3VybKJkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGPBkbmFtZaJkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGJZlZW1vammiZHR5cGVmc3RyaW5naW1heExlbmd0aAJlaW1hZ2WhZCRyZWZ4GiMvZGVmaW5pdGlvbnMvaW1hZ2VTb3VyY2VzZmdlbmRlcqJkdHlwZWZzdHJpbmdpbWF4TGVuZ3RoGCppYmlydGhEYXRlo2R0eXBlZnN0cmluZ2Zmb3JtYXRkZGF0ZWltYXhMZW5ndGgKamJhY2tncm91bmShZCRyZWZ4GiMvZGVmaW5pdGlvbnMvaW1hZ2VTb3VyY2Vza2Rlc2NyaXB0aW9uomR0eXBlZnN0cmluZ2ltYXhMZW5ndGgZAaRsYWZmaWxpYXRpb25zomR0eXBlZWFycmF5ZWl0ZW1zomR0eXBlZnN0cmluZ2ltYXhMZW5ndGgYjGxob21lTG9jYXRpb26iZHR5cGVmc3RyaW5naW1heExlbmd0aBiMbW5hdGlvbmFsaXRpZXOjZHR5cGVlYXJyYXllaXRlbXOjZHR5cGVmc3RyaW5nZ3BhdHRlcm5qXltBLVpdezJ9JGhtYXhJdGVtcwVobWluSXRlbXMBcHJlc2lkZW5jZUNvdW50cnmjZHR5cGVmc3RyaW5nZ3BhdHRlcm5qXltBLVpdezJ9JGltYXhMZW5ndGgCa2RlZmluaXRpb25zpGdJUEZTVXJso2R0eXBlZnN0cmluZ2dwYXR0ZXJual5pcGZzOi8vLitpbWF4TGVuZ3RoGJZsaW1hZ2VTb3VyY2Vzo2R0eXBlZm9iamVjdGhyZXF1aXJlZIFob3JpZ2luYWxqcHJvcGVydGllc6Job3JpZ2luYWyhZCRyZWZ4GyMvZGVmaW5pdGlvbnMvaW1hZ2VNZXRhZGF0YWxhbHRlcm5hdGl2ZXOiZHR5cGVlYXJyYXllaXRlbXOhZCRyZWZ4GyMvZGVmaW5pdGlvbnMvaW1hZ2VNZXRhZGF0YW1pbWFnZU1ldGFkYXRho2R0eXBlZm9iamVjdGhyZXF1aXJlZIRjc3JjaG1pbWVUeXBlZXdpZHRoZmhlaWdodGpwcm9wZXJ0aWVzpWNzcmOhZCRyZWZ1Iy9kZWZpbml0aW9ucy9JUEZTVXJsZHNpemWhZCRyZWZ4HSMvZGVmaW5pdGlvbnMvcG9zaXRpdmVJbnRlZ2VyZXdpZHRooWQkcmVmeB0jL2RlZmluaXRpb25zL3Bvc2l0aXZlSW50ZWdlcmZoZWlnaHShZCRyZWZ4HSMvZGVmaW5pdGlvbnMvcG9zaXRpdmVJbnRlZ2VyaG1pbWVUeXBlomR0eXBlZnN0cmluZ2ltYXhMZW5ndGgYMm9wb3NpdGl2ZUludGVnZXKiZHR5cGVnaW50ZWdlcmdtaW5pbXVtAWZoZWFkZXKiZnNjaGVtYfdrY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
202+
},
203+
],
204+
CryptoAccounts: [
205+
{
206+
jws: {
207+
payload: 'AXESIF-4Olz6gzTYrKPZj_7buHaUsueU-P0K67cq6kHlJphd',
208+
signatures: [
209+
{
210+
protected:
211+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
212+
signature:
213+
'WMNOLmFwYUcYg-dhzg_zkFYit2j7hdYY4_NvcRy_4q_CJmfj8WOxTeHRQ1HqdXkXVycg_Q4JmtqUG992Cdf2CA',
214+
},
215+
],
216+
link: 'bafyreic7xa5fz6udgtmkzi6zr77nxodwsszopfhy7ufoxnzk5ja6kjuylu',
217+
},
218+
linkedBlock:
219+
'o2RkYXRhpmR0eXBlZm9iamVjdGV0aXRsZXJDcnlwdG9BY2NvdW50TGlua3NnJHNjaGVtYXgnaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjbXByb3BlcnR5TmFtZXOhaW1heExlbmd0aBkEAHFwYXR0ZXJuUHJvcGVydGllc6F4OF5bYS16QS1aMC05XXsxLDYzfUBbLWEtekEtWjAtOV17MywxNn06Wy1hLXpBLVowLTldezEsNDd9o2R0eXBlZnN0cmluZ2dwYXR0ZXJubV5jZXJhbWljOi8vLitpbWF4TGVuZ3RoGQQAdGFkZGl0aW9uYWxQcm9wZXJ0aWVz9GZoZWFkZXKiZnNjaGVtYfdrY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
220+
},
221+
],
222+
ThreeIdKeychain: [
223+
{
224+
jws: {
225+
payload: 'AXESIDpfdAEsNb76jO9057sDPODcniYXUcxAdlhQXEqr4BBB',
226+
signatures: [
227+
{
228+
protected:
229+
'eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3NOWUU2V3RNWjNXTGJQd2NwOUdtN2RUN0ozRHNOUDhhdVFOblBwUUJ1MzdBI3o2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QSJ9',
230+
signature:
231+
'Zir2mHf-si2EIGZIMryci6V9hJxEHBLWesBVLzqkl5hlw0DyoBVvVpK5HN_QiozIMCbagPx2v1aLhKb_dNujDw',
232+
},
233+
],
234+
link: 'bafyreib2l52aclbvx35iz33u465qgpha3spcmf2rzrahmwcqlrfkxyaqie',
235+
},
236+
linkedBlock:
237+
'o2RkYXRhpWR0eXBlZm9iamVjdGckc2NoZW1heCdodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA3L3NjaGVtYSNqcHJvcGVydGllc6JnYXV0aE1hcKJkdHlwZWZvYmplY3R0YWRkaXRpb25hbFByb3BlcnRpZXOhZCRyZWZ2Iy9kZWZpbml0aW9ucy9BdXRoRGF0YWlwYXN0U2VlZHOiZHR5cGVlYXJyYXllaXRlbXOhZCRyZWZxIy9kZWZpbml0aW9ucy9KV0VrZGVmaW5pdGlvbnOjY0pXRaRkdHlwZWZvYmplY3RldGl0bGVjSldFaHJlcXVpcmVkhGlwcm90ZWN0ZWRiaXZqY2lwaGVydGV4dGN0YWdqcHJvcGVydGllc6ZiaXahZHR5cGVmc3RyaW5nY2FhZKFkdHlwZWZzdHJpbmdjdGFnoWR0eXBlZnN0cmluZ2lwcm90ZWN0ZWShZHR5cGVmc3RyaW5namNpcGhlcnRleHShZHR5cGVmc3RyaW5nanJlY2lwaWVudHOiZHR5cGVlYXJyYXllaXRlbXOjZHR5cGVmb2JqZWN0aHJlcXVpcmVkgmZoZWFkZXJtZW5jcnlwdGVkX2tleWpwcm9wZXJ0aWVzomZoZWFkZXKhZHR5cGVmb2JqZWN0bWVuY3J5cHRlZF9rZXmhZHR5cGVmc3RyaW5naEF1dGhEYXRho2R0eXBlZm9iamVjdGpwcm9wZXJ0aWVzo2JpZKFkJHJlZngYIy9kZWZpbml0aW9ucy9XcmFwcGVkSldFY3B1YqFkdHlwZWZzdHJpbmdkZGF0YaFkJHJlZngYIy9kZWZpbml0aW9ucy9XcmFwcGVkSldFdGFkZGl0aW9uYWxQcm9wZXJ0aWVz9GpXcmFwcGVkSldFo2R0eXBlZm9iamVjdGpwcm9wZXJ0aWVzoWNqd2WhZCRyZWZxIy9kZWZpbml0aW9ucy9KV0V0YWRkaXRpb25hbFByb3BlcnRpZXP0dGFkZGl0aW9uYWxQcm9wZXJ0aWVz9GZoZWFkZXKiZnNjaGVtYfdrY29udHJvbGxlcnOBeDhkaWQ6a2V5Ono2TWtzTllFNld0TVozV0xiUHdjcDlHbTdkVDdKM0RzTlA4YXVRTm5QcFFCdTM3QWdkb2N0eXBlZHRpbGU=',
238+
},
239+
],
240+
},
241+
tiles: {},
242+
}
+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
2+
3+
import { model } from '../src'
4+
5+
test('3box-essentials model', () => {
6+
expect(model).toEqual({
7+
schemas: {
8+
AlsoKnownAs: expect.any(Object),
9+
BasicProfile: expect.any(Object),
10+
CryptoAccounts: expect.any(Object),
11+
ThreeIdKeychain: expect.any(Object),
12+
},
13+
definitions: {
14+
alsoKnownAs: expect.any(Object),
15+
basicProfile: expect.any(Object),
16+
cryptoAccounts: expect.any(Object),
17+
threeIdKeychain: expect.any(Object),
18+
},
19+
tiles: {},
20+
})
21+
})
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"extends": "../../tsconfig.build.json",
3+
"include": ["src"]
4+
}
+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"extends": "./tsconfig.build.json",
3+
"include": ["src", "test"]
4+
}

0 commit comments

Comments
 (0)