react-cheminfo 0.75.0 → 0.77.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/README.md +141 -31
  2. package/lib/card/core/cardAddress.d.ts +19 -2
  3. package/lib/card/core/cardAddress.d.ts.map +1 -1
  4. package/lib/card/core/cardAddress.js +35 -2
  5. package/lib/card/core/cardAddress.js.map +1 -1
  6. package/lib/card/core/cardPageUrl.d.ts +7 -1
  7. package/lib/card/core/cardPageUrl.d.ts.map +1 -1
  8. package/lib/card/core/cardPageUrl.js +4 -2
  9. package/lib/card/core/cardPageUrl.js.map +1 -1
  10. package/lib/card/core/index.d.ts +1 -1
  11. package/lib/card/core/index.d.ts.map +1 -1
  12. package/lib/card/core/index.js +1 -1
  13. package/lib/card/core/index.js.map +1 -1
  14. package/lib/credits/core/credits.d.ts +30 -0
  15. package/lib/credits/core/credits.d.ts.map +1 -1
  16. package/lib/credits/core/credits.js +35 -0
  17. package/lib/credits/core/credits.js.map +1 -1
  18. package/lib/download/core/copySvg.d.ts +12 -0
  19. package/lib/download/core/copySvg.d.ts.map +1 -0
  20. package/lib/download/core/copySvg.js +38 -0
  21. package/lib/download/core/copySvg.js.map +1 -0
  22. package/lib/download/core/downloadFigure.d.ts +12 -1
  23. package/lib/download/core/downloadFigure.d.ts.map +1 -1
  24. package/lib/download/core/downloadFigure.js +21 -0
  25. package/lib/download/core/downloadFigure.js.map +1 -1
  26. package/lib/download/core/figureDpi.d.ts +59 -0
  27. package/lib/download/core/figureDpi.d.ts.map +1 -0
  28. package/lib/download/core/figureDpi.js +75 -0
  29. package/lib/download/core/figureDpi.js.map +1 -0
  30. package/lib/download/core/figurePng.d.ts +4 -1
  31. package/lib/download/core/figurePng.d.ts.map +1 -1
  32. package/lib/download/core/figurePng.js +11 -2
  33. package/lib/download/core/figurePng.js.map +1 -1
  34. package/lib/download/core/index.d.ts +5 -1
  35. package/lib/download/core/index.d.ts.map +1 -1
  36. package/lib/download/core/index.js +4 -1
  37. package/lib/download/core/index.js.map +1 -1
  38. package/lib/download/core/pngDpi.d.ts +22 -0
  39. package/lib/download/core/pngDpi.d.ts.map +1 -0
  40. package/lib/download/core/pngDpi.js +79 -0
  41. package/lib/download/core/pngDpi.js.map +1 -0
  42. package/lib/download/ui/FigureDownloadPanel.d.ts +13 -0
  43. package/lib/download/ui/FigureDownloadPanel.d.ts.map +1 -1
  44. package/lib/download/ui/FigureDownloadPanel.js +18 -34
  45. package/lib/download/ui/FigureDownloadPanel.js.map +1 -1
  46. package/lib/download/ui/figureDownloadHint.d.ts +5 -0
  47. package/lib/download/ui/figureDownloadHint.d.ts.map +1 -1
  48. package/lib/download/ui/figureDownloadHint.js +8 -0
  49. package/lib/download/ui/figureDownloadHint.js.map +1 -1
  50. package/lib/download/ui/figureDownloadOptions.d.ts +84 -0
  51. package/lib/download/ui/figureDownloadOptions.d.ts.map +1 -0
  52. package/lib/download/ui/figureDownloadOptions.js +2 -0
  53. package/lib/download/ui/figureDownloadOptions.js.map +1 -0
  54. package/lib/download/ui/resolutionChoices.d.ts +27 -0
  55. package/lib/download/ui/resolutionChoices.d.ts.map +1 -0
  56. package/lib/download/ui/resolutionChoices.js +48 -0
  57. package/lib/download/ui/resolutionChoices.js.map +1 -0
  58. package/lib/download/ui/useFigureActions.d.ts +4 -1
  59. package/lib/download/ui/useFigureActions.d.ts.map +1 -1
  60. package/lib/download/ui/useFigureActions.js +17 -8
  61. package/lib/download/ui/useFigureActions.js.map +1 -1
  62. package/lib/download/ui/useFigureDownload.d.ts +2 -55
  63. package/lib/download/ui/useFigureDownload.d.ts.map +1 -1
  64. package/lib/download/ui/useFigureDownload.js +45 -13
  65. package/lib/download/ui/useFigureDownload.js.map +1 -1
  66. package/lib/ecosystem/core/sites.d.ts.map +1 -1
  67. package/lib/ecosystem/core/sites.js +14 -0
  68. package/lib/ecosystem/core/sites.js.map +1 -1
  69. package/lib/ecosystem/core/types.d.ts +1 -1
  70. package/lib/ecosystem/core/types.d.ts.map +1 -1
  71. package/lib/ecosystem/ui/glyphs.d.ts.map +1 -1
  72. package/lib/ecosystem/ui/glyphs.js +3 -0
  73. package/lib/ecosystem/ui/glyphs.js.map +1 -1
  74. package/lib/i18n/core/chromeCatalog.d.ts +1 -1
  75. package/lib/i18n/core/chromeCatalog.d.ts.map +1 -1
  76. package/lib/ir/core/bandAssignments.d.ts.map +1 -1
  77. package/lib/ir/core/bandAssignments.js +27 -0
  78. package/lib/ir/core/bandAssignments.js.map +1 -1
  79. package/lib/ir/ui/BandRow.d.ts +4 -4
  80. package/lib/ir/ui/BandRow.d.ts.map +1 -1
  81. package/lib/ir/ui/BandRow.js +41 -14
  82. package/lib/ir/ui/BandRow.js.map +1 -1
  83. package/lib/locales/de.json +32 -1
  84. package/lib/locales/en.json +32 -1
  85. package/lib/locales/es.json +32 -1
  86. package/lib/locales/fr.json +32 -1
  87. package/lib/locales/it.json +32 -1
  88. package/lib/molecule3d/ui/Molecule3DStage.d.ts +4 -33
  89. package/lib/molecule3d/ui/Molecule3DStage.d.ts.map +1 -1
  90. package/lib/molecule3d/ui/Molecule3DStage.js +3 -37
  91. package/lib/molecule3d/ui/Molecule3DStage.js.map +1 -1
  92. package/lib/osiris/core/barGeometry.d.ts +42 -0
  93. package/lib/osiris/core/barGeometry.d.ts.map +1 -0
  94. package/lib/osiris/core/barGeometry.js +46 -0
  95. package/lib/osiris/core/barGeometry.js.map +1 -0
  96. package/lib/osiris/core/computeProperties.d.ts +42 -0
  97. package/lib/osiris/core/computeProperties.d.ts.map +1 -0
  98. package/lib/osiris/core/computeProperties.js +115 -0
  99. package/lib/osiris/core/computeProperties.js.map +1 -0
  100. package/lib/osiris/core/constants.d.ts +70 -0
  101. package/lib/osiris/core/constants.d.ts.map +1 -0
  102. package/lib/osiris/core/constants.js +99 -0
  103. package/lib/osiris/core/constants.js.map +1 -0
  104. package/lib/osiris/core/fitness.d.ts +32 -0
  105. package/lib/osiris/core/fitness.d.ts.map +1 -0
  106. package/lib/osiris/core/fitness.js +48 -0
  107. package/lib/osiris/core/fitness.js.map +1 -0
  108. package/lib/osiris/core/index.d.ts +29 -0
  109. package/lib/osiris/core/index.d.ts.map +1 -0
  110. package/lib/osiris/core/index.js +19 -0
  111. package/lib/osiris/core/index.js.map +1 -0
  112. package/lib/osiris/core/poolSize.d.ts +17 -0
  113. package/lib/osiris/core/poolSize.d.ts.map +1 -0
  114. package/lib/osiris/core/poolSize.js +22 -0
  115. package/lib/osiris/core/poolSize.js.map +1 -0
  116. package/lib/osiris/core/poolTypes.d.ts +140 -0
  117. package/lib/osiris/core/poolTypes.d.ts.map +1 -0
  118. package/lib/osiris/core/poolTypes.js +12 -0
  119. package/lib/osiris/core/poolTypes.js.map +1 -0
  120. package/lib/osiris/core/predictIdCode.d.ts +39 -0
  121. package/lib/osiris/core/predictIdCode.d.ts.map +1 -0
  122. package/lib/osiris/core/predictIdCode.js +54 -0
  123. package/lib/osiris/core/predictIdCode.js.map +1 -0
  124. package/lib/osiris/core/predictProtocol.d.ts +67 -0
  125. package/lib/osiris/core/predictProtocol.d.ts.map +1 -0
  126. package/lib/osiris/core/predictProtocol.js +29 -0
  127. package/lib/osiris/core/predictProtocol.js.map +1 -0
  128. package/lib/osiris/core/predictionPool.d.ts +23 -0
  129. package/lib/osiris/core/predictionPool.d.ts.map +1 -0
  130. package/lib/osiris/core/predictionPool.js +186 -0
  131. package/lib/osiris/core/predictionPool.js.map +1 -0
  132. package/lib/osiris/core/predictionQueue.d.ts +46 -0
  133. package/lib/osiris/core/predictionQueue.d.ts.map +1 -0
  134. package/lib/osiris/core/predictionQueue.js +57 -0
  135. package/lib/osiris/core/predictionQueue.js.map +1 -0
  136. package/lib/osiris/core/predictors.d.ts +62 -0
  137. package/lib/osiris/core/predictors.d.ts.map +1 -0
  138. package/lib/osiris/core/predictors.js +100 -0
  139. package/lib/osiris/core/predictors.js.map +1 -0
  140. package/lib/osiris/core/propertyKeys.d.ts +32 -0
  141. package/lib/osiris/core/propertyKeys.d.ts.map +1 -0
  142. package/lib/osiris/core/propertyKeys.js +44 -0
  143. package/lib/osiris/core/propertyKeys.js.map +1 -0
  144. package/lib/osiris/core/riskAppearance.d.ts +60 -0
  145. package/lib/osiris/core/riskAppearance.d.ts.map +1 -0
  146. package/lib/osiris/core/riskAppearance.js +59 -0
  147. package/lib/osiris/core/riskAppearance.js.map +1 -0
  148. package/lib/osiris/core/riskDetail.d.ts +22 -0
  149. package/lib/osiris/core/riskDetail.d.ts.map +1 -0
  150. package/lib/osiris/core/riskDetail.js +86 -0
  151. package/lib/osiris/core/riskDetail.js.map +1 -0
  152. package/lib/osiris/core/riskDetailRequest.d.ts +31 -0
  153. package/lib/osiris/core/riskDetailRequest.d.ts.map +1 -0
  154. package/lib/osiris/core/riskDetailRequest.js +49 -0
  155. package/lib/osiris/core/riskDetailRequest.js.map +1 -0
  156. package/lib/osiris/core/riskFindings.d.ts +26 -0
  157. package/lib/osiris/core/riskFindings.d.ts.map +1 -0
  158. package/lib/osiris/core/riskFindings.js +79 -0
  159. package/lib/osiris/core/riskFindings.js.map +1 -0
  160. package/lib/osiris/core/runPredictionJob.d.ts +20 -0
  161. package/lib/osiris/core/runPredictionJob.d.ts.map +1 -0
  162. package/lib/osiris/core/runPredictionJob.js +43 -0
  163. package/lib/osiris/core/runPredictionJob.js.map +1 -0
  164. package/lib/osiris/core/scales.d.ts +70 -0
  165. package/lib/osiris/core/scales.d.ts.map +1 -0
  166. package/lib/osiris/core/scales.js +185 -0
  167. package/lib/osiris/core/scales.js.map +1 -0
  168. package/lib/osiris/core/types.d.ts +91 -0
  169. package/lib/osiris/core/types.d.ts.map +1 -0
  170. package/lib/osiris/core/types.js +19 -0
  171. package/lib/osiris/core/types.js.map +1 -0
  172. package/lib/osiris/core/valuation.d.ts +28 -0
  173. package/lib/osiris/core/valuation.d.ts.map +1 -0
  174. package/lib/osiris/core/valuation.js +39 -0
  175. package/lib/osiris/core/valuation.js.map +1 -0
  176. package/lib/osiris/ui/PropertyBar.d.ts +27 -0
  177. package/lib/osiris/ui/PropertyBar.d.ts.map +1 -0
  178. package/lib/osiris/ui/PropertyBar.js +27 -0
  179. package/lib/osiris/ui/PropertyBar.js.map +1 -0
  180. package/lib/osiris/ui/PropertyPanel.d.ts +91 -0
  181. package/lib/osiris/ui/PropertyPanel.d.ts.map +1 -0
  182. package/lib/osiris/ui/PropertyPanel.js +77 -0
  183. package/lib/osiris/ui/PropertyPanel.js.map +1 -0
  184. package/lib/osiris/ui/PropertyRows.d.ts +40 -0
  185. package/lib/osiris/ui/PropertyRows.d.ts.map +1 -0
  186. package/lib/osiris/ui/PropertyRows.js +23 -0
  187. package/lib/osiris/ui/PropertyRows.js.map +1 -0
  188. package/lib/osiris/ui/RiskFindings.d.ts +43 -0
  189. package/lib/osiris/ui/RiskFindings.d.ts.map +1 -0
  190. package/lib/osiris/ui/RiskFindings.js +51 -0
  191. package/lib/osiris/ui/RiskFindings.js.map +1 -0
  192. package/lib/osiris/ui/RiskPanel.d.ts +46 -0
  193. package/lib/osiris/ui/RiskPanel.d.ts.map +1 -0
  194. package/lib/osiris/ui/RiskPanel.js +32 -0
  195. package/lib/osiris/ui/RiskPanel.js.map +1 -0
  196. package/lib/osiris/ui/RiskSquare.d.ts +51 -0
  197. package/lib/osiris/ui/RiskSquare.d.ts.map +1 -0
  198. package/lib/osiris/ui/RiskSquare.js +23 -0
  199. package/lib/osiris/ui/RiskSquare.js.map +1 -0
  200. package/lib/osiris/ui/index.d.ts +15 -0
  201. package/lib/osiris/ui/index.d.ts.map +1 -0
  202. package/lib/osiris/ui/index.js +8 -0
  203. package/lib/osiris/ui/index.js.map +1 -0
  204. package/lib/osiris/ui/usePredictions.d.ts +81 -0
  205. package/lib/osiris/ui/usePredictions.d.ts.map +1 -0
  206. package/lib/osiris/ui/usePredictions.js +102 -0
  207. package/lib/osiris/ui/usePredictions.js.map +1 -0
  208. package/lib/osiris-ui.d.ts +11 -0
  209. package/lib/osiris-ui.d.ts.map +1 -0
  210. package/lib/osiris-ui.js +11 -0
  211. package/lib/osiris-ui.js.map +1 -0
  212. package/lib/osiris.d.ts +17 -0
  213. package/lib/osiris.d.ts.map +1 -0
  214. package/lib/osiris.js +17 -0
  215. package/lib/osiris.js.map +1 -0
  216. package/lib/panel/ui/FilterInput.d.ts.map +1 -1
  217. package/lib/panel/ui/FilterInput.js +3 -1
  218. package/lib/panel/ui/FilterInput.js.map +1 -1
  219. package/lib/panel/ui/SidePanelItem.d.ts +39 -0
  220. package/lib/panel/ui/SidePanelItem.d.ts.map +1 -0
  221. package/lib/panel/ui/SidePanelItem.js +63 -0
  222. package/lib/panel/ui/SidePanelItem.js.map +1 -0
  223. package/lib/panel/ui/SidePanelStack.d.ts +11 -10
  224. package/lib/panel/ui/SidePanelStack.d.ts.map +1 -1
  225. package/lib/panel/ui/SidePanelStack.js +22 -15
  226. package/lib/panel/ui/SidePanelStack.js.map +1 -1
  227. package/lib/panel/ui/SpectrumColorSwatch.d.ts.map +1 -1
  228. package/lib/panel/ui/SpectrumColorSwatch.js +4 -2
  229. package/lib/panel/ui/SpectrumColorSwatch.js.map +1 -1
  230. package/lib/panel/ui/usePanelFolds.d.ts +35 -0
  231. package/lib/panel/ui/usePanelFolds.d.ts.map +1 -0
  232. package/lib/panel/ui/usePanelFolds.js +73 -0
  233. package/lib/panel/ui/usePanelFolds.js.map +1 -0
  234. package/lib/shared/ui/FullscreenStage.d.ts +43 -0
  235. package/lib/shared/ui/FullscreenStage.d.ts.map +1 -0
  236. package/lib/shared/ui/FullscreenStage.js +38 -0
  237. package/lib/shared/ui/FullscreenStage.js.map +1 -0
  238. package/lib/shared/ui/canFillScreen.d.ts +7 -0
  239. package/lib/shared/ui/canFillScreen.d.ts.map +1 -0
  240. package/lib/shared/ui/canFillScreen.js +9 -0
  241. package/lib/shared/ui/canFillScreen.js.map +1 -0
  242. package/lib/shared/ui/index.d.ts +3 -0
  243. package/lib/shared/ui/index.d.ts.map +1 -1
  244. package/lib/shared/ui/index.js +2 -0
  245. package/lib/shared/ui/index.js.map +1 -1
  246. package/lib/split/ui/splitPanes.d.ts +3 -3
  247. package/lib/split/ui/splitPanes.js +1 -1
  248. package/lib/structure/core/structureNotations.d.ts +8 -1
  249. package/lib/structure/core/structureNotations.d.ts.map +1 -1
  250. package/lib/structure/core/structureNotations.js +14 -8
  251. package/lib/structure/core/structureNotations.js.map +1 -1
  252. package/lib/structure/ui/CardStructure.d.ts +43 -0
  253. package/lib/structure/ui/CardStructure.d.ts.map +1 -0
  254. package/lib/structure/ui/CardStructure.js +28 -0
  255. package/lib/structure/ui/CardStructure.js.map +1 -0
  256. package/lib/structure/ui/StructureExportPanel.d.ts +8 -0
  257. package/lib/structure/ui/StructureExportPanel.d.ts.map +1 -1
  258. package/lib/structure/ui/StructureExportPanel.js +9 -4
  259. package/lib/structure/ui/StructureExportPanel.js.map +1 -1
  260. package/lib/structure/ui/StructurePicturePane.d.ts +1 -1
  261. package/lib/structure/ui/StructurePicturePane.d.ts.map +1 -1
  262. package/lib/structure/ui/StructurePicturePane.js +5 -2
  263. package/lib/structure/ui/StructurePicturePane.js.map +1 -1
  264. package/lib/structure/ui/index.d.ts +3 -0
  265. package/lib/structure/ui/index.d.ts.map +1 -1
  266. package/lib/structure/ui/index.js +1 -0
  267. package/lib/structure/ui/index.js.map +1 -1
  268. package/package.json +4 -1
  269. package/src/card/core/cardAddress.ts +39 -3
  270. package/src/card/core/cardPageUrl.ts +10 -3
  271. package/src/card/core/index.ts +7 -1
  272. package/src/credits/core/credits.ts +40 -0
  273. package/src/download/core/copySvg.ts +40 -0
  274. package/src/download/core/downloadFigure.ts +26 -1
  275. package/src/download/core/figureDpi.ts +94 -0
  276. package/src/download/core/figurePng.ts +11 -2
  277. package/src/download/core/index.ts +14 -1
  278. package/src/download/core/pngDpi.ts +84 -0
  279. package/src/download/ui/FigureDownloadPanel.tsx +41 -51
  280. package/src/download/ui/figureDownloadHint.ts +13 -0
  281. package/src/download/ui/figureDownloadOptions.ts +85 -0
  282. package/src/download/ui/resolutionChoices.ts +67 -0
  283. package/src/download/ui/useFigureActions.ts +24 -9
  284. package/src/download/ui/useFigureDownload.tsx +57 -71
  285. package/src/ecosystem/core/sites.ts +14 -0
  286. package/src/ecosystem/core/types.ts +2 -1
  287. package/src/ecosystem/ui/glyphs.tsx +20 -0
  288. package/src/ir/core/bandAssignments.ts +27 -0
  289. package/src/ir/ui/BandRow.tsx +84 -26
  290. package/src/locales/de.json +32 -1
  291. package/src/locales/en.json +32 -1
  292. package/src/locales/es.json +32 -1
  293. package/src/locales/fr.json +32 -1
  294. package/src/locales/it.json +32 -1
  295. package/src/molecule3d/ui/Molecule3DStage.tsx +4 -88
  296. package/src/osiris/core/barGeometry.ts +74 -0
  297. package/src/osiris/core/computeProperties.ts +175 -0
  298. package/src/osiris/core/constants.ts +110 -0
  299. package/src/osiris/core/fitness.ts +59 -0
  300. package/src/osiris/core/index.ts +78 -0
  301. package/src/osiris/core/poolSize.ts +24 -0
  302. package/src/osiris/core/poolTypes.ts +140 -0
  303. package/src/osiris/core/predictIdCode.ts +69 -0
  304. package/src/osiris/core/predictProtocol.ts +78 -0
  305. package/src/osiris/core/predictionPool.ts +237 -0
  306. package/src/osiris/core/predictionQueue.ts +89 -0
  307. package/src/osiris/core/predictors.ts +142 -0
  308. package/src/osiris/core/propertyKeys.ts +54 -0
  309. package/src/osiris/core/riskAppearance.ts +86 -0
  310. package/src/osiris/core/riskDetail.ts +120 -0
  311. package/src/osiris/core/riskDetailRequest.ts +64 -0
  312. package/src/osiris/core/riskFindings.ts +92 -0
  313. package/src/osiris/core/runPredictionJob.ts +49 -0
  314. package/src/osiris/core/scales.ts +236 -0
  315. package/src/osiris/core/types.ts +103 -0
  316. package/src/osiris/core/valuation.ts +44 -0
  317. package/src/osiris/ui/PropertyBar.tsx +77 -0
  318. package/src/osiris/ui/PropertyPanel.tsx +227 -0
  319. package/src/osiris/ui/PropertyRows.tsx +92 -0
  320. package/src/osiris/ui/RiskFindings.tsx +137 -0
  321. package/src/osiris/ui/RiskPanel.tsx +81 -0
  322. package/src/osiris/ui/RiskSquare.tsx +108 -0
  323. package/src/osiris/ui/index.ts +17 -0
  324. package/src/osiris/ui/usePredictions.ts +194 -0
  325. package/src/osiris-ui.ts +11 -0
  326. package/src/osiris.ts +17 -0
  327. package/src/panel/ui/FilterInput.tsx +4 -1
  328. package/src/panel/ui/SidePanelItem.tsx +162 -0
  329. package/src/panel/ui/SidePanelStack.tsx +29 -36
  330. package/src/panel/ui/SpectrumColorSwatch.tsx +5 -3
  331. package/src/panel/ui/usePanelFolds.ts +103 -0
  332. package/src/shared/ui/FullscreenStage.tsx +96 -0
  333. package/src/shared/ui/canFillScreen.ts +8 -0
  334. package/src/shared/ui/index.ts +6 -0
  335. package/src/split/ui/splitPanes.tsx +4 -4
  336. package/src/structure/core/structureNotations.ts +25 -8
  337. package/src/structure/ui/CardStructure.tsx +76 -0
  338. package/src/structure/ui/StructureExportPanel.tsx +23 -4
  339. package/src/structure/ui/StructurePicturePane.tsx +14 -1
  340. package/src/structure/ui/index.ts +6 -0
  341. package/styles/chrome.css +3 -3
  342. package/styles/osiris.css +339 -0
package/README.md CHANGED
@@ -30,30 +30,33 @@ would mean two Blueprint style trees in one page.
30
30
  Subpaths are **bundle boundaries, not taxonomy**: a feature gets its own door
31
31
  only when it drags a heavy dependency behind it.
32
32
 
33
- | Import | Holds | Costs |
34
- | ---------------------------------- | ----------------------------------------------------- | ------------------------------------------------ |
35
- | `react-cheminfo/core` | every framework-free helper — 140 value exports | nothing |
36
- | `react-cheminfo/formula` | formulas: read, compared, drawn and copied | mf-parser, react-mf; React on the components |
37
- | `react-cheminfo/ui` | every React component and hook — 60 value exports | React |
38
- | `react-cheminfo/vite` | the prerender plugin and the OG card | nothing; React on the card |
39
- | `react-cheminfo/pages` | the Cloudflare Pages analytics middleware | nothing |
40
- | `react-cheminfo/server` | the prerendered build, served from Node | fastify, @fastify/static; Node only |
41
- | `react-cheminfo/card` | the card an answer is shown as in a chat | React; cheminfo-mcp-server, an optional peer |
42
- | `react-cheminfo/orbital` | the 3D atomic-orbital viewer | React, molstar |
43
- | `react-cheminfo/molecule3d` | the 3D molecule viewer and its toolbar | React, molstar |
44
- | `react-cheminfo/structure` | the structure editor and renderer | React, react-ocl, OCL |
45
- | `react-cheminfo/conformers` | conformer generation, ranking and refinement | OCL |
46
- | `react-cheminfo/slides` | the deck format and the slideshow player | React, react-markdown |
47
- | `react-cheminfo/spectra` | the spectra processing settings editors | React; types only from spectra-processor, ml-pca |
48
- | `react-cheminfo/ir` | the infrared chart, band table and editor | React, ir-spectrum, convert-to-jcamp |
49
- | `react-cheminfo/raman` | the Raman editor: the infrared one, read for Raman | the same as `react-cheminfo/ir` |
50
- | `react-cheminfo/mass` | the mass spectrum chart, peak table and editor | React, ms-spectrum, jcampconverter, xy-parser |
51
- | `react-cheminfo/xtb` | GFN2-xTB as a geometry relaxer | nothing on import; xtb-wasm on the first call |
52
- | `react-cheminfo/host` | data handed over by a page that frames the tool | nothing on import; ajv once the page is framed |
53
- | `react-cheminfo/host-testing` | a stand-in host and SciPeaks' messages, for e2e tests | nothing; Node only |
54
- | `react-cheminfo/styles/chrome.css` | the shared tokens and site-header stylesheet | nothing |
55
- | `react-cheminfo/styles/slides.css` | the deck stylesheet, themed on the site's colours | nothing |
56
- | `react-cheminfo/styles/card.css` | the card’s stylesheet, on the family’s tokens | nothing |
33
+ | Import | Holds | Costs |
34
+ | ---------------------------------- | ------------------------------------------------------ | ------------------------------------------------ |
35
+ | `react-cheminfo/core` | every framework-free helper — 140 value exports | nothing |
36
+ | `react-cheminfo/formula` | formulas: read, compared, drawn and copied | mf-parser, react-mf; React on the components |
37
+ | `react-cheminfo/ui` | every React component and hook — 60 value exports | React |
38
+ | `react-cheminfo/vite` | the prerender plugin and the OG card | nothing; React on the card |
39
+ | `react-cheminfo/pages` | the Cloudflare Pages analytics middleware | nothing |
40
+ | `react-cheminfo/server` | the prerendered build, served from Node | fastify, @fastify/static; Node only |
41
+ | `react-cheminfo/card` | the card an answer is shown as in a chat | React; cheminfo-mcp-server, an optional peer |
42
+ | `react-cheminfo/orbital` | the 3D atomic-orbital viewer | React, molstar |
43
+ | `react-cheminfo/molecule3d` | the 3D molecule viewer and its toolbar | React, molstar |
44
+ | `react-cheminfo/structure` | the structure editor and renderer | React, react-ocl, OCL |
45
+ | `react-cheminfo/conformers` | conformer generation, ranking and refinement | OCL |
46
+ | `react-cheminfo/osiris` | OSIRIS predictions and the pool of workers making them | nothing on import; OCL on the first prediction |
47
+ | `react-cheminfo/osiris-ui` | the OSIRIS property panel and `usePredictions` | React, react-mf; react-ocl to draw a fragment |
48
+ | `react-cheminfo/slides` | the deck format and the slideshow player | React, react-markdown |
49
+ | `react-cheminfo/spectra` | the spectra processing settings editors | React; types only from spectra-processor, ml-pca |
50
+ | `react-cheminfo/ir` | the infrared chart, band table and editor | React, ir-spectrum, convert-to-jcamp |
51
+ | `react-cheminfo/raman` | the Raman editor: the infrared one, read for Raman | the same as `react-cheminfo/ir` |
52
+ | `react-cheminfo/mass` | the mass spectrum chart, peak table and editor | React, ms-spectrum, jcampconverter, xy-parser |
53
+ | `react-cheminfo/xtb` | GFN2-xTB as a geometry relaxer | nothing on import; xtb-wasm on the first call |
54
+ | `react-cheminfo/host` | data handed over by a page that frames the tool | nothing on import; ajv once the page is framed |
55
+ | `react-cheminfo/host-testing` | a stand-in host and SciPeaks' messages, for e2e tests | nothing; Node only |
56
+ | `react-cheminfo/styles/chrome.css` | the shared tokens and site-header stylesheet | nothing |
57
+ | `react-cheminfo/styles/slides.css` | the deck stylesheet, themed on the site's colours | nothing |
58
+ | `react-cheminfo/styles/card.css` | the card’s stylesheet, on the family’s tokens | nothing |
59
+ | `react-cheminfo/styles/osiris.css` | the OSIRIS panel's stylesheet, on the family's tokens | nothing |
57
60
 
58
61
  A backend serving an RIS endpoint, a prerender script writing a sitemap, and
59
62
  every unit test of that logic therefore load no React at all — and a worker
@@ -99,6 +102,16 @@ so the code choosing a relaxer loads neither openchemlib nor WebAssembly; `xtbRe
99
102
  `import()`s `xtb-wasm` on the **first call**, so a site that offers refinement as
100
103
  an action still ships nothing extra to a visitor who never clicks it.
101
104
 
105
+ `react-cheminfo/osiris` predicts what OSIRIS says about a molecule — the
106
+ four toxicity risks, cLogP, solubility, drug-likeness and the drug score — and
107
+ spreads a set of molecules over a pool of workers, the rows a reader can see
108
+ answered first. It is framework-free and imports `openchemlib` on the first
109
+ prediction, never on import, because the worker serving `runPredictionJob`
110
+ imports it, and a dev server hands a worker its dependencies unbundled: a
111
+ component behind the same door would be evaluated in every worker. The panel
112
+ that draws an answer and the hook that drives the pool from a page are
113
+ `react-cheminfo/osiris-ui`, beside it.
114
+
102
115
  `react-cheminfo/vite` is the one door with a split bill: `cheminfoPrerender`
103
116
  needs nothing beyond Vite's own plugin type, while `ogCardHtml` renders a mark
104
117
  and therefore loads React — but on the call, not on the import, so the plugin
@@ -124,7 +137,7 @@ through a wildcard subpath exactly as `react-science` serves its own.
124
137
  | **Formulas** | `readFormula`, `normalizeFormula`, `canonicalFormula`, `atomCounts`, `formulaHtml`, `formulaText` (all `/formula`) | `CopyableFormula`, `QuestionFormula`, `FormulaInput` (all `/formula`) |
125
138
  | **Site shell** | `pageContentOf`; the `pages` option of `cheminfoPrerender` (`/vite`) | `SiteShell`, `ShareControl` |
126
139
  | **Properties** | `copyableText` | `PropertyTable` |
127
- | **Clipboard & files** | `writeToClipboard`, `downloadBlob`, `downloadText`, `sanitizeFileName`, `toDelimited`, `readDelimited`, `downloadFigure`, `figureSvg`, `figurePng`, `figureSize` | `ClickToCopy`, `CopyButton`, `CopyableValue`, `CodeBlock`, `DelimitedTextDialog`, `FigureDownload` |
140
+ | **Clipboard & files** | `writeToClipboard`, `downloadBlob`, `downloadText`, `sanitizeFileName`, `toDelimited`, `readDelimited`, `downloadFigure`, `figureSvg`, `figurePng`, `figureSize`, `dpiScale`, `withPngDpi` | `ClickToCopy`, `CopyButton`, `CopyableValue`, `CodeBlock`, `DelimitedTextDialog`, `FigureDownload` |
128
141
  | **Formatting & colour** | `formatInteger`, `formatDecimal`, `formatBytes`, `pluralize`, `readableInk`, `contrastRatio`, `COLOR_SCALES`, `resolveColorScale`, `formatColorScale`, `colorAt`, `swatchAt`, `sampleScale`, `colorScaleGradient`, `rgbToHsv` | `ColorScaleLegend`, `ColorScaleSelect`, `ColorScaleEditor`, `ColorScaleBar` |
129
142
  | **Number entry** | `readNumber`, `numberText`, `isPartialNumber`, `stepNumber`, `snapToStep` | `NumberInput` |
130
143
  | **Range filter** | `isRangeBounded`, `isRangeDomain`, `rangeHandles`, `movedRange`, `settleHandles`, `sameRange`, `rangeHistogramPath`, `OPEN_RANGE` | `RangeSlider` |
@@ -136,6 +149,7 @@ through a wildcard subpath exactly as `react-science` serves its own.
136
149
  | **Spectrum charts** | `chartScale`, `chartAxisScale`, `plotRect`, `zoomDomain`, `zoomSelection`, `labelStackBaselines`, `layoutAnnotationBoxes`, `profilePath`, `stickPath`, `guidePlacement`, `readoutPlacement`, `stackCapacity`, `nextSpectrumColor`, `panelStyles`, `statusBar` | `Axes`, `AxisGuide`, `ChartTracker`, `ChartStack`, `SelectionRect`, `TraceLegend`, `PlotCaption`, `useChartZoom`, `useChartPointer`, `useChartSize`, `SidePanelStack`, `PanelRail`, `Section`, `FilterInput`, `AboutDialogFrame`, `DocumentationDialogFrame`, `FigureDownload`, `useFigureDownload` |
137
150
  | **Infrared and Raman** | `loadIrSpectra`, `toIrSpectrum`, `pickBands`, `pickBandAt`, `editBandsAt`, `bandsFromPeaks`, `peaksFromBands`, `assignBands`, `BAND_ASSIGNMENTS`, `irSpectrumToJcamp`, `IR_MODE_RULES`, `IR_TECHNIQUE_RULES`, `nearestBandAt`, `planBandLabels`, `irReducer` (all `/ir`) | `IrEditor`, `IrChart`, `BandsPanel`, `SpectraPanel`, `MetadataPanel`, `useIrEditor` (all `/ir`); `RamanEditor` (`/raman`) |
138
151
  | **Mass spectra** | `loadMassSpectra`, `toMassSpectra`, `analyseSpectrum`, `decideResolution`, `resolutionOf`, `mzDecimalsOf`, `planPeakLabels`, `peakTableRows`, `massSpectrumToJcamp`, `massReducer` (all `/mass`) | `MassEditor`, `MassChart`, `SpectraPanel`, `PeaksPanel`, `MetadataPanel`, `useMassEditor` (all `/mass`) |
152
+ | **OSIRIS predictions** | `computeProperties`, `predictIdCode`, `loadPredictors`, `createPredictionPool`, `runPredictionJob`, `isPredictRequest`, `riskDetail`, `PROPERTY_SCALES`, `propertyFitness`, `barGeometry`, `riskAppearance` (all `/osiris`) | `PropertyPanel`, `RiskPanel`, `RiskSquare`, `RiskFindings`, `PropertyRows`, `usePredictions` (all `/osiris-ui`) |
139
153
  | **Spectra** | `FILTER_CATALOG`, `filterMenu`, `settingsProblems`, `normalizationFilters`, `addFilter`, `moveFilter`, `setFilterOption`, `principalComponentChoices`, `clampPrincipalComponents`, `EMPTY_SETTINGS` (all `/spectra`) | `SpectraSettingsEditor`, `FilterChainEditor`, `PrincipalComponentSelect` (all `/spectra`) |
140
154
  | **About** | `resolveAbout`, `aboutProblems` | `AboutPage` |
141
155
  | **Which build is running** | `formatBuiltAt`, `shortCommit`, `BuildInfo` | `AboutVersion`, `cheminfoBuildInfo` (`/vite`) |
@@ -147,7 +161,7 @@ through a wildcard subpath exactly as `react-science` serves its own.
147
161
  | **Periodic table** | `PERIODIC_ELEMENTS`, `elementBySymbol`, `elementByAtomicNumber`, `cellOf`, `placedElements`, `elementByArrowKey`, `EMPTY_BLOCK`, `categorySwatch`, `CATEGORY_LABELS` | `PeriodicTable`, `ElementCell`, `CategoryLegend` |
148
162
  | **Taxonomy** | `TAXON_RANKS`, `PRINCIPAL_RANKS`, `rankOrder`, `isPrincipalRank`, `isGenusOrBelow`, `isAboveGenus`, `principalLineage`, `lineageFromNodes`, `lineageFromRanks`, `genusOrBelow`, `ncbiTaxonomyUrl`, `splitOrganismName` | `TaxonLineage`, `OrganismName`, `useRankLabel` |
149
163
  | **Framed by a host** | `hostStructureLoader`, `readHostMolecule`, `STRUCTURE_KINDS`, `IR_JDX_SCHEMA`, `IR_PEAKS_SCHEMA`, `connectHost`, `selectInputs`, `checkValue`, `kindAccepts`, `parseRequest`, `OUTPUT_DELAY` (all `/host`); `startStandInHost`, `sendStandInHostRequest`, `SCIPEAKS_ETHYLBENZENE_LOAD`, `sciPeaksEthylbenzeneIrLoad` (`/host-testing`) | `useHostConnection` (`/host`) |
150
- | **Answer cards** | `CARD_PARAM`, `isCardAddress`, `sitePageUrl`, `cardPageUrl`, `framedPageUrl`, `roomForPanels`; `answerAddresses`, `joinAddress`, `viewOrigins`, `cardMeta`, `pageAnswer`, `siteView` (all `/server`) | `CardFrame`, `CardDetailsButton`, `CardFigure`, `CopyTableButton`, `fitCardToFrame`, `useFitCardToFrame`, `useOverlayRoom`, `holdRoomForPanels` (all `/card`); `StructureExportButton`, `useStructureDraft` (`/structure`) |
164
+ | **Answer cards** | `CARD_PARAM`, `ONLY_PARAM`, `isCardAddress`, `parseOnlyParam`, `sitePageUrl`, `cardPageUrl`, `framedPageUrl`, `roomForPanels`; `answerAddresses`, `joinAddress`, `viewOrigins`, `cardMeta`, `pageAnswer`, `siteView` (all `/server`) | `CardFrame`, `CardDetailsButton`, `CardFigure`, `CopyTableButton`, `fitCardToFrame`, `useFitCardToFrame`, `useOverlayRoom`, `holdRoomForPanels` (all `/card`); `StructureExportButton`, `useStructureDraft` (`/structure`) |
151
165
 
152
166
  Everything in that table is exported from `./core`, `./ui`, `./slides`,
153
167
  `./vite` or `./structure` and nothing else is: the sub-components a component is built
@@ -744,8 +758,35 @@ Marking the box itself `data-figure="html"` paints everything in it, the key's
744
758
  labels included. The corner that selects the whole table shows itself only when
745
759
  pointed at or reached from the keyboard, and is neither printed nor saved.
746
760
 
747
- `downloadFigure(target, options)`, `figureSvg` and `figurePng` are the same thing
748
- without the button, for a site saving a figure from its own menu.
761
+ Every PNG states its resolution, so a document places it at the size the figure
762
+ has on the page rather than at one pixel per point: a pixel of the page is a
763
+ ninety-sixth of an inch, so 2× is 192 dpi.
764
+
765
+ A figure drawn to the size it prints at — a structure at a journal's bond
766
+ length — takes **`unit="dpi"`**: the resolution is then offered as 150, 300,
767
+ 600 and 1200 dpi, the panel writes out the printed size in centimetres, and
768
+ the SVG keeps the size it states.
769
+
770
+ A page whose file carries more than its picture — the SMILES and InChIKey
771
+ behind a drawn structure — passes **`writeFigure`** in place of `targetId`. It
772
+ returns the SVG document and its size in pixels of the page; the SVG is saved as
773
+ written, and the PNG is painted from it. With your own trigger, the hook takes
774
+ the same options, and `onScaleChange` hands back the multiple picked, for a page
775
+ that keeps it:
776
+
777
+ ```tsx
778
+ const { isOpen, setOpen, panel } = useFigureDownload({
779
+ writeFigure: async () => ({ markup: await writeDrawing(), width, height }),
780
+ unit: 'dpi',
781
+ defaultScale: dpiScale(600),
782
+ onScaleChange: (scale) => savePreference(figureDpi(scale)),
783
+ });
784
+ ```
785
+
786
+ `downloadFigure(target, options)`, `downloadFigureSvg(figure, options)`,
787
+ `figureSvg` and `figurePng` are the same thing without the button, for a site
788
+ saving a figure from its own menu; `withPngDpi` and `pngDpi` write and read the
789
+ resolution of any PNG.
749
790
 
750
791
  ### `RangeSlider`
751
792
 
@@ -916,6 +957,57 @@ const included = useMemo(
916
957
  subject — a formula through `react-mf`, a structure, a name — and a readout of
917
958
  strings cannot hold any of that.
918
959
 
960
+ ## Predicting with OSIRIS
961
+
962
+ A site keeps two things of its own: the worker, because a bundler resolves a
963
+ worker's address against the module naming it, and the address of
964
+ OpenChemLib's resources, because a worker cannot read the page's mount.
965
+
966
+ ```ts
967
+ // src/predict.worker.ts — the whole file
968
+ import { serveWorkerRequests } from 'react-cheminfo/core';
969
+ import { isPredictRequest, runPredictionJob } from 'react-cheminfo/osiris';
970
+
971
+ serveWorkerRequests(runPredictionJob, { accepts: isPredictRequest });
972
+ ```
973
+
974
+ ```tsx
975
+ import { OCL_RESOURCES_FILE, oclResourcesUrl } from 'react-cheminfo/conformers';
976
+ import { PropertyPanel, usePredictions } from 'react-cheminfo/osiris-ui';
977
+ import 'react-cheminfo/styles/osiris.css';
978
+
979
+ const { results, riskDetail } = usePredictions({
980
+ molecules: [{ key: 'drawn', idCode }],
981
+ resources: oclResourcesUrl(OCL_RESOURCES_FILE) ?? fallbackUrl,
982
+ createWorker: () =>
983
+ new Worker(new URL('./predict.worker.ts', import.meta.url), {
984
+ type: 'module',
985
+ }),
986
+ });
987
+
988
+ <PropertyPanel
989
+ properties={results.get('drawn') ?? null}
990
+ pending={!results.has('drawn')}
991
+ openRisk={openRisk}
992
+ onOpenRisk={setOpenRisk}
993
+ loadDetail={riskDetail}
994
+ head={false}
995
+ />;
996
+ ```
997
+
998
+ - **The resources must be served by the site**, as the thirteen
999
+ `/resources/toxpredictor/` and `/resources/druglikeness` tables of
1000
+ OpenChemLib's `resources.json`. The predictors are proved against a molecule
1001
+ whose answer is known before anything is predicted, so tables that did not
1002
+ load stop the run with one sentence instead of reading as four clean risks.
1003
+ - **`createWorker` may be written inline.** It is read when a worker is made,
1004
+ never listed as a dependency, so a new function on every render costs nothing.
1005
+ - **`head={false}`** drops the formula and the name, for a host that already
1006
+ shows them beside the panel.
1007
+ - **A risk square explains itself** when `loadDetail` is given: a matched
1008
+ fragment is drawn and located on the molecule, and a compound on one of the
1009
+ RTECS-derived lists says so instead of being highlighted whole.
1010
+
919
1011
  ## A graded series, and the shell around it
920
1012
 
921
1013
  A pedagogic site that asks a series of questions writes its pool and its
@@ -1597,12 +1689,28 @@ const meta = cardMeta(addresses, `/?${libraryQuery}`, {
1597
1689
  const view = siteView({ uri: 'ui://vcl/page', name, description, addresses });
1598
1690
  ```
1599
1691
 
1692
+ **A precise question gets a card about that and nothing else.** A tool that
1693
+ looks one thing up — a compound, an element, a molecule's predictions — takes
1694
+ an optional `only` parameter listing the facts the question asked, and passes
1695
+ it on: `cardMeta(addresses, path, { only: ['formula'] })` writes
1696
+ `?card=1&only=formula`. The card then draws what the answer is about (its
1697
+ structure and name) and those facts alone, and its Details opens the whole
1698
+ page. The card reads the list with `parseOnlyParam(value, known)`, which keeps
1699
+ the facts it knows, so a missing, empty or unknown `only` draws the card as it
1700
+ always was. In the tool, declare it tolerant, so a malformed list never fails
1701
+ the call:
1702
+
1703
+ ```ts
1704
+ only: z.array(z.enum(FACTS)).optional().catch(undefined).describe('…'),
1705
+ ```
1706
+
1600
1707
  A card address longer than `maxLength` (8000) is not carried: `meta` is then
1601
1708
  undefined and the chat draws the answer itself, while `link` still names the
1602
1709
  page. These helpers are built on `embedMeta` and `embedView`, so
1603
1710
  `cheminfo-mcp-server` (an optional peer) is installed by a site that imports
1604
- `react-cheminfo/server`. The addresses alone — `CARD_PARAM`, `sitePageUrl`,
1605
- `cardPageUrl`, `framedPageUrl` — are in `react-cheminfo/core`, for the page.
1711
+ `react-cheminfo/server`. The addresses alone — `CARD_PARAM`, `ONLY_PARAM`, `parseOnlyParam`,
1712
+ `sitePageUrl`, `cardPageUrl`, `framedPageUrl` — are in `react-cheminfo/core`,
1713
+ for the page.
1606
1714
 
1607
1715
  The card itself is drawn with `react-cheminfo/card` and
1608
1716
  `react-cheminfo/styles/card.css`:
@@ -1707,7 +1815,9 @@ curl -s https://smiles.cheminfo.org/build-info.json
1707
1815
  **No stylesheet, nothing for a consumer to import.** Every rule is a
1708
1816
  module-level `CSSProperties` constant applied with `style`, the way `react-mf`
1709
1817
  does it — so there is no import step, no load-order surprise, and no specificity
1710
- fight with Blueprint, since an inline rule outranks every selector.
1818
+ fight with Blueprint, since an inline rule outranks every selector. The
1819
+ exceptions are the stylesheets under `styles/` — the chrome, the deck, the
1820
+ card and the OSIRIS panel — each imported once by the page that needs it.
1711
1821
 
1712
1822
  A component never hard-codes a site's identity: what differs per site is passed
1713
1823
  in as props, or read from a CSS variable (`--brand`, `--brand-alt`, `--accent`)
@@ -13,12 +13,29 @@
13
13
  */
14
14
  /** The parameter asking for the answer's card instead of the page. */
15
15
  export declare const CARD_PARAM = "card";
16
+ /**
17
+ * The parameter naming what a precise question asked, e.g. `only=formula`:
18
+ * the card then draws what the answer is about and only those facts. Without
19
+ * it the card draws everything it would.
20
+ */
21
+ export declare const ONLY_PARAM = "only";
16
22
  /**
17
23
  * Whether an address asks for a card.
18
24
  * @param search - The query string, with or without its leading `?`.
19
25
  * @returns True when it names `card`, with a value or bare.
20
26
  */
21
27
  export declare function isCardAddress(search: string): boolean;
28
+ /**
29
+ * The facts a card's `only` names, among those the site's card can single
30
+ * out. A name the card does not know is ignored, so a link written before a
31
+ * fact was renamed still opens, on the facts it still names.
32
+ * @param value - The value of `only` as the query holds it, comma-separated;
33
+ * null or undefined when the address has none.
34
+ * @param known - Every fact the card can single out.
35
+ * @returns The facts named, each once, in the order written; empty when none
36
+ * is known, and the card then draws everything.
37
+ */
38
+ export declare function parseOnlyParam<Fact extends string>(value: string | null | undefined, known: readonly Fact[]): Fact[];
22
39
  /**
23
40
  * The address a card is at: `globalThis.location`, a `URL`, or any record of
24
41
  * the three parts.
@@ -50,14 +67,14 @@ export interface SitePageOptions {
50
67
  /**
51
68
  * A parameter the page at a given path does not read, though another page
52
69
  * of the site does: a tutorial step reads no InChI, the converter does.
53
- * @default undefined - nothing beyond `card`, `embed`, `hide` and
70
+ * @default undefined - nothing beyond `card`, `only`, `embed`, `hide` and
54
71
  * `cardParams` is left out
55
72
  */
56
73
  isCardOnly?: (key: string, pathname: string) => boolean;
57
74
  }
58
75
  /**
59
76
  * The site's own page a card stands for, with its chrome: the card's address
60
- * without `card`, `embed`, `hide` and what only the card reads. Every other
77
+ * without `card`, `only`, `embed`, `hide` and what only the card reads. Every other
61
78
  * parameter is kept exactly as it was written, so the `+` of a charged atom
62
79
  * stays a plus and the commas of a list stay commas. This is the address an
63
80
  * answer's `link` names, and the one the card's Details button opens.
@@ -1 +1 @@
1
- {"version":3,"file":"cardAddress.d.ts","sourceRoot":"","sources":["../../../src/card/core/cardAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,sEAAsE;AACtE,eAAO,MAAM,UAAU,SAAS,CAAC;AAEjC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAKrD;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,2EAA2E;AAC3E,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;CACzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAeR"}
1
+ {"version":3,"file":"cardAddress.d.ts","sourceRoot":"","sources":["../../../src/card/core/cardAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,sEAAsE;AACtE,eAAO,MAAM,UAAU,SAAS,CAAC;AAEjC;;;;GAIG;AACH,eAAO,MAAM,UAAU,SAAS,CAAC;AAEjC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAKrD;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,MAAM,EAChD,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,KAAK,EAAE,SAAS,IAAI,EAAE,GACrB,IAAI,EAAE,CAQR;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,2EAA2E;AAC3E,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;CACzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAqBR"}
@@ -15,6 +15,12 @@ import { parseQueryEntries } from "../../router/core/query.js";
15
15
  import { EMBED_PARAM, HIDE_PARAM } from "../../share/core/config.js";
16
16
  /** The parameter asking for the answer's card instead of the page. */
17
17
  export const CARD_PARAM = 'card';
18
+ /**
19
+ * The parameter naming what a precise question asked, e.g. `only=formula`:
20
+ * the card then draws what the answer is about and only those facts. Without
21
+ * it the card draws everything it would.
22
+ */
23
+ export const ONLY_PARAM = 'only';
18
24
  /**
19
25
  * Whether an address asks for a card.
20
26
  * @param search - The query string, with or without its leading `?`.
@@ -27,9 +33,30 @@ export function isCardAddress(search) {
27
33
  }
28
34
  return false;
29
35
  }
36
+ /**
37
+ * The facts a card's `only` names, among those the site's card can single
38
+ * out. A name the card does not know is ignored, so a link written before a
39
+ * fact was renamed still opens, on the facts it still names.
40
+ * @param value - The value of `only` as the query holds it, comma-separated;
41
+ * null or undefined when the address has none.
42
+ * @param known - Every fact the card can single out.
43
+ * @returns The facts named, each once, in the order written; empty when none
44
+ * is known, and the card then draws everything.
45
+ */
46
+ export function parseOnlyParam(value, known) {
47
+ const facts = [];
48
+ if (value == null)
49
+ return facts;
50
+ for (const part of value.split(',')) {
51
+ const fact = known.find((candidate) => candidate === part.trim());
52
+ if (fact !== undefined && !facts.includes(fact))
53
+ facts.push(fact);
54
+ }
55
+ return facts;
56
+ }
30
57
  /**
31
58
  * The site's own page a card stands for, with its chrome: the card's address
32
- * without `card`, `embed`, `hide` and what only the card reads. Every other
59
+ * without `card`, `only`, `embed`, `hide` and what only the card reads. Every other
33
60
  * parameter is kept exactly as it was written, so the `+` of a charged atom
34
61
  * stays a plus and the commas of a list stay commas. This is the address an
35
62
  * answer's `link` names, and the one the card's Details button opens.
@@ -40,7 +67,13 @@ export function isCardAddress(search) {
40
67
  */
41
68
  export function sitePageUrl(location, options = {}) {
42
69
  const { cardParams = [], literalPlus = true, isCardOnly } = options;
43
- const dropped = new Set([CARD_PARAM, EMBED_PARAM, HIDE_PARAM, ...cardParams]);
70
+ const dropped = new Set([
71
+ CARD_PARAM,
72
+ ONLY_PARAM,
73
+ EMBED_PARAM,
74
+ HIDE_PARAM,
75
+ ...cardParams,
76
+ ]);
44
77
  const kept = [];
45
78
  const search = location.search.startsWith('?')
46
79
  ? location.search.slice(1)
@@ -1 +1 @@
1
- {"version":3,"file":"cardAddress.js","sourceRoot":"","sources":["../../../src/card/core/cardAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,sEAAsE;AACtE,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;AAEjC;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,IAAI,GAAG,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAwCD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,QAAsB,EACtB,UAA2B,EAAE;IAE7B,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACpE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;QAC5C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;IACpB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QAC3D,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"cardAddress.js","sourceRoot":"","sources":["../../../src/card/core/cardAddress.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,sEAAsE;AACtE,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;AAEjC;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;AAEjC;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,KAAK,MAAM,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,IAAI,GAAG,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAgC,EAChC,KAAsB;IAEtB,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAwCD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,QAAsB,EACtB,UAA2B,EAAE;IAE7B,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACpE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;QACtB,UAAU;QACV,UAAU;QACV,WAAW;QACX,UAAU;QACV,GAAG,UAAU;KACd,CAAC,CAAC;IACH,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;QAC5C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;IACpB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QAC3D,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;AACpF,CAAC"}
@@ -22,7 +22,13 @@ export interface CardPageOptions extends FramedPageOptions {
22
22
  */
23
23
  card?: string;
24
24
  /**
25
- * What only the card reads, written after `card` in the order given, e.g.
25
+ * The facts a precise question asked, written `only=formula,mass` after
26
+ * `card`: the card draws what the answer is about and only those.
27
+ * @default [] - the card draws everything
28
+ */
29
+ only?: readonly string[];
30
+ /**
31
+ * What only the card reads, written after `card` and `only` in the order given, e.g.
26
32
  * `{ rows: '10' }`. A value left `undefined` or empty is not written.
27
33
  * @default {}
28
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"cardPageUrl.d.ts","sourceRoot":"","sources":["../../../src/card/core/cardPageUrl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;CACtD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,MAAM,CAKR;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAOR"}
1
+ {"version":3,"file":"cardPageUrl.d.ts","sourceRoot":"","sources":["../../../src/card/core/cardPageUrl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB;;;;OAIG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;CACtD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,iBAAsB,GAC9B,MAAM,CAKR;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,eAAoB,GAC5B,MAAM,CAQR"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { formatQueryEntries } from "../../router/core/query.js";
8
8
  import { EMBED_PARAM, HIDE_PARAM } from "../../share/core/config.js";
9
- import { CARD_PARAM } from "./cardAddress.js";
9
+ import { CARD_PARAM, ONLY_PARAM } from "./cardAddress.js";
10
10
  /**
11
11
  * The page under `embed=1`, and `hide` when parts are left out: what a chat
12
12
  * shows over the full screen when the reader asks for more than the card.
@@ -31,8 +31,10 @@ export function framedPageUrl(page, options = {}) {
31
31
  * @returns The card's address.
32
32
  */
33
33
  export function cardPageUrl(page, options = {}) {
34
- const { card = '1', extra = {} } = options;
34
+ const { card = '1', only = [], extra = {} } = options;
35
35
  const entries = [[CARD_PARAM, card]];
36
+ if (only.length > 0)
37
+ entries.push([ONLY_PARAM, only.join(',')]);
36
38
  for (const [key, value] of Object.entries(extra)) {
37
39
  if (value !== undefined && value !== '')
38
40
  entries.push([key, value]);
@@ -1 +1 @@
1
- {"version":3,"file":"cardPageUrl.js","sourceRoot":"","sources":["../../../src/card/core/cardPageUrl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA4B9C;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,UAA6B,EAAE;IAE/B,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAC9B,MAAM,OAAO,GAAiB,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,UAA2B,EAAE;IAE7B,MAAM,EAAE,IAAI,GAAG,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,OAAO,GAAiB,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;IACnD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,gBAAgB,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,OAAe,EACf,OAA8B;IAE9B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,GAAG;QACP,CAAC,CAAC,GAAG,CAAC;IACR,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,QAAQ,EAAE,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"cardPageUrl.js","sourceRoot":"","sources":["../../../src/card/core/cardPageUrl.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAkC1D;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,UAA6B,EAAE;IAE/B,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAC9B,MAAM,OAAO,GAAiB,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,UAA2B,EAAE;IAE7B,MAAM,EAAE,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IACtD,MAAM,OAAO,GAAiB,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,gBAAgB,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,OAAe,EACf,OAA8B;IAE9B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,GAAG;QACP,CAAC,CAAC,GAAG,CAAC;IACR,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,QAAQ,EAAE,CAAC;AACxE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export type { CardLocation, SitePageOptions } from './cardAddress.ts';
2
- export { CARD_PARAM, isCardAddress, sitePageUrl } from './cardAddress.ts';
2
+ export { CARD_PARAM, ONLY_PARAM, isCardAddress, parseOnlyParam, sitePageUrl, } from './cardAddress.ts';
3
3
  export type { CardPageOptions, FramedPageOptions } from './cardPageUrl.ts';
4
4
  export { cardPageUrl, framedPageUrl } from './cardPageUrl.ts';
5
5
  export type { OpenPanel } from './panelRoom.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/card/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1E,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/card/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC9D,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- export { CARD_PARAM, isCardAddress, sitePageUrl } from "./cardAddress.js";
1
+ export { CARD_PARAM, ONLY_PARAM, isCardAddress, parseOnlyParam, sitePageUrl, } from "./cardAddress.js";
2
2
  export { cardPageUrl, framedPageUrl } from "./cardPageUrl.js";
3
3
  export { roomForPanels } from "./panelRoom.js";
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/card/core/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/card/core/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACb,cAAc,EACd,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
@@ -61,6 +61,36 @@ export declare const CREDITS: readonly [{
61
61
  readonly href: "https://github.com/cheminfo/openchemlib-sqlite";
62
62
  readonly description: "the substructure and similarity search, inside SQLite.";
63
63
  readonly license: "MIT";
64
+ }, {
65
+ readonly id: "openchemlib-search-wasm";
66
+ readonly name: "openchemlib-search-wasm";
67
+ readonly href: "https://github.com/cheminfo/openchemlib-search-wasm";
68
+ readonly description: "the functional-group keys of every structure, and the dictionary that names them.";
69
+ readonly license: "BSD-3-Clause";
70
+ }, {
71
+ readonly id: "chemcaption";
72
+ readonly name: "ChemCaption";
73
+ readonly href: "https://github.com/lamalab-org/chem-caption";
74
+ readonly description: "definitions of functional groups, adapted in the function-key dictionary.";
75
+ readonly license: "MIT";
76
+ }, {
77
+ readonly id: "accfg";
78
+ readonly name: "AccFG";
79
+ readonly href: "https://github.com/xuanliugit/AccFG";
80
+ readonly description: "definitions of functional groups, adapted in the function-key dictionary.";
81
+ readonly license: "MIT";
82
+ }, {
83
+ readonly id: "medchem";
84
+ readonly name: "medchem";
85
+ readonly href: "https://github.com/datamol-io/medchem";
86
+ readonly description: "definitions of functional groups, adapted in the function-key dictionary.";
87
+ readonly license: "Apache-2.0";
88
+ }, {
89
+ readonly id: "rdkit";
90
+ readonly name: "RDKit";
91
+ readonly href: "https://github.com/rdkit/rdkit";
92
+ readonly description: "definitions of functional groups, and the reference every key was checked against.";
93
+ readonly license: "BSD-3-Clause";
64
94
  }, {
65
95
  readonly id: "osiris-property-explorer";
66
96
  readonly name: "OSIRIS Property Explorer";
@@ -1 +1 @@
1
- {"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../../../src/credits/core/credits.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qCAAqC;AACrC,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,QAAQ,EAAE,GAAG,WAAW,EAAE,CAU/D;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE5D;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsauB,CAAC"}
1
+ {"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../../../src/credits/core/credits.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qCAAqC;AACrC,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,QAAQ,EAAE,GAAG,WAAW,EAAE,CAU/D;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE5D;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8cuB,CAAC"}
@@ -60,6 +60,41 @@ export const CREDITS = [
60
60
  description: 'the substructure and similarity search, inside SQLite.',
61
61
  license: 'MIT',
62
62
  },
63
+ {
64
+ id: 'openchemlib-search-wasm',
65
+ name: 'openchemlib-search-wasm',
66
+ href: 'https://github.com/cheminfo/openchemlib-search-wasm',
67
+ description: 'the functional-group keys of every structure, and the dictionary that names them.',
68
+ license: 'BSD-3-Clause',
69
+ },
70
+ {
71
+ id: 'chemcaption',
72
+ name: 'ChemCaption',
73
+ href: 'https://github.com/lamalab-org/chem-caption',
74
+ description: 'definitions of functional groups, adapted in the function-key dictionary.',
75
+ license: 'MIT',
76
+ },
77
+ {
78
+ id: 'accfg',
79
+ name: 'AccFG',
80
+ href: 'https://github.com/xuanliugit/AccFG',
81
+ description: 'definitions of functional groups, adapted in the function-key dictionary.',
82
+ license: 'MIT',
83
+ },
84
+ {
85
+ id: 'medchem',
86
+ name: 'medchem',
87
+ href: 'https://github.com/datamol-io/medchem',
88
+ description: 'definitions of functional groups, adapted in the function-key dictionary.',
89
+ license: 'Apache-2.0',
90
+ },
91
+ {
92
+ id: 'rdkit',
93
+ name: 'RDKit',
94
+ href: 'https://github.com/rdkit/rdkit',
95
+ description: 'definitions of functional groups, and the reference every key was checked against.',
96
+ license: 'BSD-3-Clause',
97
+ },
63
98
  {
64
99
  id: 'osiris-property-explorer',
65
100
  name: 'OSIRIS Property Explorer',
@@ -1 +1 @@
1
- {"version":3,"file":"credits.js","sourceRoot":"","sources":["../../../src/credits/core/credits.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credits.js","sourceRoot":"","sources":["../../../src/credits/core/credits.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Put an SVG document on the clipboard, without ever throwing at the caller.
3
+ *
4
+ * Where the browser takes an SVG picture, the document goes on as one and as
5
+ * its text, in one item: a slide or a vector editor pastes the drawing, a text
6
+ * editor the markup. Elsewhere — Firefox and Safari take no SVG picture — the
7
+ * text alone, which a vector editor still pastes as a drawing.
8
+ * @param markup - The SVG document.
9
+ * @returns Whether the clipboard now holds it, at least as text.
10
+ */
11
+ export declare function copySvg(markup: string): Promise<boolean>;
12
+ //# sourceMappingURL=copySvg.d.ts.map