@shopify/ui-extensions-server-kit 5.2.1 → 5.3.1

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.
Files changed (170) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +2 -2
  3. package/dist/ExtensionServerClient/ExtensionServerClient.cjs.js +1 -1
  4. package/dist/ExtensionServerClient/ExtensionServerClient.d.ts +1 -0
  5. package/dist/ExtensionServerClient/ExtensionServerClient.es.js +1 -1
  6. package/dist/ExtensionServerClient/ExtensionServerClient.test.d.ts +8 -0
  7. package/dist/ExtensionServerClient/server-types.d.ts +42 -0
  8. package/dist/context/constants.cjs.js +1 -1
  9. package/dist/context/constants.d.ts +0 -1
  10. package/dist/context/constants.es.js +0 -1
  11. package/dist/context/types.d.ts +1 -0
  12. package/dist/hooks/index.d.ts +0 -2
  13. package/dist/i18n.cjs.js +1 -1
  14. package/dist/i18n.d.ts +1 -20
  15. package/dist/i18n.es.js +0 -1
  16. package/dist/index.cjs.js +1 -1
  17. package/dist/index.es.js +40 -48
  18. package/dist/testing/extensions.cjs.js +1 -1
  19. package/dist/testing/extensions.es.js +2 -2
  20. package/dist/types.cjs.js +1 -1
  21. package/dist/types.d.ts +10 -4
  22. package/dist/types.es.js +2 -2
  23. package/dist/utilities/index.d.ts +0 -1
  24. package/node_modules/@shopify/ui-extensions-test-utils/dist/index.d.ts +3 -0
  25. package/node_modules/@shopify/ui-extensions-test-utils/dist/render.d.ts +2 -0
  26. package/node_modules/@shopify/ui-extensions-test-utils/dist/renderHook.d.ts +17 -0
  27. package/node_modules/@shopify/ui-extensions-test-utils/dist/withProviders.d.ts +9 -0
  28. package/node_modules/@shopify/ui-extensions-test-utils/dist/withProviders.js +1 -0
  29. package/node_modules/@shopify/ui-extensions-test-utils/package.json +2 -3
  30. package/package.json +8 -7
  31. package/project.json +0 -16
  32. package/src/ExtensionServerClient/ExtensionServerClient.test.ts +837 -330
  33. package/src/ExtensionServerClient/ExtensionServerClient.ts +10 -8
  34. package/src/ExtensionServerClient/server-types.ts +55 -0
  35. package/src/ExtensionServerClient/types.ts +2 -0
  36. package/src/context/ExtensionServerProvider.test.tsx +202 -39
  37. package/src/context/ExtensionServerProvider.tsx +1 -0
  38. package/src/context/constants.ts +3 -2
  39. package/src/context/types.ts +1 -0
  40. package/src/hooks/index.ts +0 -2
  41. package/src/i18n.ts +3 -3
  42. package/src/state/reducers/extensionServerReducer.test.ts +2 -2
  43. package/src/testing/extensions.ts +2 -2
  44. package/src/types.ts +9 -4
  45. package/src/utilities/index.ts +0 -1
  46. package/src/utilities/replaceUpdated.ts +1 -0
  47. package/src/utilities/set.ts +1 -0
  48. package/dist/hooks/useExtensionClient.cjs.js +0 -1
  49. package/dist/hooks/useExtensionClient.d.ts +0 -1
  50. package/dist/hooks/useExtensionClient.es.js +0 -8
  51. package/dist/hooks/useExtensionServerEvent.cjs.js +0 -1
  52. package/dist/hooks/useExtensionServerEvent.d.ts +0 -1
  53. package/dist/hooks/useExtensionServerEvent.es.js +0 -9
  54. package/dist/utilities/groupByKey.cjs.js +0 -1
  55. package/dist/utilities/groupByKey.d.ts +0 -3
  56. package/dist/utilities/groupByKey.es.js +0 -6
  57. package/node_modules/@types/node/LICENSE +0 -21
  58. package/node_modules/@types/node/README.md +0 -15
  59. package/node_modules/@types/node/assert/strict.d.ts +0 -8
  60. package/node_modules/@types/node/assert.d.ts +0 -985
  61. package/node_modules/@types/node/async_hooks.d.ts +0 -522
  62. package/node_modules/@types/node/buffer.d.ts +0 -2321
  63. package/node_modules/@types/node/child_process.d.ts +0 -1544
  64. package/node_modules/@types/node/cluster.d.ts +0 -432
  65. package/node_modules/@types/node/console.d.ts +0 -412
  66. package/node_modules/@types/node/constants.d.ts +0 -19
  67. package/node_modules/@types/node/crypto.d.ts +0 -4451
  68. package/node_modules/@types/node/dgram.d.ts +0 -586
  69. package/node_modules/@types/node/diagnostics_channel.d.ts +0 -192
  70. package/node_modules/@types/node/dns/promises.d.ts +0 -381
  71. package/node_modules/@types/node/dns.d.ts +0 -809
  72. package/node_modules/@types/node/dom-events.d.ts +0 -122
  73. package/node_modules/@types/node/domain.d.ts +0 -170
  74. package/node_modules/@types/node/events.d.ts +0 -803
  75. package/node_modules/@types/node/fs/promises.d.ts +0 -1205
  76. package/node_modules/@types/node/fs.d.ts +0 -4211
  77. package/node_modules/@types/node/globals.d.ts +0 -377
  78. package/node_modules/@types/node/globals.global.d.ts +0 -1
  79. package/node_modules/@types/node/http.d.ts +0 -1801
  80. package/node_modules/@types/node/http2.d.ts +0 -2386
  81. package/node_modules/@types/node/https.d.ts +0 -544
  82. package/node_modules/@types/node/index.d.ts +0 -88
  83. package/node_modules/@types/node/inspector.d.ts +0 -2739
  84. package/node_modules/@types/node/module.d.ts +0 -298
  85. package/node_modules/@types/node/net.d.ts +0 -913
  86. package/node_modules/@types/node/os.d.ts +0 -473
  87. package/node_modules/@types/node/package.json +0 -235
  88. package/node_modules/@types/node/path.d.ts +0 -191
  89. package/node_modules/@types/node/perf_hooks.d.ts +0 -626
  90. package/node_modules/@types/node/process.d.ts +0 -1531
  91. package/node_modules/@types/node/punycode.d.ts +0 -117
  92. package/node_modules/@types/node/querystring.d.ts +0 -141
  93. package/node_modules/@types/node/readline/promises.d.ts +0 -143
  94. package/node_modules/@types/node/readline.d.ts +0 -666
  95. package/node_modules/@types/node/repl.d.ts +0 -430
  96. package/node_modules/@types/node/stream/consumers.d.ts +0 -12
  97. package/node_modules/@types/node/stream/promises.d.ts +0 -83
  98. package/node_modules/@types/node/stream/web.d.ts +0 -336
  99. package/node_modules/@types/node/stream.d.ts +0 -1731
  100. package/node_modules/@types/node/string_decoder.d.ts +0 -67
  101. package/node_modules/@types/node/test.d.ts +0 -1113
  102. package/node_modules/@types/node/timers/promises.d.ts +0 -93
  103. package/node_modules/@types/node/timers.d.ts +0 -126
  104. package/node_modules/@types/node/tls.d.ts +0 -1203
  105. package/node_modules/@types/node/trace_events.d.ts +0 -171
  106. package/node_modules/@types/node/ts4.8/assert/strict.d.ts +0 -8
  107. package/node_modules/@types/node/ts4.8/assert.d.ts +0 -985
  108. package/node_modules/@types/node/ts4.8/async_hooks.d.ts +0 -522
  109. package/node_modules/@types/node/ts4.8/buffer.d.ts +0 -2321
  110. package/node_modules/@types/node/ts4.8/child_process.d.ts +0 -1544
  111. package/node_modules/@types/node/ts4.8/cluster.d.ts +0 -432
  112. package/node_modules/@types/node/ts4.8/console.d.ts +0 -412
  113. package/node_modules/@types/node/ts4.8/constants.d.ts +0 -19
  114. package/node_modules/@types/node/ts4.8/crypto.d.ts +0 -4450
  115. package/node_modules/@types/node/ts4.8/dgram.d.ts +0 -586
  116. package/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +0 -192
  117. package/node_modules/@types/node/ts4.8/dns/promises.d.ts +0 -381
  118. package/node_modules/@types/node/ts4.8/dns.d.ts +0 -809
  119. package/node_modules/@types/node/ts4.8/dom-events.d.ts +0 -122
  120. package/node_modules/@types/node/ts4.8/domain.d.ts +0 -170
  121. package/node_modules/@types/node/ts4.8/events.d.ts +0 -754
  122. package/node_modules/@types/node/ts4.8/fs/promises.d.ts +0 -1205
  123. package/node_modules/@types/node/ts4.8/fs.d.ts +0 -4211
  124. package/node_modules/@types/node/ts4.8/globals.d.ts +0 -377
  125. package/node_modules/@types/node/ts4.8/globals.global.d.ts +0 -1
  126. package/node_modules/@types/node/ts4.8/http.d.ts +0 -1801
  127. package/node_modules/@types/node/ts4.8/http2.d.ts +0 -2386
  128. package/node_modules/@types/node/ts4.8/https.d.ts +0 -544
  129. package/node_modules/@types/node/ts4.8/index.d.ts +0 -88
  130. package/node_modules/@types/node/ts4.8/inspector.d.ts +0 -2739
  131. package/node_modules/@types/node/ts4.8/module.d.ts +0 -298
  132. package/node_modules/@types/node/ts4.8/net.d.ts +0 -913
  133. package/node_modules/@types/node/ts4.8/os.d.ts +0 -473
  134. package/node_modules/@types/node/ts4.8/path.d.ts +0 -191
  135. package/node_modules/@types/node/ts4.8/perf_hooks.d.ts +0 -626
  136. package/node_modules/@types/node/ts4.8/process.d.ts +0 -1531
  137. package/node_modules/@types/node/ts4.8/punycode.d.ts +0 -117
  138. package/node_modules/@types/node/ts4.8/querystring.d.ts +0 -141
  139. package/node_modules/@types/node/ts4.8/readline/promises.d.ts +0 -143
  140. package/node_modules/@types/node/ts4.8/readline.d.ts +0 -666
  141. package/node_modules/@types/node/ts4.8/repl.d.ts +0 -430
  142. package/node_modules/@types/node/ts4.8/stream/consumers.d.ts +0 -12
  143. package/node_modules/@types/node/ts4.8/stream/promises.d.ts +0 -83
  144. package/node_modules/@types/node/ts4.8/stream/web.d.ts +0 -336
  145. package/node_modules/@types/node/ts4.8/stream.d.ts +0 -1731
  146. package/node_modules/@types/node/ts4.8/string_decoder.d.ts +0 -67
  147. package/node_modules/@types/node/ts4.8/test.d.ts +0 -1113
  148. package/node_modules/@types/node/ts4.8/timers/promises.d.ts +0 -93
  149. package/node_modules/@types/node/ts4.8/timers.d.ts +0 -126
  150. package/node_modules/@types/node/ts4.8/tls.d.ts +0 -1203
  151. package/node_modules/@types/node/ts4.8/trace_events.d.ts +0 -171
  152. package/node_modules/@types/node/ts4.8/tty.d.ts +0 -206
  153. package/node_modules/@types/node/ts4.8/url.d.ts +0 -937
  154. package/node_modules/@types/node/ts4.8/util.d.ts +0 -2075
  155. package/node_modules/@types/node/ts4.8/v8.d.ts +0 -541
  156. package/node_modules/@types/node/ts4.8/vm.d.ts +0 -667
  157. package/node_modules/@types/node/ts4.8/wasi.d.ts +0 -158
  158. package/node_modules/@types/node/ts4.8/worker_threads.d.ts +0 -692
  159. package/node_modules/@types/node/ts4.8/zlib.d.ts +0 -517
  160. package/node_modules/@types/node/tty.d.ts +0 -206
  161. package/node_modules/@types/node/url.d.ts +0 -937
  162. package/node_modules/@types/node/util.d.ts +0 -2075
  163. package/node_modules/@types/node/v8.d.ts +0 -541
  164. package/node_modules/@types/node/vm.d.ts +0 -667
  165. package/node_modules/@types/node/wasi.d.ts +0 -158
  166. package/node_modules/@types/node/worker_threads.d.ts +0 -692
  167. package/node_modules/@types/node/zlib.d.ts +0 -517
  168. package/src/hooks/useExtensionClient.ts +0 -6
  169. package/src/hooks/useExtensionServerEvent.ts +0 -11
  170. package/src/utilities/groupByKey.ts +0 -3
@@ -1,117 +0,0 @@
1
- /**
2
- * **The version of the punycode module bundled in Node.js is being deprecated.**In a future major version of Node.js this module will be removed. Users
3
- * currently depending on the `punycode` module should switch to using the
4
- * userland-provided [Punycode.js](https://github.com/bestiejs/punycode.js) module instead. For punycode-based URL
5
- * encoding, see `url.domainToASCII` or, more generally, the `WHATWG URL API`.
6
- *
7
- * The `punycode` module is a bundled version of the [Punycode.js](https://github.com/bestiejs/punycode.js) module. It
8
- * can be accessed using:
9
- *
10
- * ```js
11
- * const punycode = require('punycode');
12
- * ```
13
- *
14
- * [Punycode](https://tools.ietf.org/html/rfc3492) is a character encoding scheme defined by RFC 3492 that is
15
- * primarily intended for use in Internationalized Domain Names. Because host
16
- * names in URLs are limited to ASCII characters only, Domain Names that contain
17
- * non-ASCII characters must be converted into ASCII using the Punycode scheme.
18
- * For instance, the Japanese character that translates into the English word,`'example'` is `'例'`. The Internationalized Domain Name, `'例.com'` (equivalent
19
- * to `'example.com'`) is represented by Punycode as the ASCII string`'xn--fsq.com'`.
20
- *
21
- * The `punycode` module provides a simple implementation of the Punycode standard.
22
- *
23
- * The `punycode` module is a third-party dependency used by Node.js and
24
- * made available to developers as a convenience. Fixes or other modifications to
25
- * the module must be directed to the [Punycode.js](https://github.com/bestiejs/punycode.js) project.
26
- * @deprecated Since v7.0.0 - Deprecated
27
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/punycode.js)
28
- */
29
- declare module "punycode" {
30
- /**
31
- * The `punycode.decode()` method converts a [Punycode](https://tools.ietf.org/html/rfc3492) string of ASCII-only
32
- * characters to the equivalent string of Unicode codepoints.
33
- *
34
- * ```js
35
- * punycode.decode('maana-pta'); // 'mañana'
36
- * punycode.decode('--dqo34k'); // '☃-⌘'
37
- * ```
38
- * @since v0.5.1
39
- */
40
- function decode(string: string): string;
41
- /**
42
- * The `punycode.encode()` method converts a string of Unicode codepoints to a [Punycode](https://tools.ietf.org/html/rfc3492) string of ASCII-only characters.
43
- *
44
- * ```js
45
- * punycode.encode('mañana'); // 'maana-pta'
46
- * punycode.encode('☃-⌘'); // '--dqo34k'
47
- * ```
48
- * @since v0.5.1
49
- */
50
- function encode(string: string): string;
51
- /**
52
- * The `punycode.toUnicode()` method converts a string representing a domain name
53
- * containing [Punycode](https://tools.ietf.org/html/rfc3492) encoded characters into Unicode. Only the [Punycode](https://tools.ietf.org/html/rfc3492) encoded parts of the domain name are be
54
- * converted.
55
- *
56
- * ```js
57
- * // decode domain names
58
- * punycode.toUnicode('xn--maana-pta.com'); // 'mañana.com'
59
- * punycode.toUnicode('xn----dqo34k.com'); // '☃-⌘.com'
60
- * punycode.toUnicode('example.com'); // 'example.com'
61
- * ```
62
- * @since v0.6.1
63
- */
64
- function toUnicode(domain: string): string;
65
- /**
66
- * The `punycode.toASCII()` method converts a Unicode string representing an
67
- * Internationalized Domain Name to [Punycode](https://tools.ietf.org/html/rfc3492). Only the non-ASCII parts of the
68
- * domain name will be converted. Calling `punycode.toASCII()` on a string that
69
- * already only contains ASCII characters will have no effect.
70
- *
71
- * ```js
72
- * // encode domain names
73
- * punycode.toASCII('mañana.com'); // 'xn--maana-pta.com'
74
- * punycode.toASCII('☃-⌘.com'); // 'xn----dqo34k.com'
75
- * punycode.toASCII('example.com'); // 'example.com'
76
- * ```
77
- * @since v0.6.1
78
- */
79
- function toASCII(domain: string): string;
80
- /**
81
- * @deprecated since v7.0.0
82
- * The version of the punycode module bundled in Node.js is being deprecated.
83
- * In a future major version of Node.js this module will be removed.
84
- * Users currently depending on the punycode module should switch to using
85
- * the userland-provided Punycode.js module instead.
86
- */
87
- const ucs2: ucs2;
88
- interface ucs2 {
89
- /**
90
- * @deprecated since v7.0.0
91
- * The version of the punycode module bundled in Node.js is being deprecated.
92
- * In a future major version of Node.js this module will be removed.
93
- * Users currently depending on the punycode module should switch to using
94
- * the userland-provided Punycode.js module instead.
95
- */
96
- decode(string: string): number[];
97
- /**
98
- * @deprecated since v7.0.0
99
- * The version of the punycode module bundled in Node.js is being deprecated.
100
- * In a future major version of Node.js this module will be removed.
101
- * Users currently depending on the punycode module should switch to using
102
- * the userland-provided Punycode.js module instead.
103
- */
104
- encode(codePoints: readonly number[]): string;
105
- }
106
- /**
107
- * @deprecated since v7.0.0
108
- * The version of the punycode module bundled in Node.js is being deprecated.
109
- * In a future major version of Node.js this module will be removed.
110
- * Users currently depending on the punycode module should switch to using
111
- * the userland-provided Punycode.js module instead.
112
- */
113
- const version: string;
114
- }
115
- declare module "node:punycode" {
116
- export * from "punycode";
117
- }
@@ -1,141 +0,0 @@
1
- /**
2
- * The `querystring` module provides utilities for parsing and formatting URL
3
- * query strings. It can be accessed using:
4
- *
5
- * ```js
6
- * const querystring = require('querystring');
7
- * ```
8
- *
9
- * `querystring` is more performant than `URLSearchParams` but is not a
10
- * standardized API. Use `URLSearchParams` when performance is not critical
11
- * or when compatibility with browser code is desirable.
12
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/querystring.js)
13
- */
14
- declare module "querystring" {
15
- interface StringifyOptions {
16
- encodeURIComponent?: ((str: string) => string) | undefined;
17
- }
18
- interface ParseOptions {
19
- maxKeys?: number | undefined;
20
- decodeURIComponent?: ((str: string) => string) | undefined;
21
- }
22
- interface ParsedUrlQuery extends NodeJS.Dict<string | string[]> {}
23
- interface ParsedUrlQueryInput extends
24
- NodeJS.Dict<
25
- | string
26
- | number
27
- | boolean
28
- | readonly string[]
29
- | readonly number[]
30
- | readonly boolean[]
31
- | null
32
- >
33
- {}
34
- /**
35
- * The `querystring.stringify()` method produces a URL query string from a
36
- * given `obj` by iterating through the object's "own properties".
37
- *
38
- * It serializes the following types of values passed in `obj`:[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type) |
39
- * [number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Number_type) |
40
- * [bigint](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt) |
41
- * [boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type) |
42
- * [string\[\]](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type) |
43
- * [number\[\]](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Number_type) |
44
- * [bigint\[\]](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt) |
45
- * [boolean\[\]](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type) The numeric values must be finite. Any other input values will be coerced to
46
- * empty strings.
47
- *
48
- * ```js
49
- * querystring.stringify({ foo: 'bar', baz: ['qux', 'quux'], corge: '' });
50
- * // Returns 'foo=bar&#x26;baz=qux&#x26;baz=quux&#x26;corge='
51
- *
52
- * querystring.stringify({ foo: 'bar', baz: 'qux' }, ';', ':');
53
- * // Returns 'foo:bar;baz:qux'
54
- * ```
55
- *
56
- * By default, characters requiring percent-encoding within the query string will
57
- * be encoded as UTF-8\. If an alternative encoding is required, then an alternative`encodeURIComponent` option will need to be specified:
58
- *
59
- * ```js
60
- * // Assuming gbkEncodeURIComponent function already exists,
61
- *
62
- * querystring.stringify({ w: '中文', foo: 'bar' }, null, null,
63
- * { encodeURIComponent: gbkEncodeURIComponent });
64
- * ```
65
- * @since v0.1.25
66
- * @param obj The object to serialize into a URL query string
67
- * @param [sep='&'] The substring used to delimit key and value pairs in the query string.
68
- * @param [eq='='] . The substring used to delimit keys and values in the query string.
69
- */
70
- function stringify(obj?: ParsedUrlQueryInput, sep?: string, eq?: string, options?: StringifyOptions): string;
71
- /**
72
- * The `querystring.parse()` method parses a URL query string (`str`) into a
73
- * collection of key and value pairs.
74
- *
75
- * For example, the query string `'foo=bar&#x26;abc=xyz&#x26;abc=123'` is parsed into:
76
- *
77
- * ```js
78
- * {
79
- * foo: 'bar',
80
- * abc: ['xyz', '123']
81
- * }
82
- * ```
83
- *
84
- * The object returned by the `querystring.parse()` method _does not_prototypically inherit from the JavaScript `Object`. This means that typical`Object` methods such as `obj.toString()`,
85
- * `obj.hasOwnProperty()`, and others
86
- * are not defined and _will not work_.
87
- *
88
- * By default, percent-encoded characters within the query string will be assumed
89
- * to use UTF-8 encoding. If an alternative character encoding is used, then an
90
- * alternative `decodeURIComponent` option will need to be specified:
91
- *
92
- * ```js
93
- * // Assuming gbkDecodeURIComponent function already exists...
94
- *
95
- * querystring.parse('w=%D6%D0%CE%C4&#x26;foo=bar', null, null,
96
- * { decodeURIComponent: gbkDecodeURIComponent });
97
- * ```
98
- * @since v0.1.25
99
- * @param str The URL query string to parse
100
- * @param [sep='&'] The substring used to delimit key and value pairs in the query string.
101
- * @param [eq='='] . The substring used to delimit keys and values in the query string.
102
- */
103
- function parse(str: string, sep?: string, eq?: string, options?: ParseOptions): ParsedUrlQuery;
104
- /**
105
- * The querystring.encode() function is an alias for querystring.stringify().
106
- */
107
- const encode: typeof stringify;
108
- /**
109
- * The querystring.decode() function is an alias for querystring.parse().
110
- */
111
- const decode: typeof parse;
112
- /**
113
- * The `querystring.escape()` method performs URL percent-encoding on the given`str` in a manner that is optimized for the specific requirements of URL
114
- * query strings.
115
- *
116
- * The `querystring.escape()` method is used by `querystring.stringify()` and is
117
- * generally not expected to be used directly. It is exported primarily to allow
118
- * application code to provide a replacement percent-encoding implementation if
119
- * necessary by assigning `querystring.escape` to an alternative function.
120
- * @since v0.1.25
121
- */
122
- function escape(str: string): string;
123
- /**
124
- * The `querystring.unescape()` method performs decoding of URL percent-encoded
125
- * characters on the given `str`.
126
- *
127
- * The `querystring.unescape()` method is used by `querystring.parse()` and is
128
- * generally not expected to be used directly. It is exported primarily to allow
129
- * application code to provide a replacement decoding implementation if
130
- * necessary by assigning `querystring.unescape` to an alternative function.
131
- *
132
- * By default, the `querystring.unescape()` method will attempt to use the
133
- * JavaScript built-in `decodeURIComponent()` method to decode. If that fails,
134
- * a safer equivalent that does not throw on malformed URLs will be used.
135
- * @since v0.1.25
136
- */
137
- function unescape(str: string): string;
138
- }
139
- declare module "node:querystring" {
140
- export * from "querystring";
141
- }
@@ -1,143 +0,0 @@
1
- /**
2
- * The `readline/promise` module provides an API for reading lines of input from a Readable stream one line at a time.
3
- *
4
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/readline/promises.js)
5
- * @since v17.0.0
6
- */
7
- declare module "readline/promises" {
8
- import { AsyncCompleter, Completer, Direction, Interface as _Interface, ReadLineOptions } from "node:readline";
9
- import { Abortable } from "node:events";
10
-
11
- class Interface extends _Interface {
12
- /**
13
- * The rl.question() method displays the query by writing it to the output, waits for user input to be provided on input,
14
- * then invokes the callback function passing the provided input as the first argument.
15
- *
16
- * When called, rl.question() will resume the input stream if it has been paused.
17
- *
18
- * If the readlinePromises.Interface was created with output set to null or undefined the query is not written.
19
- *
20
- * If the question is called after rl.close(), it returns a rejected promise.
21
- *
22
- * Example usage:
23
- *
24
- * ```js
25
- * const answer = await rl.question('What is your favorite food? ');
26
- * console.log(`Oh, so your favorite food is ${answer}`);
27
- * ```
28
- *
29
- * Using an AbortSignal to cancel a question.
30
- *
31
- * ```js
32
- * const signal = AbortSignal.timeout(10_000);
33
- *
34
- * signal.addEventListener('abort', () => {
35
- * console.log('The food question timed out');
36
- * }, { once: true });
37
- *
38
- * const answer = await rl.question('What is your favorite food? ', { signal });
39
- * console.log(`Oh, so your favorite food is ${answer}`);
40
- * ```
41
- *
42
- * @since v17.0.0
43
- * @param query A statement or query to write to output, prepended to the prompt.
44
- */
45
- question(query: string): Promise<string>;
46
- question(query: string, options: Abortable): Promise<string>;
47
- }
48
-
49
- class Readline {
50
- /**
51
- * @param stream A TTY stream.
52
- */
53
- constructor(stream: NodeJS.WritableStream, options?: { autoCommit?: boolean });
54
- /**
55
- * The `rl.clearLine()` method adds to the internal list of pending action an action that clears current line of the associated `stream` in a specified direction identified by `dir`.
56
- * Call `rl.commit()` to see the effect of this method, unless `autoCommit: true` was passed to the constructor.
57
- */
58
- clearLine(dir: Direction): this;
59
- /**
60
- * The `rl.clearScreenDown()` method adds to the internal list of pending action an action that clears the associated `stream` from the current position of the cursor down.
61
- * Call `rl.commit()` to see the effect of this method, unless `autoCommit: true` was passed to the constructor.
62
- */
63
- clearScreenDown(): this;
64
- /**
65
- * The `rl.commit()` method sends all the pending actions to the associated `stream` and clears the internal list of pending actions.
66
- */
67
- commit(): Promise<void>;
68
- /**
69
- * The `rl.cursorTo()` method adds to the internal list of pending action an action that moves cursor to the specified position in the associated `stream`.
70
- * Call `rl.commit()` to see the effect of this method, unless `autoCommit: true` was passed to the constructor.
71
- */
72
- cursorTo(x: number, y?: number): this;
73
- /**
74
- * The `rl.moveCursor()` method adds to the internal list of pending action an action that moves the cursor relative to its current position in the associated `stream`.
75
- * Call `rl.commit()` to see the effect of this method, unless autoCommit: true was passed to the constructor.
76
- */
77
- moveCursor(dx: number, dy: number): this;
78
- /**
79
- * The `rl.rollback()` method clears the internal list of pending actions without sending it to the associated `stream`.
80
- */
81
- rollback(): this;
82
- }
83
-
84
- /**
85
- * The `readlinePromises.createInterface()` method creates a new `readlinePromises.Interface` instance.
86
- *
87
- * ```js
88
- * const readlinePromises = require('node:readline/promises');
89
- * const rl = readlinePromises.createInterface({
90
- * input: process.stdin,
91
- * output: process.stdout
92
- * });
93
- * ```
94
- *
95
- * Once the `readlinePromises.Interface` instance is created, the most common case is to listen for the `'line'` event:
96
- *
97
- * ```js
98
- * rl.on('line', (line) => {
99
- * console.log(`Received: ${line}`);
100
- * });
101
- * ```
102
- *
103
- * If `terminal` is `true` for this instance then the `output` stream will get the best compatibility if it defines an `output.columns` property,
104
- * and emits a `'resize'` event on the `output`, if or when the columns ever change (`process.stdout` does this automatically when it is a TTY).
105
- *
106
- * ## Use of the `completer` function
107
- *
108
- * The `completer` function takes the current line entered by the user as an argument, and returns an `Array` with 2 entries:
109
- *
110
- * - An Array with matching entries for the completion.
111
- * - The substring that was used for the matching.
112
- *
113
- * For instance: `[[substr1, substr2, ...], originalsubstring]`.
114
- *
115
- * ```js
116
- * function completer(line) {
117
- * const completions = '.help .error .exit .quit .q'.split(' ');
118
- * const hits = completions.filter((c) => c.startsWith(line));
119
- * // Show all completions if none found
120
- * return [hits.length ? hits : completions, line];
121
- * }
122
- * ```
123
- *
124
- * The `completer` function can also returns a `Promise`, or be asynchronous:
125
- *
126
- * ```js
127
- * async function completer(linePartial) {
128
- * await someAsyncWork();
129
- * return [['123'], linePartial];
130
- * }
131
- * ```
132
- */
133
- function createInterface(
134
- input: NodeJS.ReadableStream,
135
- output?: NodeJS.WritableStream,
136
- completer?: Completer | AsyncCompleter,
137
- terminal?: boolean,
138
- ): Interface;
139
- function createInterface(options: ReadLineOptions): Interface;
140
- }
141
- declare module "node:readline/promises" {
142
- export * from "readline/promises";
143
- }