shelving 1.236.0 → 1.236.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 (793) hide show
  1. package/api/cache/APICache.d.ts +69 -6
  2. package/api/cache/APICache.js +61 -5
  3. package/api/cache/EndpointCache.d.ts +75 -7
  4. package/api/cache/EndpointCache.js +75 -7
  5. package/api/endpoint/Endpoint.d.ts +141 -25
  6. package/api/endpoint/Endpoint.js +55 -9
  7. package/api/endpoint/util.d.ts +28 -6
  8. package/api/provider/APIProvider.d.ts +58 -14
  9. package/api/provider/APIProvider.js +24 -2
  10. package/api/provider/CachedAPIProvider.d.ts +58 -5
  11. package/api/provider/CachedAPIProvider.js +58 -6
  12. package/api/provider/ClientAPIProvider.d.ts +80 -4
  13. package/api/provider/ClientAPIProvider.js +75 -4
  14. package/api/provider/DebugAPIProvider.d.ts +40 -1
  15. package/api/provider/DebugAPIProvider.js +40 -1
  16. package/api/provider/JSONAPIProvider.d.ts +18 -2
  17. package/api/provider/JSONAPIProvider.js +18 -2
  18. package/api/provider/LoggingAPIProvider.d.ts +25 -2
  19. package/api/provider/LoggingAPIProvider.js +25 -2
  20. package/api/provider/MockAPIProvider.d.ts +72 -1
  21. package/api/provider/MockAPIProvider.js +60 -4
  22. package/api/provider/MockEndpointAPIProvider.d.ts +9 -0
  23. package/api/provider/MockEndpointAPIProvider.js +9 -0
  24. package/api/provider/ThroughAPIProvider.d.ts +67 -1
  25. package/api/provider/ThroughAPIProvider.js +67 -1
  26. package/api/provider/ValidationAPIProvider.d.ts +32 -1
  27. package/api/provider/ValidationAPIProvider.js +32 -1
  28. package/api/provider/XMLAPIProvider.d.ts +18 -2
  29. package/api/provider/XMLAPIProvider.js +18 -2
  30. package/api/store/EndpointStore.d.ts +24 -1
  31. package/api/store/EndpointStore.js +24 -1
  32. package/bun/BunPostgreSQLProvider.d.ts +38 -0
  33. package/bun/BunPostgreSQLProvider.js +38 -2
  34. package/cloudflare/CloudflareD1Provider.d.ts +29 -2
  35. package/cloudflare/CloudflareD1Provider.js +29 -2
  36. package/cloudflare/CloudflareKVProvider.d.ts +115 -0
  37. package/cloudflare/CloudflareKVProvider.js +115 -0
  38. package/cloudflare/types.d.ts +41 -7
  39. package/db/cache/CollectionCache.d.ts +83 -7
  40. package/db/cache/CollectionCache.js +83 -7
  41. package/db/cache/DBCache.d.ts +93 -8
  42. package/db/cache/DBCache.js +85 -7
  43. package/db/collection/Collection.d.ts +103 -15
  44. package/db/collection/Collection.js +58 -6
  45. package/db/migrate/DBMigrator.d.ts +29 -1
  46. package/db/migrate/DBMigrator.js +20 -1
  47. package/db/migrate/PostgreSQLMigrator.d.ts +8 -1
  48. package/db/migrate/PostgreSQLMigrator.js +8 -1
  49. package/db/migrate/SQLMigrator.d.ts +63 -4
  50. package/db/migrate/SQLMigrator.js +51 -1
  51. package/db/migrate/SQLiteMigrator.d.ts +8 -1
  52. package/db/migrate/SQLiteMigrator.js +8 -1
  53. package/db/provider/CacheDBProvider.d.ts +135 -1
  54. package/db/provider/CacheDBProvider.js +135 -1
  55. package/db/provider/ChangesDBProvider.d.ts +84 -3
  56. package/db/provider/ChangesDBProvider.js +77 -2
  57. package/db/provider/DBProvider.d.ts +148 -1
  58. package/db/provider/DBProvider.js +51 -1
  59. package/db/provider/DebugDBProvider.d.ts +118 -1
  60. package/db/provider/DebugDBProvider.js +118 -1
  61. package/db/provider/MemoryDBProvider.d.ts +262 -7
  62. package/db/provider/MemoryDBProvider.js +262 -7
  63. package/db/provider/MockDBProvider.d.ts +113 -2
  64. package/db/provider/MockDBProvider.js +106 -1
  65. package/db/provider/PostgreSQLProvider.d.ts +34 -2
  66. package/db/provider/PostgreSQLProvider.js +34 -4
  67. package/db/provider/SQLProvider.d.ts +250 -14
  68. package/db/provider/SQLProvider.js +237 -13
  69. package/db/provider/SQLiteProvider.d.ts +41 -1
  70. package/db/provider/SQLiteProvider.js +41 -4
  71. package/db/provider/ThroughDBProvider.d.ts +156 -1
  72. package/db/provider/ThroughDBProvider.js +156 -1
  73. package/db/provider/ValidationDBProvider.d.ts +120 -1
  74. package/db/provider/ValidationDBProvider.js +120 -1
  75. package/db/store/ItemStore.d.ts +38 -2
  76. package/db/store/ItemStore.js +38 -2
  77. package/db/store/QueryStore.d.ts +64 -6
  78. package/db/store/QueryStore.js +64 -6
  79. package/error/BaseError.d.ts +27 -2
  80. package/error/BaseError.js +14 -0
  81. package/error/Errors.d.ts +12 -1
  82. package/error/Errors.js +12 -1
  83. package/error/NetworkError.d.ts +13 -1
  84. package/error/NetworkError.js +13 -1
  85. package/error/RequestError.d.ts +90 -7
  86. package/error/RequestError.js +90 -7
  87. package/error/RequiredError.d.ts +11 -1
  88. package/error/RequiredError.js +11 -1
  89. package/error/ResponseError.d.ts +19 -2
  90. package/error/ResponseError.js +19 -2
  91. package/error/UnexpectedError.d.ts +14 -1
  92. package/error/UnexpectedError.js +14 -1
  93. package/error/UnimplementedError.d.ts +13 -1
  94. package/error/UnimplementedError.js +13 -1
  95. package/error/ValueError.d.ts +14 -1
  96. package/error/ValueError.js +14 -1
  97. package/extract/DirectoryExtractor.d.ts +35 -1
  98. package/extract/DirectoryExtractor.js +30 -0
  99. package/extract/Extractor.d.ts +21 -2
  100. package/extract/Extractor.js +7 -1
  101. package/extract/FileExtractor.d.ts +18 -0
  102. package/extract/FileExtractor.js +18 -0
  103. package/extract/IndexExtractor.d.ts +36 -1
  104. package/extract/IndexExtractor.js +31 -0
  105. package/extract/MarkupExtractor.d.ts +15 -0
  106. package/extract/MarkupExtractor.js +15 -0
  107. package/extract/MergingExtractor.d.ts +36 -1
  108. package/extract/MergingExtractor.js +31 -0
  109. package/extract/ModuleExtractor.d.ts +25 -1
  110. package/extract/ModuleExtractor.js +20 -0
  111. package/extract/PackageExtractor.d.ts +36 -1
  112. package/extract/PackageExtractor.js +31 -0
  113. package/extract/ThroughExtractor.d.ts +22 -1
  114. package/extract/ThroughExtractor.js +22 -1
  115. package/extract/TypescriptExtractor.d.ts +21 -0
  116. package/extract/TypescriptExtractor.js +28 -3
  117. package/firestore/client/FirestoreClientProvider.d.ts +129 -4
  118. package/firestore/client/FirestoreClientProvider.js +129 -4
  119. package/firestore/lite/FirestoreLiteProvider.d.ts +128 -3
  120. package/firestore/lite/FirestoreLiteProvider.js +128 -3
  121. package/firestore/server/FirestoreServerProvider.d.ts +129 -2
  122. package/firestore/server/FirestoreServerProvider.js +129 -2
  123. package/markup/MarkupParser.d.ts +57 -10
  124. package/markup/MarkupParser.js +50 -9
  125. package/markup/MarkupRule.d.ts +34 -1
  126. package/markup/Parser.d.ts +18 -0
  127. package/markup/Parser.js +11 -0
  128. package/markup/rule/blockquote.d.ts +3 -0
  129. package/markup/rule/blockquote.js +3 -0
  130. package/markup/rule/code.d.ts +3 -0
  131. package/markup/rule/code.js +3 -0
  132. package/markup/rule/fenced.d.ts +3 -0
  133. package/markup/rule/fenced.js +3 -0
  134. package/markup/rule/heading.d.ts +3 -0
  135. package/markup/rule/heading.js +3 -0
  136. package/markup/rule/index.d.ts +16 -3
  137. package/markup/rule/index.js +16 -3
  138. package/markup/rule/inline.d.ts +4 -1
  139. package/markup/rule/inline.js +5 -2
  140. package/markup/rule/linebreak.d.ts +3 -0
  141. package/markup/rule/linebreak.js +3 -0
  142. package/markup/rule/link.d.ts +6 -0
  143. package/markup/rule/link.js +6 -0
  144. package/markup/rule/ordered.d.ts +3 -0
  145. package/markup/rule/ordered.js +3 -0
  146. package/markup/rule/paragraph.d.ts +3 -0
  147. package/markup/rule/paragraph.js +3 -0
  148. package/markup/rule/separator.d.ts +3 -0
  149. package/markup/rule/separator.js +3 -0
  150. package/markup/rule/table.d.ts +3 -0
  151. package/markup/rule/table.js +3 -0
  152. package/markup/rule/unordered.d.ts +3 -0
  153. package/markup/rule/unordered.js +3 -0
  154. package/markup/util/regexp.d.ts +80 -3
  155. package/markup/util/regexp.js +44 -0
  156. package/package.json +1 -1
  157. package/react/createAPIContext.d.ts +15 -0
  158. package/react/createAPIContext.js +10 -0
  159. package/react/createDBContext.d.ts +15 -0
  160. package/react/createDBContext.js +10 -0
  161. package/react/useInstance.d.ts +11 -0
  162. package/react/useInstance.js +11 -0
  163. package/react/useLazy.d.ts +11 -0
  164. package/react/useMap.d.ts +14 -1
  165. package/react/useMap.js +14 -1
  166. package/react/useReduce.d.ts +12 -0
  167. package/react/useSequence.d.ts +10 -0
  168. package/react/useSequence.js +10 -0
  169. package/react/useStore.d.ts +16 -1
  170. package/schema/AddressSchema.d.ts +41 -4
  171. package/schema/AddressSchema.js +36 -3
  172. package/schema/ArraySchema.d.ts +48 -6
  173. package/schema/ArraySchema.js +40 -5
  174. package/schema/BooleanSchema.d.ts +59 -3
  175. package/schema/BooleanSchema.js +51 -2
  176. package/schema/ChoiceSchema.d.ts +61 -7
  177. package/schema/ChoiceSchema.js +44 -2
  178. package/schema/ColorSchema.d.ts +41 -8
  179. package/schema/ColorSchema.js +36 -7
  180. package/schema/CountrySchema.d.ts +44 -4
  181. package/schema/CountrySchema.js +39 -3
  182. package/schema/CurrencyAmountSchema.d.ts +104 -8
  183. package/schema/CurrencyAmountSchema.js +91 -4
  184. package/schema/CurrencyCodeSchema.d.ts +56 -4
  185. package/schema/CurrencyCodeSchema.js +49 -3
  186. package/schema/DataSchema.d.ts +101 -10
  187. package/schema/DataSchema.js +87 -8
  188. package/schema/DateSchema.d.ts +73 -4
  189. package/schema/DateSchema.js +57 -2
  190. package/schema/DateTimeSchema.d.ts +40 -3
  191. package/schema/DateTimeSchema.js +40 -3
  192. package/schema/DictionarySchema.d.ts +54 -4
  193. package/schema/DictionarySchema.js +47 -3
  194. package/schema/EmailSchema.d.ts +34 -3
  195. package/schema/EmailSchema.js +34 -3
  196. package/schema/EntitySchema.d.ts +45 -4
  197. package/schema/EntitySchema.js +38 -3
  198. package/schema/FileSchema.d.ts +45 -4
  199. package/schema/FileSchema.js +39 -3
  200. package/schema/KeySchema.d.ts +32 -3
  201. package/schema/KeySchema.js +32 -3
  202. package/schema/NullableSchema.d.ts +64 -4
  203. package/schema/NullableSchema.js +59 -3
  204. package/schema/NumberSchema.d.ts +137 -12
  205. package/schema/NumberSchema.js +127 -11
  206. package/schema/OptionalSchema.d.ts +61 -4
  207. package/schema/OptionalSchema.js +56 -4
  208. package/schema/PasswordSchema.d.ts +37 -1
  209. package/schema/PasswordSchema.js +32 -1
  210. package/schema/PhoneSchema.d.ts +40 -4
  211. package/schema/PhoneSchema.js +35 -3
  212. package/schema/RequiredSchema.d.ts +39 -3
  213. package/schema/RequiredSchema.js +41 -3
  214. package/schema/Schema.d.ts +67 -7
  215. package/schema/Schema.js +42 -6
  216. package/schema/SlugSchema.d.ts +37 -5
  217. package/schema/SlugSchema.js +37 -5
  218. package/schema/StringSchema.d.ts +124 -19
  219. package/schema/StringSchema.js +107 -17
  220. package/schema/ThroughSchema.d.ts +35 -2
  221. package/schema/ThroughSchema.js +30 -1
  222. package/schema/TimeSchema.d.ts +43 -3
  223. package/schema/TimeSchema.js +43 -3
  224. package/schema/URISchema.d.ts +67 -6
  225. package/schema/URISchema.js +60 -6
  226. package/schema/URLSchema.d.ts +69 -6
  227. package/schema/URLSchema.js +61 -6
  228. package/schema/UUIDSchema.d.ts +37 -4
  229. package/schema/UUIDSchema.js +37 -4
  230. package/sequence/DeferredSequence.d.ts +49 -3
  231. package/sequence/DeferredSequence.js +39 -3
  232. package/sequence/InspectSequence.d.ts +59 -5
  233. package/sequence/InspectSequence.js +59 -5
  234. package/sequence/LazySequence.d.ts +30 -2
  235. package/sequence/LazySequence.js +30 -2
  236. package/sequence/Sequence.d.ts +11 -0
  237. package/sequence/Sequence.js +10 -0
  238. package/sequence/ThroughSequence.d.ts +15 -0
  239. package/sequence/ThroughSequence.js +15 -0
  240. package/store/ArrayStore.d.ts +74 -11
  241. package/store/ArrayStore.js +74 -11
  242. package/store/BooleanStore.d.ts +19 -2
  243. package/store/BooleanStore.js +19 -2
  244. package/store/BusyStore.d.ts +13 -1
  245. package/store/BusyStore.js +13 -1
  246. package/store/DataStore.d.ts +118 -15
  247. package/store/DataStore.js +118 -15
  248. package/store/DictionaryStore.d.ts +66 -8
  249. package/store/DictionaryStore.js +66 -8
  250. package/store/FetchStore.d.ts +43 -6
  251. package/store/FetchStore.js +36 -5
  252. package/store/PathStore.d.ts +44 -5
  253. package/store/PathStore.js +44 -5
  254. package/store/PayloadFetchStore.d.ts +16 -1
  255. package/store/PayloadFetchStore.js +9 -1
  256. package/store/Store.d.ts +85 -16
  257. package/store/Store.js +52 -10
  258. package/store/URLStore.d.ts +173 -15
  259. package/store/URLStore.js +173 -15
  260. package/test/basics.d.ts +70 -0
  261. package/test/basics.js +60 -0
  262. package/test/people.d.ts +45 -0
  263. package/test/people.js +35 -0
  264. package/test/util.d.ts +30 -3
  265. package/test/util.js +30 -3
  266. package/ui/app/App.d.ts +14 -2
  267. package/ui/app/App.js +9 -2
  268. package/ui/app/App.tsx +14 -2
  269. package/ui/block/Address.d.ts +45 -3
  270. package/ui/block/Address.js +30 -3
  271. package/ui/block/Address.tsx +46 -3
  272. package/ui/block/Block.d.ts +23 -1
  273. package/ui/block/Block.js +13 -1
  274. package/ui/block/Block.tsx +23 -1
  275. package/ui/block/Blockquote.d.ts +21 -0
  276. package/ui/block/Blockquote.js +16 -0
  277. package/ui/block/Blockquote.tsx +22 -0
  278. package/ui/block/Caption.d.ts +21 -1
  279. package/ui/block/Caption.js +16 -1
  280. package/ui/block/Caption.tsx +22 -1
  281. package/ui/block/Card.d.ts +6 -0
  282. package/ui/block/Card.js +1 -0
  283. package/ui/block/Card.tsx +6 -0
  284. package/ui/block/Definitions.d.ts +18 -0
  285. package/ui/block/Definitions.js +13 -0
  286. package/ui/block/Definitions.tsx +19 -0
  287. package/ui/block/Divider.d.ts +21 -0
  288. package/ui/block/Divider.js +16 -0
  289. package/ui/block/Divider.tsx +22 -0
  290. package/ui/block/Heading.d.ts +20 -1
  291. package/ui/block/Heading.js +15 -0
  292. package/ui/block/Heading.tsx +21 -1
  293. package/ui/block/Image.d.ts +23 -0
  294. package/ui/block/Image.js +18 -0
  295. package/ui/block/Image.tsx +24 -0
  296. package/ui/block/Label.d.ts +18 -3
  297. package/ui/block/Label.js +13 -3
  298. package/ui/block/Label.tsx +18 -3
  299. package/ui/block/List.d.ts +30 -0
  300. package/ui/block/List.js +25 -0
  301. package/ui/block/List.tsx +32 -0
  302. package/ui/block/Panel.d.ts +13 -1
  303. package/ui/block/Panel.js +3 -0
  304. package/ui/block/Panel.tsx +13 -1
  305. package/ui/block/Paragraph.d.ts +23 -0
  306. package/ui/block/Paragraph.js +18 -0
  307. package/ui/block/Paragraph.tsx +24 -0
  308. package/ui/block/Preformatted.d.ts +20 -0
  309. package/ui/block/Preformatted.js +15 -0
  310. package/ui/block/Preformatted.tsx +21 -0
  311. package/ui/block/Prose.d.ts +14 -1
  312. package/ui/block/Prose.js +9 -1
  313. package/ui/block/Prose.tsx +14 -1
  314. package/ui/block/Section.d.ts +69 -6
  315. package/ui/block/Section.js +59 -6
  316. package/ui/block/Section.tsx +70 -6
  317. package/ui/block/Subheading.d.ts +20 -1
  318. package/ui/block/Subheading.js +15 -0
  319. package/ui/block/Subheading.tsx +21 -1
  320. package/ui/block/Table.d.ts +20 -0
  321. package/ui/block/Table.js +15 -0
  322. package/ui/block/Table.tsx +21 -0
  323. package/ui/block/Title.d.ts +20 -1
  324. package/ui/block/Title.js +15 -0
  325. package/ui/block/Title.tsx +21 -1
  326. package/ui/block/Video.d.ts +50 -3
  327. package/ui/block/Video.js +30 -3
  328. package/ui/block/Video.tsx +50 -3
  329. package/ui/dialog/Dialog.d.ts +28 -1
  330. package/ui/dialog/Dialog.js +18 -1
  331. package/ui/dialog/Dialog.tsx +28 -1
  332. package/ui/dialog/Dialogs.d.ts +53 -6
  333. package/ui/dialog/Dialogs.js +43 -6
  334. package/ui/dialog/Dialogs.tsx +53 -6
  335. package/ui/dialog/Modal.d.ts +13 -0
  336. package/ui/dialog/Modal.js +8 -0
  337. package/ui/dialog/Modal.tsx +13 -0
  338. package/ui/docs/DocumentationButtons.d.ts +5 -1
  339. package/ui/docs/DocumentationButtons.tsx +5 -1
  340. package/ui/docs/DocumentationCard.d.ts +6 -1
  341. package/ui/docs/DocumentationCard.js +6 -1
  342. package/ui/docs/DocumentationCard.tsx +6 -1
  343. package/ui/docs/DocumentationKind.d.ts +13 -1
  344. package/ui/docs/DocumentationKind.js +8 -0
  345. package/ui/docs/DocumentationKind.tsx +13 -1
  346. package/ui/docs/DocumentationPage.d.ts +6 -1
  347. package/ui/docs/DocumentationPage.js +6 -1
  348. package/ui/docs/DocumentationPage.tsx +6 -1
  349. package/ui/docs/DocumentationSignatures.d.ts +10 -1
  350. package/ui/docs/DocumentationSignatures.js +5 -0
  351. package/ui/docs/DocumentationSignatures.tsx +10 -1
  352. package/ui/form/ArrayInput.d.ts +15 -0
  353. package/ui/form/ArrayInput.tsx +15 -0
  354. package/ui/form/ArrayRadioInputs.d.ts +10 -0
  355. package/ui/form/ArrayRadioInputs.js +5 -0
  356. package/ui/form/ArrayRadioInputs.tsx +10 -0
  357. package/ui/form/Button.d.ts +19 -3
  358. package/ui/form/Button.js +14 -2
  359. package/ui/form/Button.tsx +19 -3
  360. package/ui/form/ButtonInput.d.ts +14 -1
  361. package/ui/form/ButtonInput.js +9 -1
  362. package/ui/form/ButtonInput.tsx +14 -1
  363. package/ui/form/ButtonInputPopover.d.ts +10 -0
  364. package/ui/form/ButtonInputPopover.js +5 -0
  365. package/ui/form/ButtonInputPopover.tsx +10 -0
  366. package/ui/form/ButtonPopover.d.ts +11 -1
  367. package/ui/form/ButtonPopover.js +6 -1
  368. package/ui/form/ButtonPopover.tsx +11 -1
  369. package/ui/form/CheckboxInput.d.ts +14 -1
  370. package/ui/form/CheckboxInput.js +9 -1
  371. package/ui/form/CheckboxInput.tsx +14 -1
  372. package/ui/form/ChoiceRadioInputs.d.ts +10 -0
  373. package/ui/form/ChoiceRadioInputs.tsx +10 -0
  374. package/ui/form/Clickable.d.ts +45 -5
  375. package/ui/form/Clickable.js +30 -3
  376. package/ui/form/Clickable.tsx +45 -5
  377. package/ui/form/DataInput.d.ts +14 -0
  378. package/ui/form/DataInput.tsx +14 -0
  379. package/ui/form/DateInput.d.ts +14 -0
  380. package/ui/form/DateInput.js +9 -0
  381. package/ui/form/DateInput.tsx +14 -0
  382. package/ui/form/DictionaryInput.d.ts +15 -0
  383. package/ui/form/DictionaryInput.tsx +15 -0
  384. package/ui/form/Field.d.ts +5 -0
  385. package/ui/form/Field.tsx +5 -0
  386. package/ui/form/FileInput.d.ts +14 -0
  387. package/ui/form/FileInput.js +9 -0
  388. package/ui/form/FileInput.tsx +14 -0
  389. package/ui/form/Form.d.ts +55 -6
  390. package/ui/form/Form.js +35 -3
  391. package/ui/form/Form.tsx +55 -6
  392. package/ui/form/FormContext.d.ts +24 -3
  393. package/ui/form/FormContext.js +5 -1
  394. package/ui/form/FormContext.tsx +24 -3
  395. package/ui/form/FormFields.d.ts +15 -2
  396. package/ui/form/FormFields.js +15 -2
  397. package/ui/form/FormFields.tsx +15 -2
  398. package/ui/form/FormFooter.d.ts +13 -3
  399. package/ui/form/FormFooter.js +8 -3
  400. package/ui/form/FormFooter.tsx +13 -3
  401. package/ui/form/FormInput.d.ts +21 -2
  402. package/ui/form/FormInput.js +16 -2
  403. package/ui/form/FormInput.tsx +21 -2
  404. package/ui/form/FormMessage.d.ts +8 -1
  405. package/ui/form/FormMessage.js +8 -1
  406. package/ui/form/FormMessage.tsx +8 -2
  407. package/ui/form/FormNotice.d.ts +8 -1
  408. package/ui/form/FormNotice.js +8 -1
  409. package/ui/form/FormNotice.tsx +8 -2
  410. package/ui/form/FormNotify.d.ts +8 -1
  411. package/ui/form/FormNotify.js +8 -1
  412. package/ui/form/FormNotify.tsx +8 -2
  413. package/ui/form/FormStore.d.ts +50 -6
  414. package/ui/form/FormStore.js +50 -6
  415. package/ui/form/FormStore.tsx +50 -6
  416. package/ui/form/Input.d.ts +65 -1
  417. package/ui/form/Input.js +60 -0
  418. package/ui/form/Input.tsx +77 -1
  419. package/ui/form/NumberInput.d.ts +14 -0
  420. package/ui/form/NumberInput.js +9 -0
  421. package/ui/form/NumberInput.tsx +14 -0
  422. package/ui/form/OutputInput.d.ts +13 -1
  423. package/ui/form/OutputInput.js +8 -1
  424. package/ui/form/OutputInput.tsx +13 -1
  425. package/ui/form/Popover.d.ts +18 -2
  426. package/ui/form/Popover.js +8 -2
  427. package/ui/form/Popover.tsx +18 -2
  428. package/ui/form/Progress.d.ts +26 -2
  429. package/ui/form/Progress.js +16 -2
  430. package/ui/form/Progress.tsx +26 -2
  431. package/ui/form/QueryInput.d.ts +14 -5
  432. package/ui/form/QueryInput.js +9 -5
  433. package/ui/form/QueryInput.tsx +14 -5
  434. package/ui/form/RadioInput.d.ts +14 -1
  435. package/ui/form/RadioInput.js +9 -1
  436. package/ui/form/RadioInput.tsx +14 -1
  437. package/ui/form/SchemaInput.d.ts +138 -7
  438. package/ui/form/SchemaInput.js +79 -4
  439. package/ui/form/SchemaInput.tsx +138 -7
  440. package/ui/form/SelectInput.d.ts +14 -0
  441. package/ui/form/SelectInput.tsx +14 -0
  442. package/ui/form/SubmitButton.d.ts +14 -1
  443. package/ui/form/SubmitButton.js +9 -1
  444. package/ui/form/SubmitButton.tsx +14 -1
  445. package/ui/form/TextInput.d.ts +15 -0
  446. package/ui/form/TextInput.js +10 -0
  447. package/ui/form/TextInput.tsx +15 -0
  448. package/ui/inline/Code.d.ts +29 -0
  449. package/ui/inline/Code.js +24 -0
  450. package/ui/inline/Code.tsx +31 -0
  451. package/ui/inline/Deleted.d.ts +23 -0
  452. package/ui/inline/Deleted.js +18 -0
  453. package/ui/inline/Deleted.tsx +24 -0
  454. package/ui/inline/Emphasis.d.ts +23 -0
  455. package/ui/inline/Emphasis.js +18 -0
  456. package/ui/inline/Emphasis.tsx +24 -0
  457. package/ui/inline/Inserted.d.ts +23 -0
  458. package/ui/inline/Inserted.js +18 -0
  459. package/ui/inline/Inserted.tsx +24 -0
  460. package/ui/inline/Link.d.ts +23 -0
  461. package/ui/inline/Link.js +18 -0
  462. package/ui/inline/Link.tsx +24 -0
  463. package/ui/inline/Mark.d.ts +23 -0
  464. package/ui/inline/Mark.js +18 -0
  465. package/ui/inline/Mark.tsx +24 -0
  466. package/ui/inline/Small.d.ts +23 -0
  467. package/ui/inline/Small.js +18 -0
  468. package/ui/inline/Small.tsx +24 -0
  469. package/ui/inline/Strong.d.ts +23 -0
  470. package/ui/inline/Strong.js +18 -0
  471. package/ui/inline/Strong.tsx +24 -0
  472. package/ui/inline/Subscript.d.ts +23 -0
  473. package/ui/inline/Subscript.js +18 -0
  474. package/ui/inline/Subscript.tsx +24 -0
  475. package/ui/inline/Superscript.d.ts +23 -0
  476. package/ui/inline/Superscript.js +18 -0
  477. package/ui/inline/Superscript.tsx +24 -0
  478. package/ui/inline/When.d.ts +42 -3
  479. package/ui/inline/When.js +27 -3
  480. package/ui/inline/When.tsx +42 -3
  481. package/ui/layout/CenteredLayout.d.ts +12 -1
  482. package/ui/layout/CenteredLayout.js +7 -1
  483. package/ui/layout/CenteredLayout.tsx +12 -1
  484. package/ui/layout/Layout.d.ts +12 -3
  485. package/ui/layout/Layout.js +12 -3
  486. package/ui/layout/Layout.ts +12 -3
  487. package/ui/layout/SidebarLayout.d.ts +12 -0
  488. package/ui/layout/SidebarLayout.js +7 -0
  489. package/ui/layout/SidebarLayout.tsx +12 -0
  490. package/ui/menu/Menu.d.ts +22 -0
  491. package/ui/menu/Menu.js +12 -0
  492. package/ui/menu/Menu.tsx +22 -0
  493. package/ui/misc/Catcher.d.ts +77 -5
  494. package/ui/misc/Catcher.js +47 -5
  495. package/ui/misc/Catcher.tsx +77 -5
  496. package/ui/misc/Loading.d.ts +20 -0
  497. package/ui/misc/Loading.js +15 -0
  498. package/ui/misc/Loading.tsx +20 -0
  499. package/ui/misc/Mapper.d.ts +13 -1
  500. package/ui/misc/Mapper.js +4 -0
  501. package/ui/misc/Mapper.tsx +13 -1
  502. package/ui/misc/Markup.d.ts +9 -1
  503. package/ui/misc/Markup.js +4 -0
  504. package/ui/misc/Markup.tsx +9 -1
  505. package/ui/misc/MetaContext.d.ts +24 -7
  506. package/ui/misc/MetaContext.js +19 -6
  507. package/ui/misc/MetaContext.tsx +24 -7
  508. package/ui/misc/StatusIcon.d.ts +16 -1
  509. package/ui/misc/StatusIcon.js +11 -1
  510. package/ui/misc/StatusIcon.tsx +16 -1
  511. package/ui/misc/Tag.d.ts +21 -0
  512. package/ui/misc/Tag.js +11 -0
  513. package/ui/misc/Tag.tsx +21 -0
  514. package/ui/notice/Message.d.ts +27 -1
  515. package/ui/notice/Message.js +22 -1
  516. package/ui/notice/Message.tsx +27 -1
  517. package/ui/notice/Notice.d.ts +24 -0
  518. package/ui/notice/Notice.js +19 -0
  519. package/ui/notice/Notice.tsx +24 -0
  520. package/ui/notice/NoticeStore.d.ts +30 -2
  521. package/ui/notice/NoticeStore.js +30 -2
  522. package/ui/notice/NoticeStore.ts +30 -2
  523. package/ui/notice/Notices.d.ts +11 -1
  524. package/ui/notice/Notices.js +6 -1
  525. package/ui/notice/Notices.tsx +11 -1
  526. package/ui/notice/NoticesStore.d.ts +23 -3
  527. package/ui/notice/NoticesStore.js +23 -3
  528. package/ui/notice/NoticesStore.ts +23 -3
  529. package/ui/page/HTML.d.ts +13 -2
  530. package/ui/page/HTML.js +8 -2
  531. package/ui/page/HTML.tsx +13 -2
  532. package/ui/page/Head.d.ts +5 -1
  533. package/ui/page/Head.js +5 -1
  534. package/ui/page/Head.tsx +5 -1
  535. package/ui/page/Page.d.ts +12 -1
  536. package/ui/page/Page.js +7 -1
  537. package/ui/page/Page.tsx +12 -1
  538. package/ui/router/Navigation.d.ts +11 -0
  539. package/ui/router/Navigation.js +6 -0
  540. package/ui/router/Navigation.tsx +11 -0
  541. package/ui/router/NavigationContext.d.ts +14 -2
  542. package/ui/router/NavigationContext.js +14 -2
  543. package/ui/router/NavigationContext.tsx +14 -2
  544. package/ui/router/NavigationStore.d.ts +29 -1
  545. package/ui/router/NavigationStore.js +29 -1
  546. package/ui/router/NavigationStore.tsx +29 -1
  547. package/ui/router/Router.d.ts +12 -1
  548. package/ui/router/Router.js +7 -1
  549. package/ui/router/Router.tsx +12 -1
  550. package/ui/router/Routes.d.ts +14 -4
  551. package/ui/router/Routes.tsx +14 -4
  552. package/ui/style/Color.d.ts +15 -2
  553. package/ui/style/Color.js +5 -0
  554. package/ui/style/Color.tsx +15 -2
  555. package/ui/style/Flex.d.ts +41 -4
  556. package/ui/style/Flex.js +26 -3
  557. package/ui/style/Flex.tsx +41 -4
  558. package/ui/style/Gap.d.ts +18 -3
  559. package/ui/style/Gap.js +8 -1
  560. package/ui/style/Gap.tsx +18 -3
  561. package/ui/style/Padding.d.ts +18 -3
  562. package/ui/style/Padding.js +8 -1
  563. package/ui/style/Padding.tsx +18 -3
  564. package/ui/style/Scroll.d.ts +36 -1
  565. package/ui/style/Scroll.js +26 -1
  566. package/ui/style/Scroll.tsx +37 -1
  567. package/ui/style/Space.d.ts +18 -3
  568. package/ui/style/Space.js +8 -1
  569. package/ui/style/Space.tsx +18 -3
  570. package/ui/style/Status.d.ts +23 -7
  571. package/ui/style/Status.js +13 -5
  572. package/ui/style/Status.tsx +23 -7
  573. package/ui/style/Tint.d.ts +7 -1
  574. package/ui/style/Tint.js +7 -1
  575. package/ui/style/Tint.tsx +7 -1
  576. package/ui/style/Typography.d.ts +38 -6
  577. package/ui/style/Typography.js +8 -0
  578. package/ui/style/Typography.tsx +38 -6
  579. package/ui/style/Width.d.ts +18 -1
  580. package/ui/style/Width.js +8 -0
  581. package/ui/style/Width.tsx +18 -1
  582. package/ui/transition/CollapseTransition.d.ts +13 -0
  583. package/ui/transition/CollapseTransition.js +8 -0
  584. package/ui/transition/CollapseTransition.tsx +13 -0
  585. package/ui/transition/FadeTransition.d.ts +13 -0
  586. package/ui/transition/FadeTransition.js +8 -0
  587. package/ui/transition/FadeTransition.tsx +13 -0
  588. package/ui/transition/HorizontalTransition.d.ts +13 -0
  589. package/ui/transition/HorizontalTransition.js +8 -0
  590. package/ui/transition/HorizontalTransition.tsx +13 -0
  591. package/ui/transition/Transition.d.ts +12 -4
  592. package/ui/transition/Transition.js +7 -3
  593. package/ui/transition/Transition.tsx +12 -4
  594. package/ui/transition/VerticalTransition.d.ts +13 -0
  595. package/ui/transition/VerticalTransition.js +8 -0
  596. package/ui/transition/VerticalTransition.tsx +13 -0
  597. package/ui/transition/util.d.ts +16 -6
  598. package/ui/transition/util.js +7 -1
  599. package/ui/transition/util.tsx +16 -6
  600. package/ui/tree/TreeApp.d.ts +11 -0
  601. package/ui/tree/TreeApp.js +6 -0
  602. package/ui/tree/TreeApp.tsx +11 -0
  603. package/ui/tree/TreeBreadcrumbs.d.ts +11 -0
  604. package/ui/tree/TreeBreadcrumbs.js +6 -0
  605. package/ui/tree/TreeBreadcrumbs.tsx +11 -0
  606. package/ui/tree/TreeButton.d.ts +9 -1
  607. package/ui/tree/TreeButton.js +4 -0
  608. package/ui/tree/TreeButton.tsx +9 -1
  609. package/ui/tree/TreeCard.d.ts +8 -1
  610. package/ui/tree/TreeCard.js +8 -1
  611. package/ui/tree/TreeCard.tsx +8 -1
  612. package/ui/tree/TreeCards.d.ts +16 -1
  613. package/ui/tree/TreeCards.js +11 -1
  614. package/ui/tree/TreeCards.tsx +16 -1
  615. package/ui/tree/TreeContext.d.ts +18 -1
  616. package/ui/tree/TreeContext.js +18 -1
  617. package/ui/tree/TreeContext.tsx +18 -1
  618. package/ui/tree/TreeMenu.d.ts +28 -1
  619. package/ui/tree/TreeMenu.js +23 -1
  620. package/ui/tree/TreeMenu.tsx +28 -1
  621. package/ui/tree/TreePage.d.ts +6 -0
  622. package/ui/tree/TreePage.js +6 -0
  623. package/ui/tree/TreePage.tsx +6 -0
  624. package/ui/tree/TreeRouter.d.ts +17 -2
  625. package/ui/tree/TreeRouter.js +12 -2
  626. package/ui/tree/TreeRouter.tsx +17 -2
  627. package/ui/tree/TreeSidebar.d.ts +11 -0
  628. package/ui/tree/TreeSidebar.js +6 -0
  629. package/ui/tree/TreeSidebar.tsx +11 -0
  630. package/ui/util/context.d.ts +13 -1
  631. package/ui/util/context.ts +13 -1
  632. package/ui/util/css.d.ts +17 -4
  633. package/ui/util/css.js +5 -1
  634. package/ui/util/css.ts +17 -4
  635. package/ui/util/event.d.ts +9 -1
  636. package/ui/util/event.js +9 -1
  637. package/ui/util/event.ts +9 -1
  638. package/ui/util/focus.d.ts +24 -5
  639. package/ui/util/focus.js +24 -5
  640. package/ui/util/focus.ts +24 -5
  641. package/ui/util/meta.d.ts +113 -21
  642. package/ui/util/meta.js +73 -13
  643. package/ui/util/meta.ts +113 -21
  644. package/ui/util/notice.d.ts +98 -10
  645. package/ui/util/notice.js +93 -9
  646. package/ui/util/notice.ts +98 -10
  647. package/ui/util/props.d.ts +10 -2
  648. package/ui/util/props.ts +10 -2
  649. package/ui/util/refresh.d.ts +10 -1
  650. package/ui/util/refresh.js +10 -1
  651. package/ui/util/refresh.ts +10 -1
  652. package/ui/util/scroll.d.ts +20 -4
  653. package/ui/util/scroll.js +20 -4
  654. package/ui/util/scroll.ts +20 -4
  655. package/ui/util/state.d.ts +19 -5
  656. package/ui/util/state.js +19 -5
  657. package/ui/util/state.ts +19 -5
  658. package/util/ansi.d.ts +118 -0
  659. package/util/ansi.js +116 -0
  660. package/util/array.d.ts +349 -33
  661. package/util/array.js +284 -27
  662. package/util/async.d.ts +87 -9
  663. package/util/async.js +80 -8
  664. package/util/base64.d.ts +56 -6
  665. package/util/base64.js +56 -6
  666. package/util/boolean.d.ts +75 -10
  667. package/util/boolean.js +75 -10
  668. package/util/buffer.d.ts +26 -3
  669. package/util/buffer.js +21 -3
  670. package/util/bytes.d.ts +42 -4
  671. package/util/bytes.js +32 -2
  672. package/util/class.d.ts +59 -8
  673. package/util/class.js +44 -5
  674. package/util/color.d.ts +131 -13
  675. package/util/color.js +126 -12
  676. package/util/constants.d.ts +132 -19
  677. package/util/constants.js +132 -19
  678. package/util/crypto.d.ts +17 -1
  679. package/util/crypto.js +17 -1
  680. package/util/currency.d.ts +38 -4
  681. package/util/currency.js +33 -3
  682. package/util/data.d.ts +139 -24
  683. package/util/data.js +39 -5
  684. package/util/date.d.ts +152 -18
  685. package/util/date.js +147 -17
  686. package/util/debug.d.ts +112 -11
  687. package/util/debug.js +114 -11
  688. package/util/dictionary.d.ts +205 -24
  689. package/util/dictionary.js +162 -17
  690. package/util/diff.d.ts +22 -3
  691. package/util/diff.js +11 -1
  692. package/util/dispose.d.ts +74 -2
  693. package/util/dispose.js +74 -2
  694. package/util/duration.d.ts +278 -16
  695. package/util/duration.js +267 -15
  696. package/util/element.d.ts +59 -6
  697. package/util/element.js +32 -3
  698. package/util/entity.d.ts +39 -6
  699. package/util/entity.js +5 -1
  700. package/util/entry.d.ts +56 -9
  701. package/util/entry.js +32 -4
  702. package/util/env.d.ts +26 -4
  703. package/util/env.js +26 -4
  704. package/util/equal.d.ts +181 -17
  705. package/util/equal.js +181 -17
  706. package/util/error.d.ts +57 -5
  707. package/util/error.js +52 -4
  708. package/util/file.d.ts +30 -7
  709. package/util/file.js +25 -6
  710. package/util/filter.d.ts +36 -4
  711. package/util/filter.js +31 -3
  712. package/util/focus.d.ts +9 -1
  713. package/util/focus.js +9 -1
  714. package/util/format.d.ts +186 -22
  715. package/util/format.js +135 -14
  716. package/util/function.d.ts +66 -11
  717. package/util/function.js +31 -4
  718. package/util/geo.d.ts +60 -8
  719. package/util/geo.js +45 -5
  720. package/util/hash.d.ts +21 -2
  721. package/util/hash.js +21 -2
  722. package/util/http.d.ts +134 -19
  723. package/util/http.js +94 -11
  724. package/util/hydrate.d.ts +19 -2
  725. package/util/hydrate.js +12 -1
  726. package/util/item.d.ts +70 -11
  727. package/util/item.js +35 -4
  728. package/util/iterate.d.ts +109 -13
  729. package/util/iterate.js +86 -10
  730. package/util/jwt.d.ts +47 -13
  731. package/util/jwt.js +36 -12
  732. package/util/lazy.d.ts +9 -6
  733. package/util/link.d.ts +10 -3
  734. package/util/link.js +5 -2
  735. package/util/log.d.ts +26 -3
  736. package/util/log.js +26 -3
  737. package/util/map.d.ts +144 -19
  738. package/util/map.js +101 -11
  739. package/util/merge.d.ts +23 -1
  740. package/util/merge.js +6 -0
  741. package/util/null.d.ts +102 -13
  742. package/util/null.js +92 -11
  743. package/util/number.d.ts +125 -8
  744. package/util/number.js +120 -7
  745. package/util/object.d.ts +263 -31
  746. package/util/object.js +154 -17
  747. package/util/path.d.ts +91 -15
  748. package/util/path.js +60 -9
  749. package/util/query.d.ts +78 -9
  750. package/util/query.js +58 -6
  751. package/util/random.d.ts +67 -4
  752. package/util/random.js +67 -4
  753. package/util/regexp.d.ts +201 -24
  754. package/util/regexp.js +106 -11
  755. package/util/sequence.d.ts +66 -8
  756. package/util/sequence.js +52 -7
  757. package/util/serialise.d.ts +7 -1
  758. package/util/serialise.js +7 -1
  759. package/util/set.d.ts +103 -13
  760. package/util/set.js +83 -9
  761. package/util/sort.d.ts +32 -7
  762. package/util/sort.js +26 -6
  763. package/util/source.d.ts +28 -3
  764. package/util/source.js +22 -2
  765. package/util/start.d.ts +62 -5
  766. package/util/start.js +47 -2
  767. package/util/string.d.ts +209 -25
  768. package/util/string.js +188 -21
  769. package/util/template.d.ts +58 -9
  770. package/util/template.js +45 -6
  771. package/util/timeout.d.ts +35 -11
  772. package/util/timeout.js +35 -11
  773. package/util/transform.d.ts +87 -8
  774. package/util/transform.js +75 -7
  775. package/util/tree.d.ts +39 -6
  776. package/util/tree.js +3 -0
  777. package/util/types.d.ts +8 -2
  778. package/util/undefined.d.ts +47 -6
  779. package/util/undefined.js +47 -6
  780. package/util/units.d.ts +107 -12
  781. package/util/units.js +97 -12
  782. package/util/update.d.ts +36 -4
  783. package/util/update.js +24 -2
  784. package/util/uri.d.ts +138 -6
  785. package/util/uri.js +44 -3
  786. package/util/url.d.ts +152 -7
  787. package/util/url.js +136 -5
  788. package/util/uuid.d.ts +28 -3
  789. package/util/uuid.js +28 -3
  790. package/util/validate.d.ts +85 -20
  791. package/util/validate.js +61 -12
  792. package/util/xml.d.ts +9 -10
  793. package/util/xml.js +9 -10
package/util/array.d.ts CHANGED
@@ -2,18 +2,42 @@ import type { AnyCaller } from "./function.js";
2
2
  /**
3
3
  * Mutable array: an array that can be changed.
4
4
  * - Consistency with `MutableObject<T>` and `ImmutableArray<T>`
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/util/array/MutableArray
5
7
  */
6
8
  export type MutableArray<T = unknown> = T[];
7
9
  /**
8
10
  * Immutable array: an array that cannot be changed.
9
11
  * - Consistency with `ImmutableObject<T>` and `MutableArray<T>`
12
+ *
13
+ * @see https://dhoulb.github.io/shelving/util/array/ImmutableArray
10
14
  */
11
15
  export type ImmutableArray<T = unknown> = readonly T[];
12
- /** Get the type of the _items_ in an array. */
16
+ /**
17
+ * Get the type of the _items_ in an array.
18
+ *
19
+ * @see https://dhoulb.github.io/shelving/util/array/ArrayItem
20
+ */
13
21
  export type ArrayItem<T extends ImmutableArray> = T[number];
14
- /** Things that can be converted to arrays. */
22
+ /**
23
+ * Things that can be converted to arrays.
24
+ *
25
+ * @see https://dhoulb.github.io/shelving/util/array/PossibleArray
26
+ */
15
27
  export type PossibleArray<T> = ImmutableArray<T> | Iterable<T>;
16
- /** Is an unknown value an array (optionally with specified min/max length). */
28
+ /**
29
+ * Is an unknown value an array (optionally with specified min/max length)?
30
+ *
31
+ * @param value The value to test.
32
+ * @param min Minimum number of items the array must contain (defaults to `0`).
33
+ * @param max Maximum number of items the array may contain (defaults to `Infinity`).
34
+ * @returns `true` if `value` is an array within the length bounds, narrowing its type.
35
+ *
36
+ * @example isArray([1, 2, 3]); // true
37
+ * @example isArray([1], 2, 2); // false
38
+ *
39
+ * @see https://dhoulb.github.io/shelving/util/array/isArray
40
+ */
17
41
  export declare function isArray<T>(arr: MutableArray<T>, min: 1, max: 1): arr is [T];
18
42
  export declare function isArray<T>(arr: MutableArray<T>, min: 2, max: 2): arr is [T, T];
19
43
  export declare function isArray<T>(arr: MutableArray<T>, min: 3, max: 3): arr is [T, T, T];
@@ -28,7 +52,20 @@ export declare function isArray<T>(arr: ImmutableArray<T>, min?: 1, max?: number
28
52
  export declare function isArray<T>(arr: ImmutableArray<T>, min: 2, max?: number): arr is readonly [T, T, ...T[]];
29
53
  export declare function isArray<T>(arr: ImmutableArray<T>, min: 3, max?: number): arr is readonly [T, T, T, ...T[]];
30
54
  export declare function isArray<T>(value: unknown, min?: number, max?: number): value is ImmutableArray<T>;
31
- /** Assert that an unknown value is an array (optionally with specified min/max length). */
55
+ /**
56
+ * Assert that an unknown value is an array (optionally with specified min/max length).
57
+ *
58
+ * @param value The value to assert.
59
+ * @param min Minimum number of items the array must contain (defaults to `0`).
60
+ * @param max Maximum number of items the array may contain (defaults to `Infinity`).
61
+ * @param caller Function to attribute a thrown error to (defaults to `assertArray` itself).
62
+ * @throws {RequiredError} If `value` is not an array within the length bounds.
63
+ *
64
+ * @example assertArray([1, 2, 3]); // (passes)
65
+ * @example assertArray("nope"); // throws RequiredError
66
+ *
67
+ * @see https://dhoulb.github.io/shelving/util/array/assertArray
68
+ */
32
69
  export declare function assertArray<T>(arr: MutableArray<T>, min: 1, max: 1, caller?: AnyCaller): asserts arr is [T];
33
70
  export declare function assertArray<T>(arr: MutableArray<T>, min: 2, max: 2, caller?: AnyCaller): asserts arr is [T, T];
34
71
  export declare function assertArray<T>(arr: MutableArray<T>, min: 3, max: 3, caller?: AnyCaller): asserts arr is [T, T, T];
@@ -43,9 +80,33 @@ export declare function assertArray<T>(arr: ImmutableArray<T>, min?: 1, max?: nu
43
80
  export declare function assertArray<T>(arr: ImmutableArray<T>, min: 2, max?: number, caller?: AnyCaller): asserts arr is readonly [T, T, ...T[]];
44
81
  export declare function assertArray<T>(arr: ImmutableArray<T>, min: 3, max?: number, caller?: AnyCaller): asserts arr is readonly [T, T, T, ...T[]];
45
82
  export declare function assertArray<T>(arr: ImmutableArray<T>, min?: number, max?: number, caller?: AnyCaller): asserts arr is ImmutableArray<T>;
46
- /** Convert a possible array to an array. */
83
+ /**
84
+ * Convert a possible array to an array.
85
+ *
86
+ * @param list The value to convert (an array is returned as-is, an iterable is collected into a new array).
87
+ * @returns An array of the items, or `undefined` if `list` could not be converted.
88
+ *
89
+ * @example getArray(new Set([1, 2])); // [1, 2]
90
+ * @example getArray(123); // undefined
91
+ *
92
+ * @see https://dhoulb.github.io/shelving/util/array/getArray
93
+ */
47
94
  export declare function getArray(list: unknown): ImmutableArray<unknown> | undefined;
48
- /** Convert a possible array to an array (optionally with specified min/max length), or throw `RequiredError` if conversion fails. */
95
+ /**
96
+ * Convert a possible array to an array (optionally with specified min/max length), or throw `RequiredError` if conversion fails.
97
+ *
98
+ * @param list The value to convert (an array or iterable of items).
99
+ * @param min Minimum number of items the array must contain (defaults to `0`).
100
+ * @param max Maximum number of items the array may contain (defaults to `Infinity`).
101
+ * @param caller Function to attribute a thrown error to (defaults to `requireArray` itself).
102
+ * @returns An array of the items within the length bounds.
103
+ * @throws {RequiredError} If `list` cannot be converted to an array within the length bounds.
104
+ *
105
+ * @example requireArray(new Set([1, 2])); // [1, 2]
106
+ * @example requireArray([], 1); // throws RequiredError
107
+ *
108
+ * @see https://dhoulb.github.io/shelving/util/array/requireArray
109
+ */
49
110
  export declare function requireArray<T>(arr: MutableArray<T>, min: 1, max: 1, caller?: AnyCaller): [T];
50
111
  export declare function requireArray<T>(arr: MutableArray<T>, min: 2, max: 2, caller?: AnyCaller): [T, T];
51
112
  export declare function requireArray<T>(arr: MutableArray<T>, min: 3, max: 3, caller?: AnyCaller): [T, T, T];
@@ -60,68 +121,323 @@ export declare function requireArray<T>(arr: ImmutableArray<T>, min?: 1, max?: n
60
121
  export declare function requireArray<T>(arr: ImmutableArray<T>, min: 2, max?: number, caller?: AnyCaller): readonly [T, T, ...T[]];
61
122
  export declare function requireArray<T>(arr: ImmutableArray<T>, min: 3, max?: number, caller?: AnyCaller): readonly [T, T, T, ...T[]];
62
123
  export declare function requireArray<T>(list: PossibleArray<T>, min?: number, max?: number, caller?: AnyCaller): ImmutableArray<T>;
63
- /** Is an unknown value an item in a specified array or iterable? */
124
+ /**
125
+ * Is an unknown value an item in a specified array or iterable?
126
+ *
127
+ * @param list The array or iterable to search.
128
+ * @param item The value to look for.
129
+ * @returns `true` if `item` exists in `list`, narrowing its type.
130
+ *
131
+ * @example isArrayItem([1, 2, 3], 2); // true
132
+ * @example isArrayItem([1, 2, 3], 9); // false
133
+ *
134
+ * @see https://dhoulb.github.io/shelving/util/array/isArrayItem
135
+ */
64
136
  export declare function isArrayItem<T>(list: PossibleArray<T>, item: unknown): item is T;
65
- /** Assert that an unknown value is an item in a specified array. */
137
+ /**
138
+ * Assert that an unknown value is an item in a specified array.
139
+ *
140
+ * @param arr The array or iterable to search.
141
+ * @param item The value to look for.
142
+ * @param caller Function to attribute a thrown error to (defaults to `assertArrayItem` itself).
143
+ * @throws {RequiredError} If `item` does not exist in `arr`.
144
+ *
145
+ * @example assertArrayItem([1, 2, 3], 2); // (passes)
146
+ * @example assertArrayItem([1, 2, 3], 9); // throws RequiredError
147
+ *
148
+ * @see https://dhoulb.github.io/shelving/util/array/assertArrayItem
149
+ */
66
150
  export declare function assertArrayItem<T>(arr: PossibleArray<T>, item: unknown, caller?: AnyCaller): asserts item is T;
67
- /** Add multiple items to an array (immutably) and return a new array with those items (or the same array if no changes were made). */
151
+ /**
152
+ * Add multiple items to an array (immutably) and return a new array with those items (or the same array if no changes were made).
153
+ *
154
+ * @param list The array or iterable to add to.
155
+ * @param add The items to add (items already present are skipped).
156
+ * @returns A new array including the added items, or the same array if nothing changed.
157
+ *
158
+ * @example withArrayItems([1, 2], 2, 3); // [1, 2, 3]
159
+ *
160
+ * @see https://dhoulb.github.io/shelving/util/array/withArrayItems
161
+ */
68
162
  export declare function withArrayItems<T>(list: PossibleArray<T>, ...add: T[]): ImmutableArray<T>;
69
- /** Add an item to an array (immutably) and return a new array with that item (or the same array if no changes were made). */
163
+ /**
164
+ * Add an item to an array (immutably) and return a new array with that item (or the same array if no changes were made).
165
+ *
166
+ * @param items The array or iterable to add to.
167
+ * @param add The item to add (skipped if already present).
168
+ * @returns A new array including the added item, or the same array if nothing changed.
169
+ *
170
+ * @example withArrayItem([1, 2], 3); // [1, 2, 3]
171
+ *
172
+ * @see https://dhoulb.github.io/shelving/util/array/withArrayItem
173
+ */
70
174
  export declare const withArrayItem: <T>(items: PossibleArray<T>, add: T) => ImmutableArray<T>;
71
- /** Pick multiple items from an array (immutably) and return a new array with those items (or the same array if no changes were made). */
175
+ /**
176
+ * Pick multiple items from an array (immutably) and return a new array with those items (or the same array if no changes were made).
177
+ *
178
+ * @param items The array or iterable to pick from.
179
+ * @param pick The items to keep.
180
+ * @returns A new array containing only the picked items, or the same array if nothing changed.
181
+ *
182
+ * @example pickArrayItems([1, 2, 3], 1, 3); // [1, 3]
183
+ *
184
+ * @see https://dhoulb.github.io/shelving/util/array/pickArrayItems
185
+ */
72
186
  export declare function pickArrayItems<T>(items: PossibleArray<T>, ...pick: T[]): ImmutableArray<T>;
73
- /** Pick an item from an array (immutably) and return a new array with that item (or the same array if no changes were made). */
187
+ /**
188
+ * Pick an item from an array (immutably) and return a new array with that item (or the same array if no changes were made).
189
+ *
190
+ * @param items The array or iterable to pick from.
191
+ * @param pick The item to keep.
192
+ * @returns A new array containing only the picked item, or the same array if nothing changed.
193
+ *
194
+ * @example pickArrayItem([1, 2, 3], 2); // [2]
195
+ *
196
+ * @see https://dhoulb.github.io/shelving/util/array/pickArrayItem
197
+ */
74
198
  export declare const pickArrayItem: <T>(items: PossibleArray<T>, pick: T) => ImmutableArray<T>;
75
- /** Remove multiple items from an array (immutably) and return a new array without those items (or the same array if no changes were made). */
199
+ /**
200
+ * Remove multiple items from an array (immutably) and return a new array without those items (or the same array if no changes were made).
201
+ *
202
+ * @param items The array or iterable to remove from.
203
+ * @param omit The items to remove.
204
+ * @returns A new array without the omitted items, or the same array if nothing changed.
205
+ *
206
+ * @example omitArrayItems([1, 2, 3], 2); // [1, 3]
207
+ *
208
+ * @see https://dhoulb.github.io/shelving/util/array/omitArrayItems
209
+ */
76
210
  export declare function omitArrayItems<T>(items: PossibleArray<T>, ...omit: T[]): ImmutableArray<T>;
77
- /** Remove an item from an array (immutably) and return a new array without those items (or the same array if no changes were made). */
211
+ /**
212
+ * Remove an item from an array (immutably) and return a new array without that item (or the same array if no changes were made).
213
+ *
214
+ * @param items The array or iterable to remove from.
215
+ * @param omit The item to remove.
216
+ * @returns A new array without the omitted item, or the same array if nothing changed.
217
+ *
218
+ * @example omitArrayItem([1, 2, 3], 2); // [1, 3]
219
+ *
220
+ * @see https://dhoulb.github.io/shelving/util/array/omitArrayItem
221
+ */
78
222
  export declare const omitArrayItem: <T>(items: PossibleArray<T>, omit: T) => ImmutableArray<T>;
79
- /** Toggle an item in and out of an array (immutably) and return a new array with or without the specified items (or the same array if no changes were made). */
223
+ /**
224
+ * Toggle an item in and out of an array (immutably) and return a new array with or without the specified items (or the same array if no changes were made).
225
+ *
226
+ * @param items The array or iterable to toggle within.
227
+ * @param toggle The items to toggle (added if absent, removed if present).
228
+ * @returns A new array with the items toggled, or the same array if nothing changed.
229
+ *
230
+ * @example toggleArrayItems([1, 2], 2, 3); // [1, 3]
231
+ *
232
+ * @see https://dhoulb.github.io/shelving/util/array/toggleArrayItems
233
+ */
80
234
  export declare function toggleArrayItems<T>(items: PossibleArray<T>, ...toggle: T[]): ImmutableArray<T>;
81
- /** Toggle an item in and out of an array (immutably) and return a new array with or without the specified item (or the same array if no changes were made). */
235
+ /**
236
+ * Toggle an item in and out of an array (immutably) and return a new array with or without the specified item (or the same array if no changes were made).
237
+ *
238
+ * @param items The array or iterable to toggle within.
239
+ * @param toggle The item to toggle (added if absent, removed if present).
240
+ * @returns A new array with the item toggled, or the same array if nothing changed.
241
+ *
242
+ * @example toggleArrayItem([1, 2], 2); // [1]
243
+ *
244
+ * @see https://dhoulb.github.io/shelving/util/array/toggleArrayItem
245
+ */
82
246
  export declare const toggleArrayItem: <T>(items: PossibleArray<T>, toggle: T) => ImmutableArray<T>;
83
- /** Return a shuffled version of an array or iterable. */
247
+ /**
248
+ * Return a shuffled version of an array or iterable.
249
+ *
250
+ * @param items The array or iterable to shuffle.
251
+ * @returns A new array containing the same items in random order.
252
+ *
253
+ * @example shuffleArray([1, 2, 3]); // e.g. [2, 3, 1]
254
+ *
255
+ * @see https://dhoulb.github.io/shelving/util/array/shuffleArray
256
+ */
84
257
  export declare function shuffleArray<T>(items: PossibleArray<T>): ImmutableArray<T>;
85
258
  /**
86
259
  * Add an item to an array (by reference) and return the item.
87
260
  * - Skip items that already exist.
261
+ *
262
+ * @param arr The array to add to (modified in place).
263
+ * @param item The item to add.
264
+ * @returns The added `item`.
265
+ *
266
+ * @example addArrayItem(arr, 3); // 3 (and `arr` now contains `3`)
267
+ *
268
+ * @see https://dhoulb.github.io/shelving/util/array/addArrayItem
88
269
  */
89
270
  export declare function addArrayItem<T>(arr: MutableArray<T>, item: T): T;
90
271
  /**
91
272
  * Add multiple items to an array (by reference).
92
273
  * - Skip items that already exist.
274
+ *
275
+ * @param arr The array to add to (modified in place).
276
+ * @param items The items to add.
277
+ * @example addArrayItems(arr, 3, 4); // (`arr` now contains `3` and `4`)
278
+ * @see https://dhoulb.github.io/shelving/util/array/addArrayItems
93
279
  */
94
280
  export declare function addArrayItems<T>(arr: MutableArray<T>, ...items: T[]): void;
95
- /** Remove multiple items from an array (by reference). */
281
+ /**
282
+ * Remove multiple items from an array (by reference).
283
+ *
284
+ * @param arr The array to remove from (modified in place).
285
+ * @param items The items to remove.
286
+ * @example deleteArrayItems(arr, 2, 3); // (`arr` no longer contains `2` or `3`)
287
+ * @see https://dhoulb.github.io/shelving/util/array/deleteArrayItems
288
+ */
96
289
  export declare function deleteArrayItems<T>(arr: MutableArray<T>, ...items: T[]): void;
97
- /** Remove an item from an array (by reference). */
290
+ /**
291
+ * Remove an item from an array (by reference).
292
+ *
293
+ * @param arr The array to remove from (modified in place).
294
+ * @param item The item to remove.
295
+ * @example deleteArrayItem(arr, 2); // (`arr` no longer contains `2`)
296
+ * @see https://dhoulb.github.io/shelving/util/array/deleteArrayItem
297
+ */
98
298
  export declare const deleteArrayItem: <T>(arr: MutableArray<T>, item: T) => void;
99
- /** Return an array of the unique items in an array. */
299
+ /**
300
+ * Return an array of the unique items in an array.
301
+ *
302
+ * @param list The array or iterable to deduplicate.
303
+ * @returns A new array with duplicate items removed, or the same array if all items were already unique.
304
+ * @example getUniqueArray([1, 2, 2, 3]) // [1, 2, 3]
305
+ * @see https://dhoulb.github.io/shelving/util/array/getUniqueArray
306
+ */
100
307
  export declare function getUniqueArray<T>(list: PossibleArray<T>): ImmutableArray<T>;
101
- /** Apply a limit to an array. */
308
+ /**
309
+ * Apply a limit to an array.
310
+ *
311
+ * @param list The array or iterable to limit.
312
+ * @param limit The maximum number of items to keep.
313
+ * @returns An array of at most `limit` items, or the same array if it was already within the limit.
314
+ * @throws {RequiredError} If `list` cannot be converted to an array.
315
+ * @example limitArray([1, 2, 3, 4], 2) // [1, 2]
316
+ * @see https://dhoulb.github.io/shelving/util/array/limitArray
317
+ */
102
318
  export declare function limitArray<T>(list: PossibleArray<T>, limit: number): ImmutableArray<T>;
103
- /** Count the items in an array. */
319
+ /**
320
+ * Count the items in an array.
321
+ *
322
+ * @param arr The array to count.
323
+ * @returns The number of items in `arr`.
324
+ * @example countArray([1, 2, 3]) // 3
325
+ * @see https://dhoulb.github.io/shelving/util/array/countArray
326
+ */
104
327
  export declare function countArray<T>(arr: ImmutableArray<T>): number;
105
- /** Interleave array items with a separator */
328
+ /**
329
+ * Interleave array items with a separator.
330
+ *
331
+ * @param items The array or iterable to interleave.
332
+ * @param separator The value to insert between each pair of items.
333
+ * @returns A new array with `separator` inserted between items, or the same array if it had fewer than two items.
334
+ * @example interleaveArray([1, 2, 3], 0) // [1, 0, 2, 0, 3]
335
+ * @see https://dhoulb.github.io/shelving/util/array/interleaveArray
336
+ */
106
337
  export declare function interleaveArray<T>(items: PossibleArray<T>, separator: T): ImmutableArray<T>;
107
338
  export declare function interleaveArray<A, B>(items: PossibleArray<A>, separator: B): ImmutableArray<A | B>;
108
- /** Return a new array with a new value replacing a specific index in the array (or the same array if the value was unchanged). */
339
+ /**
340
+ * Return a new array with a new value replacing a specific index in the array (or the same array if the value was unchanged).
341
+ *
342
+ * @param arr The array to update.
343
+ * @param index The index to replace.
344
+ * @param value The new value to set at `index`.
345
+ * @returns A new array with `value` at `index`, or the same array if the value was unchanged.
346
+ * @example withArrayIndex([1, 2, 3], 1, 9) // [1, 9, 3]
347
+ * @see https://dhoulb.github.io/shelving/util/array/withArrayIndex
348
+ */
109
349
  export declare function withArrayIndex<T>(arr: ImmutableArray<T>, index: number, value: T): ImmutableArray<T>;
110
- /** Return a new array without a specific index in the array (or the same array if the value was unchanged). */
350
+ /**
351
+ * Return a new array without a specific index in the array (or the same array if the value was unchanged).
352
+ *
353
+ * @param arr The array to update.
354
+ * @param index The index to remove.
355
+ * @returns A new array without `index`, or the same array if nothing changed.
356
+ * @example omitArrayIndex([1, 2, 3], 1) // [1, 3]
357
+ * @see https://dhoulb.github.io/shelving/util/array/omitArrayIndex
358
+ */
111
359
  export declare function omitArrayIndex<T>(arr: ImmutableArray<T>, index: number): ImmutableArray<T>;
112
- /** Get the first item from an array or iterable, or `undefined` if it didn't exist. */
360
+ /**
361
+ * Get the first item from an array or iterable, or `undefined` if it didn't exist.
362
+ *
363
+ * @param items The array or iterable to read from.
364
+ * @returns The first item, or `undefined` if `items` is empty.
365
+ * @example getFirst([1, 2, 3]) // 1
366
+ * @see https://dhoulb.github.io/shelving/util/array/getFirst
367
+ */
113
368
  export declare function getFirst<T>(items: PossibleArray<T>): T | undefined;
114
- /** Get the first item from an array or iterable. */
369
+ /**
370
+ * Get the first item from an array or iterable.
371
+ *
372
+ * @param items The array or iterable to read from.
373
+ * @param caller Function to attribute a thrown error to (defaults to `requireFirst` itself).
374
+ * @returns The first item.
375
+ * @throws {RequiredError} If `items` is empty.
376
+ * @example requireFirst([1, 2, 3]) // 1
377
+ * @see https://dhoulb.github.io/shelving/util/array/requireFirst
378
+ */
115
379
  export declare function requireFirst<T>(items: PossibleArray<T>, caller?: AnyCaller): T;
116
- /** Get the last item from an array or iterable, or `undefined` if it didn't exist. */
380
+ /**
381
+ * Get the last item from an array or iterable, or `undefined` if it didn't exist.
382
+ *
383
+ * @param items The array or iterable to read from.
384
+ * @returns The last item, or `undefined` if `items` is empty.
385
+ * @example getLast([1, 2, 3]) // 3
386
+ * @see https://dhoulb.github.io/shelving/util/array/getLast
387
+ */
117
388
  export declare function getLast<T>(items: PossibleArray<T>): T | undefined;
118
- /** Get the last item from an array or iterable. */
389
+ /**
390
+ * Get the last item from an array or iterable.
391
+ *
392
+ * @param items The array or iterable to read from.
393
+ * @param caller Function to attribute a thrown error to (defaults to `requireLast` itself).
394
+ * @returns The last item.
395
+ * @throws {RequiredError} If `items` is empty.
396
+ * @example requireLast([1, 2, 3]) // 3
397
+ * @see https://dhoulb.github.io/shelving/util/array/requireLast
398
+ */
119
399
  export declare function requireLast<T>(items: PossibleArray<T>, caller?: AnyCaller): T;
120
- /** Get the next item in an array or iterable. */
400
+ /**
401
+ * Get the next item in an array or iterable.
402
+ *
403
+ * @param items The array or iterable to search.
404
+ * @param item The item to find the successor of.
405
+ * @returns The item following `item`, or `undefined` if `item` is missing or last.
406
+ * @example getNext([1, 2, 3], 2) // 3
407
+ * @see https://dhoulb.github.io/shelving/util/array/getNext
408
+ */
121
409
  export declare function getNext<T>(items: PossibleArray<T>, item: T): T | undefined;
122
- /** Get the next item from an array or iterable. */
410
+ /**
411
+ * Get the next item from an array or iterable.
412
+ *
413
+ * @param items The array or iterable to search.
414
+ * @param item The item to find the successor of.
415
+ * @param caller Function to attribute a thrown error to (defaults to `requireNext` itself).
416
+ * @returns The item following `item`.
417
+ * @throws {RequiredError} If `item` is missing or has no successor.
418
+ * @example requireNext([1, 2, 3], 2) // 3
419
+ * @see https://dhoulb.github.io/shelving/util/array/requireNext
420
+ */
123
421
  export declare function requireNext<T>(items: PossibleArray<T>, item: T, caller?: AnyCaller): T;
124
- /** Get the previous item in an array or iterable. */
422
+ /**
423
+ * Get the previous item in an array or iterable.
424
+ *
425
+ * @param items The array or iterable to search.
426
+ * @param value The item to find the predecessor of.
427
+ * @returns The item preceding `value`, or `undefined` if `value` is missing or first.
428
+ * @example getPrev([1, 2, 3], 2) // 1
429
+ * @see https://dhoulb.github.io/shelving/util/array/getPrev
430
+ */
125
431
  export declare function getPrev<T>(items: PossibleArray<T>, value: T): T | undefined;
126
- /** Get the previous item from an array or iterable. */
432
+ /**
433
+ * Get the previous item from an array or iterable.
434
+ *
435
+ * @param items The array or iterable to search.
436
+ * @param item The item to find the predecessor of.
437
+ * @param caller Function to attribute a thrown error to (defaults to `requirePrev` itself).
438
+ * @returns The item preceding `item`.
439
+ * @throws {RequiredError} If `item` is missing or has no predecessor.
440
+ * @example requirePrev([1, 2, 3], 2) // 1
441
+ * @see https://dhoulb.github.io/shelving/util/array/requirePrev
442
+ */
127
443
  export declare function requirePrev<T>(items: PossibleArray<T>, item: T, caller?: AnyCaller): T;