react-cheminfo 0.38.0 → 0.39.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.
- package/lib/chart/ui/Axes.d.ts +19 -0
- package/lib/chart/ui/Axes.d.ts.map +1 -1
- package/lib/chart/ui/Axes.js +25 -5
- package/lib/chart/ui/Axes.js.map +1 -1
- package/lib/chrome/ui/NavMenuButton.d.ts.map +1 -1
- package/lib/chrome/ui/NavMenuButton.js +41 -11
- package/lib/chrome/ui/NavMenuButton.js.map +1 -1
- package/lib/chrome/ui/SiteHeader.js +24 -1
- package/lib/chrome/ui/SiteHeader.js.map +1 -1
- package/lib/chrome/ui/navItem.d.ts +7 -0
- package/lib/chrome/ui/navItem.d.ts.map +1 -1
- package/lib/chrome/ui/navItem.js.map +1 -1
- package/lib/citation/ui/entries.d.ts.map +1 -1
- package/lib/citation/ui/entries.js +6 -1
- package/lib/citation/ui/entries.js.map +1 -1
- package/lib/clipboard/ui/ClickToCopy.d.ts +11 -0
- package/lib/clipboard/ui/ClickToCopy.d.ts.map +1 -1
- package/lib/clipboard/ui/ClickToCopy.js +28 -10
- package/lib/clipboard/ui/ClickToCopy.js.map +1 -1
- package/lib/clipboard/ui/CopyButton.d.ts +2 -1
- package/lib/clipboard/ui/CopyButton.d.ts.map +1 -1
- package/lib/clipboard/ui/CopyButton.js +2 -1
- package/lib/clipboard/ui/CopyButton.js.map +1 -1
- package/lib/clipboard/ui/CopyableValue.d.ts +24 -4
- package/lib/clipboard/ui/CopyableValue.d.ts.map +1 -1
- package/lib/clipboard/ui/CopyableValue.js +35 -3
- package/lib/clipboard/ui/CopyableValue.js.map +1 -1
- package/lib/clipboard/ui/index.d.ts +1 -1
- package/lib/clipboard/ui/index.d.ts.map +1 -1
- package/lib/clipboard/ui/index.js.map +1 -1
- package/lib/confirm/ui/ConfirmButton.d.ts.map +1 -1
- package/lib/confirm/ui/ConfirmButton.js +2 -1
- package/lib/confirm/ui/ConfirmButton.js.map +1 -1
- package/lib/delimited/ui/TableDataButton.d.ts.map +1 -1
- package/lib/delimited/ui/TableDataButton.js +2 -1
- package/lib/delimited/ui/TableDataButton.js.map +1 -1
- package/lib/download/core/figureSvg.d.ts.map +1 -1
- package/lib/download/core/figureSvg.js +37 -12
- package/lib/download/core/figureSvg.js.map +1 -1
- package/lib/help/ui/HelpToolbarButton.d.ts.map +1 -1
- package/lib/help/ui/HelpToolbarButton.js +2 -1
- package/lib/help/ui/HelpToolbarButton.js.map +1 -1
- package/lib/i18n/core/chromeCatalog.d.ts +1 -1
- package/lib/i18n/core/chromeCatalog.d.ts.map +1 -1
- package/lib/locales/de.json +39 -4
- package/lib/locales/en.json +39 -4
- package/lib/locales/es.json +39 -4
- package/lib/locales/fr.json +39 -4
- package/lib/locales/it.json +39 -4
- package/lib/number/ui/NumberInput.js +1 -1
- package/lib/number/ui/NumberInput.js.map +1 -1
- package/lib/overlay/ui/OverlayIconButton.d.ts.map +1 -1
- package/lib/overlay/ui/OverlayIconButton.js +1 -1
- package/lib/overlay/ui/OverlayIconButton.js.map +1 -1
- package/lib/panel/ui/ClearButton.d.ts.map +1 -1
- package/lib/panel/ui/ClearButton.js +1 -1
- package/lib/panel/ui/ClearButton.js.map +1 -1
- package/lib/pedagogy/core/inlineMarks.d.ts +9 -5
- package/lib/pedagogy/core/inlineMarks.d.ts.map +1 -1
- package/lib/pedagogy/core/inlineMarks.js +14 -6
- package/lib/pedagogy/core/inlineMarks.js.map +1 -1
- package/lib/pedagogy/ui/GlossaryDefinition.d.ts +4 -10
- package/lib/pedagogy/ui/GlossaryDefinition.d.ts.map +1 -1
- package/lib/pedagogy/ui/GlossaryDefinition.js +7 -7
- package/lib/pedagogy/ui/GlossaryDefinition.js.map +1 -1
- package/lib/pedagogy/ui/GlossaryIndex.d.ts.map +1 -1
- package/lib/pedagogy/ui/GlossaryIndex.js +1 -1
- package/lib/pedagogy/ui/GlossaryIndex.js.map +1 -1
- package/lib/pedagogy/ui/GlossaryProvider.d.ts +7 -0
- package/lib/pedagogy/ui/GlossaryProvider.d.ts.map +1 -1
- package/lib/pedagogy/ui/GlossaryProvider.js +3 -2
- package/lib/pedagogy/ui/GlossaryProvider.js.map +1 -1
- package/lib/pedagogy/ui/GlossaryText.d.ts +7 -2
- package/lib/pedagogy/ui/GlossaryText.d.ts.map +1 -1
- package/lib/pedagogy/ui/GlossaryText.js +3 -2
- package/lib/pedagogy/ui/GlossaryText.js.map +1 -1
- package/lib/pedagogy/ui/InlineText.d.ts +8 -2
- package/lib/pedagogy/ui/InlineText.d.ts.map +1 -1
- package/lib/pedagogy/ui/InlineText.js +7 -2
- package/lib/pedagogy/ui/InlineText.js.map +1 -1
- package/lib/pedagogy/ui/ReferenceSectionBlock.d.ts +4 -1
- package/lib/pedagogy/ui/ReferenceSectionBlock.d.ts.map +1 -1
- package/lib/pedagogy/ui/ReferenceSectionBlock.js +2 -1
- package/lib/pedagogy/ui/ReferenceSectionBlock.js.map +1 -1
- package/lib/pedagogy/ui/SyntaxTooltip.d.ts.map +1 -1
- package/lib/pedagogy/ui/SyntaxTooltip.js +11 -10
- package/lib/pedagogy/ui/SyntaxTooltip.js.map +1 -1
- package/lib/pedagogy/ui/TutorialStepStrip.d.ts.map +1 -1
- package/lib/pedagogy/ui/TutorialStepStrip.js +18 -4
- package/lib/pedagogy/ui/TutorialStepStrip.js.map +1 -1
- package/lib/pedagogy/ui/glossaryContext.d.ts +7 -0
- package/lib/pedagogy/ui/glossaryContext.d.ts.map +1 -1
- package/lib/pedagogy/ui/glossaryContext.js.map +1 -1
- package/lib/pedagogy/ui/index.d.ts +1 -1
- package/lib/pedagogy/ui/index.d.ts.map +1 -1
- package/lib/pedagogy/ui/inlineSegments.d.ts +5 -0
- package/lib/pedagogy/ui/inlineSegments.d.ts.map +1 -1
- package/lib/pedagogy/ui/inlineSegments.js +2 -0
- package/lib/pedagogy/ui/inlineSegments.js.map +1 -1
- package/lib/pedagogy/ui/pedagogyStyle.d.ts +8 -9
- package/lib/pedagogy/ui/pedagogyStyle.d.ts.map +1 -1
- package/lib/pedagogy/ui/pedagogyStyle.js +10 -18
- package/lib/pedagogy/ui/pedagogyStyle.js.map +1 -1
- package/lib/seo/core/plainDescription.d.ts +2 -2
- package/lib/seo/core/plainDescription.js +5 -2
- package/lib/seo/core/plainDescription.js.map +1 -1
- package/lib/share/core/devices.d.ts +41 -0
- package/lib/share/core/devices.d.ts.map +1 -0
- package/lib/share/core/devices.js +58 -0
- package/lib/share/core/devices.js.map +1 -0
- package/lib/share/core/index.d.ts +4 -0
- package/lib/share/core/index.d.ts.map +1 -1
- package/lib/share/core/index.js +2 -0
- package/lib/share/core/index.js.map +1 -1
- package/lib/share/core/regions.d.ts +43 -0
- package/lib/share/core/regions.d.ts.map +1 -0
- package/lib/share/core/regions.js +71 -0
- package/lib/share/core/regions.js.map +1 -0
- package/lib/share/ui/HiddenPartsProvider.d.ts.map +1 -1
- package/lib/share/ui/HiddenPartsProvider.js +4 -1
- package/lib/share/ui/HiddenPartsProvider.js.map +1 -1
- package/lib/share/ui/PagePart.d.ts.map +1 -1
- package/lib/share/ui/PagePart.js +10 -1
- package/lib/share/ui/PagePart.js.map +1 -1
- package/lib/share/ui/ShareButton.d.ts.map +1 -1
- package/lib/share/ui/ShareButton.js +3 -4
- package/lib/share/ui/ShareButton.js.map +1 -1
- package/lib/share/ui/ShareConfigOptions.d.ts +6 -1
- package/lib/share/ui/ShareConfigOptions.d.ts.map +1 -1
- package/lib/share/ui/ShareConfigOptions.js +6 -13
- package/lib/share/ui/ShareConfigOptions.js.map +1 -1
- package/lib/share/ui/ShareDialog.d.ts +14 -0
- package/lib/share/ui/ShareDialog.d.ts.map +1 -1
- package/lib/share/ui/ShareDialog.js +3 -3
- package/lib/share/ui/ShareDialog.js.map +1 -1
- package/lib/share/ui/ShareDialogContent.d.ts +2 -2
- package/lib/share/ui/ShareDialogContent.d.ts.map +1 -1
- package/lib/share/ui/ShareDialogContent.js +36 -30
- package/lib/share/ui/ShareDialogContent.js.map +1 -1
- package/lib/share/ui/ShareLinkBar.d.ts +21 -0
- package/lib/share/ui/ShareLinkBar.d.ts.map +1 -0
- package/lib/share/ui/ShareLinkBar.js +32 -0
- package/lib/share/ui/ShareLinkBar.js.map +1 -0
- package/lib/share/ui/SharePanes.d.ts +17 -0
- package/lib/share/ui/SharePanes.d.ts.map +1 -0
- package/lib/share/ui/SharePanes.js +27 -0
- package/lib/share/ui/SharePanes.js.map +1 -0
- package/lib/share/ui/SharePartOptions.d.ts +9 -3
- package/lib/share/ui/SharePartOptions.d.ts.map +1 -1
- package/lib/share/ui/SharePartOptions.js +12 -16
- package/lib/share/ui/SharePartOptions.js.map +1 -1
- package/lib/share/ui/SharePartRow.d.ts +37 -0
- package/lib/share/ui/SharePartRow.d.ts.map +1 -0
- package/lib/share/ui/SharePartRow.js +25 -0
- package/lib/share/ui/SharePartRow.js.map +1 -0
- package/lib/share/ui/SharePresetTabs.d.ts +10 -7
- package/lib/share/ui/SharePresetTabs.d.ts.map +1 -1
- package/lib/share/ui/SharePresetTabs.js +17 -17
- package/lib/share/ui/SharePresetTabs.js.map +1 -1
- package/lib/share/ui/SharePreview.d.ts +32 -0
- package/lib/share/ui/SharePreview.d.ts.map +1 -0
- package/lib/share/ui/SharePreview.js +104 -0
- package/lib/share/ui/SharePreview.js.map +1 -0
- package/lib/share/ui/SharePreviewDevices.d.ts +20 -0
- package/lib/share/ui/SharePreviewDevices.d.ts.map +1 -0
- package/lib/share/ui/SharePreviewDevices.js +40 -0
- package/lib/share/ui/SharePreviewDevices.js.map +1 -0
- package/lib/share/ui/index.d.ts +1 -0
- package/lib/share/ui/index.d.ts.map +1 -1
- package/lib/share/ui/index.js.map +1 -1
- package/lib/share/ui/shareMarking.d.ts +14 -0
- package/lib/share/ui/shareMarking.d.ts.map +1 -0
- package/lib/share/ui/shareMarking.js +17 -0
- package/lib/share/ui/shareMarking.js.map +1 -0
- package/lib/share/ui/useShareRegionReports.d.ts +12 -0
- package/lib/share/ui/useShareRegionReports.d.ts.map +1 -0
- package/lib/share/ui/useShareRegionReports.js +73 -0
- package/lib/share/ui/useShareRegionReports.js.map +1 -0
- package/lib/shared/ui/ActionTooltip.d.ts +42 -0
- package/lib/shared/ui/ActionTooltip.d.ts.map +1 -0
- package/lib/shared/ui/ActionTooltip.js +21 -0
- package/lib/shared/ui/ActionTooltip.js.map +1 -0
- package/lib/shared/ui/index.d.ts +4 -0
- package/lib/shared/ui/index.d.ts.map +1 -1
- package/lib/shared/ui/index.js +2 -0
- package/lib/shared/ui/index.js.map +1 -1
- package/lib/shared/ui/useActionTooltip.d.ts +48 -0
- package/lib/shared/ui/useActionTooltip.d.ts.map +1 -0
- package/lib/shared/ui/useActionTooltip.js +78 -0
- package/lib/shared/ui/useActionTooltip.js.map +1 -0
- package/lib/structure/core/index.d.ts +2 -0
- package/lib/structure/core/index.d.ts.map +1 -1
- package/lib/structure/core/index.js +1 -0
- package/lib/structure/core/index.js.map +1 -1
- package/lib/structure/core/sourceMolecule.d.ts +18 -0
- package/lib/structure/core/sourceMolecule.d.ts.map +1 -0
- package/lib/structure/core/sourceMolecule.js +26 -0
- package/lib/structure/core/sourceMolecule.js.map +1 -0
- package/lib/structure/core/structureNotations.d.ts +57 -0
- package/lib/structure/core/structureNotations.d.ts.map +1 -0
- package/lib/structure/core/structureNotations.js +74 -0
- package/lib/structure/core/structureNotations.js.map +1 -0
- package/lib/structure/core/structurePicture.d.ts +49 -0
- package/lib/structure/core/structurePicture.d.ts.map +1 -0
- package/lib/structure/core/structurePicture.js +83 -0
- package/lib/structure/core/structurePicture.js.map +1 -0
- package/lib/structure/ui/EditorExportButton.d.ts +23 -0
- package/lib/structure/ui/EditorExportButton.d.ts.map +1 -0
- package/lib/structure/ui/EditorExportButton.js +23 -0
- package/lib/structure/ui/EditorExportButton.js.map +1 -0
- package/lib/structure/ui/EditorHelpButton.d.ts +5 -2
- package/lib/structure/ui/EditorHelpButton.d.ts.map +1 -1
- package/lib/structure/ui/EditorHelpButton.js +8 -9
- package/lib/structure/ui/EditorHelpButton.js.map +1 -1
- package/lib/structure/ui/StructureEditor.d.ts +8 -0
- package/lib/structure/ui/StructureEditor.d.ts.map +1 -1
- package/lib/structure/ui/StructureEditor.js +26 -3
- package/lib/structure/ui/StructureEditor.js.map +1 -1
- package/lib/structure/ui/StructureExportDialog.d.ts +34 -0
- package/lib/structure/ui/StructureExportDialog.d.ts.map +1 -0
- package/lib/structure/ui/StructureExportDialog.js +43 -0
- package/lib/structure/ui/StructureExportDialog.js.map +1 -0
- package/lib/structure/ui/StructureExportPanel.d.ts +37 -0
- package/lib/structure/ui/StructureExportPanel.d.ts.map +1 -0
- package/lib/structure/ui/StructureExportPanel.js +75 -0
- package/lib/structure/ui/StructureExportPanel.js.map +1 -0
- package/lib/structure/ui/StructureNotationRow.d.ts +22 -0
- package/lib/structure/ui/StructureNotationRow.d.ts.map +1 -0
- package/lib/structure/ui/StructureNotationRow.js +34 -0
- package/lib/structure/ui/StructureNotationRow.js.map +1 -0
- package/lib/structure/ui/StructurePicturePane.d.ts +23 -0
- package/lib/structure/ui/StructurePicturePane.d.ts.map +1 -0
- package/lib/structure/ui/StructurePicturePane.js +113 -0
- package/lib/structure/ui/StructurePicturePane.js.map +1 -0
- package/lib/structure/ui/StructureSvg.d.ts.map +1 -1
- package/lib/structure/ui/StructureSvg.js +2 -18
- package/lib/structure/ui/StructureSvg.js.map +1 -1
- package/lib/structure/ui/ToolbarTooltip.d.ts.map +1 -1
- package/lib/structure/ui/ToolbarTooltip.js +1 -2
- package/lib/structure/ui/ToolbarTooltip.js.map +1 -1
- package/lib/structure/ui/index.d.ts +7 -3
- package/lib/structure/ui/index.d.ts.map +1 -1
- package/lib/structure/ui/index.js +5 -3
- package/lib/structure/ui/index.js.map +1 -1
- package/lib/structure/ui/structureNotationText.d.ts +23 -0
- package/lib/structure/ui/structureNotationText.d.ts.map +1 -0
- package/lib/structure/ui/structureNotationText.js +42 -0
- package/lib/structure/ui/structureNotationText.js.map +1 -0
- package/lib/structure/ui/useEditorStructure.d.ts +37 -0
- package/lib/structure/ui/useEditorStructure.d.ts.map +1 -0
- package/lib/structure/ui/useEditorStructure.js +70 -0
- package/lib/structure/ui/useEditorStructure.js.map +1 -0
- package/package.json +1 -1
- package/src/chart/ui/Axes.tsx +53 -5
- package/src/chrome/ui/NavMenuButton.tsx +61 -18
- package/src/chrome/ui/SiteHeader.tsx +37 -1
- package/src/chrome/ui/navItem.ts +7 -0
- package/src/citation/ui/entries.tsx +10 -2
- package/src/clipboard/ui/ClickToCopy.tsx +47 -13
- package/src/clipboard/ui/CopyButton.tsx +4 -2
- package/src/clipboard/ui/CopyableValue.tsx +88 -13
- package/src/clipboard/ui/index.ts +5 -1
- package/src/confirm/ui/ConfirmButton.tsx +2 -0
- package/src/delimited/ui/TableDataButton.tsx +2 -1
- package/src/download/core/figureSvg.ts +42 -10
- package/src/help/ui/HelpToolbarButton.tsx +2 -1
- package/src/locales/de.json +39 -4
- package/src/locales/en.json +39 -4
- package/src/locales/es.json +39 -4
- package/src/locales/fr.json +39 -4
- package/src/locales/it.json +39 -4
- package/src/number/ui/NumberInput.tsx +1 -1
- package/src/overlay/ui/OverlayIconButton.tsx +1 -0
- package/src/panel/ui/ClearButton.tsx +1 -0
- package/src/pedagogy/core/inlineMarks.ts +15 -7
- package/src/pedagogy/ui/GlossaryDefinition.tsx +8 -18
- package/src/pedagogy/ui/GlossaryIndex.tsx +0 -1
- package/src/pedagogy/ui/GlossaryProvider.tsx +10 -2
- package/src/pedagogy/ui/GlossaryText.tsx +10 -2
- package/src/pedagogy/ui/InlineText.tsx +21 -4
- package/src/pedagogy/ui/ReferenceSectionBlock.tsx +8 -2
- package/src/pedagogy/ui/SyntaxTooltip.tsx +11 -9
- package/src/pedagogy/ui/TutorialStepStrip.tsx +50 -18
- package/src/pedagogy/ui/glossaryContext.ts +7 -0
- package/src/pedagogy/ui/index.ts +1 -1
- package/src/pedagogy/ui/inlineSegments.tsx +7 -0
- package/src/pedagogy/ui/pedagogyStyle.ts +12 -24
- package/src/seo/core/plainDescription.ts +4 -2
- package/src/share/core/devices.ts +80 -0
- package/src/share/core/index.ts +14 -0
- package/src/share/core/regions.ts +87 -0
- package/src/share/ui/HiddenPartsProvider.tsx +6 -1
- package/src/share/ui/PagePart.tsx +12 -1
- package/src/share/ui/ShareButton.tsx +3 -6
- package/src/share/ui/ShareConfigOptions.tsx +25 -16
- package/src/share/ui/ShareDialog.tsx +17 -3
- package/src/share/ui/ShareDialogContent.tsx +80 -77
- package/src/share/ui/ShareLinkBar.tsx +70 -0
- package/src/share/ui/SharePanes.tsx +62 -0
- package/src/share/ui/SharePartOptions.tsx +25 -26
- package/src/share/ui/SharePartRow.tsx +78 -0
- package/src/share/ui/SharePresetTabs.tsx +36 -43
- package/src/share/ui/SharePreview.tsx +204 -0
- package/src/share/ui/SharePreviewDevices.tsx +70 -0
- package/src/share/ui/index.ts +1 -0
- package/src/share/ui/shareMarking.ts +18 -0
- package/src/share/ui/useShareRegionReports.ts +84 -0
- package/src/shared/ui/ActionTooltip.tsx +70 -0
- package/src/shared/ui/index.ts +7 -0
- package/src/shared/ui/useActionTooltip.ts +103 -0
- package/src/structure/core/index.ts +5 -0
- package/src/structure/core/sourceMolecule.ts +26 -0
- package/src/structure/core/structureNotations.ts +125 -0
- package/src/structure/core/structurePicture.ts +119 -0
- package/src/structure/ui/EditorExportButton.tsx +62 -0
- package/src/structure/ui/EditorHelpButton.tsx +26 -30
- package/src/structure/ui/StructureEditor.tsx +51 -5
- package/src/structure/ui/StructureExportDialog.tsx +90 -0
- package/src/structure/ui/StructureExportPanel.tsx +156 -0
- package/src/structure/ui/StructureNotationRow.tsx +74 -0
- package/src/structure/ui/StructurePicturePane.tsx +208 -0
- package/src/structure/ui/StructureSvg.tsx +3 -12
- package/src/structure/ui/ToolbarTooltip.tsx +1 -1
- package/src/structure/ui/index.ts +7 -3
- package/src/structure/ui/structureNotationText.ts +56 -0
- package/src/structure/ui/useEditorStructure.ts +119 -0
- package/styles/chrome.css +414 -14
package/styles/chrome.css
CHANGED
|
@@ -333,18 +333,361 @@ button {
|
|
|
333
333
|
font-size: 0.75rem;
|
|
334
334
|
}
|
|
335
335
|
|
|
336
|
-
/* The share dialog
|
|
337
|
-
|
|
336
|
+
/* The share dialog: the link and its buttons above, never scrolled away, then
|
|
337
|
+
the options and the page they write, side by side. */
|
|
338
|
+
.share-dialog__body {
|
|
339
|
+
display: flex;
|
|
340
|
+
overflow: hidden;
|
|
341
|
+
min-height: 0;
|
|
342
|
+
flex: 1 1 auto;
|
|
343
|
+
flex-direction: column;
|
|
344
|
+
padding: 12px 16px 0;
|
|
345
|
+
gap: 12px;
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
/* The ready-made links and the three things one does with the link they write,
|
|
349
|
+
on one row: the tabs say which link, the buttons act on it. A dialog too
|
|
350
|
+
narrow for both wraps the buttons under the tabs rather than cutting them. */
|
|
351
|
+
.share-dialog__top {
|
|
352
|
+
display: flex;
|
|
353
|
+
flex-wrap: wrap;
|
|
354
|
+
align-items: flex-end;
|
|
355
|
+
justify-content: space-between;
|
|
356
|
+
border-bottom: 1px solid var(--border);
|
|
357
|
+
gap: 8px 16px;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.share-dialog__top > .share-presets {
|
|
361
|
+
flex: 1 1 auto;
|
|
362
|
+
min-width: 0;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/* The buttons end on the rule, as the tabs do, so the two read as one row
|
|
366
|
+
rather than as a row with something floating over it. */
|
|
367
|
+
.share-linkbar {
|
|
368
|
+
display: flex;
|
|
369
|
+
align-items: center;
|
|
370
|
+
flex: 0 0 auto;
|
|
371
|
+
gap: 8px;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
.share-dialog__panes {
|
|
375
|
+
display: grid;
|
|
376
|
+
overflow: hidden;
|
|
377
|
+
min-height: 0;
|
|
378
|
+
flex: 1 1 auto;
|
|
379
|
+
gap: 16px;
|
|
380
|
+
grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
|
|
381
|
+
padding-bottom: 12px;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
.share-dialog__panes--single {
|
|
385
|
+
grid-template-columns: minmax(0, 1fr);
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
.share-dialog__options {
|
|
389
|
+
overflow-y: auto;
|
|
390
|
+
min-height: 0;
|
|
391
|
+
padding-right: 4px;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
/* The tabs the two panes fold into on a narrow dialog. */
|
|
395
|
+
.share-dialog__tabs {
|
|
396
|
+
display: flex;
|
|
397
|
+
overflow: hidden;
|
|
398
|
+
min-height: 0;
|
|
399
|
+
flex: 1 1 auto;
|
|
400
|
+
flex-direction: column;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
.share-dialog__tabs > .bp6-tab-panel {
|
|
404
|
+
display: flex;
|
|
405
|
+
overflow: hidden;
|
|
406
|
+
min-height: 0;
|
|
407
|
+
flex: 1 1 auto;
|
|
408
|
+
flex-direction: column;
|
|
409
|
+
margin-top: 8px;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
/* One row per part: what it is on the left, whether the link keeps it on the
|
|
413
|
+
right. The switch says `On` or `Off` in so many words, because a tick means
|
|
414
|
+
nothing without the heading above the column, and the heading is the first
|
|
415
|
+
thing a reader scrolls past. */
|
|
416
|
+
.share-part {
|
|
417
|
+
display: flex;
|
|
418
|
+
flex-wrap: wrap;
|
|
419
|
+
align-items: center;
|
|
420
|
+
padding: 3px 0;
|
|
421
|
+
gap: 0 6px;
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
.share-part__label {
|
|
425
|
+
cursor: pointer;
|
|
426
|
+
font-weight: 500;
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
/* Pointing at a row marks it, so it is clear which of the nine is the one
|
|
430
|
+
drawn on the page beside it. */
|
|
431
|
+
.share-part:hover {
|
|
432
|
+
border-radius: var(--radius);
|
|
433
|
+
background: var(--surface-sunken);
|
|
434
|
+
box-shadow: 0 0 0 6px var(--surface-sunken);
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
/* The pill keeps the right edge, so the state of the whole page is one
|
|
438
|
+
vertical scan rather than a tick hunted for at the end of each label. */
|
|
439
|
+
.share-part__switch.bp6-control {
|
|
440
|
+
margin: 0 0 0 auto;
|
|
441
|
+
padding: 0;
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
.share-part__switch .bp6-control-indicator {
|
|
445
|
+
/* One width for both words, or the column shifts as rows are switched. */
|
|
446
|
+
min-width: 3.1em;
|
|
447
|
+
margin: 0;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
/* On is the site's own colour, like every other thing that is current. */
|
|
451
|
+
.bp6-control.share-part__switch input:checked ~ .bp6-control-indicator {
|
|
452
|
+
background: var(--accent);
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
/* What switching the row off does, under the label it belongs to: a sentence
|
|
456
|
+
nobody has to hover for is a sentence that is read. */
|
|
457
|
+
.share-part__description {
|
|
458
|
+
flex: 1 0 100%;
|
|
459
|
+
margin: 0 0 2px;
|
|
460
|
+
color: var(--text-muted);
|
|
461
|
+
font-size: 12px;
|
|
462
|
+
line-height: 1.45;
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
/* The live page, laid out at the screen picked and scaled into the pane. */
|
|
466
|
+
.share-preview {
|
|
467
|
+
display: flex;
|
|
468
|
+
min-height: 0;
|
|
469
|
+
flex-direction: column;
|
|
470
|
+
padding-bottom: 12px;
|
|
471
|
+
gap: 8px;
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
/* The preview names itself: a page scaled into a pane otherwise reads as the
|
|
475
|
+
site, and a reader who takes it for the tool ticks a box in it and believes
|
|
476
|
+
the link now carries it. */
|
|
477
|
+
.share-preview__header {
|
|
478
|
+
display: flex;
|
|
479
|
+
flex: 0 0 auto;
|
|
480
|
+
align-items: center;
|
|
481
|
+
justify-content: space-between;
|
|
482
|
+
gap: 8px;
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
.share-preview__label.bp6-heading {
|
|
486
|
+
display: inline-flex;
|
|
487
|
+
align-items: center;
|
|
488
|
+
margin: 0;
|
|
489
|
+
gap: 5px;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
.share-preview__devices.bp6-button-group {
|
|
493
|
+
flex: 0 0 auto;
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
/* The desk the window sits on: a shade deeper than the page behind it, so the
|
|
497
|
+
frame reads as a screen rather than as the dialog's own background. */
|
|
498
|
+
.share-preview__stage {
|
|
499
|
+
display: flex;
|
|
500
|
+
overflow: auto;
|
|
501
|
+
min-height: 0;
|
|
502
|
+
flex: 1 1 auto;
|
|
503
|
+
align-items: flex-start;
|
|
504
|
+
justify-content: center;
|
|
505
|
+
padding: 12px;
|
|
506
|
+
border: 1px solid var(--border);
|
|
507
|
+
border-radius: var(--radius);
|
|
508
|
+
background: color-mix(in oklab, var(--text) 14%, var(--surface-sunken));
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
/* The window the page is shown in: its own bar, then the page under it. It
|
|
512
|
+
keeps the room its scaled frame takes, so a phone reads as a phone on the
|
|
513
|
+
stage rather than as a column of empty grey beside it. */
|
|
514
|
+
.share-preview__device {
|
|
515
|
+
overflow: hidden;
|
|
516
|
+
flex: 0 0 auto;
|
|
517
|
+
border: 1px solid var(--border-strong);
|
|
518
|
+
border-radius: 6px;
|
|
519
|
+
background: var(--surface);
|
|
520
|
+
box-shadow: var(--shadow-md);
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
.share-preview__chrome {
|
|
524
|
+
display: flex;
|
|
525
|
+
height: 25px;
|
|
526
|
+
align-items: center;
|
|
527
|
+
padding: 0 8px;
|
|
528
|
+
border-bottom: 1px solid var(--border);
|
|
529
|
+
background: var(--surface-sunken);
|
|
530
|
+
color: var(--text-muted);
|
|
531
|
+
font-size: 11px;
|
|
532
|
+
gap: 6px;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
.share-preview__address {
|
|
536
|
+
overflow: hidden;
|
|
537
|
+
flex: 1 1 auto;
|
|
538
|
+
text-overflow: ellipsis;
|
|
539
|
+
white-space: nowrap;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
.share-preview__size {
|
|
543
|
+
flex: 0 0 auto;
|
|
544
|
+
font-variant-numeric: tabular-nums;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
.share-preview__page {
|
|
548
|
+
position: relative;
|
|
549
|
+
overflow: hidden;
|
|
550
|
+
background: var(--surface);
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
/* What the row under the pointer names, drawn on the page itself: a list of
|
|
554
|
+
nine nouns is a list the reader has to map onto a page they can already
|
|
555
|
+
see. It is a mark, never a target — the preview stays the live page. */
|
|
556
|
+
.share-preview__region {
|
|
557
|
+
position: absolute;
|
|
558
|
+
border: 2px solid var(--accent);
|
|
559
|
+
border-radius: 4px;
|
|
560
|
+
background: color-mix(in oklab, var(--accent) 14%, transparent);
|
|
561
|
+
box-shadow: 0 0 0 9999px rgb(16 32 48 / 28%);
|
|
562
|
+
pointer-events: none;
|
|
563
|
+
}
|
|
564
|
+
|
|
565
|
+
.share-preview__region-name {
|
|
566
|
+
position: absolute;
|
|
567
|
+
top: -1px;
|
|
568
|
+
left: -1px;
|
|
569
|
+
padding: 1px 6px;
|
|
570
|
+
border-radius: 4px 0;
|
|
571
|
+
background: var(--accent);
|
|
572
|
+
color: var(--surface);
|
|
573
|
+
font-size: 11px;
|
|
574
|
+
font-weight: 600;
|
|
575
|
+
white-space: nowrap;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
/* The dialog is dragged larger when a page needs the room: a tool a teacher
|
|
579
|
+
frames at 1920 is one they check at 1920. */
|
|
580
|
+
.share-dialog.bp6-dialog {
|
|
581
|
+
overflow: hidden;
|
|
582
|
+
min-width: 480px;
|
|
583
|
+
min-height: 420px;
|
|
584
|
+
max-width: 98vw;
|
|
585
|
+
max-height: 96dvh;
|
|
586
|
+
resize: both;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
/* The ready-made links run the width of the dialog, above both panes: the
|
|
590
|
+
choice governs the preview as much as the switches, and in a third of the
|
|
591
|
+
width four tabs wrap onto a second row. A dialog narrow enough that they
|
|
592
|
+
still do not fit wraps rather than hiding the last of them. */
|
|
338
593
|
.share-presets > .bp6-tab-list {
|
|
339
594
|
flex-wrap: wrap;
|
|
340
595
|
row-gap: 4px;
|
|
341
|
-
box-shadow: inset 0 -1px 0 var(--border);
|
|
342
596
|
}
|
|
343
597
|
|
|
344
|
-
|
|
598
|
+
/* The sentence saying what the open preset hands out, where the switches are
|
|
599
|
+
when none is. */
|
|
600
|
+
.share-dialog__preset {
|
|
601
|
+
margin-top: 0;
|
|
602
|
+
color: var(--text-muted);
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
/* The structure export dialog: the picture of the structure on the left, with
|
|
606
|
+
the resolution it leaves at, and every notation of it stacked on the right. */
|
|
607
|
+
.structure-export__body {
|
|
608
|
+
padding: 12px 16px 16px;
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
.structure-export__panes {
|
|
612
|
+
display: grid;
|
|
613
|
+
gap: 20px;
|
|
614
|
+
grid-template-columns: minmax(0, 15rem) minmax(0, 1fr);
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
/* The picture holds its place while the notations scroll past it: what is
|
|
618
|
+
being exported has to stay on screen while the molfile beside it is read. */
|
|
619
|
+
.structure-export__picture {
|
|
620
|
+
position: sticky;
|
|
621
|
+
top: 0;
|
|
622
|
+
display: flex;
|
|
623
|
+
flex-direction: column;
|
|
624
|
+
align-self: start;
|
|
625
|
+
align-items: flex-start;
|
|
626
|
+
gap: 8px;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
/* The preview is the file: the very SVG the save button writes, laid out
|
|
630
|
+
smaller. A box of a fixed height rather than one that follows the drawing,
|
|
631
|
+
so a tall molecule does not push the resolution and the buttons under it off
|
|
632
|
+
the dialog — the structure is centred in it at whatever shape it has. */
|
|
633
|
+
.structure-export__stage {
|
|
634
|
+
display: block;
|
|
635
|
+
width: 100%;
|
|
636
|
+
height: 10rem;
|
|
637
|
+
box-sizing: border-box;
|
|
638
|
+
padding: 6px;
|
|
639
|
+
border: 1px solid var(--border);
|
|
640
|
+
border-radius: var(--radius);
|
|
641
|
+
background: var(--surface);
|
|
642
|
+
object-fit: contain;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
.structure-export__row {
|
|
646
|
+
display: flex;
|
|
647
|
+
flex-wrap: wrap;
|
|
648
|
+
align-items: center;
|
|
649
|
+
gap: 8px;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
/* Two columns, so the three buttons are one size: a row of buttons whose
|
|
653
|
+
widths are set by the length of their labels reads as three unrelated
|
|
654
|
+
controls. */
|
|
655
|
+
.structure-export__actions {
|
|
656
|
+
display: grid;
|
|
657
|
+
margin-top: 2px;
|
|
658
|
+
gap: 6px;
|
|
659
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
/* One notation per row, with enough air between them that a molfile's block
|
|
663
|
+
does not read as part of the row under it. */
|
|
664
|
+
.structure-export__notations {
|
|
665
|
+
display: flex;
|
|
666
|
+
flex-direction: column;
|
|
667
|
+
gap: 14px;
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
.structure-export__identifiers {
|
|
671
|
+
padding-top: 6px;
|
|
672
|
+
border-top: 1px solid var(--border);
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
/* The folded identifiers are rows like the ones above them, so they keep the
|
|
676
|
+
same rhythm once the section is open. */
|
|
677
|
+
.structure-export__identifiers
|
|
678
|
+
.structure-export__notation
|
|
679
|
+
+ .structure-export__notation {
|
|
345
680
|
margin-top: 12px;
|
|
346
681
|
}
|
|
347
682
|
|
|
683
|
+
/* Below this the two panes stop fitting side by side, and the picture — the
|
|
684
|
+
thing being exported — stays first. */
|
|
685
|
+
@media (max-width: 44rem) {
|
|
686
|
+
.structure-export__panes {
|
|
687
|
+
grid-template-columns: minmax(0, 1fr);
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
|
|
348
691
|
/* ── A narrow bar ────────────────────────────────────────────────────────── */
|
|
349
692
|
|
|
350
693
|
/* The menu the pages fold into, drawn only once they no longer fit. */
|
|
@@ -564,12 +907,6 @@ select,
|
|
|
564
907
|
white-space: nowrap;
|
|
565
908
|
}
|
|
566
909
|
|
|
567
|
-
@media print {
|
|
568
|
-
.click-to-copy__icon {
|
|
569
|
-
display: none;
|
|
570
|
-
}
|
|
571
|
-
}
|
|
572
|
-
|
|
573
910
|
/* ── Range slider ────────────────────────────────────────────────────────── */
|
|
574
911
|
|
|
575
912
|
.range-slider {
|
|
@@ -732,12 +1069,24 @@ select,
|
|
|
732
1069
|
}
|
|
733
1070
|
|
|
734
1071
|
/*
|
|
1072
|
+
A card holding a picture — a structure, a grid of them — at the one measure
|
|
1073
|
+
below would show it at a third of its size. It keeps every other property of
|
|
1074
|
+
the card and takes a wider measure, so the two still read as one thing.
|
|
1075
|
+
*/
|
|
1076
|
+
.help-tooltip--wide .bp6-popover-content {
|
|
1077
|
+
width: 460px;
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
/*
|
|
1081
|
+
The selector is `.bp6-popover`, which a tooltip carries too, so a card opened
|
|
1082
|
+
by a popover — a row of a cheatsheet, a preview — is the same card.
|
|
1083
|
+
|
|
735
1084
|
Blueprint opens a tooltip by transitioning it from `scale(0.8)`, and under
|
|
736
1085
|
React 19 that transition is created but never ticks: it sits at time zero for
|
|
737
1086
|
as long as the card is open, so the card and its type stay at four fifths of
|
|
738
1087
|
the size they were drawn at. Help opens without an animation instead.
|
|
739
1088
|
*/
|
|
740
|
-
.help-tooltip.bp6-
|
|
1089
|
+
.help-tooltip.bp6-popover {
|
|
741
1090
|
border-radius: var(--radius);
|
|
742
1091
|
box-shadow: var(--shadow-md);
|
|
743
1092
|
transform: scale(1);
|
|
@@ -758,7 +1107,38 @@ select,
|
|
|
758
1107
|
box-shadow: none;
|
|
759
1108
|
}
|
|
760
1109
|
|
|
761
|
-
|
|
1110
|
+
/*
|
|
1111
|
+
Blueprint styles a tooltip's contents as if the plate under them were dark:
|
|
1112
|
+
`.bp6-tooltip .bp6-key` is a near-black cap, muted and disabled text are set
|
|
1113
|
+
in light greys, a link is pale blue, and inline code is white on a wash. None
|
|
1114
|
+
of that is readable on this card, and a component that writes a key cap or a
|
|
1115
|
+
muted line has no way of knowing it is in a tooltip. So the card puts them
|
|
1116
|
+
back on the light ground here, once, for everything it ever holds.
|
|
1117
|
+
*/
|
|
1118
|
+
.help-tooltip .bp6-text-muted {
|
|
1119
|
+
color: var(--text-muted);
|
|
1120
|
+
}
|
|
1121
|
+
|
|
1122
|
+
.help-tooltip .bp6-text-disabled {
|
|
1123
|
+
color: var(--text-faint);
|
|
1124
|
+
}
|
|
1125
|
+
|
|
1126
|
+
.help-tooltip .bp6-key,
|
|
1127
|
+
.help-tooltip .bp6-running-text kbd {
|
|
1128
|
+
border: 1px solid var(--border-strong);
|
|
1129
|
+
background: var(--surface);
|
|
1130
|
+
box-shadow: none;
|
|
1131
|
+
color: var(--text-muted);
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
.help-tooltip .bp6-code,
|
|
1135
|
+
.help-tooltip .bp6-running-text code {
|
|
1136
|
+
background: var(--surface-sunken);
|
|
1137
|
+
box-shadow: none;
|
|
1138
|
+
color: var(--text);
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1141
|
+
.help-tooltip a {
|
|
762
1142
|
color: var(--accent);
|
|
763
1143
|
}
|
|
764
1144
|
|
|
@@ -778,9 +1158,29 @@ select,
|
|
|
778
1158
|
|
|
779
1159
|
/* ── Printing ────────────────────────────────────────────────────────────── */
|
|
780
1160
|
|
|
781
|
-
/*
|
|
1161
|
+
/*
|
|
1162
|
+
A printed page carries no control. A question mark nobody can hover, a button
|
|
1163
|
+
that copies, saves or shares, a stepper's two arrows: each says nothing on
|
|
1164
|
+
paper, and each costs a line of the thing that was printed. So every control
|
|
1165
|
+
the family ships keeps itself off a print — by one of the classes named here,
|
|
1166
|
+
or by carrying `no-print` — and a site marks its own with that same class. No
|
|
1167
|
+
site writes a print rule of its own.
|
|
1168
|
+
|
|
1169
|
+
What does print is whatever carries a value: a field and the number in it, a
|
|
1170
|
+
toggle saying which option is on, a legend, a caption, a table. Hiding one of
|
|
1171
|
+
those takes information off the page, which is the opposite of the rule.
|
|
1172
|
+
|
|
1173
|
+
Each class is written three times on purpose. How the glyph sits in its row
|
|
1174
|
+
is the site's business, so a site may legitimately lay it out with a compound
|
|
1175
|
+
selector of its own — `.help-icon.bp6-popover-target`, which is how Blueprint
|
|
1176
|
+
has to be out-specified — and `!important` on one class would then lose the
|
|
1177
|
+
tie to a stylesheet that is imported after this one. Three classes outrank
|
|
1178
|
+
any such rule, so the print behaviour does not depend on import order.
|
|
1179
|
+
*/
|
|
782
1180
|
@media print {
|
|
783
|
-
.no-print
|
|
1181
|
+
.no-print.no-print.no-print,
|
|
1182
|
+
.help-icon.help-icon.help-icon,
|
|
1183
|
+
.click-to-copy__icon.click-to-copy__icon.click-to-copy__icon {
|
|
784
1184
|
display: none !important;
|
|
785
1185
|
}
|
|
786
1186
|
}
|