@recogito/metaphor-annotation-plugin 0.0.0-stage → 0.0.11-beta.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/README.md +102 -2
- package/dist/extensions/GoToMetaphorAnnotationView.d.ts +3 -0
- package/dist/extensions/GoToMetaphorAnnotationView.d.ts.map +1 -0
- package/dist/extensions/GoToMetaphorAnnotationView.js +14 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.css +22 -0
- package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.d.ts +10 -0
- package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.js +136 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts +9 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.js +12 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.d.ts +11 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.js +37 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.js +70 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.d.ts +8 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.js +20 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.d.ts +9 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.js +25 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts +6 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.js +16 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.js +10 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.d.ts +3 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.js +27 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.d.ts +9 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.js +23 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.d.ts +11 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.js +16 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.d.ts +13 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.js +42 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts +7 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.js +22 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.d.ts +14 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.js +36 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.d.ts +9 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.js +35 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.css +96 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.d.ts +18 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.js +33 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.d.ts +9 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.js +20 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.d.ts +11 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.js +15 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.css +105 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.d.ts +22 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.js +61 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.d.ts +3 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.js +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/image-panel.css +347 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.d.ts +6 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.js +21 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.d.ts +12 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.js +34 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.d.ts +8 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.js +20 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/colors.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/colors.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/colors.js +17 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/index.d.ts +6 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/index.js +5 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.d.ts +8 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.js +13 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/index.js +1 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.d.ts +17 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.js +43 -0
- package/dist/pages/_components/ImageMetaphorView/index.d.ts +2 -0
- package/dist/pages/_components/ImageMetaphorView/index.d.ts.map +1 -0
- package/dist/pages/_components/ImageMetaphorView/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.css +2055 -0
- package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.d.ts +10 -0
- package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.js +41 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.d.ts +14 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.js +35 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.css +67 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts +10 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.js +15 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.d.ts +13 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.js +32 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.css +230 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.js +100 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.css +449 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts +10 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.js +81 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.d.ts +11 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.js +11 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.d.ts +9 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.js +45 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.d.ts +8 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.js +27 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.d.ts +10 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.js +39 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.d.ts +8 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.js +9 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.js +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.d.ts +9 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.js +8 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.d.ts +10 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.js +32 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.js +17 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.css +157 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.js +12 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.js +19 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.d.ts +31 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.js +64 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.css +189 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.js +24 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.d.ts +8 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.js +26 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.js +71 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.d.ts +8 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.js +41 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.d.ts +9 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.js +33 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.css +159 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.d.ts +9 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.js +47 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.d.ts +6 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.js +15 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.d.ts +7 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.js +13 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.d.ts +12 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.js +97 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/index.d.ts +6 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/index.js +5 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.d.ts +3 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.js +138 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.d.ts +5 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.js +35 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.d.ts +5 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.js +14 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.d.ts +6 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.js +24 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.js +35 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.d.ts +3 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.js +46 -0
- package/dist/pages/_components/TeiMetaphorView/index.d.ts +2 -0
- package/dist/pages/_components/TeiMetaphorView/index.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/index.js +1 -0
- package/dist/pages/_components/TeiMetaphorView/utils.d.ts +15 -0
- package/dist/pages/_components/TeiMetaphorView/utils.d.ts.map +1 -0
- package/dist/pages/_components/TeiMetaphorView/utils.js +146 -0
- package/dist/pages/_components/shared/components/Accordion/Accordion.css +55 -0
- package/dist/pages/_components/shared/components/Accordion/Accordion.d.ts +6 -0
- package/dist/pages/_components/shared/components/Accordion/Accordion.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Accordion/Accordion.js +7 -0
- package/dist/pages/_components/shared/components/Accordion/index.d.ts +2 -0
- package/dist/pages/_components/shared/components/Accordion/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Accordion/index.js +1 -0
- package/dist/pages/_components/shared/components/AccountActions/AccountActions.css +49 -0
- package/dist/pages/_components/shared/components/AccountActions/AccountActions.d.ts +2 -0
- package/dist/pages/_components/shared/components/AccountActions/AccountActions.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/AccountActions/AccountActions.js +33 -0
- package/dist/pages/_components/shared/components/AccountActions/index.d.ts +2 -0
- package/dist/pages/_components/shared/components/AccountActions/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/AccountActions/index.js +1 -0
- package/dist/pages/_components/shared/components/Conversation/Comment.d.ts +6 -0
- package/dist/pages/_components/shared/components/Conversation/Comment.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Conversation/Comment.js +12 -0
- package/dist/pages/_components/shared/components/Conversation/Conversation.css +93 -0
- package/dist/pages/_components/shared/components/Conversation/Conversation.d.ts +8 -0
- package/dist/pages/_components/shared/components/Conversation/Conversation.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Conversation/Conversation.js +55 -0
- package/dist/pages/_components/shared/components/Conversation/index.d.ts +2 -0
- package/dist/pages/_components/shared/components/Conversation/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Conversation/index.js +1 -0
- package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.css +218 -0
- package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.d.ts +23 -0
- package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.js +13 -0
- package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.d.ts +8 -0
- package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.js +9 -0
- package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.d.ts +2 -0
- package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.js +42 -0
- package/dist/pages/_components/shared/components/EditorToolbar/index.d.ts +3 -0
- package/dist/pages/_components/shared/components/EditorToolbar/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/EditorToolbar/index.js +2 -0
- package/dist/pages/_components/shared/components/Filters/Filters.d.ts +6 -0
- package/dist/pages/_components/shared/components/Filters/Filters.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Filters/Filters.js +61 -0
- package/dist/pages/_components/shared/components/Filters/VisibilityFilter.d.ts +2 -0
- package/dist/pages/_components/shared/components/Filters/VisibilityFilter.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Filters/VisibilityFilter.js +23 -0
- package/dist/pages/_components/shared/components/Filters/index.d.ts +3 -0
- package/dist/pages/_components/shared/components/Filters/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Filters/index.js +2 -0
- package/dist/pages/_components/shared/components/HideAllState/HideAllState.d.ts +12 -0
- package/dist/pages/_components/shared/components/HideAllState/HideAllState.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/HideAllState/HideAllState.js +9 -0
- package/dist/pages/_components/shared/components/HideAllState/index.d.ts +2 -0
- package/dist/pages/_components/shared/components/HideAllState/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/HideAllState/index.js +1 -0
- package/dist/pages/_components/shared/components/Metadata/MetadataList.d.ts +10 -0
- package/dist/pages/_components/shared/components/Metadata/MetadataList.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Metadata/MetadataList.js +11 -0
- package/dist/pages/_components/shared/components/Metadata/index.d.ts +3 -0
- package/dist/pages/_components/shared/components/Metadata/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Metadata/index.js +2 -0
- package/dist/pages/_components/shared/components/Metadata/sanitize.d.ts +3 -0
- package/dist/pages/_components/shared/components/Metadata/sanitize.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Metadata/sanitize.js +53 -0
- package/dist/pages/_components/shared/components/StorageAdapter.d.ts +8 -0
- package/dist/pages/_components/shared/components/StorageAdapter.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/StorageAdapter.js +12 -0
- package/dist/pages/_components/shared/components/SupabaseStorageAdapter.d.ts +23 -0
- package/dist/pages/_components/shared/components/SupabaseStorageAdapter.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/SupabaseStorageAdapter.js +46 -0
- package/dist/pages/_components/shared/components/Tabs/Tabs.css +90 -0
- package/dist/pages/_components/shared/components/Tabs/Tabs.d.ts +6 -0
- package/dist/pages/_components/shared/components/Tabs/Tabs.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Tabs/Tabs.js +6 -0
- package/dist/pages/_components/shared/components/Tabs/index.d.ts +2 -0
- package/dist/pages/_components/shared/components/Tabs/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/Tabs/index.js +1 -0
- package/dist/pages/_components/shared/components/index.d.ts +9 -0
- package/dist/pages/_components/shared/components/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/components/index.js +8 -0
- package/dist/pages/_components/shared/hooks/index.d.ts +2 -0
- package/dist/pages/_components/shared/hooks/index.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/index.js +1 -0
- package/dist/pages/_components/shared/hooks/useDocument.d.ts +3 -0
- package/dist/pages/_components/shared/hooks/useDocument.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/useDocument.js +14 -0
- package/dist/pages/_components/shared/hooks/useDocumentLayers.d.ts +6 -0
- package/dist/pages/_components/shared/hooks/useDocumentLayers.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/useDocumentLayers.js +18 -0
- package/dist/pages/_components/shared/hooks/useLayerPolicies.d.ts +3 -0
- package/dist/pages/_components/shared/hooks/useLayerPolicies.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/useLayerPolicies.js +16 -0
- package/dist/pages/_components/shared/hooks/useSelectAction.d.ts +18 -0
- package/dist/pages/_components/shared/hooks/useSelectAction.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/useSelectAction.js +26 -0
- package/dist/pages/_components/shared/hooks/useStoredFileDocument.d.ts +5 -0
- package/dist/pages/_components/shared/hooks/useStoredFileDocument.d.ts.map +1 -0
- package/dist/pages/_components/shared/hooks/useStoredFileDocument.js +22 -0
- package/dist/pages/_components/shared/i18n.d.ts +4 -0
- package/dist/pages/_components/shared/i18n.d.ts.map +1 -0
- package/dist/pages/_components/shared/i18n.js +31 -0
- package/dist/pages/_components/shared/supabase.d.ts +7 -0
- package/dist/pages/_components/shared/supabase.d.ts.map +1 -0
- package/dist/pages/_components/shared/supabase.js +7 -0
- package/dist/pages/_components/shared/types.d.ts +16 -0
- package/dist/pages/_components/shared/types.d.ts.map +1 -0
- package/dist/pages/_components/shared/types.js +1 -0
- package/dist/pages/metaphor-annotation-view.astro +122 -0
- package/package.json +69 -4
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useTranslation } from 'react-i18next';
|
|
4
|
+
import { ArrowsLeftRightIcon, ChatsIcon, XIcon, ShapesIcon, TrashIcon, } from '@phosphor-icons/react';
|
|
5
|
+
import { createBody, useAnnotationStore, } from '@annotorious/react';
|
|
6
|
+
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Conversation, } from '../../../../shared/components';
|
|
7
|
+
import { getCategoryColor, SetCategory, AddProperty, RelationPreview, useRelations, } from '../../shared';
|
|
8
|
+
export const SelectedImageAnnotation = (props) => {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
const store = useAnnotationStore();
|
|
11
|
+
const category = useMemo(() => props.annotation.bodies.find((b) => b.purpose === 'classifying')?.value, [props.annotation]);
|
|
12
|
+
const properties = useMemo(() => props.annotation.bodies.filter((b) => b.purpose === 'tagging' && b.value), [props.annotation]);
|
|
13
|
+
const onSetCategory = (value) => store?.addBody(createBody(props.annotation, { purpose: 'classifying', value }));
|
|
14
|
+
const onClearCategory = () => {
|
|
15
|
+
const body = props.annotation.bodies.find((b) => b.purpose === 'classifying');
|
|
16
|
+
if (body)
|
|
17
|
+
store?.deleteBody(body);
|
|
18
|
+
};
|
|
19
|
+
const onAddProperty = (value) => store?.addBody(createBody(props.annotation, { purpose: 'tagging', value }));
|
|
20
|
+
const onDeleteProperty = (body) => store?.deleteBody(body);
|
|
21
|
+
const onDelete = () => store?.deleteAnnotation(props.annotation.id);
|
|
22
|
+
const arrows = useRelations(props.annotation.id);
|
|
23
|
+
const commentCount = useMemo(() => props.annotation.bodies.filter((b) => b.purpose === 'commenting' || b.purpose === 'replying').length, [props.annotation]);
|
|
24
|
+
return (_jsxs("div", { className: 'ia-selected', children: [_jsx("div", { className: 'ia-selected-section', children: category ? (_jsxs("div", { className: 'ia-category-chip', style: { backgroundColor: getCategoryColor(category) }, children: [_jsx("span", { children: category }), props.editable && (_jsx("button", { className: 'unstyled icon-only', "aria-label": t('Clear class'), onClick: onClearCategory, children: _jsx(XIcon, {}) }))] })) : props.editable && (_jsx(SetCategory, { onSetCategory: onSetCategory, children: _jsxs("button", { className: 'ia-add-class', children: [_jsx(ShapesIcon, { size: 20 }), " ", t('Add class')] }) })) }), _jsxs("div", { className: 'ia-selected-section', children: [_jsxs("div", { className: 'ia-section-header', children: [_jsx("span", { children: t('Properties') }), props.editable && _jsx(AddProperty, { onAddProperty: onAddProperty })] }), properties.length > 0 && (_jsx("ul", { className: 'ia-property-list', children: properties.map((body) => (_jsxs("li", { className: 'ia-property-pill', children: [body.value, props.editable && (_jsx("button", { className: 'unstyled icon-only', "aria-label": t('Remove property'), onClick: () => onDeleteProperty(body), children: _jsx(XIcon, {}) }))] }, body.id))) }))] }), _jsx("div", { className: 'ia-selected-section', children: _jsxs(Accordion, { type: 'multiple', children: [_jsxs(AccordionItem, { value: 'relations', children: [_jsx(AccordionTrigger, { children: _jsxs("div", { className: 'accordion-trigger-layout', children: [_jsx(ArrowsLeftRightIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Relations'), arrows.length > 0 && (_jsx("span", { className: 'accordion-badge', children: arrows.length }))] }) }), _jsx(AccordionContent, { children: arrows.length > 0 ? (_jsx("div", { className: 'ia-relation-list', children: arrows.map((arrow) => (_jsx(RelationPreview, { arrow: arrow, referenceAnnotationId: props.annotation.id }, arrow.id))) })) : (_jsx("p", { className: 'ia-relations-empty', children: t('No relations') })) })] }), _jsxs(AccordionItem, { value: 'conversation', children: [_jsx(AccordionTrigger, { children: _jsxs("div", { className: 'accordion-trigger-layout', children: [_jsx(ChatsIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Conversation'), commentCount > 0 && (_jsx("span", { className: 'accordion-badge', children: commentCount }))] }) }), _jsx(AccordionContent, { children: _jsx(Conversation, { annotation: props.annotation, isLocked: props.isLocked }) })] })] }) }), props.editable && (_jsx("div", { className: 'ia-selected-footer', children: _jsxs("button", { className: 'danger', onClick: onDelete, children: [_jsx(TrashIcon, {}), " ", t('Delete annotation')] }) }))] }));
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectedTab.d.ts","sourceRoot":"","sources":["../../../../../../../src/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.tsx"],"names":[],"mappings":"AAUA,UAAU,gBAAgB;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,gCAyBlD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
import { CursorIcon } from '@phosphor-icons/react';
|
|
4
|
+
import { useSelection } from '@annotorious/react';
|
|
5
|
+
import { isArrowAnnotation, } from '@annotorious/plugin-arrows-react';
|
|
6
|
+
import { SelectedImageAnnotation } from './SelectedImageAnnotation';
|
|
7
|
+
import { SelectedArrowAnnotation } from './SelectedArrowAnnotation';
|
|
8
|
+
export const SelectedTab = (props) => {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
const { selected } = useSelection();
|
|
11
|
+
if (selected.length === 0) {
|
|
12
|
+
return (_jsxs("div", { className: 'ia-panel-empty', children: [_jsx(CursorIcon, { size: 40, weight: 'thin' }), _jsx("p", { children: t('Select an annotation') })] }));
|
|
13
|
+
}
|
|
14
|
+
const { annotation, editable } = selected[0];
|
|
15
|
+
return isArrowAnnotation(annotation) ? (_jsx(SelectedArrowAnnotation, { annotation: annotation, editable: !!editable })) : (_jsx(SelectedImageAnnotation, { annotation: annotation, editable: !!editable, isLocked: props.isLocked }));
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SelectedTab';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsTab.d.ts","sourceRoot":"","sources":["../../../../../../../src/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,WAAW,mCA4BvB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { useTranslation } from 'react-i18next';
|
|
4
|
+
import { FunnelSimpleIcon } from '@phosphor-icons/react';
|
|
5
|
+
import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Filters, } from '../../../../shared/components';
|
|
6
|
+
export const SettingsTab = () => {
|
|
7
|
+
const { t } = useTranslation();
|
|
8
|
+
const [openAccordions, setOpenAccordions] = useState(['filters']);
|
|
9
|
+
return (_jsx("div", { className: 'settings-tab-content', children: _jsx("div", { className: 'accordions-wrapper', children: _jsx(Accordion, { type: 'multiple', value: openAccordions, onValueChange: setOpenAccordions, children: _jsxs(AccordionItem, { value: 'filters', children: [_jsx(AccordionTrigger, { children: _jsxs("div", { className: 'accordion-trigger-layout', children: [_jsx(FunnelSimpleIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Filter')] }) }), _jsx(AccordionContent, { children: _jsx(Filters, { showTags: false }) })] }) }) }) }));
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SettingsTab';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './AnnotationPanel';
|
package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrowToolbar.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAIxE,eAAO,MAAM,YAAY,GAAI,OAAO,eAAe,uCAyFlD,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useTranslation } from 'react-i18next';
|
|
4
|
+
import * as Tooltip from '@radix-ui/react-tooltip';
|
|
5
|
+
import { TagIcon, TrashIcon, XIcon } from '@phosphor-icons/react';
|
|
6
|
+
import { createBody, useAnnotationStore, useSelection, } from '@annotorious/react';
|
|
7
|
+
import { getCategoryColor, SetCategory } from '../shared';
|
|
8
|
+
// Popup for a selected arrow (relation)
|
|
9
|
+
export const ArrowToolbar = (props) => {
|
|
10
|
+
const { t } = useTranslation();
|
|
11
|
+
const store = useAnnotationStore();
|
|
12
|
+
// ArrowPopupProps has no `editable`, so read it from the selection
|
|
13
|
+
const { selected } = useSelection();
|
|
14
|
+
const editable = selected.some((s) => s.annotation.id === props.annotation.id && s.editable);
|
|
15
|
+
const category = useMemo(() => props.annotation.bodies.find((b) => b.purpose === 'classifying')?.value, [props.annotation]);
|
|
16
|
+
const onSetCategory = (value) => store?.addBody(createBody(props.annotation, { purpose: 'classifying', value }));
|
|
17
|
+
const onClearCategory = () => {
|
|
18
|
+
const body = props.annotation.bodies.find((b) => b.purpose === 'classifying');
|
|
19
|
+
if (body)
|
|
20
|
+
store?.deleteBody(body);
|
|
21
|
+
};
|
|
22
|
+
const onDelete = () => store?.deleteAnnotation(props.annotation.id);
|
|
23
|
+
// Nothing to show or do for a read-only relation without a category
|
|
24
|
+
if (!editable && !category)
|
|
25
|
+
return null;
|
|
26
|
+
return (_jsx(Tooltip.Provider, { delayDuration: 300, children: _jsxs("div", { className: 'ia-shape-toolbar', children: [category ? (_jsxs("div", { className: 'ia-category-chip', style: { backgroundColor: getCategoryColor(category) }, children: [_jsx("span", { children: category }), editable && (_jsx("button", { className: 'unstyled icon-only', "aria-label": t('Clear class'), onClick: onClearCategory, children: _jsx(XIcon, {}) }))] })) : (_jsx(SetCategory, { onSetCategory: onSetCategory, children: _jsx("button", { className: 'compact', "aria-label": t('Add relationship tag'), children: _jsx(TagIcon, { size: 16 }) }) })), editable && (_jsxs(_Fragment, { children: [_jsx("span", { className: 'ia-shape-toolbar-sep' }), _jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx("button", { className: 'compact', "aria-label": t('Delete relation'), onClick: onDelete, children: _jsx(TrashIcon, { size: 16 }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 6, children: [t('Delete relation'), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] })] }))] }) }));
|
|
27
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ArrowToolbar';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applies the Settings-tab filters to the OpenSeadragon annotator. The TEI view
|
|
3
|
+
* passes `filter`/`hideAnnotations` as props to <TEIAnnotator>; here the
|
|
4
|
+
* annotator is created above the FilterState/HideAllState providers, so we apply
|
|
5
|
+
* them imperatively instead (mirroring how the annotator's own prop effects call
|
|
6
|
+
* setFilter/setVisible).
|
|
7
|
+
*/
|
|
8
|
+
export declare const FilterAdapter: () => null;
|
|
9
|
+
//# sourceMappingURL=FilterAdapter.d.ts.map
|
package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterAdapter.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.tsx"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,YAgBzB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useAnnotator } from '@annotorious/react';
|
|
3
|
+
import { useFilter } from '@recogito/studio-sdk/components';
|
|
4
|
+
import { useHideAll } from '../../../shared/components';
|
|
5
|
+
/**
|
|
6
|
+
* Applies the Settings-tab filters to the OpenSeadragon annotator. The TEI view
|
|
7
|
+
* passes `filter`/`hideAnnotations` as props to <TEIAnnotator>; here the
|
|
8
|
+
* annotator is created above the FilterState/HideAllState providers, so we apply
|
|
9
|
+
* them imperatively instead (mirroring how the annotator's own prop effects call
|
|
10
|
+
* setFilter/setVisible).
|
|
11
|
+
*/
|
|
12
|
+
export const FilterAdapter = () => {
|
|
13
|
+
const anno = useAnnotator();
|
|
14
|
+
const { filter } = useFilter();
|
|
15
|
+
const { hideAll } = useHideAll();
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
anno?.setFilter(filter);
|
|
18
|
+
}, [anno, filter]);
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
anno?.setVisible(!hideAll);
|
|
21
|
+
}, [anno, hideAll]);
|
|
22
|
+
return null;
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/FilterAdapter/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FilterAdapter';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Annotation } from '@annotorious/react';
|
|
2
|
+
interface HoverTooltipProps {
|
|
3
|
+
annotation: Annotation;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Tooltip for the hovered annotation on the image: shows the category (if
|
|
7
|
+
* any), tinted with the category color (except for arrow annotations).
|
|
8
|
+
*/
|
|
9
|
+
export declare const HoverTooltip: (props: HoverTooltipProps) => import("react").JSX.Element | null;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=HoverTooltip.d.ts.map
|
package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HoverTooltip.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,UAAU,iBAAiB;IACzB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,uCAiBpD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { isArrowAnnotation } from '@annotorious/plugin-arrows-react';
|
|
3
|
+
import { getCategoryColor } from '../shared';
|
|
4
|
+
/**
|
|
5
|
+
* Tooltip for the hovered annotation on the image: shows the category (if
|
|
6
|
+
* any), tinted with the category color (except for arrow annotations).
|
|
7
|
+
*/
|
|
8
|
+
export const HoverTooltip = (props) => {
|
|
9
|
+
const category = props.annotation.bodies.find((b) => b.purpose === 'classifying')?.value;
|
|
10
|
+
if (!category)
|
|
11
|
+
return null;
|
|
12
|
+
const tint = isArrowAnnotation(props.annotation)
|
|
13
|
+
? '#ffffff'
|
|
14
|
+
: getCategoryColor(category);
|
|
15
|
+
return (_jsxs("div", { className: 'ia-hover-tooltip', children: [_jsx("div", { className: 'ia-hover-tooltip-tint', style: { backgroundColor: tint } }), _jsx("span", { children: category })] }));
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/HoverTooltip/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './HoverTooltip';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ArrowsPluginMode, type ArrowsVisibility } from '@annotorious/plugin-arrows-react';
|
|
2
|
+
interface ImageArrowsProps {
|
|
3
|
+
mode: ArrowsPluginMode;
|
|
4
|
+
visibility: ArrowsVisibility;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Arrows plugin + popup, mounted once the annotator belongs to the current
|
|
8
|
+
* viewer. On a canvas switch, the new viewer is ready before the new
|
|
9
|
+
* annotator; this avoids a throwaway mount with the stale annotator.
|
|
10
|
+
*/
|
|
11
|
+
export declare const ImageArrows: (props: ImageArrowsProps) => import("react").JSX.Element | null;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=ImageArrows.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageArrows.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.tsx"],"names":[],"mappings":"AAOA,OAAO,EAKL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,kCAAkC,CAAC;AAK1C,UAAU,gBAAgB;IACxB,IAAI,EAAE,gBAAgB,CAAC;IAEvB,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,uCAkDlD,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useMemo } from 'react';
|
|
3
|
+
import { useAnnotator, useViewer, } from '@annotorious/react';
|
|
4
|
+
import { isArrowAnchor, OSDArrowPopup, OSDArrowsPlugin, } from '@annotorious/plugin-arrows-react';
|
|
5
|
+
import { useFilter } from '@recogito/studio-sdk/components';
|
|
6
|
+
import { useHideAll } from '../../../shared/components';
|
|
7
|
+
import { ArrowToolbar } from '../ArrowToolbar';
|
|
8
|
+
/**
|
|
9
|
+
* Arrows plugin + popup, mounted once the annotator belongs to the current
|
|
10
|
+
* viewer. On a canvas switch, the new viewer is ready before the new
|
|
11
|
+
* annotator; this avoids a throwaway mount with the stale annotator.
|
|
12
|
+
*/
|
|
13
|
+
export const ImageArrows = (props) => {
|
|
14
|
+
const anno = useAnnotator();
|
|
15
|
+
const viewer = useViewer();
|
|
16
|
+
const { hideAll } = useHideAll();
|
|
17
|
+
const { filter } = useFilter();
|
|
18
|
+
// "Hide all" only reaches Annotorious' own layer (setVisible), so
|
|
19
|
+
// hide the arrows layer too
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
if (!viewer?.element)
|
|
22
|
+
return;
|
|
23
|
+
viewer.element.classList.toggle('ia-hide-arrows', hideAll);
|
|
24
|
+
}, [viewer, hideAll]);
|
|
25
|
+
// Settings filters: hide a relation if it, or an annotation it's attached
|
|
26
|
+
// to, is filtered out
|
|
27
|
+
const arrowFilter = useMemo(() => {
|
|
28
|
+
if (!filter || !anno)
|
|
29
|
+
return undefined;
|
|
30
|
+
const { store } = anno.state;
|
|
31
|
+
return (arrow) => filter(arrow) &&
|
|
32
|
+
[arrow.target.selector.start, arrow.target.selector.end].every((end) => {
|
|
33
|
+
if (!isArrowAnchor(end))
|
|
34
|
+
return true;
|
|
35
|
+
const annotation = store.getAnnotation(end.annotationId);
|
|
36
|
+
return !annotation || filter(annotation);
|
|
37
|
+
});
|
|
38
|
+
}, [filter, anno]);
|
|
39
|
+
if (!anno || !viewer || anno.viewer !== viewer)
|
|
40
|
+
return null;
|
|
41
|
+
return (_jsxs(_Fragment, { children: [_jsx(OSDArrowsPlugin, { enabled: true, mode: props.mode, showArrows: props.visibility, filter: arrowFilter }), _jsx(OSDArrowPopup, { popup: (popupProps) => _jsx(ArrowToolbar, { ...popupProps }) })] }));
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ImageArrows/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ImageArrows';
|
package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UndoStack that doesn't auto-delete arrows (which have no bodies unless
|
|
3
|
+
* they have a category), or empty shapes that arrows are attached to (which
|
|
4
|
+
* would delete the arrows with them).
|
|
5
|
+
*/
|
|
6
|
+
export declare const ImageUndoStack: () => import("react").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=ImageUndoStack.d.ts.map
|
package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageUndoStack.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.tsx"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,eAAO,MAAM,cAAc,mCAU1B,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
import { useAnnotationStore } from '@annotorious/react';
|
|
4
|
+
import { isArrowAnchor, isArrowAnnotation, } from '@annotorious/plugin-arrows-react';
|
|
5
|
+
import { UndoStack } from '@recogito/studio-sdk/components';
|
|
6
|
+
const isConnectedTo = (id) => (a) => {
|
|
7
|
+
if (!isArrowAnnotation(a))
|
|
8
|
+
return false;
|
|
9
|
+
const { start, end } = a.target.selector;
|
|
10
|
+
return ((isArrowAnchor(start) && start.annotationId === id) ||
|
|
11
|
+
(isArrowAnchor(end) && end.annotationId === id));
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* UndoStack that doesn't auto-delete arrows (which have no bodies unless
|
|
15
|
+
* they have a category), or empty shapes that arrows are attached to (which
|
|
16
|
+
* would delete the arrows with them).
|
|
17
|
+
*/
|
|
18
|
+
export const ImageUndoStack = () => {
|
|
19
|
+
const store = useAnnotationStore();
|
|
20
|
+
const keepEmpty = useCallback((a) => isArrowAnnotation(a) || !!store?.all().some(isConnectedTo(a.id)), [store]);
|
|
21
|
+
return _jsx(UndoStack, { undoEmpty: true, keepEmpty: keepEmpty });
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ImageUndoStack';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { CozyCanvas, CozyImageResource } from 'cozy-iiif';
|
|
2
|
+
import type { ActiveUsers } from '../../hooks';
|
|
3
|
+
interface ContentsProps {
|
|
4
|
+
canvases: CozyCanvas[];
|
|
5
|
+
currentCanvas?: CozyCanvas;
|
|
6
|
+
image?: CozyImageResource;
|
|
7
|
+
documentName: string;
|
|
8
|
+
authToken?: string;
|
|
9
|
+
activeUsers?: ActiveUsers;
|
|
10
|
+
onSelectCanvas(canvas: CozyCanvas): void;
|
|
11
|
+
}
|
|
12
|
+
export declare const Contents: (props: ContentsProps) => import("react").JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=Contents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Contents.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,UAAU,aAAa;IACrB,QAAQ,EAAE,UAAU,EAAE,CAAC;IAEvB,aAAa,CAAC,EAAE,UAAU,CAAC;IAE3B,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAE1B,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1C;AAED,eAAO,MAAM,QAAQ,GAAI,OAAO,aAAa,gCA8E5C,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useTranslation } from 'react-i18next';
|
|
4
|
+
import { ImageIcon } from '@phosphor-icons/react';
|
|
5
|
+
import { IIIFThumbnail } from '@recogito/studio-sdk/components';
|
|
6
|
+
export const Contents = (props) => {
|
|
7
|
+
const { t, i18n } = useTranslation();
|
|
8
|
+
const items = useMemo(() => {
|
|
9
|
+
if (props.canvases.length > 0) {
|
|
10
|
+
return props.canvases.map((canvas, index) => ({
|
|
11
|
+
key: canvas.id,
|
|
12
|
+
label: canvas.getLabel(i18n.language) || t('Page {{n}}', { n: index + 1 }),
|
|
13
|
+
url: canvas.getThumbnailURL(),
|
|
14
|
+
current: props.currentCanvas?.id === canvas.id,
|
|
15
|
+
activeUsers: props.activeUsers?.[canvas.id] || [],
|
|
16
|
+
onSelect: () => props.onSelectCanvas(canvas),
|
|
17
|
+
}));
|
|
18
|
+
}
|
|
19
|
+
// Single (non-manifest) image resource
|
|
20
|
+
if (props.image) {
|
|
21
|
+
const image = props.image;
|
|
22
|
+
return [
|
|
23
|
+
{
|
|
24
|
+
key: image.type === 'static' ? image.url : image.serviceUrl,
|
|
25
|
+
label: props.documentName,
|
|
26
|
+
url: image.getImageURL(),
|
|
27
|
+
current: true,
|
|
28
|
+
activeUsers: [],
|
|
29
|
+
onSelect: undefined,
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
}
|
|
33
|
+
return [];
|
|
34
|
+
}, [props.canvases, props.currentCanvas, props.image, props.documentName, props.activeUsers, i18n.language]);
|
|
35
|
+
return (_jsx("ul", { className: 'ia-canvas-list', children: items.map((item) => (_jsx("li", { children: _jsxs("button", { type: 'button', className: `unstyled ia-canvas-item${item.current ? ' is-current' : ''}`, "aria-current": item.current ? 'true' : undefined, onClick: item.onSelect, children: [_jsxs("span", { className: 'ia-canvas-thumb', children: [_jsx(IIIFThumbnail, { url: item.url, authToken: props.authToken, fallback: _jsx(ImageIcon, { size: 28, weight: 'thin', "aria-hidden": 'true' }) }), item.activeUsers.length > 0 && (_jsx("ul", { className: 'ia-canvas-activity', "aria-label": t('Users active on this page'), children: item.activeUsers.slice(0, 10).map((user) => (_jsx("li", { title: user.name || t('Anonymous'), style: { backgroundColor: user.appearance.color }, children: _jsx("span", { children: user.name || t('Anonymous') }) }, user.presenceKey))) }))] }), _jsx("span", { className: 'ia-canvas-label', children: item.label })] }) }, item.key))) }));
|
|
36
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Document } from '@recogito/studio-sdk';
|
|
2
|
+
import type { CozyManifest } from 'cozy-iiif';
|
|
3
|
+
interface InfoProps {
|
|
4
|
+
document: Document;
|
|
5
|
+
manifest?: CozyManifest;
|
|
6
|
+
}
|
|
7
|
+
export declare const Info: (props: InfoProps) => import("react").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=Info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Info.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAO9C,UAAU,SAAS;IACjB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAUD,eAAO,MAAM,IAAI,GAAI,OAAO,SAAS,gCAsDpC,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
import { MetadataList, isValidURL, } from '../../../shared/components/Metadata';
|
|
4
|
+
const formatDate = (value) => value
|
|
5
|
+
? new Date(value).toLocaleString(undefined, {
|
|
6
|
+
dateStyle: 'medium',
|
|
7
|
+
timeStyle: 'short',
|
|
8
|
+
})
|
|
9
|
+
: '';
|
|
10
|
+
export const Info = (props) => {
|
|
11
|
+
const { t, i18n } = useTranslation();
|
|
12
|
+
const { document } = props;
|
|
13
|
+
// Metadata declared in the IIIF manifest (label/value pairs)
|
|
14
|
+
const toText = (value) => value == null ? '' : String(value);
|
|
15
|
+
const manifestItems = (props.manifest?.getMetadata(i18n.language) || [])
|
|
16
|
+
.map((entry) => ({
|
|
17
|
+
label: toText(entry.label),
|
|
18
|
+
value: toText(entry.value),
|
|
19
|
+
}))
|
|
20
|
+
.filter((item) => item.label && item.value);
|
|
21
|
+
// Database metadata
|
|
22
|
+
const documentItems = [
|
|
23
|
+
{ label: t('Name'), value: document.name },
|
|
24
|
+
{ label: t('Type'), value: document.content_type || '' },
|
|
25
|
+
{ label: t('Source'), value: document.meta_data?.url || '' },
|
|
26
|
+
{ label: t('Created'), value: formatDate(document.created_at) },
|
|
27
|
+
{ label: t('Updated'), value: formatDate(document.updated_at) },
|
|
28
|
+
].filter((item) =>
|
|
29
|
+
// Only show a source that is an actual (linkable) URL, not a storage path
|
|
30
|
+
item.value && (item.label !== t('Source') || isValidURL(item.value)));
|
|
31
|
+
if (manifestItems.length === 0 && documentItems.length === 0) {
|
|
32
|
+
return (_jsx("div", { className: 'metadata-empty', children: t('No document metadata available.') }));
|
|
33
|
+
}
|
|
34
|
+
return (_jsxs("div", { className: 'metadata-sections', children: [manifestItems.length > 0 && (_jsxs("section", { children: [_jsx("h4", { className: 'metadata-section-title', children: t('Manifest') }), _jsx(MetadataList, { items: manifestItems })] })), documentItems.length > 0 && (_jsxs("section", { children: [_jsx("h4", { className: 'metadata-section-title', children: t('Document') }), _jsx(MetadataList, { items: documentItems })] }))] }));
|
|
35
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
.ia-canvas-list {
|
|
2
|
+
list-style: none;
|
|
3
|
+
margin: 0;
|
|
4
|
+
padding: 0;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.ia-canvas-list > li + li {
|
|
8
|
+
margin-top: 1.5rem;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
button.ia-canvas-item {
|
|
12
|
+
display: flex;
|
|
13
|
+
flex-direction: column;
|
|
14
|
+
align-items: center;
|
|
15
|
+
gap: 0.5rem;
|
|
16
|
+
width: 100%;
|
|
17
|
+
height: auto;
|
|
18
|
+
padding: 0.25rem;
|
|
19
|
+
border-radius: var(--border-radius);
|
|
20
|
+
cursor: pointer;
|
|
21
|
+
color: var(--font-dark);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
button.ia-canvas-item:not(:disabled):hover {
|
|
25
|
+
box-shadow: none;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.ia-canvas-thumb {
|
|
29
|
+
position: relative;
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
justify-content: center;
|
|
33
|
+
flex: 0 0 auto;
|
|
34
|
+
box-sizing: border-box;
|
|
35
|
+
width: 180px;
|
|
36
|
+
height: 180px;
|
|
37
|
+
max-width: 100%;
|
|
38
|
+
background-color: var(--gray-100);
|
|
39
|
+
border: 1px solid var(--gray-200);
|
|
40
|
+
border-radius: 6px;
|
|
41
|
+
overflow: hidden;
|
|
42
|
+
color: var(--gray-500);
|
|
43
|
+
transition: box-shadow 0.15s ease;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.ia-canvas-thumb img {
|
|
47
|
+
width: 100%;
|
|
48
|
+
height: 100%;
|
|
49
|
+
object-fit: cover;
|
|
50
|
+
display: block;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.ia-canvas-item:hover .ia-canvas-thumb {
|
|
54
|
+
box-shadow: 0 0 0 1px var(--gray-300);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.ia-canvas-item.is-current .ia-canvas-thumb {
|
|
58
|
+
box-shadow: 0 0 0 3px var(--bright-blue);
|
|
59
|
+
border-color: var(--bright-blue);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.ia-canvas-label {
|
|
63
|
+
font-size: 14px;
|
|
64
|
+
line-height: 1.3;
|
|
65
|
+
text-align: center;
|
|
66
|
+
color: var(--font-dark);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* Other users active on a canvas: overlapping dots in their presence colors */
|
|
70
|
+
.ia-canvas-activity {
|
|
71
|
+
position: absolute;
|
|
72
|
+
right: 8px;
|
|
73
|
+
bottom: 8px;
|
|
74
|
+
display: flex;
|
|
75
|
+
margin: 0;
|
|
76
|
+
padding: 0;
|
|
77
|
+
list-style: none;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.ia-canvas-activity li {
|
|
81
|
+
display: block;
|
|
82
|
+
width: 12px;
|
|
83
|
+
height: 12px;
|
|
84
|
+
margin-left: -4px;
|
|
85
|
+
border: 1px solid #fff;
|
|
86
|
+
border-radius: 50%;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.ia-canvas-activity li > span {
|
|
90
|
+
position: absolute;
|
|
91
|
+
width: 1px;
|
|
92
|
+
height: 1px;
|
|
93
|
+
overflow: hidden;
|
|
94
|
+
clip: rect(0 0 0 0);
|
|
95
|
+
white-space: nowrap;
|
|
96
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Document } from '@recogito/studio-sdk';
|
|
2
|
+
import type { CozyCanvas, CozyImageResource, CozyManifest } from 'cozy-iiif';
|
|
3
|
+
import type { ActiveUsers } from '../../hooks';
|
|
4
|
+
interface MetadataPanelProps {
|
|
5
|
+
document: Document;
|
|
6
|
+
open: boolean;
|
|
7
|
+
onOpenChange(open: boolean): void;
|
|
8
|
+
canvases: CozyCanvas[];
|
|
9
|
+
currentCanvas?: CozyCanvas;
|
|
10
|
+
image?: CozyImageResource;
|
|
11
|
+
manifest?: CozyManifest;
|
|
12
|
+
authToken?: string;
|
|
13
|
+
activeUsers?: ActiveUsers;
|
|
14
|
+
onSelectCanvas(canvas: CozyCanvas): void;
|
|
15
|
+
}
|
|
16
|
+
export declare const MetadataPanel: (props: MetadataPanelProps) => import("react").JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=MetadataPanel.d.ts.map
|
package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetadataPanel.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAS7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IAEnB,IAAI,EAAE,OAAO,CAAC;IAEd,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAElC,QAAQ,EAAE,UAAU,EAAE,CAAC;IAEvB,aAAa,CAAC,EAAE,UAAU,CAAC;IAE3B,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAE1B,QAAQ,CAAC,EAAE,YAAY,CAAC;IAExB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1C;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,gCAsFtD,CAAC"}
|