@rindo/core 1.17.4 → 2.5.2

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 (164) hide show
  1. package/LICENSE.md +27 -27
  2. package/bin/cli.ts +20 -0
  3. package/bin/rindo +51 -56
  4. package/cli/index.cjs +1263 -0
  5. package/cli/index.d.ts +1 -1
  6. package/cli/index.js +1232 -495
  7. package/cli/package.json +9 -4
  8. package/compiler/lib.d.ts +24 -0
  9. package/compiler/lib.dom.d.ts +20230 -0
  10. package/compiler/lib.dom.iterable.d.ts +351 -0
  11. package/compiler/lib.es2015.collection.d.ts +89 -0
  12. package/compiler/lib.es2015.core.d.ts +517 -0
  13. package/compiler/lib.es2015.d.ts +30 -0
  14. package/compiler/lib.es2015.generator.d.ts +79 -0
  15. package/compiler/lib.es2015.iterable.d.ts +505 -0
  16. package/compiler/lib.es2015.promise.d.ts +150 -0
  17. package/compiler/lib.es2015.proxy.d.ts +41 -0
  18. package/compiler/lib.es2015.reflect.d.ts +123 -0
  19. package/compiler/lib.es2015.symbol.d.ts +48 -0
  20. package/compiler/lib.es2015.symbol.wellknown.d.ts +324 -0
  21. package/compiler/lib.es2016.array.include.d.ts +118 -0
  22. package/compiler/lib.es2016.d.ts +22 -0
  23. package/compiler/lib.es2016.full.d.ts +25 -0
  24. package/compiler/lib.es2017.d.ts +26 -0
  25. package/compiler/lib.es2017.full.d.ts +25 -0
  26. package/compiler/lib.es2017.intl.d.ts +32 -0
  27. package/compiler/lib.es2017.object.d.ts +51 -0
  28. package/compiler/lib.es2017.sharedmemory.d.ts +137 -0
  29. package/compiler/lib.es2017.string.d.ts +47 -0
  30. package/compiler/lib.es2017.typedarrays.d.ts +55 -0
  31. package/compiler/lib.es2018.asyncgenerator.d.ts +79 -0
  32. package/compiler/lib.es2018.asynciterable.d.ts +45 -0
  33. package/compiler/lib.es2018.d.ts +26 -0
  34. package/compiler/lib.es2018.full.d.ts +25 -0
  35. package/compiler/lib.es2018.intl.d.ts +61 -0
  36. package/compiler/lib.es2018.promise.d.ts +32 -0
  37. package/compiler/lib.es2018.regexp.d.ts +39 -0
  38. package/compiler/lib.es2019.array.d.ts +85 -0
  39. package/compiler/lib.es2019.d.ts +25 -0
  40. package/compiler/lib.es2019.full.d.ts +25 -0
  41. package/compiler/lib.es2019.object.d.ts +35 -0
  42. package/compiler/lib.es2019.string.d.ts +33 -0
  43. package/compiler/lib.es2019.symbol.d.ts +26 -0
  44. package/compiler/lib.es2020.bigint.d.ts +728 -0
  45. package/compiler/lib.es2020.d.ts +27 -0
  46. package/compiler/lib.es2020.full.d.ts +25 -0
  47. package/compiler/lib.es2020.intl.d.ts +310 -0
  48. package/compiler/lib.es2020.promise.d.ts +50 -0
  49. package/compiler/lib.es2020.sharedmemory.d.ts +99 -0
  50. package/compiler/lib.es2020.string.d.ts +30 -0
  51. package/compiler/lib.es2020.symbol.wellknown.d.ts +39 -0
  52. package/compiler/lib.es5.d.ts +4435 -0
  53. package/compiler/lib.es6.d.ts +25 -0
  54. package/compiler/lib.esnext.d.ts +25 -0
  55. package/compiler/lib.esnext.full.d.ts +25 -0
  56. package/compiler/lib.esnext.intl.d.ts +32 -0
  57. package/compiler/lib.esnext.promise.d.ts +43 -0
  58. package/compiler/lib.esnext.string.d.ts +35 -0
  59. package/compiler/lib.esnext.weakref.d.ts +75 -0
  60. package/compiler/lib.scripthost.d.ts +327 -0
  61. package/compiler/lib.webworker.d.ts +6042 -0
  62. package/compiler/lib.webworker.importscripts.d.ts +26 -0
  63. package/compiler/lib.webworker.iterable.d.ts +166 -0
  64. package/compiler/package.json +3 -3
  65. package/compiler/rindo.d.ts +0 -16
  66. package/compiler/rindo.js +42738 -40541
  67. package/compiler/rindo.min.js +2 -15
  68. package/dependencies.json +73 -50
  69. package/dev-server/client/index.js +33 -10
  70. package/dev-server/client/package.json +3 -3
  71. package/dev-server/connector.html +3 -3
  72. package/dev-server/index.d.ts +3 -6
  73. package/dev-server/index.js +256 -252
  74. package/dev-server/package.json +3 -3
  75. package/dev-server/server-process.js +1738 -0
  76. package/dev-server/server-worker-thread.js +39 -0
  77. package/dev-server/templates/initial-load.html +160 -160
  78. package/dev-server/ws.js +1 -1
  79. package/internal/app-data/{index.cjs.js → index.cjs} +7 -5
  80. package/internal/app-data/index.d.ts +1 -0
  81. package/internal/app-data/index.js +7 -6
  82. package/internal/app-data/package.json +11 -5
  83. package/internal/client/css-shim.js +2 -2
  84. package/internal/client/dom.js +1 -1
  85. package/internal/client/index.js +193 -119
  86. package/internal/client/package.json +4 -3
  87. package/internal/client/{patch.js → patch-browser.js} +8 -24
  88. package/internal/client/patch-esm.js +23 -0
  89. package/internal/client/polyfills/css-shim.js +1 -1
  90. package/internal/client/polyfills/index.js +34 -34
  91. package/internal/client/shadow-css.js +9 -3
  92. package/internal/hydrate/index.js +305 -281
  93. package/internal/hydrate/package.json +2 -2
  94. package/internal/hydrate/runner.d.ts +24 -12
  95. package/internal/hydrate/runner.js +153 -124
  96. package/internal/hydrate/shadow-css.js +24 -24
  97. package/internal/package.json +5 -4
  98. package/internal/rindo-core/index.cjs +1 -0
  99. package/internal/rindo-core/index.d.ts +51 -2
  100. package/internal/rindo-core/index.js +15 -1
  101. package/internal/rindo-ext-modules.d.ts +41 -39
  102. package/internal/rindo-private.d.ts +93 -148
  103. package/internal/rindo-public-compiler.d.ts +231 -155
  104. package/internal/rindo-public-runtime.d.ts +42 -39
  105. package/internal/testing/index.js +144 -121
  106. package/internal/testing/package.json +2 -2
  107. package/internal/testing/shadow-css.js +24 -24
  108. package/mock-doc/index.cjs +4610 -0
  109. package/mock-doc/index.d.ts +12 -1
  110. package/mock-doc/index.js +177 -67
  111. package/mock-doc/package.json +11 -5
  112. package/package.json +132 -133
  113. package/readme.md +21 -95
  114. package/screenshot/compare/build/app.js +33 -33
  115. package/screenshot/compare/build/p-f4745c2f.entry.js +1 -1
  116. package/screenshot/connector-base.d.ts +1 -1
  117. package/screenshot/connector-local.d.ts +1 -1
  118. package/screenshot/index.js +63 -46
  119. package/screenshot/package.json +10 -3
  120. package/screenshot/pixel-match.js +54 -57
  121. package/screenshot/screenshot-compare.d.ts +1 -1
  122. package/screenshot/screenshot-fs.d.ts +1 -1
  123. package/sys/deno/index.js +1785 -0
  124. package/sys/deno/node-compat.js +2654 -0
  125. package/sys/deno/worker.js +44 -0
  126. package/sys/node/autoprefixer.js +8 -1
  127. package/sys/node/glob.js +1 -1
  128. package/sys/node/graceful-fs.js +1 -1
  129. package/sys/node/index.d.ts +1 -1
  130. package/sys/node/index.js +689 -705
  131. package/sys/node/node-fetch.js +1 -1
  132. package/sys/node/package.json +3 -3
  133. package/sys/node/prompts.js +1 -1
  134. package/sys/node/worker.js +38 -19
  135. package/testing/index.d.ts +3 -3
  136. package/testing/index.js +863 -749
  137. package/testing/jest/jest-config.d.ts +2 -89
  138. package/testing/jest/jest-environment.d.ts +1 -1
  139. package/testing/jest/jest-runner.d.ts +1 -1
  140. package/testing/jest/jest-screenshot.d.ts +1 -1
  141. package/testing/jest-preset.js +32 -32
  142. package/testing/matchers/events.d.ts +1 -1
  143. package/testing/matchers/screenshot.d.ts +1 -1
  144. package/testing/mock-fetch.d.ts +1 -1
  145. package/testing/mocks.d.ts +1 -1
  146. package/testing/package.json +3 -3
  147. package/testing/puppeteer/index.d.ts +1 -1
  148. package/testing/puppeteer/puppeteer-browser.d.ts +2 -2
  149. package/testing/puppeteer/puppeteer-declarations.d.ts +11 -11
  150. package/testing/puppeteer/puppeteer-element.d.ts +3 -3
  151. package/testing/puppeteer/puppeteer-emulate.d.ts +1 -1
  152. package/testing/puppeteer/puppeteer-events.d.ts +3 -3
  153. package/testing/puppeteer/puppeteer-page.d.ts +1 -1
  154. package/testing/puppeteer/puppeteer-screenshot.d.ts +2 -2
  155. package/testing/reset-build-conditionals.d.ts +1 -1
  156. package/testing/spec-page.d.ts +1 -1
  157. package/testing/test-transpile.d.ts +1 -1
  158. package/testing/testing-logger.d.ts +1 -1
  159. package/testing/testing-utils.d.ts +1 -1
  160. package/testing/testing.d.ts +1 -1
  161. package/cli/index.cjs.js +0 -524
  162. package/dev-server/content-type-db.json +0 -1
  163. package/dev-server/server-worker.js +0 -1570
  164. package/mock-doc/index.cjs.js +0 -4500
@@ -0,0 +1,27 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ /// <reference lib="es2019" />
22
+ /// <reference lib="es2020.bigint" />
23
+ /// <reference lib="es2020.promise" />
24
+ /// <reference lib="es2020.sharedmemory" />
25
+ /// <reference lib="es2020.string" />
26
+ /// <reference lib="es2020.symbol.wellknown" />
27
+ /// <reference lib="es2020.intl" />
@@ -0,0 +1,25 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ /// <reference lib="es2020" />
22
+ /// <reference lib="dom" />
23
+ /// <reference lib="webworker.importscripts" />
24
+ /// <reference lib="scripthost" />
25
+ /// <reference lib="dom.iterable" />
@@ -0,0 +1,310 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ declare namespace Intl {
22
+
23
+ /**
24
+ * [BCP 47 language tag](http://tools.ietf.org/html/rfc5646) definition.
25
+ *
26
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument).
27
+ *
28
+ * [Wikipedia](https://en.wikipedia.org/wiki/IETF_language_tag).
29
+ */
30
+ type BCP47LanguageTag = string;
31
+
32
+ /**
33
+ * Unit to use in the relative time internationalized message.
34
+ *
35
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format#Parameters).
36
+ *
37
+ * [Specification](https://tc39.es/ecma402/#sec-singularrelativetimeunit).
38
+ */
39
+ type RelativeTimeFormatUnit =
40
+ | "year" | "years"
41
+ | "quarter" | "quarters"
42
+ | "month" | "months"
43
+ | "week" | "weeks"
44
+ | "day" | "days"
45
+ | "hour" | "hours"
46
+ | "minute" | "minutes"
47
+ | "second" | "seconds"
48
+ ;
49
+
50
+ /**
51
+ * The locale matching algorithm to use.
52
+ *
53
+ * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation).
54
+ *
55
+ * [Specification](https://tc39.es/ecma402/#sec-InitializeRelativeTimeFormat).
56
+ */
57
+ type RelativeTimeFormatLocaleMatcher = "lookup" | "best fit";
58
+
59
+ /**
60
+ * The format of output message.
61
+ *
62
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
63
+ *
64
+ * [Specification](https://tc39.es/ecma402/#sec-InitializeRelativeTimeFormat).
65
+ */
66
+ type RelativeTimeFormatNumeric = "always" | "auto";
67
+
68
+ /**
69
+ * The length of the internationalized message.
70
+ *
71
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
72
+ *
73
+ * [Specification](https://tc39.es/ecma402/#sec-InitializeRelativeTimeFormat).
74
+ */
75
+ type RelativeTimeFormatStyle = "long" | "short" | "narrow";
76
+
77
+ /**
78
+ * An object with some or all of properties of `options` parameter
79
+ * of `Intl.RelativeTimeFormat` constructor.
80
+ *
81
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
82
+ *
83
+ * [Specification](https://tc39.es/ecma402/#sec-InitializeRelativeTimeFormat).
84
+ */
85
+ interface RelativeTimeFormatOptions {
86
+ localeMatcher?: RelativeTimeFormatLocaleMatcher;
87
+ numeric?: RelativeTimeFormatNumeric;
88
+ style?: RelativeTimeFormatStyle;
89
+ }
90
+
91
+ /**
92
+ * An object with properties reflecting the locale
93
+ * and formatting options computed during initialization
94
+ * of the `Intel.RelativeTimeFormat` object
95
+ *
96
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions#Description).
97
+ *
98
+ * [Specification](https://tc39.es/ecma402/#table-relativetimeformat-resolvedoptions-properties)
99
+ */
100
+ interface ResolvedRelativeTimeFormatOptions {
101
+ locale: BCP47LanguageTag;
102
+ style: RelativeTimeFormatStyle;
103
+ numeric: RelativeTimeFormatNumeric;
104
+ numberingSystem: string;
105
+ }
106
+
107
+ /**
108
+ * An object representing the relative time format in parts
109
+ * that can be used for custom locale-aware formatting.
110
+ *
111
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts).
112
+ *
113
+ * [Specification](https://tc39.es/ecma402/#sec-FormatRelativeTimeToParts).
114
+ */
115
+ interface RelativeTimeFormatPart {
116
+ type: string;
117
+ value: string;
118
+ unit?: RelativeTimeFormatUnit;
119
+ }
120
+
121
+ interface RelativeTimeFormat {
122
+ /**
123
+ * Formats a value and a unit according to the locale
124
+ * and formatting options of the given
125
+ * [`Intl.RelativeTimeFormat`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat)
126
+ * object.
127
+ *
128
+ * While this method automatically provides the correct plural forms,
129
+ * the grammatical form is otherwise as neutral as possible.
130
+ * It is the caller's responsibility to handle cut-off logic
131
+ * such as deciding between displaying "in 7 days" or "in 1 week".
132
+ * This API does not support relative dates involving compound units.
133
+ * e.g "in 5 days and 4 hours".
134
+ *
135
+ * @param value - Numeric value to use in the internationalized relative time message
136
+ *
137
+ * @param unit - [Unit](https://tc39.es/ecma402/#sec-singularrelativetimeunit)
138
+ * to use in the relative time internationalized message.
139
+ * Possible values are: `"year"`, `"quarter"`, `"month"`, `"week"`,
140
+ * `"day"`, `"hour"`, `"minute"`, `"second"`.
141
+ * Plural forms are also permitted.
142
+ *
143
+ * @throws `RangeError` if `unit` was given something other than `unit` possible values
144
+ *
145
+ * @returns Internationalized relative time message as string
146
+ *
147
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format).
148
+ *
149
+ * [Specification](https://tc39.es/ecma402/#sec-Intl.RelativeTimeFormat.prototype.format).
150
+ */
151
+ format(
152
+ value: number,
153
+ unit: RelativeTimeFormatUnit,
154
+ ): string;
155
+
156
+ /**
157
+ * A version of the format method which it returns an array of objects
158
+ * which represent "parts" of the object,
159
+ * separating the formatted number into its constituent parts
160
+ * and separating it from other surrounding text.
161
+ * These objects have two properties:
162
+ * `type` a NumberFormat formatToParts type, and `value`,
163
+ * which is the String which is the component of the output.
164
+ * If a "part" came from NumberFormat,
165
+ * it will have a unit property which indicates the `unit` being formatted;
166
+ * literals which are part of the larger frame will not have this property.
167
+ *
168
+ * @param value - Numeric value to use in the internationalized relative time message
169
+ *
170
+ * @param unit - [Unit](https://tc39.es/ecma402/#sec-singularrelativetimeunit)
171
+ * to use in the relative time internationalized message.
172
+ * Possible values are: `"year"`, `"quarter"`, `"month"`, `"week"`,
173
+ * `"day"`, `"hour"`, `"minute"`, `"second"`.
174
+ * Plural forms are also permitted.
175
+ *
176
+ * @throws `RangeError` if `unit` was given something other than `unit` possible values
177
+ *
178
+ * @returns Array of [FormatRelativeTimeToParts](https://tc39.es/ecma402/#sec-FormatRelativeTimeToParts)
179
+ *
180
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts).
181
+ *
182
+ * [Specification](https://tc39.es/ecma402/#sec-Intl.RelativeTimeFormat.prototype.formatToParts).
183
+ */
184
+ formatToParts(
185
+ value: number,
186
+ unit: RelativeTimeFormatUnit,
187
+ ): RelativeTimeFormatPart[];
188
+
189
+ /**
190
+ * Provides access to the locale and options computed during initialization of this `Intl.RelativeTimeFormat` object.
191
+ *
192
+ * @returns A new object with properties reflecting the locale
193
+ * and formatting options computed during initialization
194
+ * of the `Intel.RelativeTimeFormat` object.
195
+ *
196
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions).
197
+ *
198
+ * [Specification](https://tc39.es/ecma402/#sec-intl.relativetimeformat.prototype.resolvedoptions)
199
+ */
200
+ resolvedOptions(): ResolvedRelativeTimeFormatOptions;
201
+ }
202
+
203
+ /**
204
+ * The [`Intl.RelativeTimeFormat`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat)
205
+ * object is a constructor for objects that enable language-sensitive relative time formatting.
206
+ *
207
+ * Part of [Intl object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl)
208
+ * namespace and the [ECMAScript Internationalization API](https://www.ecma-international.org/publications/standards/Ecma-402.htm).
209
+ *
210
+ * [Compatibility](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat#Browser_compatibility).
211
+ *
212
+ * [Polyfills](https://github.com/tc39/proposal-intl-relative-time#polyfills).
213
+ */
214
+ const RelativeTimeFormat: {
215
+ /**
216
+ * Constructor creates [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat)
217
+ * objects
218
+ *
219
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
220
+ * For the general form and interpretation of the locales argument,
221
+ * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
222
+ *
223
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters)
224
+ * with some or all of options of the formatting.
225
+ * An object with some or all of the following properties:
226
+ * - `localeMatcher` - The locale matching algorithm to use.
227
+ * Possible values are `"lookup"` and `"best fit"`; the default is `"best fit"`.
228
+ * For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation).
229
+ * - `numeric` - The format of output message.
230
+ * Possible values are: `"always"` (default, e.g., `1 day ago`) or `"auto"` (e.g., `yesterday`).
231
+ * The `"auto"` value allows to not always have to use numeric values in the output.
232
+ * - `style` - The length of the internationalized message. Possible values are:
233
+ * `"long"` (default, e.g., in 1 month),
234
+ * `"short"` (e.g., in 1 mo.)
235
+ * or `"narrow"` (e.g., in 1 mo.). The narrow style could be similar to the short style for some locales.
236
+ *
237
+ * @returns [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) object.
238
+ *
239
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat).
240
+ *
241
+ * [Specification](https://tc39.es/ecma402/#sec-intl-relativetimeformat-constructor).
242
+ */
243
+ new(
244
+ locales?: BCP47LanguageTag | BCP47LanguageTag[],
245
+ options?: RelativeTimeFormatOptions,
246
+ ): RelativeTimeFormat;
247
+
248
+ /**
249
+ * Returns an array containing those of the provided locales
250
+ * that are supported in date and time formatting
251
+ * without having to fall back to the runtime's default locale.
252
+ *
253
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
254
+ * For the general form and interpretation of the locales argument,
255
+ * see the [`Intl` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
256
+ *
257
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters)
258
+ * with some or all of options of the formatting.
259
+ * An object with some or all of the following properties:
260
+ * - `localeMatcher` - The locale matching algorithm to use.
261
+ * Possible values are `"lookup"` and `"best fit"`; the default is `"best fit"`.
262
+ * For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation).
263
+ * - `numeric` - The format of output message.
264
+ * Possible values are: `"always"` (default, e.g., `1 day ago`) or `"auto"` (e.g., `yesterday`).
265
+ * The `"auto"` value allows to not always have to use numeric values in the output.
266
+ * - `style` - The length of the internationalized message. Possible values are:
267
+ * `"long"` (default, e.g., in 1 month),
268
+ * `"short"` (e.g., in 1 mo.)
269
+ * or `"narrow"` (e.g., in 1 mo.). The narrow style could be similar to the short style for some locales.
270
+ *
271
+ * @returns An array containing those of the provided locales
272
+ * that are supported in date and time formatting
273
+ * without having to fall back to the runtime's default locale.
274
+ *
275
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/supportedLocalesOf).
276
+ *
277
+ * [Specification](https://tc39.es/ecma402/#sec-Intl.RelativeTimeFormat.supportedLocalesOf).
278
+ */
279
+ supportedLocalesOf(
280
+ locales: BCP47LanguageTag | BCP47LanguageTag[],
281
+ options?: RelativeTimeFormatOptions,
282
+ ): BCP47LanguageTag[];
283
+ };
284
+
285
+ interface NumberFormatOptions {
286
+ compactDisplay?: string;
287
+ notation?: string;
288
+ signDisplay?: string;
289
+ unit?: string;
290
+ unitDisplay?: string;
291
+ }
292
+
293
+ interface ResolvedNumberFormatOptions {
294
+ compactDisplay?: string;
295
+ notation?: string;
296
+ signDisplay?: string;
297
+ unit?: string;
298
+ unitDisplay?: string;
299
+ }
300
+
301
+ interface DateTimeFormatOptions {
302
+ dateStyle?: "full" | "long" | "medium" | "short";
303
+ timeStyle?: "full" | "long" | "medium" | "short";
304
+ calendar?: string;
305
+ dayPeriod?: "narrow" | "short" | "long";
306
+ numberingSystem?: string;
307
+ hourCycle?: "h11" | "h12" | "h23" | "h24";
308
+ fractionalSecondDigits?: 0 | 1 | 2 | 3;
309
+ }
310
+ }
@@ -0,0 +1,50 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ interface PromiseFulfilledResult<T> {
22
+ status: "fulfilled";
23
+ value: T;
24
+ }
25
+
26
+ interface PromiseRejectedResult {
27
+ status: "rejected";
28
+ reason: any;
29
+ }
30
+
31
+ type PromiseSettledResult<T> = PromiseFulfilledResult<T> | PromiseRejectedResult;
32
+
33
+ interface PromiseConstructor {
34
+ /**
35
+ * Creates a Promise that is resolved with an array of results when all
36
+ * of the provided Promises resolve or reject.
37
+ * @param values An array of Promises.
38
+ * @returns A new Promise.
39
+ */
40
+ allSettled<T extends readonly unknown[] | readonly [unknown]>(values: T):
41
+ Promise<{ -readonly [P in keyof T]: PromiseSettledResult<T[P] extends PromiseLike<infer U> ? U : T[P]> }>;
42
+
43
+ /**
44
+ * Creates a Promise that is resolved with an array of results when all
45
+ * of the provided Promises resolve or reject.
46
+ * @param values An array of Promises.
47
+ * @returns A new Promise.
48
+ */
49
+ allSettled<T>(values: Iterable<T>): Promise<PromiseSettledResult<T extends PromiseLike<infer U> ? U : T>[]>;
50
+ }
@@ -0,0 +1,99 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ interface Atomics {
22
+ /**
23
+ * Adds a value to the value at the given position in the array, returning the original value.
24
+ * Until this atomic operation completes, any other read or write operation against the array
25
+ * will block.
26
+ */
27
+ add(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
28
+
29
+ /**
30
+ * Stores the bitwise AND of a value with the value at the given position in the array,
31
+ * returning the original value. Until this atomic operation completes, any other read or
32
+ * write operation against the array will block.
33
+ */
34
+ and(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
35
+
36
+ /**
37
+ * Replaces the value at the given position in the array if the original value equals the given
38
+ * expected value, returning the original value. Until this atomic operation completes, any
39
+ * other read or write operation against the array will block.
40
+ */
41
+ compareExchange(typedArray: BigInt64Array | BigUint64Array, index: number, expectedValue: bigint, replacementValue: bigint): bigint;
42
+
43
+ /**
44
+ * Replaces the value at the given position in the array, returning the original value. Until
45
+ * this atomic operation completes, any other read or write operation against the array will
46
+ * block.
47
+ */
48
+ exchange(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
49
+
50
+ /**
51
+ * Returns the value at the given position in the array. Until this atomic operation completes,
52
+ * any other read or write operation against the array will block.
53
+ */
54
+ load(typedArray: BigInt64Array | BigUint64Array, index: number): bigint;
55
+
56
+ /**
57
+ * Stores the bitwise OR of a value with the value at the given position in the array,
58
+ * returning the original value. Until this atomic operation completes, any other read or write
59
+ * operation against the array will block.
60
+ */
61
+ or(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
62
+
63
+ /**
64
+ * Stores a value at the given position in the array, returning the new value. Until this
65
+ * atomic operation completes, any other read or write operation against the array will block.
66
+ */
67
+ store(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
68
+
69
+ /**
70
+ * Subtracts a value from the value at the given position in the array, returning the original
71
+ * value. Until this atomic operation completes, any other read or write operation against the
72
+ * array will block.
73
+ */
74
+ sub(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
75
+
76
+ /**
77
+ * If the value at the given position in the array is equal to the provided value, the current
78
+ * agent is put to sleep causing execution to suspend until the timeout expires (returning
79
+ * `"timed-out"`) or until the agent is awoken (returning `"ok"`); otherwise, returns
80
+ * `"not-equal"`.
81
+ */
82
+ wait(typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out";
83
+
84
+ /**
85
+ * Wakes up sleeping agents that are waiting on the given index of the array, returning the
86
+ * number of agents that were awoken.
87
+ * @param typedArray A shared BigInt64Array.
88
+ * @param index The position in the typedArray to wake up on.
89
+ * @param count The number of sleeping agents to notify. Defaults to +Infinity.
90
+ */
91
+ notify(typedArray: BigInt64Array, index: number, count?: number): number;
92
+
93
+ /**
94
+ * Stores the bitwise XOR of a value with the value at the given position in the array,
95
+ * returning the original value. Until this atomic operation completes, any other read or write
96
+ * operation against the array will block.
97
+ */
98
+ xor(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
99
+ }
@@ -0,0 +1,30 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ /// <reference lib="es2015.iterable" />
22
+
23
+ interface String {
24
+ /**
25
+ * Matches a string with a regular expression, and returns an iterable of matches
26
+ * containing the results of that search.
27
+ * @param regexp A variable name or string literal containing the regular expression pattern and flags.
28
+ */
29
+ matchAll(regexp: RegExp): IterableIterator<RegExpMatchArray>;
30
+ }
@@ -0,0 +1,39 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ /// <reference lib="es2015.iterable" />
22
+ /// <reference lib="es2015.symbol" />
23
+
24
+ interface SymbolConstructor {
25
+ /**
26
+ * A regular expression method that matches the regular expression against a string. Called
27
+ * by the String.prototype.matchAll method.
28
+ */
29
+ readonly matchAll: symbol;
30
+ }
31
+
32
+ interface RegExp {
33
+ /**
34
+ * Matches a string with this regular expression, and returns an iterable of matches
35
+ * containing the results of that search.
36
+ * @param string A string to search within.
37
+ */
38
+ [Symbol.matchAll](str: string): IterableIterator<RegExpMatchArray>;
39
+ }