imapflow 1.7.7 → 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/CHANGELOG.md +27 -0
- package/README.md +8 -2
- package/dist/cjs/charsets.d.ts +1 -0
- package/dist/cjs/charsets.js +294 -0
- package/dist/cjs/commands/append.d.ts +22 -0
- package/dist/cjs/commands/append.js +151 -0
- package/dist/cjs/commands/authenticate.d.ts +24 -0
- package/dist/cjs/commands/authenticate.js +223 -0
- package/dist/cjs/commands/capability.d.ts +8 -0
- package/dist/cjs/commands/capability.js +32 -0
- package/dist/cjs/commands/close.d.ts +8 -0
- package/dist/cjs/commands/close.js +39 -0
- package/dist/cjs/commands/compress.d.ts +8 -0
- package/dist/cjs/commands/compress.js +56 -0
- package/dist/cjs/commands/copy.d.ts +13 -0
- package/dist/cjs/commands/copy.js +44 -0
- package/dist/cjs/commands/copyuid-parser.d.ts +11 -0
- package/dist/cjs/commands/copyuid-parser.js +32 -0
- package/dist/cjs/commands/create.d.ts +11 -0
- package/dist/cjs/commands/create.js +80 -0
- package/dist/cjs/commands/delete.d.ts +11 -0
- package/dist/cjs/commands/delete.js +40 -0
- package/dist/cjs/commands/enable.d.ts +9 -0
- package/dist/cjs/commands/enable.js +61 -0
- package/dist/cjs/commands/esearch-parser.d.ts +17 -0
- package/dist/cjs/commands/esearch-parser.js +91 -0
- package/dist/cjs/commands/expunge.d.ts +12 -0
- package/dist/cjs/commands/expunge.js +60 -0
- package/dist/cjs/commands/fetch.d.ts +30 -0
- package/dist/cjs/commands/fetch.js +241 -0
- package/dist/cjs/commands/id.d.ts +10 -0
- package/dist/cjs/commands/id.js +80 -0
- package/dist/cjs/commands/idle.d.ts +9 -0
- package/dist/cjs/commands/idle.js +347 -0
- package/dist/cjs/commands/list.d.ts +16 -0
- package/dist/cjs/commands/list.js +518 -0
- package/dist/cjs/commands/login.d.ts +11 -0
- package/dist/cjs/commands/login.js +42 -0
- package/dist/cjs/commands/logout.d.ts +8 -0
- package/dist/cjs/commands/logout.js +47 -0
- package/dist/cjs/commands/move.d.ts +13 -0
- package/dist/cjs/commands/move.js +57 -0
- package/dist/cjs/commands/namespace.d.ts +25 -0
- package/dist/cjs/commands/namespace.js +139 -0
- package/dist/cjs/commands/noop.d.ts +8 -0
- package/dist/cjs/commands/noop.js +22 -0
- package/dist/cjs/commands/quota.d.ts +10 -0
- package/dist/cjs/commands/quota.js +119 -0
- package/dist/cjs/commands/rename.d.ts +12 -0
- package/dist/cjs/commands/rename.js +48 -0
- package/dist/cjs/commands/search.d.ts +15 -0
- package/dist/cjs/commands/search.js +228 -0
- package/dist/cjs/commands/select.d.ts +25 -0
- package/dist/cjs/commands/select.js +250 -0
- package/dist/cjs/commands/starttls.d.ts +8 -0
- package/dist/cjs/commands/starttls.js +30 -0
- package/dist/cjs/commands/status-fields.d.ts +14 -0
- package/dist/cjs/commands/status-fields.js +61 -0
- package/dist/cjs/commands/status.d.ts +12 -0
- package/dist/cjs/commands/status.js +108 -0
- package/dist/cjs/commands/store.d.ts +19 -0
- package/dist/cjs/commands/store.js +93 -0
- package/dist/cjs/commands/subscribe.d.ts +9 -0
- package/dist/cjs/commands/subscribe.js +31 -0
- package/dist/cjs/commands/unsubscribe.d.ts +9 -0
- package/dist/cjs/commands/unsubscribe.js +31 -0
- package/dist/cjs/connection-deadline.d.ts +49 -0
- package/dist/cjs/connection-deadline.js +91 -0
- package/dist/cjs/errors.d.ts +83 -0
- package/dist/cjs/errors.js +13 -0
- package/dist/cjs/handler/imap-compiler.d.ts +24 -0
- package/dist/cjs/handler/imap-compiler.js +285 -0
- package/dist/cjs/handler/imap-formal-syntax.d.ts +28 -0
- package/dist/cjs/handler/imap-formal-syntax.js +121 -0
- package/dist/cjs/handler/imap-handler.d.ts +9 -0
- package/dist/cjs/handler/imap-handler.js +10 -0
- package/dist/cjs/handler/imap-parser.d.ts +16 -0
- package/dist/cjs/handler/imap-parser.js +90 -0
- package/dist/cjs/handler/imap-stream.d.ts +181 -0
- package/dist/cjs/handler/imap-stream.js +446 -0
- package/dist/cjs/handler/limits.d.ts +25 -0
- package/dist/cjs/handler/limits.js +51 -0
- package/dist/cjs/handler/parser-instance.d.ts +68 -0
- package/dist/cjs/handler/parser-instance.js +223 -0
- package/dist/cjs/handler/token-parser.d.ts +91 -0
- package/dist/cjs/handler/token-parser.js +673 -0
- package/dist/cjs/handler/types.d.ts +91 -0
- package/dist/cjs/handler/types.js +4 -0
- package/dist/cjs/imap-commands.d.ts +16 -0
- package/dist/cjs/imap-commands.js +74 -0
- package/dist/cjs/imap-flow.d.ts +676 -0
- package/dist/cjs/imap-flow.js +3949 -0
- package/dist/cjs/jp-decoder.d.ts +12 -0
- package/dist/cjs/jp-decoder.js +79 -0
- package/dist/cjs/limited-passthrough.d.ts +25 -0
- package/dist/cjs/limited-passthrough.js +54 -0
- package/dist/cjs/logger.d.ts +3 -0
- package/dist/cjs/logger.js +11 -0
- package/dist/cjs/package-info.d.ts +3 -0
- package/dist/cjs/package-info.js +7 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/proxy-connection.d.ts +33 -0
- package/dist/cjs/proxy-connection.js +392 -0
- package/dist/cjs/search-compiler.d.ts +34 -0
- package/dist/cjs/search-compiler.js +476 -0
- package/dist/cjs/special-use.d.ts +22 -0
- package/dist/cjs/special-use.js +911 -0
- package/dist/cjs/tools.d.ts +427 -0
- package/dist/cjs/tools.js +1496 -0
- package/{lib/imap-flow.d.ts → dist/cjs/types.d.ts} +386 -516
- package/dist/cjs/types.js +5 -0
- package/dist/esm/charsets.d.ts +1 -0
- package/{lib → dist/esm}/charsets.js +1 -6
- package/dist/esm/commands/append.d.ts +22 -0
- package/{lib → dist/esm}/commands/append.js +22 -52
- package/dist/esm/commands/authenticate.d.ts +24 -0
- package/{lib → dist/esm}/commands/authenticate.js +62 -87
- package/dist/esm/commands/capability.d.ts +8 -0
- package/{lib → dist/esm}/commands/capability.js +6 -9
- package/dist/esm/commands/close.d.ts +8 -0
- package/{lib → dist/esm}/commands/close.js +6 -10
- package/dist/esm/commands/compress.d.ts +8 -0
- package/{lib → dist/esm}/commands/compress.js +7 -11
- package/dist/esm/commands/copy.d.ts +13 -0
- package/{lib → dist/esm}/commands/copy.js +12 -20
- package/dist/esm/commands/copyuid-parser.d.ts +11 -0
- package/{lib → dist/esm}/commands/copyuid-parser.js +9 -15
- package/dist/esm/commands/create.d.ts +11 -0
- package/{lib → dist/esm}/commands/create.js +13 -27
- package/dist/esm/commands/delete.d.ts +11 -0
- package/{lib → dist/esm}/commands/delete.js +9 -14
- package/dist/esm/commands/enable.d.ts +9 -0
- package/{lib → dist/esm}/commands/enable.js +23 -30
- package/dist/esm/commands/esearch-parser.d.ts +17 -0
- package/dist/esm/commands/esearch-parser.js +88 -0
- package/dist/esm/commands/expunge.d.ts +12 -0
- package/{lib → dist/esm}/commands/expunge.js +17 -22
- package/dist/esm/commands/fetch.d.ts +30 -0
- package/{lib → dist/esm}/commands/fetch.js +32 -64
- package/dist/esm/commands/id.d.ts +10 -0
- package/{lib → dist/esm}/commands/id.js +17 -23
- package/dist/esm/commands/idle.d.ts +9 -0
- package/{lib → dist/esm}/commands/idle.js +47 -81
- package/dist/esm/commands/list.d.ts +16 -0
- package/{lib → dist/esm}/commands/list.js +56 -121
- package/dist/esm/commands/login.d.ts +11 -0
- package/{lib → dist/esm}/commands/login.js +10 -15
- package/dist/esm/commands/logout.d.ts +8 -0
- package/{lib → dist/esm}/commands/logout.js +9 -11
- package/dist/esm/commands/move.d.ts +13 -0
- package/{lib → dist/esm}/commands/move.js +13 -21
- package/dist/esm/commands/namespace.d.ts +25 -0
- package/{lib → dist/esm}/commands/namespace.js +34 -44
- package/dist/esm/commands/noop.d.ts +8 -0
- package/{lib → dist/esm}/commands/noop.js +6 -7
- package/dist/esm/commands/quota.d.ts +10 -0
- package/{lib → dist/esm}/commands/quota.js +18 -36
- package/dist/esm/commands/rename.d.ts +12 -0
- package/{lib → dist/esm}/commands/rename.js +10 -15
- package/dist/esm/commands/search.d.ts +15 -0
- package/{lib → dist/esm}/commands/search.js +36 -135
- package/dist/esm/commands/select.d.ts +25 -0
- package/{lib → dist/esm}/commands/select.js +33 -64
- package/dist/esm/commands/starttls.d.ts +8 -0
- package/{lib → dist/esm}/commands/starttls.js +6 -8
- package/dist/esm/commands/status-fields.d.ts +14 -0
- package/{lib → dist/esm}/commands/status-fields.js +5 -16
- package/dist/esm/commands/status.d.ts +12 -0
- package/{lib → dist/esm}/commands/status.js +18 -29
- package/dist/esm/commands/store.d.ts +19 -0
- package/{lib → dist/esm}/commands/store.js +24 -37
- package/dist/esm/commands/subscribe.d.ts +9 -0
- package/{lib → dist/esm}/commands/subscribe.js +8 -12
- package/dist/esm/commands/unsubscribe.d.ts +9 -0
- package/{lib → dist/esm}/commands/unsubscribe.js +8 -12
- package/dist/esm/connection-deadline.d.ts +49 -0
- package/{lib → dist/esm}/connection-deadline.js +14 -25
- package/dist/esm/errors.d.ts +83 -0
- package/dist/esm/errors.js +9 -0
- package/dist/esm/handler/imap-compiler.d.ts +24 -0
- package/{lib → dist/esm}/handler/imap-compiler.js +22 -80
- package/dist/esm/handler/imap-formal-syntax.d.ts +28 -0
- package/dist/esm/handler/imap-formal-syntax.js +117 -0
- package/dist/esm/handler/imap-handler.d.ts +9 -0
- package/dist/esm/handler/imap-handler.js +9 -0
- package/dist/esm/handler/imap-parser.d.ts +16 -0
- package/{lib → dist/esm}/handler/imap-parser.js +31 -44
- package/dist/esm/handler/imap-stream.d.ts +181 -0
- package/{lib → dist/esm}/handler/imap-stream.js +29 -121
- package/dist/esm/handler/limits.d.ts +25 -0
- package/{lib → dist/esm}/handler/limits.js +13 -22
- package/dist/esm/handler/parser-instance.d.ts +68 -0
- package/{lib → dist/esm}/handler/parser-instance.js +19 -47
- package/dist/esm/handler/token-parser.d.ts +91 -0
- package/{lib → dist/esm}/handler/token-parser.js +71 -155
- package/dist/esm/handler/types.d.ts +91 -0
- package/dist/esm/handler/types.js +3 -0
- package/dist/esm/imap-commands.d.ts +16 -0
- package/dist/esm/imap-commands.js +67 -0
- package/dist/esm/imap-flow.d.ts +676 -0
- package/{lib → dist/esm}/imap-flow.js +785 -1802
- package/dist/esm/jp-decoder.d.ts +12 -0
- package/{lib → dist/esm}/jp-decoder.js +6 -21
- package/dist/esm/limited-passthrough.d.ts +25 -0
- package/{lib → dist/esm}/limited-passthrough.js +7 -20
- package/dist/esm/logger.d.ts +3 -0
- package/dist/esm/logger.js +4 -0
- package/dist/esm/package-info.d.ts +3 -0
- package/dist/esm/package-info.js +4 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/proxy-connection.d.ts +33 -0
- package/{lib → dist/esm}/proxy-connection.js +56 -127
- package/dist/esm/search-compiler.d.ts +34 -0
- package/{lib → dist/esm}/search-compiler.js +54 -110
- package/dist/esm/special-use.d.ts +22 -0
- package/dist/esm/special-use.js +907 -0
- package/dist/esm/tools.d.ts +427 -0
- package/dist/esm/tools.js +1446 -0
- package/dist/esm/types.d.ts +828 -0
- package/dist/esm/types.js +4 -0
- package/package.json +60 -20
- package/.gitattributes +0 -1
- package/.github/CODE_OF_CONDUCT.md +0 -76
- package/.github/FUNDING.yml +0 -4
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -40
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
- package/.github/contributing.md +0 -17
- package/.github/workflows/release.yaml +0 -36
- package/.github/workflows/stale.yml +0 -29
- package/.github/workflows/test.yml +0 -51
- package/.ncurc.js +0 -4
- package/.prettierignore +0 -4
- package/.prettierrc.js +0 -8
- package/.release-please-manifest.json +0 -3
- package/CLAUDE.md +0 -104
- package/Gruntfile.js +0 -23
- package/eslint.config.js +0 -45
- package/lib/handler/imap-formal-syntax.js +0 -189
- package/lib/handler/imap-handler.js +0 -17
- package/lib/imap-commands.js +0 -45
- package/lib/logger.js +0 -5
- package/lib/special-use.js +0 -923
- package/lib/tools.js +0 -1612
- package/release-please-config.json +0 -10
- package/test/authentication-test.js +0 -101
- package/test/auto-idle-test.js +0 -470
- package/test/bodystructure-test.js +0 -899
- package/test/charsets-test.js +0 -161
- package/test/commands-branches-test.js +0 -1095
- package/test/commands-integration-test.js +0 -11124
- package/test/commands-test.js +0 -73
- package/test/connection-edge-cases-test.js +0 -1828
- package/test/connection-test.js +0 -162
- package/test/copyuid-parser-test.js +0 -173
- package/test/fetch-generator-test.js +0 -218
- package/test/fixtures/fake-timers.js +0 -115
- package/test/fixtures/serialized-mimetorture.js +0 -2738
- package/test/fixtures/test-client.js +0 -57
- package/test/fixtures/test-tls.js +0 -8
- package/test/handler-branches-test.js +0 -310
- package/test/idle-polling-test.js +0 -518
- package/test/imap-compiler-test.js +0 -809
- package/test/imap-flow-compress-test.js +0 -166
- package/test/imap-flow-coverage-test.js +0 -612
- package/test/imap-flow-fetch-download-test.js +0 -873
- package/test/imap-flow-internals-test.js +0 -725
- package/test/imap-flow-methods-test.js +0 -889
- package/test/imap-flow-proxy-paths-test.js +0 -366
- package/test/imap-flow-secure-test.js +0 -573
- package/test/imap-flow-server-test.js +0 -1474
- package/test/imap-formal-syntax-test.js +0 -293
- package/test/imap-parser-test.js +0 -1474
- package/test/imap-stream-edge-cases-test.js +0 -666
- package/test/imap-stream-test.js +0 -177
- package/test/imapflow-test.js +0 -258
- package/test/integration/README.md +0 -52
- package/test/integration/dovecot-test.conf +0 -27
- package/test/integration/rev2-live-test.js +0 -431
- package/test/integration/run-rev2-tests.sh +0 -75
- package/test/integration-test.js +0 -83
- package/test/jp-decoder-test.js +0 -304
- package/test/limited-passthrough-test.js +0 -299
- package/test/memory-cleanup-test.js +0 -144
- package/test/memory-leak-test.js +0 -667
- package/test/parser-limits-test.js +0 -292
- package/test/proxy-connection-test.js +0 -738
- package/test/reliability-improvements-test.js +0 -548
- package/test/search-compiler-test.js +0 -1300
- package/test/search-test.js +0 -329
- package/test/special-use-test.js +0 -418
- package/test/starttls-injection-test.js +0 -181
- package/test/tag-correlation-test.js +0 -333
- package/test/timer-policy-test.js +0 -227
- package/test/token-parser-test.js +0 -456
- package/test/tools-test.js +0 -2013
- package/test/unhandled-rejection-test.js +0 -593
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A parsed IMAP token. `type` is one of ATOM, STRING, LITERAL, SEQUENCE, TEXT or
|
|
3
|
+
* NUMBER. A section (`BODY[...]`) and a partial range (`<0.1024>`) are attached to the
|
|
4
|
+
* token they follow.
|
|
5
|
+
*/
|
|
6
|
+
export interface ImapAttributeNode {
|
|
7
|
+
type: string;
|
|
8
|
+
value?: string | Buffer | number | null | undefined;
|
|
9
|
+
section?: ImapAttributeList | undefined;
|
|
10
|
+
partial?: number[] | undefined;
|
|
11
|
+
/** Redacted from logs and from the raw traffic log when set on an outgoing token */
|
|
12
|
+
sensitive?: boolean | undefined;
|
|
13
|
+
/** Emit the literal as a literal8 (RFC 3516) */
|
|
14
|
+
isLiteral8?: boolean | undefined;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* A parenthesized list of tokens. The token properties are declared as absent so that
|
|
18
|
+
* `entry.value` can be read across the `ImapAttribute` union without narrowing first.
|
|
19
|
+
*/
|
|
20
|
+
export interface ImapAttributeList extends Array<ImapAttribute> {
|
|
21
|
+
type?: undefined;
|
|
22
|
+
value?: undefined;
|
|
23
|
+
section?: undefined;
|
|
24
|
+
partial?: undefined;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* One attribute of a parsed response: a token, a nested list, or `null` for NIL
|
|
28
|
+
*/
|
|
29
|
+
export type ImapAttribute = ImapAttributeNode | ImapAttributeList | null;
|
|
30
|
+
/**
|
|
31
|
+
* A parsed IMAP response line, or a command being compiled for the wire
|
|
32
|
+
*/
|
|
33
|
+
export interface ImapResponse {
|
|
34
|
+
/** The IMAP tag: "*" for untagged responses, "+" for continuation requests, or a command tag */
|
|
35
|
+
tag?: string | undefined;
|
|
36
|
+
/** The response or command name, e.g. "OK", "FETCH", or a message sequence number */
|
|
37
|
+
command?: string | undefined;
|
|
38
|
+
/** Parsed attributes of the response */
|
|
39
|
+
attributes?: ImapAttributeList | undefined;
|
|
40
|
+
/** Number of leading NUL bytes stripped from the line, if any */
|
|
41
|
+
nullBytesRemoved?: number | undefined;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* What the command compiler accepts as a node: parsed tokens and lists, and also bare
|
|
45
|
+
* strings, numbers and Buffers, which are written as quoted strings and numbers
|
|
46
|
+
*/
|
|
47
|
+
export type ImapCompileNode = ImapAttributeNode | string | number | Buffer | null | undefined | false | ImapCompileNode[];
|
|
48
|
+
export interface ImapCompileInput {
|
|
49
|
+
tag?: string | undefined;
|
|
50
|
+
command?: string | undefined;
|
|
51
|
+
attributes?: ImapCompileNode | ImapCompileNode[] | undefined;
|
|
52
|
+
}
|
|
53
|
+
export interface CompilerOptions {
|
|
54
|
+
/** Return an array of Buffers, one per literal segment, instead of a single Buffer */
|
|
55
|
+
asArray?: boolean | undefined;
|
|
56
|
+
/** Redact sensitive values and truncate long strings for logging */
|
|
57
|
+
isLogging?: boolean | undefined;
|
|
58
|
+
/** Use the LITERAL+ extension (non-synchronizing literals of any size) */
|
|
59
|
+
literalPlus?: boolean | undefined;
|
|
60
|
+
/** Use the LITERAL- extension (non-synchronizing literals up to 4096 bytes) */
|
|
61
|
+
literalMinus?: boolean | undefined;
|
|
62
|
+
}
|
|
63
|
+
export interface ParserOptions {
|
|
64
|
+
/** Whether the LITERAL+ extension is in use */
|
|
65
|
+
literalPlus?: boolean | undefined;
|
|
66
|
+
/** Pre-parsed literal values extracted from the input stream */
|
|
67
|
+
literals?: Buffer[] | undefined;
|
|
68
|
+
/** Maximum size in bytes of a literal parsed inline from the input */
|
|
69
|
+
maxLiteralSize?: number | undefined;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* One assembled response as pushed by ImapStream: the line payload, its literals and the
|
|
73
|
+
* backpressure callback that must be called once the response has been processed
|
|
74
|
+
*/
|
|
75
|
+
export interface ImapStreamItem {
|
|
76
|
+
payload: Buffer;
|
|
77
|
+
literals: Buffer[];
|
|
78
|
+
next: () => void;
|
|
79
|
+
/** Whether more buffered input already followed this response on the wire */
|
|
80
|
+
trailingAfterLine: boolean;
|
|
81
|
+
/** Set once `next` has been called, see ImapFlow#releaseStreamData */
|
|
82
|
+
released?: boolean | undefined;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* The SELECT or EXAMINE command that opened the current mailbox, kept so fallback polling
|
|
86
|
+
* can re-select the mailbox with the same access mode
|
|
87
|
+
*/
|
|
88
|
+
export interface SelectCommand {
|
|
89
|
+
command: string;
|
|
90
|
+
arguments: ImapCompileNode[];
|
|
91
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ImapFlow } from './imap-flow.js';
|
|
2
|
+
/**
|
|
3
|
+
* A command implementation: receives the connection and the arguments passed to
|
|
4
|
+
* `ImapFlow#run()` for that command
|
|
5
|
+
*/
|
|
6
|
+
export type CommandHandler = (connection: ImapFlow, ...args: any[]) => Promise<any>;
|
|
7
|
+
/**
|
|
8
|
+
* IMAP command registry. Maps IMAP command names (uppercase strings) to their
|
|
9
|
+
* corresponding implementation modules from the `commands/` directory.
|
|
10
|
+
*
|
|
11
|
+
* Each entry maps a command name (e.g., "FETCH", "SELECT", "IDLE") to a function
|
|
12
|
+
* that builds the command request and processes the server response. This Map is
|
|
13
|
+
* used by the main ImapFlow client to look up and execute IMAP commands.
|
|
14
|
+
*/
|
|
15
|
+
declare const imapCommands: Map<string, CommandHandler>;
|
|
16
|
+
export default imapCommands;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const id_js_1 = __importDefault(require("./commands/id.js"));
|
|
7
|
+
const capability_js_1 = __importDefault(require("./commands/capability.js"));
|
|
8
|
+
const namespace_js_1 = __importDefault(require("./commands/namespace.js"));
|
|
9
|
+
const login_js_1 = __importDefault(require("./commands/login.js"));
|
|
10
|
+
const logout_js_1 = __importDefault(require("./commands/logout.js"));
|
|
11
|
+
const starttls_js_1 = __importDefault(require("./commands/starttls.js"));
|
|
12
|
+
const list_js_1 = __importDefault(require("./commands/list.js"));
|
|
13
|
+
const enable_js_1 = __importDefault(require("./commands/enable.js"));
|
|
14
|
+
const select_js_1 = __importDefault(require("./commands/select.js"));
|
|
15
|
+
const fetch_js_1 = __importDefault(require("./commands/fetch.js"));
|
|
16
|
+
const create_js_1 = __importDefault(require("./commands/create.js"));
|
|
17
|
+
const delete_js_1 = __importDefault(require("./commands/delete.js"));
|
|
18
|
+
const rename_js_1 = __importDefault(require("./commands/rename.js"));
|
|
19
|
+
const close_js_1 = __importDefault(require("./commands/close.js"));
|
|
20
|
+
const subscribe_js_1 = __importDefault(require("./commands/subscribe.js"));
|
|
21
|
+
const unsubscribe_js_1 = __importDefault(require("./commands/unsubscribe.js"));
|
|
22
|
+
const store_js_1 = __importDefault(require("./commands/store.js"));
|
|
23
|
+
const search_js_1 = __importDefault(require("./commands/search.js"));
|
|
24
|
+
const noop_js_1 = __importDefault(require("./commands/noop.js"));
|
|
25
|
+
const expunge_js_1 = __importDefault(require("./commands/expunge.js"));
|
|
26
|
+
const append_js_1 = __importDefault(require("./commands/append.js"));
|
|
27
|
+
const status_js_1 = __importDefault(require("./commands/status.js"));
|
|
28
|
+
const copy_js_1 = __importDefault(require("./commands/copy.js"));
|
|
29
|
+
const move_js_1 = __importDefault(require("./commands/move.js"));
|
|
30
|
+
const compress_js_1 = __importDefault(require("./commands/compress.js"));
|
|
31
|
+
const quota_js_1 = __importDefault(require("./commands/quota.js"));
|
|
32
|
+
const idle_js_1 = __importDefault(require("./commands/idle.js"));
|
|
33
|
+
const authenticate_js_1 = __importDefault(require("./commands/authenticate.js"));
|
|
34
|
+
/**
|
|
35
|
+
* IMAP command registry. Maps IMAP command names (uppercase strings) to their
|
|
36
|
+
* corresponding implementation modules from the `commands/` directory.
|
|
37
|
+
*
|
|
38
|
+
* Each entry maps a command name (e.g., "FETCH", "SELECT", "IDLE") to a function
|
|
39
|
+
* that builds the command request and processes the server response. This Map is
|
|
40
|
+
* used by the main ImapFlow client to look up and execute IMAP commands.
|
|
41
|
+
*/
|
|
42
|
+
const imapCommands = new Map([
|
|
43
|
+
['ID', id_js_1.default],
|
|
44
|
+
['CAPABILITY', capability_js_1.default],
|
|
45
|
+
['NAMESPACE', namespace_js_1.default],
|
|
46
|
+
['LOGIN', login_js_1.default],
|
|
47
|
+
['LOGOUT', logout_js_1.default],
|
|
48
|
+
['STARTTLS', starttls_js_1.default],
|
|
49
|
+
['LIST', list_js_1.default],
|
|
50
|
+
['ENABLE', enable_js_1.default],
|
|
51
|
+
['SELECT', select_js_1.default],
|
|
52
|
+
['FETCH', fetch_js_1.default],
|
|
53
|
+
['CREATE', create_js_1.default],
|
|
54
|
+
['DELETE', delete_js_1.default],
|
|
55
|
+
['RENAME', rename_js_1.default],
|
|
56
|
+
['CLOSE', close_js_1.default],
|
|
57
|
+
['SUBSCRIBE', subscribe_js_1.default],
|
|
58
|
+
['UNSUBSCRIBE', unsubscribe_js_1.default],
|
|
59
|
+
['STORE', store_js_1.default],
|
|
60
|
+
['SEARCH', search_js_1.default],
|
|
61
|
+
['NOOP', noop_js_1.default],
|
|
62
|
+
['EXPUNGE', expunge_js_1.default],
|
|
63
|
+
['APPEND', append_js_1.default],
|
|
64
|
+
['STATUS', status_js_1.default],
|
|
65
|
+
['COPY', copy_js_1.default],
|
|
66
|
+
['MOVE', move_js_1.default],
|
|
67
|
+
['COMPRESS', compress_js_1.default],
|
|
68
|
+
['QUOTA', quota_js_1.default],
|
|
69
|
+
['IDLE', idle_js_1.default],
|
|
70
|
+
['AUTHENTICATE', authenticate_js_1.default]
|
|
71
|
+
]);
|
|
72
|
+
exports.default = imapCommands;
|
|
73
|
+
module.exports = exports.default;
|
|
74
|
+
Object.defineProperty(module.exports, 'default', { value: exports.default, enumerable: false, writable: true, configurable: true });
|