@kontor/kontor-sdk 1.0.0-alpha.15 → 1.0.0-alpha.16
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/cjs/exports/index.js +17 -1
- package/dist/cjs/exports/index.js.map +1 -1
- package/dist/cjs/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/exports/index.js +8 -0
- package/dist/esm/exports/index.js.map +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/exports/index.d.ts +8 -0
- package/dist/types/exports/index.d.ts.map +1 -1
- package/package.json +2 -6
- package/src/exports/index.ts +44 -0
- package/dist/src/exports/index.js +0 -11
- package/dist/src/exports/index.js.map +0 -1
- package/dist/src/exports/index.test.js +0 -10
- package/dist/src/exports/index.test.js.map +0 -1
- package/dist/src/sdk/accounts/hd-key-to-account.js +0 -20
- package/dist/src/sdk/accounts/hd-key-to-account.js.map +0 -1
- package/dist/src/sdk/accounts/mnemonic-to-account.js +0 -16
- package/dist/src/sdk/accounts/mnemonic-to-account.js.map +0 -1
- package/dist/src/sdk/accounts/mnemonic-to-account.test.js +0 -96
- package/dist/src/sdk/accounts/mnemonic-to-account.test.js.map +0 -1
- package/dist/src/sdk/accounts/private-key-to-account.js +0 -42
- package/dist/src/sdk/accounts/private-key-to-account.js.map +0 -1
- package/dist/src/sdk/accounts/to-local-account.js +0 -28
- package/dist/src/sdk/accounts/to-local-account.js.map +0 -1
- package/dist/src/sdk/accounts/types.js +0 -2
- package/dist/src/sdk/accounts/types.js.map +0 -1
- package/dist/src/sdk/accounts/utils/parse-account.js +0 -10
- package/dist/src/sdk/accounts/utils/parse-account.js.map +0 -1
- package/dist/src/sdk/accounts/utils/public-key-to-p2tr-payment.js +0 -14
- package/dist/src/sdk/accounts/utils/public-key-to-p2tr-payment.js.map +0 -1
- package/dist/src/sdk/accounts/utils/sign-psbt.js +0 -17
- package/dist/src/sdk/accounts/utils/sign-psbt.js.map +0 -1
- package/dist/src/sdk/actions/get-contract.js +0 -50
- package/dist/src/sdk/actions/get-contract.js.map +0 -1
- package/dist/src/sdk/actions/get-contract.test-d.js +0 -43
- package/dist/src/sdk/actions/get-contract.test-d.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/build-compose-query.js +0 -30
- package/dist/src/sdk/actions/kontor/public/build-compose-query.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/build-instruction-query.js +0 -45
- package/dist/src/sdk/actions/kontor/public/build-instruction-query.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/call-compose.js +0 -38
- package/dist/src/sdk/actions/kontor/public/call-compose.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/call-view.js +0 -21
- package/dist/src/sdk/actions/kontor/public/call-view.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/inspect.js +0 -20
- package/dist/src/sdk/actions/kontor/public/inspect.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/proc-contract.js +0 -54
- package/dist/src/sdk/actions/kontor/public/proc-contract.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/proc-contract.test.js +0 -47
- package/dist/src/sdk/actions/kontor/public/proc-contract.test.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/view-contract.js +0 -43
- package/dist/src/sdk/actions/kontor/public/view-contract.js.map +0 -1
- package/dist/src/sdk/actions/kontor/public/view-contract.test-d.js +0 -43
- package/dist/src/sdk/actions/kontor/public/view-contract.test-d.js.map +0 -1
- package/dist/src/sdk/actions/kontor/wallet/sign-commit.js +0 -34
- package/dist/src/sdk/actions/kontor/wallet/sign-commit.js.map +0 -1
- package/dist/src/sdk/actions/kontor/wallet/sign-reveal.js +0 -88
- package/dist/src/sdk/actions/kontor/wallet/sign-reveal.js.map +0 -1
- package/dist/src/sdk/actions/public/send-raw-transaction.js +0 -7
- package/dist/src/sdk/actions/public/send-raw-transaction.js.map +0 -1
- package/dist/src/sdk/actions/public/test-mempool-accept.js +0 -20
- package/dist/src/sdk/actions/public/test-mempool-accept.js.map +0 -1
- package/dist/src/sdk/actions/wallet/get-addresses.js +0 -20
- package/dist/src/sdk/actions/wallet/get-addresses.js.map +0 -1
- package/dist/src/sdk/actions/wallet/sign-psbt.js +0 -28
- package/dist/src/sdk/actions/wallet/sign-psbt.js.map +0 -1
- package/dist/src/sdk/chains/definitions/index.js +0 -2
- package/dist/src/sdk/chains/definitions/index.js.map +0 -1
- package/dist/src/sdk/chains/definitions/signet.js +0 -36
- package/dist/src/sdk/chains/definitions/signet.js.map +0 -1
- package/dist/src/sdk/clients/base/create-http-client.js +0 -41
- package/dist/src/sdk/clients/base/create-http-client.js.map +0 -1
- package/dist/src/sdk/clients/base/create-rpc-client.js +0 -41
- package/dist/src/sdk/clients/base/create-rpc-client.js.map +0 -1
- package/dist/src/sdk/clients/base/create-rpc-client.test.js +0 -145
- package/dist/src/sdk/clients/base/create-rpc-client.test.js.map +0 -1
- package/dist/src/sdk/clients/create-public-client.js +0 -13
- package/dist/src/sdk/clients/create-public-client.js.map +0 -1
- package/dist/src/sdk/clients/create-public-client.test.js +0 -113
- package/dist/src/sdk/clients/create-public-client.test.js.map +0 -1
- package/dist/src/sdk/clients/create-wallet-client.js +0 -14
- package/dist/src/sdk/clients/create-wallet-client.js.map +0 -1
- package/dist/src/sdk/clients/decorators/kontor/public.js +0 -19
- package/dist/src/sdk/clients/decorators/kontor/public.js.map +0 -1
- package/dist/src/sdk/clients/decorators/kontor/wallet.js +0 -13
- package/dist/src/sdk/clients/decorators/kontor/wallet.js.map +0 -1
- package/dist/src/sdk/clients/decorators/public.js +0 -9
- package/dist/src/sdk/clients/decorators/public.js.map +0 -1
- package/dist/src/sdk/clients/decorators/wallet.js +0 -9
- package/dist/src/sdk/clients/decorators/wallet.js.map +0 -1
- package/dist/src/sdk/clients/kontor/create-public-client.js +0 -14
- package/dist/src/sdk/clients/kontor/create-public-client.js.map +0 -1
- package/dist/src/sdk/clients/kontor/create-public-client.test.js +0 -44
- package/dist/src/sdk/clients/kontor/create-public-client.test.js.map +0 -1
- package/dist/src/sdk/clients/kontor/create-wallet-client.js +0 -14
- package/dist/src/sdk/clients/kontor/create-wallet-client.js.map +0 -1
- package/dist/src/sdk/clients/transports/create-http-transport.js +0 -25
- package/dist/src/sdk/clients/transports/create-http-transport.js.map +0 -1
- package/dist/src/sdk/clients/transports/create-rpc-transport.js +0 -36
- package/dist/src/sdk/clients/transports/create-rpc-transport.js.map +0 -1
- package/dist/src/sdk/clients/transports/create-rpc-transport.test.js +0 -58
- package/dist/src/sdk/clients/transports/create-rpc-transport.test.js.map +0 -1
- package/dist/src/sdk/clients/transports/custom.js +0 -14
- package/dist/src/sdk/clients/transports/custom.js.map +0 -1
- package/dist/src/sdk/clients/transports/http-rpc.js +0 -84
- package/dist/src/sdk/clients/transports/http-rpc.js.map +0 -1
- package/dist/src/sdk/clients/transports/http-rpc.test.js +0 -147
- package/dist/src/sdk/clients/transports/http-rpc.test.js.map +0 -1
- package/dist/src/sdk/clients/transports/http.js +0 -45
- package/dist/src/sdk/clients/transports/http.js.map +0 -1
- package/dist/src/sdk/contracts/wits.js +0 -26
- package/dist/src/sdk/contracts/wits.js.map +0 -1
- package/dist/src/sdk/errors/address.js +0 -13
- package/dist/src/sdk/errors/address.js.map +0 -1
- package/dist/src/sdk/errors/base.js +0 -92
- package/dist/src/sdk/errors/base.js.map +0 -1
- package/dist/src/sdk/errors/request.js +0 -100
- package/dist/src/sdk/errors/request.js.map +0 -1
- package/dist/src/sdk/errors/rpc.js +0 -30
- package/dist/src/sdk/errors/rpc.js.map +0 -1
- package/dist/src/sdk/errors/transport.js +0 -10
- package/dist/src/sdk/errors/transport.js.map +0 -1
- package/dist/src/sdk/errors/utils.js +0 -2
- package/dist/src/sdk/errors/utils.js.map +0 -1
- package/dist/src/sdk/errors/version.js +0 -2
- package/dist/src/sdk/errors/version.js.map +0 -1
- package/dist/src/sdk/errors/wit.js +0 -19
- package/dist/src/sdk/errors/wit.js.map +0 -1
- package/dist/src/sdk/test/e2e.test.js +0 -166
- package/dist/src/sdk/test/e2e.test.js.map +0 -1
- package/dist/src/sdk/types/account.js +0 -2
- package/dist/src/sdk/types/account.js.map +0 -1
- package/dist/src/sdk/types/btc-rpc.js +0 -2
- package/dist/src/sdk/types/btc-rpc.js.map +0 -1
- package/dist/src/sdk/types/chain.js +0 -2
- package/dist/src/sdk/types/chain.js.map +0 -1
- package/dist/src/sdk/types/contract.js +0 -2
- package/dist/src/sdk/types/contract.js.map +0 -1
- package/dist/src/sdk/types/contract.test-d.js +0 -35
- package/dist/src/sdk/types/contract.test-d.js.map +0 -1
- package/dist/src/sdk/types/http-schema.js +0 -73
- package/dist/src/sdk/types/http-schema.js.map +0 -1
- package/dist/src/sdk/types/http-schema.test-d.js +0 -133
- package/dist/src/sdk/types/http-schema.test-d.js.map +0 -1
- package/dist/src/sdk/types/kontor.js +0 -28
- package/dist/src/sdk/types/kontor.js.map +0 -1
- package/dist/src/sdk/types/misc.js +0 -2
- package/dist/src/sdk/types/misc.js.map +0 -1
- package/dist/src/sdk/types/rpc-schema.js +0 -2
- package/dist/src/sdk/types/rpc-schema.js.map +0 -1
- package/dist/src/sdk/types/rpc.js +0 -19
- package/dist/src/sdk/types/rpc.js.map +0 -1
- package/dist/src/sdk/types/utils.js +0 -2
- package/dist/src/sdk/types/utils.js.map +0 -1
- package/dist/src/sdk/types/wbip001.js +0 -3
- package/dist/src/sdk/types/wbip001.js.map +0 -1
- package/dist/src/sdk/utils/build-http-request.js +0 -55
- package/dist/src/sdk/utils/build-http-request.js.map +0 -1
- package/dist/src/sdk/utils/build-request.js +0 -35
- package/dist/src/sdk/utils/build-request.js.map +0 -1
- package/dist/src/sdk/utils/build-rpc-request.js +0 -84
- package/dist/src/sdk/utils/build-rpc-request.js.map +0 -1
- package/dist/src/sdk/utils/chain/defineChain.js +0 -9
- package/dist/src/sdk/utils/chain/defineChain.js.map +0 -1
- package/dist/src/sdk/utils/encoding/to-hex.js +0 -23
- package/dist/src/sdk/utils/encoding/to-hex.js.map +0 -1
- package/dist/src/sdk/utils/get-action.js +0 -27
- package/dist/src/sdk/utils/get-action.js.map +0 -1
- package/dist/src/sdk/utils/http.js +0 -137
- package/dist/src/sdk/utils/http.js.map +0 -1
- package/dist/src/sdk/utils/lru.js +0 -35
- package/dist/src/sdk/utils/lru.js.map +0 -1
- package/dist/src/sdk/utils/promise/create-batch-scheduler.js +0 -49
- package/dist/src/sdk/utils/promise/create-batch-scheduler.js.map +0 -1
- package/dist/src/sdk/utils/promise/with-dedupe.js +0 -14
- package/dist/src/sdk/utils/promise/with-dedupe.js.map +0 -1
- package/dist/src/sdk/utils/promise/with-resolvers.js +0 -10
- package/dist/src/sdk/utils/promise/with-resolvers.js.map +0 -1
- package/dist/src/sdk/utils/promise/with-retry.js +0 -25
- package/dist/src/sdk/utils/promise/with-retry.js.map +0 -1
- package/dist/src/sdk/utils/promise/with-timeout.js +0 -30
- package/dist/src/sdk/utils/promise/with-timeout.js.map +0 -1
- package/dist/src/sdk/utils/rpc/http.js +0 -86
- package/dist/src/sdk/utils/rpc/http.js.map +0 -1
- package/dist/src/sdk/utils/rpc/id.js +0 -13
- package/dist/src/sdk/utils/rpc/id.js.map +0 -1
- package/dist/src/sdk/utils/stringify.js +0 -5
- package/dist/src/sdk/utils/stringify.js.map +0 -1
- package/dist/src/sdk/utils/uid.js +0 -14
- package/dist/src/sdk/utils/uid.js.map +0 -1
- package/dist/src/sdk/utils/wait.js +0 -4
- package/dist/src/sdk/utils/wait.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/decimal.js +0 -165
- package/dist/src/sdk/utils/wit/codecs/decimal.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/enum.js +0 -104
- package/dist/src/sdk/utils/wit/codecs/enum.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/integer.js +0 -167
- package/dist/src/sdk/utils/wit/codecs/integer.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/list.js +0 -117
- package/dist/src/sdk/utils/wit/codecs/list.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/option.js +0 -91
- package/dist/src/sdk/utils/wit/codecs/option.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/string.js +0 -27
- package/dist/src/sdk/utils/wit/codecs/string.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/types.js +0 -45
- package/dist/src/sdk/utils/wit/codecs/types.js.map +0 -1
- package/dist/src/sdk/utils/wit/codecs/unit.js +0 -22
- package/dist/src/sdk/utils/wit/codecs/unit.js.map +0 -1
- package/dist/src/sdk/utils/wit/decode-function-result.js +0 -36
- package/dist/src/sdk/utils/wit/decode-function-result.js.map +0 -1
- package/dist/src/sdk/utils/wit/decode-wit-parameter.js +0 -286
- package/dist/src/sdk/utils/wit/decode-wit-parameter.js.map +0 -1
- package/dist/src/sdk/utils/wit/decode-wit-parameter.test.js +0 -75
- package/dist/src/sdk/utils/wit/decode-wit-parameter.test.js.map +0 -1
- package/dist/src/sdk/utils/wit/encode-function-data.js +0 -17
- package/dist/src/sdk/utils/wit/encode-function-data.js.map +0 -1
- package/dist/src/sdk/utils/wit/encode-function-data.test-d.js +0 -21
- package/dist/src/sdk/utils/wit/encode-function-data.test-d.js.map +0 -1
- package/dist/src/sdk/utils/wit/encode-function-data.test.js +0 -91
- package/dist/src/sdk/utils/wit/encode-function-data.test.js.map +0 -1
- package/dist/src/sdk/utils/wit/encode-wit-parameters.js +0 -250
- package/dist/src/sdk/utils/wit/encode-wit-parameters.js.map +0 -1
- package/dist/src/sdk/utils/wit/encode-wit-parameters.test.js +0 -62
- package/dist/src/sdk/utils/wit/encode-wit-parameters.test.js.map +0 -1
- package/dist/src/sdk/utils/wit/get-wit-item.js +0 -15
- package/dist/src/sdk/utils/wit/get-wit-item.js.map +0 -1
- package/dist/src/sdk/utils/wit/get-wit-item.test.js +0 -118
- package/dist/src/sdk/utils/wit/get-wit-item.test.js.map +0 -1
- package/dist/src/sdk/utils/wit/prepare-encode-function-data.js +0 -24
- package/dist/src/sdk/utils/wit/prepare-encode-function-data.js.map +0 -1
- package/dist/src/wit/error.js +0 -59
- package/dist/src/wit/error.js.map +0 -1
- package/dist/src/wit/narrow.js +0 -14
- package/dist/src/wit/narrow.js.map +0 -1
- package/dist/src/wit/regex.js +0 -6
- package/dist/src/wit/regex.js.map +0 -1
- package/dist/src/wit/register.js +0 -2
- package/dist/src/wit/register.js.map +0 -1
- package/dist/src/wit/type-utils.js +0 -2
- package/dist/src/wit/type-utils.js.map +0 -1
- package/dist/src/wit/utils.js +0 -2
- package/dist/src/wit/utils.js.map +0 -1
- package/dist/src/wit/utils.test-d.js +0 -16
- package/dist/src/wit/utils.test-d.js.map +0 -1
- package/dist/src/wit/version.js +0 -2
- package/dist/src/wit/version.js.map +0 -1
- package/dist/src/wit/wit-parser/core/errors/signature.js +0 -42
- package/dist/src/wit/wit-parser/core/errors/signature.js.map +0 -1
- package/dist/src/wit/wit-parser/core/errors/splitParameters.js +0 -18
- package/dist/src/wit/wit-parser/core/errors/splitParameters.js.map +0 -1
- package/dist/src/wit/wit-parser/core/errors/wit-parameter.js +0 -29
- package/dist/src/wit/wit-parser/core/errors/wit-parameter.js.map +0 -1
- package/dist/src/wit/wit-parser/core/records.js +0 -73
- package/dist/src/wit/wit-parser/core/records.js.map +0 -1
- package/dist/src/wit/wit-parser/core/records.test.js +0 -53
- package/dist/src/wit/wit-parser/core/records.test.js.map +0 -1
- package/dist/src/wit/wit-parser/core/signatures.js +0 -32
- package/dist/src/wit/wit-parser/core/signatures.js.map +0 -1
- package/dist/src/wit/wit-parser/core/signatures.test.js +0 -54
- package/dist/src/wit/wit-parser/core/signatures.test.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/records.js +0 -2
- package/dist/src/wit/wit-parser/core/types/records.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/records.test-d.js +0 -19
- package/dist/src/wit/wit-parser/core/types/records.test-d.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/signatures.js +0 -3
- package/dist/src/wit/wit-parser/core/types/signatures.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/signatures.test-d.js +0 -18
- package/dist/src/wit/wit-parser/core/types/signatures.test-d.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/utils.js +0 -2
- package/dist/src/wit/wit-parser/core/types/utils.js.map +0 -1
- package/dist/src/wit/wit-parser/core/types/utils.test-d.js +0 -138
- package/dist/src/wit/wit-parser/core/types/utils.test-d.js.map +0 -1
- package/dist/src/wit/wit-parser/core/utils.js +0 -212
- package/dist/src/wit/wit-parser/core/utils.js.map +0 -1
- package/dist/src/wit/wit-parser/core/utils.test.js +0 -302
- package/dist/src/wit/wit-parser/core/utils.test.js.map +0 -1
- package/dist/src/wit/wit-parser/parse-wit-parameter.js +0 -26
- package/dist/src/wit/wit-parser/parse-wit-parameter.js.map +0 -1
- package/dist/src/wit/wit-parser/parse-wit-parameter.test.js +0 -77
- package/dist/src/wit/wit-parser/parse-wit-parameter.test.js.map +0 -1
- package/dist/src/wit/wit-parser/parse-wit.js +0 -16
- package/dist/src/wit/wit-parser/parse-wit.js.map +0 -1
- package/dist/src/wit/wit-parser/parse-wit.test.js +0 -78
- package/dist/src/wit/wit-parser/parse-wit.test.js.map +0 -1
- package/dist/src/wit/wit.js +0 -2
- package/dist/src/wit/wit.js.map +0 -1
- package/dist/src/wit/wit.test.js +0 -6
- package/dist/src/wit/wit.test.js.map +0 -1
- package/dist/test/globalSetup.js +0 -14
- package/dist/test/globalSetup.js.map +0 -1
- package/dist/test/src/wits.js +0 -21
- package/dist/test/src/wits.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test } from "vitest";
|
|
2
|
-
import { getWitItem } from "./get-wit-item.js";
|
|
3
|
-
import { parseWit } from "../../../wit/wit-parser/parse-wit.js";
|
|
4
|
-
export const nativeToken = parseWit([
|
|
5
|
-
"record balance { key: string, value: decimal }",
|
|
6
|
-
"export mint: func(ctx: borrow<proc-context>, n: decimal) -> result<_, error>;",
|
|
7
|
-
"export burn: func(ctx: borrow<proc-context>, n: decimal) -> result<_, error>;",
|
|
8
|
-
"export transfer: func(ctx: borrow<proc-context>, to: string, n: decimal) -> result<_, error>;",
|
|
9
|
-
"export balance: func(ctx: borrow<view-context>, acc: string) -> option<decimal>;",
|
|
10
|
-
"export balances: func(ctx: borrow<view-context>) -> list<balance>;",
|
|
11
|
-
"export total-supply: func(ctx: borrow<view-context>) -> decimal;",
|
|
12
|
-
]);
|
|
13
|
-
describe("getWitItem", () => {
|
|
14
|
-
test("returns undefined for missing item", () => {
|
|
15
|
-
const item = getWitItem({
|
|
16
|
-
wit: nativeToken,
|
|
17
|
-
// @ts-expect-error - "does-not-exist" is not a valid WitItemName
|
|
18
|
-
name: "does-not-exist",
|
|
19
|
-
});
|
|
20
|
-
expect(item).toBeUndefined();
|
|
21
|
-
});
|
|
22
|
-
test("selects mint function by name", () => {
|
|
23
|
-
const item = getWitItem({
|
|
24
|
-
wit: nativeToken,
|
|
25
|
-
name: "mint",
|
|
26
|
-
});
|
|
27
|
-
expect(item).toStrictEqual({
|
|
28
|
-
name: "mint",
|
|
29
|
-
type: "function",
|
|
30
|
-
context: "proc",
|
|
31
|
-
inputs: [{ type: "decimal", name: "n" }],
|
|
32
|
-
outputs: [{ type: "result<_, error>" }],
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
test("selects burn function by name", () => {
|
|
36
|
-
const item = getWitItem({
|
|
37
|
-
wit: nativeToken,
|
|
38
|
-
name: "burn",
|
|
39
|
-
});
|
|
40
|
-
expect(item).toStrictEqual({
|
|
41
|
-
name: "burn",
|
|
42
|
-
type: "function",
|
|
43
|
-
context: "proc",
|
|
44
|
-
inputs: [{ type: "decimal", name: "n" }],
|
|
45
|
-
outputs: [{ type: "result<_, error>" }],
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
test("selects transfer function by name", () => {
|
|
49
|
-
const item = getWitItem({
|
|
50
|
-
wit: nativeToken,
|
|
51
|
-
name: "transfer",
|
|
52
|
-
});
|
|
53
|
-
expect(item).toStrictEqual({
|
|
54
|
-
name: "transfer",
|
|
55
|
-
type: "function",
|
|
56
|
-
context: "proc",
|
|
57
|
-
inputs: [
|
|
58
|
-
{ type: "string", name: "to" },
|
|
59
|
-
{ type: "decimal", name: "n" },
|
|
60
|
-
],
|
|
61
|
-
outputs: [{ type: "result<_, error>" }],
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
test("selects balance function by name", () => {
|
|
65
|
-
const item = getWitItem({
|
|
66
|
-
wit: nativeToken,
|
|
67
|
-
name: "balance",
|
|
68
|
-
});
|
|
69
|
-
expect(item).toStrictEqual({
|
|
70
|
-
name: "balance",
|
|
71
|
-
type: "function",
|
|
72
|
-
context: "view",
|
|
73
|
-
inputs: [{ type: "string", name: "acc" }],
|
|
74
|
-
outputs: [{ type: "option<decimal>" }],
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
test("selects balances function by name", () => {
|
|
78
|
-
const item = getWitItem({
|
|
79
|
-
wit: nativeToken,
|
|
80
|
-
name: "balances",
|
|
81
|
-
});
|
|
82
|
-
expect(item).toStrictEqual({
|
|
83
|
-
name: "balances",
|
|
84
|
-
type: "function",
|
|
85
|
-
context: "view",
|
|
86
|
-
inputs: [],
|
|
87
|
-
outputs: [
|
|
88
|
-
{
|
|
89
|
-
type: "list<tuple>",
|
|
90
|
-
components: [
|
|
91
|
-
{
|
|
92
|
-
name: "key",
|
|
93
|
-
type: "string",
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
name: "value",
|
|
97
|
-
type: "decimal",
|
|
98
|
-
},
|
|
99
|
-
],
|
|
100
|
-
},
|
|
101
|
-
],
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
test("selects total-supply function by name (kebab case)", () => {
|
|
105
|
-
const item = getWitItem({
|
|
106
|
-
wit: nativeToken,
|
|
107
|
-
name: "total-supply",
|
|
108
|
-
});
|
|
109
|
-
expect(item).toBeDefined();
|
|
110
|
-
expect(item.name).toBe("total-supply");
|
|
111
|
-
const inputs = item.inputs ?? [];
|
|
112
|
-
expect(inputs.map((p) => p.name)).toEqual([]);
|
|
113
|
-
expect(inputs.map((p) => p.type)).toEqual([]);
|
|
114
|
-
// Optional: assert output type
|
|
115
|
-
// expect((item as any).outputs?.[0]?.type).toBe("decimal");
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
//# sourceMappingURL=get-wit-item.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-wit-item.test.js","sourceRoot":"","sources":["../../../../../src/sdk/utils/wit/get-wit-item.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { getWitItem } from "./get-wit-item.js";
|
|
2
|
-
export function prepareEncodeFunctionData(parameters) {
|
|
3
|
-
// TODO: rip out args
|
|
4
|
-
const { wit: wit, functionName, args: _args, } = parameters;
|
|
5
|
-
let witItem = wit[0];
|
|
6
|
-
if (functionName) {
|
|
7
|
-
const item = getWitItem({
|
|
8
|
-
wit: wit,
|
|
9
|
-
name: functionName,
|
|
10
|
-
});
|
|
11
|
-
// if (!item) throw new WitFunctionNotFoundError(functionName, { docsPath });
|
|
12
|
-
if (!item)
|
|
13
|
-
throw new Error("TMP: WitFunctionNotFoundError");
|
|
14
|
-
witItem = item;
|
|
15
|
-
}
|
|
16
|
-
if (witItem?.type !== "function")
|
|
17
|
-
throw new Error("TMP: WitFunctionNotFoundError");
|
|
18
|
-
// throw new WitFunctionNotFoundError(undefined, { docsPath });
|
|
19
|
-
return {
|
|
20
|
-
wit: [witItem],
|
|
21
|
-
functionName: witItem.name,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=prepare-encode-function-data.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-encode-function-data.js","sourceRoot":"","sources":["../../../../../src/sdk/utils/wit/prepare-encode-function-data.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAmD/C,MAAM,UAAU,yBAAyB,CAIvC,UAAkE;IAElE,qBAAqB;IACrB,MAAM,EACJ,GAAG,EAAE,GAAG,EACR,YAAY,EACZ,IAAI,EAAE,KAAK,GACZ,GAAG,UAAiD,CAAC;IAEtD,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,UAAU,CAAC;YACtB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,YAAY;SACnB,CAAC,CAAC;QACH,6EAA6E;QAC7E,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC5D,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,EAAE,IAAI,KAAK,UAAU;QAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,+DAA+D;IAE/D,OAAO;QACL,GAAG,EAAE,CAAC,OAAO,CAAC;QACd,YAAY,EAAE,OAAO,CAAC,IAAI;KAC0C,CAAC;AACzE,CAAC"}
|
package/dist/src/wit/error.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { version } from "./version.js";
|
|
2
|
-
export class BaseError extends Error {
|
|
3
|
-
constructor(shortMessage, args = {}) {
|
|
4
|
-
const details = args.cause instanceof BaseError
|
|
5
|
-
? args.cause.details
|
|
6
|
-
: args.cause?.message
|
|
7
|
-
? args.cause.message
|
|
8
|
-
: args.details;
|
|
9
|
-
const docsPath = args.cause instanceof BaseError
|
|
10
|
-
? args.cause.docsPath || args.docsPath
|
|
11
|
-
: args.docsPath;
|
|
12
|
-
const message = [
|
|
13
|
-
shortMessage || "An error occurred.",
|
|
14
|
-
"",
|
|
15
|
-
...(args.metaMessages ? [...args.metaMessages, ""] : []),
|
|
16
|
-
...(docsPath ? [`Docs: TODO: add docs path`] : []),
|
|
17
|
-
...(details ? [`Details: ${details}`] : []),
|
|
18
|
-
`Version: kontor-sdk@${version}`,
|
|
19
|
-
].join("\n");
|
|
20
|
-
super(message);
|
|
21
|
-
Object.defineProperty(this, "details", {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
configurable: true,
|
|
24
|
-
writable: true,
|
|
25
|
-
value: void 0
|
|
26
|
-
});
|
|
27
|
-
Object.defineProperty(this, "docsPath", {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
configurable: true,
|
|
30
|
-
writable: true,
|
|
31
|
-
value: void 0
|
|
32
|
-
});
|
|
33
|
-
Object.defineProperty(this, "metaMessages", {
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: true,
|
|
36
|
-
writable: true,
|
|
37
|
-
value: void 0
|
|
38
|
-
});
|
|
39
|
-
Object.defineProperty(this, "shortMessage", {
|
|
40
|
-
enumerable: true,
|
|
41
|
-
configurable: true,
|
|
42
|
-
writable: true,
|
|
43
|
-
value: void 0
|
|
44
|
-
});
|
|
45
|
-
Object.defineProperty(this, "name", {
|
|
46
|
-
enumerable: true,
|
|
47
|
-
configurable: true,
|
|
48
|
-
writable: true,
|
|
49
|
-
value: "WitTypeError"
|
|
50
|
-
});
|
|
51
|
-
if (args.cause)
|
|
52
|
-
this.cause = args.cause;
|
|
53
|
-
this.details = details;
|
|
54
|
-
this.docsPath = docsPath;
|
|
55
|
-
this.metaMessages = args.metaMessages;
|
|
56
|
-
this.shortMessage = shortMessage;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=error.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/wit/error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AASvC,MAAM,OAAO,SAAU,SAAQ,KAAK;IAQlC,YAAY,YAAoB,EAAE,OAAsB,EAAE;QACxD,MAAM,OAAO,GACX,IAAI,CAAC,KAAK,YAAY,SAAS;YAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;YACpB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO;gBACnB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;gBACpB,CAAC,CAAC,IAAI,CAAC,OAAQ,CAAC;QACtB,MAAM,QAAQ,GACZ,IAAI,CAAC,KAAK,YAAY,SAAS;YAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;YACtC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpB,MAAM,OAAO,GAAG;YACd,YAAY,IAAI,oBAAoB;YACpC,EAAE;YACF,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,uBAAuB,OAAO,EAAE;SACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,KAAK,CAAC,OAAO,CAAC,CAAC;QA3BjB;;;;;WAAgB;QAChB;;;;;WAA8B;QAC9B;;;;;WAAoC;QACpC;;;;;WAAqB;QAEZ;;;;mBAAO,cAAc;WAAC;QAwB7B,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
|
package/dist/src/wit/narrow.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Infers embedded primitive type of any type
|
|
3
|
-
* Same as `as const` but without setting the object as readonly and without needing the user to use it.
|
|
4
|
-
*
|
|
5
|
-
* @param value - Value to infer
|
|
6
|
-
* @returns Value with embedded type inferred
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* const result = narrow(['foo', 'bar', 1])
|
|
10
|
-
*/
|
|
11
|
-
export function narrow(value) {
|
|
12
|
-
return value;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=narrow.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"narrow.js","sourceRoot":"","sources":["../../../src/wit/narrow.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAO,KAAmB;IAC9C,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/src/wit/regex.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../src/wit/regex.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAO,KAAa,EAAE,MAAc;IAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,KAAK,EAAE,MAA0B,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GACzB,sEAAsE,CAAC"}
|
package/dist/src/wit/register.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../src/wit/register.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type-utils.js","sourceRoot":"","sources":["../../../src/wit/type-utils.ts"],"names":[],"mappings":""}
|
package/dist/src/wit/utils.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/wit/utils.ts"],"names":[],"mappings":""}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { describe, test, assertType } from "vitest";
|
|
2
|
-
import { parseWit } from "./wit-parser/parse-wit.js";
|
|
3
|
-
const fibWit = parseWit([
|
|
4
|
-
"export fib: func(ctx: borrow<proc-context>, arith-address: contract-address, n: u64) -> u64;",
|
|
5
|
-
"export fib-of-sub: func(ctx: borrow<proc-context>, arith-address: contract-address, x: string, y: string) -> result<u64, error>;",
|
|
6
|
-
"export cached-values: func(ctx: borrow<view-context>) -> list<u64>;",
|
|
7
|
-
]);
|
|
8
|
-
test("IsWit", () => {
|
|
9
|
-
assertType(true);
|
|
10
|
-
});
|
|
11
|
-
describe("Function", () => {
|
|
12
|
-
test("ExtractWitFunctions", () => {
|
|
13
|
-
// todo; fill out
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
//# sourceMappingURL=utils.test-d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.test-d.js","sourceRoot":"","sources":["../../../src/wit/utils.test-d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAMpD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,MAAM,MAAM,GAAQ,QAAQ,CAAC;IAC3B,8FAA8F;IAC9F,kIAAkI;IAClI,qEAAqE;CACtE,CAAC,CAAC;AAEH,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;IACjB,UAAU,CAAuB,IAAI,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC/B,iBAAiB;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/src/wit/version.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/wit/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { BaseError } from "../../../error.js";
|
|
2
|
-
export class InvalidSignatureError extends BaseError {
|
|
3
|
-
constructor({ signature, type, }) {
|
|
4
|
-
super(`Invalid ${type} signature.`, {
|
|
5
|
-
details: signature,
|
|
6
|
-
});
|
|
7
|
-
Object.defineProperty(this, "name", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
configurable: true,
|
|
10
|
-
writable: true,
|
|
11
|
-
value: "InvalidSignatureError"
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export class UnknownSignatureError extends BaseError {
|
|
16
|
-
constructor({ signature }) {
|
|
17
|
-
super("Unknown signature.", {
|
|
18
|
-
details: signature,
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(this, "name", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
configurable: true,
|
|
23
|
-
writable: true,
|
|
24
|
-
value: "UnknownSignatureError"
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
export class InvalidRecordSignatureError extends BaseError {
|
|
29
|
-
constructor({ signature }) {
|
|
30
|
-
super("Invalid record signature.", {
|
|
31
|
-
details: signature,
|
|
32
|
-
metaMessages: ["No properties exist."],
|
|
33
|
-
});
|
|
34
|
-
Object.defineProperty(this, "name", {
|
|
35
|
-
enumerable: true,
|
|
36
|
-
configurable: true,
|
|
37
|
-
writable: true,
|
|
38
|
-
value: "InvalidStructSignatureError"
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=signature.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,OAAO,qBAAsB,SAAQ,SAAS;IAGlD,YAAY,EACV,SAAS,EACT,IAAI,GAIL;QACC,KAAK,CAAC,WAAW,IAAI,aAAa,EAAE;YAClC,OAAO,EAAE,SAAS;SACnB,CAAC,CAAC;QAXI;;;;mBAAO,uBAAuB;WAAC;IAYxC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,SAAS;IAGlD,YAAY,EAAE,SAAS,EAAyB;QAC9C,KAAK,CAAC,oBAAoB,EAAE;YAC1B,OAAO,EAAE,SAAS;SACnB,CAAC,CAAC;QALI;;;;mBAAO,uBAAuB;WAAC;IAMxC,CAAC;CACF;AAED,MAAM,OAAO,2BAA4B,SAAQ,SAAS;IAGxD,YAAY,EAAE,SAAS,EAAyB;QAC9C,KAAK,CAAC,2BAA2B,EAAE;YACjC,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,CAAC,sBAAsB,CAAC;SACvC,CAAC,CAAC;QANI;;;;mBAAO,6BAA6B;WAAC;IAO9C,CAAC;CACF"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { BaseError } from "../../../error.js";
|
|
2
|
-
export class InvalidGenericDepthError extends BaseError {
|
|
3
|
-
constructor({ current, depth }) {
|
|
4
|
-
super("Unbalanced angle brackets.", {
|
|
5
|
-
metaMessages: [
|
|
6
|
-
`"${current.trim()}" has too many ${depth > 0 ? "opening" : "closing"} brackets.`,
|
|
7
|
-
],
|
|
8
|
-
details: `Depth "${depth}"`,
|
|
9
|
-
});
|
|
10
|
-
Object.defineProperty(this, "name", {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
writable: true,
|
|
14
|
-
value: "InvalidGenericDepthError"
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=splitParameters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"splitParameters.js","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/splitParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,OAAO,wBAAyB,SAAQ,SAAS;IAGrD,YAAY,EAAE,OAAO,EAAE,KAAK,EAAsC;QAChE,KAAK,CAAC,4BAA4B,EAAE;YAClC,YAAY,EAAE;gBACZ,IAAI,OAAO,CAAC,IAAI,EAAE,kBAChB,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAC1B,YAAY;aACb;YACD,OAAO,EAAE,UAAU,KAAK,GAAG;SAC5B,CAAC,CAAC;QAVI;;;;mBAAO,0BAA0B;WAAC;IAW3C,CAAC;CACF"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { BaseError } from "../../../error.js";
|
|
2
|
-
export class InvalidWitParameterError extends BaseError {
|
|
3
|
-
constructor({ param }) {
|
|
4
|
-
super("Failed to parse Wit parameter.", {
|
|
5
|
-
details: `parseWitParameter(${JSON.stringify(param, null, 2)})`,
|
|
6
|
-
});
|
|
7
|
-
Object.defineProperty(this, "name", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
configurable: true,
|
|
10
|
-
writable: true,
|
|
11
|
-
value: "InvalidWitParameterError"
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export class WitProtectedKeywordError extends BaseError {
|
|
16
|
-
constructor({ param, name }) {
|
|
17
|
-
super("Invalid Wit parameter.", {
|
|
18
|
-
details: param,
|
|
19
|
-
metaMessages: [`"${name}" is a protected Wit keyword`],
|
|
20
|
-
});
|
|
21
|
-
Object.defineProperty(this, "name", {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
configurable: true,
|
|
24
|
-
writable: true,
|
|
25
|
-
value: "WitProtectedKeywordError"
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=wit-parameter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wit-parameter.js","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/wit-parameter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,OAAO,wBAAyB,SAAQ,SAAS;IAGrD,YAAY,EAAE,KAAK,EAA8B;QAC/C,KAAK,CAAC,gCAAgC,EAAE;YACtC,OAAO,EAAE,qBAAqB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG;SAChE,CAAC,CAAC;QALI;;;;mBAAO,0BAA0B;WAAC;IAM3C,CAAC;CACF;AACD,MAAM,OAAO,wBAAyB,SAAQ,SAAS;IAGrD,YAAY,EAAE,KAAK,EAAE,IAAI,EAAmC;QAC1D,KAAK,CAAC,wBAAwB,EAAE;YAC9B,OAAO,EAAE,KAAK;YACd,YAAY,EAAE,CAAC,IAAI,IAAI,8BAA8B,CAAC;SACvD,CAAC,CAAC;QANI;;;;mBAAO,0BAA0B;WAAC;IAO3C,CAAC;CACF"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { execTyped, isGenericRegex } from "../../regex.js";
|
|
2
|
-
import { InvalidRecordSignatureError, InvalidSignatureError, } from "./errors/signature.js";
|
|
3
|
-
import { execRecordSignature, isRecordSignature } from "./signatures.js";
|
|
4
|
-
import { parseWitParameter } from "./utils.js";
|
|
5
|
-
export function parseRecords(signatures) {
|
|
6
|
-
const shallowRecords = {};
|
|
7
|
-
const signaturesLength = signatures.length;
|
|
8
|
-
for (let i = 0; i < signaturesLength; i++) {
|
|
9
|
-
const signature = signatures[i];
|
|
10
|
-
if (!isRecordSignature(signature))
|
|
11
|
-
continue;
|
|
12
|
-
const match = execRecordSignature(signature);
|
|
13
|
-
if (!match)
|
|
14
|
-
throw new InvalidSignatureError({ signature, type: "record" });
|
|
15
|
-
const properties = match.properties.split(",");
|
|
16
|
-
const components = [];
|
|
17
|
-
const propertiesLength = properties.length;
|
|
18
|
-
for (let k = 0; k < propertiesLength; k++) {
|
|
19
|
-
const property = properties[k];
|
|
20
|
-
const trimmed = property.trim();
|
|
21
|
-
if (!trimmed)
|
|
22
|
-
continue;
|
|
23
|
-
const witParameter = parseWitParameter(trimmed, {
|
|
24
|
-
type: "record",
|
|
25
|
-
});
|
|
26
|
-
components.push(witParameter);
|
|
27
|
-
}
|
|
28
|
-
if (!components.length)
|
|
29
|
-
throw new InvalidRecordSignatureError({ signature });
|
|
30
|
-
shallowRecords[match.name] = components;
|
|
31
|
-
}
|
|
32
|
-
const resolvedRecords = {};
|
|
33
|
-
const entries = Object.entries(shallowRecords);
|
|
34
|
-
const entriesLength = entries.length;
|
|
35
|
-
for (let i = 0; i < entriesLength; i++) {
|
|
36
|
-
const [name, parameters] = entries[i];
|
|
37
|
-
resolvedRecords[name] = resolveRecords(parameters, shallowRecords);
|
|
38
|
-
}
|
|
39
|
-
return resolvedRecords;
|
|
40
|
-
}
|
|
41
|
-
// TODO: move?
|
|
42
|
-
// e.g. "list<u8>", "option<signer>", "result<integer, error>", "borrow<proc-context>"
|
|
43
|
-
export function isGeneric(type) {
|
|
44
|
-
return isGenericRegex.test(type.trim());
|
|
45
|
-
}
|
|
46
|
-
// e.g. "string", "list<u8>", "option<signer>", "result<integer, error>", "borrow<proc-context>"
|
|
47
|
-
const witTypeRegex = /^(?:(?<wrapper>borrow|own)\s*<\s*)?(?<base>[a-zA-Z$_][a-zA-Z0-9$_-]*)(?:\s*<(?<inner>[\s\S]+)>)?\s*(?:>)?$/;
|
|
48
|
-
function resolveRecords(witParameters, records, ancestors = new Set()) {
|
|
49
|
-
const components = [];
|
|
50
|
-
for (const witParameter of witParameters) {
|
|
51
|
-
const m = execTyped(witTypeRegex, witParameter.type);
|
|
52
|
-
// TODO: add custom error
|
|
53
|
-
if (!m?.base)
|
|
54
|
-
throw new Error(`Invalid WIT type: ${witParameter.type}`);
|
|
55
|
-
const base = m.base;
|
|
56
|
-
// If it's a named record, expand it into a tuple of its fields.
|
|
57
|
-
if (base in records) {
|
|
58
|
-
// TODO: add custom error
|
|
59
|
-
if (ancestors.has(base))
|
|
60
|
-
throw new Error("Circular reference detected.");
|
|
61
|
-
components.push({
|
|
62
|
-
...witParameter,
|
|
63
|
-
type: "tuple", // normalize records -> tuple
|
|
64
|
-
components: resolveRecords(records[base] ?? [], records, new Set([...ancestors, base])),
|
|
65
|
-
});
|
|
66
|
-
continue;
|
|
67
|
-
}
|
|
68
|
-
// Otherwise, just pass it through (builtins, generics, etc.)
|
|
69
|
-
components.push(witParameter);
|
|
70
|
-
}
|
|
71
|
-
return components;
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=records.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"records.js","sourceRoot":"","sources":["../../../../../src/wit/wit-parser/core/records.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { expect, test } from "vitest";
|
|
2
|
-
import { parseRecords } from "./records.js";
|
|
3
|
-
test("parse records", () => {
|
|
4
|
-
expect(parseRecords([
|
|
5
|
-
"record contract-address { name: string, height: s64, tx-index: s64 }",
|
|
6
|
-
"record token-pair { a: contract-address, b: contract-address }",
|
|
7
|
-
])).toEqual({
|
|
8
|
-
"contract-address": [
|
|
9
|
-
{ name: "name", type: "string" },
|
|
10
|
-
{ name: "height", type: "s64" },
|
|
11
|
-
{ name: "tx-index", type: "s64" },
|
|
12
|
-
],
|
|
13
|
-
"token-pair": [
|
|
14
|
-
{
|
|
15
|
-
type: "tuple",
|
|
16
|
-
name: "a",
|
|
17
|
-
components: [
|
|
18
|
-
{ name: "name", type: "string" },
|
|
19
|
-
{ name: "height", type: "s64" },
|
|
20
|
-
{ name: "tx-index", type: "s64" },
|
|
21
|
-
],
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
type: "tuple",
|
|
25
|
-
name: "b",
|
|
26
|
-
components: [
|
|
27
|
-
{ name: "name", type: "string" },
|
|
28
|
-
{ name: "height", type: "s64" },
|
|
29
|
-
{ name: "tx-index", type: "s64" },
|
|
30
|
-
],
|
|
31
|
-
},
|
|
32
|
-
],
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
test("generic", () => {
|
|
36
|
-
expect(parseRecords(["record generic { values: list<string> }"])).toEqual({
|
|
37
|
-
generic: [{ name: "values", type: "list<string>" }],
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
test("generic", () => {
|
|
41
|
-
expect(parseRecords([
|
|
42
|
-
"record contract-address { name: string, height: s64, tx-index: s64 }",
|
|
43
|
-
"record generic { values: list<contract-address> }",
|
|
44
|
-
])).toEqual({
|
|
45
|
-
"contract-address": [
|
|
46
|
-
{ type: "string", name: "name" },
|
|
47
|
-
{ type: "s64", name: "height" },
|
|
48
|
-
{ type: "s64", name: "tx-index" },
|
|
49
|
-
],
|
|
50
|
-
generic: [{ name: "values", type: "list<contract-address>" }],
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
//# sourceMappingURL=records.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"records.test.js","sourceRoot":"","sources":["../../../../../src/wit/wit-parser/core/records.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;IACzB,MAAM,CACJ,YAAY,CAAC;QACX,uEAAuE;QACvE,iEAAiE;KAClE,CAAC,CACH,CAAC,OAAO,CAAC;QACR,kBAAkB,EAAE;YAClB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;YAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;YAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE;SAClC;QACD,YAAY,EAAE;YACZ;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;oBAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE;iBAClC;aACF;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;oBAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE;iBAClC;aACF;SACF;KACF,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACnB,MAAM,CAAC,YAAY,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACzE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;KACpD,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACnB,MAAM,CACJ,YAAY,CAAC;QACX,uEAAuE;QACvE,oDAAoD;KACrD,CAAC,CACH,CAAC,OAAO,CAAC;QACR,kBAAkB,EAAE;YAClB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;YAChC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC/B,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;SAClC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;KAC9D,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { execTyped } from "../../regex.js";
|
|
2
|
-
const errorSignatureRegex = /^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;
|
|
3
|
-
export function isErrorSignature(signature) {
|
|
4
|
-
return errorSignatureRegex.test(signature);
|
|
5
|
-
}
|
|
6
|
-
export function execErrorSignature(signature) {
|
|
7
|
-
return execTyped(errorSignatureRegex, signature);
|
|
8
|
-
}
|
|
9
|
-
const witFnSignatureRegex = /^export\s+(?<name>[a-z][a-z0-9-]*)\s*:\s*func\s*\(\s*ctx\s*:\s*borrow<(?<ctx>proc-context|view-context|core-context)>\s*(?:,\s*(?<rest>.*?))?\)\s*(?:->\s*(?<returns>[^;]+))?;\s*$/;
|
|
10
|
-
export function isFunctionSignature(signature) {
|
|
11
|
-
return witFnSignatureRegex.test(signature);
|
|
12
|
-
}
|
|
13
|
-
export function execFunctionSignature(signature) {
|
|
14
|
-
const m = witFnSignatureRegex.exec(signature);
|
|
15
|
-
if (!m || !m.groups)
|
|
16
|
-
return null;
|
|
17
|
-
const name = m.groups.name;
|
|
18
|
-
const ctx = m.groups.ctx;
|
|
19
|
-
const type = ctx === "proc-context" ? "proc" : ctx == "view-context" ? "view" : "core";
|
|
20
|
-
const rest = (m.groups.rest ?? "").trim();
|
|
21
|
-
const parameters = rest.length > 0 ? `ctx: borrow<${ctx}>, ${rest}` : `ctx: borrow<${ctx}>`;
|
|
22
|
-
const returns = (m.groups.returns ?? "").trim() || undefined;
|
|
23
|
-
return { name, type, parameters, returns };
|
|
24
|
-
}
|
|
25
|
-
const witRecordSignatureRegex = /^record\s+(?<name>[a-zA-Z$_][a-zA-Z0-9$_-]*)\s*\{(?<properties>[\s\S]*?)\}$/;
|
|
26
|
-
export function isRecordSignature(signature) {
|
|
27
|
-
return witRecordSignatureRegex.test(signature);
|
|
28
|
-
}
|
|
29
|
-
export function execRecordSignature(signature) {
|
|
30
|
-
return execTyped(witRecordSignatureRegex, signature);
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=signatures.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signatures.js","sourceRoot":"","sources":["../../../../../src/wit/wit-parser/core/signatures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,mBAAmB,GACvB,iEAAiE,CAAC;AACpE,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,OAAO,SAAS,CACd,mBAAmB,EACnB,SAAS,CACV,CAAC;AACJ,CAAC;AAED,MAAM,mBAAmB,GACvB,oLAAoL,CAAC;AAEvL,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,OAAO,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEjC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAK,CAAC;IAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,GAAuD,CAAC;IAC7E,MAAM,IAAI,GACR,GAAG,KAAK,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAE5E,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1C,MAAM,UAAU,GACd,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,eAAe,GAAG,GAAG,CAAC;IAE3E,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IAE7D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,uBAAuB,GAC3B,6EAA6E,CAAC;AAEhF,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IACjD,OAAO,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,OAAO,SAAS,CAGb,uBAAuB,EAAE,SAAS,CAAC,CAAC;AACzC,CAAC"}
|