graphql-engine/console/package.json

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

323 lines
11 KiB
JSON
Raw Normal View History

2018-06-28 07:57:37 +03:00
{
"package-name": "@hasura/console-oss",
"name": "@hasura/console-oss",
2018-06-28 07:57:37 +03:00
"description": "Console for Hasura GraphQL Engine",
"author": "Hasura (https://github.com/hasura/graphql-engine)",
2019-07-04 12:27:35 +03:00
"license": "Apache 2.0",
"version": "1.0.0",
2018-06-28 07:57:37 +03:00
"repository": {
"type": "git",
"url": "https://github.com/hasura/graphql-engine"
},
"main": "lib/main.js",
"module": "lib/main.js",
2018-06-28 07:57:37 +03:00
"homepage": "https://hasura.io/",
"keywords": [],
"scripts": {
"--- DEV ------------------------------------------------": "",
"dev": "TAILWIND_MODE=watch webpack serve --config ./webpack/dev.config.js",
"--- STORYBOOK ------------------------------------------------": "",
"chromatic": "npx chromatic",
"storybook": "TAILWIND_MODE=watch start-storybook -p 6006 -s static --no-manager-cache",
"build-storybook": "build-storybook -s static",
"--- BUILD ------------------------------------------------": "",
"build": "cross-env NODE_OPTIONS=--max-old-space-size=3072 webpack --progress --mode=production --config webpack/prod.config.js",
"--- PRO CONSOLE ------------------------------------------------": "",
"build-lib": "webpack --progress --mode=production --config webpack/bundle.config.js",
"--- TEST ------------------------------------------------": "",
"test": "cypress run --spec 'cypress/integration/**/**/test.ts' --key $CYPRESS_KEY --parallel --record",
"--- CYPRESS ------------------------------------------------": "",
"cy:open": "cypress open",
"cy:run": "cypress run",
"cy:run:ci": "cypress run --key $CYPRESS_KEY --ci-build-id $BUILDKITE_BUILD_ID --parallel --record",
"--- JEST ------------------------------------------------": "",
"jest": "jest --setupFiles dotenv/config",
"jest-watch": "jest --watch --setupFiles dotenv/config",
"--- LINTING ------------------------------------------------": "",
"lint": "eslint -c .eslintrc src --ext .js,.ts,.tsx",
"lint:quiet": "eslint --quiet -c .eslintrc src --ext .js,.ts,.tsx",
"format": "prettier --write \"src/**/*.{js,jsx,ts,tsx,mdx}\"",
"format:check": "prettier --check \"src/**/*.{js,jsx,ts,tsx,mdx}\"",
"build-unused": "webpack --stats=verbose --config webpack/prod.config.js --json | webpack-unused -s src",
"--- OTHERS ------------------------------------------------": "",
"server-build": "make server-build"
2018-06-28 07:57:37 +03:00
},
"lint-staged": {
"*.{js,ts,tsx}": [
2020-06-02 11:14:45 +03:00
"eslint --fix"
2018-06-28 07:57:37 +03:00
],
"*.{js,json,ts,tsx,css,md,mdx}": [
2020-06-02 11:14:45 +03:00
"prettier --write"
2018-06-28 07:57:37 +03:00
]
},
2020-04-06 14:23:04 +03:00
"prettier": {
"singleQuote": true,
"trailingComma": "es5",
"printWidth": 80,
2020-06-02 11:14:45 +03:00
"tabWidth": 2,
"arrowParens": "avoid"
2020-04-06 14:23:04 +03:00
},
"husky": {
"hooks": {
"pre-commit": "node ./scripts/preCommit.js"
2020-04-06 14:23:04 +03:00
}
},
"overrides": {
"codemirror": "5.51.0",
"graphql-language-service-utils": "2.4.3",
"graphiql": {
"codemirror-graphql": {
".": "0.12.2",
"graphql-language-service-parser": "1.6.4",
"graphql-language-service-interface": {
".": "2.4.2",
"graphql-language-service-types": "1.6.3"
}
}
}
},
2018-06-28 07:57:37 +03:00
"dependencies": {
"@ant-design/icons": "4.7.0",
"@babel/plugin-transform-runtime": "^7.14.5",
"@graphql-codegen/core": "^1.17.8",
"@graphql-codegen/typescript": "^1.17.10",
"@hookform/resolvers": "2.8.10",
"@radix-ui/react-collapsible": "^1.0.0",
"@radix-ui/react-dialog": "^1.0.0",
"@radix-ui/react-dropdown-menu": "^1.0.0",
"@radix-ui/react-switch": "^1.0.0",
"@radix-ui/react-tabs": "^1.0.0",
"@radix-ui/react-tooltip": "^1.0.0",
"@reduxjs/toolkit": "^1.5.1",
"@types/lodash.get": "^4.4.6",
"@xstate/react": "^2.0.0",
"ace-builds": "^1.4.11",
"antd": "4.18.6",
2020-06-02 11:14:45 +03:00
"apollo-link": "1.2.14",
"apollo-link-ws": "1.0.20",
"axios": "0.27.2",
"brace": "0.11.1",
"case-sensitive-paths-webpack-plugin": "^2.3.0",
"clsx": "1.1.1",
"codemirror": "5.51.0",
"graphiql": "1.0.0-alpha.0",
"graphiql-code-exporter": "2.0.8",
"graphiql-explorer": "0.6.2",
"graphql": "14.5.8",
"graphql-voyager": "1.0.0-rc.29",
"highlight.js": "9.15.8",
"history": "3.3.0",
"immer": "9.0.12",
"inflection": "1.12.0",
"isomorphic-fetch": "2.2.1",
"jsonwebtoken": "8.5.1",
"jwt-decode": "^3.0.0",
"less": "3.11.1",
"lodash.debounce": "^4.0.8",
"lodash.get": "4.4.2",
"lodash.isequal": "^4.5.0",
"lodash.merge": "4.6.2",
"lodash.pickby": "^4.6.0",
"lodash.uniqueid": "^4.0.1",
"moment": "^2.26.0",
"piping": "0.3.2",
"prop-types": "15.7.2",
2020-06-02 11:14:45 +03:00
"react": "16.13.1",
"react-ace": "8.0.0",
2020-06-02 11:14:45 +03:00
"react-autosuggest": "10.0.2",
"react-bootstrap": "0.32.4",
"react-copy-to-clipboard": "5.0.2",
"react-datetime": "^2.16.3",
2020-06-02 11:14:45 +03:00
"react-dom": "16.13.1",
"react-helmet": "5.2.1",
"react-hook-form": "7.15.4",
"react-icons": "^4.3.1",
"react-json-view": "^1.21.3",
"react-loading-skeleton": "^3.1.0",
"react-modal": "3.11.2",
"react-notification-system-redux": "2.0.1",
"react-progress-bar-plus": "1.3.1",
"react-query": "^3.29.0",
"react-redux": "7.2.4",
"react-router": "3.2.6",
"react-router-redux": "4.0.8",
"react-select": "2.4.4",
"react-table": "6.11.5",
2020-06-02 11:14:45 +03:00
"react-tabs": "3.1.0",
"react-toggle": "4.1.1",
"react-youtube": "^7.13.0",
"redux": "4.1.0",
"redux-thunk": "2.3.0",
"reselect": "^4.0.0",
"sanitize-filename": "1.6.3",
"semver": "5.5.1",
"sql-formatter": "2.3.3",
"styled-components": "5.0.1",
"styled-system": "5.1.5",
"subscriptions-transport-ws": "0.9.16",
"tailwindcss-radix": "^2.5.0",
"ts-essentials": "7.0.3",
"uuid": "8.3.2",
"xstate": "^4.30.1",
"zod": "3.17.3"
2018-06-28 07:57:37 +03:00
},
"devDependencies": {
"@babel/cli": "7.13.10",
"@babel/core": "7.13.10",
"@babel/plugin-proposal-class-properties": "7.8.3",
"@babel/plugin-proposal-export-default-from": "^7.10.4",
2020-06-02 11:14:45 +03:00
"@babel/plugin-proposal-nullish-coalescing-operator": "7.10.1",
"@babel/plugin-proposal-private-methods": "7.14.5",
"@babel/plugin-proposal-private-property-in-object": "^7.14.5",
"@babel/preset-env": "7.9.5",
2020-06-02 11:14:45 +03:00
"@babel/preset-react": "7.9.4",
"@babel/preset-typescript": "7.13.0",
2020-06-02 11:14:45 +03:00
"@babel/register": "7.9.0",
"@babel/runtime": "7.14.8",
"@hookform/devtools": "4.0.1",
"@storybook/addon-actions": "6.5.10",
"@storybook/addon-essentials": "6.5.10",
"@storybook/addon-interactions": "6.5.10",
"@storybook/addon-links": "6.5.10",
"@storybook/addon-postcss": "2.0.0",
"@storybook/jest": "0.0.10",
"@storybook/react": "6.5.10",
"@storybook/testing-library": "0.0.13",
"@storybook/testing-react": "1.2.3",
"@tailwindcss/forms": "^0.5.2",
"@tailwindcss/typography": "^0.5.4",
console: e2e test for graphql customization while adding data source Use this docker-compose file while running the connect DB cypress test <details> <summary>Docker-compose file</summary> ```yaml version: '3.6' services: postgres: image: postgres:12 restart: unless-stopped ports: - '5432:5432' volumes: - db_meta:/var/lib/postgresql/data environment: POSTGRES_PASSWORD: postgrespassword postgres12: image: postgres:12 restart: unless-stopped ports: - '4432:5432' volumes: - db_pg12_data:/var/lib/postgresql/data environment: POSTGRES_PASSWORD: postgrespassword msserver: image: 'mcr.microsoft.com/mssql/server:2019-latest' ports: - '1435:1435' restart: unless-stopped environment: SA_PASSWORD: 'testPassword123' ACCEPT_EULA: 'Y' graphql-engine: image: hasura/graphql-engine:v2.8.1 ports: - '8080:8080' depends_on: - 'postgres' restart: unless-stopped environment: HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:postgrespassword@postgres:5432/postgres TEST_MSSQL_DATABASE_URL: DRIVER={ODBC Driver 17 for SQL Server};SERVER=msserver;Uid=SA;Pwd=testPassword123 ## enable the console served by server HASURA_GRAPHQL_ENABLE_CONSOLE: 'true' # set to "false" to disable console ## enable debugging mode. It is recommended to disable this in production ## HASURA_GRAPHQL_CONSOLE_ASSETS_DIR: /srv/console-assets HASURA_GRAPHQL_DEV_MODE: 'true' HASURA_GRAPHQL_ENABLED_LOG_TYPES: startup, http-log, webhook-log, websocket-log, query-log ## uncomment next line to set an admin secret # HASURA_GRAPHQL_ADMIN_SECRET: myadminsecretkey HASURA_GRAPHQL_ENABLE_REMOTE_SCHEMA_PERMISSIONS: 'true' HASURA_GRAPHQL_EXPERIMENTAL_FEATURES: naming_convention volumes: db_pg12_data: db_meta: # Connect to second PG using env var DB2 # Connect to metadata PG using HASURA_GRAPHQL_METADATA_DATABASE_URL # Connect to mssql server using connection string (not env) # DRIVER={ODBC Driver 17 for SQL Server};SERVER=msserver;Uid=SA;Pwd=testPassword123 # PG 12 : postgres://postgres:postgrespassword@postgres12:5432/postgres ``` </details> 1. Here is the [Video](https://www.loom.com/share/bfe8b4da59ae48dca3fc9877b440c360) of the running connect db e2e test 2. We write test only for connect Postgres DB not for mssql because mssql container doesn't work on CI and on M1 laptops. Moreover, the value provided was low because we tested the same path Postgres (this was team agreement) 3. We installed @testing-library/cypress to leverage the same helper functions (we used `findByText` and `findByPlaceholderText`) 4. We used `withIn` to target a section on a page and find an element inside 5. We used a procedural approach and we added `cy.log` to improve the debugging of the test. 6. We created new helper function to test notifications - `cy.expectSuccessNotification()` `cy.expectSuccessNotificationWithTitle(title: string)` `cy.expectSuccessNotificationWithMessage(message: string)` `cy.expectErrorNotification()` `cy.expectErrorNotificationWithTitle(title: string)` `cy.expectErrorNotificationWithMessage(message: string)` PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4960 Co-authored-by: Luca Restagno <59067245+lucarestagno@users.noreply.github.com> Co-authored-by: Brandon Simmons <210815+jberryman@users.noreply.github.com> Co-authored-by: Samir Talwar <47582+SamirTalwar@users.noreply.github.com> Co-authored-by: Divi <32202683+imperfect-fourth@users.noreply.github.com> Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com> Co-authored-by: Erik Magnusson <32518962+ejkkan@users.noreply.github.com> Co-authored-by: Vishnu Bharathi <4211715+scriptnull@users.noreply.github.com> Co-authored-by: Jesse Hallett <9622+hallettj@users.noreply.github.com> Co-authored-by: Abby Sassel <3883855+sassela@users.noreply.github.com> Co-authored-by: David Overton <7734777+dmoverton@users.noreply.github.com> Co-authored-by: Daniel Chambers <1214352+daniel-chambers@users.noreply.github.com> Co-authored-by: Lyndon Maydwell <92299+sordina@users.noreply.github.com> Co-authored-by: paritosh-08 <85472423+paritosh-08@users.noreply.github.com> Co-authored-by: Gil Mizrahi <8547573+soupi@users.noreply.github.com> Co-authored-by: Benoit Ranque <25712958+BenoitRanque@users.noreply.github.com> Co-authored-by: Daniel Harvey <4729125+danieljharvey@users.noreply.github.com> Co-authored-by: Tom Harding <6302310+i-am-tom@users.noreply.github.com> Co-authored-by: Solomon <24038+solomon-b@users.noreply.github.com> Co-authored-by: Antoine Leblanc <1618949+nicuveo@users.noreply.github.com> Co-authored-by: Evie Ciobanu <1017953+eviefp@users.noreply.github.com> Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com> Co-authored-by: Naveen Naidu <30195193+Naveenaidu@users.noreply.github.com> Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com> Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com> Co-authored-by: Puru Gupta <32328846+purugupta99@users.noreply.github.com> Co-authored-by: Daniele Cammareri <5709409+dancamma@users.noreply.github.com> Co-authored-by: Marion Schleifer <5722022+marionschleifer@users.noreply.github.com> GitOrigin-RevId: a50879ee790d3409c0b97c87a0e3d2b793c9ff37
2022-07-21 12:30:18 +03:00
"@testing-library/cypress": "^8.0.3",
"@testing-library/dom": "8.17.1",
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^11.2.7",
"@testing-library/react-hooks": "7.0.2",
"@types/clean-webpack-plugin": "0.1.3",
"@types/concurrently": "5.1.0",
"@types/dotenv": "8.2.0",
"@types/file-loader": "4.2.0",
"@types/fork-ts-checker-webpack-plugin": "0.4.5",
"@types/highlight.js": "9.12.4",
"@types/isomorphic-fetch": "0.0.35",
"@types/jest": "^26.0.22",
"@types/jquery": "3.3.33",
"@types/jwt-decode": "2.2.1",
"@types/lodash": "^4.14.159",
"@types/lodash.debounce": "^4.0.7",
"@types/lodash.isequal": "^4.5.6",
"@types/lodash.merge": "^4.6.6",
"@types/lodash.pickby": "^4.6.7",
"@types/lodash.uniqueid": "^4.0.7",
"@types/mini-css-extract-plugin": "0.9.1",
"@types/optimize-css-assets-webpack-plugin": "5.0.1",
"@types/react": "17.0.39",
"@types/react-addons-test-utils": "0.14.25",
"@types/react-autosuggest": "^10.1.5",
"@types/react-bootstrap": "0.32.21",
"@types/react-dom": "16.9.5",
"@types/react-helmet": "5.0.15",
"@types/react-hot-loader": "4.1.1",
"@types/react-notification-system-redux": "1.1.6",
"@types/react-redux": "7.1.7",
"@types/react-router": "3.0.8",
"@types/react-router-redux": "4.0.44",
"@types/react-select": "3.0.12",
"@types/react-toggle": "4.0.2",
"@types/react-youtube": "^7.6.2",
"@types/redux-devtools": "3.0.47",
"@types/redux-devtools-dock-monitor": "1.1.33",
"@types/redux-devtools-log-monitor": "1.0.34",
"@types/redux-mock-store": "1.0.2",
"@types/reselect": "^2.2.0",
"@types/sinon": "7.5.2",
"@types/sql-formatter": "2.3.0",
"@types/styled-components": "5.1.0",
"@types/styled-system": "5.1.9",
"@types/terser-webpack-plugin": "2.2.0",
"@types/unused-files-webpack-plugin": "3.4.1",
"@types/uuid": "^8.3.4",
"@types/webpack": "4.41.7",
"@types/webpack-bundle-analyzer": "2.13.3",
"@types/webpack-dev-middleware": "3.7.0",
"@types/webpack-hot-middleware": "2.25.0",
"@types/ws": "7.2.3",
"@types/youtube-player": "^5.5.3",
"@typescript-eslint/eslint-plugin": "4.19.0",
"@typescript-eslint/parser": "4.19.0",
"@webpack-cli/serve": "^1.7.0",
"autoprefixer": "10.4.8",
"babel-eslint": "10.1.0",
"babel-loader": "8.0.6",
"babel-plugin-istanbul": "5.2.0",
"babel-plugin-styled-components": "1.10.7",
"babel-plugin-transform-es2015-modules-commonjs": "^6.26.2",
"babel-plugin-transform-react-remove-prop-types": "0.4.24",
"bootstrap-sass": "3.4.1",
"clean-webpack-plugin": "0.1.19",
"concurrently": "5.2.0",
"cross-env": "7.0.2",
"css-loader": "3.5.3",
"cypress": "^10.4.0",
"dedent": "0.7.0",
"dotenv": "5.0.1",
"eslint": "6.8.0",
2018-06-28 07:57:37 +03:00
"eslint-config-airbnb": "16.1.0",
"eslint-config-prettier": "8.1.0",
"eslint-plugin-chai-friendly": "0.4.1",
"eslint-plugin-import": "2.22.1",
"eslint-plugin-jest-dom": "^3.9.0",
"eslint-plugin-jsx-a11y": "6.4.1",
"eslint-plugin-react": "7.21.5",
"eslint-plugin-react-hooks": "^4.0.4",
"eslint-plugin-testing-library": "4.9.0",
"extract-hoc": "0.0.5",
"file-loader": "1.1.11",
2020-06-02 11:14:45 +03:00
"fork-ts-checker-webpack-plugin": "4.1.3",
"husky": "^4.2.3",
"identity-obj-proxy": "^3.0.0",
"ignore-loader": "0.1.2",
"jest": "26.6.3",
"jest-svg-transformer": "^1.0.0",
"jquery": "3.5.1",
"less-loader": "4.1.0",
2020-06-02 11:14:45 +03:00
"lint-staged": "10.2.2",
"mini-css-extract-plugin": "0.4.5",
"msw": "0.29.0",
"msw-storybook-addon": "1.6.3",
"nyc": "15.0.1",
"optimize-css-assets-webpack-plugin": "5.0.3",
"postcss": "8.4.14",
"postcss-loader": "4.2.0",
"prettier": "2.3.2",
"react-hot-loader": "4.13.0",
"redux-devtools": "3.7.0",
"redux-mock-store": "1.5.4",
"remark-external-links": "8.0.0",
"remark-slug": "6.1.0",
"resolve-url-loader": "2.3.2",
"sass": "^1.38.0",
"sass-loader": "7.3.1",
"source-map-loader": "0.2.4",
"storybook-dark-mode": "^1.1.0",
"style-loader": "0.20.3",
"tailwindcss": "3.1.7",
"terser-webpack-plugin": "4.2.3",
"ts-jest": "26.5.4",
"tsconfig-paths-webpack-plugin": "^3.5.1",
"typescript": "4.5.2",
"url-loader": "1.1.2",
"webpack": "4.42.0",
"webpack-cli": "4.10.0",
"webpack-dev-middleware": "3.7.2",
"webpack-dev-server": "^4.9.3",
"webpack-hot-middleware": "2.25.0",
"webpack-node-externals": "^1.7.2",
"whatwg-fetch": "^3.6.2"
2018-06-28 07:57:37 +03:00
},
"engines": {
"node": ">=16"
},
"msw": {
"workerDirectory": "static"
}
}