@atcute/cbor 1.0.6 → 2.0.0
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/bytes.js +3 -3
- package/dist/bytes.js.map +1 -1
- package/dist/decode.js +2 -2
- package/dist/decode.js.map +1 -1
- package/dist/encode.js +3 -3
- package/dist/encode.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/lib/bytes.ts +3 -3
- package/lib/decode.ts +4 -3
- package/lib/encode.ts +6 -4
- package/lib/index.ts +2 -1
- package/package.json +3 -3
- package/dist/base64.d.ts +0 -2
- package/dist/base64.js +0 -72
- package/dist/base64.js.map +0 -1
- package/dist/cid-link.d.ts +0 -13
- package/dist/cid-link.js +0 -30
- package/dist/cid-link.js.map +0 -1
- package/lib/base64.ts +0 -89
- package/lib/cid-link.ts +0 -38
package/dist/bytes.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { fromBase64, toBase64 } from '@atcute/multibase';
|
|
2
2
|
export class BytesWrapper {
|
|
3
3
|
buf;
|
|
4
4
|
constructor(buf) {
|
|
5
5
|
this.buf = buf;
|
|
6
6
|
}
|
|
7
7
|
get $bytes() {
|
|
8
|
-
return
|
|
8
|
+
return toBase64(this.buf);
|
|
9
9
|
}
|
|
10
10
|
toJSON() {
|
|
11
11
|
return { $bytes: this.$bytes };
|
|
@@ -18,6 +18,6 @@ export const fromBytes = (bytes) => {
|
|
|
18
18
|
if (bytes instanceof BytesWrapper) {
|
|
19
19
|
return bytes.buf;
|
|
20
20
|
}
|
|
21
|
-
return
|
|
21
|
+
return fromBase64(bytes.$bytes);
|
|
22
22
|
};
|
|
23
23
|
//# sourceMappingURL=bytes.js.map
|
package/dist/bytes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../lib/bytes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"bytes.js","sourceRoot":"","sources":["../lib/bytes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAMzD,MAAM,OAAO,YAAY;IACL;IAAnB,YAAmB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IAAG,CAAC;IAEtC,IAAI,MAAM;QACT,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM;QACL,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;CACD;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAe,EAAS,EAAE;IACjD,OAAO,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAY,EAAc,EAAE;IACrD,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,OAAO,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC"}
|
package/dist/decode.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { CidLinkWrapper } from '@atcute/cid';
|
|
1
2
|
import { toBytes } from './bytes.js';
|
|
2
|
-
import { toCIDLink } from './cid-link.js';
|
|
3
3
|
const utf8d = new TextDecoder();
|
|
4
4
|
const readArgument = (state, info) => {
|
|
5
5
|
if (info < 24) {
|
|
@@ -59,7 +59,7 @@ const readBytes = (state, length) => {
|
|
|
59
59
|
const readCid = (state, length) => {
|
|
60
60
|
// CID bytes are prefixed with 0x00 for historical reasons, apparently.
|
|
61
61
|
const slice = state.b.subarray(state.p + 1, (state.p += length));
|
|
62
|
-
return
|
|
62
|
+
return new CidLinkWrapper(slice);
|
|
63
63
|
};
|
|
64
64
|
const readValue = (state) => {
|
|
65
65
|
const prelude = readUint8(state);
|
package/dist/decode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../lib/decode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../lib/decode.ts"],"names":[],"mappings":"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"}
|
package/dist/encode.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { CidLinkWrapper, fromString } from '@atcute/cid';
|
|
1
2
|
import { BytesWrapper, fromBytes } from './bytes.js';
|
|
2
|
-
import { CIDLinkWrapper, fromCIDLink } from './cid-link.js';
|
|
3
3
|
const CHUNK_SIZE = 1024;
|
|
4
4
|
const utf8e = new TextEncoder();
|
|
5
5
|
const resizeIfNeeded = (state, needed) => {
|
|
@@ -115,7 +115,7 @@ const writeBytes = (state, val) => {
|
|
|
115
115
|
};
|
|
116
116
|
const writeCid = (state, val) => {
|
|
117
117
|
// CID bytes are prefixed with 0x00 for historical reasons, apparently.
|
|
118
|
-
const buf =
|
|
118
|
+
const buf = val instanceof CidLinkWrapper ? val.bytes : fromString(val.$link).bytes;
|
|
119
119
|
const len = buf.byteLength + 1;
|
|
120
120
|
writeTypeAndArgument(state, 6, 42);
|
|
121
121
|
writeTypeAndArgument(state, 2, len);
|
|
@@ -153,7 +153,7 @@ const writeValue = (state, val) => {
|
|
|
153
153
|
return;
|
|
154
154
|
}
|
|
155
155
|
if ('$link' in val) {
|
|
156
|
-
if (val instanceof
|
|
156
|
+
if (val instanceof CidLinkWrapper || typeof val.$link === 'string') {
|
|
157
157
|
writeCid(state, val);
|
|
158
158
|
return;
|
|
159
159
|
}
|
package/dist/encode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"","sources":["../lib/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"","sources":["../lib/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAc,MAAM,YAAY,CAAC;AAEjE,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;AAShC,MAAM,cAAc,GAAG,CAAC,KAAY,EAAE,MAAc,EAAQ,EAAE;IAC7D,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;IACpB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;IAEpB,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,GAAG,MAAM,EAAE,CAAC;QACnC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAE1C,KAAK,CAAC,CAAC,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,KAAK,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,GAAW,EAAU,EAAE;IACvC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACd,OAAO,GAAG,CAAC;IACZ,CAAC;SAAM,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACX,CAAC;SAAM,IAAI,GAAG,GAAG,OAAO,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACX,CAAC;SAAM,IAAI,GAAG,GAAG,WAAW,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC;IACX,CAAC;SAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACxD,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACtD,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/B,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACvD,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACvD,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACvD,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;IAErB,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACnC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAE,IAAY,EAAE,GAAW,EAAQ,EAAE;IAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE1B,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAEtC,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,EAAE;YACN,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/B,KAAK,EAAE;YACN,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,KAAK,EAAE;YACN,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,KAAK,EAAE;YACN,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACxD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACb,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACP,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACtD,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAC7B,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACvD,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,UAAU,CAAC,0BAA0B,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,GAAG,GAAG,MAAM,CAAC,gBAAgB,IAAI,GAAG,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACpE,MAAM,IAAI,UAAU,CAAC,gDAAgD,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACP,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxB,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAY,EAAE,GAAW,EAAQ,EAAE;IACvD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;IAE3B,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE3B,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE1C,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,GAAU,EAAQ,EAAE;IACrD,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;IAE3B,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE3B,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/C,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAE,GAAY,EAAQ,EAAE;IACrD,uEAAuE;IAEvE,MAAM,GAAG,GAAG,GAAG,YAAY,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;IACpF,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IAE/B,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnC,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAEpC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE3B,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEvD,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,GAAQ,EAAQ,EAAE;IACnD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QACnB,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;YAEvB,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAEpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;gBACpC,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnB,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACtB,CAAC;YAED,OAAO;QACR,CAAC;QAED,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;YACpB,IAAI,GAAG,YAAY,cAAc,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACpE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACrB,OAAO;YACR,CAAC;YAED,MAAM,IAAI,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;YACrB,IAAI,GAAG,YAAY,YAAY,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACnE,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO;YACR,CAAC;YAED,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;iBAC3B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;iBAClE,IAAI,CAAC,WAAW,CAAC,CAAC;YAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;YAExB,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YAEpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;gBACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEtB,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACxB,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC;YAED,OAAO;QACR,CAAC;IACF,CAAC;IAED,MAAM,IAAI,SAAS,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAU,EAAE;IAC/B,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;IAExC,OAAO;QACN,CAAC,EAAE,EAAE;QACL,CAAC,EAAE,GAAG;QACN,CAAC,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC;QACpB,CAAC,EAAE,CAAC;KACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAU,EAAc,EAAE;IAChD,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAEvB,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzB,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,IAAI,GAAW,CAAC;IAEhB,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QAChC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC;IAChC,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAEhC,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAE1B,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACvB,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC;IAC7B,CAAC;IAED,OAAO,EAAE,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAC9B,MAAM,aAAa,GAAG,CAAC,CAAM,EAAW,EAAE;IACzC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,CAAS,EAAE,CAAS,EAAU,EAAE;IACpD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;SAAM,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,CAAC,CAAC;IACV,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;AACF,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
+
export { CidLinkWrapper, fromCidLink, toCidLink, type CidLink } from '@atcute/cid';
|
|
1
2
|
export { BytesWrapper, fromBytes, toBytes, type Bytes } from './bytes.js';
|
|
2
|
-
export { CIDLinkWrapper, fromCIDLink, toCIDLink, type CIDLink } from './cid-link.js';
|
|
3
3
|
export { decode, decodeFirst } from './decode.js';
|
|
4
4
|
export { encode } from './encode.js';
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
export { CidLinkWrapper, fromCidLink, toCidLink } from '@atcute/cid';
|
|
1
2
|
export { BytesWrapper, fromBytes, toBytes } from './bytes.js';
|
|
2
|
-
export { CIDLinkWrapper, fromCIDLink, toCIDLink } from './cid-link.js';
|
|
3
3
|
export { decode, decodeFirst } from './decode.js';
|
|
4
4
|
export { encode } from './encode.js';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAgB,MAAM,aAAa,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAc,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
package/lib/bytes.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { fromBase64, toBase64 } from '@atcute/multibase';
|
|
2
2
|
|
|
3
3
|
export interface Bytes {
|
|
4
4
|
$bytes: string;
|
|
@@ -8,7 +8,7 @@ export class BytesWrapper implements Bytes {
|
|
|
8
8
|
constructor(public buf: Uint8Array) {}
|
|
9
9
|
|
|
10
10
|
get $bytes(): string {
|
|
11
|
-
return
|
|
11
|
+
return toBase64(this.buf);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
toJSON(): Bytes {
|
|
@@ -25,5 +25,5 @@ export const fromBytes = (bytes: Bytes): Uint8Array => {
|
|
|
25
25
|
return bytes.buf;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
return
|
|
28
|
+
return fromBase64(bytes.$bytes);
|
|
29
29
|
};
|
package/lib/decode.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { CidLinkWrapper, type CidLink } from '@atcute/cid';
|
|
2
|
+
|
|
1
3
|
import { toBytes, type Bytes } from './bytes.js';
|
|
2
|
-
import { toCIDLink, type CIDLink } from './cid-link.js';
|
|
3
4
|
|
|
4
5
|
const utf8d = new TextDecoder();
|
|
5
6
|
|
|
@@ -83,11 +84,11 @@ const readBytes = (state: State, length: number): Bytes => {
|
|
|
83
84
|
return toBytes(slice);
|
|
84
85
|
};
|
|
85
86
|
|
|
86
|
-
const readCid = (state: State, length: number):
|
|
87
|
+
const readCid = (state: State, length: number): CidLink => {
|
|
87
88
|
// CID bytes are prefixed with 0x00 for historical reasons, apparently.
|
|
88
89
|
const slice = state.b.subarray(state.p + 1, (state.p += length));
|
|
89
90
|
|
|
90
|
-
return
|
|
91
|
+
return new CidLinkWrapper(slice);
|
|
91
92
|
};
|
|
92
93
|
|
|
93
94
|
const readValue = (state: State): any => {
|
package/lib/encode.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { CidLinkWrapper, fromString, type CidLink } from '@atcute/cid';
|
|
2
|
+
|
|
1
3
|
import { BytesWrapper, fromBytes, type Bytes } from './bytes.js';
|
|
2
|
-
import { CIDLinkWrapper, fromCIDLink, type CIDLink } from './cid-link.js';
|
|
3
4
|
|
|
4
5
|
const CHUNK_SIZE = 1024;
|
|
5
6
|
|
|
@@ -148,9 +149,10 @@ const writeBytes = (state: State, val: Bytes): void => {
|
|
|
148
149
|
state.p += len;
|
|
149
150
|
};
|
|
150
151
|
|
|
151
|
-
const writeCid = (state: State, val:
|
|
152
|
+
const writeCid = (state: State, val: CidLink): void => {
|
|
152
153
|
// CID bytes are prefixed with 0x00 for historical reasons, apparently.
|
|
153
|
-
|
|
154
|
+
|
|
155
|
+
const buf = val instanceof CidLinkWrapper ? val.bytes : fromString(val.$link).bytes;
|
|
154
156
|
const len = buf.byteLength + 1;
|
|
155
157
|
|
|
156
158
|
writeTypeAndArgument(state, 6, 42);
|
|
@@ -203,7 +205,7 @@ const writeValue = (state: State, val: any): void => {
|
|
|
203
205
|
}
|
|
204
206
|
|
|
205
207
|
if ('$link' in val) {
|
|
206
|
-
if (val instanceof
|
|
208
|
+
if (val instanceof CidLinkWrapper || typeof val.$link === 'string') {
|
|
207
209
|
writeCid(state, val);
|
|
208
210
|
return;
|
|
209
211
|
}
|
package/lib/index.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
export { CidLinkWrapper, fromCidLink, toCidLink, type CidLink } from '@atcute/cid';
|
|
2
|
+
|
|
1
3
|
export { BytesWrapper, fromBytes, toBytes, type Bytes } from './bytes.js';
|
|
2
|
-
export { CIDLinkWrapper, fromCIDLink, toCIDLink, type CIDLink } from './cid-link.js';
|
|
3
4
|
|
|
4
5
|
export { decode, decodeFirst } from './decode.js';
|
|
5
6
|
export { encode } from './encode.js';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@atcute/cbor",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "2.0.0",
|
|
5
5
|
"description": "DAG-CBOR codec that deals in AT Protocol's HTTP wire format",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"mitata": "^1.0.10"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@atcute/
|
|
28
|
-
"@atcute/
|
|
27
|
+
"@atcute/cid": "^2.0.0",
|
|
28
|
+
"@atcute/multibase": "^1.0.1"
|
|
29
29
|
},
|
|
30
30
|
"scripts": {
|
|
31
31
|
"build": "tsc --project tsconfig.build.json",
|
package/dist/base64.d.ts
DELETED
package/dist/base64.js
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
const BASE64_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
|
|
2
|
-
const BASE64_BITS = 6;
|
|
3
|
-
const BASE64_CODES = /*#__PURE__*/ (() => {
|
|
4
|
-
const codes = {};
|
|
5
|
-
for (let i = 0, ilen = BASE64_CHARSET.length; i < ilen; i++) {
|
|
6
|
-
codes[BASE64_CHARSET[i]] = i;
|
|
7
|
-
}
|
|
8
|
-
return codes;
|
|
9
|
-
})();
|
|
10
|
-
export const decode = (str) => {
|
|
11
|
-
// Calculate padding
|
|
12
|
-
// let end = str.length;
|
|
13
|
-
// while (str[end - 1] === '=') {
|
|
14
|
-
// --end;
|
|
15
|
-
// }
|
|
16
|
-
const end = str.length;
|
|
17
|
-
// Allocate
|
|
18
|
-
const out = new Uint8Array(((end * BASE64_BITS) / 8) | 0);
|
|
19
|
-
// Parse
|
|
20
|
-
let bits = 0; // Number of bits currently in the buffer
|
|
21
|
-
let buffer = 0; // Bits waiting to be written out, MSB first
|
|
22
|
-
let written = 0; // Next byte to write
|
|
23
|
-
for (let i = 0; i < end; ++i) {
|
|
24
|
-
// Read one character from the string:
|
|
25
|
-
const value = BASE64_CODES[str[i]];
|
|
26
|
-
if (value === undefined) {
|
|
27
|
-
throw new SyntaxError(`invalid base64 string`);
|
|
28
|
-
}
|
|
29
|
-
// Append the bits to the buffer:
|
|
30
|
-
buffer = (buffer << BASE64_BITS) | value;
|
|
31
|
-
bits += BASE64_BITS;
|
|
32
|
-
// Write out some bits if the buffer has a byte's worth:
|
|
33
|
-
if (bits >= 8) {
|
|
34
|
-
bits -= 8;
|
|
35
|
-
out[written++] = 0xff & (buffer >> bits);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
// Verify
|
|
39
|
-
if (bits >= BASE64_BITS || (0xff & (buffer << (8 - bits))) !== 0) {
|
|
40
|
-
throw new SyntaxError('unexpected end of data');
|
|
41
|
-
}
|
|
42
|
-
return out;
|
|
43
|
-
};
|
|
44
|
-
export const encode = (data) => {
|
|
45
|
-
// const pad = BASE64_CHARSET[BASE64_CHARSET.length - 1] === '=';
|
|
46
|
-
const mask = (1 << BASE64_BITS) - 1;
|
|
47
|
-
let out = '';
|
|
48
|
-
let bits = 0; // Number of bits currently in the buffer
|
|
49
|
-
let buffer = 0; // Bits waiting to be written out, MSB first
|
|
50
|
-
for (let i = 0; i < data.length; ++i) {
|
|
51
|
-
// Slurp data into the buffer:
|
|
52
|
-
buffer = (buffer << 8) | data[i];
|
|
53
|
-
bits += 8;
|
|
54
|
-
// Write out as much as we can:
|
|
55
|
-
while (bits > BASE64_BITS) {
|
|
56
|
-
bits -= BASE64_BITS;
|
|
57
|
-
out += BASE64_CHARSET[mask & (buffer >> bits)];
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
// Partial character:
|
|
61
|
-
if (bits !== 0) {
|
|
62
|
-
out += BASE64_CHARSET[mask & (buffer << (BASE64_BITS - bits))];
|
|
63
|
-
}
|
|
64
|
-
// Add padding characters until we hit a byte boundary:
|
|
65
|
-
// if (pad) {
|
|
66
|
-
// while (((out.length * BASE64_BITS) & 7) !== 0) {
|
|
67
|
-
// out += '=';
|
|
68
|
-
// }
|
|
69
|
-
// }
|
|
70
|
-
return out;
|
|
71
|
-
};
|
|
72
|
-
//# sourceMappingURL=base64.js.map
|
package/dist/base64.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base64.js","sourceRoot":"","sources":["../lib/base64.ts"],"names":[],"mappings":"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"}
|
package/dist/cid-link.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type CID } from '@atcute/cid';
|
|
2
|
-
export interface CIDLink {
|
|
3
|
-
$link: string;
|
|
4
|
-
}
|
|
5
|
-
export declare class CIDLinkWrapper implements CIDLink {
|
|
6
|
-
$bytes: Uint8Array;
|
|
7
|
-
constructor($bytes: Uint8Array);
|
|
8
|
-
get $cid(): CID;
|
|
9
|
-
get $link(): string;
|
|
10
|
-
toJSON(): CIDLink;
|
|
11
|
-
}
|
|
12
|
-
export declare const toCIDLink: (value: CID | Uint8Array) => CIDLink;
|
|
13
|
-
export declare const fromCIDLink: (link: CIDLink) => CID;
|
package/dist/cid-link.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import * as base32 from '@atcute/base32';
|
|
2
|
-
import { decode, parse } from '@atcute/cid';
|
|
3
|
-
export class CIDLinkWrapper {
|
|
4
|
-
$bytes;
|
|
5
|
-
constructor($bytes) {
|
|
6
|
-
this.$bytes = $bytes;
|
|
7
|
-
}
|
|
8
|
-
get $cid() {
|
|
9
|
-
return decode(this.$bytes);
|
|
10
|
-
}
|
|
11
|
-
get $link() {
|
|
12
|
-
return 'b' + base32.encode(this.$bytes);
|
|
13
|
-
}
|
|
14
|
-
toJSON() {
|
|
15
|
-
return { $link: this.$link };
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export const toCIDLink = (value) => {
|
|
19
|
-
if (value instanceof Uint8Array) {
|
|
20
|
-
return new CIDLinkWrapper(value);
|
|
21
|
-
}
|
|
22
|
-
return new CIDLinkWrapper(value.bytes);
|
|
23
|
-
};
|
|
24
|
-
export const fromCIDLink = (link) => {
|
|
25
|
-
if (link instanceof CIDLinkWrapper) {
|
|
26
|
-
return link.$cid;
|
|
27
|
-
}
|
|
28
|
-
return parse(link.$link);
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=cid-link.js.map
|
package/dist/cid-link.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cid-link.js","sourceRoot":"","sources":["../lib/cid-link.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAY,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMtD,MAAM,OAAO,cAAc;IACP;IAAnB,YAAmB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAEzC,IAAI,IAAI;QACP,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACL,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACD;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAuB,EAAW,EAAE;IAC7D,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QACjC,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAa,EAAO,EAAE;IACjD,IAAI,IAAI,YAAY,cAAc,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC,CAAC"}
|
package/lib/base64.ts
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
const BASE64_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
|
|
2
|
-
const BASE64_BITS = 6;
|
|
3
|
-
|
|
4
|
-
const BASE64_CODES: Record<string, number> = /*#__PURE__*/ (() => {
|
|
5
|
-
const codes: Record<string, number> = {};
|
|
6
|
-
for (let i = 0, ilen = BASE64_CHARSET.length; i < ilen; i++) {
|
|
7
|
-
codes[BASE64_CHARSET[i]] = i;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
return codes;
|
|
11
|
-
})();
|
|
12
|
-
|
|
13
|
-
export const decode = (str: string): Uint8Array => {
|
|
14
|
-
// Calculate padding
|
|
15
|
-
// let end = str.length;
|
|
16
|
-
// while (str[end - 1] === '=') {
|
|
17
|
-
// --end;
|
|
18
|
-
// }
|
|
19
|
-
|
|
20
|
-
const end = str.length;
|
|
21
|
-
|
|
22
|
-
// Allocate
|
|
23
|
-
const out = new Uint8Array(((end * BASE64_BITS) / 8) | 0);
|
|
24
|
-
|
|
25
|
-
// Parse
|
|
26
|
-
let bits = 0; // Number of bits currently in the buffer
|
|
27
|
-
let buffer = 0; // Bits waiting to be written out, MSB first
|
|
28
|
-
let written = 0; // Next byte to write
|
|
29
|
-
|
|
30
|
-
for (let i = 0; i < end; ++i) {
|
|
31
|
-
// Read one character from the string:
|
|
32
|
-
const value = BASE64_CODES[str[i]];
|
|
33
|
-
if (value === undefined) {
|
|
34
|
-
throw new SyntaxError(`invalid base64 string`);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// Append the bits to the buffer:
|
|
38
|
-
buffer = (buffer << BASE64_BITS) | value;
|
|
39
|
-
bits += BASE64_BITS;
|
|
40
|
-
|
|
41
|
-
// Write out some bits if the buffer has a byte's worth:
|
|
42
|
-
if (bits >= 8) {
|
|
43
|
-
bits -= 8;
|
|
44
|
-
out[written++] = 0xff & (buffer >> bits);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Verify
|
|
49
|
-
if (bits >= BASE64_BITS || (0xff & (buffer << (8 - bits))) !== 0) {
|
|
50
|
-
throw new SyntaxError('unexpected end of data');
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
return out;
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
export const encode = (data: Uint8Array): string => {
|
|
57
|
-
// const pad = BASE64_CHARSET[BASE64_CHARSET.length - 1] === '=';
|
|
58
|
-
const mask = (1 << BASE64_BITS) - 1;
|
|
59
|
-
let out = '';
|
|
60
|
-
|
|
61
|
-
let bits = 0; // Number of bits currently in the buffer
|
|
62
|
-
let buffer = 0; // Bits waiting to be written out, MSB first
|
|
63
|
-
|
|
64
|
-
for (let i = 0; i < data.length; ++i) {
|
|
65
|
-
// Slurp data into the buffer:
|
|
66
|
-
buffer = (buffer << 8) | data[i];
|
|
67
|
-
bits += 8;
|
|
68
|
-
|
|
69
|
-
// Write out as much as we can:
|
|
70
|
-
while (bits > BASE64_BITS) {
|
|
71
|
-
bits -= BASE64_BITS;
|
|
72
|
-
out += BASE64_CHARSET[mask & (buffer >> bits)];
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
// Partial character:
|
|
77
|
-
if (bits !== 0) {
|
|
78
|
-
out += BASE64_CHARSET[mask & (buffer << (BASE64_BITS - bits))];
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
// Add padding characters until we hit a byte boundary:
|
|
82
|
-
// if (pad) {
|
|
83
|
-
// while (((out.length * BASE64_BITS) & 7) !== 0) {
|
|
84
|
-
// out += '=';
|
|
85
|
-
// }
|
|
86
|
-
// }
|
|
87
|
-
|
|
88
|
-
return out;
|
|
89
|
-
};
|
package/lib/cid-link.ts
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import * as base32 from '@atcute/base32';
|
|
2
|
-
import { type CID, decode, parse } from '@atcute/cid';
|
|
3
|
-
|
|
4
|
-
export interface CIDLink {
|
|
5
|
-
$link: string;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export class CIDLinkWrapper implements CIDLink {
|
|
9
|
-
constructor(public $bytes: Uint8Array) {}
|
|
10
|
-
|
|
11
|
-
get $cid(): CID {
|
|
12
|
-
return decode(this.$bytes);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
get $link(): string {
|
|
16
|
-
return 'b' + base32.encode(this.$bytes);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
toJSON(): CIDLink {
|
|
20
|
-
return { $link: this.$link };
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export const toCIDLink = (value: CID | Uint8Array): CIDLink => {
|
|
25
|
-
if (value instanceof Uint8Array) {
|
|
26
|
-
return new CIDLinkWrapper(value);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return new CIDLinkWrapper(value.bytes);
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export const fromCIDLink = (link: CIDLink): CID => {
|
|
33
|
-
if (link instanceof CIDLinkWrapper) {
|
|
34
|
-
return link.$cid;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return parse(link.$link);
|
|
38
|
-
};
|