mirador-annotation-editor-video 0.0.50 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/.env.sample +14 -0
  2. package/.eslintrc +37 -0
  3. package/.github/workflows/node.js.yml +25 -0
  4. package/.gitlab-ci.yml +14 -0
  5. package/.gitmodules +3 -0
  6. package/CONTRIBUTING.md +25 -0
  7. package/LICENSE.md +595 -0
  8. package/README.md +56 -42
  9. package/__fixtures__/web_annotation.json +23 -0
  10. package/__tests__/.eslintrc +5 -0
  11. package/__tests__/AnnotationCreation.test.js +56 -0
  12. package/__tests__/AnnotationExportDialog.test.js +53 -0
  13. package/__tests__/CanvasListItem.test.js +92 -0
  14. package/__tests__/LocalStorageAdapter.test.js +53 -0
  15. package/__tests__/miradorAnnotationPlugin.test.js +87 -0
  16. package/assets/2rectangle.svg +18 -0
  17. package/assets/cayenne.svg +16 -0
  18. package/babel.config.js +0 -1
  19. package/demo/src/index.html +5 -6
  20. package/demo/src/index.js +53 -28
  21. package/demo/src/manifestsCatalog.js +9 -6
  22. package/docker/Dockerfile +16 -0
  23. package/docker/entrypoint.sh +20 -0
  24. package/docker/ports.yml +6 -0
  25. package/docker/traefik.yml +19 -0
  26. package/docker-compose.yml +11 -0
  27. package/es/118n.js +17 -0
  28. package/es/AnnotationActionsContext.js +10 -0
  29. package/es/AnnotationExportDialog.js +144 -0
  30. package/es/CanvasListItem.js +183 -0
  31. package/es/IIIFUtils.js +132 -0
  32. package/es/SimpleAnnotationServerV2Adapter.js +236 -0
  33. package/es/SingleCanvasDialog.js +82 -0
  34. package/es/TextEditor.js +50 -0
  35. package/es/annotationAdapter/AnnotationAdapterUtils.js +10 -0
  36. package/es/annotationAdapter/AnnototAdapter.js +81 -0
  37. package/es/annotationAdapter/LocalStorageAdapter.js +79 -0
  38. package/es/annotationForm/AdvancedAnnotationEditor.js +65 -0
  39. package/es/annotationForm/AnnotationForm.js +209 -0
  40. package/es/annotationForm/AnnotationFormBody.js +124 -0
  41. package/es/annotationForm/AnnotationFormFooter.js +66 -0
  42. package/es/annotationForm/AnnotationFormHeader.js +68 -0
  43. package/es/annotationForm/AnnotationFormOverlay/AnnotationDrawing.js +599 -0
  44. package/es/annotationForm/AnnotationFormOverlay/AnnotationFormOverlay.js +165 -0
  45. package/es/annotationForm/AnnotationFormOverlay/AnnotationFormOverlayTool.js +154 -0
  46. package/es/annotationForm/AnnotationFormOverlay/AnnotationFormOverlayToolOptions.js +228 -0
  47. package/es/annotationForm/AnnotationFormOverlay/ImageFormField.js +65 -0
  48. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/FragmentSelector.js +81 -0
  49. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/KonvaUtils.js +158 -0
  50. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/SpatialTarget.js +80 -0
  51. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ArrowNode.js +92 -0
  52. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/CircleNode.js +94 -0
  53. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ColorPicker.js +147 -0
  54. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/EllipseNode.js +92 -0
  55. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Freehand.js +95 -0
  56. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Image.js +97 -0
  57. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/LineNode.js +68 -0
  58. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ParentComponent.js +171 -0
  59. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Polygon.js +94 -0
  60. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Rectangle.js +96 -0
  61. package/es/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/TextNode.js +90 -0
  62. package/es/annotationForm/AnnotationFormOverlay/ShapesList.js +73 -0
  63. package/es/annotationForm/AnnotationFormTemplateSelector.js +74 -0
  64. package/es/annotationForm/AnnotationFormUtils.js +259 -0
  65. package/es/annotationForm/Debug.js +143 -0
  66. package/es/annotationForm/DrawingTemplate.js +259 -0
  67. package/es/annotationForm/HMSInput.js +127 -0
  68. package/es/annotationForm/IIIFTemplate.js +82 -0
  69. package/es/annotationForm/ImageCommentTemplate.js +256 -0
  70. package/es/annotationForm/ManifestNetworkFormSection.js +75 -0
  71. package/es/annotationForm/NetworkCommentTemplate.js +144 -0
  72. package/es/annotationForm/TaggingTemplate.js +126 -0
  73. package/es/annotationForm/TargetFormSection.js +121 -0
  74. package/es/annotationForm/TargetSpatialInput.js +141 -0
  75. package/es/annotationForm/TargetTimeInput.js +207 -0
  76. package/es/annotationForm/TextCommentTemplate.js +122 -0
  77. package/es/annotationForm/TextFormSection.js +45 -0
  78. package/es/annotationForm/WhoAndWhenFormSection.js +57 -0
  79. package/es/annotationForm/debug.css +4 -0
  80. package/es/{wrapper/AnnotationCreationWindowWrapper.js → containers/miradorAnnotationPlugin.js} +6 -5
  81. package/es/icons/Cursor.js +30 -0
  82. package/es/{plugin/MiradorAnnotationEditionVideoPlugin.js → index.js} +20 -19
  83. package/es/locales/locales.js +13 -0
  84. package/es/locales/locales_en.js +89 -0
  85. package/es/locales/locales_fr.js +89 -0
  86. package/es/playerReferences.js +373 -0
  87. package/es/{wrapper/AnnotationCreationCompanionWindowWrapper.js → plugins/annotationCreationCompanionWindow.js} +8 -9
  88. package/es/plugins/canvasAnnotationsPlugin.js +167 -0
  89. package/es/plugins/externalStorageAnnotationPlugin.js +98 -0
  90. package/es/plugins/miradorAnnotationPlugin.js +114 -0
  91. package/es/plugins/windowSideBarButtonsPlugin.js +40 -0
  92. package/jest.config.js +17 -0
  93. package/package.json +66 -23
  94. package/setupJest.js +4 -0
  95. package/src/118n.js +14 -0
  96. package/src/AnnotationActionsContext.js +5 -0
  97. package/src/AnnotationExportDialog.js +157 -0
  98. package/src/CanvasListItem.js +208 -0
  99. package/src/IIIFUtils.js +155 -0
  100. package/src/SimpleAnnotationServerV2Adapter.js +238 -0
  101. package/src/SingleCanvasDialog.js +85 -0
  102. package/src/TextEditor.js +44 -0
  103. package/src/annotationAdapter/AnnotationAdapterUtils.js +4 -0
  104. package/src/annotationAdapter/AnnototAdapter.js +80 -0
  105. package/src/annotationAdapter/LocalStorageAdapter.js +74 -0
  106. package/src/annotationForm/AdvancedAnnotationEditor.js +64 -0
  107. package/src/annotationForm/AnnotationForm.js +244 -0
  108. package/src/annotationForm/AnnotationFormBody.js +204 -0
  109. package/src/annotationForm/AnnotationFormFooter.js +65 -0
  110. package/src/annotationForm/AnnotationFormHeader.js +73 -0
  111. package/src/annotationForm/AnnotationFormOverlay/AnnotationDrawing.js +649 -0
  112. package/src/annotationForm/AnnotationFormOverlay/AnnotationFormOverlay.js +192 -0
  113. package/src/annotationForm/AnnotationFormOverlay/AnnotationFormOverlayTool.js +219 -0
  114. package/src/annotationForm/AnnotationFormOverlay/AnnotationFormOverlayToolOptions.js +264 -0
  115. package/src/annotationForm/AnnotationFormOverlay/ImageFormField.js +58 -0
  116. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/FragmentSelector.js +86 -0
  117. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/KonvaUtils.js +157 -0
  118. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/SpatialTarget.js +85 -0
  119. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ArrowNode.js +87 -0
  120. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/CircleNode.js +95 -0
  121. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ColorPicker.js +179 -0
  122. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/EllipseNode.js +87 -0
  123. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Freehand.js +95 -0
  124. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Image.js +99 -0
  125. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/LineNode.js +70 -0
  126. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/ParentComponent.js +207 -0
  127. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Polygon.js +95 -0
  128. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/Rectangle.js +97 -0
  129. package/src/annotationForm/AnnotationFormOverlay/KonvaDrawing/shapes/TextNode.js +89 -0
  130. package/src/annotationForm/AnnotationFormOverlay/ShapesList.js +78 -0
  131. package/src/annotationForm/AnnotationFormTemplateSelector.js +80 -0
  132. package/src/annotationForm/AnnotationFormUtils.js +249 -0
  133. package/src/annotationForm/Debug.js +202 -0
  134. package/src/annotationForm/DrawingTemplate.js +279 -0
  135. package/src/annotationForm/HMSInput.js +105 -0
  136. package/src/annotationForm/IIIFTemplate.js +82 -0
  137. package/src/annotationForm/ImageCommentTemplate.js +274 -0
  138. package/src/annotationForm/ManifestNetworkFormSection.js +75 -0
  139. package/src/annotationForm/NetworkCommentTemplate.js +160 -0
  140. package/src/annotationForm/TaggingTemplate.js +141 -0
  141. package/src/annotationForm/TargetFormSection.js +130 -0
  142. package/src/annotationForm/TargetSpatialInput.js +136 -0
  143. package/src/annotationForm/TargetTimeInput.js +205 -0
  144. package/src/annotationForm/TextCommentTemplate.js +131 -0
  145. package/src/annotationForm/TextFormSection.js +41 -0
  146. package/src/annotationForm/WhoAndWhenFormSection.js +80 -0
  147. package/src/annotationForm/debug.css +4 -0
  148. package/src/containers/miradorAnnotationPlugin.js +36 -0
  149. package/src/icons/Cursor.js +24 -0
  150. package/src/index.js +28 -0
  151. package/src/locales/locales.js +8 -0
  152. package/src/locales/locales_en.js +83 -0
  153. package/src/locales/locales_fr.js +83 -0
  154. package/src/playerReferences.js +367 -0
  155. package/src/plugins/annotationCreationCompanionWindow.js +75 -0
  156. package/src/plugins/canvasAnnotationsPlugin.js +175 -0
  157. package/src/plugins/externalStorageAnnotationPlugin.js +106 -0
  158. package/src/plugins/miradorAnnotationPlugin.js +138 -0
  159. package/src/plugins/windowSideBarButtonsPlugin.js +37 -0
  160. package/webpack.config.js +6 -6
  161. package/LICENSE +0 -674
  162. package/es/locales.js +0 -96
  163. package/src/locales.js +0 -90
  164. package/src/plugin/MiradorAnnotationEditionVideoPlugin.js +0 -27
  165. package/src/wrapper/AnnotationCreationCompanionWindowWrapper.js +0 -78
  166. package/src/wrapper/AnnotationCreationWindowWrapper.js +0 -35
package/.env.sample ADDED
@@ -0,0 +1,14 @@
1
+ # Use this variable to add configurations :
2
+ # docker-compose.yml : required
3
+ # ports.yml : bind the port 300 to the $PORT variable
4
+ # traefik.yml : add traefik configurations
5
+ COMPOSE_FILE=docker-compose.yml:docker/ports.yml
6
+ # Choose between "dev" and "prod"
7
+ ENV=dev
8
+ # If you use docker/ports.yml
9
+ PORT=3000
10
+ # If you use docker/traefik.yml
11
+ # A unique name for traefik router
12
+ NAME=
13
+ # A traefik host rule ex `domain.FQDN` or `domain1.FQDN`,`domain2.FQDN`
14
+ HOST=`domain.fqdn`
package/.eslintrc ADDED
@@ -0,0 +1,37 @@
1
+ {
2
+ "env": {
3
+ "jest/globals": true
4
+ },
5
+ "extends": ["airbnb", "react-app"],
6
+ "globals": {
7
+ "page": true,
8
+ "document": true
9
+ },
10
+ "parser": "@babel/eslint-parser",
11
+ "plugins": ["jest"],
12
+ "rules": {
13
+ "import/no-extraneous-dependencies": [
14
+ "error",
15
+ {"devDependencies": true}
16
+ ],
17
+ "import/prefer-default-export": "off",
18
+ "no-console": "off",
19
+ "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }],
20
+ "require-jsdoc": ["error", {
21
+ "require": {
22
+ "FunctionDeclaration": true,
23
+ "MethodDefinition": true,
24
+ "ClassDeclaration": true,
25
+ "ArrowFunctionExpression": true,
26
+ "FunctionExpression": true
27
+ }
28
+ }],
29
+ "react/prefer-stateless-function": "off",
30
+ "sort-keys": ["error", "asc", {
31
+ "caseSensitive": false,
32
+ "natural": false
33
+ }],
34
+ "jsx-a11y/click-events-have-key-events": "off",
35
+ "jsx-a11y/no-static-element-interactions": "off"
36
+ }
37
+ }
@@ -0,0 +1,25 @@
1
+ # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
+ # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
+
4
+ name: Node.js CI
5
+
6
+ on:
7
+ push:
8
+ branches: [ master ]
9
+ pull_request:
10
+ branches: [ master ]
11
+
12
+ jobs:
13
+ build:
14
+ runs-on: ubuntu-latest
15
+
16
+ steps:
17
+ - uses: actions/checkout@v2
18
+ - name: Use Node.js 14.x
19
+ uses: actions/setup-node@v1
20
+ with:
21
+ node-version: 14.x
22
+ - run: npm install -g codecov
23
+ - run: npm install
24
+ - run: npm test
25
+ - run: codecov
package/.gitlab-ci.yml ADDED
@@ -0,0 +1,14 @@
1
+ upstream_tests:
2
+ image: docker.io/node:current
3
+ before_script:
4
+ - npm ci
5
+ script:
6
+ - npm run test:ci
7
+ artifacts:
8
+ when: always
9
+ paths:
10
+ - junit.xml
11
+ reports:
12
+ junit: junit.xml
13
+
14
+
package/.gitmodules ADDED
@@ -0,0 +1,3 @@
1
+ [submodule "mirador"]
2
+ path = mirador
3
+ url = https://github.com/ProjectMirador/mirador/tree/mui5.git
@@ -0,0 +1,25 @@
1
+ ## Prerequisites
2
+
3
+ [Node.js](http://nodejs.org/) >= 8 must be installed.
4
+
5
+ ## Installation
6
+
7
+ - Running `npm install` in the component's root directory will install everything you need for development.
8
+
9
+ ## Demo Development Server
10
+
11
+ - `npm start` will run a development server with the component's demo app at [http://localhost:3000](http://localhost:3000) with hot module reloading.
12
+
13
+ ## Running Tests
14
+
15
+ - `npm test` will run the tests once.
16
+
17
+ - `npm run test:coverage` will run the tests and produce a coverage report in `coverage/`.
18
+
19
+ - `npm run test:watch` will run the tests on every change.
20
+
21
+ ## Building
22
+
23
+ - `npm run build` will build the component for publishing to npm and also bundle the demo app.
24
+
25
+ - `npm run clean` will delete built resources.