@recogito/metaphor-annotation-plugin 0.0.0-stage → 0.0.11-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/README.md +102 -2
  2. package/dist/extensions/GoToMetaphorAnnotationView.d.ts +3 -0
  3. package/dist/extensions/GoToMetaphorAnnotationView.d.ts.map +1 -0
  4. package/dist/extensions/GoToMetaphorAnnotationView.js +14 -0
  5. package/dist/index.d.ts +4 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +37 -0
  8. package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.css +22 -0
  9. package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.d.ts +10 -0
  10. package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.d.ts.map +1 -0
  11. package/dist/pages/_components/ImageMetaphorView/ImageMetaphorView.js +136 -0
  12. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts +9 -0
  13. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts.map +1 -0
  14. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/AnnotationPanel.js +12 -0
  15. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.d.ts +11 -0
  16. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.d.ts.map +1 -0
  17. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ImageListCard.js +37 -0
  18. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts +2 -0
  19. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts.map +1 -0
  20. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/ListTab.js +70 -0
  21. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.d.ts +2 -0
  22. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.d.ts.map +1 -0
  23. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/ListTab/index.js +1 -0
  24. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.d.ts +8 -0
  25. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.d.ts.map +1 -0
  26. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedArrowAnnotation.js +20 -0
  27. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.d.ts +9 -0
  28. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.d.ts.map +1 -0
  29. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedImageAnnotation.js +25 -0
  30. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts +6 -0
  31. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts.map +1 -0
  32. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.js +16 -0
  33. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts +2 -0
  34. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts.map +1 -0
  35. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SelectedTab/index.js +1 -0
  36. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts +2 -0
  37. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts.map +1 -0
  38. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.js +10 -0
  39. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts +2 -0
  40. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts.map +1 -0
  41. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/SettingsTab/index.js +1 -0
  42. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.d.ts +2 -0
  43. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.d.ts.map +1 -0
  44. package/dist/pages/_components/ImageMetaphorView/components/AnnotationPanel/index.js +1 -0
  45. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.d.ts +3 -0
  46. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.d.ts.map +1 -0
  47. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/ArrowToolbar.js +27 -0
  48. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.d.ts +2 -0
  49. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.d.ts.map +1 -0
  50. package/dist/pages/_components/ImageMetaphorView/components/ArrowToolbar/index.js +1 -0
  51. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.d.ts +9 -0
  52. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.d.ts.map +1 -0
  53. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/FilterAdapter.js +23 -0
  54. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.d.ts +2 -0
  55. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.d.ts.map +1 -0
  56. package/dist/pages/_components/ImageMetaphorView/components/FilterAdapter/index.js +1 -0
  57. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.d.ts +11 -0
  58. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.d.ts.map +1 -0
  59. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/HoverTooltip.js +16 -0
  60. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.d.ts +2 -0
  61. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.d.ts.map +1 -0
  62. package/dist/pages/_components/ImageMetaphorView/components/HoverTooltip/index.js +1 -0
  63. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.d.ts +13 -0
  64. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.d.ts.map +1 -0
  65. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/ImageArrows.js +42 -0
  66. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.d.ts +2 -0
  67. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.d.ts.map +1 -0
  68. package/dist/pages/_components/ImageMetaphorView/components/ImageArrows/index.js +1 -0
  69. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts +7 -0
  70. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.d.ts.map +1 -0
  71. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/ImageUndoStack.js +22 -0
  72. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.d.ts +2 -0
  73. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.d.ts.map +1 -0
  74. package/dist/pages/_components/ImageMetaphorView/components/ImageUndoStack/index.js +1 -0
  75. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.d.ts +14 -0
  76. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.d.ts.map +1 -0
  77. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Contents.js +36 -0
  78. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.d.ts +9 -0
  79. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.d.ts.map +1 -0
  80. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/Info.js +35 -0
  81. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.css +96 -0
  82. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.d.ts +18 -0
  83. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.d.ts.map +1 -0
  84. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/MetadataPanel.js +33 -0
  85. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.d.ts +2 -0
  86. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.d.ts.map +1 -0
  87. package/dist/pages/_components/ImageMetaphorView/components/MetadataPanel/index.js +1 -0
  88. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.d.ts +9 -0
  89. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.d.ts.map +1 -0
  90. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/ShapeToolbar.js +20 -0
  91. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.d.ts +2 -0
  92. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.d.ts.map +1 -0
  93. package/dist/pages/_components/ImageMetaphorView/components/ShapeToolbar/index.js +1 -0
  94. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.d.ts +11 -0
  95. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.d.ts.map +1 -0
  96. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/ImageMoreTools.js +15 -0
  97. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.css +105 -0
  98. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.d.ts +22 -0
  99. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.d.ts.map +1 -0
  100. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/Toolbar.js +61 -0
  101. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.d.ts +3 -0
  102. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.d.ts.map +1 -0
  103. package/dist/pages/_components/ImageMetaphorView/components/Toolbar/index.js +2 -0
  104. package/dist/pages/_components/ImageMetaphorView/components/image-panel.css +347 -0
  105. package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.d.ts +6 -0
  106. package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.d.ts.map +1 -0
  107. package/dist/pages/_components/ImageMetaphorView/components/shared/AddProperty.js +21 -0
  108. package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.d.ts +12 -0
  109. package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.d.ts.map +1 -0
  110. package/dist/pages/_components/ImageMetaphorView/components/shared/RelationPreview.js +34 -0
  111. package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.d.ts +8 -0
  112. package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.d.ts.map +1 -0
  113. package/dist/pages/_components/ImageMetaphorView/components/shared/SetCategory.js +20 -0
  114. package/dist/pages/_components/ImageMetaphorView/components/shared/colors.d.ts +2 -0
  115. package/dist/pages/_components/ImageMetaphorView/components/shared/colors.d.ts.map +1 -0
  116. package/dist/pages/_components/ImageMetaphorView/components/shared/colors.js +17 -0
  117. package/dist/pages/_components/ImageMetaphorView/components/shared/index.d.ts +6 -0
  118. package/dist/pages/_components/ImageMetaphorView/components/shared/index.d.ts.map +1 -0
  119. package/dist/pages/_components/ImageMetaphorView/components/shared/index.js +5 -0
  120. package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.d.ts +8 -0
  121. package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.d.ts.map +1 -0
  122. package/dist/pages/_components/ImageMetaphorView/components/shared/useRelations.js +13 -0
  123. package/dist/pages/_components/ImageMetaphorView/hooks/index.d.ts +2 -0
  124. package/dist/pages/_components/ImageMetaphorView/hooks/index.d.ts.map +1 -0
  125. package/dist/pages/_components/ImageMetaphorView/hooks/index.js +1 -0
  126. package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.d.ts +17 -0
  127. package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.d.ts.map +1 -0
  128. package/dist/pages/_components/ImageMetaphorView/hooks/useMultiPagePresence.js +43 -0
  129. package/dist/pages/_components/ImageMetaphorView/index.d.ts +2 -0
  130. package/dist/pages/_components/ImageMetaphorView/index.d.ts.map +1 -0
  131. package/dist/pages/_components/ImageMetaphorView/index.js +1 -0
  132. package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.css +2055 -0
  133. package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.d.ts +10 -0
  134. package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.d.ts.map +1 -0
  135. package/dist/pages/_components/TeiMetaphorView/TeiMetaphorView.js +41 -0
  136. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.d.ts +14 -0
  137. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.d.ts.map +1 -0
  138. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/AnnotatableTEI.js +35 -0
  139. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.d.ts +2 -0
  140. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.d.ts.map +1 -0
  141. package/dist/pages/_components/TeiMetaphorView/components/AnnotatableTEI/index.js +1 -0
  142. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.css +67 -0
  143. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts +10 -0
  144. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.d.ts.map +1 -0
  145. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/AnnotationPanel.js +15 -0
  146. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.d.ts +13 -0
  147. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.d.ts.map +1 -0
  148. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListCard.js +32 -0
  149. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.css +230 -0
  150. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts +7 -0
  151. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.d.ts.map +1 -0
  152. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/ListTab.js +100 -0
  153. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.d.ts +2 -0
  154. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.d.ts.map +1 -0
  155. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/ListTab/index.js +1 -0
  156. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.css +449 -0
  157. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts +10 -0
  158. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.d.ts.map +1 -0
  159. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/SelectedTab.js +81 -0
  160. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.d.ts +11 -0
  161. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.d.ts.map +1 -0
  162. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/LinkedWordItem.js +11 -0
  163. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.d.ts +9 -0
  164. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.d.ts.map +1 -0
  165. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorLinkedWords.js +45 -0
  166. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.d.ts +8 -0
  167. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.d.ts.map +1 -0
  168. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorPreview.js +27 -0
  169. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.d.ts +10 -0
  170. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.d.ts.map +1 -0
  171. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/MetaphorTags.js +39 -0
  172. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.d.ts +8 -0
  173. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.d.ts.map +1 -0
  174. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/SpanTools.js +9 -0
  175. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.d.ts +7 -0
  176. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.d.ts.map +1 -0
  177. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/Tag.js +7 -0
  178. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.d.ts +9 -0
  179. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.d.ts.map +1 -0
  180. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/TypeSelector.js +8 -0
  181. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.d.ts +10 -0
  182. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.d.ts.map +1 -0
  183. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordTags.js +32 -0
  184. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.d.ts +7 -0
  185. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.d.ts.map +1 -0
  186. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/components/WordUplink.js +17 -0
  187. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts +2 -0
  188. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.d.ts.map +1 -0
  189. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SelectedTab/index.js +1 -0
  190. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.css +157 -0
  191. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts +2 -0
  192. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.d.ts.map +1 -0
  193. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/SettingsTab.js +12 -0
  194. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.d.ts +2 -0
  195. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.d.ts.map +1 -0
  196. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/components/AnnotationStyle.js +19 -0
  197. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts +2 -0
  198. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.d.ts.map +1 -0
  199. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/SettingsTab/index.js +1 -0
  200. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.d.ts +2 -0
  201. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.d.ts.map +1 -0
  202. package/dist/pages/_components/TeiMetaphorView/components/AnnotationPanel/index.js +1 -0
  203. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.d.ts +31 -0
  204. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.d.ts.map +1 -0
  205. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/ColorCodingState.js +64 -0
  206. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.d.ts +2 -0
  207. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.d.ts.map +1 -0
  208. package/dist/pages/_components/TeiMetaphorView/components/ColorCodingState/index.js +1 -0
  209. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.css +189 -0
  210. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.d.ts +7 -0
  211. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.d.ts.map +1 -0
  212. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/InlineToolbar.js +24 -0
  213. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.d.ts +8 -0
  214. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.d.ts.map +1 -0
  215. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateChoice.js +26 -0
  216. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.d.ts +7 -0
  217. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.d.ts.map +1 -0
  218. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/ToolbarStateSelected.js +71 -0
  219. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.d.ts +2 -0
  220. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.d.ts.map +1 -0
  221. package/dist/pages/_components/TeiMetaphorView/components/InlineToolbar/index.js +1 -0
  222. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.d.ts +8 -0
  223. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.d.ts.map +1 -0
  224. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/Info.js +41 -0
  225. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.d.ts +9 -0
  226. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.d.ts.map +1 -0
  227. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/getTeiMetadata.js +33 -0
  228. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.d.ts +2 -0
  229. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.d.ts.map +1 -0
  230. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Info/index.js +1 -0
  231. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.css +159 -0
  232. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.d.ts +9 -0
  233. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.d.ts.map +1 -0
  234. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/MetadataPanel.js +47 -0
  235. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.d.ts +6 -0
  236. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.d.ts.map +1 -0
  237. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/Toc.js +15 -0
  238. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.d.ts +7 -0
  239. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.d.ts.map +1 -0
  240. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/TocLevel.js +13 -0
  241. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.d.ts +12 -0
  242. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.d.ts.map +1 -0
  243. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/buildTableOfContents.js +97 -0
  244. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.d.ts +2 -0
  245. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.d.ts.map +1 -0
  246. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/Toc/index.js +1 -0
  247. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.d.ts +2 -0
  248. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.d.ts.map +1 -0
  249. package/dist/pages/_components/TeiMetaphorView/components/MetadataPanel/index.js +1 -0
  250. package/dist/pages/_components/TeiMetaphorView/hooks/index.d.ts +6 -0
  251. package/dist/pages/_components/TeiMetaphorView/hooks/index.d.ts.map +1 -0
  252. package/dist/pages/_components/TeiMetaphorView/hooks/index.js +5 -0
  253. package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.d.ts +3 -0
  254. package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.d.ts.map +1 -0
  255. package/dist/pages/_components/TeiMetaphorView/hooks/useAnnotationsStyle.js +138 -0
  256. package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.d.ts +5 -0
  257. package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.d.ts.map +1 -0
  258. package/dist/pages/_components/TeiMetaphorView/hooks/useIntersectingAnnotations.js +35 -0
  259. package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.d.ts +5 -0
  260. package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.d.ts.map +1 -0
  261. package/dist/pages/_components/TeiMetaphorView/hooks/useLinkedMetaphors.js +14 -0
  262. package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.d.ts +6 -0
  263. package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.d.ts.map +1 -0
  264. package/dist/pages/_components/TeiMetaphorView/hooks/useMrwOptions.js +24 -0
  265. package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.d.ts +2 -0
  266. package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.d.ts.map +1 -0
  267. package/dist/pages/_components/TeiMetaphorView/hooks/useSuggestAnnotationType.js +35 -0
  268. package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.d.ts +3 -0
  269. package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.d.ts.map +1 -0
  270. package/dist/pages/_components/TeiMetaphorView/hooks/useTagVocabulary.js +46 -0
  271. package/dist/pages/_components/TeiMetaphorView/index.d.ts +2 -0
  272. package/dist/pages/_components/TeiMetaphorView/index.d.ts.map +1 -0
  273. package/dist/pages/_components/TeiMetaphorView/index.js +1 -0
  274. package/dist/pages/_components/TeiMetaphorView/utils.d.ts +15 -0
  275. package/dist/pages/_components/TeiMetaphorView/utils.d.ts.map +1 -0
  276. package/dist/pages/_components/TeiMetaphorView/utils.js +146 -0
  277. package/dist/pages/_components/shared/components/Accordion/Accordion.css +55 -0
  278. package/dist/pages/_components/shared/components/Accordion/Accordion.d.ts +6 -0
  279. package/dist/pages/_components/shared/components/Accordion/Accordion.d.ts.map +1 -0
  280. package/dist/pages/_components/shared/components/Accordion/Accordion.js +7 -0
  281. package/dist/pages/_components/shared/components/Accordion/index.d.ts +2 -0
  282. package/dist/pages/_components/shared/components/Accordion/index.d.ts.map +1 -0
  283. package/dist/pages/_components/shared/components/Accordion/index.js +1 -0
  284. package/dist/pages/_components/shared/components/AccountActions/AccountActions.css +49 -0
  285. package/dist/pages/_components/shared/components/AccountActions/AccountActions.d.ts +2 -0
  286. package/dist/pages/_components/shared/components/AccountActions/AccountActions.d.ts.map +1 -0
  287. package/dist/pages/_components/shared/components/AccountActions/AccountActions.js +33 -0
  288. package/dist/pages/_components/shared/components/AccountActions/index.d.ts +2 -0
  289. package/dist/pages/_components/shared/components/AccountActions/index.d.ts.map +1 -0
  290. package/dist/pages/_components/shared/components/AccountActions/index.js +1 -0
  291. package/dist/pages/_components/shared/components/Conversation/Comment.d.ts +6 -0
  292. package/dist/pages/_components/shared/components/Conversation/Comment.d.ts.map +1 -0
  293. package/dist/pages/_components/shared/components/Conversation/Comment.js +12 -0
  294. package/dist/pages/_components/shared/components/Conversation/Conversation.css +93 -0
  295. package/dist/pages/_components/shared/components/Conversation/Conversation.d.ts +8 -0
  296. package/dist/pages/_components/shared/components/Conversation/Conversation.d.ts.map +1 -0
  297. package/dist/pages/_components/shared/components/Conversation/Conversation.js +55 -0
  298. package/dist/pages/_components/shared/components/Conversation/index.d.ts +2 -0
  299. package/dist/pages/_components/shared/components/Conversation/index.d.ts.map +1 -0
  300. package/dist/pages/_components/shared/components/Conversation/index.js +1 -0
  301. package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.css +218 -0
  302. package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.d.ts +23 -0
  303. package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.d.ts.map +1 -0
  304. package/dist/pages/_components/shared/components/EditorToolbar/EditorToolbar.js +13 -0
  305. package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.d.ts +8 -0
  306. package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.d.ts.map +1 -0
  307. package/dist/pages/_components/shared/components/EditorToolbar/PrivacySelector.js +9 -0
  308. package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.d.ts +2 -0
  309. package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.d.ts.map +1 -0
  310. package/dist/pages/_components/shared/components/EditorToolbar/UndoRedo.js +42 -0
  311. package/dist/pages/_components/shared/components/EditorToolbar/index.d.ts +3 -0
  312. package/dist/pages/_components/shared/components/EditorToolbar/index.d.ts.map +1 -0
  313. package/dist/pages/_components/shared/components/EditorToolbar/index.js +2 -0
  314. package/dist/pages/_components/shared/components/Filters/Filters.d.ts +6 -0
  315. package/dist/pages/_components/shared/components/Filters/Filters.d.ts.map +1 -0
  316. package/dist/pages/_components/shared/components/Filters/Filters.js +61 -0
  317. package/dist/pages/_components/shared/components/Filters/VisibilityFilter.d.ts +2 -0
  318. package/dist/pages/_components/shared/components/Filters/VisibilityFilter.d.ts.map +1 -0
  319. package/dist/pages/_components/shared/components/Filters/VisibilityFilter.js +23 -0
  320. package/dist/pages/_components/shared/components/Filters/index.d.ts +3 -0
  321. package/dist/pages/_components/shared/components/Filters/index.d.ts.map +1 -0
  322. package/dist/pages/_components/shared/components/Filters/index.js +2 -0
  323. package/dist/pages/_components/shared/components/HideAllState/HideAllState.d.ts +12 -0
  324. package/dist/pages/_components/shared/components/HideAllState/HideAllState.d.ts.map +1 -0
  325. package/dist/pages/_components/shared/components/HideAllState/HideAllState.js +9 -0
  326. package/dist/pages/_components/shared/components/HideAllState/index.d.ts +2 -0
  327. package/dist/pages/_components/shared/components/HideAllState/index.d.ts.map +1 -0
  328. package/dist/pages/_components/shared/components/HideAllState/index.js +1 -0
  329. package/dist/pages/_components/shared/components/Metadata/MetadataList.d.ts +10 -0
  330. package/dist/pages/_components/shared/components/Metadata/MetadataList.d.ts.map +1 -0
  331. package/dist/pages/_components/shared/components/Metadata/MetadataList.js +11 -0
  332. package/dist/pages/_components/shared/components/Metadata/index.d.ts +3 -0
  333. package/dist/pages/_components/shared/components/Metadata/index.d.ts.map +1 -0
  334. package/dist/pages/_components/shared/components/Metadata/index.js +2 -0
  335. package/dist/pages/_components/shared/components/Metadata/sanitize.d.ts +3 -0
  336. package/dist/pages/_components/shared/components/Metadata/sanitize.d.ts.map +1 -0
  337. package/dist/pages/_components/shared/components/Metadata/sanitize.js +53 -0
  338. package/dist/pages/_components/shared/components/StorageAdapter.d.ts +8 -0
  339. package/dist/pages/_components/shared/components/StorageAdapter.d.ts.map +1 -0
  340. package/dist/pages/_components/shared/components/StorageAdapter.js +12 -0
  341. package/dist/pages/_components/shared/components/SupabaseStorageAdapter.d.ts +23 -0
  342. package/dist/pages/_components/shared/components/SupabaseStorageAdapter.d.ts.map +1 -0
  343. package/dist/pages/_components/shared/components/SupabaseStorageAdapter.js +46 -0
  344. package/dist/pages/_components/shared/components/Tabs/Tabs.css +90 -0
  345. package/dist/pages/_components/shared/components/Tabs/Tabs.d.ts +6 -0
  346. package/dist/pages/_components/shared/components/Tabs/Tabs.d.ts.map +1 -0
  347. package/dist/pages/_components/shared/components/Tabs/Tabs.js +6 -0
  348. package/dist/pages/_components/shared/components/Tabs/index.d.ts +2 -0
  349. package/dist/pages/_components/shared/components/Tabs/index.d.ts.map +1 -0
  350. package/dist/pages/_components/shared/components/Tabs/index.js +1 -0
  351. package/dist/pages/_components/shared/components/index.d.ts +9 -0
  352. package/dist/pages/_components/shared/components/index.d.ts.map +1 -0
  353. package/dist/pages/_components/shared/components/index.js +8 -0
  354. package/dist/pages/_components/shared/hooks/index.d.ts +2 -0
  355. package/dist/pages/_components/shared/hooks/index.d.ts.map +1 -0
  356. package/dist/pages/_components/shared/hooks/index.js +1 -0
  357. package/dist/pages/_components/shared/hooks/useDocument.d.ts +3 -0
  358. package/dist/pages/_components/shared/hooks/useDocument.d.ts.map +1 -0
  359. package/dist/pages/_components/shared/hooks/useDocument.js +14 -0
  360. package/dist/pages/_components/shared/hooks/useDocumentLayers.d.ts +6 -0
  361. package/dist/pages/_components/shared/hooks/useDocumentLayers.d.ts.map +1 -0
  362. package/dist/pages/_components/shared/hooks/useDocumentLayers.js +18 -0
  363. package/dist/pages/_components/shared/hooks/useLayerPolicies.d.ts +3 -0
  364. package/dist/pages/_components/shared/hooks/useLayerPolicies.d.ts.map +1 -0
  365. package/dist/pages/_components/shared/hooks/useLayerPolicies.js +16 -0
  366. package/dist/pages/_components/shared/hooks/useSelectAction.d.ts +18 -0
  367. package/dist/pages/_components/shared/hooks/useSelectAction.d.ts.map +1 -0
  368. package/dist/pages/_components/shared/hooks/useSelectAction.js +26 -0
  369. package/dist/pages/_components/shared/hooks/useStoredFileDocument.d.ts +5 -0
  370. package/dist/pages/_components/shared/hooks/useStoredFileDocument.d.ts.map +1 -0
  371. package/dist/pages/_components/shared/hooks/useStoredFileDocument.js +22 -0
  372. package/dist/pages/_components/shared/i18n.d.ts +4 -0
  373. package/dist/pages/_components/shared/i18n.d.ts.map +1 -0
  374. package/dist/pages/_components/shared/i18n.js +31 -0
  375. package/dist/pages/_components/shared/supabase.d.ts +7 -0
  376. package/dist/pages/_components/shared/supabase.d.ts.map +1 -0
  377. package/dist/pages/_components/shared/supabase.js +7 -0
  378. package/dist/pages/_components/shared/types.d.ts +16 -0
  379. package/dist/pages/_components/shared/types.d.ts.map +1 -0
  380. package/dist/pages/_components/shared/types.js +1 -0
  381. package/dist/pages/metaphor-annotation-view.astro +122 -0
  382. package/package.json +69 -4
@@ -0,0 +1,218 @@
1
+ #editor-toolbar {
2
+ width: 100%;
3
+ height: 4.25rem;
4
+ min-height: 4.25rem;
5
+ max-height: 4.25rem;
6
+ display: flex;
7
+ gap: 1rem;
8
+ align-items: center;
9
+ margin: 0;
10
+ padding: 0 1rem;
11
+ box-sizing: border-box;
12
+ }
13
+
14
+ nav#breadcrumbs {
15
+ flex: 1 1 auto;
16
+ min-width: 0;
17
+ }
18
+
19
+ nav#breadcrumbs ol {
20
+ display: flex;
21
+ align-items: center;
22
+ list-style: none;
23
+ gap: 0.5rem;
24
+ margin: 0;
25
+ padding: 0.5rem 0;
26
+ width: 100%;
27
+ }
28
+
29
+ nav#breadcrumbs ol li {
30
+ display: flex;
31
+ align-items: center;
32
+ min-width: 0;
33
+ flex-shrink: 0;
34
+ }
35
+
36
+ nav#breadcrumbs ol li span,
37
+ nav#breadcrumbs ol li a {
38
+ white-space: nowrap;
39
+ overflow: hidden;
40
+ text-overflow: ellipsis;
41
+ min-width: 0;
42
+ }
43
+
44
+ nav#breadcrumbs ol li:not(:last-of-type)::after {
45
+ content: '/';
46
+ margin-left: 0.5rem;
47
+ flex-shrink: 0;
48
+ }
49
+
50
+ nav#breadcrumbs ol li a.project {
51
+ color: var(--font-dark);
52
+ background-color: var(--gray-100);
53
+ padding: 0 0.75rem;
54
+ border-radius: 0.5rem;
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ height: 2.375rem;
59
+ }
60
+
61
+ nav#breadcrumbs ol li:not([aria-current='page']) {
62
+ font-size: var(--font-small);
63
+ font-weight: 500;
64
+ }
65
+
66
+ nav#breadcrumbs ol li[aria-current='page'] {
67
+ font-size: 1.125rem;
68
+ font-weight: 600;
69
+ flex: 0 1 auto;
70
+ }
71
+
72
+ #editor-toolbar .toolbar-tools {
73
+ display: flex;
74
+ align-items: center;
75
+ flex: 0 0 auto;
76
+ }
77
+
78
+ #editor-toolbar .toolbar-right-controls {
79
+ display: flex;
80
+ align-items: center;
81
+ gap: 8px;
82
+ }
83
+
84
+ .anno-toolbar-presence button {
85
+ border-radius: 50%;
86
+ color: var(--font-dark);
87
+ flex: 0 0 auto;
88
+ flex-shrink: 0;
89
+ height: 36px;
90
+ vertical-align: bottom;
91
+ width: 36px;
92
+ background: transparent;
93
+ border: none;
94
+ border-radius: 50%;
95
+ box-shadow: none;
96
+ height: 36px;
97
+ min-width: auto;
98
+ outline: none;
99
+ padding: 0;
100
+ vertical-align: bottom;
101
+ width: 36px;
102
+ }
103
+
104
+ .anno-toolbar-presence button:disabled {
105
+ background-color: transparent;
106
+ border-color: transparent;
107
+ }
108
+
109
+ .anno-toolbar-presence button.active {
110
+ background-color: var(--bright-blue);
111
+ color: #fff;
112
+ }
113
+
114
+ .anno-toolbar-presence button.active svg {
115
+ color: #fff;
116
+ }
117
+
118
+ /* Privacy selector */
119
+ button.unstyled.privacy-selector-trigger {
120
+ display: flex;
121
+ align-items: center;
122
+ gap: 6px;
123
+ padding: 6px 10px;
124
+ border-radius: 6px;
125
+ font-size: 13px;
126
+ font-family: Inter, sans-serif;
127
+ cursor: pointer;
128
+ transition: all 0.15s ease-in-out;
129
+ }
130
+
131
+ button.unstyled.privacy-selector-trigger {
132
+ background-color: var(--gray-100);
133
+ }
134
+
135
+ button.unstyled.privacy-selector-trigger:hover {
136
+ background-color: var(--gray-300);
137
+ }
138
+
139
+ button.unstyled.privacy-selector-trigger svg {
140
+ margin: 0;
141
+ }
142
+
143
+ button.unstyled.privacy-selector-trigger .dropdown-indicator {
144
+ left: 0;
145
+ }
146
+
147
+ .privacy-dropdown-content {
148
+ width: 280px;
149
+ }
150
+
151
+ .privacy-dropdown-item {
152
+ display: flex;
153
+ flex-direction: column;
154
+ align-items: flex-start;
155
+ border-radius: 4px;
156
+ outline: none;
157
+ cursor: pointer;
158
+ position: relative;
159
+ }
160
+
161
+ .privacy-item-indicator {
162
+ position: absolute;
163
+ top: 8px;
164
+ right: 8px;
165
+ display: flex;
166
+ align-items: center;
167
+ justify-content: center;
168
+ }
169
+
170
+ .privacy-item-header {
171
+ display: flex;
172
+ align-items: center;
173
+ gap: 4px;
174
+ font-weight: 600;
175
+ font-size: 13px;
176
+ padding: 4px 0;
177
+ }
178
+
179
+ .privacy-item-description {
180
+ font-size: 12px;
181
+ line-height: 1.5;
182
+ color: var(--font-light);
183
+ margin: 0;
184
+ }
185
+
186
+ .toolbar-right-controls *:is(button, a.button) + *:is(button, a.button).redo {
187
+ margin-left: 0;
188
+ }
189
+
190
+ /* Keyboard-shortcut hint shown in the undo/redo tooltips */
191
+ .tooltip-shortcut {
192
+ display: inline-flex;
193
+ align-items: center;
194
+ gap: 8px;
195
+ white-space: nowrap;
196
+ }
197
+
198
+ .tooltip-keys {
199
+ display: inline-flex;
200
+ align-items: center;
201
+ gap: 3px;
202
+ }
203
+
204
+ .tooltip-kbd {
205
+ display: inline-flex;
206
+ align-items: center;
207
+ justify-content: center;
208
+ min-width: 18px;
209
+ height: 18px;
210
+ padding: 0 4px;
211
+ border-radius: 4px;
212
+ background-color: var(--gray-100);
213
+ color: var(--font-dark);
214
+ font-family: inherit;
215
+ font-size: 11px;
216
+ font-weight: 600;
217
+ line-height: 1;
218
+ }
@@ -0,0 +1,23 @@
1
+ import type { ReactNode } from 'react';
2
+ import { type Context, type Document, type Project } from '@recogito/studio-sdk';
3
+ import { PresentUser } from '@annotorious/react';
4
+ import { PrivacyMode } from './PrivacySelector';
5
+ interface EditorToolbarProps {
6
+ annotationsOpen: boolean;
7
+ annotationsOpenButtonRef?: React.RefObject<HTMLButtonElement | null>;
8
+ context: Context;
9
+ document: Document;
10
+ tools?: ReactNode;
11
+ moreMenu?: ReactNode;
12
+ metadataOpen?: boolean;
13
+ metadataOpenButtonRef?: React.RefObject<HTMLButtonElement | null>;
14
+ onAnnotationsOpenChange(open: boolean): void;
15
+ onMetadataOpenChange?(open: boolean): void;
16
+ present: PresentUser[];
17
+ project: Project;
18
+ privacy: PrivacyMode;
19
+ onChangePrivacy(mode: PrivacyMode): void;
20
+ }
21
+ export declare const EditorToolbar: (props: EditorToolbarProps) => import("react").JSX.Element;
22
+ export {};
23
+ //# sourceMappingURL=EditorToolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorToolbar.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/EditorToolbar/EditorToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,OAAO,EACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAmB,MAAM,mBAAmB,CAAC;AAIjE,UAAU,kBAAkB;IAC1B,eAAe,EAAE,OAAO,CAAC;IAEzB,wBAAwB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAErE,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,qBAAqB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAElE,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE7C,oBAAoB,CAAC,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAE3C,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,OAAO,EAAE,OAAO,CAAC;IAEjB,OAAO,EAAE,WAAW,CAAC;IAErB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CAC1C;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,gCAgGtD,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useTranslation } from 'react-i18next';
3
+ import * as Tooltip from '@radix-ui/react-tooltip';
4
+ import { SidebarSimpleIcon } from '@phosphor-icons/react';
5
+ import { PresenceStack } from '@recogito/studio-sdk/components';
6
+ import { PrivacySelector } from './PrivacySelector';
7
+ import { UndoRedo } from './UndoRedo';
8
+ import { AccountActions } from '../AccountActions';
9
+ export const EditorToolbar = (props) => {
10
+ const { t, i18n } = useTranslation();
11
+ return (_jsx(Tooltip.Provider, { delayDuration: 300, children: _jsxs("header", { id: 'editor-toolbar', children: [props.onMetadataOpenChange && (_jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx("button", { ref: props.metadataOpenButtonRef, className: 'compact', "aria-label": t('Open or close metadata panel'), onClick: () => props.onMetadataOpenChange(!props.metadataOpen), children: _jsx(SidebarSimpleIcon, { size: 18 }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 6, children: [t('Open or close metadata panel'), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] })), _jsx("nav", { id: 'breadcrumbs', children: _jsxs("ol", { children: [_jsx("li", { children: _jsx("a", { className: 'project', href: `/${i18n.language}/projects/${props.project.id}`, children: props.project.name }) }), _jsx("li", { children: _jsx("span", { children: props.context.name ||
12
+ t('Project Baselayer', { ns: 'project-assignments' }) }) }), _jsx("li", { "aria-current": 'page', children: _jsx("span", { children: props.document.name }) })] }) }), props.tools && _jsx("div", { className: 'toolbar-tools', children: props.tools }), _jsxs("div", { className: 'toolbar-right-controls', children: [props.present.length > 1 && (_jsx("div", { className: 'anno-toolbar-section anno-toolbar-presence', children: _jsx(PresenceStack, { present: props.present }) })), props.moreMenu ? (_jsxs(_Fragment, { children: [_jsx(UndoRedo, {}), props.moreMenu] })) : (_jsxs(_Fragment, { children: [_jsx(PrivacySelector, { mode: props.privacy, onChangeMode: props.onChangePrivacy }), _jsx(UndoRedo, {})] })), _jsx(AccountActions, {}), _jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx("button", { ref: props.annotationsOpenButtonRef, className: 'compact', "aria-label": t('Open or close annotation panel'), onClick: () => props.onAnnotationsOpenChange(!props.annotationsOpen), children: _jsx(SidebarSimpleIcon, { size: 18, mirrored: true }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 6, children: [t('Open or close annotation panel'), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] })] })] }) }));
13
+ };
@@ -0,0 +1,8 @@
1
+ export type PrivacyMode = 'public' | 'private';
2
+ interface PrivacySelectorProps {
3
+ mode: PrivacyMode;
4
+ onChangeMode(mode: PrivacyMode): void;
5
+ }
6
+ export declare const PrivacySelector: (props: PrivacySelectorProps) => import("react").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=PrivacySelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrivacySelector.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/EditorToolbar/PrivacySelector.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/C,UAAU,oBAAoB;IAC5B,IAAI,EAAE,WAAW,CAAC;IAElB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CACvC;AAED,eAAO,MAAM,eAAe,GAAI,OAAO,oBAAoB,gCA2F1D,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useTranslation } from 'react-i18next';
3
+ import * as Dropdown from '@radix-ui/react-dropdown-menu';
4
+ import * as Tooltip from '@radix-ui/react-tooltip';
5
+ import { CaretDownIcon, DetectiveIcon, UsersIcon, CheckIcon, } from '@phosphor-icons/react';
6
+ export const PrivacySelector = (props) => {
7
+ const { t } = useTranslation();
8
+ return (_jsx(Tooltip.Provider, { delayDuration: 300, children: _jsxs(Dropdown.Root, { children: [_jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx(Dropdown.Trigger, { asChild: true, children: _jsxs("button", { className: 'unstyled privacy-selector-trigger', "aria-label": t('Annotation visibility'), children: [props.mode === 'private' ? (_jsx(DetectiveIcon, { size: 16, weight: 'bold' })) : (_jsx(UsersIcon, { size: 16, weight: 'bold' })), _jsx("span", { children: props.mode === 'private' ? t('Private') : t('Public') }), _jsx(CaretDownIcon, { size: 14, weight: 'bold', className: 'dropdown-indicator' })] }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 4, children: [t('Annotation visibility'), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] }), _jsx(Dropdown.Portal, { children: _jsx(Dropdown.Content, { align: 'end', className: 'dropdown-content privacy-dropdown-content', sideOffset: 4, children: _jsxs(Dropdown.RadioGroup, { value: props.mode, onValueChange: (v) => props.onChangeMode(v), children: [_jsxs(Dropdown.RadioItem, { value: 'private', className: 'dropdown-item privacy-dropdown-item', children: [_jsx(Dropdown.ItemIndicator, { className: 'privacy-item-indicator', children: _jsx(CheckIcon, { size: 16, weight: 'bold' }) }), _jsxs("div", { className: 'privacy-item-header', children: [_jsx(DetectiveIcon, { size: 16, weight: 'bold' }), _jsx("span", { children: t('Private') })] }), _jsx("p", { className: 'privacy-item-description', children: t('Annotations you create in Private mode will be visible to no-one except you.') })] }), _jsxs(Dropdown.RadioItem, { value: 'public', className: 'dropdown-item privacy-dropdown-item', children: [_jsx(Dropdown.ItemIndicator, { className: 'privacy-item-indicator', children: _jsx(CheckIcon, { size: 16, weight: 'bold' }) }), _jsxs("div", { className: 'privacy-item-header', children: [_jsx(UsersIcon, { size: 16, weight: 'bold' }), _jsx("span", { children: t('Public') })] }), _jsx("p", { className: 'privacy-item-description', children: t('Public annotations are visible to anyone with access to this document. This may include invited users or the general public.') })] })] }) }) })] }) }));
9
+ };
@@ -0,0 +1,2 @@
1
+ export declare const UndoRedo: () => import("react").JSX.Element;
2
+ //# sourceMappingURL=UndoRedo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UndoRedo.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/EditorToolbar/UndoRedo.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,QAAQ,mCAoFpB,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useState } from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+ import * as Tooltip from '@radix-ui/react-tooltip';
5
+ import { ArrowUUpLeftIcon, ArrowUUpRightIcon } from '@phosphor-icons/react';
6
+ import { useAnnotator } from '@annotorious/react';
7
+ import { isMac, useUndoRedoKeys } from '@recogito/studio-sdk/components';
8
+ const ShortcutHint = (props) => (_jsxs("span", { className: 'tooltip-shortcut', children: [_jsx("span", { children: props.label }), _jsx("span", { className: 'tooltip-keys', children: props.keys.map((key) => (_jsx("kbd", { className: 'tooltip-kbd', children: key }, key))) })] }));
9
+ export const UndoRedo = () => {
10
+ const { t } = useTranslation();
11
+ const undoKeys = isMac ? ['⌘', 'Z'] : ['Ctrl', 'Z'];
12
+ const redoKeys = isMac ? ['⌘', t('Shift'), 'Z'] : ['Ctrl', 'Y'];
13
+ // use annotator's built-in undo/redo commands
14
+ const anno = useAnnotator();
15
+ useUndoRedoKeys();
16
+ const [canUndo, setCanUndo] = useState(false);
17
+ const [canRedo, setCanRedo] = useState(false);
18
+ // derive canUndo/canRedo from annotator history
19
+ const refresh = useCallback(() => {
20
+ if (!anno)
21
+ return;
22
+ const { changes, pointer } = anno.getHistory();
23
+ setCanUndo(pointer > -1);
24
+ setCanRedo(changes.length - 1 > pointer);
25
+ }, [anno]);
26
+ // sync with store changes
27
+ useEffect(() => {
28
+ if (!anno)
29
+ return;
30
+ refresh();
31
+ // undo/redo update anno history only after notifying store observers;
32
+ // so refresh canUndo/canRedo afterwards
33
+ const onChange = () => queueMicrotask(refresh);
34
+ const { store } = anno.state;
35
+ store.observe(onChange);
36
+ // clean up: unsubscribe from store changes
37
+ return () => store.unobserve(onChange);
38
+ }, [anno, refresh]);
39
+ const onUndo = () => anno?.undo();
40
+ const onRedo = () => anno?.redo();
41
+ return (_jsxs(Tooltip.Provider, { delayDuration: 300, children: [_jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx("button", { className: 'compact', disabled: !canUndo, "aria-label": t('Undo'), onClick: onUndo, children: _jsx(ArrowUUpLeftIcon, { size: 18 }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 6, children: [_jsx(ShortcutHint, { label: t('Undo'), keys: undoKeys }), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] }), _jsxs(Tooltip.Root, { children: [_jsx(Tooltip.Trigger, { asChild: true, children: _jsx("button", { className: 'compact redo', disabled: !canRedo, "aria-label": t('Redo'), onClick: onRedo, children: _jsx(ArrowUUpRightIcon, { size: 18 }) }) }), _jsx(Tooltip.Portal, { children: _jsxs(Tooltip.Content, { className: 'tooltip-content', sideOffset: 6, children: [_jsx(ShortcutHint, { label: t('Redo'), keys: redoKeys }), _jsx(Tooltip.Arrow, { className: 'tooltip-arrow' })] }) })] })] }));
42
+ };
@@ -0,0 +1,3 @@
1
+ export * from './EditorToolbar';
2
+ export * from './PrivacySelector';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/EditorToolbar/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './EditorToolbar';
2
+ export * from './PrivacySelector';
@@ -0,0 +1,6 @@
1
+ interface FiltersProps {
2
+ showTags?: boolean;
3
+ }
4
+ export declare const Filters: (props: FiltersProps) => import("react").JSX.Element;
5
+ export {};
6
+ //# sourceMappingURL=Filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Filters.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Filters/Filters.tsx"],"names":[],"mappings":"AAkBA,UAAU,YAAY;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,GAAI,OAAO,YAAY,gCA+I1C,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useMemo, useState } from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+ import { useAnnotationStore } from '@annotorious/react';
5
+ import * as Switch from '@radix-ui/react-switch';
6
+ import * as Toggle from '@radix-ui/react-toggle';
7
+ import { TagIcon, UsersIcon } from '@phosphor-icons/react';
8
+ import { enumerateContributors, enumerateTags, getContributors, getTags, } from '@recogito/studio-sdk';
9
+ import { useFilterSettingsState } from '@recogito/studio-sdk/components';
10
+ import { useHideAll } from '../HideAllState';
11
+ import { VisibilityFilter } from './VisibilityFilter';
12
+ export const Filters = (props) => {
13
+ const { t } = useTranslation();
14
+ const showTags = props.showTags ?? true;
15
+ const store = useAnnotationStore();
16
+ const [annotations, setAnnotations] = useState([]);
17
+ useEffect(() => {
18
+ if (!store)
19
+ return;
20
+ // Relations (arrows, in the image view) aren't annotations in their own
21
+ // right for filtering purposes
22
+ const update = () => setAnnotations(store.all().filter((a) => a.motivation !== 'pointing'));
23
+ update();
24
+ store.observe(update);
25
+ return () => store.unobserve(update);
26
+ }, [store]);
27
+ const contributors = useMemo(() => enumerateContributors([], annotations), [annotations]);
28
+ const tags = useMemo(() => enumerateTags(annotations), [annotations]);
29
+ const { hideAll, setHideAll } = useHideAll();
30
+ const { contributorSettings, setContributorSettings, tagSettings, setTagSettings, } = useFilterSettingsState();
31
+ const selectedContributors = contributorSettings?.state || [];
32
+ const selectedTags = tagSettings?.state || [];
33
+ const onToggleContributor = (contributor) => {
34
+ const next = selectedContributors.some((u) => u.id === contributor.id)
35
+ ? selectedContributors.filter((u) => u.id !== contributor.id)
36
+ : [...selectedContributors, contributor];
37
+ if (next.length > 0) {
38
+ const showContributorIds = new Set(next.map((u) => u.id));
39
+ const filter = (a) => getContributors(a).some((u) => showContributorIds.has(u.id));
40
+ setContributorSettings({ state: next, filter });
41
+ }
42
+ else {
43
+ setContributorSettings(undefined);
44
+ }
45
+ };
46
+ const onToggleTag = (label) => {
47
+ const next = selectedTags.includes(label)
48
+ ? selectedTags.filter((l) => l !== label)
49
+ : [...selectedTags, label];
50
+ if (next.length > 0) {
51
+ const showLabels = new Set(next);
52
+ const filter = (a) => getTags(a).some((tag) => showLabels.has(tag.label));
53
+ setTagSettings({ state: next, filter });
54
+ }
55
+ else {
56
+ setTagSettings(undefined);
57
+ }
58
+ };
59
+ return (_jsxs("div", { className: 'settings-filters', children: [_jsxs("div", { className: 'settings-filters-row', children: [_jsx(Switch.Root, { id: 'hide-all-annotations', className: 'switch-root', checked: hideAll, onCheckedChange: setHideAll, children: _jsx(Switch.Thumb, { className: 'switch-thumb' }) }), _jsx("label", { htmlFor: 'hide-all-annotations', children: t('Hide all annotations') })] }), _jsx(VisibilityFilter, {}), _jsxs("div", { className: 'settings-filters-group', children: [_jsxs("h4", { className: 'settings-filters-heading', children: [_jsx(UsersIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Users')] }), contributors.length > 0 && (_jsx("div", { className: 'settings-filters-toggles', children: contributors.map((contributor) => (_jsx(Toggle.Root, { className: 'settings-filters-toggle', pressed: selectedContributors.some((u) => u.id === contributor.id), onPressedChange: () => onToggleContributor(contributor), children: contributor.name ||
60
+ t('Anonymous', { ns: 'annotation-common' }) }, contributor.id))) }))] }), showTags && (_jsxs("div", { className: 'settings-filters-group', children: [_jsxs("h4", { className: 'settings-filters-heading', children: [_jsx(TagIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Tags', { ns: 'annotation-common' })] }), tags.length > 0 && (_jsx("div", { className: 'settings-filters-toggles', children: tags.map((tag, idx) => (_jsx(Toggle.Root, { className: 'settings-filters-toggle', pressed: selectedTags.includes(tag.label), onPressedChange: () => onToggleTag(tag.label), children: tag.label }, `${tag.id || tag.label}-${idx}`))) }))] }))] }));
61
+ };
@@ -0,0 +1,2 @@
1
+ export declare const VisibilityFilter: () => import("react").JSX.Element;
2
+ //# sourceMappingURL=VisibilityFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisibilityFilter.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Filters/VisibilityFilter.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,gBAAgB,mCAsE5B,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useTranslation } from 'react-i18next';
3
+ import * as RadioGroup from '@radix-ui/react-radio-group';
4
+ import { LockIcon } from '@phosphor-icons/react';
5
+ import { Visibility as VisibilityMode, } from '@recogito/annotorious-supabase';
6
+ import { useFilterSettingsState } from '@recogito/studio-sdk/components';
7
+ export const VisibilityFilter = () => {
8
+ const { t } = useTranslation();
9
+ const { visibilitySettings, setVisibilitySettings } = useFilterSettingsState();
10
+ const onValueChange = (value) => {
11
+ if (value === 'all') {
12
+ setVisibilitySettings(undefined);
13
+ }
14
+ else {
15
+ const filter = (a) => {
16
+ const isPrivate = a.visibility === VisibilityMode.PRIVATE;
17
+ return value === 'private' ? isPrivate : !isPrivate;
18
+ };
19
+ setVisibilitySettings({ state: value, filter });
20
+ }
21
+ };
22
+ return (_jsxs("div", { className: 'settings-filters-group', children: [_jsxs("h4", { className: 'settings-filters-heading', children: [_jsx(LockIcon, { weight: 'bold', size: 16, "aria-hidden": 'true' }), t('Visibility')] }), _jsxs(RadioGroup.Root, { className: 'radio-group-root', value: visibilitySettings?.state || 'all', onValueChange: (value) => onValueChange(value), children: [_jsxs("div", { className: 'radio-group-item-wrapper', children: [_jsx(RadioGroup.Item, { className: 'radio-group-item', value: 'all', id: 'visibility-all', children: _jsx(RadioGroup.Indicator, { className: 'radio-group-indicator' }) }), _jsx("label", { htmlFor: 'visibility-all', children: t('All annotations') })] }), _jsxs("div", { className: 'radio-group-item-wrapper', children: [_jsx(RadioGroup.Item, { className: 'radio-group-item', value: 'public', id: 'visibility-public', children: _jsx(RadioGroup.Indicator, { className: 'radio-group-indicator' }) }), _jsx("label", { htmlFor: 'visibility-public', children: t('Public annotations only') })] }), _jsxs("div", { className: 'radio-group-item-wrapper', children: [_jsx(RadioGroup.Item, { className: 'radio-group-item', value: 'private', id: 'visibility-private', children: _jsx(RadioGroup.Indicator, { className: 'radio-group-indicator' }) }), _jsx("label", { htmlFor: 'visibility-private', children: t('Private annotations only') })] })] })] }));
23
+ };
@@ -0,0 +1,3 @@
1
+ export * from './Filters';
2
+ export * from './VisibilityFilter';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Filters/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Filters';
2
+ export * from './VisibilityFilter';
@@ -0,0 +1,12 @@
1
+ import { type ReactNode } from 'react';
2
+ interface HideAllContextValue {
3
+ hideAll: boolean;
4
+ setHideAll(hideAll: boolean): void;
5
+ }
6
+ interface HideAllStateProps {
7
+ children: ReactNode;
8
+ }
9
+ export declare const HideAllState: (props: HideAllStateProps) => import("react").JSX.Element;
10
+ export declare const useHideAll: () => HideAllContextValue;
11
+ export {};
12
+ //# sourceMappingURL=HideAllState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HideAllState.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/HideAllState/HideAllState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5E,UAAU,mBAAmB;IAC3B,OAAO,EAAE,OAAO,CAAC;IAEjB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC;AAKD,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,gCAQpD,CAAC;AAEF,eAAO,MAAM,UAAU,2BAAmC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext, useState } from 'react';
3
+ // @ts-ignore
4
+ const HideAllContext = createContext();
5
+ export const HideAllState = (props) => {
6
+ const [hideAll, setHideAll] = useState(false);
7
+ return (_jsx(HideAllContext.Provider, { value: { hideAll, setHideAll }, children: props.children }));
8
+ };
9
+ export const useHideAll = () => useContext(HideAllContext);
@@ -0,0 +1,2 @@
1
+ export * from './HideAllState';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/HideAllState/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './HideAllState';
@@ -0,0 +1,10 @@
1
+ export interface MetadataItem {
2
+ label: string;
3
+ value: string;
4
+ }
5
+ interface MetadataListProps {
6
+ items: MetadataItem[];
7
+ }
8
+ export declare const MetadataList: (props: MetadataListProps) => import("react").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=MetadataList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetadataList.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Metadata/MetadataList.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,iBAAiB;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,gCAuBpD,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cleanHTML, isValidURL } from './sanitize';
3
+ export const MetadataList = (props) => {
4
+ const renderValue = (item) => {
5
+ if (isValidURL(item.value)) {
6
+ return (_jsx("a", { href: item.value, target: '_blank', rel: 'noreferrer', children: item.value }));
7
+ }
8
+ return _jsx("div", { dangerouslySetInnerHTML: { __html: cleanHTML(item.value) } });
9
+ };
10
+ return (_jsx("ul", { className: 'metadata-list', children: props.items.map((item, index) => (_jsxs("li", { children: [_jsx("div", { className: 'metadata-label', children: item.label }), _jsx("div", { className: 'metadata-value', children: renderValue(item) })] }, index))) }));
11
+ };
@@ -0,0 +1,3 @@
1
+ export * from './MetadataList';
2
+ export * from './sanitize';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Metadata/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './MetadataList';
2
+ export * from './sanitize';
@@ -0,0 +1,3 @@
1
+ export declare const isValidURL: (str: string) => boolean;
2
+ export declare const cleanHTML: (str: string) => string;
3
+ //# sourceMappingURL=sanitize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../../../../../src/pages/_components/shared/components/Metadata/sanitize.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,KAAG,OAMxC,CAAC;AAIF,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,KAAG,MAiDvC,CAAC"}
@@ -0,0 +1,53 @@
1
+ export const isValidURL = (str) => {
2
+ try {
3
+ return Boolean(new URL(str));
4
+ }
5
+ catch {
6
+ return false;
7
+ }
8
+ };
9
+ // Adapted from https://gomakethings.com/how-to-sanitize-html-strings-with-vanilla-js-to-reduce-your-risk-of-xss-attacks/
10
+ export const cleanHTML = (str) => {
11
+ //Convert the string to an HTML document
12
+ const stringToHTML = () => {
13
+ const doc = new DOMParser().parseFromString(str, 'text/html');
14
+ return doc.body || document.createElement('body');
15
+ };
16
+ //Remove <script> elements
17
+ const removeScripts = (html) => {
18
+ for (const script of html.querySelectorAll('script')) {
19
+ script.remove();
20
+ }
21
+ };
22
+ //Check if the attribute is potentially dangerous
23
+ const isPossiblyDangerous = (name, value) => {
24
+ const val = value.replace(/\s+/g, '').toLowerCase();
25
+ if (['src', 'href', 'xlink:href'].includes(name)) {
26
+ if (val.includes('javascript:') || val.includes('data:text/html'))
27
+ return true;
28
+ }
29
+ return name.startsWith('on');
30
+ };
31
+ //Remove potentially dangerous attributes from an element
32
+ const removeAttributes = (elem) => {
33
+ // Loop through each attribute
34
+ // If it's dangerous, remove it
35
+ for (const { name, value } of Array.from(elem.attributes)) {
36
+ if (isPossiblyDangerous(name, value))
37
+ elem.removeAttribute(name);
38
+ }
39
+ };
40
+ // Remove dangerous stuff from the HTML document's nodes
41
+ const clean = (html) => {
42
+ for (const node of Array.from(html.children)) {
43
+ removeAttributes(node);
44
+ clean(node);
45
+ }
46
+ };
47
+ // Convert the string to HTML
48
+ const html = stringToHTML();
49
+ // Sanitize it
50
+ removeScripts(html);
51
+ clean(html);
52
+ return html.innerHTML;
53
+ };
@@ -0,0 +1,8 @@
1
+ import { type SupabasePluginProps } from './SupabaseStorageAdapter';
2
+ /**
3
+ * SupabaseStorageAdapter that also colours present users by author. Must be
4
+ * rendered inside an <AuthorColorProvider> (so `useAppearanceProvider` can read
5
+ * the author colours).
6
+ */
7
+ export declare const StorageAdapter: (props: SupabasePluginProps) => import("react").JSX.Element;
8
+ //# sourceMappingURL=StorageAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/pages/_components/shared/components/StorageAdapter.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,mBAAmB,gCAKxD,CAAC"}