@gooddaydev/common 1.0.11 → 1.0.13

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/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
package/dist/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqEA,IAAA,WAAA,kBAAA,YAAA;AACE,IAAA,SAAA,WAAA,CAA6B,KAA4C,EAAA;QAA5C,IAAK,CAAA,KAAA,GAAL,KAAK,CAAuC;AACvE,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACpB;IAEK,WAAK,CAAA,SAAA,CAAA,KAAA,GAAX,UAAY,KAAoB,EAAA;;;;;;;AACxB,wBAAA,IAAI,IAAK,EAAA,GAAA,EAAA,EAAA,EAAA,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAG,GAAA,KAAK,CAAC,MAAM,CAAC,KAAK,KAAE,CAAC;wBAEpD,OAAM,CAAA,CAAA,YAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE;gCAC7C,IAAI,EAAE,KAAK,CAAC,IAAI;gCAChB,KAAK,EAAE,KAAK,CAAC,KAAK;AAClB,gCAAA,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,KAAK,CAAC,IAAI;AACjB,6BAAA,CAAC,CAAA,CAAA;AALF,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAKL,CAAC,CAAA;;;;AACJ,KAAA,CAAA;IAEK,WAAM,CAAA,SAAA,CAAA,MAAA,GAAZ,UAAa,IAA6B,EAAA;;;;4BACjC,OAAM,CAAA,CAAA,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA;AAApC,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAA6B,CAAC,CAAA;;;;AACtC,KAAA,CAAA;AAEK,IAAA,WAAA,CAAA,SAAA,CAAA,IAAI,GAAV,UACE,MAA+B,EAC/B,UAA8B,EAC9B,OAAyB,EAAA;;;;AAElB,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA,CAAA;AAAzD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAAkD,CAAC,CAAA;;;;AAC3D,KAAA,CAAA;AAEK,IAAA,WAAA,CAAA,SAAA,CAAA,OAAO,GAAb,UACE,MAA+B,EAC/B,UAA8B,EAC9B,OAAyB,EAAA;;;;AAElB,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA,CAAA;AAA5D,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAAqD,CAAC,CAAA;;;;AAC9D,KAAA,CAAA;AAEK,IAAA,WAAA,CAAA,SAAA,CAAA,QAAQ,GAAd,UACE,EAAqB,EACrB,UAA8B,EAC9B,OAAyB,EAAA;;;;AAElB,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA,CAAA;AAAzD,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,SAAkD,CAAC,CAAA;;;;AAC3D,KAAA,CAAA;AAEK,IAAA,WAAA,CAAA,SAAA,CAAA,SAAS,GAAf,UACE,IAA6B,EAC7B,GAAmB,EACnB,OAAyB,EAAA;;;;AAEjB,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,OAAyB,CAAC,CAAA,CAAA;4BAAxE,OAAO,CAAA,CAAA,aAAA,CAAC,SAAgE;AACrE,6BAAA,YAAY,CAAC,CAAA;;;;AACjB,KAAA,CAAA;AAEK,IAAA,WAAA,CAAA,SAAA,CAAA,UAAU,GAAhB,UACE,IAA6B,EAC7B,GAAmB,EACnB,OAAyB,EAAA;;;;AAEjB,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,YAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,OAAyB,CAAC,CAAA,CAAA;4BAAzE,OAAO,CAAA,CAAA,aAAA,CAAC,SAAiE;AACtE,6BAAA,aAAa,CAAC,CAAA;;;;AAClB,KAAA,CAAA;IAEK,WAAS,CAAA,SAAA,CAAA,SAAA,GAAf,UAAgB,IAA6B,EAAA;;;;4BACnC,OAAM,CAAA,CAAA,YAAA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA,CAAA;AAAxC,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,CAAC,EAAA,CAAA,IAAA,EAAgC,EAAE,YAAY,CAAC,CAAA;;;;AACxD,KAAA,CAAA;IAEK,WAAU,CAAA,SAAA,CAAA,UAAA,GAAhB,UAAiB,IAA6B,EAAA;;;;4BACpC,OAAM,CAAA,CAAA,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA,CAAA;AAAzC,oBAAA,KAAA,CAAA,EAAA,OAAA,CAAA,CAAA,aAAO,CAAC,EAAA,CAAA,IAAA,EAAiC,EAAE,YAAY,CAAC,CAAA;;;;AACzD,KAAA,CAAA;IACH,OAAC,WAAA,CAAA;AAAD,CAAC,EAAA;;IC1IW,SAGX;AAHD,CAAA,UAAY,QAAQ,EAAA;AAClB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,QAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EAHW,QAAQ,KAAR,QAAQ,GAGnB,EAAA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":[],"mappings":"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"}
package/dist/index.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @gooddaydev/common v1.0.11
2
+ * @gooddaydev/common v1.0.13
3
3
  * (c) undefined
4
4
  * Released under the MIT License.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.min.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\ninterface PaginateModel<T> {\n paginate(\n filter: Record<string, unknown>,\n options: {\n select?: Record<string, unknown> | string;\n collation?: Record<string, unknown>;\n sort?: Record<string, unknown> | string;\n populate?:\n | Array<Record<string, unknown>>\n | Record<string, unknown>\n | string;\n projection?: Record<string, unknown> | string;\n lean?: boolean;\n leanWithId?: boolean;\n leanWithVirtuals?: boolean;\n offset?: number;\n page?: number;\n limit?: number;\n customLabels?: Record<string, unknown>;\n pagination?: boolean;\n useEstimatedCount?: boolean;\n useCustomCountFn?: boolean;\n forceCountFn?: boolean;\n customFind?: string;\n allowDiskUse?: boolean;\n read?: {\n pref: string;\n tags?: Record<string, unknown>[];\n };\n options?: Record<string, unknown>;\n },\n callback?: (err: Error | null, result: PaginateResult<T>) => void,\n ): Promise<PaginateResult<T>>;\n}\n\ninterface PaginateResult<T> {\n docs: T[];\n totalDocs: number;\n limit: number;\n totalPages: number;\n page: number;\n pagingCounter: number;\n hasPrevPage: boolean;\n hasNextPage: boolean;\n prevPage: number | null;\n nextPage: number | null;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T> & PaginateModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await this.model.paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType","BaseService","model","this","prototype","index","query","_a","sorter","column","state","sort","paginate","filter","page","limit","lean","_b","create","data","find","projection","options","findOne","findById","id","updateOne","args","set","acknowledged","updateMany","modifiedCount","deleteOne","sent","deleteMany","deletedCount","exports"],"mappings":";;;;;8tDAqEA,ICrEYA,EDqEZC,EAAA,WACE,SAAAA,EAA6BC,GAAAC,KAAKD,MAALA,EAC3BC,KAAKD,MAAQA,CACd,CAkEH,OAhEQD,EAAKG,UAAAC,MAAX,SAAYC,qGAGH,OAFQC,EAAA,IAACD,EAAME,OAAOC,QAASH,EAAME,OAAOE,MAA7CC,IAEO,CAAA,EAAAR,KAAKD,MAAMU,SAASN,EAAMO,OAAQ,CAC7CC,KAAMR,EAAMQ,KACZC,MAAOT,EAAMS,MACbJ,KAAMA,EACNK,KAAMV,EAAMU,QAJd,KAAA,EAAA,MAAA,CAAA,EAAOC,gBAMR,EAEKhB,EAAMG,UAAAc,OAAZ,SAAaC,6FACJ,MAAM,CAAA,EAAAhB,KAAKD,MAAMgB,OAAOC,IAA/B,KAAA,EAAA,MAAA,CAAA,EAAOZ,gBACR,EAEKN,EAAAG,UAAAgB,KAAN,SACEP,EACAQ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMkB,KAAKP,EAAQQ,EAAYC,IAAjD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAmB,QAAN,SACEV,EACAQ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMqB,QAAQV,EAAQQ,EAAYC,IAApD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAoB,SAAN,SACEC,EACAJ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMsB,SAASC,EAAIJ,EAAYC,IAAjD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAsB,UAAN,SACEC,EACAC,EACAN,sFAEQ,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMwB,UAAUC,EAAMC,EAAKN,WAA9C,MAAO,CAAA,EAACf,SACLsB,oBACJ,EAEK5B,EAAAG,UAAA0B,WAAN,SACEH,EACAC,EACAN,sFAEQ,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAM4B,WAAWH,EAAMC,EAAKN,WAA/C,MAAO,CAAA,EAACf,SACLwB,qBACJ,EAEK9B,EAASG,UAAA4B,UAAf,SAAgBL,6FACN,MAAM,CAAA,EAAAxB,KAAKD,MAAM8B,UAAUL,IAAnC,KAAA,EAAA,MAAA,CAAA,EAAQpB,EAAA0B,OAAkCJ,oBAC3C,EAEK5B,EAAUG,UAAA8B,WAAhB,SAAiBP,6FACP,MAAM,CAAA,EAAAxB,KAAKD,MAAMgC,WAAWP,IAApC,KAAA,EAAA,MAAA,CAAA,EAAQpB,EAAA0B,OAAmCE,oBAC5C,EACFlC,CAAD,ICvICmC,EAAApC,cAAA,GAHWA,EAAAA,EAAQA,WAARA,WAGX,CAAA,IAFC,MAAA,QACAA,EAAA,KAAA"}
1
+ {"version":3,"file":"index.umd.min.js","sources":["../src/base/base.service.ts","../src/enum/user-type.enum.ts"],"sourcesContent":["import {\n Document,\n ObjectId,\n ProjectionType,\n QueryOptions,\n QueryWithHelpers,\n UpdateQuery,\n} from 'mongoose';\nimport { SoftDeleteModel } from 'mongoose-delete';\n\nexport interface IQueryOptions {\n page: number;\n limit: number;\n sorter: {\n column: string;\n state: 'asc' | 'desc';\n };\n filter: Record<string, unknown>;\n lean: boolean;\n}\n\nclass BaseService<T extends Document, CreateDto> {\n constructor(private readonly model: SoftDeleteModel<T>) {\n this.model = model;\n }\n\n async index(query: IQueryOptions) {\n const sort = { [query.sorter.column]: query.sorter.state };\n\n return await (this.model as any).paginate(query.filter, {\n page: query.page,\n limit: query.limit,\n sort: sort,\n lean: query.lean,\n });\n }\n\n async create(data: CreateDto | CreateDto[]): Promise<T> {\n return await this.model.create(data);\n }\n\n async find(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T[], T>> {\n return await this.model.find(filter, projection, options);\n }\n\n async findOne(\n filter: Record<string, unknown>,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findOne(filter, projection, options);\n }\n\n async findById(\n id: string | ObjectId,\n projection?: ProjectionType<T>,\n options?: QueryOptions<T>,\n ): Promise<QueryWithHelpers<T | null, T>> {\n return await this.model.findById(id, projection, options);\n }\n\n async updateOne(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<boolean> {\n return (await this.model.updateOne(args, set, options as UpdateQuery<T>))\n .acknowledged;\n }\n\n async updateMany(\n args: Record<string, unknown>,\n set: UpdateQuery<T>,\n options?: QueryOptions<T>,\n ): Promise<number> {\n return (await this.model.updateMany(args, set, options as UpdateQuery<T>))\n .modifiedCount;\n }\n\n async deleteOne(args: Record<string, unknown>): Promise<boolean> {\n return (await this.model.deleteOne(args)).acknowledged;\n }\n\n async deleteMany(args: Record<string, unknown>): Promise<number> {\n return (await this.model.deleteMany(args)).deletedCount;\n }\n}\n\nexport { BaseService };\n","export enum UserType {\n ADMIN = 'admin',\n USER = 'user',\n}\n"],"names":["UserType","BaseService","model","this","prototype","index","query","_a","sorter","column","state","sort","paginate","filter","page","limit","lean","_b","create","data","find","projection","options","findOne","findById","id","updateOne","args","set","acknowledged","updateMany","modifiedCount","deleteOne","sent","deleteMany","deletedCount","exports"],"mappings":";;;;;8tDAqBA,ICrBYA,EDqBZC,EAAA,WACE,SAAAA,EAA6BC,GAAAC,KAAKD,MAALA,EAC3BC,KAAKD,MAAQA,CACd,CAkEH,OAhEQD,EAAKG,UAAAC,MAAX,SAAYC,qGAGH,OAFQC,EAAA,IAACD,EAAME,OAAOC,QAASH,EAAME,OAAOE,MAA7CC,IAEQ,CAAA,EAAAR,KAAKD,MAAcU,SAASN,EAAMO,OAAQ,CACtDC,KAAMR,EAAMQ,KACZC,MAAOT,EAAMS,MACbJ,KAAMA,EACNK,KAAMV,EAAMU,QAJd,KAAA,EAAA,MAAA,CAAA,EAAOC,gBAMR,EAEKhB,EAAMG,UAAAc,OAAZ,SAAaC,6FACJ,MAAM,CAAA,EAAAhB,KAAKD,MAAMgB,OAAOC,IAA/B,KAAA,EAAA,MAAA,CAAA,EAAOZ,gBACR,EAEKN,EAAAG,UAAAgB,KAAN,SACEP,EACAQ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMkB,KAAKP,EAAQQ,EAAYC,IAAjD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAmB,QAAN,SACEV,EACAQ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMqB,QAAQV,EAAQQ,EAAYC,IAApD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAoB,SAAN,SACEC,EACAJ,EACAC,sFAEO,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMsB,SAASC,EAAIJ,EAAYC,IAAjD,KAAA,EAAA,MAAA,CAAA,EAAOf,gBACR,EAEKN,EAAAG,UAAAsB,UAAN,SACEC,EACAC,EACAN,sFAEQ,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAMwB,UAAUC,EAAMC,EAAKN,WAA9C,MAAO,CAAA,EAACf,SACLsB,oBACJ,EAEK5B,EAAAG,UAAA0B,WAAN,SACEH,EACAC,EACAN,sFAEQ,KAAA,EAAA,MAAA,CAAA,EAAMnB,KAAKD,MAAM4B,WAAWH,EAAMC,EAAKN,WAA/C,MAAO,CAAA,EAACf,SACLwB,qBACJ,EAEK9B,EAASG,UAAA4B,UAAf,SAAgBL,6FACN,MAAM,CAAA,EAAAxB,KAAKD,MAAM8B,UAAUL,IAAnC,KAAA,EAAA,MAAA,CAAA,EAAQpB,EAAA0B,OAAkCJ,oBAC3C,EAEK5B,EAAUG,UAAA8B,WAAhB,SAAiBP,6FACP,MAAM,CAAA,EAAAxB,KAAKD,MAAMgC,WAAWP,IAApC,KAAA,EAAA,MAAA,CAAA,EAAQpB,EAAA0B,OAAmCE,oBAC5C,EACFlC,CAAD,ICvFCmC,EAAApC,cAAA,GAHWA,EAAAA,EAAQA,WAARA,WAGX,CAAA,IAFC,MAAA,QACAA,EAAA,KAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddaydev/common",
3
- "version": "1.0.11",
3
+ "version": "1.0.13",
4
4
  "description": "Common utilities for TypeScript projects with CI/CD",
5
5
  "cdn": "dist/index.umd.js",
6
6
  "main": "dist/index.js",
@@ -10,49 +10,10 @@ export interface IQueryOptions {
10
10
  filter: Record<string, unknown>;
11
11
  lean: boolean;
12
12
  }
13
- interface PaginateModel<T> {
14
- paginate(filter: Record<string, unknown>, options: {
15
- select?: Record<string, unknown> | string;
16
- collation?: Record<string, unknown>;
17
- sort?: Record<string, unknown> | string;
18
- populate?: Array<Record<string, unknown>> | Record<string, unknown> | string;
19
- projection?: Record<string, unknown> | string;
20
- lean?: boolean;
21
- leanWithId?: boolean;
22
- leanWithVirtuals?: boolean;
23
- offset?: number;
24
- page?: number;
25
- limit?: number;
26
- customLabels?: Record<string, unknown>;
27
- pagination?: boolean;
28
- useEstimatedCount?: boolean;
29
- useCustomCountFn?: boolean;
30
- forceCountFn?: boolean;
31
- customFind?: string;
32
- allowDiskUse?: boolean;
33
- read?: {
34
- pref: string;
35
- tags?: Record<string, unknown>[];
36
- };
37
- options?: Record<string, unknown>;
38
- }, callback?: (err: Error | null, result: PaginateResult<T>) => void): Promise<PaginateResult<T>>;
39
- }
40
- interface PaginateResult<T> {
41
- docs: T[];
42
- totalDocs: number;
43
- limit: number;
44
- totalPages: number;
45
- page: number;
46
- pagingCounter: number;
47
- hasPrevPage: boolean;
48
- hasNextPage: boolean;
49
- prevPage: number | null;
50
- nextPage: number | null;
51
- }
52
13
  declare class BaseService<T extends Document, CreateDto> {
53
14
  private readonly model;
54
- constructor(model: SoftDeleteModel<T> & PaginateModel<T>);
55
- index(query: IQueryOptions): Promise<PaginateResult<T>>;
15
+ constructor(model: SoftDeleteModel<T>);
16
+ index(query: IQueryOptions): Promise<any>;
56
17
  create(data: CreateDto | CreateDto[]): Promise<T>;
57
18
  find(filter: Record<string, unknown>, projection?: ProjectionType<T>, options?: QueryOptions<T>): Promise<QueryWithHelpers<T[], T>>;
58
19
  findOne(filter: Record<string, unknown>, projection?: ProjectionType<T>, options?: QueryOptions<T>): Promise<QueryWithHelpers<T | null, T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"base.service.d.ts","sourceRoot":"","sources":["../../src/base/base.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.service.d.ts","sourceRoot":"","sources":["../../src/base/base.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,cAAM,WAAW,CAAC,CAAC,SAAS,QAAQ,EAAE,SAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;IAIhD,KAAK,CAAC,KAAK,EAAE,aAAa;IAW1B,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAIjD,IAAI,CACR,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAI9B,OAAO,CACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IAInC,QAAQ,CACZ,EAAE,EAAE,MAAM,GAAG,QAAQ,EACrB,UAAU,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IAInC,SAAS,CACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EACnB,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,OAAO,CAAC;IAKb,UAAU,CACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EACnB,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,MAAM,CAAC;IAKZ,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAI1D,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAGjE;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}