Просмотр исходного кода

support(jsdoc): Add swagger document to login.js

Atsushi Nakatsugawa 1 год назад
Родитель
Сommit
51d13cd2c1
2 измененных файлов с 69 добавлено и 0 удалено
  1. 1 0
      apps/app/bin/swagger-jsdoc/generate-spec-apiv3.sh
  2. 68 0
      apps/app/src/server/routes/login.js

+ 1 - 0
apps/app/bin/swagger-jsdoc/generate-spec-apiv3.sh

@@ -12,4 +12,5 @@ swagger-jsdoc \
   -d "${APP_PATH}/bin/swagger-jsdoc/definition-apiv3.js" \
   -d "${APP_PATH}/bin/swagger-jsdoc/definition-apiv3.js" \
   "${APP_PATH}/src/features/external-user-group/server/routes/apiv3/*.ts" \
   "${APP_PATH}/src/features/external-user-group/server/routes/apiv3/*.ts" \
   "${APP_PATH}/src/server/routes/apiv3/**/*.{js,ts}" \
   "${APP_PATH}/src/server/routes/apiv3/**/*.{js,ts}" \
+  "${APP_PATH}/src/server/routes/login.js" \
   "${APP_PATH}/src/server/models/openapi/**/*.{js,ts}"
   "${APP_PATH}/src/server/models/openapi/**/*.{js,ts}"

+ 68 - 0
apps/app/src/server/routes/login.js

@@ -82,6 +82,38 @@ module.exports = function(crowi, app) {
       return res.apiv3({});
       return res.apiv3({});
     }
     }
 
 
+    /**
+     * @swagger
+     *
+     * /login:
+     *   post:
+     *     summary: /login
+     *     tags: [Users]
+     *     requestBody:
+     *       required: true
+     *       content:
+     *         application/json:
+     *           schema:
+     *             type: object
+     *             properties:
+     *               loginForm:
+     *                 type: object
+     *                 properties:
+     *                   username:
+     *                     type: string
+     *                   password:
+     *                     type: string
+     *     responses:
+     *       200:
+     *         description: Login successful
+     *         content:
+     *           application/json:
+     *             schema:
+     *               type: object
+     *               properties:
+     *                 redirectTo:
+     *                   type: string
+     */
     req.login(userData, (err) => {
     req.login(userData, (err) => {
       if (err) {
       if (err) {
         logger.debug(err);
         logger.debug(err);
@@ -131,6 +163,42 @@ module.exports = function(crowi, app) {
     next();
     next();
   };
   };
 
 
+  /**
+   * @swagger
+   *
+   * /register:
+   *   post:
+   *     summary: /register
+   *     tags: [Users]
+   *     requestBody:
+   *       required: true
+   *       content:
+   *         application/json:
+   *           schema:
+   *             type: object
+   *             properties:
+   *               registerForm:
+   *                 type: object
+   *                 properties:
+   *                   name:
+   *                     type: string
+   *                   username:
+   *                     type: string
+   *                   email:
+   *                     type: string
+   *                   password:
+   *                     type: string
+   *     responses:
+   *       200:
+   *         description: Register successful
+   *         content:
+   *           application/json:
+   *             schema:
+   *               type: object
+   *               properties:
+   *                 redirectTo:
+   *                   type: string
+   */
   actions.register = function(req, res) {
   actions.register = function(req, res) {
     if (req.user != null) {
     if (req.user != null) {
       return res.apiv3Err('message.user_already_logged_in', 403);
       return res.apiv3Err('message.user_already_logged_in', 403);