{
  "name": "@api-platform/client-generator",
  "version": "0.8.0",
  "description": "Generate apps built with Next, Nuxt, Quasar, React, React Native, Vue or Vuetify for any API documented using Hydra or OpenAPI",
  "files": [
    "*.md",
    "docs/*.md",
    "lib",
    "src",
    "templates"
  ],
  "type": "module",
  "exports": "./lib/index.js",
  "repository": "api-platform/client-generator",
  "homepage": "https://github.com/api-platform/client-generator",
  "bugs": "https://github.com/api-platform/client-generator/issues",
  "author": "Kévin Dunglas",
  "license": "MIT",
  "devDependencies": {
    "@babel/cli": "^7.0.0",
    "@babel/core": "^7.0.0",
    "@babel/eslint-parser": "^7.0.0",
    "@babel/plugin-proposal-class-properties": "^7.0.0",
    "@babel/plugin-proposal-export-default-from": "^7.0.0",
    "@babel/plugin-transform-flow-strip-types": "^7.0.0",
    "@babel/plugin-transform-runtime": "^7.0.0",
    "@babel/preset-env": "^7.6.0",
    "@playwright-testing-library/test": "4.3.0-beta.1",
    "@playwright/test": "^1.25.0",
    "babel-jest": "^28.1.0",
    "eslint": "^8.22.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-plugin-import": "^2.26.0",
    "eslint-plugin-prettier": "^4.2.0",
    "husky": "^8.0.0",
    "jest": "^28.1.0",
    "jest-light-runner": "^0.3.0",
    "lint-staged": "^13.0.0",
    "start-server-and-test": "^1.14.0",
    "tmp": "^0.2.0"
  },
  "dependencies": {
    "@api-platform/api-doc-parser": "^0.15.0",
    "@babel/runtime": "^7.0.0",
    "chalk": "^5.0.0",
    "commander": "^9.4.0",
    "esutils": "^2.0.0",
    "handlebars": "^4.0.0",
    "handlebars-helpers": "^0.10.0",
    "isomorphic-fetch": "^3.0.0",
    "mkdirp": "^1.0.0",
    "prettier": "^2.7.0",
    "sprintf-js": "^1.1.0"
  },
  "scripts": {
    "prepare": "husky install",
    "test": "jest src",
    "lint": "eslint src",
    "fix": "eslint --fix src",
    "eslint-check": "eslint-config-prettier src/index.js",
    "build": "babel src -d lib --ignore '*.test.js'",
    "watch": "babel --watch src -d lib --ignore '*.test.js'",
    "test-gen": "rm -rf ./tmp && yarn build && ./testgen.sh",
    "test-gen-openapi3": "rm -rf ./tmp && yarn build && ENTRYPOINT=https://demo.api-platform.com/docs.json FORMAT=openapi3 ./testgen.sh",
    "test-gen-custom": "rm -rf ./tmp && yarn build && babel src/generators/ReactGenerator.js src/generators/BaseGenerator.js -d ./tmp/gens && cp -r ./templates/react ./templates/react-common ./templates/entrypoint.js ./tmp/gens && ./lib/index.js https://demo.api-platform.com ./tmp/react-custom -g \"$(pwd)/tmp/gens/ReactGenerator.js\" -t ./tmp/gens",
    "test-gen-env": "rm -rf ./tmp && yarn build && API_PLATFORM_CLIENT_GENERATOR_ENTRYPOINT=https://demo.api-platform.com API_PLATFORM_CLIENT_GENERATOR_OUTPUT=./tmp ./lib/index.js",
    "test-react-app": "rm -rf ./tmp/app && mkdir -p ./tmp/app && yarn create react-app --template typescript ./tmp/app/reactapp && yarn --cwd ./tmp/app/reactapp add react-router-dom react-hook-form && cp -R ./tmp/react/* ./tmp/app/reactapp/src && cp ./templates/react/index.tsx ./tmp/app/reactapp/src && start-server-and-test 'BROWSER=none yarn --cwd ./tmp/app/reactapp start' http://127.0.0.1:3000/books/ 'yarn playwright test'",
    "test-next-app": "rm -rf ./tmp/app && mkdir -p ./tmp/app && yarn create next-app --typescript ./tmp/app/next && yarn --cwd ./tmp/app/next add isomorphic-unfetch formik react-query && cp -R ./tmp/next/* ./tmp/app/next && rm ./tmp/app/next/pages/index.tsx && rm -rf ./tmp/app/next/pages/api && yarn --cwd ./tmp/app/next build && start-server-and-test 'yarn --cwd ./tmp/app/next start' http://127.0.0.1:3000/books/ 'yarn playwright test'",
    "test-vue-app": "rm -rf ./tmp/app && mkdir -p ./tmp/app && cd ./tmp/app && npm init -y vue@2 -- --router vue && cd ../.. && yarn --cwd ./tmp/app/vue add vuex@3 vuex-map-fields lodash && cp -R ./tmp/vue/* ./tmp/app/vue/src && cp ./templates/vue/main.js ./tmp/app/vue/src && yarn --cwd ./tmp/app/vue build && start-server-and-test 'yarn --cwd ./tmp/app/vue vite preview --host 127.0.0.1 --port 3000' http://127.0.0.1:3000/books/ 'yarn playwright test'",
    "test-nuxt-app": "rm -rf ./tmp/app && mkdir -p ./tmp/app && yarn create nuxt-app --answers \"'{\\\"name\\\":\\\"nuxt\\\",\\\"language\\\":\\\"js\\\",\\\"pm\\\":\\\"yarn\\\",\\\"ui\\\":\\\"vuetify\\\",\\\"features\\\":[],\\\"linter\\\":[],\\\"test\\\":\\\"none\\\",\\\"mode\\\":\\\"spa\\\",\\\"target\\\":\\\"static\\\",\\\"devTools\\\":[],\\\"vcs\\\":\\\"none\\\"}'\" ./tmp/app/nuxt && yarn --cwd ./tmp/app/nuxt add moment lodash vuelidate vuex-map-fields && cp -R ./tmp/nuxt/* ./tmp/app/nuxt && NUXT_TELEMETRY_DISABLED=1 yarn --cwd ./tmp/app/nuxt generate && start-server-and-test 'yarn --cwd ./tmp/app/nuxt start --hostname 127.0.0.1' http://127.0.0.1:3000/books/ 'yarn playwright test'"
  },
  "lint-staged": {
    "src/**/*.js": "yarn lint --fix"
  },
  "bin": {
    "generate-api-platform-client": "./lib/index.js"
  },
  "publishConfig": {
    "access": "public"
  }
}
