From 7253dece8e3c3ea53a709661ed77eb9b790077f4 Mon Sep 17 00:00:00 2001 From: shancheas Date: Wed, 2 Sep 2026 08:14:39 +0700 Subject: [PATCH] Refactor code formatting for improved readability - Reformatted import statements and object properties across multiple files to enhance code clarity and maintainability. - Ensured consistent indentation and line breaks in test specifications and service implementations, improving overall code structure. --- src/database/timeline-footprints-table.ts | 8 +++++++- src/modules/auth/auth.controller.spec.ts | 4 +++- .../field/cycles/cycles.service.spec.ts | 5 ++++- src/modules/field/plans/plans.service.spec.ts | 5 ++++- .../field/timeline/timeline.service.spec.ts | 14 +++++++++++--- .../field/timeline/timeline.service.ts | 16 ++++++++-------- .../privileges/privilege-action.spec.ts | 12 +++++++++--- .../privileges/privilege-key-code.spec.ts | 8 ++++++-- .../privileges/privileges.service.spec.ts | 6 +----- .../packing-slips-read.controller.ts | 3 ++- test/company-settings.e2e-spec.ts | 6 +++--- test/privileges.e2e-spec.ts | 4 +++- test/timeline.e2e-spec.ts | 19 +++++++++++++++---- 13 files changed, 76 insertions(+), 34 deletions(-) diff --git a/src/database/timeline-footprints-table.ts b/src/database/timeline-footprints-table.ts index 3e264f6..e498b26 100644 --- a/src/database/timeline-footprints-table.ts +++ b/src/database/timeline-footprints-table.ts @@ -1,4 +1,10 @@ -import { bigint, doublePrecision, index, pgTable, uuid } from 'drizzle-orm/pg-core'; +import { + bigint, + doublePrecision, + index, + pgTable, + uuid, +} from 'drizzle-orm/pg-core'; import { employees } from './employees-table'; export const timelineFootprints = pgTable( diff --git a/src/modules/auth/auth.controller.spec.ts b/src/modules/auth/auth.controller.spec.ts index 96bd9b6..bc121ae 100644 --- a/src/modules/auth/auth.controller.spec.ts +++ b/src/modules/auth/auth.controller.spec.ts @@ -137,7 +137,9 @@ describe('AuthController', () => { ).resolves.toMatchObject({ privilege: { id: 'priv-1', code: 'ADMIN' }, permissions: { - 'ADMIN.SETTINGS.USER.PRIVILEGES': expect.objectContaining({ view: true }), + 'ADMIN.SETTINGS.USER.PRIVILEGES': expect.objectContaining({ + view: true, + }), }, }); }); diff --git a/src/modules/field/cycles/cycles.service.spec.ts b/src/modules/field/cycles/cycles.service.spec.ts index 7838242..4f3c2e4 100644 --- a/src/modules/field/cycles/cycles.service.spec.ts +++ b/src/modules/field/cycles/cycles.service.spec.ts @@ -34,7 +34,10 @@ describe('CyclesService', () => { const employeesService = { findById: jest.fn(), findByCode: jest.fn() }; const branchesService = { findById: jest.fn(), findByCode: jest.fn() }; const customersService = { findById: jest.fn(), findByCode: jest.fn() }; - const privilegesService = { checkPermission: jest.fn(), checkAnyPermission: jest.fn() }; + const privilegesService = { + checkPermission: jest.fn(), + checkAnyPermission: jest.fn(), + }; const now = DateTime.fromUnixMs(1_700_000_000_000); const user: AuthUser = { diff --git a/src/modules/field/plans/plans.service.spec.ts b/src/modules/field/plans/plans.service.spec.ts index c073761..01d4fe0 100644 --- a/src/modules/field/plans/plans.service.spec.ts +++ b/src/modules/field/plans/plans.service.spec.ts @@ -72,7 +72,10 @@ describe('PlansService', () => { markDraftsProcessed: jest.fn(), }; const packingSlipsService = { findById: jest.fn() }; - const privilegesService = { checkPermission: jest.fn(), checkAnyPermission: jest.fn() }; + const privilegesService = { + checkPermission: jest.fn(), + checkAnyPermission: jest.fn(), + }; const user: AuthUser = { id: 'user-1', diff --git a/src/modules/field/timeline/timeline.service.spec.ts b/src/modules/field/timeline/timeline.service.spec.ts index 3767594..0436452 100644 --- a/src/modules/field/timeline/timeline.service.spec.ts +++ b/src/modules/field/timeline/timeline.service.spec.ts @@ -14,7 +14,9 @@ describe('TimelineService', () => { let footprintsRepository: jest.Mocked< Pick >; - let activitiesRepository: jest.Mocked>; + let activitiesRepository: jest.Mocked< + Pick + >; let employeesService: jest.Mocked>; let companySettingsService: jest.Mocked< Pick @@ -40,8 +42,14 @@ describe('TimelineService', () => { const moduleRef: TestingModule = await Test.createTestingModule({ providers: [ TimelineService, - { provide: TimelineFootprintsRepository, useValue: footprintsRepository }, - { provide: TimelineActivitiesRepository, useValue: activitiesRepository }, + { + provide: TimelineFootprintsRepository, + useValue: footprintsRepository, + }, + { + provide: TimelineActivitiesRepository, + useValue: activitiesRepository, + }, { provide: EmployeesService, useValue: employeesService }, { provide: CompanySettingsService, useValue: companySettingsService }, ], diff --git a/src/modules/field/timeline/timeline.service.ts b/src/modules/field/timeline/timeline.service.ts index f919ec3..96d54f5 100644 --- a/src/modules/field/timeline/timeline.service.ts +++ b/src/modules/field/timeline/timeline.service.ts @@ -1,7 +1,4 @@ -import { - BadRequestException, - Injectable, -} from '@nestjs/common'; +import { BadRequestException, Injectable } from '@nestjs/common'; import { DEFAULT_RELATION_FIELDS, pickRelation, @@ -138,14 +135,17 @@ export class TimelineService { if (employeeId || footprints.length <= MAX_FOOTPRINTS_ALL_EMPLOYEES) { return [...footprints]; } - const stride = Math.ceil( - footprints.length / MAX_FOOTPRINTS_ALL_EMPLOYEES, - ); + const stride = Math.ceil(footprints.length / MAX_FOOTPRINTS_ALL_EMPLOYEES); return footprints.filter((_, index) => index % stride === 0); } private assertCoordinates(latitude: number, longitude: number): void { - if (latitude < -90 || latitude > 90 || longitude < -180 || longitude > 180) { + if ( + latitude < -90 || + latitude > 90 || + longitude < -180 || + longitude > 180 + ) { throw new BadRequestException('Invalid coordinates'); } } diff --git a/src/modules/privileges/privilege-action.spec.ts b/src/modules/privileges/privilege-action.spec.ts index be44319..7008d75 100644 --- a/src/modules/privileges/privilege-action.spec.ts +++ b/src/modules/privileges/privilege-action.spec.ts @@ -18,10 +18,16 @@ describe('privilege-action', () => { describe('privilege-key-code', () => { it('accepts 3- and 4-part dotted uppercase codes', () => { - expect(isValidPrivilegeKeyCode('ADMIN.SETTINGS.USER.PRIVILEGES')).toBe(true); - expect(isValidPrivilegeKeyCode('ADMIN.SALES.ACTIVITIES.INVOICE')).toBe(true); + expect(isValidPrivilegeKeyCode('ADMIN.SETTINGS.USER.PRIVILEGES')).toBe( + true, + ); + expect(isValidPrivilegeKeyCode('ADMIN.SALES.ACTIVITIES.INVOICE')).toBe( + true, + ); expect(isValidPrivilegeKeyCode('MOBILE.SALES.PLAN')).toBe(true); - expect(assertPrivilegeKeyCode('MOBILE.SALES.PLAN')).toBe('MOBILE.SALES.PLAN'); + expect(assertPrivilegeKeyCode('MOBILE.SALES.PLAN')).toBe( + 'MOBILE.SALES.PLAN', + ); }); it('rejects invalid codes', () => { diff --git a/src/modules/privileges/privilege-key-code.spec.ts b/src/modules/privileges/privilege-key-code.spec.ts index 5d0e93c..a356acb 100644 --- a/src/modules/privileges/privilege-key-code.spec.ts +++ b/src/modules/privileges/privilege-key-code.spec.ts @@ -12,7 +12,9 @@ describe('privilege-key-code', () => { }); it('accepts 4-part keys', () => { - expect(isValidPrivilegeKeyCode('MOBILE.SALES.PLAN.ATTENDANCE')).toBe(true); + expect(isValidPrivilegeKeyCode('MOBILE.SALES.PLAN.ATTENDANCE')).toBe( + true, + ); expect(isValidPrivilegeKeyCode('ADMIN.SALES.ACTIVITIES.PLAN')).toBe(true); }); @@ -33,7 +35,9 @@ describe('privilege-key-code', () => { describe('assertPrivilegeKeyCode', () => { it('returns the code when valid', () => { - expect(assertPrivilegeKeyCode('MOBILE.SALES.PLAN')).toBe('MOBILE.SALES.PLAN'); + expect(assertPrivilegeKeyCode('MOBILE.SALES.PLAN')).toBe( + 'MOBILE.SALES.PLAN', + ); }); it('throws when invalid', () => { diff --git a/src/modules/privileges/privileges.service.spec.ts b/src/modules/privileges/privileges.service.spec.ts index 3fb7732..6751d2b 100644 --- a/src/modules/privileges/privileges.service.spec.ts +++ b/src/modules/privileges/privileges.service.spec.ts @@ -169,11 +169,7 @@ describe('PrivilegesService', () => { it('checkAnyPermission uses checkPermission for a single key', async () => { repository.checkPermission.mockResolvedValue(true); await expect( - service.checkAnyPermission( - 'user-1', - ['MOBILE.SALES.PLAN'], - 'view', - ), + service.checkAnyPermission('user-1', ['MOBILE.SALES.PLAN'], 'view'), ).resolves.toBe(true); expect(repository.checkPermission).toHaveBeenCalledWith( 'user-1', diff --git a/src/modules/sales/packing-slips/packing-slips-read.controller.ts b/src/modules/sales/packing-slips/packing-slips-read.controller.ts index 2a39e5e..5833573 100644 --- a/src/modules/sales/packing-slips/packing-slips-read.controller.ts +++ b/src/modules/sales/packing-slips/packing-slips-read.controller.ts @@ -21,7 +21,8 @@ import { } from './dto/packing-slip.dto'; import { PackingSlipsService } from './packing-slips.service'; -export const PACKING_SLIP_PRIVILEGE_KEY = 'ADMIN.LOGISTICS.ACTIVITIES.PACKING_SLIP'; +export const PACKING_SLIP_PRIVILEGE_KEY = + 'ADMIN.LOGISTICS.ACTIVITIES.PACKING_SLIP'; @ApiTags('packing-slips') @ApiBearerAuth(BEARER_AUTH_NAME) diff --git a/test/company-settings.e2e-spec.ts b/test/company-settings.e2e-spec.ts index a4c2ed2..47dcaa2 100644 --- a/test/company-settings.e2e-spec.ts +++ b/test/company-settings.e2e-spec.ts @@ -118,9 +118,9 @@ describe('Company settings (e2e)', () => { }) .expect(200); - expect((updated.body as { gpsIntervalSeconds: number }).gpsIntervalSeconds).toBe( - 15, - ); + expect( + (updated.body as { gpsIntervalSeconds: number }).gpsIntervalSeconds, + ).toBe(15); expect( (updated.body as { checkoutWarningRadiusMeters: number }) .checkoutWarningRadiusMeters, diff --git a/test/privileges.e2e-spec.ts b/test/privileges.e2e-spec.ts index bc35eb1..48d6d98 100644 --- a/test/privileges.e2e-spec.ts +++ b/test/privileges.e2e-spec.ts @@ -202,7 +202,9 @@ describe('Privileges (e2e)', () => { expect(me.body.privilege).toMatchObject({ id: adminPrivilegeId, }); - expect(me.body.permissions['ADMIN.SETTINGS.USER.PRIVILEGES'].view).toBe(true); + expect(me.body.permissions['ADMIN.SETTINGS.USER.PRIVILEGES'].view).toBe( + true, + ); await request(app.getHttpServer()) .patch(`/users/${otherUserId}/privilege`) diff --git a/test/timeline.e2e-spec.ts b/test/timeline.e2e-spec.ts index 9ffb5bb..15f78fd 100644 --- a/test/timeline.e2e-spec.ts +++ b/test/timeline.e2e-spec.ts @@ -135,7 +135,8 @@ describe('Timeline (e2e)', () => { }); it('ingests footprints and returns them on admin timeline query', async () => { - const recordedAt = DateTime.fromUnixMs(Date.now()).startOfDay().value + 3_600_000; + const recordedAt = + DateTime.fromUnixMs(Date.now()).startOfDay().value + 3_600_000; const ingest = await request(app.getHttpServer()) .post('/timeline/footprints') @@ -143,14 +144,21 @@ describe('Timeline (e2e)', () => { .send({ points: [ { latitude: -6.2, longitude: 106.8, recordedAt }, - { latitude: -6.201, longitude: 106.801, recordedAt: recordedAt + 5000 }, + { + latitude: -6.201, + longitude: 106.801, + recordedAt: recordedAt + 5000, + }, ], }) .expect(201); expect((ingest.body as { inserted: number }).inserted).toBe(2); - const today = DateTime.fromUnixMs(Date.now()).startOfDay().format().slice(0, 10); + const today = DateTime.fromUnixMs(Date.now()) + .startOfDay() + .format() + .slice(0, 10); const day = await request(app.getHttpServer()) .get('/timeline') .query({ date: today, employeeId }) @@ -168,7 +176,10 @@ describe('Timeline (e2e)', () => { }); it('returns activities-only timeline for the current user', async () => { - const today = DateTime.fromUnixMs(Date.now()).startOfDay().format().slice(0, 10); + const today = DateTime.fromUnixMs(Date.now()) + .startOfDay() + .format() + .slice(0, 10); const me = await request(app.getHttpServer()) .get('/timeline/me') .query({ date: today })