kubb-labs / kubb

The ultimate toolkit for working with APIs.
https://kubb.dev
MIT License
720 stars 65 forks source link

changing the output of swagger-ts plugin will still create a types folder #692

Closed chiptus closed 11 months ago

chiptus commented 11 months ago

What version of kubb is running?

2.0.0-beta.8

What platform is your computer?

linux

What version of external packages are you using(@tanstack-query, MSW, React, Vue, ...)

    "@aws-crypto/sha256-js": "^2.0.0",
    "@codemirror/autocomplete": "^6.4.0",
    "@codemirror/language": "^6.3.2",
    "@codemirror/legacy-modes": "^6.3.1",
    "@codemirror/lint": "^6.1.0",
    "@codemirror/search": "^6.2.3",
    "@codemirror/state": "^6.2.0",
    "@codemirror/theme-one-dark": "^6.1.0",
    "@codemirror/view": "^6.7.1",
    "@lezer/common": "^1.0.2",
    "@lezer/highlight": "^1.1.3",
    "@nxmix/tokenize-ansi": "^3.0.0",
    "@open-amt-cloud-toolkit/ui-toolkit-react": "2.0.0",
    "@reach/combobox": "^0.16.5",
    "@reach/dialog": "^0.17.0",
    "@reach/menu-button": "^0.16.1",
    "@reach/popover": "^0.18.0",
    "@tanstack/react-table": "^8.8.5",
    "@tippyjs/react": "^4.2.6",
    "@uirouter/angularjs": "1.0.11",
    "@uirouter/react": "^1.0.7",
    "@uirouter/react-hybrid": "^1.0.4",
    "@uiw/codemirror-themes": "^4.19.9",
    "@uiw/react-codemirror": "^4.19.5",
    "angular": "1.8.2",
    "angular-clipboard": "^1.6.2",
    "angular-file-saver": "^1.1.3",
    "angular-json-tree": "1.1.0",
    "angular-loading-bar": "~0.9.0",
    "angular-local-storage": "~0.5.2",
    "angular-messages": "1.8.2",
    "angular-mocks": "1.8.2",
    "angular-moment-picker": "^0.10.2",
    "angular-resource": "1.8.2",
    "angular-sanitize": "1.8.2",
    "angular-ui-bootstrap": "~2.5.0",
    "angular-utils-pagination": "~0.11.1",
    "angularjs-scroll-glue": "^2.2.0",
    "angularjs-slider": "^6.4.0",
    "angulartics": "^1.6.0",
    "ansicolor": "^1.1.100",
    "axios": "^0.24.0",
    "axios-cache-adapter": "^2.7.3",
    "axios-progress-bar": "^1.2.0",
    "babel-plugin-angularjs-annotate": "^0.10.0",
    "bootstrap": "^3.4.0",
    "buffer": "^6.0.3",
    "chardet": "^1.4.0",
    "chart.js": "^2.7.0",
    "clsx": "^1.1.1",
    "codemirror": "^6.0.1",
    "core-js": "^3.19.3",
    "cron-schedule": "^3.0.4",
    "css-to-style": "^1.4.0",
    "date-fns": "^2.29.3",
    "daterangepicker": "^3.1.0",
    "docker-types": "^1.42.2",
    "fast-json-patch": "^3.1.1",
    "file-saver": "^2.0.5",
    "filesize": "~3.3.0",
    "filesize-parser": "^1.5.0",
    "formik": "^2.2.9",
    "i18next": "^21.3.3",
    "i18next-browser-languagedetector": "^6.1.2",
    "i18next-http-backend": "^1.3.1",
    "jquery": "^3.6.0",
    "js-base64": "^3.7.2",
    "js-yaml": "^3.14.0",
    "lodash": "^4.17.21",
    "lucide-react": "^0.258.0",
    "moment": "^2.29.1",
    "moment-timezone": "^0.5.40",
    "msw": "^0.49.2",
    "mustache": "^4.2.0",
    "ng-file-upload": "~12.2.13",
    "parse-duration": "^1.0.2",
    "rc-slider": "^10.0.0",
    "react": "^17.0.2",
    "react-chat-widget": "^3.1.4",
    "react-datetime-picker": "^4.2.0",
    "react-dom": "^17.0.2",
    "react-i18next": "^11.12.0",
    "react-is": "^17.0.2",
    "react-query": "^3.33.4",
    "react-resize-detector": "^7.1.2",
    "react-select": "^5.2.1",
    "react-virtualized-auto-sizer": "^1.0.7",
    "react-window": "^1.8.7",
    "sanitize-html": "^2.7.3",
    "spinkit": "^2.0.1",
    "strip-ansi": "^6.0.0",
    "tippy.js": "^6.3.7",
    "toastr": "^2.1.4",
    "ts-xor": "^1.1.0",
    "uuid": "^3.3.2",
    "xterm": "^3.8.0",
    "yaml": "^1.10.2",
    "yup": "^0.32.11",
    "zustand": "^4.1.1"
  },
  "devDependencies": {
    "@apidevtools/swagger-cli": "^4.0.4",
    "@babel/core": "^7.23.0",
    "@babel/preset-env": "^7.22.20",
    "@babel/preset-react": "^7.22.15",
    "@babel/preset-typescript": "^7.23.0",
    "@kubb/cli": "2.0.0-beta.8",
    "@kubb/core": "2.0.0-beta.8",
    "@kubb/react": "2.0.0-beta.8",
    "@kubb/swagger": "2.0.0-beta.8",
    "@kubb/swagger-tanstack-query": "2.0.0-beta.8",
    "@kubb/swagger-ts": "2.0.0-beta.8",
    "@simbathesailor/use-what-changed": "^2.0.0",
    "@storybook/addon-actions": "^7.0.18",
    "@storybook/addon-essentials": "^7.0.18",
    "@storybook/addon-links": "^7.0.18",
    "@storybook/addon-styling": "^1.0.8",
    "@storybook/react": "^7.0.18",
    "@storybook/react-webpack5": "^7.0.18",
    "@svgr/webpack": "^8.1.0",
    "@testing-library/jest-dom": "^5.16.1",
    "@testing-library/react": "^12.1.2",
    "@testing-library/user-event": "^13.5.0",
    "@types/angular": "^1.8.3",
    "@types/css-to-style": "^1.2.0",
    "@types/file-saver": "^2.0.4",
    "@types/filesize-parser": "^1.5.1",
    "@types/jest": "^27.0.3",
    "@types/jquery": "^3.5.10",
    "@types/lodash-es": "^4.17.5",
    "@types/mustache": "^4.1.2",
    "@types/nprogress": "^0.2.0",
    "@types/react": "^17.0.37",
    "@types/react-datetime-picker": "^3.4.1",
    "@types/react-dom": "^17.0.11",
    "@types/react-is": "^17.0.3",
    "@types/react-virtualized-auto-sizer": "^1.0.1",
    "@types/react-window": "^1.8.5",
    "@types/sanitize-html": "^2.6.2",
    "@types/toastr": "^2.1.39",
    "@types/uuid": "^3.3.2",
    "@typescript-eslint/eslint-plugin": "^6.7.4",
    "@typescript-eslint/parser": "^6.7.4",
    "auto-ngtemplate-loader": "^3.1.2",
    "autoprefixer": "^10.4.16",
    "babel-jest": "^29.5.0",
    "babel-loader": "^9.1.3",
    "babel-plugin-i18next-extract": "^0.9.0",
    "babel-plugin-lodash": "^3.3.4",
    "clean-terminal-webpack-plugin": "^3.0.0",
    "clean-webpack-plugin": "^4.0.0",
    "copy-webpack-plugin": "^11.0.0",
    "css-loader": "^6.8.1",
    "cssnano": "^6.0.1",
    "dotenv-webpack": "^8.0.1",
    "eslint": "^8.50.0",
    "eslint-config-airbnb": "^19.0.4",
    "eslint-config-airbnb-typescript": "^17.1.0",
    "eslint-config-prettier": "^9.0.0",
    "eslint-import-resolver-alias": "^1.1.2",
    "eslint-plugin-eslint-comments": "^3.2.0",
    "eslint-plugin-import": "^2.28.1",
    "eslint-plugin-jest": "^27.4.2",
    "eslint-plugin-jsx-a11y": "^6.7.1",
    "eslint-plugin-promise": "^6.1.1",
    "eslint-plugin-react": "^7.33.2",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-regex": "^1.10.0",
    "eslint-plugin-storybook": "^0.6.14",
    "eslint-webpack-plugin": "^4.0.0",
    "html-loader": "^0.5.5",
    "html-webpack-plugin": "^5.5.3",
    "husky": "^8.0.0",
    "jest": "^27.4.3",
    "kubernetes-types": "^1.26.0",
    "lint-staged": "^14.0.1",
    "lodash-webpack-plugin": "^0.11.6",
    "mini-css-extract-plugin": "^2.7.6",
    "msw-storybook-addon": "^1.8.0",
    "ngtemplate-loader": "^2.1.0",
    "plop": "^4.0.0",
    "postcss": "^8.4.31",
    "postcss-loader": "^7.3.3",
    "prettier": "^3.0.3",
    "prettier-plugin-tailwindcss": "^0.5.4",
    "react-docgen-typescript-plugin": "^1.0.5",
    "react-test-renderer": "^17.0.2",
    "source-map-loader": "^4.0.1",
    "speed-measure-webpack-plugin": "^1.5.0",
    "storybook": "^7.0.18",
    "storybook-css-modules-preset": "^1.1.1",
    "style-loader": "^3.3.3",
    "swagger2openapi": "^7.0.8",
    "tailwindcss": "3.3.3",
    "tsconfig-paths-webpack-plugin": "^4.1.0",
    "typescript": "^5.2.2",
    "webpack": "^5.88.2",
    "webpack-build-notifier": "^2.3.0",
    "webpack-bundle-analyzer": "^4.9.1",
    "webpack-cli": "^5.1.4",
    "webpack-dev-server": "^4.15.1",
    "webpack-merge": "^5.9.0"
  },

What steps can reproduce the bug?

import { defineConfig } from '@kubb/core';
import createSwagger from '@kubb/swagger';
import createSwaggerTS from '@kubb/swagger-ts';
import createSwaggerTanstackQuery from '@kubb/swagger-tanstack-query';

export default defineConfig({
  root: '.',
  input: {
    path: './dist/docs/swagger.yaml',
  },
  output: {
    path: './app/gen',
  },
  plugins: [
    createSwagger({ output: false }),
    createSwaggerTS({ group: { type: 'tag' }, output: { path: './' } }),
    createSwaggerTanstackQuery({
      group: { type: 'tag' },
      output: { path: './' },
    }),
  ],
});

How often does this bug happen?

Every time

What is the expected behavior?

these folders shouldn't be created

Swagger/OpenAPI file?

No response

Additional information

No response

stijnvanhulle commented 11 months ago

Can you provide me a codesandbox? Tried it with your config but cannot reproduce the types folder being created.

chiptus commented 11 months ago

right. I guess the folder was there from before I changed the options. sorry for that