mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-06-08 00:22:32 +01:00
[Preview this branch](https://cosmos-explorer-preview.azurewebsites.net/pull/762?feature.someFeatureFlagYouMightNeed=true) The main change in this PR fixes the snapshot functionality in the Publish pane-related components. Because the code cell outputs are now rendered in their own iframes for security reasons, a single snapshot of the notebook is no longer possible: each cell output takes its own snapshot and the snapshots are collated on the main notebook snapshot. - Move the snapshot functionality to notebook components: this removes the reference of the notebook DOM node that we must pass to the Publish pane via explorer. - Add slice in the state and actions in notebook redux for notebook snapshot requests and result - Add post robot message to take snapshots and receive results - Add logic in `NotebookRenderer` to wait for all output snapshots done before taking the main one collating. - Use `zustand` to share snapshot between Redux world and React world. This solves the issue of keeping the `PanelContainer` component generic, while being able to update its children (`PublishPanel` component) with the new snapshot. Additional changes: - Add `local()` in `@font-face` to check if font is already installed before downloading the font (must be done for Safari, but not Edge/Chrome) - Add "Export output to image" menu item in notebook cell, since each cell output can take its own snapshot (which can be downloaded) 
230 lines
8.0 KiB
JSON
230 lines
8.0 KiB
JSON
{
|
|
"name": "cosmos-explorer",
|
|
"version": "1.0.0",
|
|
"description": "Cosmos Explorer",
|
|
"main": "index.js",
|
|
"dependencies": {
|
|
"@azure/arm-cosmosdb": "9.1.0",
|
|
"@azure/cosmos": "3.10.5",
|
|
"@azure/cosmos-language-service": "0.0.5",
|
|
"@azure/identity": "1.2.1",
|
|
"@azure/ms-rest-nodeauth": "3.0.7",
|
|
"@babel/plugin-proposal-class-properties": "7.12.1",
|
|
"@babel/plugin-proposal-decorators": "7.12.12",
|
|
"@fluentui/react": "8.14.3",
|
|
"@jupyterlab/services": "6.0.2",
|
|
"@jupyterlab/terminal": "3.0.3",
|
|
"@microsoft/applicationinsights-web": "2.6.1",
|
|
"@nteract/commutable": "7.4.2",
|
|
"@nteract/connected-components": "6.8.2",
|
|
"@nteract/core": "15.1.0",
|
|
"@nteract/data-explorer": "8.0.3",
|
|
"@nteract/directory-listing": "2.0.6",
|
|
"@nteract/dropdown-menu": "1.0.1",
|
|
"@nteract/editor": "10.1.2",
|
|
"@nteract/fixtures": "2.3.0",
|
|
"@nteract/iron-icons": "1.0.0",
|
|
"@nteract/jupyter-widgets": "2.0.0",
|
|
"@nteract/logos": "1.0.0",
|
|
"@nteract/markdown": "4.6.0",
|
|
"@nteract/monaco-editor": "3.2.2",
|
|
"@nteract/octicons": "2.0.0",
|
|
"@nteract/outputs": "3.0.9",
|
|
"@nteract/presentational-components": "3.0.7",
|
|
"@nteract/stateful-components": "1.7.0",
|
|
"@nteract/styles": "2.0.2",
|
|
"@nteract/transform-geojson": "5.1.8",
|
|
"@nteract/transform-model-debug": "5.0.1",
|
|
"@nteract/transform-plotly": "6.1.6",
|
|
"@nteract/transform-vdom": "4.0.11",
|
|
"@nteract/transform-vega": "7.0.6",
|
|
"@octokit/rest": "17.9.2",
|
|
"@phosphor/widgets": "1.9.3",
|
|
"@testing-library/jest-dom": "5.11.9",
|
|
"@types/mkdirp": "1.0.1",
|
|
"@types/node-fetch": "2.5.7",
|
|
"applicationinsights": "1.8.0",
|
|
"bootstrap": "3.4.1",
|
|
"canvas": "file:./canvas",
|
|
"clean-webpack-plugin": "0.1.19",
|
|
"clipboard-copy": "4.0.1",
|
|
"copy-webpack-plugin": "6.0.2",
|
|
"crossroads": "0.12.2",
|
|
"css-element-queries": "1.1.1",
|
|
"d3": "6.1.1",
|
|
"datatables.net-colreorder-dt": "1.5.1",
|
|
"datatables.net-dt": "1.10.19",
|
|
"date-fns": "1.29.0",
|
|
"dayjs": "1.8.19",
|
|
"dom-to-image": "2.6.0",
|
|
"dotenv": "8.2.0",
|
|
"eslint-plugin-jest": "23.13.2",
|
|
"eslint-plugin-react": "7.20.0",
|
|
"hasher": "1.2.0",
|
|
"html2canvas": "1.0.0-rc.5",
|
|
"i18next": "19.8.4",
|
|
"i18next-browser-languagedetector": "6.0.1",
|
|
"i18next-http-backend": "1.0.23",
|
|
"iframe-resizer-react": "1.1.0",
|
|
"immutable": "4.0.0-rc.12",
|
|
"is-ci": "2.0.0",
|
|
"jquery": "3.5.1",
|
|
"jquery-typeahead": "2.10.6",
|
|
"jquery-ui-dist": "1.12.1",
|
|
"knockout": "3.5.1",
|
|
"mkdirp": "1.0.4",
|
|
"monaco-editor": "0.18.1",
|
|
"ms": "2.1.3",
|
|
"msal": "1.4.4",
|
|
"p-retry": "4.2.0",
|
|
"plotly.js-cartesian-dist-min": "1.52.3",
|
|
"post-robot": "10.0.42",
|
|
"q": "1.5.1",
|
|
"react": "16.13.1",
|
|
"react-animate-height": "2.0.8",
|
|
"react-dnd": "9.4.0",
|
|
"react-dnd-html5-backend": "9.4.0",
|
|
"react-dom": "16.13.1",
|
|
"react-hotkeys": "2.0.0",
|
|
"react-i18next": "11.8.5",
|
|
"react-notification-system": "0.2.17",
|
|
"react-redux": "7.1.3",
|
|
"redux": "4.0.4",
|
|
"reflect-metadata": "0.1.13",
|
|
"rx-jupyter": "5.5.12",
|
|
"rxjs": "6.6.3",
|
|
"sanitize-html": "2.3.3",
|
|
"styled-components": "4.3.2",
|
|
"swr": "0.4.0",
|
|
"terser-webpack-plugin": "3.1.0",
|
|
"underscore": "1.9.1",
|
|
"utility-types": "3.10.0",
|
|
"zustand": "3.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "7.9.0",
|
|
"@babel/preset-env": "7.9.0",
|
|
"@babel/preset-react": "7.9.4",
|
|
"@babel/preset-typescript": "7.9.0",
|
|
"@testing-library/react": "11.2.3",
|
|
"@types/applicationinsights-js": "1.0.7",
|
|
"@types/codemirror": "0.0.56",
|
|
"@types/crossroads": "0.0.30",
|
|
"@types/d3": "5.9.2",
|
|
"@types/dom-to-image": "2.6.2",
|
|
"@types/enzyme": "3.10.7",
|
|
"@types/enzyme-adapter-react-16": "1.0.6",
|
|
"@types/hasher": "0.0.31",
|
|
"@types/jest": "26.0.20",
|
|
"@types/memoize-one": "4.1.1",
|
|
"@types/node": "12.11.1",
|
|
"@types/post-robot": "10.0.1",
|
|
"@types/promise.prototype.finally": "2.0.3",
|
|
"@types/q": "1.5.1",
|
|
"@types/react": "17.0.3",
|
|
"@types/react-dom": "17.0.3",
|
|
"@types/react-notification-system": "0.2.39",
|
|
"@types/react-redux": "7.1.7",
|
|
"@types/sanitize-html": "1.27.2",
|
|
"@types/sinon": "2.3.3",
|
|
"@types/styled-components": "5.1.1",
|
|
"@types/underscore": "1.7.36",
|
|
"@typescript-eslint/eslint-plugin": "4.22.0",
|
|
"@typescript-eslint/parser": "4.22.0",
|
|
"babel-jest": "24.9.0",
|
|
"babel-loader": "8.1.0",
|
|
"buffer": "5.1.0",
|
|
"case-sensitive-paths-webpack-plugin": "2.3.0",
|
|
"create-file-webpack": "1.0.2",
|
|
"css-loader": "1.0.0",
|
|
"enzyme": "3.11.0",
|
|
"enzyme-adapter-react-16": "1.15.5",
|
|
"enzyme-to-json": "3.6.1",
|
|
"eslint": "7.8.1",
|
|
"eslint-cli": "1.1.1",
|
|
"eslint-plugin-no-null": "1.0.2",
|
|
"eslint-plugin-prefer-arrow": "1.2.2",
|
|
"eslint-plugin-react-hooks": "4.2.0",
|
|
"expect-playwright": "0.3.3",
|
|
"expose-loader": "0.7.5",
|
|
"fast-glob": "3.2.5",
|
|
"file-loader": "2.0.0",
|
|
"fs-extra": "7.0.0",
|
|
"html-inline-css-webpack-plugin": "1.11.0",
|
|
"html-loader": "0.5.5",
|
|
"html-loader-jest": "0.2.1",
|
|
"html-webpack-plugin": "4.5.2",
|
|
"jest": "25.5.4",
|
|
"jest-canvas-mock": "2.1.0",
|
|
"jest-playwright-preset": "1.5.1",
|
|
"jest-trx-results-processor": "0.0.7",
|
|
"less": "3.8.1",
|
|
"less-loader": "4.1.0",
|
|
"less-vars-loader": "1.1.0",
|
|
"mini-css-extract-plugin": "0.4.3",
|
|
"monaco-editor-webpack-plugin": "1.7.0",
|
|
"node-fetch": "2.6.1",
|
|
"playwright": "1.10.0",
|
|
"prettier": "2.2.1",
|
|
"raw-loader": "0.5.1",
|
|
"react-dev-utils": "11.0.4",
|
|
"rimraf": "3.0.0",
|
|
"sinon": "3.2.1",
|
|
"style-loader": "0.23.0",
|
|
"ts-loader": "6.2.2",
|
|
"tslint": "5.11.0",
|
|
"tslint-microsoft-contrib": "6.0.0",
|
|
"typescript": "4.2.4",
|
|
"url-loader": "1.1.1",
|
|
"wait-on": "4.0.2",
|
|
"webpack": "4.46.0",
|
|
"webpack-bundle-analyzer": "3.6.1",
|
|
"webpack-cli": "3.3.10",
|
|
"webpack-dev-server": "3.11.0"
|
|
},
|
|
"scripts": {
|
|
"start": "node --max-old-space-size=10196 node_modules/webpack-dev-server/bin/webpack-dev-server.js",
|
|
"dev": "echo \"WARNING: npm run dev has been deprecated\" && npm run build",
|
|
"build:dataExplorer:ci": "npm run build:ci",
|
|
"build": "npm run format:check && npm run lint && npm run compile && npm run compile:strict && npm run pack:prod && npm run copyToConsumers",
|
|
"build:ci": "npm run format:check && npm run lint && npm run compile && npm run compile:strict && npm run pack:fast",
|
|
"pack:prod": "node --max_old_space_size=10196 ./node_modules/webpack/bin/webpack.js --mode production",
|
|
"pack:fast": "node --max_old_space_size=10196 ./node_modules/webpack/bin/webpack.js --mode development --progress",
|
|
"copyToConsumers": "node copyToConsumers",
|
|
"test": "rimraf coverage && jest",
|
|
"test:e2e": "jest -c ./jest.config.playwright.js --detectOpenHandles",
|
|
"watch": "npm run start",
|
|
"wait-for-server": "wait-on -t 240000 -i 5000 -v https-get://0.0.0.0:1234/",
|
|
"build:ase": "gulp build:ase",
|
|
"compile": "tsc",
|
|
"compile:contracts": "tsc -p ./tsconfig.contracts.json",
|
|
"compile:strict": "tsc -p ./tsconfig.strict.json",
|
|
"format": "prettier --write \"{src,test}/**/*.{ts,tsx,html}\" \"*.{js,html}\"",
|
|
"format:check": "prettier --check \"{src,test}/**/*.{ts,tsx,html}\" \"*.{js,html}\"",
|
|
"lint": "tslint --project tsconfig.json && eslint \"**/*.{ts,tsx}\"",
|
|
"build:contracts": "npm run compile:contracts",
|
|
"strict:find": "node ./strict-null-checks/find.js",
|
|
"strict:add": "node ./strict-null-checks/auto-add.js",
|
|
"compile:fullStrict": "tsc -p ./tsconfig.json --strictNullChecks",
|
|
"generateARMClients": "ts-node --compiler-options '{\"module\":\"commonjs\"}' utils/armClientGenerator/generator.ts"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/Azure/cosmos-explorer"
|
|
},
|
|
"keywords": [
|
|
"Cosmos DB",
|
|
"Data",
|
|
"Explorer",
|
|
"Emulator"
|
|
],
|
|
"author": "Microsoft Corporation",
|
|
"bugs": {
|
|
"url": "https://github.com/Azure/cosmos-explorer/issues"
|
|
},
|
|
"homepage": "https://github.com/Azure/cosmos-explorer",
|
|
"prettier": {
|
|
"printWidth": 120
|
|
}
|
|
}
|