[{"title":"(65个子文件122KB)nodejs-全球辅导计划-2020q3-t-2-源码","children":[{"title":"nodejs-global-mentoring-program-2020q3-t-2-master","children":[{"title":"src","children":[{"title":"dataAccess","children":[{"title":"user","children":[{"title":"index.ts <span style='color:#111;'>76B</span>","children":null,"spread":false},{"title":"user.ts <span style='color:#111;'>673B</span>","children":null,"spread":false},{"title":"userImpl.ts <span style='color:#111;'>2.47KB</span>","children":null,"spread":false},{"title":"userImpl.test.ts <span style='color:#111;'>8.01KB</span>","children":null,"spread":false}],"spread":true},{"title":"group","children":[{"title":"groupImpl.ts <span style='color:#111;'>2.41KB</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>80B</span>","children":null,"spread":false},{"title":"group.ts <span style='color:#111;'>684B</span>","children":null,"spread":false},{"title":"groupImpl.test.ts <span style='color:#111;'>7.03KB</span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"app.ts <span style='color:#111;'>762B</span>","children":null,"spread":false},{"title":"services","children":[{"title":"utils","children":[{"title":"utils.ts <span style='color:#111;'>327B</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>88B</span>","children":null,"spread":false},{"title":"utilsImpl.ts <span style='color:#111;'>1.12KB</span>","children":null,"spread":false}],"spread":true},{"title":"auth","children":[{"title":"auth.ts <span style='color:#111;'>397B</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>93B</span>","children":null,"spread":false},{"title":"authImpl.ts <span style='color:#111;'>3.54KB</span>","children":null,"spread":false}],"spread":true},{"title":"logger","children":[{"title":"logger.ts <span style='color:#111;'>90B</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>92B</span>","children":null,"spread":false},{"title":"loggerImpl.ts <span style='color:#111;'>463B</span>","children":null,"spread":false}],"spread":true},{"title":"jwt","children":[{"title":"jwtImpl.ts <span style='color:#111;'>461B</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>80B</span>","children":null,"spread":false},{"title":"jwt.ts <span style='color:#111;'>317B</span>","children":null,"spread":false}],"spread":true},{"title":"user","children":[{"title":"index.ts <span style='color:#111;'>84B</span>","children":null,"spread":false},{"title":"user.ts <span style='color:#111;'>520B</span>","children":null,"spread":false},{"title":"userImpl.ts <span style='color:#111;'>985B</span>","children":null,"spread":false},{"title":"userImpl.test.ts <span style='color:#111;'>2.75KB</span>","children":null,"spread":false}],"spread":true},{"title":"group","children":[{"title":"groupImpl.ts <span style='color:#111;'>898B</span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'>88B</span>","children":null,"spread":false},{"title":"group.ts <span style='color:#111;'>465B</span>","children":null,"spread":false},{"title":"groupImpl.test.ts <span style='color:#111;'>2.66KB</span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"models","children":[{"title":"index.ts <span style='color:#111;'>1023B</span>","children":null,"spread":false},{"title":"group.ts <span style='color:#111;'>946B</span>","children":null,"spread":false},{"title":"user.ts <span style='color:#111;'>1.04KB</span>","children":null,"spread":false},{"title":"userGroup.ts <span style='color:#111;'>828B</span>","children":null,"spread":false}],"spread":true},{"title":"controllers","children":[{"title":"auth","children":[{"title":"authRouter.ts <span style='color:#111;'>1.26KB</span>","children":null,"spread":false},{"title":"authController.ts <span style='color:#111;'>1.15KB</span>","children":null,"spread":false}],"spread":true},{"title":"user","children":[{"title":"userRouter.ts <span style='color:#111;'>1.15KB</span>","children":null,"spread":false},{"title":"userController.test.ts <span style='color:#111;'>6.22KB</span>","children":null,"spread":false},{"title":"userController.ts <span style='color:#111;'>1.87KB</span>","children":null,"spread":false}],"spread":true},{"title":"group","children":[{"title":"groupController.test.ts <span style='color:#111;'>6.13KB</span>","children":null,"spread":false},{"title":"groupRouter.ts <span style='color:#111;'>1.08KB</span>","children":null,"spread":false},{"title":"groupController.ts <span style='color:#111;'>1.80KB</span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"jwtStrategy.ts <span style='color:#111;'>786B</span>","children":null,"spread":false},{"title":"middlewares","children":[{"title":"endpointLogger.ts <span style='color:#111;'>638B</span>","children":null,"spread":false},{"title":"error.ts <span style='color:#111;'>786B</span>","children":null,"spread":false},{"title":"withJwt.ts <span style='color:#111;'>98B</span>","children":null,"spread":false},{"title":"validation","children":[{"title":"messageKeys.ts <span style='color:#111;'>325B</span>","children":null,"spread":false},{"title":"auth","children":[{"title":"putSchema.ts <span style='color:#111;'>407B</span>","children":null,"spread":false},{"title":"deleteSchema.ts <span style='color:#111;'>61B</span>","children":null,"spread":false},{"title":"messages.ts <span style='color:#111;'>228B</span>","children":null,"spread":false},{"title":"postSchema.ts <span style='color:#111;'>467B</span>","children":null,"spread":false}],"spread":false},{"title":"user","children":[{"title":"getSchema.ts <span style='color:#111;'>654B</span>","children":null,"spread":false},{"title":"putSchema.ts <span style='color:#111;'>748B</span>","children":null,"spread":false},{"title":"messages.ts <span style='color:#111;'>631B</span>","children":null,"spread":false},{"title":"postSchema.ts <span style='color:#111;'>968B</span>","children":null,"spread":false}],"spread":false},{"title":"validateSchema.ts <span style='color:#111;'>778B</span>","children":null,"spread":false},{"title":"group","children":[{"title":"putSchema.ts <span style='color:#111;'>552B</span>","children":null,"spread":false},{"title":"messages.ts <span style='color:#111;'>221B</span>","children":null,"spread":false},{"title":"postSchema.ts <span style='color:#111;'>718B</span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":"tsconfig.json <span style='color:#111;'>5.96KB</span>","children":null,"spread":false},{"title":"jest.config.js <span style='color:#111;'>104B</span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'>44B</span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'>24B</span>","children":null,"spread":false},{"title":"server.ts <span style='color:#111;'>715B</span>","children":null,"spread":false},{"title":"package-lock.json <span style='color:#111;'>297.49KB</span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'>1.55KB</span>","children":null,"spread":false}],"spread":true}],"spread":true}]