1 | {
|
2 | "name": "mirador",
|
3 | "version": "4.0.0-alpha.2",
|
4 | "description": "An open-source, web-based 'multi-up' viewer that supports zoom-pan-rotate functionality, ability to display/compare simple images, and images with annotations.",
|
5 | "main": "dist/cjs/src/index.js",
|
6 | "module": "dist/es/src/index.js",
|
7 | "files": [
|
8 | "dist"
|
9 | ],
|
10 | "sideEffects": false,
|
11 | "scripts": {
|
12 | "clean": "rm -rf ./dist",
|
13 | "lint": "node_modules/.bin/eslint ./ && npm run lint:translations && npm run lint:containers",
|
14 | "lint:containers": "node ./scripts/container-lint.js",
|
15 | "lint:translations": "node ./scripts/i18n-lint.js",
|
16 | "server": "node_modules/.bin/http-server --cors",
|
17 | "test": "npm run build && npm run lint && npm run size && jest -c jest.json",
|
18 | "test:debug": "node --inspect node_modules/.bin/jest -c jest.json --runInBand",
|
19 | "test:watch": "jest -c jest.json --watch",
|
20 | "build": "NODE_ENV=production webpack --mode=production",
|
21 | "build:dev": "webpack --mode=development",
|
22 | "build:es": "mkdir -p dist/es && cp -r src dist/es && NODE_ENV=production MODULE_FORMAT=es babel dist/es -d dist/es",
|
23 | "build:cjs": "mkdir -p dist/cjs && cp -r src dist/cjs && NODE_ENV=production MODULE_FORMAT=cjs babel dist/cjs -d dist/cjs",
|
24 | "build:watch": "webpack --watch --mode=development",
|
25 | "prepublishOnly": "npm run clean && npm run build:es && npm run build:cjs && npm run build",
|
26 | "size": "bundlewatch --config bundlewatch.config.json",
|
27 | "start": "NODE_ENV=development webpack serve --open"
|
28 | },
|
29 | "license": "Apache-2.0",
|
30 | "contributors": [
|
31 | "Drew Winget <scipioaffricanus@gmail.com> (https://aeschylus.net/)",
|
32 | "Jack Reed <phillipjreed@gmail.com> (https://www.jack-reed.com)"
|
33 | ],
|
34 | "repository": "https://github.com/ProjectMirador/mirador",
|
35 | "dependencies": {
|
36 | "@emotion/cache": "^11.11.0",
|
37 | "@emotion/react": "^11.10.6",
|
38 | "@emotion/styled": "^11.10.6",
|
39 | "@hello-pangea/dnd": "^16.0.1",
|
40 | "@mui/icons-material": "^5.11.16",
|
41 | "@mui/lab": "^5.0.0-alpha.134",
|
42 | "@mui/material": "^5.13.5",
|
43 | "@mui/utils": "^5.13.1",
|
44 | "@mui/x-tree-view": "^6.17.0",
|
45 | "@react-aria/live-announcer": "^3.1.2",
|
46 | "@redux-devtools/extension": "^3.3.0",
|
47 | "classnames": "^2.2.6",
|
48 | "deepmerge": "^4.2.2",
|
49 | "dompurify": "^3.0.0",
|
50 | "i18next": "^21.0.0 || ^22.0.0 || ^23.0.0",
|
51 | "lodash": "^4.17.11",
|
52 | "manifesto.js": "^4.2.0",
|
53 | "normalize-url": "^4.5.0",
|
54 | "openseadragon": "^2.4.2 || ^3.0.0 || ^4.0.0",
|
55 | "prop-types": "^15.6.2",
|
56 | "rdndmb-html5-to-touch": "^8.0.0",
|
57 | "re-reselect": "^5.0.0",
|
58 | "react-copy-to-clipboard": "^5.0.1",
|
59 | "react-dnd": "^16.0.0",
|
60 | "react-dnd-html5-backend": "^16.0.0",
|
61 | "react-dnd-multi-backend": "^8.0.0",
|
62 | "react-dnd-touch-backend": "^16.0.0",
|
63 | "react-full-screen": "^1.1.1",
|
64 | "react-i18next": "^11.7.0 || ^12.0.0 || ^13.0.0",
|
65 | "react-image": "^4.0.1",
|
66 | "react-intersection-observer": "^9.0.0",
|
67 | "react-mosaic-component": "^6.0.0",
|
68 | "react-redux": "^8.0.0 || ^9.0.0",
|
69 | "react-resize-observer": "^1.1.1",
|
70 | "react-rnd": "^10.1",
|
71 | "react-sizeme": "^2.6.7 || ^3.0.0",
|
72 | "react-virtualized-auto-sizer": "^1.0.2",
|
73 | "react-window": "^1.8.5",
|
74 | "redux": "^5.0.0",
|
75 | "redux-saga": "^1.1.3",
|
76 | "redux-thunk": "^3.1.0",
|
77 | "reselect": "^5.0.0",
|
78 | "stylis": "^4.3.0",
|
79 | "stylis-plugin-rtl": "^2.1.1",
|
80 | "url": "^0.11.0",
|
81 | "uuid": "^8.1.0 || ^9.0.0"
|
82 | },
|
83 | "devDependencies": {
|
84 | "@babel/cli": "^7.17.6",
|
85 | "@babel/core": "^7.17.7",
|
86 | "@babel/plugin-proposal-class-properties": "^7.16.7",
|
87 | "@babel/plugin-proposal-object-rest-spread": "^7.17.3",
|
88 | "@babel/plugin-proposal-private-property-in-object": "^7.21.11",
|
89 | "@babel/plugin-transform-regenerator": "^7.16.7",
|
90 | "@babel/plugin-transform-runtime": "^7.17.0",
|
91 | "@babel/preset-env": "^7.16.11",
|
92 | "@babel/preset-react": "^7.16.7",
|
93 | "@pmmmwh/react-refresh-webpack-plugin": "^0.5.4",
|
94 | "@testing-library/dom": "^9.2.0",
|
95 | "@testing-library/jest-dom": "^6.1.5",
|
96 | "@testing-library/react": "^14.1.2",
|
97 | "@testing-library/user-event": "^14.4.3",
|
98 | "@typescript-eslint/eslint-plugin": "^6.14.0",
|
99 | "@typescript-eslint/parser": "^6.14.0",
|
100 | "babel-jest": "^29.3.1",
|
101 | "babel-loader": "^9.1.0",
|
102 | "babel-plugin-lodash": "^3.3.4",
|
103 | "babel-plugin-macros": "^3.0.1",
|
104 | "babel-plugin-transform-react-remove-prop-types": "^0.4.24",
|
105 | "bundlewatch": "^0.3.3",
|
106 | "canvas": "^2.11.0",
|
107 | "chalk": "^4.1.0",
|
108 | "core-js": "^3.21.1",
|
109 | "eslint": "^8.11.0",
|
110 | "eslint-config-airbnb": "^19.0.4",
|
111 | "eslint-config-react-app": "^7.0.0",
|
112 | "eslint-plugin-flowtype": "^8.0.3",
|
113 | "eslint-plugin-import": "^2.25.4",
|
114 | "eslint-plugin-jest": "^27.1.5",
|
115 | "eslint-plugin-jest-dom": "^5.1.0",
|
116 | "eslint-plugin-jsx-a11y": "^6.4.1",
|
117 | "eslint-plugin-react": "^7.29.4",
|
118 | "eslint-plugin-react-hooks": "^4.6.0",
|
119 | "eslint-plugin-testing-library": "^6.2.0",
|
120 | "glob": "^10.3.0",
|
121 | "http-server": "^14.1.0",
|
122 | "jest": "^29.3.1",
|
123 | "jest-environment-jsdom": "^29.4.3",
|
124 | "jest-fetch-mock": "^3.0.0",
|
125 | "jest-puppeteer": "^9.0.2",
|
126 | "jsdom": "^23.0.0",
|
127 | "puppeteer": "^21.0.0",
|
128 | "react": "^18.0.0",
|
129 | "react-dnd-test-backend": "^16.0.1",
|
130 | "react-dom": "^18.0.0",
|
131 | "react-refresh": "^0.14.0",
|
132 | "redux-mock-store": "^1.5.1",
|
133 | "redux-saga-test-plan": "^4.0.0-rc.3",
|
134 | "terser-webpack-plugin": "^5.3.1",
|
135 | "webpack": "^5.70.0",
|
136 | "webpack-cli": "^5.0.0",
|
137 | "webpack-dev-server": "^4.7.4"
|
138 | },
|
139 | "peerDependencies": {
|
140 | "react": "^18.0.0",
|
141 | "react-dom": "^18.0.0"
|
142 | }
|
143 | }
|