mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
11afc08f65
Summary: Changes to building and serving: - Remove unpkg dependencies, add npm module for swagger-ui-dist instead. - Move apiconsole JS logic into core/app/client/apiconsole.ts, and use TypeScript. - Add symlinks to swagger in static/ and core/static/. - Refactor loadScript, and add loadCssFile; use these to load swagger-ui resources. Changes to console itself: - Support docId, workspaceId, orgId URL parameters. When present, the matching value in dropdowns is moved to the front and marked as "(Current)". - Fix the ordering of example values, particularly for workspaces. - Remove unwanted example values. - Hide confusing "Authorize" button. - Hide API keys, and rely consistently on cookies for executing API calls. Integration into Grist: - Added a button to Document Settings, just under document ID in "API". - The button opens a separate page, passing in org, workspace, and doc info for the current doc. Test Plan: Only tested manually, no automated tests yet. Reviewers: jarek Reviewed By: jarek Differential Revision: https://phab.getgrist.com/D4173
212 lines
7.6 KiB
JSON
212 lines
7.6 KiB
JSON
{
|
|
"name": "grist-core",
|
|
"version": "1.1.10",
|
|
"license": "Apache-2.0",
|
|
"description": "Grist is the evolution of spreadsheets",
|
|
"homepage": "https://github.com/gristlabs/grist-core",
|
|
"repository": "git://github.com/gristlabs/grist-core.git",
|
|
"scripts": {
|
|
"start": "sandbox/watch.sh",
|
|
"start:debug": "NODE_INSPECT=1 sandbox/watch.sh",
|
|
"install:python": "buildtools/prepare_python.sh",
|
|
"install:python2": "buildtools/prepare_python2.sh",
|
|
"install:python3": "buildtools/prepare_python3.sh",
|
|
"build:prod": "buildtools/build.sh",
|
|
"start:prod": "sandbox/run.sh",
|
|
"test": "GRIST_SESSION_COOKIE=grist_test_cookie GRIST_TEST_LOGIN=1 TEST_SUPPORT_API_KEY=api_key_for_support TEST_CLEAN_DATABASE=true LANGUAGE=en_US mocha ${DEBUG:+-b --no-exit} --slow 8000 $([ -z $DEBUG ] && echo --forbid-only) -g \"${GREP_TESTS}\" '_build/test/common/*.js' '_build/test/client/*.js' '_build/test/nbrowser/*.js' '_build/test/server/**/*.js' '_build/test/gen-server/**/*.js'",
|
|
"test:nbrowser": "TEST_SUITE=nbrowser TEST_SUITE_FOR_TIMINGS=nbrowser TIMINGS_FILE=test/timings/nbrowser.txt GRIST_SESSION_COOKIE=grist_test_cookie GRIST_TEST_LOGIN=1 TEST_SUPPORT_API_KEY=api_key_for_support TEST_CLEAN_DATABASE=true LANGUAGE=en_US mocha ${DEBUG:+-b --no-exit} $([ -z $DEBUG ] && echo --forbid-only) -g \"${GREP_TESTS}\" --slow 8000 -R test/xunit-file '_build/test/nbrowser/**/*.js'",
|
|
"test:client": "GRIST_SESSION_COOKIE=grist_test_cookie mocha ${DEBUG:+'-b'} '_build/test/client/**/*.js'",
|
|
"test:common": "GRIST_SESSION_COOKIE=grist_test_cookie mocha ${DEBUG:+'-b'} '_build/test/common/**/*.js'",
|
|
"test:server": "TEST_CLEAN_DATABASE=true TEST_SUITE=server TEST_SUITE_FOR_TIMINGS=server TIMINGS_FILE=test/timings/server.txt GRIST_SESSION_COOKIE=grist_test_cookie mocha ${DEBUG:+'-b'} -g \"${GREP_TESTS}\" -R test/xunit-file '_build/test/server/**/*.js' '_build/test/gen-server/**/*.js'",
|
|
"test:smoke": "mocha _build/test/nbrowser/Smoke.js",
|
|
"test:docker": "./test/test_under_docker.sh",
|
|
"test:python": "sandbox_venv3/bin/python sandbox/grist/runtests.py ${GREP_TESTS:+discover -p \"test*${GREP_TESTS}*.py\"}",
|
|
"cli": "NODE_PATH=_build:_build/stubs:_build/ext node _build/app/server/companion.js",
|
|
"lint": "eslint --cache --cache-strategy content .",
|
|
"lint:fix": "eslint --cache --cache-strategy=content --fix .",
|
|
"lint:ci": "eslint --max-warnings=0 .",
|
|
"generate:translation": "NODE_PATH=_build:_build/stubs:_build/ext node buildtools/generate_translation_keys.js",
|
|
"generate:schema:ts": "buildtools/update_schema.sh"
|
|
},
|
|
"keywords": [
|
|
"grist",
|
|
"spreadsheet",
|
|
"database"
|
|
],
|
|
"author": {
|
|
"name": "Grist Labs Inc.",
|
|
"email": "info@getgrist.com"
|
|
},
|
|
"private": false,
|
|
"devDependencies": {
|
|
"@babel/core": "7.18.5",
|
|
"@babel/eslint-parser": "7.18.2",
|
|
"@types/accept-language-parser": "1.5.2",
|
|
"@types/backbone": "1.3.43",
|
|
"@types/chai": "4.1.7",
|
|
"@types/chai-as-promised": "7.1.0",
|
|
"@types/content-disposition": "0.5.2",
|
|
"@types/diff-match-patch": "1.0.32",
|
|
"@types/dompurify": "3.0.5",
|
|
"@types/double-ended-queue": "2.1.0",
|
|
"@types/express": "4.17.17",
|
|
"@types/form-data": "2.2.1",
|
|
"@types/fs-extra": "5.0.4",
|
|
"@types/http-proxy": "1.17.9",
|
|
"@types/i18next-fs-backend": "1.1.2",
|
|
"@types/image-size": "0.0.29",
|
|
"@types/js-yaml": "3.11.2",
|
|
"@types/jsdom": "21.1.6",
|
|
"@types/jsesc": "3.0.1",
|
|
"@types/jsonwebtoken": "7.2.8",
|
|
"@types/lodash": "4.14.117",
|
|
"@types/lru-cache": "5.1.1",
|
|
"@types/marked": "4.0.8",
|
|
"@types/mime-types": "2.1.0",
|
|
"@types/minio": "7.0.15",
|
|
"@types/mocha": "10.0.1",
|
|
"@types/moment-timezone": "0.5.9",
|
|
"@types/mousetrap": "1.6.2",
|
|
"@types/node": "18.11.9",
|
|
"@types/node-fetch": "2.6.2",
|
|
"@types/pidusage": "2.0.1",
|
|
"@types/plotly.js": "2.12.1",
|
|
"@types/proper-lockfile": "4.1.2",
|
|
"@types/qrcode": "1.4.2",
|
|
"@types/redlock": "3.0.2",
|
|
"@types/saml2-js": "2.0.1",
|
|
"@types/selenium-webdriver": "4.1.15",
|
|
"@types/sinon": "5.0.5",
|
|
"@types/sqlite3": "3.1.6",
|
|
"@types/swagger-ui": "3.52.4",
|
|
"@types/tmp": "0.0.33",
|
|
"@types/uuid": "3.4.4",
|
|
"@types/which": "2.0.1",
|
|
"@types/ws": "^6",
|
|
"@typescript-eslint/eslint-plugin": "5.29.0",
|
|
"@typescript-eslint/parser": "5.29.0",
|
|
"app-module-path": "2.2.0",
|
|
"catw": "1.0.1",
|
|
"chai": "4.2.0",
|
|
"chai-as-promised": "7.1.1",
|
|
"chance": "1.0.16",
|
|
"esbuild-loader": "2.19.0",
|
|
"eslint": "8.18.0",
|
|
"http-proxy": "1.18.1",
|
|
"i18next-scanner": "4.1.0",
|
|
"mocha": "10.2.0",
|
|
"mocha-webdriver": "0.3.2",
|
|
"moment-locales-webpack-plugin": "^1.2.0",
|
|
"nodemon": "^2.0.4",
|
|
"otplib": "12.0.1",
|
|
"proper-lockfile": "4.1.2",
|
|
"sinon": "7.1.1",
|
|
"source-map-loader": "^0.2.4",
|
|
"tmp-promise": "1.0.5",
|
|
"ts-interface-builder": "0.3.2",
|
|
"typescript": "4.7.4",
|
|
"webpack": "5.73.0",
|
|
"webpack-cli": "4.10.0",
|
|
"why-is-node-running": "2.0.3"
|
|
},
|
|
"dependencies": {
|
|
"@googleapis/drive": "0.3.1",
|
|
"@googleapis/oauth2": "0.2.0",
|
|
"@gristlabs/connect-sqlite3": "0.9.11-grist.5",
|
|
"@gristlabs/express-session": "1.17.0",
|
|
"@gristlabs/grist-widget": "^0.0.4",
|
|
"@gristlabs/moment-guess": "1.2.4-grist.1",
|
|
"@gristlabs/pidusage": "2.0.17",
|
|
"@gristlabs/sqlite3": "5.1.4-grist.8",
|
|
"@popperjs/core": "2.3.3",
|
|
"accept-language-parser": "1.5.0",
|
|
"ace-builds": "1.23.3",
|
|
"async-mutex": "0.2.4",
|
|
"axios": "0.21.2",
|
|
"backbone": "1.3.3",
|
|
"bootstrap": "3.3.5",
|
|
"bootstrap-datepicker": "1.9.0",
|
|
"bowser": "2.7.0",
|
|
"collect-js-deps": "^0.1.1",
|
|
"color-convert": "2.0.1",
|
|
"commander": "9.3.0",
|
|
"components-jqueryui": "1.12.1",
|
|
"connect-redis": "3.4.0",
|
|
"cookie": "0.5.0",
|
|
"cookie-parser": "1.4.3",
|
|
"csv": "4.0.0",
|
|
"currency-symbol-map": "5.1.0",
|
|
"diff-match-patch": "1.0.5",
|
|
"dompurify": "3.0.6",
|
|
"double-ended-queue": "2.1.0-0",
|
|
"exceljs": "4.2.1",
|
|
"express": "4.18.2",
|
|
"file-type": "16.5.4",
|
|
"fs-extra": "7.0.0",
|
|
"grain-rpc": "0.1.7",
|
|
"grainjs": "1.0.2",
|
|
"handlebars": "4.7.7",
|
|
"highlight.js": "10.7.3",
|
|
"http-proxy-agent": "5.0.0",
|
|
"https-proxy-agent": "5.0.1",
|
|
"i18n-iso-countries": "6.1.0",
|
|
"i18next": "21.9.1",
|
|
"i18next-http-middleware": "3.3.2",
|
|
"image-size": "0.6.3",
|
|
"jquery": "3.5.0",
|
|
"js-yaml": "3.14.1",
|
|
"jsdom": "^23.0.0",
|
|
"jsesc": "3.0.2",
|
|
"jsonwebtoken": "8.3.0",
|
|
"knockout": "3.5.0",
|
|
"locale-currency": "0.0.2",
|
|
"lodash": "4.17.21",
|
|
"marked": "4.2.12",
|
|
"minio": "7.0.32",
|
|
"moment": "2.29.4",
|
|
"moment-timezone": "0.5.35",
|
|
"morgan": "1.9.1",
|
|
"mousetrap": "1.6.2",
|
|
"multiparty": "4.2.2",
|
|
"node-abort-controller": "3.0.1",
|
|
"node-fetch": "2.6.7",
|
|
"openid-client": "5.6.1",
|
|
"pg": "8.6.0",
|
|
"piscina": "3.2.0",
|
|
"plotly.js-basic-dist": "2.13.2",
|
|
"popper-max-size-modifier": "0.2.0",
|
|
"popweasel": "0.1.20",
|
|
"prom-client": "14.2.0",
|
|
"qrcode": "1.5.0",
|
|
"randomcolor": "0.5.3",
|
|
"redis": "3.1.1",
|
|
"redlock": "3.1.2",
|
|
"saml2-js": "2.0.5",
|
|
"short-uuid": "3.1.1",
|
|
"slugify": "1.6.6",
|
|
"swagger-ui-dist": "5.11.0",
|
|
"tmp": "0.0.33",
|
|
"ts-interface-checker": "1.0.2",
|
|
"typeorm": "0.3.9",
|
|
"underscore": "1.12.1",
|
|
"uuid": "3.3.2",
|
|
"winston": "2.4.5",
|
|
"ws": "8.13.0"
|
|
},
|
|
"resolutions": {
|
|
"jquery": "3.5.0",
|
|
"ts-interface-checker": "1.0.2",
|
|
"@gristlabs/sqlite3": "5.1.4-grist.8"
|
|
},
|
|
"mocha": {
|
|
"require": [
|
|
"test/setupPaths",
|
|
"source-map-support/register",
|
|
"test/report-why-tests-hang",
|
|
"test/init-mocha-webdriver",
|
|
"test/split-tests",
|
|
"test/chai-as-promised"
|
|
]
|
|
}
|
|
}
|