package.json 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. {
  2. "private": true,
  3. "scripts": {
  4. "generate-graphql-api": "RAILS_ENV=development bundle exec rails generate zammad:graphql_introspection > app/graphql/graphql_introspection.json && npx graphql-codegen -c .graphql_code_generator.yml",
  5. "generate-setting-types": "RAILS_ENV=development bundle exec rails generate zammad:setting_types",
  6. "dev": "RAILS_ENV=development forego start -f Procfile.dev",
  7. "dev:https": "VITE_RUBY_HOST=0.0.0.0 VITE_RUBY_HTTPS=true RAILS_ENV=development forego start -f Procfile.dev-https",
  8. "i18n": "rails generate zammad:translation_catalog",
  9. "lint": "vue-tsc --noEmit && eslint --cache --cache-location ./tmp/eslintcache.js --cache-strategy content -c .eslintrc.js --ext .js,.ts,.vue app/frontend/ .eslint-plugin-zammad/",
  10. "lint:fix": "yarn lint -- --fix",
  11. "lint:css": "stylelint **/*.{css,vue,scss}",
  12. "lint:css:fix": "stylelint **/*.{css,vue,scss} --fix",
  13. "test": "VTL_SKIP_AUTO_CLEANUP=true TZ=utc vitest",
  14. "test:ct": "CY_OPEN=true yarn --cwd ./.cypress cypress open --component --project ../ --config-file .cypress/cypress.config.mjs",
  15. "test:ci:ct": "CI=true yarn --cwd ./.cypress cypress run --component --project ../ --config-file .cypress/cypress.config.mjs --browser electron",
  16. "cypress:snapshots": "sh .cypress/visual-regression/snapshots.sh",
  17. "cypress:install": "yarn --cwd ./.cypress install",
  18. "postinstall": "node script/fix-node-modules.mjs",
  19. "story": "histoire dev",
  20. "story:build": "HISTOIRE_BUILD=1 histoire build"
  21. },
  22. "engines": {
  23. "node": ">=16"
  24. },
  25. "packageManager": "yarn@1.22.19",
  26. "devDependencies": {
  27. "@faker-js/faker": "^8.0.2",
  28. "@graphql-codegen/cli": "^5.0.0",
  29. "@graphql-codegen/introspection": "^4.0.0",
  30. "@graphql-codegen/near-operation-file-preset": "^2.5.0",
  31. "@graphql-codegen/typescript": "^4.0.1",
  32. "@graphql-codegen/typescript-operations": "^4.0.1",
  33. "@graphql-codegen/typescript-vue-apollo": "^3.3.7",
  34. "@histoire/plugin-vue": "^0.17.1",
  35. "@pinia/testing": "^0.1.3",
  36. "@testing-library/jest-dom": "^5.17.0",
  37. "@testing-library/user-event": "^14.4.3",
  38. "@testing-library/vue": "^7.0.0",
  39. "@types/lodash-es": "^4.17.8",
  40. "@types/rails__actioncable": "^6.1.6",
  41. "@types/ua-parser-js": "^0.7.36",
  42. "@types/uuid": "^9.0.2",
  43. "@typescript-eslint/eslint-plugin": "^5.62.0",
  44. "@typescript-eslint/parser": "^5.62.0",
  45. "@vitejs/plugin-vue": "^4.2.3",
  46. "@vue/eslint-config-prettier": "^8.0.0",
  47. "@vue/eslint-config-typescript": "^11.0.3",
  48. "@vue/test-utils": "^2.4.1",
  49. "autoprefixer": "^10.4.15",
  50. "eslint": "^8.45.0",
  51. "eslint-config-airbnb-base": "^15.0.0",
  52. "eslint-config-prettier": "^8.8.0",
  53. "eslint-import-resolver-alias": "^1.1.2",
  54. "eslint-import-resolver-typescript": "^3.5.5",
  55. "eslint-plugin-import": "^2.27.5",
  56. "eslint-plugin-prettier": "^5.0.0",
  57. "eslint-plugin-prettier-vue": "^4.2.0",
  58. "eslint-plugin-security": "^1.7.1",
  59. "eslint-plugin-sonarjs": "^0.19.0",
  60. "eslint-plugin-vue": "^9.15.1",
  61. "eslint-plugin-zammad": "file:.eslint-plugin-zammad",
  62. "histoire": "^0.17.0",
  63. "jsdom": "^22.1.0",
  64. "mock-apollo-client": "^1.2.1",
  65. "postcss": "^8.4.28",
  66. "postcss-html": "^1.5.0",
  67. "prettier": "3.0.2",
  68. "prettier-plugin-tailwindcss": "^0.5.3",
  69. "regenerator-runtime": "^0.14.0",
  70. "sass": "^1.65.1",
  71. "stylelint": "^15.10.3",
  72. "stylelint-config-prettier": "^9.0.5",
  73. "stylelint-config-recommended-vue": "^1.5.0",
  74. "stylelint-config-standard": "^34.0.0",
  75. "stylelint-config-standard-scss": "^10.0.0",
  76. "stylelint-prettier": "^4.0.2",
  77. "stylelint-scss": "^5.1.0",
  78. "svg-baker": "^1.7.0",
  79. "svgo": "^3.0.2",
  80. "tailwindcss": "^3.3.3",
  81. "timezone-mock": "^1.3.6",
  82. "type-fest": "^3.13.1",
  83. "typescript": "^5.1.6",
  84. "vite": "^4.4.9",
  85. "vite-plugin-pwa": "^0.16.4",
  86. "vite-plugin-ruby": "^3.2.2",
  87. "vitest": "^0.34.3",
  88. "vitest-axe": "^0.1.0",
  89. "vue-tsc": "^1.8.8"
  90. },
  91. "dependencies": {
  92. "@apollo/client": "^3.7.17",
  93. "@formkit/core": "^0.17.4",
  94. "@formkit/dev": "^0.17.4",
  95. "@formkit/i18n": "^0.17.4",
  96. "@formkit/inputs": "^0.17.4",
  97. "@formkit/rules": "^0.17.4",
  98. "@formkit/tailwindcss": "^0.17.4",
  99. "@formkit/themes": "^0.17.4",
  100. "@formkit/utils": "^0.17.4",
  101. "@formkit/validation": "^0.17.4",
  102. "@formkit/vue": "^0.17.4",
  103. "@github/webauthn-json": "^2.1.1",
  104. "@rails/actioncable": "6.1.7",
  105. "@tiptap/core": "^2.0.4",
  106. "@tiptap/extension-blockquote": "^2.0.4",
  107. "@tiptap/extension-character-count": "^2.0.4",
  108. "@tiptap/extension-hard-break": "^2.0.4",
  109. "@tiptap/extension-image": "^2.0.4",
  110. "@tiptap/extension-link": "^2.0.4",
  111. "@tiptap/extension-list-item": "^2.0.4",
  112. "@tiptap/extension-mention": "^2.0.4",
  113. "@tiptap/extension-ordered-list": "^2.0.4",
  114. "@tiptap/extension-paragraph": "^2.0.4",
  115. "@tiptap/extension-strike": "^2.0.4",
  116. "@tiptap/extension-underline": "^2.0.4",
  117. "@tiptap/pm": "^2.0.4",
  118. "@tiptap/starter-kit": "^2.0.4",
  119. "@tiptap/suggestion": "^2.0.4",
  120. "@tiptap/vue-3": "^2.0.4",
  121. "@vue/apollo-composable": "4.0.0-beta.5",
  122. "@vueuse/core": "^10.4.0",
  123. "@vueuse/router": "^10.4.0",
  124. "@vueuse/shared": "^10.4.0",
  125. "async-mutex": "^0.4.0",
  126. "flatpickr": "^4.6.13",
  127. "graphql": "^16.7.1",
  128. "graphql-ruby-client": "^1.11.8",
  129. "graphql-tag": "^2.12.6",
  130. "linkify-string": "^4.1.1",
  131. "linkifyjs": "^4.1.1",
  132. "lodash-es": "^4.17.21",
  133. "loglevel": "^1.8.1",
  134. "mitt": "^3.0.1",
  135. "pinia": "^2.1.6",
  136. "tippy.js": "^6.3.7",
  137. "tiptap-text-direction": "^0.3.0",
  138. "ua-parser-js": "^1.0.35",
  139. "uuid": "^9.0.0",
  140. "vue": "^3.3.4",
  141. "vue-advanced-cropper": "^2.8.8",
  142. "vue-easy-lightbox": "1.16.0",
  143. "vue-router": "^4.2.4",
  144. "vue3-draggable-resizable": "^1.6.5",
  145. "vuedraggable": "^4.1.0",
  146. "workbox-core": "^7.0.0",
  147. "workbox-precaching": "^7.0.0",
  148. "workbox-window": "^7.0.0"
  149. },
  150. "resolutions": {
  151. "loader-utils": "^3.2.1",
  152. "postcss": "^8.4.28",
  153. "stylelint-config-recommended": "^13.0.0"
  154. }
  155. }