@n8n/imap 0.26.0 → 0.27.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/index.js CHANGED
@@ -14,7 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./imap-simple"), exports);
17
+ exports.parseHeaders = void 0;
18
18
  __exportStar(require("./connection-options"), exports);
19
+ __exportStar(require("./imap-simple"), exports);
19
20
  __exportStar(require("./errors"), exports);
21
+ var headers_1 = require("./headers");
22
+ Object.defineProperty(exports, "parseHeaders", { enumerable: true, get: function () { return headers_1.parseHeaders; } });
20
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,gDAA8B;AAC9B,uDAAqC;AACrC,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AASA,uDAAqC;AACrC,gDAA8B;AAC9B,2CAAyB;AACzB,qCAAyC;AAAhC,uGAAA,YAAY,OAAA"}
package/dist/message.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import type { MessagePart } from './types';
2
- export declare function getParts(struct: unknown, parts?: MessagePart[]): MessagePart[];
3
- export declare const bodyPart: (parts: MessagePart[], subtype: string) => MessagePart | undefined;
4
- export declare const attachmentParts: (parts: MessagePart[]) => MessagePart[];
1
+ import type { MessageStructureObject } from 'imapflow';
2
+ export declare function bodyPartID(structure: MessageStructureObject, subtype: string): string | undefined;
3
+ export declare function attachmentPartIDs(structure: MessageStructureObject): string[];
package/dist/message.js CHANGED
@@ -1,21 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.attachmentParts = exports.bodyPart = void 0;
4
- exports.getParts = getParts;
5
- function getParts(struct, parts = []) {
6
- if (!Array.isArray(struct))
7
- return parts;
8
- for (const entry of struct) {
9
- if (Array.isArray(entry))
10
- getParts(entry, parts);
11
- else if (entry !== null && typeof entry === 'object' && 'partID' in entry) {
12
- parts.push(entry);
13
- }
3
+ exports.bodyPartID = bodyPartID;
4
+ exports.attachmentPartIDs = attachmentPartIDs;
5
+ const partIDOf = (node) => node.part ?? '1';
6
+ const comparePartIDs = (a, b) => {
7
+ const left = a.split('.');
8
+ const right = b.split('.');
9
+ for (let i = 0; i < Math.max(left.length, right.length); i++) {
10
+ const difference = Number(left[i] ?? 0) - Number(right[i] ?? 0);
11
+ if (difference !== 0)
12
+ return difference;
14
13
  }
15
- return parts;
14
+ return 0;
15
+ };
16
+ const fetchableParts = (structure) => {
17
+ const collect = (node) => {
18
+ const [type = '', subtype = ''] = (node.type ?? '').split('/');
19
+ if (type === 'multipart')
20
+ return (node.childNodes ?? []).flatMap(collect);
21
+ return subtype ? [node] : [];
22
+ };
23
+ return collect(structure).sort((a, b) => comparePartIDs(partIDOf(a), partIDOf(b)));
24
+ };
25
+ function bodyPartID(structure, subtype) {
26
+ const wanted = `text/${subtype.toLowerCase()}`;
27
+ const part = fetchableParts(structure).find((node) => node.type?.toLowerCase() === wanted);
28
+ return part && partIDOf(part);
29
+ }
30
+ function attachmentPartIDs(structure) {
31
+ return fetchableParts(structure)
32
+ .filter((node) => node.disposition?.toLowerCase() === 'attachment')
33
+ .map(partIDOf);
16
34
  }
17
- const bodyPart = (parts, subtype) => parts.find((part) => part.type?.toUpperCase() === 'TEXT' && part.subtype?.toUpperCase() === subtype.toUpperCase());
18
- exports.bodyPart = bodyPart;
19
- const attachmentParts = (parts) => parts.filter((part) => part.disposition?.type?.toUpperCase() === 'ATTACHMENT');
20
- exports.attachmentParts = attachmentParts;
21
35
  //# sourceMappingURL=message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":";;;;AAGA,kBAAyB,MAAe,EAAE,KAAK,GAAkB,EAAE;IAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aAC5C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC3E,KAAK,CAAC,IAAI,CAAC,KAAoB,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAEM,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,OAAe,EAA2B,EAAE,CAC1F,KAAK,CAAC,IAAI,CACT,CAAC,IAAI,EAAE,EAAE,CACR,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAC7F,CAAC;AAJU,QAAA,QAAQ,GAAR,QAAQ,CAIlB;AAEI,MAAM,eAAe,GAAG,CAAC,KAAoB,EAAiB,EAAE,CACtE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,YAAY,CAAC,CAAC;AADnE,QAAA,eAAe,GAAf,eAAe,CACoD"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":";;;;AAGA,MAAM,QAAQ,GAAG,CAAC,IAA4B,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;AAEpE,MAAM,cAAc,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;IAC/C,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,IAAI,UAAU,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;IACzC,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AASF,MAAM,cAAc,GAAG,CAAC,SAAiC,EAA4B,EAAE;IACtF,MAAM,OAAO,GAAG,CAAC,IAA4B,EAA4B,EAAE;QAC1E,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE/D,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAG1E,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC,CAAC;AAGF,oBAA2B,SAAiC,EAAE,OAAe;IAC5E,MAAM,MAAM,GAAG,QAAQ,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;IAE3F,OAAO,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,2BAAkC,SAAiC;IAClE,OAAO,cAAc,CAAC,SAAS,CAAC;SAC9B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,YAAY,CAAC;SAClE,GAAG,CAAC,QAAQ,CAAC,CAAC;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,31 +1,26 @@
1
1
  {
2
2
  "name": "@n8n/imap",
3
- "version": "0.26.0",
3
+ "version": "0.27.0",
4
4
  "main": "dist/index.js",
5
5
  "module": "src/index.ts",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": [
8
8
  "dist/**/*",
9
- "LICENSE.md",
10
- "LICENSE_EE.md"
9
+ "LICENSE_EE.md",
10
+ "LICENSE.md"
11
11
  ],
12
12
  "dependencies": {
13
13
  "@n8n/utils": "1.48.0",
14
- "iconv-lite": "0.6.3",
15
- "imap": "0.8.19",
16
- "quoted-printable": "1.0.1",
17
- "utf8": "3.0.0"
14
+ "imapflow": "1.7.1",
15
+ "libmime": "5.4.2"
18
16
  },
19
17
  "devDependencies": {
20
18
  "@n8n/typescript-config": "1.12.0",
21
19
  "@n8n/vitest-config": "1.22.0",
22
- "@types/imap": "^0.8.40",
23
- "@types/quoted-printable": "^1.0.2",
24
- "@types/utf8": "^3.0.3",
20
+ "@types/libmime": "^5.3.0",
25
21
  "typescript": "7.0.2",
26
22
  "vite": "^8.0.2",
27
- "vitest": "^4.1.9",
28
- "vitest-mock-extended": "^3.1.0"
23
+ "vitest": "^4.1.9"
29
24
  },
30
25
  "license": "SEE LICENSE IN LICENSE.md",
31
26
  "homepage": "https://n8n.io",
@@ -1,3 +0,0 @@
1
- import { type ImapMessage } from 'imap';
2
- import type { Message } from '../types';
3
- export declare function getMessage(message: ImapMessage): Promise<Message>;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMessage = getMessage;
4
- const imap_1 = require("imap");
5
- async function getMessage(message) {
6
- return await new Promise((resolve, reject) => {
7
- let attributes;
8
- const parts = [];
9
- const messageOnBody = (stream, info) => {
10
- let body = '';
11
- const streamOnData = (chunk) => {
12
- body += chunk.toString('utf8');
13
- };
14
- stream.on('data', streamOnData);
15
- stream.once('end', () => {
16
- stream.removeListener('data', streamOnData);
17
- parts.push({
18
- which: info.which,
19
- size: info.size,
20
- body: /^HEADER/g.test(info.which) ? (0, imap_1.parseHeader)(body) : body,
21
- });
22
- });
23
- stream.on('error', reject);
24
- };
25
- const messageOnAttributes = (attrs) => {
26
- attributes = attrs;
27
- };
28
- const messageOnEnd = () => {
29
- message.removeListener('body', messageOnBody);
30
- message.removeListener('attributes', messageOnAttributes);
31
- message.removeListener('error', reject);
32
- resolve({ attributes, parts });
33
- };
34
- message.on('body', messageOnBody);
35
- message.once('attributes', messageOnAttributes);
36
- message.once('end', messageOnEnd);
37
- message.once('error', reject);
38
- });
39
- }
40
- //# sourceMappingURL=get-message.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-message.js","sourceRoot":"","sources":["../../src/helpers/get-message.ts"],"names":[],"mappings":";;;AAAA,+BAKc;AAOP,KAAK,qBAEX,OAAoB;IAEpB,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5C,IAAI,UAAiC,CAAC;QACtC,MAAM,KAAK,GAAsB,EAAE,CAAC;QAEpC,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,IAAyB,EAAE,EAAE;YAClF,IAAI,IAAI,GAAW,EAAE,CAAC;YAEtB,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;gBACtC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;gBACvB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAE5C,KAAK,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;iBAC5D,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC;QAEF,MAAM,mBAAmB,GAAG,CAAC,KAA4B,EAAE,EAAE;YAC5D,UAAU,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,GAAG,EAAE;YACzB,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAC9C,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;YAC1D,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACxC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -1,24 +0,0 @@
1
- export declare abstract class PartData {
2
- readonly buffer: Buffer;
3
- constructor(buffer: Buffer);
4
- toString(): string;
5
- static fromData(data: string, encoding: string, charset?: string): PartData;
6
- }
7
- export declare class Base64PartData extends PartData {
8
- constructor(data: string);
9
- }
10
- export declare class QuotedPrintablePartData extends PartData {
11
- constructor(data: string, charset?: string);
12
- }
13
- export declare class SevenBitPartData extends PartData {
14
- constructor(data: string);
15
- toString(): string;
16
- }
17
- export declare class BinaryPartData extends PartData {
18
- readonly charset: string;
19
- constructor(data: string, charset?: string);
20
- toString(): string;
21
- }
22
- export declare class UuencodedPartData extends PartData {
23
- constructor(data: string);
24
- }
package/dist/part-data.js DELETED
@@ -1,116 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.UuencodedPartData = exports.BinaryPartData = exports.SevenBitPartData = exports.QuotedPrintablePartData = exports.Base64PartData = exports.PartData = void 0;
37
- const iconvlite = __importStar(require("iconv-lite"));
38
- const qp = __importStar(require("quoted-printable"));
39
- const utf8 = __importStar(require("utf8"));
40
- const uudecode_1 = require("./uudecode");
41
- const asUtf8 = (decoded) => {
42
- try {
43
- return utf8.decode(decoded);
44
- }
45
- catch {
46
- return decoded;
47
- }
48
- };
49
- class PartData {
50
- constructor(buffer) {
51
- this.buffer = buffer;
52
- }
53
- toString() {
54
- return this.buffer.toString();
55
- }
56
- static fromData(data, encoding, charset) {
57
- if (encoding === 'BASE64') {
58
- return new Base64PartData(data);
59
- }
60
- if (encoding === 'QUOTED-PRINTABLE') {
61
- return new QuotedPrintablePartData(data, charset);
62
- }
63
- if (encoding === '7BIT') {
64
- return new SevenBitPartData(data);
65
- }
66
- if (encoding === '8BIT' || encoding === 'BINARY') {
67
- return new BinaryPartData(data, charset);
68
- }
69
- if (encoding === 'UUENCODE') {
70
- return new UuencodedPartData(data);
71
- }
72
- throw new Error('Unknown encoding ' + encoding);
73
- }
74
- }
75
- exports.PartData = PartData;
76
- class Base64PartData extends PartData {
77
- constructor(data) {
78
- super(Buffer.from(data, 'base64'));
79
- }
80
- }
81
- exports.Base64PartData = Base64PartData;
82
- class QuotedPrintablePartData extends PartData {
83
- constructor(data, charset) {
84
- const decoded = qp.decode(data);
85
- super(Buffer.from(charset?.toUpperCase() === 'UTF-8' ? asUtf8(decoded) : decoded));
86
- }
87
- }
88
- exports.QuotedPrintablePartData = QuotedPrintablePartData;
89
- class SevenBitPartData extends PartData {
90
- constructor(data) {
91
- super(Buffer.from(data));
92
- }
93
- toString() {
94
- return this.buffer.toString('ascii');
95
- }
96
- }
97
- exports.SevenBitPartData = SevenBitPartData;
98
- class BinaryPartData extends PartData {
99
- constructor(data, charset = 'utf-8') {
100
- super(Buffer.from(data));
101
- this.charset = iconvlite.encodingExists(charset) ? charset : 'utf-8';
102
- }
103
- toString() {
104
- return iconvlite.decode(this.buffer, this.charset);
105
- }
106
- }
107
- exports.BinaryPartData = BinaryPartData;
108
- class UuencodedPartData extends PartData {
109
- constructor(data) {
110
- const parts = data.split('\n');
111
- const merged = parts.splice(1, parts.length - 4).join('');
112
- super((0, uudecode_1.uuDecode)(merged));
113
- }
114
- }
115
- exports.UuencodedPartData = UuencodedPartData;
116
- //# sourceMappingURL=part-data.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"part-data.js","sourceRoot":"","sources":["../src/part-data.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts DELETED
@@ -1,25 +0,0 @@
1
- import type { ImapMessageBodyInfo, ImapMessageAttributes } from 'imap';
2
- export interface MessagePart {
3
- partID: string;
4
- encoding: 'BASE64' | 'QUOTED-PRINTABLE' | '7BIT' | '8BIT' | 'BINARY' | 'UUENCODE' | null;
5
- type: 'TEXT';
6
- subtype: string;
7
- params?: {
8
- charset?: string;
9
- };
10
- disposition?: {
11
- type: string;
12
- params?: {
13
- filename?: string;
14
- };
15
- };
16
- }
17
- export interface MessageBodyPart extends ImapMessageBodyInfo {
18
- body: string | object;
19
- }
20
- export interface Message {
21
- attributes: ImapMessageAttributes;
22
- parts: MessageBodyPart[];
23
- seqNo?: number;
24
- }
25
- export type SearchCriteria = string | [string, string];
package/dist/types.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- export declare function uuDecode(input: string | Buffer): Buffer;
package/dist/uudecode.js DELETED
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.uuDecode = uuDecode;
4
- function uuDecode(input) {
5
- const str = typeof input === 'string' ? input : input.toString('binary');
6
- const out = [];
7
- let i = 0;
8
- while (i < str.length) {
9
- const length = (str.charCodeAt(i++) - 0x20) & 0x3f;
10
- if (length === 0)
11
- break;
12
- let written = 0;
13
- while (i < str.length && written < length) {
14
- const c0 = (str.charCodeAt(i++) - 0x20) & 0x3f;
15
- const c1 = i < str.length ? (str.charCodeAt(i++) - 0x20) & 0x3f : 0;
16
- const c2 = i < str.length ? (str.charCodeAt(i++) - 0x20) & 0x3f : 0;
17
- const c3 = i < str.length ? (str.charCodeAt(i++) - 0x20) & 0x3f : 0;
18
- if (written < length) {
19
- out.push(((c0 << 2) | (c1 >> 4)) & 0xff);
20
- written++;
21
- }
22
- if (written < length) {
23
- out.push(((c1 << 4) | (c2 >> 2)) & 0xff);
24
- written++;
25
- }
26
- if (written < length) {
27
- out.push(((c2 << 6) | c3) & 0xff);
28
- written++;
29
- }
30
- }
31
- }
32
- return Buffer.from(out);
33
- }
34
- //# sourceMappingURL=uudecode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uudecode.js","sourceRoot":"","sources":["../src/uudecode.ts"],"names":[],"mappings":";;;AAQA,kBAAyB,KAAsB;IAC9C,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,IAAI,MAAM,KAAK,CAAC;YAAE,MAAM;QAExB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YAC/C,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEpE,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACzC,OAAO,EAAE,CAAC;YACX,CAAC;YACD,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBACzC,OAAO,EAAE,CAAC;YACX,CAAC;YACD,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAClC,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}