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
@@ -3,11 +3,35 @@ import { getModuleClass } from "../util/css.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
4
  import MARK_CSS from "./Mark.module.css";
5
5
 
6
+ /**
7
+ * CSS class applied to the root element of every `Mark`.
8
+ *
9
+ * @see https://dhoulb.github.io/shelving/ui/inline/Mark/MARK_CLASS
10
+ */
6
11
  export const MARK_CLASS = getModuleClass(MARK_CSS, "mark");
12
+
13
+ /**
14
+ * CSS class that styles `Mark` when it appears inside `Prose` longform content.
15
+ *
16
+ * @see https://dhoulb.github.io/shelving/ui/inline/Mark/MARK_PROSE_CLASS
17
+ */
7
18
  export const MARK_PROSE_CLASS = getModuleClass(MARK_CSS, "prose");
8
19
 
20
+ /**
21
+ * Props for `Mark` — optional `children`.
22
+ *
23
+ * @see https://dhoulb.github.io/shelving/ui/inline/Mark/MarkProps
24
+ */
9
25
  export interface MarkProps extends OptionalChildProps {}
10
26
 
27
+ /**
28
+ * Highlighted text — renders a `<mark>` element to call attention to a run of text.
29
+ *
30
+ * @param props The `children` to highlight.
31
+ * @returns Rendered `<mark>` element.
32
+ * @example <Mark>search term</Mark>
33
+ * @see https://dhoulb.github.io/shelving/ui/inline/Mark/Mark
34
+ */
11
35
  export function Mark({ children }: MarkProps): ReactElement {
12
36
  return <mark className={MARK_CLASS}>{children}</mark>;
13
37
  }
@@ -1,7 +1,30 @@
1
1
  import type { ReactElement } from "react";
2
2
  import type { OptionalChildProps } from "../util/props.js";
3
+ /**
4
+ * CSS class applied to the root element of every `Small`.
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_CLASS
7
+ */
3
8
  export declare const SMALL_CLASS: string | undefined;
9
+ /**
10
+ * CSS class that styles `Small` when it appears inside `Prose` longform content.
11
+ *
12
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_PROSE_CLASS
13
+ */
4
14
  export declare const SMALL_PROSE_CLASS: string | undefined;
15
+ /**
16
+ * Props for `Small` — optional `children`.
17
+ *
18
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SmallProps
19
+ */
5
20
  export interface SmallProps extends OptionalChildProps {
6
21
  }
22
+ /**
23
+ * Small print — renders a `<small>` element for side comments and fine print.
24
+ *
25
+ * @param props The `children` to render as small print.
26
+ * @returns Rendered `<small>` element.
27
+ * @example <Small>Terms apply.</Small>
28
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/Small
29
+ */
7
30
  export declare function Small({ children }: SmallProps): ReactElement;
@@ -1,8 +1,26 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getModuleClass } from "../util/css.js";
3
3
  import SMALL_CSS from "./Small.module.css";
4
+ /**
5
+ * CSS class applied to the root element of every `Small`.
6
+ *
7
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_CLASS
8
+ */
4
9
  export const SMALL_CLASS = getModuleClass(SMALL_CSS, "small");
10
+ /**
11
+ * CSS class that styles `Small` when it appears inside `Prose` longform content.
12
+ *
13
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_PROSE_CLASS
14
+ */
5
15
  export const SMALL_PROSE_CLASS = getModuleClass(SMALL_CSS, "prose");
16
+ /**
17
+ * Small print — renders a `<small>` element for side comments and fine print.
18
+ *
19
+ * @param props The `children` to render as small print.
20
+ * @returns Rendered `<small>` element.
21
+ * @example <Small>Terms apply.</Small>
22
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/Small
23
+ */
6
24
  export function Small({ children }) {
7
25
  return _jsx("small", { className: SMALL_CSS, children: children });
8
26
  }
@@ -3,11 +3,35 @@ import { getModuleClass } from "../util/css.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
4
  import SMALL_CSS from "./Small.module.css";
5
5
 
6
+ /**
7
+ * CSS class applied to the root element of every `Small`.
8
+ *
9
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_CLASS
10
+ */
6
11
  export const SMALL_CLASS = getModuleClass(SMALL_CSS, "small");
12
+
13
+ /**
14
+ * CSS class that styles `Small` when it appears inside `Prose` longform content.
15
+ *
16
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SMALL_PROSE_CLASS
17
+ */
7
18
  export const SMALL_PROSE_CLASS = getModuleClass(SMALL_CSS, "prose");
8
19
 
20
+ /**
21
+ * Props for `Small` — optional `children`.
22
+ *
23
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/SmallProps
24
+ */
9
25
  export interface SmallProps extends OptionalChildProps {}
10
26
 
27
+ /**
28
+ * Small print — renders a `<small>` element for side comments and fine print.
29
+ *
30
+ * @param props The `children` to render as small print.
31
+ * @returns Rendered `<small>` element.
32
+ * @example <Small>Terms apply.</Small>
33
+ * @see https://dhoulb.github.io/shelving/ui/inline/Small/Small
34
+ */
11
35
  export function Small({ children }: SmallProps): ReactElement {
12
36
  return <small className={SMALL_CSS}>{children}</small>;
13
37
  }
@@ -1,7 +1,30 @@
1
1
  import type { ReactElement } from "react";
2
2
  import type { OptionalChildProps } from "../util/props.js";
3
+ /**
4
+ * CSS class applied to the root element of every `Strong`.
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_CLASS
7
+ */
3
8
  export declare const STRONG_CLASS: string | undefined;
9
+ /**
10
+ * CSS class that styles `Strong` when it appears inside `Prose` longform content.
11
+ *
12
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_PROSE_CLASS
13
+ */
4
14
  export declare const STRONG_PROSE_CLASS: string | undefined;
15
+ /**
16
+ * Props for `Strong` — optional `children`.
17
+ *
18
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/StrongProps
19
+ */
5
20
  export interface StrongProps extends OptionalChildProps {
6
21
  }
22
+ /**
23
+ * Strong importance — renders a `<strong>` element for text of strong importance (typically bold).
24
+ *
25
+ * @param props The `children` to render with strong importance.
26
+ * @returns Rendered `<strong>` element.
27
+ * @example <Strong>Warning</Strong>
28
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/Strong
29
+ */
7
30
  export declare function Strong({ children }: StrongProps): ReactElement;
@@ -1,8 +1,26 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getModuleClass } from "../util/css.js";
3
3
  import STRONG_CSS from "./Strong.module.css";
4
+ /**
5
+ * CSS class applied to the root element of every `Strong`.
6
+ *
7
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_CLASS
8
+ */
4
9
  export const STRONG_CLASS = getModuleClass(STRONG_CSS, "strong");
10
+ /**
11
+ * CSS class that styles `Strong` when it appears inside `Prose` longform content.
12
+ *
13
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_PROSE_CLASS
14
+ */
5
15
  export const STRONG_PROSE_CLASS = getModuleClass(STRONG_CSS, "prose");
16
+ /**
17
+ * Strong importance — renders a `<strong>` element for text of strong importance (typically bold).
18
+ *
19
+ * @param props The `children` to render with strong importance.
20
+ * @returns Rendered `<strong>` element.
21
+ * @example <Strong>Warning</Strong>
22
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/Strong
23
+ */
6
24
  export function Strong({ children }) {
7
25
  return _jsx("strong", { className: STRONG_CLASS, children: children });
8
26
  }
@@ -3,11 +3,35 @@ import { getModuleClass } from "../util/css.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
4
  import STRONG_CSS from "./Strong.module.css";
5
5
 
6
+ /**
7
+ * CSS class applied to the root element of every `Strong`.
8
+ *
9
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_CLASS
10
+ */
6
11
  export const STRONG_CLASS = getModuleClass(STRONG_CSS, "strong");
12
+
13
+ /**
14
+ * CSS class that styles `Strong` when it appears inside `Prose` longform content.
15
+ *
16
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/STRONG_PROSE_CLASS
17
+ */
7
18
  export const STRONG_PROSE_CLASS = getModuleClass(STRONG_CSS, "prose");
8
19
 
20
+ /**
21
+ * Props for `Strong` — optional `children`.
22
+ *
23
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/StrongProps
24
+ */
9
25
  export interface StrongProps extends OptionalChildProps {}
10
26
 
27
+ /**
28
+ * Strong importance — renders a `<strong>` element for text of strong importance (typically bold).
29
+ *
30
+ * @param props The `children` to render with strong importance.
31
+ * @returns Rendered `<strong>` element.
32
+ * @example <Strong>Warning</Strong>
33
+ * @see https://dhoulb.github.io/shelving/ui/inline/Strong/Strong
34
+ */
11
35
  export function Strong({ children }: StrongProps): ReactElement {
12
36
  return <strong className={STRONG_CLASS}>{children}</strong>;
13
37
  }
@@ -1,7 +1,30 @@
1
1
  import type { ReactElement } from "react";
2
2
  import type { OptionalChildProps } from "../util/props.js";
3
+ /**
4
+ * CSS class applied to the root element of every `Subscript`.
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_CLASS
7
+ */
3
8
  export declare const SUBSCRIPT_CLASS: string | undefined;
9
+ /**
10
+ * CSS class that styles `Subscript` when it appears inside `Prose` longform content.
11
+ *
12
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_PROSE_CLASS
13
+ */
4
14
  export declare const SUBSCRIPT_PROSE_CLASS: string | undefined;
15
+ /**
16
+ * Props for `Subscript` — optional `children`.
17
+ *
18
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SubscriptProps
19
+ */
5
20
  export interface SubscriptProps extends OptionalChildProps {
6
21
  }
22
+ /**
23
+ * Subscript text — renders a `<sub>` element for typographically lowered text (e.g. chemical formulae).
24
+ *
25
+ * @param props The `children` to render as subscript.
26
+ * @returns Rendered `<sub>` element.
27
+ * @example <>H<Subscript>2</Subscript>O</>
28
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/Subscript
29
+ */
7
30
  export declare function Subscript({ children }: SubscriptProps): ReactElement;
@@ -1,8 +1,26 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getModuleClass } from "../util/css.js";
3
3
  import SUBSCRIPT_CSS from "./Subscript.module.css";
4
+ /**
5
+ * CSS class applied to the root element of every `Subscript`.
6
+ *
7
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_CLASS
8
+ */
4
9
  export const SUBSCRIPT_CLASS = getModuleClass(SUBSCRIPT_CSS, "subscript");
10
+ /**
11
+ * CSS class that styles `Subscript` when it appears inside `Prose` longform content.
12
+ *
13
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_PROSE_CLASS
14
+ */
5
15
  export const SUBSCRIPT_PROSE_CLASS = getModuleClass(SUBSCRIPT_CSS, "prose");
16
+ /**
17
+ * Subscript text — renders a `<sub>` element for typographically lowered text (e.g. chemical formulae).
18
+ *
19
+ * @param props The `children` to render as subscript.
20
+ * @returns Rendered `<sub>` element.
21
+ * @example <>H<Subscript>2</Subscript>O</>
22
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/Subscript
23
+ */
6
24
  export function Subscript({ children }) {
7
25
  return _jsx("sub", { className: SUBSCRIPT_CLASS, children: children });
8
26
  }
@@ -3,11 +3,35 @@ import { getModuleClass } from "../util/css.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
4
  import SUBSCRIPT_CSS from "./Subscript.module.css";
5
5
 
6
+ /**
7
+ * CSS class applied to the root element of every `Subscript`.
8
+ *
9
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_CLASS
10
+ */
6
11
  export const SUBSCRIPT_CLASS = getModuleClass(SUBSCRIPT_CSS, "subscript");
12
+
13
+ /**
14
+ * CSS class that styles `Subscript` when it appears inside `Prose` longform content.
15
+ *
16
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SUBSCRIPT_PROSE_CLASS
17
+ */
7
18
  export const SUBSCRIPT_PROSE_CLASS = getModuleClass(SUBSCRIPT_CSS, "prose");
8
19
 
20
+ /**
21
+ * Props for `Subscript` — optional `children`.
22
+ *
23
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/SubscriptProps
24
+ */
9
25
  export interface SubscriptProps extends OptionalChildProps {}
10
26
 
27
+ /**
28
+ * Subscript text — renders a `<sub>` element for typographically lowered text (e.g. chemical formulae).
29
+ *
30
+ * @param props The `children` to render as subscript.
31
+ * @returns Rendered `<sub>` element.
32
+ * @example <>H<Subscript>2</Subscript>O</>
33
+ * @see https://dhoulb.github.io/shelving/ui/inline/Subscript/Subscript
34
+ */
11
35
  export function Subscript({ children }: SubscriptProps): ReactElement {
12
36
  return <sub className={SUBSCRIPT_CLASS}>{children}</sub>;
13
37
  }
@@ -1,7 +1,30 @@
1
1
  import type { ReactElement } from "react";
2
2
  import type { OptionalChildProps } from "../util/props.js";
3
+ /**
4
+ * CSS class applied to the root element of every `Superscript`.
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_CLASS
7
+ */
3
8
  export declare const SUPERSCRIPT_CLASS: string | undefined;
9
+ /**
10
+ * CSS class that styles `Superscript` when it appears inside `Prose` longform content.
11
+ *
12
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_PROSE_CLASS
13
+ */
4
14
  export declare const SUPERSCRIPT_PROSE_CLASS: string | undefined;
15
+ /**
16
+ * Props for `Superscript` — optional `children`.
17
+ *
18
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SuperscriptProps
19
+ */
5
20
  export interface SuperscriptProps extends OptionalChildProps {
6
21
  }
22
+ /**
23
+ * Superscript text — renders a `<sup>` element for typographically raised text (e.g. exponents, footnote markers).
24
+ *
25
+ * @param props The `children` to render as superscript.
26
+ * @returns Rendered `<sup>` element.
27
+ * @example <>E = mc<Superscript>2</Superscript></>
28
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/Superscript
29
+ */
7
30
  export declare function Superscript({ children }: SuperscriptProps): ReactElement;
@@ -1,8 +1,26 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getModuleClass } from "../util/css.js";
3
3
  import SUPERSCRIPT_CSS from "./Superscript.module.css";
4
+ /**
5
+ * CSS class applied to the root element of every `Superscript`.
6
+ *
7
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_CLASS
8
+ */
4
9
  export const SUPERSCRIPT_CLASS = getModuleClass(SUPERSCRIPT_CSS, "superscript");
10
+ /**
11
+ * CSS class that styles `Superscript` when it appears inside `Prose` longform content.
12
+ *
13
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_PROSE_CLASS
14
+ */
5
15
  export const SUPERSCRIPT_PROSE_CLASS = getModuleClass(SUPERSCRIPT_CSS, "prose");
16
+ /**
17
+ * Superscript text — renders a `<sup>` element for typographically raised text (e.g. exponents, footnote markers).
18
+ *
19
+ * @param props The `children` to render as superscript.
20
+ * @returns Rendered `<sup>` element.
21
+ * @example <>E = mc<Superscript>2</Superscript></>
22
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/Superscript
23
+ */
6
24
  export function Superscript({ children }) {
7
25
  return _jsx("sup", { className: SUPERSCRIPT_CLASS, children: children });
8
26
  }
@@ -3,11 +3,35 @@ import { getModuleClass } from "../util/css.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
4
  import SUPERSCRIPT_CSS from "./Superscript.module.css";
5
5
 
6
+ /**
7
+ * CSS class applied to the root element of every `Superscript`.
8
+ *
9
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_CLASS
10
+ */
6
11
  export const SUPERSCRIPT_CLASS = getModuleClass(SUPERSCRIPT_CSS, "superscript");
12
+
13
+ /**
14
+ * CSS class that styles `Superscript` when it appears inside `Prose` longform content.
15
+ *
16
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SUPERSCRIPT_PROSE_CLASS
17
+ */
7
18
  export const SUPERSCRIPT_PROSE_CLASS = getModuleClass(SUPERSCRIPT_CSS, "prose");
8
19
 
20
+ /**
21
+ * Props for `Superscript` — optional `children`.
22
+ *
23
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/SuperscriptProps
24
+ */
9
25
  export interface SuperscriptProps extends OptionalChildProps {}
10
26
 
27
+ /**
28
+ * Superscript text — renders a `<sup>` element for typographically raised text (e.g. exponents, footnote markers).
29
+ *
30
+ * @param props The `children` to render as superscript.
31
+ * @returns Rendered `<sup>` element.
32
+ * @example <>E = mc<Superscript>2</Superscript></>
33
+ * @see https://dhoulb.github.io/shelving/ui/inline/Superscript/Superscript
34
+ */
11
35
  export function Superscript({ children }: SuperscriptProps): ReactElement {
12
36
  return <sup className={SUPERSCRIPT_CLASS}>{children}</sup>;
13
37
  }
@@ -1,18 +1,57 @@
1
1
  import type { ReactElement } from "react";
2
2
  import { type PossibleDate } from "../../util/date.js";
3
3
  import type { OptionalChildProps } from "../util/props.js";
4
+ /**
5
+ * Props for `When`, `Ago`, and `Until` — a `target` date plus an optional `current` reference date and `full` toggle.
6
+ *
7
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/WhenProps
8
+ */
4
9
  export interface WhenProps extends OptionalChildProps {
5
10
  target: PossibleDate | undefined;
6
11
  current?: PossibleDate | undefined;
7
12
  full?: boolean | undefined;
8
13
  }
9
- /** Show a string like `in 6d` or `3w ago` wrapped with a `<time>` element providing the machine-readable format of the same date. */
14
+ /**
15
+ * Relative time — shows a signed string like `in 6d` or `3w ago` wrapped in a `<time>` element carrying the machine-readable date.
16
+ *
17
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
18
+ * @returns Rendered `<time>` element showing the relative time.
19
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
20
+ * @example <When target="2030-01-01" />
21
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/When
22
+ */
10
23
  export declare function When(props: WhenProps): ReactElement;
24
+ /**
25
+ * Props for `Ago` — identical to `WhenProps`.
26
+ *
27
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/AgoProps
28
+ */
11
29
  export interface AgoProps extends WhenProps {
12
30
  }
13
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
31
+ /**
32
+ * Elapsed time — shows an unsigned string like `6d` or `3w` for a past date wrapped in a `<time>` element carrying the machine-readable date.
33
+ *
34
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
35
+ * @returns Rendered `<time>` element showing the elapsed time.
36
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
37
+ * @example <Ago target="2020-01-01" />
38
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Ago
39
+ */
14
40
  export declare function Ago(props: AgoProps): ReactElement;
41
+ /**
42
+ * Props for `Until` — identical to `WhenProps`.
43
+ *
44
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/UntilProps
45
+ */
15
46
  export interface UntilProps extends WhenProps {
16
47
  }
17
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
48
+ /**
49
+ * Remaining time — shows an unsigned string like `6d` or `3w` for a future date wrapped in a `<time>` element carrying the machine-readable date.
50
+ *
51
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
52
+ * @returns Rendered `<time>` element showing the remaining time.
53
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
54
+ * @example <Until target="2030-01-01" />
55
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Until
56
+ */
18
57
  export declare function Until(props: UntilProps): ReactElement;
package/ui/inline/When.js CHANGED
@@ -10,15 +10,39 @@ function _getWhen(formatter, { target: possibleTarget, current: possibleCurrent
10
10
  const formatted = children ?? (full ? `${title} (${formatter(target, current, _OPTIONS)})` : formatter(target, current, _OPTIONS));
11
11
  return (_jsx("time", { dateTime: possibleCurrent === "now" ? target.toISOString() : `PT${getSecondsAgo(target, current)}S`, title: title, children: formatted }));
12
12
  }
13
- /** Show a string like `in 6d` or `3w ago` wrapped with a `<time>` element providing the machine-readable format of the same date. */
13
+ /**
14
+ * Relative time — shows a signed string like `in 6d` or `3w ago` wrapped in a `<time>` element carrying the machine-readable date.
15
+ *
16
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
17
+ * @returns Rendered `<time>` element showing the relative time.
18
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
19
+ * @example <When target="2030-01-01" />
20
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/When
21
+ */
14
22
  export function When(props) {
15
23
  return _getWhen(formatWhen, props, When);
16
24
  }
17
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
25
+ /**
26
+ * Elapsed time — shows an unsigned string like `6d` or `3w` for a past date wrapped in a `<time>` element carrying the machine-readable date.
27
+ *
28
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
29
+ * @returns Rendered `<time>` element showing the elapsed time.
30
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
31
+ * @example <Ago target="2020-01-01" />
32
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Ago
33
+ */
18
34
  export function Ago(props) {
19
35
  return _getWhen(formatAgo, props, Ago);
20
36
  }
21
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
37
+ /**
38
+ * Remaining time — shows an unsigned string like `6d` or `3w` for a future date wrapped in a `<time>` element carrying the machine-readable date.
39
+ *
40
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
41
+ * @returns Rendered `<time>` element showing the remaining time.
42
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
43
+ * @example <Until target="2030-01-01" />
44
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Until
45
+ */
22
46
  export function Until(props) {
23
47
  return _getWhen(formatUntil, props, Until);
24
48
  }
@@ -23,27 +23,66 @@ function _getWhen(
23
23
  );
24
24
  }
25
25
 
26
+ /**
27
+ * Props for `When`, `Ago`, and `Until` — a `target` date plus an optional `current` reference date and `full` toggle.
28
+ *
29
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/WhenProps
30
+ */
26
31
  export interface WhenProps extends OptionalChildProps {
27
32
  target: PossibleDate | undefined;
28
33
  current?: PossibleDate | undefined;
29
34
  full?: boolean | undefined;
30
35
  }
31
36
 
32
- /** Show a string like `in 6d` or `3w ago` wrapped with a `<time>` element providing the machine-readable format of the same date. */
37
+ /**
38
+ * Relative time — shows a signed string like `in 6d` or `3w ago` wrapped in a `<time>` element carrying the machine-readable date.
39
+ *
40
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
41
+ * @returns Rendered `<time>` element showing the relative time.
42
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
43
+ * @example <When target="2030-01-01" />
44
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/When
45
+ */
33
46
  export function When(props: WhenProps): ReactElement {
34
47
  return _getWhen(formatWhen, props, When);
35
48
  }
36
49
 
50
+ /**
51
+ * Props for `Ago` — identical to `WhenProps`.
52
+ *
53
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/AgoProps
54
+ */
37
55
  export interface AgoProps extends WhenProps {}
38
56
 
39
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
57
+ /**
58
+ * Elapsed time — shows an unsigned string like `6d` or `3w` for a past date wrapped in a `<time>` element carrying the machine-readable date.
59
+ *
60
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
61
+ * @returns Rendered `<time>` element showing the elapsed time.
62
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
63
+ * @example <Ago target="2020-01-01" />
64
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Ago
65
+ */
40
66
  export function Ago(props: AgoProps): ReactElement {
41
67
  return _getWhen(formatAgo, props, Ago);
42
68
  }
43
69
 
70
+ /**
71
+ * Props for `Until` — identical to `WhenProps`.
72
+ *
73
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/UntilProps
74
+ */
44
75
  export interface UntilProps extends WhenProps {}
45
76
 
46
- /** Show a string like `6d` or `3w` wrapped with a `<time>` element providing the machine-readable format of the same date. */
77
+ /**
78
+ * Remaining time — shows an unsigned string like `6d` or `3w` for a future date wrapped in a `<time>` element carrying the machine-readable date.
79
+ *
80
+ * @param props The `target` date, optional `current` reference (defaults to now), `full` toggle, and `children` override.
81
+ * @returns Rendered `<time>` element showing the remaining time.
82
+ * @throws {RequiredError} If `target` (or `current`) cannot be coerced to a valid date.
83
+ * @example <Until target="2030-01-01" />
84
+ * @see https://dhoulb.github.io/shelving/ui/inline/When/Until
85
+ */
47
86
  export function Until(props: UntilProps): ReactElement {
48
87
  return _getWhen(formatUntil, props, Until);
49
88
  }
@@ -1,10 +1,21 @@
1
1
  import type { ReactElement } from "react";
2
2
  import type { OptionalChildProps } from "../util/props.js";
3
+ /**
4
+ * Props for `<CenteredLayout>` — optional `children` and a `fullWidth` flag to drop the max-width.
5
+ *
6
+ * @see https://dhoulb.github.io/shelving/ui/layout/CenteredLayout/CenteredLayoutProps
7
+ */
3
8
  export interface CenteredLayoutProps extends OptionalChildProps {
4
9
  fullWidth?: boolean;
5
10
  }
6
11
  /**
7
- * Layout that puts the content in the center of the screen with no header/footer and a narrow max-width.
12
+ * Layout that centres its content with no header/footer and a narrow max-width.
8
13
  * - Used for e.g. login/register/error/form pages where the content is the only focus.
14
+ *
15
+ * @param children The content to centre.
16
+ * @param fullWidth Drop the narrow max-width and let content fill the width (defaults to `false`).
17
+ * @returns The centred layout element.
18
+ * @example <CenteredLayout><LoginForm /></CenteredLayout>
19
+ * @see https://dhoulb.github.io/shelving/ui/layout/CenteredLayout/CenteredLayout
9
20
  */
10
21
  export declare function CenteredLayout({ children, fullWidth }: CenteredLayoutProps): ReactElement;
@@ -4,8 +4,14 @@ import { getClass } from "../util/css.js";
4
4
  import CENTERED_LAYOUT_CSS from "./CenteredLayout.module.css";
5
5
  import { LAYOUT_CLASS } from "./Layout.js";
6
6
  /**
7
- * Layout that puts the content in the center of the screen with no header/footer and a narrow max-width.
7
+ * Layout that centres its content with no header/footer and a narrow max-width.
8
8
  * - Used for e.g. login/register/error/form pages where the content is the only focus.
9
+ *
10
+ * @param children The content to centre.
11
+ * @param fullWidth Drop the narrow max-width and let content fill the width (defaults to `false`).
12
+ * @returns The centred layout element.
13
+ * @example <CenteredLayout><LoginForm /></CenteredLayout>
14
+ * @see https://dhoulb.github.io/shelving/ui/layout/CenteredLayout/CenteredLayout
9
15
  */
10
16
  export function CenteredLayout({ children, fullWidth = false }) {
11
17
  const { path } = requireMetaURL();