@laboratory-one/api-components 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/cjs/auth/auth.module.d.ts +3 -0
- package/dist/cjs/auth/auth.module.d.ts.map +1 -0
- package/dist/cjs/auth/auth.module.js +18 -0
- package/dist/cjs/auth/auth.module.js.map +1 -0
- package/dist/cjs/auth/auth.service.d.ts +11 -0
- package/dist/cjs/auth/auth.service.d.ts.map +1 -0
- package/dist/cjs/auth/auth.service.js +37 -0
- package/dist/cjs/auth/auth.service.js.map +1 -0
- package/dist/cjs/auth/index.d.ts +3 -0
- package/dist/cjs/auth/index.d.ts.map +1 -0
- package/dist/cjs/auth/index.js +6 -0
- package/dist/cjs/auth/index.js.map +1 -0
- package/dist/cjs/enums/humanDay.enum.d.ts +10 -0
- package/dist/cjs/enums/humanDay.enum.d.ts.map +1 -0
- package/dist/cjs/enums/humanDay.enum.js +14 -0
- package/dist/cjs/enums/humanDay.enum.js.map +1 -0
- package/dist/cjs/enums/index.d.ts +3 -0
- package/dist/cjs/enums/index.d.ts.map +1 -0
- package/dist/cjs/enums/index.js +6 -0
- package/dist/cjs/enums/index.js.map +1 -0
- package/dist/cjs/enums/onboarding-status.enum.d.ts +7 -0
- package/dist/cjs/enums/onboarding-status.enum.d.ts.map +1 -0
- package/dist/cjs/enums/onboarding-status.enum.js +11 -0
- package/dist/cjs/enums/onboarding-status.enum.js.map +1 -0
- package/dist/cjs/enums/serverDay.enum.d.ts +10 -0
- package/dist/cjs/enums/serverDay.enum.d.ts.map +1 -0
- package/dist/cjs/enums/serverDay.enum.js +14 -0
- package/dist/cjs/enums/serverDay.enum.js.map +1 -0
- package/dist/cjs/guard/auth.guard.d.ts +11 -0
- package/dist/cjs/guard/auth.guard.d.ts.map +1 -0
- package/dist/cjs/guard/auth.guard.js +42 -0
- package/dist/cjs/guard/auth.guard.js.map +1 -0
- package/dist/cjs/guard/index.d.ts +2 -0
- package/dist/cjs/guard/index.d.ts.map +1 -0
- package/dist/cjs/guard/index.js +5 -0
- package/dist/cjs/guard/index.js.map +1 -0
- package/dist/cjs/health/dtos/health.response.dto.d.ts +10 -0
- package/dist/cjs/health/dtos/health.response.dto.d.ts.map +1 -0
- package/dist/cjs/health/dtos/health.response.dto.js +31 -0
- package/dist/cjs/health/dtos/health.response.dto.js.map +1 -0
- package/dist/cjs/health/dtos/index.d.ts +2 -0
- package/dist/cjs/health/dtos/index.d.ts.map +1 -0
- package/dist/cjs/health/dtos/index.js +5 -0
- package/dist/cjs/health/dtos/index.js.map +1 -0
- package/dist/cjs/health/health.controller.d.ts +8 -0
- package/dist/cjs/health/health.controller.d.ts.map +1 -0
- package/dist/cjs/health/health.controller.js +36 -0
- package/dist/cjs/health/health.controller.js.map +1 -0
- package/dist/cjs/health/health.module.d.ts +3 -0
- package/dist/cjs/health/health.module.d.ts.map +1 -0
- package/dist/cjs/health/health.module.js +20 -0
- package/dist/cjs/health/health.module.js.map +1 -0
- package/dist/cjs/health/health.service.d.ts +13 -0
- package/dist/cjs/health/health.service.d.ts.map +1 -0
- package/dist/cjs/health/health.service.js +36 -0
- package/dist/cjs/health/health.service.js.map +1 -0
- package/dist/cjs/health/index.d.ts +5 -0
- package/dist/cjs/health/index.d.ts.map +1 -0
- package/dist/cjs/health/index.js +8 -0
- package/dist/cjs/health/index.js.map +1 -0
- package/dist/cjs/index.d.ts +13 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +16 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/middleware/index.d.ts +2 -0
- package/dist/cjs/middleware/index.d.ts.map +1 -0
- package/dist/cjs/middleware/index.js +5 -0
- package/dist/cjs/middleware/index.js.map +1 -0
- package/dist/cjs/middleware/logger.middleware.d.ts +7 -0
- package/dist/cjs/middleware/logger.middleware.d.ts.map +1 -0
- package/dist/cjs/middleware/logger.middleware.js +28 -0
- package/dist/cjs/middleware/logger.middleware.js.map +1 -0
- package/dist/cjs/prisma/index.d.ts +3 -0
- package/dist/cjs/prisma/index.d.ts.map +1 -0
- package/dist/cjs/prisma/index.js +6 -0
- package/dist/cjs/prisma/index.js.map +1 -0
- package/dist/cjs/prisma/prisma.module.d.ts +3 -0
- package/dist/cjs/prisma/prisma.module.d.ts.map +1 -0
- package/dist/cjs/prisma/prisma.module.js +17 -0
- package/dist/cjs/prisma/prisma.module.js.map +1 -0
- package/dist/cjs/prisma/prisma.service.d.ts +9 -0
- package/dist/cjs/prisma/prisma.service.d.ts.map +1 -0
- package/dist/cjs/prisma/prisma.service.js +31 -0
- package/dist/cjs/prisma/prisma.service.js.map +1 -0
- package/dist/cjs/push/index.d.ts +3 -0
- package/dist/cjs/push/index.d.ts.map +1 -0
- package/dist/cjs/push/index.js +6 -0
- package/dist/cjs/push/index.js.map +1 -0
- package/dist/cjs/push/push.module.d.ts +3 -0
- package/dist/cjs/push/push.module.d.ts.map +1 -0
- package/dist/cjs/push/push.module.js +17 -0
- package/dist/cjs/push/push.module.js.map +1 -0
- package/dist/cjs/push/push.service.d.ts +12 -0
- package/dist/cjs/push/push.service.d.ts.map +1 -0
- package/dist/cjs/push/push.service.js +68 -0
- package/dist/cjs/push/push.service.js.map +1 -0
- package/dist/cjs/search/index.d.ts +3 -0
- package/dist/cjs/search/index.d.ts.map +1 -0
- package/dist/cjs/search/index.js +6 -0
- package/dist/cjs/search/index.js.map +1 -0
- package/dist/cjs/search/search.module.d.ts +3 -0
- package/dist/cjs/search/search.module.d.ts.map +1 -0
- package/dist/cjs/search/search.module.js +17 -0
- package/dist/cjs/search/search.module.js.map +1 -0
- package/dist/cjs/search/search.service.d.ts +12 -0
- package/dist/cjs/search/search.service.d.ts.map +1 -0
- package/dist/cjs/search/search.service.js +60 -0
- package/dist/cjs/search/search.service.js.map +1 -0
- package/dist/cjs/services/index.d.ts +2 -0
- package/dist/cjs/services/index.d.ts.map +1 -0
- package/dist/cjs/services/index.js +5 -0
- package/dist/cjs/services/index.js.map +1 -0
- package/dist/cjs/services/instrument-sentry.d.ts +2 -0
- package/dist/cjs/services/instrument-sentry.d.ts.map +1 -0
- package/dist/cjs/services/instrument-sentry.js +18 -0
- package/dist/cjs/services/instrument-sentry.js.map +1 -0
- package/dist/cjs/types/index.d.ts +2 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +5 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/success.response.dto.d.ts +4 -0
- package/dist/cjs/types/success.response.dto.d.ts.map +1 -0
- package/dist/cjs/types/success.response.dto.js +15 -0
- package/dist/cjs/types/success.response.dto.js.map +1 -0
- package/dist/cjs/user/dtos/get-user.response.dto.d.ts +10 -0
- package/dist/cjs/user/dtos/get-user.response.dto.d.ts.map +1 -0
- package/dist/cjs/user/dtos/get-user.response.dto.js +44 -0
- package/dist/cjs/user/dtos/get-user.response.dto.js.map +1 -0
- package/dist/cjs/user/dtos/index.d.ts +5 -0
- package/dist/cjs/user/dtos/index.d.ts.map +1 -0
- package/dist/cjs/user/dtos/index.js +8 -0
- package/dist/cjs/user/dtos/index.js.map +1 -0
- package/dist/cjs/user/dtos/register.request.dto.d.ts +5 -0
- package/dist/cjs/user/dtos/register.request.dto.d.ts.map +1 -0
- package/dist/cjs/user/dtos/register.request.dto.js +20 -0
- package/dist/cjs/user/dtos/register.request.dto.js.map +1 -0
- package/dist/cjs/user/dtos/register.response.dto.d.ts +5 -0
- package/dist/cjs/user/dtos/register.response.dto.d.ts.map +1 -0
- package/dist/cjs/user/dtos/register.response.dto.js +16 -0
- package/dist/cjs/user/dtos/register.response.dto.js.map +1 -0
- package/dist/cjs/user/dtos/update-user.request.dto.d.ts +6 -0
- package/dist/cjs/user/dtos/update-user.request.dto.d.ts.map +1 -0
- package/dist/cjs/user/dtos/update-user.request.dto.js +28 -0
- package/dist/cjs/user/dtos/update-user.request.dto.js.map +1 -0
- package/dist/cjs/user/index.d.ts +5 -0
- package/dist/cjs/user/index.d.ts.map +1 -0
- package/dist/cjs/user/index.js +8 -0
- package/dist/cjs/user/index.js.map +1 -0
- package/dist/cjs/user/user.controller.d.ts +21 -0
- package/dist/cjs/user/user.controller.d.ts.map +1 -0
- package/dist/cjs/user/user.controller.js +191 -0
- package/dist/cjs/user/user.controller.js.map +1 -0
- package/dist/cjs/user/user.module.d.ts +3 -0
- package/dist/cjs/user/user.module.d.ts.map +1 -0
- package/dist/cjs/user/user.module.js +22 -0
- package/dist/cjs/user/user.module.js.map +1 -0
- package/dist/cjs/user/user.service.d.ts +12 -0
- package/dist/cjs/user/user.service.d.ts.map +1 -0
- package/dist/cjs/user/user.service.js +44 -0
- package/dist/cjs/user/user.service.js.map +1 -0
- package/dist/cjs/utils/datetime.d.ts +4 -0
- package/dist/cjs/utils/datetime.d.ts.map +1 -0
- package/dist/cjs/utils/datetime.js +27 -0
- package/dist/cjs/utils/datetime.js.map +1 -0
- package/dist/cjs/utils/error.d.ts +2 -0
- package/dist/cjs/utils/error.d.ts.map +1 -0
- package/dist/cjs/utils/error.js +17 -0
- package/dist/cjs/utils/error.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +5 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +8 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/input.d.ts +4 -0
- package/dist/cjs/utils/input.d.ts.map +1 -0
- package/dist/cjs/utils/input.js +24 -0
- package/dist/cjs/utils/input.js.map +1 -0
- package/dist/cjs/utils/noop.d.ts +2 -0
- package/dist/cjs/utils/noop.d.ts.map +1 -0
- package/dist/cjs/utils/noop.js +6 -0
- package/dist/cjs/utils/noop.js.map +1 -0
- package/dist/cjs/utils/string.d.ts +2 -0
- package/dist/cjs/utils/string.d.ts.map +1 -0
- package/dist/cjs/utils/string.js +8 -0
- package/dist/cjs/utils/string.js.map +1 -0
- package/dist/esm/auth/auth.module.d.ts +3 -0
- package/dist/esm/auth/auth.module.d.ts.map +1 -0
- package/dist/esm/auth/auth.module.js +15 -0
- package/dist/esm/auth/auth.module.js.map +1 -0
- package/dist/esm/auth/auth.service.d.ts +11 -0
- package/dist/esm/auth/auth.service.d.ts.map +1 -0
- package/dist/esm/auth/auth.service.js +34 -0
- package/dist/esm/auth/auth.service.js.map +1 -0
- package/dist/esm/auth/index.d.ts +3 -0
- package/dist/esm/auth/index.d.ts.map +1 -0
- package/dist/esm/auth/index.js +3 -0
- package/dist/esm/auth/index.js.map +1 -0
- package/dist/esm/enums/humanDay.enum.d.ts +10 -0
- package/dist/esm/enums/humanDay.enum.d.ts.map +1 -0
- package/dist/esm/enums/humanDay.enum.js +11 -0
- package/dist/esm/enums/humanDay.enum.js.map +1 -0
- package/dist/esm/enums/index.d.ts +3 -0
- package/dist/esm/enums/index.d.ts.map +1 -0
- package/dist/esm/enums/index.js +3 -0
- package/dist/esm/enums/index.js.map +1 -0
- package/dist/esm/enums/onboarding-status.enum.d.ts +7 -0
- package/dist/esm/enums/onboarding-status.enum.d.ts.map +1 -0
- package/dist/esm/enums/onboarding-status.enum.js +11 -0
- package/dist/esm/enums/onboarding-status.enum.js.map +1 -0
- package/dist/esm/enums/serverDay.enum.d.ts +10 -0
- package/dist/esm/enums/serverDay.enum.d.ts.map +1 -0
- package/dist/esm/enums/serverDay.enum.js +11 -0
- package/dist/esm/enums/serverDay.enum.js.map +1 -0
- package/dist/esm/guard/auth.guard.d.ts +11 -0
- package/dist/esm/guard/auth.guard.d.ts.map +1 -0
- package/dist/esm/guard/auth.guard.js +39 -0
- package/dist/esm/guard/auth.guard.js.map +1 -0
- package/dist/esm/guard/index.d.ts +2 -0
- package/dist/esm/guard/index.d.ts.map +1 -0
- package/dist/esm/guard/index.js +2 -0
- package/dist/esm/guard/index.js.map +1 -0
- package/dist/esm/health/dtos/health.response.dto.d.ts +10 -0
- package/dist/esm/health/dtos/health.response.dto.d.ts.map +1 -0
- package/dist/esm/health/dtos/health.response.dto.js +27 -0
- package/dist/esm/health/dtos/health.response.dto.js.map +1 -0
- package/dist/esm/health/dtos/index.d.ts +2 -0
- package/dist/esm/health/dtos/index.d.ts.map +1 -0
- package/dist/esm/health/dtos/index.js +2 -0
- package/dist/esm/health/dtos/index.js.map +1 -0
- package/dist/esm/health/health.controller.d.ts +8 -0
- package/dist/esm/health/health.controller.d.ts.map +1 -0
- package/dist/esm/health/health.controller.js +33 -0
- package/dist/esm/health/health.controller.js.map +1 -0
- package/dist/esm/health/health.module.d.ts +3 -0
- package/dist/esm/health/health.module.d.ts.map +1 -0
- package/dist/esm/health/health.module.js +17 -0
- package/dist/esm/health/health.module.js.map +1 -0
- package/dist/esm/health/health.service.d.ts +13 -0
- package/dist/esm/health/health.service.d.ts.map +1 -0
- package/dist/esm/health/health.service.js +33 -0
- package/dist/esm/health/health.service.js.map +1 -0
- package/dist/esm/health/index.d.ts +5 -0
- package/dist/esm/health/index.d.ts.map +1 -0
- package/dist/esm/health/index.js +5 -0
- package/dist/esm/health/index.js.map +1 -0
- package/dist/esm/index.d.ts +13 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +13 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/middleware/index.d.ts +2 -0
- package/dist/esm/middleware/index.d.ts.map +1 -0
- package/dist/esm/middleware/index.js +2 -0
- package/dist/esm/middleware/index.js.map +1 -0
- package/dist/esm/middleware/logger.middleware.d.ts +7 -0
- package/dist/esm/middleware/logger.middleware.d.ts.map +1 -0
- package/dist/esm/middleware/logger.middleware.js +25 -0
- package/dist/esm/middleware/logger.middleware.js.map +1 -0
- package/dist/esm/prisma/index.d.ts +3 -0
- package/dist/esm/prisma/index.d.ts.map +1 -0
- package/dist/esm/prisma/index.js +3 -0
- package/dist/esm/prisma/index.js.map +1 -0
- package/dist/esm/prisma/prisma.module.d.ts +3 -0
- package/dist/esm/prisma/prisma.module.d.ts.map +1 -0
- package/dist/esm/prisma/prisma.module.js +14 -0
- package/dist/esm/prisma/prisma.module.js.map +1 -0
- package/dist/esm/prisma/prisma.service.d.ts +9 -0
- package/dist/esm/prisma/prisma.service.d.ts.map +1 -0
- package/dist/esm/prisma/prisma.service.js +28 -0
- package/dist/esm/prisma/prisma.service.js.map +1 -0
- package/dist/esm/push/index.d.ts +3 -0
- package/dist/esm/push/index.d.ts.map +1 -0
- package/dist/esm/push/index.js +3 -0
- package/dist/esm/push/index.js.map +1 -0
- package/dist/esm/push/push.module.d.ts +3 -0
- package/dist/esm/push/push.module.d.ts.map +1 -0
- package/dist/esm/push/push.module.js +14 -0
- package/dist/esm/push/push.module.js.map +1 -0
- package/dist/esm/push/push.service.d.ts +12 -0
- package/dist/esm/push/push.service.d.ts.map +1 -0
- package/dist/esm/push/push.service.js +65 -0
- package/dist/esm/push/push.service.js.map +1 -0
- package/dist/esm/search/index.d.ts +3 -0
- package/dist/esm/search/index.d.ts.map +1 -0
- package/dist/esm/search/index.js +3 -0
- package/dist/esm/search/index.js.map +1 -0
- package/dist/esm/search/search.module.d.ts +3 -0
- package/dist/esm/search/search.module.d.ts.map +1 -0
- package/dist/esm/search/search.module.js +14 -0
- package/dist/esm/search/search.module.js.map +1 -0
- package/dist/esm/search/search.service.d.ts +12 -0
- package/dist/esm/search/search.service.d.ts.map +1 -0
- package/dist/esm/search/search.service.js +57 -0
- package/dist/esm/search/search.service.js.map +1 -0
- package/dist/esm/services/index.d.ts +2 -0
- package/dist/esm/services/index.d.ts.map +1 -0
- package/dist/esm/services/index.js +2 -0
- package/dist/esm/services/index.js.map +1 -0
- package/dist/esm/services/instrument-sentry.d.ts +2 -0
- package/dist/esm/services/instrument-sentry.d.ts.map +1 -0
- package/dist/esm/services/instrument-sentry.js +13 -0
- package/dist/esm/services/instrument-sentry.js.map +1 -0
- package/dist/esm/types/index.d.ts +2 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/success.response.dto.d.ts +4 -0
- package/dist/esm/types/success.response.dto.d.ts.map +1 -0
- package/dist/esm/types/success.response.dto.js +11 -0
- package/dist/esm/types/success.response.dto.js.map +1 -0
- package/dist/esm/user/dtos/get-user.response.dto.d.ts +10 -0
- package/dist/esm/user/dtos/get-user.response.dto.d.ts.map +1 -0
- package/dist/esm/user/dtos/get-user.response.dto.js +40 -0
- package/dist/esm/user/dtos/get-user.response.dto.js.map +1 -0
- package/dist/esm/user/dtos/index.d.ts +5 -0
- package/dist/esm/user/dtos/index.d.ts.map +1 -0
- package/dist/esm/user/dtos/index.js +5 -0
- package/dist/esm/user/dtos/index.js.map +1 -0
- package/dist/esm/user/dtos/register.request.dto.d.ts +5 -0
- package/dist/esm/user/dtos/register.request.dto.d.ts.map +1 -0
- package/dist/esm/user/dtos/register.request.dto.js +16 -0
- package/dist/esm/user/dtos/register.request.dto.js.map +1 -0
- package/dist/esm/user/dtos/register.response.dto.d.ts +5 -0
- package/dist/esm/user/dtos/register.response.dto.d.ts.map +1 -0
- package/dist/esm/user/dtos/register.response.dto.js +12 -0
- package/dist/esm/user/dtos/register.response.dto.js.map +1 -0
- package/dist/esm/user/dtos/update-user.request.dto.d.ts +6 -0
- package/dist/esm/user/dtos/update-user.request.dto.d.ts.map +1 -0
- package/dist/esm/user/dtos/update-user.request.dto.js +24 -0
- package/dist/esm/user/dtos/update-user.request.dto.js.map +1 -0
- package/dist/esm/user/index.d.ts +5 -0
- package/dist/esm/user/index.d.ts.map +1 -0
- package/dist/esm/user/index.js +5 -0
- package/dist/esm/user/index.js.map +1 -0
- package/dist/esm/user/user.controller.d.ts +21 -0
- package/dist/esm/user/user.controller.d.ts.map +1 -0
- package/dist/esm/user/user.controller.js +188 -0
- package/dist/esm/user/user.controller.js.map +1 -0
- package/dist/esm/user/user.module.d.ts +3 -0
- package/dist/esm/user/user.module.d.ts.map +1 -0
- package/dist/esm/user/user.module.js +19 -0
- package/dist/esm/user/user.module.js.map +1 -0
- package/dist/esm/user/user.service.d.ts +12 -0
- package/dist/esm/user/user.service.d.ts.map +1 -0
- package/dist/esm/user/user.service.js +41 -0
- package/dist/esm/user/user.service.js.map +1 -0
- package/dist/esm/utils/datetime.d.ts +4 -0
- package/dist/esm/utils/datetime.d.ts.map +1 -0
- package/dist/esm/utils/datetime.js +23 -0
- package/dist/esm/utils/datetime.js.map +1 -0
- package/dist/esm/utils/error.d.ts +2 -0
- package/dist/esm/utils/error.d.ts.map +1 -0
- package/dist/esm/utils/error.js +13 -0
- package/dist/esm/utils/error.js.map +1 -0
- package/dist/esm/utils/index.d.ts +5 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +5 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/input.d.ts +4 -0
- package/dist/esm/utils/input.d.ts.map +1 -0
- package/dist/esm/utils/input.js +18 -0
- package/dist/esm/utils/input.js.map +1 -0
- package/dist/esm/utils/noop.d.ts +2 -0
- package/dist/esm/utils/noop.d.ts.map +1 -0
- package/dist/esm/utils/noop.js +2 -0
- package/dist/esm/utils/noop.js.map +1 -0
- package/dist/esm/utils/string.d.ts +2 -0
- package/dist/esm/utils/string.d.ts.map +1 -0
- package/dist/esm/utils/string.js +4 -0
- package/dist/esm/utils/string.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +8 -3
- package/src/auth/auth.module.ts +10 -0
- package/src/auth/auth.service.ts +38 -0
- package/src/auth/index.ts +2 -0
- package/src/enums/humanDay.enum.ts +9 -0
- package/src/enums/index.ts +2 -0
- package/src/enums/serverDay.enum.ts +9 -0
- package/src/guard/auth.guard.ts +46 -0
- package/src/guard/index.ts +1 -0
- package/src/health/dtos/health.response.dto.ts +25 -0
- package/src/health/dtos/index.ts +1 -0
- package/src/health/health.controller.ts +23 -0
- package/src/health/health.module.ts +13 -0
- package/src/health/health.service.ts +43 -0
- package/src/health/index.ts +4 -0
- package/src/index.ts +12 -11
- package/src/middleware/index.ts +1 -0
- package/src/middleware/logger.middleware.ts +24 -0
- package/src/prisma/index.ts +2 -0
- package/src/prisma/prisma.module.ts +10 -0
- package/src/prisma/prisma.service.ts +36 -0
- package/src/push/index.ts +2 -0
- package/src/push/push.module.ts +10 -0
- package/src/push/push.service.ts +63 -0
- package/src/search/index.ts +2 -0
- package/src/search/search.module.ts +10 -0
- package/src/search/search.service.ts +86 -0
- package/src/services/index.ts +1 -0
- package/src/services/instrument-sentry.ts +19 -0
- package/src/types/index.ts +1 -1
- package/src/user/dtos/get-user.response.dto.ts +32 -0
- package/src/user/dtos/index.ts +5 -0
- package/src/user/dtos/register.request.dto.ts +12 -0
- package/src/user/dtos/register.response.dto.ts +10 -0
- package/src/user/dtos/update-user.request.dto.ts +19 -0
- package/src/user/index.ts +4 -0
- package/src/user/user.controller.ts +191 -0
- package/src/user/user.module.ts +16 -0
- package/src/user/user.service.ts +44 -0
- package/src/utils/index.ts +4 -1
- package/.eslintignore +0 -3
- package/.eslintrc +0 -22
- package/.nvmrc +0 -1
- package/index.ts +0 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var HealthService_1;
|
|
2
|
+
import { __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Injectable, Logger } from '@nestjs/common';
|
|
4
|
+
import { HealthCheckService, HttpHealthIndicator, MemoryHealthIndicator, } from '@nestjs/terminus';
|
|
5
|
+
import { ConfigService } from '@nestjs/config';
|
|
6
|
+
let HealthService = HealthService_1 = class HealthService {
|
|
7
|
+
constructor(configService, health, http, memory) {
|
|
8
|
+
this.configService = configService;
|
|
9
|
+
this.health = health;
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.memory = memory;
|
|
12
|
+
this.logger = new Logger(HealthService_1.name);
|
|
13
|
+
}
|
|
14
|
+
async check() {
|
|
15
|
+
this.logger.log('check');
|
|
16
|
+
const statuses = await this.health.check([
|
|
17
|
+
async () => this.http.pingCheck('website', 'https://google.com'),
|
|
18
|
+
async () => this.memory.checkHeap('memoryHeap', 200 * 1024 * 1024),
|
|
19
|
+
async () => this.memory.checkRSS('memoryRss', 3000 * 1024 * 1024),
|
|
20
|
+
]);
|
|
21
|
+
const environment = this.configService.get('NODE_ENV');
|
|
22
|
+
return Object.assign({ environment }, statuses);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
HealthService = HealthService_1 = __decorate([
|
|
26
|
+
Injectable(),
|
|
27
|
+
__metadata("design:paramtypes", [ConfigService,
|
|
28
|
+
HealthCheckService,
|
|
29
|
+
HttpHealthIndicator,
|
|
30
|
+
MemoryHealthIndicator])
|
|
31
|
+
], HealthService);
|
|
32
|
+
export { HealthService };
|
|
33
|
+
//# sourceMappingURL=health.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.service.js","sourceRoot":"/","sources":["health/health.service.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAQxC,IAAM,aAAa,qBAAnB,MAAM,aAAa;IAIxB,YACmB,aAA4B,EAC5B,MAA0B,EAC1B,IAAyB,EACzB,MAA6B;QAH7B,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAoB;QAC1B,SAAI,GAAJ,IAAI,CAAqB;QACzB,WAAM,GAAN,MAAM,CAAuB;QAN/B,WAAM,GAAW,IAAI,MAAM,CAAC,eAAa,CAAC,IAAI,CAAC,CAAC;IAO9D,CAAC;IAEJ,KAAK,CAAC,KAAK;QAET,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEzB,MAAM,QAAQ,GAAsB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAC1D,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,oBAAoB,CAAC;YAChE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;YAClE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;SAClE,CAAC,CAAC;QAEH,MAAM,WAAW,GAAW,IAAI,CAAC,aAAa,CAAC,GAAG,CAAS,UAAU,CAAC,CAAC;QAEvE,uBACE,WAAW,IACR,QAAQ,EACX;IACJ,CAAC;CACF,CAAA;AA5BY,aAAa;IADzB,UAAU,EAAE;qCAMuB,aAAa;QACpB,kBAAkB;QACpB,mBAAmB;QACjB,qBAAqB;GARrC,aAAa,CA4BzB","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport {\n HealthCheckService,\n HttpHealthIndicator,\n MemoryHealthIndicator,\n} from '@nestjs/terminus';\nimport { ConfigService } from '@nestjs/config';\nimport { HealthCheckResult } from '@nestjs/terminus/dist/health-check/health-check-result.interface';\n\nimport { HealthResponseDto } from './dtos/health.response.dto';\n\n// this decorator indicates to nest that this class can be provided to a module\n// we want to handle logic in services to keep our resolvers and controllers clean\n@Injectable()\nexport class HealthService {\n // grab the global logger instance\n private readonly logger: Logger = new Logger(HealthService.name);\n\n constructor(\n private readonly configService: ConfigService,\n private readonly health: HealthCheckService,\n private readonly http: HttpHealthIndicator,\n private readonly memory: MemoryHealthIndicator,\n ) {}\n\n async check(): Promise<HealthResponseDto> {\n // this logger has several logging levels\n this.logger.log('check');\n\n const statuses: HealthCheckResult = await this.health.check([\n async () => this.http.pingCheck('website', 'https://google.com'),\n async () => this.memory.checkHeap('memoryHeap', 200 * 1024 * 1024),\n async () => this.memory.checkRSS('memoryRss', 3000 * 1024 * 1024),\n ]);\n\n const environment: string = this.configService.get<string>('NODE_ENV');\n\n return {\n environment,\n ...statuses,\n };\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["health/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["health/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC","sourcesContent":["export * from './dtos';\nexport * from './health.controller';\nexport * from './health.module';\nexport * from './health.service';\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './auth';
|
|
2
|
+
export * from './enums';
|
|
3
|
+
export * from './guard';
|
|
4
|
+
export * from './health';
|
|
5
|
+
export * from './middleware';
|
|
6
|
+
export * from './prisma';
|
|
7
|
+
export * from './push';
|
|
8
|
+
export * from './search';
|
|
9
|
+
export * from './services';
|
|
10
|
+
export * from './types';
|
|
11
|
+
export * from './user';
|
|
12
|
+
export * from './utils';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './auth';
|
|
2
|
+
export * from './enums';
|
|
3
|
+
export * from './guard';
|
|
4
|
+
export * from './health';
|
|
5
|
+
export * from './middleware';
|
|
6
|
+
export * from './prisma';
|
|
7
|
+
export * from './push';
|
|
8
|
+
export * from './search';
|
|
9
|
+
export * from './services';
|
|
10
|
+
export * from './types';
|
|
11
|
+
export * from './user';
|
|
12
|
+
export * from './utils';
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA","sourcesContent":["export * from './auth'\nexport * from './enums'\nexport * from './guard'\nexport * from './health'\nexport * from './middleware'\nexport * from './prisma'\nexport * from './push'\nexport * from './search'\nexport * from './services'\nexport * from './types'\nexport * from './user'\nexport * from './utils'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["middleware/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["middleware/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC","sourcesContent":["export * from './logger.middleware';\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { NestMiddleware } from '@nestjs/common';
|
|
2
|
+
import { NextFunction, Request, Response } from 'express';
|
|
3
|
+
export declare class LoggerMiddleware implements NestMiddleware {
|
|
4
|
+
private readonly logger;
|
|
5
|
+
use(req: Request, _res: Response, next: NextFunction): void;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=logger.middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.middleware.d.ts","sourceRoot":"/","sources":["middleware/logger.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE1D,qBACa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqC;IAE5D,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI;CAgB5D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
var LoggerMiddleware_1;
|
|
2
|
+
import { __decorate } from "tslib";
|
|
3
|
+
import { Injectable, Logger } from '@nestjs/common';
|
|
4
|
+
let LoggerMiddleware = LoggerMiddleware_1 = class LoggerMiddleware {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.logger = new Logger(LoggerMiddleware_1.name);
|
|
7
|
+
}
|
|
8
|
+
use(req, _res, next) {
|
|
9
|
+
var _a;
|
|
10
|
+
if ((req === null || req === void 0 ? void 0 : req.method) === 'POST' &&
|
|
11
|
+
(req === null || req === void 0 ? void 0 : req.originalUrl) === '/graphql' &&
|
|
12
|
+
((_a = req === null || req === void 0 ? void 0 : req.body) === null || _a === void 0 ? void 0 : _a.operationName)) {
|
|
13
|
+
this.logger.log(`${req.method} ${req.originalUrl} ${req.body.operationName}`);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
this.logger.log(`${req.method} ${req.originalUrl}`);
|
|
17
|
+
}
|
|
18
|
+
next();
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
LoggerMiddleware = LoggerMiddleware_1 = __decorate([
|
|
22
|
+
Injectable()
|
|
23
|
+
], LoggerMiddleware);
|
|
24
|
+
export { LoggerMiddleware };
|
|
25
|
+
//# sourceMappingURL=logger.middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.middleware.js","sourceRoot":"/","sources":["middleware/logger.middleware.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAC;AAI7D,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAAtB;QACY,WAAM,GAAG,IAAI,MAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;IAkB9D,CAAC;IAhBC,GAAG,CAAC,GAAY,EAAE,IAAc,EAAE,IAAkB;;QAClD,IACE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,MAAK,MAAM;YACtB,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,WAAW,MAAK,UAAU;aAC/B,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,aAAa,CAAA,EACxB,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAEb,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAC7D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC;CACF,CAAA;AAnBY,gBAAgB;IAD5B,UAAU,EAAE;GACA,gBAAgB,CAmB5B","sourcesContent":["import { Injectable, Logger, NestMiddleware } from '@nestjs/common';\nimport { NextFunction, Request, Response } from 'express';\n\n@Injectable()\nexport class LoggerMiddleware implements NestMiddleware {\n private readonly logger = new Logger(LoggerMiddleware.name);\n\n use(req: Request, _res: Response, next: NextFunction): void {\n if (\n req?.method === 'POST' &&\n req?.originalUrl === '/graphql' &&\n req?.body?.operationName\n ) {\n this.logger.log(\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions\n `${req.method} ${req.originalUrl} ${req.body.operationName}`,\n );\n } else {\n this.logger.log(`${req.method} ${req.originalUrl}`);\n }\n\n next();\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC","sourcesContent":["export * from './prisma.module';\nexport * from './prisma.service';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma.module.d.ts","sourceRoot":"/","sources":["prisma/prisma.module.ts"],"names":[],"mappings":"AAIA,qBAKa,YAAY;CAAG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Module } from '@nestjs/common';
|
|
3
|
+
import { PrismaService } from './prisma.service';
|
|
4
|
+
let PrismaModule = class PrismaModule {
|
|
5
|
+
};
|
|
6
|
+
PrismaModule = __decorate([
|
|
7
|
+
Module({
|
|
8
|
+
imports: [],
|
|
9
|
+
providers: [PrismaService],
|
|
10
|
+
exports: [PrismaService],
|
|
11
|
+
})
|
|
12
|
+
], PrismaModule);
|
|
13
|
+
export { PrismaModule };
|
|
14
|
+
//# sourceMappingURL=prisma.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma.module.js","sourceRoot":"/","sources":["prisma/prisma.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAO1C,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,YAAY;IALxB,MAAM,CAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC,aAAa,CAAC;QAC1B,OAAO,EAAE,CAAC,aAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAAG","sourcesContent":["import { Module } from '@nestjs/common';\n\nimport { PrismaService } from './prisma.service';\n\n@Module({\n imports: [],\n providers: [PrismaService],\n exports: [PrismaService],\n})\nexport class PrismaModule {}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { INestApplication, OnModuleInit } from '@nestjs/common';
|
|
2
|
+
import { PrismaClient } from '@prisma/client';
|
|
3
|
+
export declare class PrismaService extends PrismaClient implements OnModuleInit {
|
|
4
|
+
private readonly logger;
|
|
5
|
+
constructor();
|
|
6
|
+
onModuleInit(): Promise<void>;
|
|
7
|
+
enableShutdownHooks(app: INestApplication): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=prisma.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma.service.d.ts","sourceRoot":"/","sources":["prisma/prisma.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAGhB,YAAY,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAU,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEtD,qBACa,aAAc,SAAQ,YAAa,YAAW,YAAY;IACrE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;;IAcnD,YAAY;IAKZ,mBAAmB,CAAC,GAAG,EAAE,gBAAgB;CAMhD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var PrismaService_1;
|
|
2
|
+
import { __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Injectable, Logger, } from '@nestjs/common';
|
|
4
|
+
import { Prisma, PrismaClient } from '@prisma/client';
|
|
5
|
+
let PrismaService = PrismaService_1 = class PrismaService extends PrismaClient {
|
|
6
|
+
constructor() {
|
|
7
|
+
super({ log: [{ emit: 'event', level: 'query' }] });
|
|
8
|
+
this.logger = new Logger(PrismaService_1.name);
|
|
9
|
+
this.logger.log(`Prisma v${Prisma.prismaVersion.client}`);
|
|
10
|
+
this.$on('query', (event) => {
|
|
11
|
+
this.logger.debug(`[${event.duration}ms] ${event.query} ${event.params} `);
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
async onModuleInit() {
|
|
15
|
+
await this.$connect();
|
|
16
|
+
}
|
|
17
|
+
async enableShutdownHooks(app) {
|
|
18
|
+
this.$on('beforeExit', async () => {
|
|
19
|
+
await app.close();
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
PrismaService = PrismaService_1 = __decorate([
|
|
24
|
+
Injectable(),
|
|
25
|
+
__metadata("design:paramtypes", [])
|
|
26
|
+
], PrismaService);
|
|
27
|
+
export { PrismaService };
|
|
28
|
+
//# sourceMappingURL=prisma.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma.service.js","sourceRoot":"/","sources":["prisma/prisma.service.ts"],"names":[],"mappings":";;AAAA,OAAO,EAEL,UAAU,EACV,MAAM,GAEP,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG/C,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,YAAY;IAG7C;QACE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAHrC,WAAM,GAAG,IAAI,MAAM,CAAC,eAAa,CAAC,IAAI,CAAC,CAAC;QAKvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC,GAAG,CAAC,OAAgB,EAAE,CAAC,KAAwB,EAAE,EAAE;YACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,IAAI,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CACxD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAGD,KAAK,CAAC,mBAAmB,CAAC,GAAqB;QAE7C,IAAI,CAAC,GAAG,CAAC,YAAqB,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA1BY,aAAa;IADzB,UAAU,EAAE;;GACA,aAAa,CA0BzB","sourcesContent":["import {\n INestApplication,\n Injectable,\n Logger,\n OnModuleInit,\n} from '@nestjs/common';\nimport { Prisma, PrismaClient } from '@prisma/client';\n\n@Injectable()\nexport class PrismaService extends PrismaClient implements OnModuleInit {\n private readonly logger = new Logger(PrismaService.name);\n\n constructor() {\n super({ log: [{ emit: 'event', level: 'query' }] });\n\n this.logger.log(`Prisma v${Prisma.prismaVersion.client}`);\n\n this.$on('query' as never, (event: Prisma.QueryEvent) => {\n this.logger.debug(\n `[${event.duration}ms] ${event.query} ${event.params} `,\n );\n });\n }\n\n async onModuleInit() {\n await this.$connect();\n }\n\n // eslint-disable-next-line @typescript-eslint/require-await\n async enableShutdownHooks(app: INestApplication) {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n this.$on('beforeExit' as never, async () => {\n await app.close();\n });\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["push/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["push/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC","sourcesContent":["export * from './push.module';\nexport * from './push.service';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push.module.d.ts","sourceRoot":"/","sources":["push/push.module.ts"],"names":[],"mappings":"AAIA,qBAKa,UAAU;CAAG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Module } from '@nestjs/common';
|
|
3
|
+
import { PushService } from './push.service';
|
|
4
|
+
let PushModule = class PushModule {
|
|
5
|
+
};
|
|
6
|
+
PushModule = __decorate([
|
|
7
|
+
Module({
|
|
8
|
+
imports: [],
|
|
9
|
+
providers: [PushService],
|
|
10
|
+
exports: [PushService],
|
|
11
|
+
})
|
|
12
|
+
], PushModule);
|
|
13
|
+
export { PushModule };
|
|
14
|
+
//# sourceMappingURL=push.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push.module.js","sourceRoot":"/","sources":["push/push.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAOtC,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,UAAU;IALtB,MAAM,CAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC,WAAW,CAAC;QACxB,OAAO,EAAE,CAAC,WAAW,CAAC;KACvB,CAAC;GACW,UAAU,CAAG","sourcesContent":["import { Module } from '@nestjs/common';\n\nimport { PushService } from './push.service';\n\n@Module({\n imports: [],\n providers: [PushService],\n exports: [PushService],\n})\nexport class PushModule {}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ExpoPushMessage } from 'expo-server-sdk';
|
|
2
|
+
export declare class PushService {
|
|
3
|
+
private readonly logger;
|
|
4
|
+
private readonly expo;
|
|
5
|
+
constructor();
|
|
6
|
+
createMessages({ body, pushTokens, }: {
|
|
7
|
+
body: string;
|
|
8
|
+
pushTokens: string[];
|
|
9
|
+
}): ExpoPushMessage[];
|
|
10
|
+
sendMessages(messages: ExpoPushMessage[]): Promise<undefined>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=push.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push.service.d.ts","sourceRoot":"/","sources":["push/push.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBACa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAmB;;IAQxC,cAAc,CAAC,EACb,IAAI,EACJ,UAAU,GACX,EAAE;QACD,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,GAAG,eAAe,EAAE;IAsBf,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;CAoBpE"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
var PushService_1;
|
|
2
|
+
import { __asyncValues, __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Injectable, Logger } from '@nestjs/common';
|
|
4
|
+
import { Expo } from 'expo-server-sdk';
|
|
5
|
+
let PushService = PushService_1 = class PushService {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.logger = new Logger(PushService_1.name);
|
|
8
|
+
this.expo = new Expo({
|
|
9
|
+
useFcmV1: true,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
createMessages({ body, pushTokens, }) {
|
|
13
|
+
this.logger.debug('createMessage');
|
|
14
|
+
const messages = [];
|
|
15
|
+
for (const pushToken of pushTokens) {
|
|
16
|
+
if (!Expo.isExpoPushToken(pushToken)) {
|
|
17
|
+
continue;
|
|
18
|
+
}
|
|
19
|
+
messages.push({
|
|
20
|
+
to: pushToken,
|
|
21
|
+
sound: 'default',
|
|
22
|
+
body,
|
|
23
|
+
data: { withSome: 'data' },
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
return messages;
|
|
27
|
+
}
|
|
28
|
+
async sendMessages(messages) {
|
|
29
|
+
var _a, e_1, _b, _c;
|
|
30
|
+
try {
|
|
31
|
+
this.logger.debug('sendMessages');
|
|
32
|
+
const chunks = this.expo.chunkPushNotifications(messages);
|
|
33
|
+
try {
|
|
34
|
+
for (var _d = true, chunks_1 = __asyncValues(chunks), chunks_1_1; chunks_1_1 = await chunks_1.next(), _a = chunks_1_1.done, !_a; _d = true) {
|
|
35
|
+
_c = chunks_1_1.value;
|
|
36
|
+
_d = false;
|
|
37
|
+
const chunk = _c;
|
|
38
|
+
try {
|
|
39
|
+
await this.expo.sendPushNotificationsAsync(chunk);
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
console.error(error);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
47
|
+
finally {
|
|
48
|
+
try {
|
|
49
|
+
if (!_d && !_a && (_b = chunks_1.return)) await _b.call(chunks_1);
|
|
50
|
+
}
|
|
51
|
+
finally { if (e_1) throw e_1.error; }
|
|
52
|
+
}
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
this.logger.error(error);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
PushService = PushService_1 = __decorate([
|
|
61
|
+
Injectable(),
|
|
62
|
+
__metadata("design:paramtypes", [])
|
|
63
|
+
], PushService);
|
|
64
|
+
export { PushService };
|
|
65
|
+
//# sourceMappingURL=push.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"push.service.js","sourceRoot":"/","sources":["push/push.service.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAmB,MAAM,iBAAiB,CAAC;AAGjD,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAItB;QAHiB,WAAM,GAAW,IAAI,MAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;QAI7D,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC;YACnB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,EACb,IAAI,EACJ,UAAU,GAIX;QACC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAGnC,MAAM,QAAQ,GAAsB,EAAE,CAAC;QAEvC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrC,SAAS;YACX,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC;gBACZ,EAAE,EAAE,SAAS;gBACb,KAAK,EAAE,SAAS;gBAChB,IAAI;gBACJ,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAA2B;;QAC5C,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAElC,MAAM,MAAM,GACV,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;;gBAE7C,KAA0B,eAAA,WAAA,cAAA,MAAM,CAAA,YAAA,4EAAE,CAAC;oBAAT,sBAAM;oBAAN,WAAM;oBAArB,MAAM,KAAK,KAAA,CAAA;oBACpB,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;oBACpD,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC;;;;;;;;;YAED,OAAO;QACT,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;CACF,CAAA;AA1DY,WAAW;IADvB,UAAU,EAAE;;GACA,WAAW,CA0DvB","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport { Expo, ExpoPushMessage } from 'expo-server-sdk';\n\n@Injectable()\nexport class PushService {\n private readonly logger: Logger = new Logger(PushService.name);\n private readonly expo: Expo | undefined;\n\n constructor() {\n this.expo = new Expo({\n useFcmV1: true,\n });\n }\n\n createMessages({\n body,\n pushTokens,\n }: {\n body: string;\n pushTokens: string[];\n }): ExpoPushMessage[] {\n this.logger.debug('createMessage');\n\n // Create the messages that you want to send to clients\n const messages: ExpoPushMessage[] = [];\n\n for (const pushToken of pushTokens) {\n if (!Expo.isExpoPushToken(pushToken)) {\n continue;\n }\n\n messages.push({\n to: pushToken,\n sound: 'default',\n body,\n data: { withSome: 'data' },\n });\n }\n\n return messages;\n }\n\n async sendMessages(messages: ExpoPushMessage[]): Promise<undefined> {\n try {\n this.logger.debug('sendMessages');\n\n const chunks: ExpoPushMessage[][] =\n this.expo.chunkPushNotifications(messages);\n\n for await (const chunk of chunks) {\n try {\n await this.expo.sendPushNotificationsAsync(chunk);\n } catch (error) {\n console.error(error);\n }\n }\n\n return;\n } catch (error) {\n this.logger.error(error);\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["search/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["search/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC","sourcesContent":["export * from './search.module';\nexport * from './search.service';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.module.d.ts","sourceRoot":"/","sources":["search/search.module.ts"],"names":[],"mappings":"AAIA,qBAKa,YAAY;CAAG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Module } from '@nestjs/common';
|
|
3
|
+
import { SearchService } from './search.service';
|
|
4
|
+
let SearchModule = class SearchModule {
|
|
5
|
+
};
|
|
6
|
+
SearchModule = __decorate([
|
|
7
|
+
Module({
|
|
8
|
+
imports: [],
|
|
9
|
+
providers: [SearchService],
|
|
10
|
+
exports: [SearchService],
|
|
11
|
+
})
|
|
12
|
+
], SearchModule);
|
|
13
|
+
export { SearchModule };
|
|
14
|
+
//# sourceMappingURL=search.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.module.js","sourceRoot":"/","sources":["search/search.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAO1C,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,YAAY;IALxB,MAAM,CAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,CAAC,aAAa,CAAC;QAC1B,OAAO,EAAE,CAAC,aAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAAG","sourcesContent":["import { Module } from '@nestjs/common';\n\nimport { SearchService } from './search.service';\n\n@Module({\n imports: [],\n providers: [SearchService],\n exports: [SearchService],\n})\nexport class SearchModule {}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ConfigService } from '@nestjs/config';
|
|
2
|
+
export declare class SearchService {
|
|
3
|
+
private configService;
|
|
4
|
+
private readonly logger;
|
|
5
|
+
private readonly searchClient;
|
|
6
|
+
private readonly searchIndex;
|
|
7
|
+
constructor(configService: ConfigService);
|
|
8
|
+
shouldIndex(): Promise<boolean>;
|
|
9
|
+
create(inventoryItem: any): Promise<undefined>;
|
|
10
|
+
createMany(inventoryItems: any[]): Promise<undefined>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=search.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.service.d.ts","sourceRoot":"/","sources":["search/search.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,qBACa,aAAa;IAKZ,OAAO,CAAC,aAAa;IAJjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0B;gBAElC,aAAa,EAAE,aAAa;IAe1C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAc/B,MAAM,CAAC,aAAa,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAoB9C,UAAU,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;CAyB5D"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
var SearchService_1;
|
|
2
|
+
import { __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Injectable, Logger } from '@nestjs/common';
|
|
4
|
+
import algoliasearch from 'algoliasearch';
|
|
5
|
+
import { ConfigService } from '@nestjs/config';
|
|
6
|
+
let SearchService = SearchService_1 = class SearchService {
|
|
7
|
+
constructor(configService) {
|
|
8
|
+
this.configService = configService;
|
|
9
|
+
this.logger = new Logger(SearchService_1.name);
|
|
10
|
+
this.searchClient = algoliasearch(this.configService.get('ALGOLIA_APP_ID'), this.configService.get('ALGOLIA_API_KEY'));
|
|
11
|
+
if (this.searchClient === undefined) {
|
|
12
|
+
throw new Error('Search client is undefined');
|
|
13
|
+
}
|
|
14
|
+
this.searchIndex = this.searchClient.initIndex(this.configService.get('ALGOLIA_INDEX_NAME'));
|
|
15
|
+
}
|
|
16
|
+
async shouldIndex() {
|
|
17
|
+
this.logger.debug('shouldIndex');
|
|
18
|
+
if (this.searchIndex === undefined) {
|
|
19
|
+
throw new Error('Search index is undefined');
|
|
20
|
+
}
|
|
21
|
+
const { nbHits } = await this.searchIndex.search('', {
|
|
22
|
+
hitsPerPage: 1,
|
|
23
|
+
});
|
|
24
|
+
return nbHits === 0;
|
|
25
|
+
}
|
|
26
|
+
async create(inventoryItem) {
|
|
27
|
+
this.logger.debug('create');
|
|
28
|
+
if (this.searchIndex === undefined) {
|
|
29
|
+
throw new Error('Search index is undefined');
|
|
30
|
+
}
|
|
31
|
+
const mappedExercise = Object.assign(Object.assign({}, inventoryItem), { objectID: inventoryItem.id, quantity: 0 });
|
|
32
|
+
await this.searchIndex.saveObject(mappedExercise).wait();
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
async createMany(inventoryItems) {
|
|
36
|
+
try {
|
|
37
|
+
this.logger.debug('createMany');
|
|
38
|
+
if (this.searchIndex === undefined) {
|
|
39
|
+
throw new Error('Search index is undefined');
|
|
40
|
+
}
|
|
41
|
+
const mappedExercises = inventoryItems.map((inventoryItem) => {
|
|
42
|
+
return Object.assign(Object.assign({}, inventoryItem), { objectID: inventoryItem.id, quantity: 0 });
|
|
43
|
+
});
|
|
44
|
+
await this.searchIndex.saveObjects(mappedExercises).wait();
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
this.logger.error(error);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
SearchService = SearchService_1 = __decorate([
|
|
53
|
+
Injectable(),
|
|
54
|
+
__metadata("design:paramtypes", [ConfigService])
|
|
55
|
+
], SearchService);
|
|
56
|
+
export { SearchService };
|
|
57
|
+
//# sourceMappingURL=search.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.service.js","sourceRoot":"/","sources":["search/search.service.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,aAAa,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGxC,IAAM,aAAa,qBAAnB,MAAM,aAAa;IAKxB,YAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAJ/B,WAAM,GAAW,IAAI,MAAM,CAAC,eAAa,CAAC,IAAI,CAAC,CAAC;QAK/D,IAAI,CAAC,YAAY,GAAG,aAAa,CAC/B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EACxC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAC1C,CAAC;QAEF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEjC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE;YACnD,WAAW,EAAE,CAAC;SACf,CAAC,CAAC;QAEH,OAAO,MAAM,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,aAAkB;QAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAGD,MAAM,cAAc,mCACf,aAAa,KAEhB,QAAQ,EAAE,aAAa,CAAC,EAAE,EAC1B,QAAQ,EAAE,CAAC,GACZ,CAAC;QAEF,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;QAEzD,OAAO;IACT,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,cAAqB;QACpC,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAEhC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,eAAe,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,aAAkB,EAAE,EAAE;gBAEhE,uCACK,aAAa,KAEhB,QAAQ,EAAE,aAAa,CAAC,EAAE,EAC1B,QAAQ,EAAE,CAAC,IACX;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;YAE3D,OAAO;QACT,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;CACF,CAAA;AA/EY,aAAa;IADzB,UAAU,EAAE;qCAMwB,aAAa;GALrC,aAAa,CA+EzB","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport algoliasearch from 'algoliasearch';\nimport { SearchClient, SearchIndex } from 'algoliasearch/dist/algoliasearch';\nimport { ConfigService } from '@nestjs/config';\n\n@Injectable()\nexport class SearchService {\n private readonly logger: Logger = new Logger(SearchService.name);\n private readonly searchClient: SearchClient | undefined;\n private readonly searchIndex: SearchIndex | undefined;\n\n constructor(private configService: ConfigService) {\n this.searchClient = algoliasearch(\n this.configService.get('ALGOLIA_APP_ID'),\n this.configService.get('ALGOLIA_API_KEY'),\n );\n\n if (this.searchClient === undefined) {\n throw new Error('Search client is undefined');\n }\n\n this.searchIndex = this.searchClient.initIndex(\n this.configService.get('ALGOLIA_INDEX_NAME'),\n );\n }\n\n async shouldIndex(): Promise<boolean> {\n this.logger.debug('shouldIndex');\n\n if (this.searchIndex === undefined) {\n throw new Error('Search index is undefined');\n }\n\n const { nbHits } = await this.searchIndex.search('', {\n hitsPerPage: 1,\n });\n\n return nbHits === 0;\n }\n\n async create(inventoryItem: any): Promise<undefined> {\n this.logger.debug('create');\n\n if (this.searchIndex === undefined) {\n throw new Error('Search index is undefined');\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const mappedExercise = {\n ...inventoryItem,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n objectID: inventoryItem.id,\n quantity: 0,\n };\n\n await this.searchIndex.saveObject(mappedExercise).wait();\n\n return;\n }\n\n async createMany(inventoryItems: any[]): Promise<undefined> {\n try {\n this.logger.debug('createMany');\n\n if (this.searchIndex === undefined) {\n throw new Error('Search index is undefined');\n }\n\n const mappedExercises = inventoryItems.map((inventoryItem: any) => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return {\n ...inventoryItem,\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n objectID: inventoryItem.id,\n quantity: 0,\n };\n });\n\n await this.searchIndex.saveObjects(mappedExercises).wait();\n\n return;\n } catch (error) {\n this.logger.error(error);\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["services/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["services/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA","sourcesContent":["export * from './instrument-sentry'\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrument-sentry.d.ts","sourceRoot":"/","sources":["services/instrument-sentry.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,YAetB,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as Sentry from '@sentry/node';
|
|
2
|
+
import { nodeProfilingIntegration } from '@sentry/profiling-node';
|
|
3
|
+
export const initSentry = () => {
|
|
4
|
+
Sentry.init({
|
|
5
|
+
dsn: process.env.SENTRY_DSN,
|
|
6
|
+
integrations: [
|
|
7
|
+
nodeProfilingIntegration(),
|
|
8
|
+
],
|
|
9
|
+
tracesSampleRate: 1.0,
|
|
10
|
+
profilesSampleRate: 1.0,
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=instrument-sentry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instrument-sentry.js","sourceRoot":"/","sources":["services/instrument-sentry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE;IAE7B,MAAM,CAAC,IAAI,CAAC;QACV,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAC3B,YAAY,EAAE;YAEZ,wBAAwB,EAAE;SAC3B;QAGD,gBAAgB,EAAE,GAAG;QAGrB,kBAAkB,EAAE,GAAG;KACxB,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import * as Sentry from '@sentry/node';\nimport { nodeProfilingIntegration } from '@sentry/profiling-node';\n\nexport const initSentry = () => {\n// Ensure to call this before requiring any other modules!\n Sentry.init({\n dsn: process.env.SENTRY_DSN,\n integrations: [\n // Add our Profiling integration\n nodeProfilingIntegration(),\n ],\n // Add Tracing by setting tracesSampleRate\n // We recommend adjusting this value in production\n tracesSampleRate: 1.0,\n // Set sampling rate for profiling\n // This is relative to tracesSampleRate\n profilesSampleRate: 1.0,\n })\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"/","sources":["types/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["types/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC","sourcesContent":["export * from './success.response.dto';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"success.response.dto.d.ts","sourceRoot":"/","sources":["types/success.response.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,kBAAkB;IAG7B,OAAO,EAAE,OAAO,CAAC;CAClB"}
|