wao 0.1.4 → 0.1.6
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/esm/package.json +3 -0
- package/package.json +4 -18
- package/.babelrc-cjs +0 -5
- package/.babelrc-esm +0 -5
- package/README.md +0 -589
- package/dist/package.json +0 -36
- package/make.js +0 -23
- package/src/.cache/opt.json +0 -1
- package/src/accounts.js +0 -91
- package/src/ao.js +0 -737
- package/src/aoconnect.js +0 -318
- package/src/ar.js +0 -243
- package/src/dirname.js +0 -1
- package/src/helpers.js +0 -161
- package/src/index.js +0 -4
- package/src/lua/aos2_0_1.wasm +0 -0
- package/src/test.js +0 -94
- package/src/utils.js +0 -324
- package/test/.cache/opt.json +0 -1
- package/test/test.js +0 -50
- /package/{dist/cjs → cjs}/accounts.js +0 -0
- /package/{dist/cjs → cjs}/ao.js +0 -0
- /package/{dist/cjs → cjs}/aoconnect.js +0 -0
- /package/{dist/cjs → cjs}/ar.js +0 -0
- /package/{dist/cjs → cjs}/dirname.js +0 -0
- /package/{dist/cjs → cjs}/helpers.js +0 -0
- /package/{dist/cjs → cjs}/index.js +0 -0
- /package/{dist/cjs → cjs}/lua/aos2_0_1.wasm +0 -0
- /package/{dist/cjs → cjs}/utils.js +0 -0
- /package/{dist/esm → esm}/.cache/opt.json +0 -0
- /package/{dist/esm → esm}/accounts.js +0 -0
- /package/{dist/esm → esm}/ao.js +0 -0
- /package/{dist/esm → esm}/aoconnect.js +0 -0
- /package/{dist/esm → esm}/ar.js +0 -0
- /package/{dist/esm → esm}/dirname.js +0 -0
- /package/{dist/esm → esm}/helpers.js +0 -0
- /package/{dist/esm → esm}/index.js +0 -0
- /package/{dist/esm → esm}/lua/aos2_0_1.wasm +0 -0
- /package/{dist/esm → esm}/test.js +0 -0
- /package/{dist/esm → esm}/utils.js +0 -0
package/src/index.js
DELETED
package/src/lua/aos2_0_1.wasm
DELETED
|
Binary file
|
package/src/test.js
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { Profile, AR, AO, Collection, Notebook } from "./index.js"
|
|
2
|
-
import { expect } from "chai"
|
|
3
|
-
import { createDataItemSigner, connect } from "@permaweb/aoconnect"
|
|
4
|
-
import { resolve } from "path"
|
|
5
|
-
import { readFileSync } from "fs"
|
|
6
|
-
export class Src {
|
|
7
|
-
constructor({ ar, base = "./lua", readFileSync, dir, resolve }) {
|
|
8
|
-
this.ar = ar
|
|
9
|
-
this.base = base
|
|
10
|
-
this.dir = dir
|
|
11
|
-
}
|
|
12
|
-
async upload(file, ext = "lua") {
|
|
13
|
-
const data = readFileSync(
|
|
14
|
-
`${this.dir}/${this.base}/${file}.${ext}`,
|
|
15
|
-
ext === "wasm" ? null : "utf8",
|
|
16
|
-
)
|
|
17
|
-
const res = await this.ar.post({ data })
|
|
18
|
-
return res.err ? null : res.id
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export const setup = async ({ aoconnect, arweave } = {}) => {
|
|
23
|
-
console.error = () => {}
|
|
24
|
-
console.warn = () => {}
|
|
25
|
-
arweave ??= { port: 4000 }
|
|
26
|
-
aoconnect ??= {
|
|
27
|
-
MU_URL: "http://localhost:4002",
|
|
28
|
-
CU_URL: "http://localhost:4004",
|
|
29
|
-
GATEWAY_URL: "http://localhost:4000",
|
|
30
|
-
}
|
|
31
|
-
const dir = resolve(import.meta.dirname)
|
|
32
|
-
const thumbnail = readFileSync(`${dir}/assets/thumbnail.png`)
|
|
33
|
-
const banner = readFileSync(resolve(`${dir}/assets/banner.png`))
|
|
34
|
-
const ar = new AR(arweave)
|
|
35
|
-
await ar.gen("10")
|
|
36
|
-
const src = new Src({ ar, readFileSync, dir })
|
|
37
|
-
const notelib_src = await src.upload("atomic-note-library")
|
|
38
|
-
const registry_src = await src.upload("registry000")
|
|
39
|
-
const profile_src = await src.upload("profile000")
|
|
40
|
-
const collection_registry_src = await src.upload("collection-registry")
|
|
41
|
-
const notebook_src = await src.upload("notebook")
|
|
42
|
-
const note_src = await src.upload("atomic-note")
|
|
43
|
-
const proxy = await src.upload("proxy")
|
|
44
|
-
const wasm = await src.upload("aos-sqlite", "wasm")
|
|
45
|
-
const wasm2 = await src.upload("aos", "wasm")
|
|
46
|
-
const ao = new AO({ aoconnect, ar })
|
|
47
|
-
|
|
48
|
-
const { id: module_sqlite } = await ao.postModule({
|
|
49
|
-
data: await ar.data(wasm),
|
|
50
|
-
overwrite: true,
|
|
51
|
-
})
|
|
52
|
-
|
|
53
|
-
const { scheduler } = await ao.postScheduler({
|
|
54
|
-
url: "http://su",
|
|
55
|
-
overwrite: true,
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
const profile = new Profile({ profile_src, registry_src, ao })
|
|
59
|
-
await profile.createRegistry({})
|
|
60
|
-
const notebook = new Notebook({
|
|
61
|
-
notebook_src,
|
|
62
|
-
registry_src: collection_registry_src,
|
|
63
|
-
profile,
|
|
64
|
-
})
|
|
65
|
-
|
|
66
|
-
await notebook.createRegistry()
|
|
67
|
-
const { id: module } = await ao.postModule({ data: await ar.data(wasm2) })
|
|
68
|
-
const { pid: proxy_pid } = await ao.deploy({ src: proxy, module })
|
|
69
|
-
|
|
70
|
-
let opt = {
|
|
71
|
-
ar: { ...arweave },
|
|
72
|
-
profile: { registry_src, registry: profile.registry, profile_src },
|
|
73
|
-
ao: { module: module_sqlite, scheduler, aoconnect },
|
|
74
|
-
note: { proxy: proxy_pid, note_src, notelib_src },
|
|
75
|
-
notebook: {
|
|
76
|
-
notebook_src,
|
|
77
|
-
registry: notebook.registry,
|
|
78
|
-
registry_src: collection_registry_src,
|
|
79
|
-
},
|
|
80
|
-
}
|
|
81
|
-
return { opt, profile, ao, ar, thumbnail, banner }
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export const ok = obj => {
|
|
85
|
-
if (obj.err) console.log(obj.err)
|
|
86
|
-
expect(obj.err).to.eql(null)
|
|
87
|
-
return obj
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export const fail = obj => {
|
|
91
|
-
if (!obj.err) console.log(obj.res)
|
|
92
|
-
expect(obj.err).to.not.eql(null)
|
|
93
|
-
return obj
|
|
94
|
-
}
|
package/src/utils.js
DELETED
|
@@ -1,324 +0,0 @@
|
|
|
1
|
-
import { clone, is, includes, fromPairs, map, isNil } from "ramda"
|
|
2
|
-
|
|
3
|
-
const allows = [
|
|
4
|
-
{ key: "allowed", val: "Allowed" },
|
|
5
|
-
{ key: "disallowed", val: "Disallowed" },
|
|
6
|
-
]
|
|
7
|
-
const allowsMap = fromPairs(allows.map(({ key, val }) => [key, val]))
|
|
8
|
-
const accesses = [
|
|
9
|
-
{ key: "none", val: "None" },
|
|
10
|
-
{ key: "one-time", val: "One-Time" },
|
|
11
|
-
]
|
|
12
|
-
const accessesMap = fromPairs(accesses.map(({ key, val }) => [key, val]))
|
|
13
|
-
const payments = [
|
|
14
|
-
{ key: "single", val: "Single" },
|
|
15
|
-
{ key: "random", val: "Random" },
|
|
16
|
-
{ key: "global", val: "Global" },
|
|
17
|
-
]
|
|
18
|
-
const paymentsMap = fromPairs(payments.map(({ key, val }) => [key, val]))
|
|
19
|
-
const dTerms = [
|
|
20
|
-
{ key: "credit", val: "With Credit" },
|
|
21
|
-
{ key: "indication", val: "With Indication" },
|
|
22
|
-
{ key: "passthrough", val: "With License Passthrough" },
|
|
23
|
-
{ key: "revenue", val: "With Revenue Share" },
|
|
24
|
-
{ key: "monthly", val: "With Monthly Fee" },
|
|
25
|
-
{ key: "one-time", val: "With One-Time Fee" },
|
|
26
|
-
]
|
|
27
|
-
const dtMap = fromPairs(dTerms.map(({ key, val }) => [key, val]))
|
|
28
|
-
const cTerms = [
|
|
29
|
-
{ key: "revenue", val: "With Revenue Share" },
|
|
30
|
-
{ key: "monthly", val: "With Monthly Fee" },
|
|
31
|
-
{ key: "one-time", val: "With One-Time Fee" },
|
|
32
|
-
]
|
|
33
|
-
const ctMap = fromPairs(cTerms.map(({ key, val }) => [key, val]))
|
|
34
|
-
const tTerms = [
|
|
35
|
-
{ key: "monthly", val: "With Monthly Fee" },
|
|
36
|
-
{ key: "one-time", val: "With One-Time Fee" },
|
|
37
|
-
]
|
|
38
|
-
const ttMap = fromPairs(tTerms.map(({ key, val }) => [key, val]))
|
|
39
|
-
|
|
40
|
-
const action = value => tag("Action", value)
|
|
41
|
-
const tag = (name, value) => ({ name, value: jsonToStr(value) })
|
|
42
|
-
|
|
43
|
-
const wait = ms => new Promise(res => setTimeout(() => res(), ms))
|
|
44
|
-
|
|
45
|
-
const tags = tags => fromPairs(map(v => [v.name, v.value])(tags))
|
|
46
|
-
const ltags = tags => fromPairs(map(v => [v.name.toLowerCase(), v.value])(tags))
|
|
47
|
-
|
|
48
|
-
const validAddress = addr => /^[a-zA-Z0-9_-]{43}$/.test(addr)
|
|
49
|
-
|
|
50
|
-
const isRegExp = obj => obj instanceof RegExp
|
|
51
|
-
|
|
52
|
-
const getTag = (_tags, name) => tags(_tags)[name] ?? null
|
|
53
|
-
|
|
54
|
-
const tagEq = (tags, name, val = null) => {
|
|
55
|
-
const tag = getTag(tags, name)
|
|
56
|
-
if (val === true) {
|
|
57
|
-
return tag !== null
|
|
58
|
-
} else if (isRegExp(val)) {
|
|
59
|
-
let ok = false
|
|
60
|
-
try {
|
|
61
|
-
ok = val.test(tag)
|
|
62
|
-
} catch (e) {}
|
|
63
|
-
return ok
|
|
64
|
-
} else return tag === val
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
const searchTag = (res, name, val) => {
|
|
68
|
-
for (let v of res.Messages || []) {
|
|
69
|
-
if (tagEq(v.Tags || {}, name, val)) return v
|
|
70
|
-
}
|
|
71
|
-
return null
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const checkTag = (res, name, val) => {
|
|
75
|
-
for (let v of res.Messages || []) {
|
|
76
|
-
if (tagEq(v.Tags || {}, name, val)) return true
|
|
77
|
-
}
|
|
78
|
-
return false
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
const isData = (data, res) => {
|
|
82
|
-
for (const v of res.Messages ?? []) {
|
|
83
|
-
if (isRegExp(data)) {
|
|
84
|
-
try {
|
|
85
|
-
if (data.test(v.Data)) return true
|
|
86
|
-
} catch (e) {}
|
|
87
|
-
} else {
|
|
88
|
-
if (data === true || v.Data === data) return true
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
return false
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
const query = txid => `query {
|
|
95
|
-
transactions(ids: ["${txid}"]) {
|
|
96
|
-
edges { node { id tags { name value } owner { address } } }
|
|
97
|
-
}
|
|
98
|
-
}`
|
|
99
|
-
|
|
100
|
-
const queries = to => `query {
|
|
101
|
-
transactions (recipients: ["${to}"]){
|
|
102
|
-
edges { node { id recipient tags { name value } owner { address } } }
|
|
103
|
-
}
|
|
104
|
-
}`
|
|
105
|
-
|
|
106
|
-
const isLocalhost = v => includes(v, ["localhost", "127.0.0.1"])
|
|
107
|
-
|
|
108
|
-
const udl = ({ payment, access, derivations, commercial, training }) => {
|
|
109
|
-
let tags = {
|
|
110
|
-
License: "dE0rmDfl9_OWjkDznNEXHaSO_JohJkRolvMzaCroUdw",
|
|
111
|
-
Currency: "xU9zFkq3X2ZQ6olwNVvr1vUWIjc3kXTWr7xKQD6dh10",
|
|
112
|
-
}
|
|
113
|
-
tags["Payment-Mode"] = paymentsMap[payment.mode]
|
|
114
|
-
if (payment.mode === "single") tags["Payment-Address"] = payment.recipient
|
|
115
|
-
let _access = accessesMap[access.mode]
|
|
116
|
-
if (access.mode === "one-time") _access += "-" + access.fee
|
|
117
|
-
tags["Access-Fee"] = _access
|
|
118
|
-
|
|
119
|
-
let _derivations = allowsMap[derivations.mode]
|
|
120
|
-
if (derivations.mode === "allowed") {
|
|
121
|
-
if (derivations.term === "revenue") {
|
|
122
|
-
_derivations += `-${dtMap[derivations.term].split(" ").join("-")}-${derivations.share}`
|
|
123
|
-
} else if (
|
|
124
|
-
derivations.term === "monthly" ||
|
|
125
|
-
derivations.term === "one-time"
|
|
126
|
-
) {
|
|
127
|
-
_derivations += `-${dtMap[derivations.term].split(" ").join("-")}-${derivations.fee}`
|
|
128
|
-
} else {
|
|
129
|
-
_derivations += `-${dtMap[derivations.term].split(" ").join("-")}-0`
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
tags["Derivations"] = _derivations
|
|
133
|
-
let _commercial = allowsMap[commercial.mode]
|
|
134
|
-
if (commercial.mode === "allowed") {
|
|
135
|
-
if (commercial.term === "revenue") {
|
|
136
|
-
_commercial += `-${ctMap[commercial.term].split(" ").join("-")}-${commercial.share}`
|
|
137
|
-
} else {
|
|
138
|
-
_commercial += `-${ctMap[commercial.term].split(" ").join("-")}-${commercial.fee}`
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
tags["Commercial-Use"] = _commercial
|
|
142
|
-
let _training = allowsMap[training.mode]
|
|
143
|
-
if (training.mode === "allowed") {
|
|
144
|
-
_training += `-${ttMap[training.term].split(" ").join("-")}-${training.fee}`
|
|
145
|
-
}
|
|
146
|
-
tags["Data-Model-Training"] = _training
|
|
147
|
-
return tags
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
const modGet = get => {
|
|
151
|
-
let _get = clone(get)
|
|
152
|
-
if (is(Array, get)) {
|
|
153
|
-
_get = { obj: {} }
|
|
154
|
-
for (const v of get) {
|
|
155
|
-
if (typeof v === "string") _get.obj[v] = v
|
|
156
|
-
else if (is(Array, v)) _get.obj[v[0]] = v[1]
|
|
157
|
-
else if (is(Object, v)) for (const k in v) _get.obj[k] = v[k]
|
|
158
|
-
}
|
|
159
|
-
} else if (
|
|
160
|
-
is(Object, get) &&
|
|
161
|
-
isNil(get.data) &&
|
|
162
|
-
isNil(get.json) &&
|
|
163
|
-
isNil(get.name) &&
|
|
164
|
-
isNil(get.obj)
|
|
165
|
-
) {
|
|
166
|
-
_get = { obj: get }
|
|
167
|
-
}
|
|
168
|
-
return _get
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
const _getTagVal = (get, res) => {
|
|
172
|
-
let out = null
|
|
173
|
-
const _get = modGet(get)
|
|
174
|
-
if (typeof _get === "object" && _get.obj) {
|
|
175
|
-
out = {}
|
|
176
|
-
for (const k in _get.obj ?? {}) out[k] = _getTagVal(_get.obj[k], res)
|
|
177
|
-
} else {
|
|
178
|
-
for (const v of res.Messages ?? []) {
|
|
179
|
-
if (
|
|
180
|
-
(typeof _get === "object" && _get.data) ||
|
|
181
|
-
typeof _get === "boolean"
|
|
182
|
-
) {
|
|
183
|
-
if (v.Data) out = v.Data
|
|
184
|
-
try {
|
|
185
|
-
if (_get.json || _get === true) out = JSON.parse(out)
|
|
186
|
-
} catch (e) {}
|
|
187
|
-
} else if (typeof _get === "object" && typeof _get.name === "string") {
|
|
188
|
-
out = getTag(v.Tags ?? [], _get.name)
|
|
189
|
-
try {
|
|
190
|
-
if (_get.json) out = JSON.parse(out)
|
|
191
|
-
} catch (e) {}
|
|
192
|
-
} else out = getTag(v.Tags ?? [], _get)
|
|
193
|
-
if (out) break
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
return out
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
const getTagVal = (get, res) => {
|
|
200
|
-
const _get = modGet(get)
|
|
201
|
-
return _getTagVal(_get, res)
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
const srcs = {
|
|
205
|
-
module: "cNlipBptaF9JeFAf4wUmpi43EojNanIBos3EfNrEOWo",
|
|
206
|
-
module_sqlite: "ghSkge2sIUD_F00ym5sEimC63BDBuBrq4b5OcwxOjiw",
|
|
207
|
-
module_aos2: "Do_Uc2Sju_ffp6Ev0AnLVdPtot15rvMjP-a9VVaA5fM",
|
|
208
|
-
scheduler: "_GQ33BkPtZrqxA84vM8Zk-N2aO0toNNu_C-l-rawrBA",
|
|
209
|
-
authority: "fcoN_xJeisVsPXA-trzVAuIiqO3ydLQxM-L4XbrQKzY",
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
const buildTags = (act, tags) => {
|
|
213
|
-
let _tags = []
|
|
214
|
-
if (act) _tags.push(action(act))
|
|
215
|
-
for (const k in tags) {
|
|
216
|
-
if (is(Array)(tags[k])) for (const v of tags[k]) _tags.push(tag(k, v))
|
|
217
|
-
else _tags.push(tag(k, tags[k]))
|
|
218
|
-
}
|
|
219
|
-
return _tags
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
const mergeOut = (out, out2, get) => {
|
|
223
|
-
const _get = modGet(get)
|
|
224
|
-
if (_get.obj) {
|
|
225
|
-
for (const k in out2 ?? {}) {
|
|
226
|
-
if (isNil(out?.[k])) {
|
|
227
|
-
if (!out) out = {}
|
|
228
|
-
out[k] = out2[k]
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
return out
|
|
232
|
-
} else return out2
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
const mergeChecks = (check1, check2, check) => {
|
|
236
|
-
if (!isRegExp(check) && !includes(typeof check)(["string", "boolean"])) {
|
|
237
|
-
for (const k in check2 ?? {}) {
|
|
238
|
-
if (!check1) check1 = {}
|
|
239
|
-
check1[k] = check1[k] || check2[k]
|
|
240
|
-
}
|
|
241
|
-
return check1
|
|
242
|
-
} else return check1 || check2
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
const isOutComplete = (out, get) => {
|
|
246
|
-
if (isNil(out)) return false
|
|
247
|
-
const _get = modGet(get)
|
|
248
|
-
if (_get.obj) {
|
|
249
|
-
for (const k in out ?? {}) {
|
|
250
|
-
if (isNil(out[k])) return false
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
return true
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
const isCheckComplete = (checks, check) => {
|
|
257
|
-
let i = 0
|
|
258
|
-
for (const v of checks) {
|
|
259
|
-
if (
|
|
260
|
-
isRegExp(check[i]) ||
|
|
261
|
-
includes(typeof check[i])(["string", "boolean"])
|
|
262
|
-
) {
|
|
263
|
-
if (!v) return false
|
|
264
|
-
} else {
|
|
265
|
-
for (const k in v) {
|
|
266
|
-
if (!v[k]) return false
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
i++
|
|
270
|
-
}
|
|
271
|
-
return true
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
function isJSON(obj) {
|
|
275
|
-
if (obj === null || obj === undefined) return false
|
|
276
|
-
if (
|
|
277
|
-
typeof obj !== "object" ||
|
|
278
|
-
obj instanceof Buffer ||
|
|
279
|
-
obj instanceof ArrayBuffer ||
|
|
280
|
-
Array.isArray(obj)
|
|
281
|
-
) {
|
|
282
|
-
return false
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
try {
|
|
286
|
-
const str = JSON.stringify(obj)
|
|
287
|
-
const parsed = JSON.parse(str)
|
|
288
|
-
const isjson = typeof parsed === "object" && parsed !== null
|
|
289
|
-
return isjson ? str : false
|
|
290
|
-
} catch (e) {
|
|
291
|
-
return false
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
const jsonToStr = obj =>
|
|
296
|
-
isJSON(obj) || (is(Number, obj) ? Number(obj).toString() : obj)
|
|
297
|
-
|
|
298
|
-
export {
|
|
299
|
-
jsonToStr,
|
|
300
|
-
mergeChecks,
|
|
301
|
-
isCheckComplete,
|
|
302
|
-
mergeOut,
|
|
303
|
-
isOutComplete,
|
|
304
|
-
isRegExp,
|
|
305
|
-
buildTags,
|
|
306
|
-
srcs,
|
|
307
|
-
getTagVal,
|
|
308
|
-
isData,
|
|
309
|
-
query,
|
|
310
|
-
queries,
|
|
311
|
-
getTag,
|
|
312
|
-
tagEq,
|
|
313
|
-
searchTag,
|
|
314
|
-
checkTag,
|
|
315
|
-
validAddress,
|
|
316
|
-
ltags,
|
|
317
|
-
tags,
|
|
318
|
-
wait,
|
|
319
|
-
action,
|
|
320
|
-
tag,
|
|
321
|
-
isLocalhost,
|
|
322
|
-
udl,
|
|
323
|
-
isJSON,
|
|
324
|
-
}
|
package/test/.cache/opt.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ar":{"port":4000},"jwk":{"kty":"RSA","n":"wsyarqJvBMvXHsVbWP-Z2A8dN53UZ426QWsVTkFGk93CmsYnWFlhtFsPH75Iy1sL4holEJJI6bdbswwPK6Cp00HhhqTePxLgW6VDWdRpIMlJgSDa9PkPN7irCD0fx1Qvn0AzZHuOL3K7_SzvgjI1jcsAUjRvRiE76Pxd_X34fJWZ7H7T4YO3u4F3YHfxl0mayaKp8lggRwnnPQiAwhH63aeng20zQawG-xFwUQSGNNiD24C8SQqyWIAXZcAVUL1UWaa7FRI9_7liVUaCFv2F8Q_h47_tkf7as3tEn7mqVcMIvBg68W94k-mUbayzEBL2ataPB-T_IZ3QWFprE6ZfGsiJucFboP1XGdw2EsV7hAm57HBzN58yQgdZh0e5DvTXLF7dAEGGKcDtzuqxrqDwz4GN2nCW-T6rywtKCGv_XN2p1FGYYAVfERUoIGqd_QiGBUPhtAj4a4cpmDJI6zbzEXQ1mMW5gRNvYxGuQ9V8a_hTGusCK_nRNH0a8dWos5CJgETRuwO5ilRrVA032kSDmw72T_nwYoW2CUvVwJv-decvDrz6aHmZ8t-LWp9H32e7EepfnNYkQ3ZI1VaOdI9MxZ6tuZZ9-Tx9QCrENVOWSfz5aJDOm2cvbNaRoLe-w9oLt722Mv4REA6SsFyem4vaRhU9S5jqWF6OjF_ijyo9mHk","e":"AQAB","d":"DTW7SprszOY21xkalfk1WVPDDzW2hPQ1PIDyv60JCHd6Hi1QVzsud0DSkHxCqvmoX2OW_l3xMFo1D3oCoFqDkbYuwUb2ZFAXI1fcbp_LJkRIJgfQmVq3Z7ev733XpRiGJzY_FfIUBQ8yhNtyfYGCpLQuuCRipF6WFblhdVKA0pABkWpTW4BnagGAUywnF7OP2dscS7kirTaUdgzY0HBQMw5Ou4ig-HPeQFHhLDlSkYxaOr0q54ggaoR7MbT6LRC9wtud5bKoPip36uD-aukz11JUpvFpvqQJ-DBkibFZRfoVIk5BVwSQaHVnUZ2rwewLRlj495fVnlW5nng5OSqn2caQUUau3dWX29K7ecv0MOyedUAXux_ffiMa11wQeHijf7HXGuJAi-u25oJ9_GIpz15G_ixAvHmgG71pl0wtfVHlOsZQzji6GDUrtL5HVSP5HQ0sxYE1HZEsJo15NWe8Mw1vnO-R2afJxIYtO88j6XElyOV_InARt1zyCj3i5bYyE06YbNj7gl-28QfPHGkjFURViGtYIoWfaw5CsyXD8rjCU_9NnMpLWSVrIl7l7P7O6aEprWCKfP8t2_-X4ZvAfML6HsJswSeMWUyUPDtzRlkr-UqsbNS2h0BVn2V36PYDJIgtRCHTF7r9IVHIwO85i7zD-3dGNR5LgJhoVWqawqU","p":"5tIeYYQ0e72MnOhT0Y5o18-VGPcuIklKIr71JxFLVb-jAzw1tFoC4R1mN0-nanLoToHtbv-V3VVkkFMPQr4dYJMs1INMFVIGnQmP5XCAvTgxEWC0IAJbTZCRZYV7HG2IAaJoMI2kUio_-V8crQImnQdS6uik2SkPXt5xctkvVoOu_JuAOORGgY3lN7ZnoejqrhoQPVS_IvTqmhRcBG2L5QZkD0v3rSAUQRitiR9y7-tRuFzsvH7PL8VsQ7N1bX49xcQBGU8BXzhpeJhFjW7GiP0NPKjUmL5HwoKWY4U-MCIvwkRGzbo8f15v4gvDGfVc47-4zqfjo2y7rppCdDT5xQ","q":"2AyNExPy3c9xl8OR-CVy0cE4cxAT0lPr1YNfmedtYloQCrj0--N2P_o3KzJIaQqREG968Gb5fGfno20Efk2IKSxU8QvF3rkh1y7T6oKy3ozb6e9XYXG_vNjSojV7xXcptFGWf_UGsi7BQqHXmhX67kUrOAtchM3oR9EIgUY6yuBj3uL7n0AnmZcDnwx5JPWIn3xej6kU633m4bHf1aukdLLXI9i-ieiKuEua3i4TK65CK8zxQ84BEz2vz_FSA7CE2qIqKjwrRYPOl7OHiBZUqyLSrDHm01FHPpsATQkYzKesr3bqjmuApngaskzCacX7BIxDWxdVEFkbBPREiPpzJQ","dp":"up-QqM-3j4TGN-cwPfKimjrgFftkdZxEMKuskxXMj1wOdQMteNB-G30ls_rXJZ4abb9nNaO4i-gLExXU9OW54uecC4bM8UAM0NN2YNABhvvz0FUbzfWZ1LDanfa6f1Wf7ZJeI0OiZDx81SctjER86-GMDRpkjqBAKTg5Cd7IA28dAGjJ1zXaO816Uv1L9QDZHkM8dhobICxdso5bh8j6nwX3yNZnPrb9KVTGmmOvDoR44lNfpVfyNHGvA14Jx6mWUFwVd10FgvOdcz_KnHvAUeon1a-7lHPkmUP0TCrjCQ_bBXsmtBer6l90npNb_5T-sbXFunDMAMpdROK8cDCU8Q","dq":"PaqHcdSV073sPFc0CNIXjctK43zJS5VskQrodLNbw2DVh1n3gxYPoH840_mMNX8wnLJVMt0RhPLbaQgq6ioTHT1sGUk09zd8c0EId71KdL9b3c_U7xlakvqIVIhTha9XlgJbpLY5bQ5vVyd-tJplfzD6_wovJDDpheYiOVPkYBfgKbQ8Ad577xjtja4vvd7fWjZTf0nRkM3k4rK0ovZVAIIzaiXpbM-VGLlrwNMB4cvhU0Mx8hqQr_9BeWb189ukcAstYdS-vR68DwzNOIi3LgnIfCHaMqLWZQY09cgM7g1F-udEV9ZTaDCL3iyOqUY7ObcXWp60RvBICAf4r-hciQ","qi":"FWul7oSZaQdGa-WzHNKEDRM6PI6m8arWnzU8wEuvIxEWVdwfDvWsWEpmTdfw87dnGXezEx35hYjAWwvugmwaHB3s57keydhHyjjHZQFhKfYIKlWBnQKyWZO3RPJkohe8vZZZuDwW3v6gr_TYZoPOZ1685-FJM94TuhC8wBhsCP1Dc1vYQAO1wkzQKLxw1EI4q5iqjU2UICxkYZE_Fs0XwEZPN51uK33bsdyihfdidDrHbGyoZ3qLInBfcHPmx8hdzcUSIHoswLlsDc4S7ojtH0DpfhgrF_mElH-sUroIknKND9OJGvG5lCcso3KUXeTHs2caHt5SgZcD5G0s_4v1Tg"},"ao":{"module":"scFcvpwMp8IQErKvgqzTMRH9mvMUBke0YjrlEpAMdMs","scheduler":"Pkrt9mwwpBAiXX1tBF_rVs6BTAWsmj9smPr-o_i8BV8","aoconnect":{"local":true},"ar":{"port":4000},"authority":null},"ao2":{"module":"T2paWyXNaBOEmRbA5eNhtAHRplruIUw3e-xDKVJnwuM","scheduler":"Pkrt9mwwpBAiXX1tBF_rVs6BTAWsmj9smPr-o_i8BV8","aoconnect":{"local":true},"ar":{"port":4000},"authority":null},"authority":null,"targets":{"profile":false,"note":false,"asset":false},"modules":{"aos2":"T2paWyXNaBOEmRbA5eNhtAHRplruIUw3e-xDKVJnwuM","aos1":"5B9JSpy2_AagJSWW51dQ4Ixq3ULEBiEweaZKDtB3B90","sqlite":"scFcvpwMp8IQErKvgqzTMRH9mvMUBke0YjrlEpAMdMs"}}
|
package/test/test.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { expect } from "chai"
|
|
2
|
-
import { connect } from "../src/aoconnect.js"
|
|
3
|
-
import { AO } from "../src/index.js"
|
|
4
|
-
|
|
5
|
-
const src_data = `
|
|
6
|
-
Handlers.add( "Hello", "Hello", function (msg)
|
|
7
|
-
msg.reply({ Data = "Hello, World!" })
|
|
8
|
-
end
|
|
9
|
-
)
|
|
10
|
-
`
|
|
11
|
-
describe("WAO", function () {
|
|
12
|
-
this.timeout(0)
|
|
13
|
-
describe("Aoconnect", function () {
|
|
14
|
-
let message, dryrun, spawn, signer
|
|
15
|
-
|
|
16
|
-
before(async () => {
|
|
17
|
-
;({
|
|
18
|
-
accounts: [{ signer }],
|
|
19
|
-
spawn,
|
|
20
|
-
message,
|
|
21
|
-
dryrun,
|
|
22
|
-
} = connect())
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
it("should spawn a process send messages", async () => {
|
|
26
|
-
const pid = await spawn({ signer })
|
|
27
|
-
await message({
|
|
28
|
-
process: pid,
|
|
29
|
-
tags: [{ name: "Action", value: "Eval" }],
|
|
30
|
-
data: src_data,
|
|
31
|
-
signer,
|
|
32
|
-
})
|
|
33
|
-
const res = await dryrun({
|
|
34
|
-
process: pid,
|
|
35
|
-
tags: [{ name: "Action", value: "Hello" }],
|
|
36
|
-
signer,
|
|
37
|
-
})
|
|
38
|
-
expect(res.Messages[0].Data).to.eql("Hello, World!")
|
|
39
|
-
})
|
|
40
|
-
})
|
|
41
|
-
|
|
42
|
-
describe("SDK", function () {
|
|
43
|
-
let ao
|
|
44
|
-
before(async () => (ao = await new AO({ in_memory: true }).init()))
|
|
45
|
-
it("should spawn a process send messages", async () => {
|
|
46
|
-
const { p } = await ao.deploy({ src_data })
|
|
47
|
-
expect(await p.d("Hello")).to.eql("Hello, World!")
|
|
48
|
-
})
|
|
49
|
-
})
|
|
50
|
-
})
|
|
File without changes
|
/package/{dist/cjs → cjs}/ao.js
RENAMED
|
File without changes
|
|
File without changes
|
/package/{dist/cjs → cjs}/ar.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{dist/esm → esm}/ao.js
RENAMED
|
File without changes
|
|
File without changes
|
/package/{dist/esm → esm}/ar.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|