@hed-hog/category 0.0.3 → 0.0.5
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/category.controller.d.ts +1 -1
- package/dist/category.controller.d.ts.map +1 -1
- package/dist/category.controller.js +4 -3
- package/dist/category.controller.js.map +1 -1
- package/dist/category.service.d.ts +1 -1
- package/dist/category.service.d.ts.map +1 -1
- package/dist/category.service.js +9 -9
- package/dist/category.service.js.map +1 -1
- package/dist/dto/category.dto.d.ts.map +1 -1
- package/dist/dto/category.dto.js +24 -9
- package/dist/dto/category.dto.js.map +1 -1
- package/package.json +2 -2
- package/src/category.controller.ts +14 -11
- package/src/category.service.ts +10 -10
- package/src/dto/category.dto.ts +34 -9
- package/src/language/en.json +16 -0
- package/src/language/pt.json +16 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.controller.d.ts","sourceRoot":"","sources":["../src/category.controller.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBACa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,eAAe;IAI7C,iBAAiB,CAAW,MAAM,EAAE,MAAM;IAK1C,QAAQ;;;;;;IAKR,OAAO,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;IAK7C,WAAW,CACM,UAAU,EAAE,MAAM,EAC7B,MAAM,EAAE,MAAM;IAMpB,OAAO,CACG,gBAAgB,KAAA,EACpB,MAAM,EAAE,MAAM,EACP,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;;;;;;;;;IAM3B,MAAM,
|
|
1
|
+
{"version":3,"file":"category.controller.d.ts","sourceRoot":"","sources":["../src/category.controller.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBACa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,eAAe;IAI7C,iBAAiB,CAAW,MAAM,EAAE,MAAM;IAK1C,QAAQ;;;;;;IAKR,OAAO,CAA4B,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;IAK7C,WAAW,CACM,UAAU,EAAE,MAAM,EAC7B,MAAM,EAAE,MAAM;IAMpB,OAAO,CACG,gBAAgB,KAAA,EACpB,MAAM,EAAE,MAAM,EACP,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;;;;;;;;;IAM3B,MAAM,CACiB,EAAE,EAAE,MAAM,EAC3B,MAAM,EAAE,MAAM;;;;;;;;;;IAMpB,MAAM,CACF,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW;;;;;;;;;;IAenE,MAAM,CACiB,EAAE,EAAE,MAAM,EAC7B,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;CAcnF"}
|
|
@@ -37,8 +37,8 @@ let CategoryController = class CategoryController {
|
|
|
37
37
|
async findAll(paginationParams, locale, status, parent) {
|
|
38
38
|
return this.categoryService.findAll(paginationParams, locale, status, parent);
|
|
39
39
|
}
|
|
40
|
-
async delete(id) {
|
|
41
|
-
return this.categoryService.delete(id);
|
|
40
|
+
async delete(id, locale) {
|
|
41
|
+
return this.categoryService.delete(id, locale);
|
|
42
42
|
}
|
|
43
43
|
async create({ locale, slug, category_id, color, icon, status }) {
|
|
44
44
|
return this.categoryService.create({
|
|
@@ -103,8 +103,9 @@ __decorate([
|
|
|
103
103
|
__decorate([
|
|
104
104
|
(0, common_1.Delete)(':id'),
|
|
105
105
|
__param(0, (0, common_1.Param)('id', common_1.ParseIntPipe)),
|
|
106
|
+
__param(1, (0, api_locale_1.Locale)()),
|
|
106
107
|
__metadata("design:type", Function),
|
|
107
|
-
__metadata("design:paramtypes", [Number]),
|
|
108
|
+
__metadata("design:paramtypes", [Number, String]),
|
|
108
109
|
__metadata("design:returntype", Promise)
|
|
109
110
|
], CategoryController.prototype, "delete", null);
|
|
110
111
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.controller.js","sourceRoot":"","sources":["../src/category.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oDAA6C;AAC7C,4DAAqD;AACrD,2CAUwB;AACxB,yDAAqD;AACrD,qDAAiD;AAG1C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YACmB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAChD,CAAC;IAGE,AAAN,KAAK,CAAC,iBAAiB,CAAW,MAAc;QAC9C,OAAO,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;IACvD,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAA;IACxC,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAA4B,EAAU;QACjD,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACM,UAAkB,EAC7B,MAAc;QAExB,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAC7D,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CACG,gBAAgB,EACpB,MAAc,EACP,MAAc,EACd,MAAc;QAE/B,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/E,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"category.controller.js","sourceRoot":"","sources":["../src/category.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.service.d.ts","sourceRoot":"","sources":["../src/category.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"category.service.d.ts","sourceRoot":"","sources":["../src/category.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,qBACa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAHb,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,iBAAiB,EAE7B,aAAa,EAAE,aAAa;IAGzC,QAAQ;;;;;;IAoBR,OAAO,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;IAelB,iBAAiB,CAAC,MAAM,EAAE,MAAM;IAuBhC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAsBtC,OAAO,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;;;;;;IAgDvF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa;;;;;;;;;;IAcxC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW;;;;;;;;;;IAkCtE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;CAsDlG"}
|
package/dist/category.service.js
CHANGED
|
@@ -57,7 +57,7 @@ let CategoryService = class CategoryService {
|
|
|
57
57
|
async getRootCategories(locale) {
|
|
58
58
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
59
59
|
if (!localeRecord) {
|
|
60
|
-
throw new common_1.BadRequestException(`Locale ${locale} not found`);
|
|
60
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
61
61
|
}
|
|
62
62
|
const categories = await this.prisma.category.findMany({
|
|
63
63
|
where: { category_id: null, status: 'active' },
|
|
@@ -75,7 +75,7 @@ let CategoryService = class CategoryService {
|
|
|
75
75
|
async getByParent(id, locale) {
|
|
76
76
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
77
77
|
if (!localeRecord) {
|
|
78
|
-
throw new common_1.BadRequestException(`Locale ${locale} not found`);
|
|
78
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
79
79
|
}
|
|
80
80
|
const categories = await this.prisma.category.findMany({
|
|
81
81
|
where: { category_id: Number(id) },
|
|
@@ -92,7 +92,7 @@ let CategoryService = class CategoryService {
|
|
|
92
92
|
async findAll(paginationParams, locale, status, parent) {
|
|
93
93
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
94
94
|
if (!localeRecord) {
|
|
95
|
-
throw new common_1.BadRequestException(`Locale ${locale} not found`);
|
|
95
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
96
96
|
}
|
|
97
97
|
const fields = ['slug'];
|
|
98
98
|
const OR = this.prisma.createInsensitiveSearch(fields, paginationParams);
|
|
@@ -121,12 +121,12 @@ let CategoryService = class CategoryService {
|
|
|
121
121
|
result.data = result.data.map((category) => (0, api_1.itemTranslations)('category_locale', category));
|
|
122
122
|
return result;
|
|
123
123
|
}
|
|
124
|
-
async delete(id) {
|
|
124
|
+
async delete(id, locale = 'en') {
|
|
125
125
|
const category = await this.prisma.category.findUnique({
|
|
126
126
|
where: { id: Number(id) },
|
|
127
127
|
});
|
|
128
128
|
if (!category) {
|
|
129
|
-
throw new common_1.NotFoundException('Category not found');
|
|
129
|
+
throw new common_1.NotFoundException((0, api_locale_1.getLocaleText)('categoryNotFound', locale, 'Category not found'));
|
|
130
130
|
}
|
|
131
131
|
return this.prisma.category.delete({
|
|
132
132
|
where: { id: Number(id) },
|
|
@@ -143,13 +143,13 @@ let CategoryService = class CategoryService {
|
|
|
143
143
|
},
|
|
144
144
|
});
|
|
145
145
|
if (!category) {
|
|
146
|
-
throw new common_1.BadRequestException('Category not created');
|
|
146
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('categoryNotCreated', 'en', 'Category not created'));
|
|
147
147
|
}
|
|
148
148
|
// Process all locales from the locale object
|
|
149
149
|
for (const [localeCode, localeData] of Object.entries(locale)) {
|
|
150
150
|
const localeRecord = await this.localeService.getByCode(localeCode);
|
|
151
151
|
if (!localeRecord) {
|
|
152
|
-
throw new common_1.BadRequestException(`Locale ${localeCode} not found`);
|
|
152
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('localeNotFound', 'en', `Locale ${localeCode} not found`).replace('{{locale}}', localeCode));
|
|
153
153
|
}
|
|
154
154
|
await this.prisma.category_locale.create({
|
|
155
155
|
data: {
|
|
@@ -166,7 +166,7 @@ let CategoryService = class CategoryService {
|
|
|
166
166
|
where: { id: Number(id) },
|
|
167
167
|
});
|
|
168
168
|
if (!category) {
|
|
169
|
-
throw new common_1.NotFoundException('Category not found');
|
|
169
|
+
throw new common_1.NotFoundException((0, api_locale_1.getLocaleText)('categoryNotFound', 'en', 'Category not found'));
|
|
170
170
|
}
|
|
171
171
|
await this.prisma.category.update({
|
|
172
172
|
where: { id: Number(id) },
|
|
@@ -183,7 +183,7 @@ let CategoryService = class CategoryService {
|
|
|
183
183
|
for (const [localeCode, localeData] of Object.entries(locale)) {
|
|
184
184
|
const localeRecord = await this.localeService.getByCode(localeCode);
|
|
185
185
|
if (!localeRecord) {
|
|
186
|
-
throw new common_1.BadRequestException(`Locale ${localeCode} not found`);
|
|
186
|
+
throw new common_1.BadRequestException((0, api_locale_1.getLocaleText)('localeNotFound', 'en', `Locale ${localeCode} not found`).replace('{{locale}}', localeCode));
|
|
187
187
|
}
|
|
188
188
|
const existingLocale = await this.prisma.category_locale.findFirst({
|
|
189
189
|
where: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.service.js","sourceRoot":"","sources":["../src/category.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sCAAgD;AAChD,
|
|
1
|
+
{"version":3,"file":"category.service.js","sourceRoot":"","sources":["../src/category.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.dto.d.ts","sourceRoot":"","sources":["../../src/dto/category.dto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category.dto.d.ts","sourceRoot":"","sources":["../../src/dto/category.dto.ts"],"names":[],"mappings":"AAWA,qBAAa,WAAW;IAQtB,IAAI,EAAE,MAAM,CAAC;IAUb,WAAW,CAAC,EAAE,MAAM,CAAC;IAWrB,KAAK,CAAC,EAAE,MAAM,CAAC;IAOf,IAAI,CAAC,EAAE,MAAM,CAAC;IAOd,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAS/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1C"}
|
package/dist/dto/category.dto.js
CHANGED
|
@@ -10,43 +10,58 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.CategoryDTO = void 0;
|
|
13
|
+
const api_locale_1 = require("@hed-hog/api-locale");
|
|
13
14
|
const class_validator_1 = require("class-validator");
|
|
14
15
|
class CategoryDTO {
|
|
15
16
|
}
|
|
16
17
|
exports.CategoryDTO = CategoryDTO;
|
|
17
18
|
__decorate([
|
|
18
|
-
(0, class_validator_1.IsString)({
|
|
19
|
-
|
|
19
|
+
(0, class_validator_1.IsString)({
|
|
20
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.slugMustBeString', args.value),
|
|
21
|
+
}),
|
|
22
|
+
(0, class_validator_1.IsNotEmpty)({
|
|
23
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.slugRequired', args.value),
|
|
24
|
+
}),
|
|
20
25
|
__metadata("design:type", String)
|
|
21
26
|
], CategoryDTO.prototype, "slug", void 0);
|
|
22
27
|
__decorate([
|
|
23
28
|
(0, class_validator_1.IsOptional)(),
|
|
24
|
-
(0, class_validator_1.IsNumber)({}, {
|
|
29
|
+
(0, class_validator_1.IsNumber)({}, {
|
|
30
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.categoryIdMustBeNumber', args.value),
|
|
31
|
+
}),
|
|
25
32
|
__metadata("design:type", Number)
|
|
26
33
|
], CategoryDTO.prototype, "category_id", void 0);
|
|
27
34
|
__decorate([
|
|
28
35
|
(0, class_validator_1.IsOptional)(),
|
|
29
|
-
(0, class_validator_1.IsString)({
|
|
36
|
+
(0, class_validator_1.IsString)({
|
|
37
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.colorMustBeString', args.value),
|
|
38
|
+
}),
|
|
30
39
|
(0, class_validator_1.Matches)(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/, {
|
|
31
|
-
message:
|
|
40
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.colorMustBeHex', args.value),
|
|
32
41
|
}),
|
|
33
42
|
__metadata("design:type", String)
|
|
34
43
|
], CategoryDTO.prototype, "color", void 0);
|
|
35
44
|
__decorate([
|
|
36
45
|
(0, class_validator_1.IsOptional)(),
|
|
37
|
-
(0, class_validator_1.IsString)({
|
|
46
|
+
(0, class_validator_1.IsString)({
|
|
47
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.iconMustBeString', args.value),
|
|
48
|
+
}),
|
|
38
49
|
__metadata("design:type", String)
|
|
39
50
|
], CategoryDTO.prototype, "icon", void 0);
|
|
40
51
|
__decorate([
|
|
41
52
|
(0, class_validator_1.IsOptional)(),
|
|
42
53
|
(0, class_validator_1.IsEnum)(['active', 'inactive'], {
|
|
43
|
-
message:
|
|
54
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.statusMustBeEnum', args.value),
|
|
44
55
|
}),
|
|
45
56
|
__metadata("design:type", String)
|
|
46
57
|
], CategoryDTO.prototype, "status", void 0);
|
|
47
58
|
__decorate([
|
|
48
|
-
(0, class_validator_1.IsObject)(
|
|
49
|
-
|
|
59
|
+
(0, class_validator_1.IsObject)({
|
|
60
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.localeMustBeObject', args.value),
|
|
61
|
+
}),
|
|
62
|
+
(0, class_validator_1.IsNotEmpty)({
|
|
63
|
+
message: (args) => (0, api_locale_1.getLocaleText)('validation.localeRequired', args.value),
|
|
64
|
+
}),
|
|
50
65
|
__metadata("design:type", Object)
|
|
51
66
|
], CategoryDTO.prototype, "locale", void 0);
|
|
52
67
|
//# sourceMappingURL=category.dto.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category.dto.js","sourceRoot":"","sources":["../../src/dto/category.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAQyB;AAEzB,MAAa,WAAW;
|
|
1
|
+
{"version":3,"file":"category.dto.js","sourceRoot":"","sources":["../../src/dto/category.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAQyB;AAEzB,MAAa,WAAW;CAqDvB;AArDD,kCAqDC;AA7CC;IAPC,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC3D,CAAC;IACD,IAAA,4BAAU,EAAC;QACV,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,yBAAyB,EAAE,IAAI,CAAC,KAAK,CAAC;KACxE,CAAC;;yCACW;AAUb;IARC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EACP,EAAE,EACF;QACE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,mCAAmC,EAAE,IAAI,CAAC,KAAK,CAAC;KACjE,CACF;;gDACoB;AAWrB;IATC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC5D,CAAC;IACD,IAAA,yBAAO,EAAC,oCAAoC,EAAE;QAC7C,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC;KACzD,CAAC;;0CACa;AAOf;IALC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC3D,CAAC;;yCACY;AAOd;IALC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;QAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC3D,CAAC;;2CAC6B;AAS/B;IAPC,IAAA,0BAAQ,EAAC;QACR,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAChB,IAAA,0BAAa,EAAC,+BAA+B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC7D,CAAC;IACD,IAAA,4BAAU,EAAC;QACV,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAa,EAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC;KAC1E,CAAC;;2CACuC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hed-hog/category",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"dependencies": {
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"@nestjs/mapped-types": "*",
|
|
12
12
|
"@hed-hog/api": "0.0.3",
|
|
13
13
|
"@hed-hog/api-locale": "0.0.10",
|
|
14
|
+
"@hed-hog/admin": "0.0.134",
|
|
14
15
|
"@hed-hog/api-pagination": "0.0.3",
|
|
15
|
-
"@hed-hog/admin": "0.0.130",
|
|
16
16
|
"@hed-hog/api-prisma": "0.0.4"
|
|
17
17
|
},
|
|
18
18
|
"exports": {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Locale } from '@hed-hog/api-locale';
|
|
2
2
|
import { Pagination } from '@hed-hog/api-pagination';
|
|
3
3
|
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
Body,
|
|
5
|
+
Controller,
|
|
6
|
+
Delete,
|
|
7
|
+
Get,
|
|
8
|
+
Param,
|
|
9
|
+
ParseIntPipe,
|
|
10
|
+
Patch,
|
|
11
|
+
Post,
|
|
12
|
+
Query
|
|
13
13
|
} from '@nestjs/common';
|
|
14
14
|
import { CategoryService } from './category.service';
|
|
15
15
|
import { CategoryDTO } from './dto/category.dto';
|
|
@@ -54,8 +54,11 @@ export class CategoryController {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
@Delete(':id')
|
|
57
|
-
async delete(
|
|
58
|
-
|
|
57
|
+
async delete(
|
|
58
|
+
@Param('id', ParseIntPipe) id: number,
|
|
59
|
+
@Locale() locale: string,
|
|
60
|
+
) {
|
|
61
|
+
return this.categoryService.delete(id, locale);
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
@Post()
|
package/src/category.service.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { itemTranslations } from '@hed-hog/api';
|
|
2
|
-
import { LocaleService } from '@hed-hog/api-locale';
|
|
2
|
+
import { LocaleService, getLocaleText } from '@hed-hog/api-locale';
|
|
3
3
|
import { PaginationDTO, PaginationService } from '@hed-hog/api-pagination';
|
|
4
4
|
import { PrismaService } from '@hed-hog/api-prisma';
|
|
5
5
|
import { BadRequestException, Inject, Injectable, NotFoundException, forwardRef } from '@nestjs/common';
|
|
@@ -52,7 +52,7 @@ export class CategoryService {
|
|
|
52
52
|
async getRootCategories(locale: string){
|
|
53
53
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
54
54
|
if (!localeRecord) {
|
|
55
|
-
throw new BadRequestException(`Locale ${locale} not found`);
|
|
55
|
+
throw new BadRequestException(getLocaleText('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
const categories = await this.prisma.category.findMany({
|
|
@@ -75,7 +75,7 @@ export class CategoryService {
|
|
|
75
75
|
async getByParent(id: string, locale: string){
|
|
76
76
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
77
77
|
if (!localeRecord) {
|
|
78
|
-
throw new BadRequestException(`Locale ${locale} not found`);
|
|
78
|
+
throw new BadRequestException(getLocaleText('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
const categories = await this.prisma.category.findMany({
|
|
@@ -97,7 +97,7 @@ export class CategoryService {
|
|
|
97
97
|
async findAll(paginationParams: PaginationDTO, locale: string, status: string, parent: string){
|
|
98
98
|
const localeRecord = await this.localeService.getByCode(locale);
|
|
99
99
|
if (!localeRecord) {
|
|
100
|
-
throw new BadRequestException(`Locale ${locale} not found`);
|
|
100
|
+
throw new BadRequestException(getLocaleText('localeNotFound', locale, `Locale ${locale} not found`).replace('{{locale}}', locale));
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
const fields = ['slug'];
|
|
@@ -142,13 +142,13 @@ export class CategoryService {
|
|
|
142
142
|
return result;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
-
async delete(id: number){
|
|
145
|
+
async delete(id: number, locale: string = 'en'){
|
|
146
146
|
const category = await this.prisma.category.findUnique({
|
|
147
147
|
where: { id: Number(id) },
|
|
148
148
|
});
|
|
149
149
|
|
|
150
150
|
if (!category) {
|
|
151
|
-
throw new NotFoundException('Category not found');
|
|
151
|
+
throw new NotFoundException(getLocaleText('categoryNotFound', locale, 'Category not found'));
|
|
152
152
|
}
|
|
153
153
|
|
|
154
154
|
return this.prisma.category.delete({
|
|
@@ -168,14 +168,14 @@ export class CategoryService {
|
|
|
168
168
|
});
|
|
169
169
|
|
|
170
170
|
if (!category) {
|
|
171
|
-
throw new BadRequestException('Category not created');
|
|
171
|
+
throw new BadRequestException(getLocaleText('categoryNotCreated', 'en', 'Category not created'));
|
|
172
172
|
}
|
|
173
173
|
|
|
174
174
|
// Process all locales from the locale object
|
|
175
175
|
for (const [localeCode, localeData] of Object.entries(locale)) {
|
|
176
176
|
const localeRecord = await this.localeService.getByCode(localeCode);
|
|
177
177
|
if (!localeRecord) {
|
|
178
|
-
throw new BadRequestException(`Locale ${localeCode} not found`);
|
|
178
|
+
throw new BadRequestException(getLocaleText('localeNotFound', 'en', `Locale ${localeCode} not found`).replace('{{locale}}', localeCode));
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
await this.prisma.category_locale.create({
|
|
@@ -196,7 +196,7 @@ export class CategoryService {
|
|
|
196
196
|
});
|
|
197
197
|
|
|
198
198
|
if (!category) {
|
|
199
|
-
throw new NotFoundException('Category not found');
|
|
199
|
+
throw new NotFoundException(getLocaleText('categoryNotFound', 'en', 'Category not found'));
|
|
200
200
|
}
|
|
201
201
|
|
|
202
202
|
await this.prisma.category.update({
|
|
@@ -215,7 +215,7 @@ export class CategoryService {
|
|
|
215
215
|
for (const [localeCode, localeData] of Object.entries(locale)) {
|
|
216
216
|
const localeRecord = await this.localeService.getByCode(localeCode);
|
|
217
217
|
if (!localeRecord) {
|
|
218
|
-
throw new BadRequestException(`Locale ${localeCode} not found`);
|
|
218
|
+
throw new BadRequestException(getLocaleText('localeNotFound', 'en', `Locale ${localeCode} not found`).replace('{{locale}}', localeCode));
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
const existingLocale = await this.prisma.category_locale.findFirst({
|
package/src/dto/category.dto.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getLocaleText } from '@hed-hog/api-locale';
|
|
1
2
|
import {
|
|
2
3
|
IsEnum,
|
|
3
4
|
IsNotEmpty,
|
|
@@ -9,32 +10,56 @@ import {
|
|
|
9
10
|
} from 'class-validator';
|
|
10
11
|
|
|
11
12
|
export class CategoryDTO {
|
|
12
|
-
@IsString({
|
|
13
|
-
|
|
13
|
+
@IsString({
|
|
14
|
+
message: (args) =>
|
|
15
|
+
getLocaleText('validation.slugMustBeString', args.value),
|
|
16
|
+
})
|
|
17
|
+
@IsNotEmpty({
|
|
18
|
+
message: (args) => getLocaleText('validation.slugRequired', args.value),
|
|
19
|
+
})
|
|
14
20
|
slug: string;
|
|
15
21
|
|
|
16
22
|
@IsOptional()
|
|
17
|
-
@IsNumber(
|
|
23
|
+
@IsNumber(
|
|
24
|
+
{},
|
|
25
|
+
{
|
|
26
|
+
message: (args) =>
|
|
27
|
+
getLocaleText('validation.categoryIdMustBeNumber', args.value),
|
|
28
|
+
},
|
|
29
|
+
)
|
|
18
30
|
category_id?: number;
|
|
19
31
|
|
|
20
32
|
@IsOptional()
|
|
21
|
-
@IsString({
|
|
33
|
+
@IsString({
|
|
34
|
+
message: (args) =>
|
|
35
|
+
getLocaleText('validation.colorMustBeString', args.value),
|
|
36
|
+
})
|
|
22
37
|
@Matches(/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/, {
|
|
23
|
-
message:
|
|
38
|
+
message: (args) =>
|
|
39
|
+
getLocaleText('validation.colorMustBeHex', args.value),
|
|
24
40
|
})
|
|
25
41
|
color?: string;
|
|
26
42
|
|
|
27
43
|
@IsOptional()
|
|
28
|
-
@IsString({
|
|
44
|
+
@IsString({
|
|
45
|
+
message: (args) =>
|
|
46
|
+
getLocaleText('validation.iconMustBeString', args.value),
|
|
47
|
+
})
|
|
29
48
|
icon?: string;
|
|
30
49
|
|
|
31
50
|
@IsOptional()
|
|
32
51
|
@IsEnum(['active', 'inactive'], {
|
|
33
|
-
message:
|
|
52
|
+
message: (args) =>
|
|
53
|
+
getLocaleText('validation.statusMustBeEnum', args.value),
|
|
34
54
|
})
|
|
35
55
|
status?: 'active' | 'inactive';
|
|
36
56
|
|
|
37
|
-
@IsObject(
|
|
38
|
-
|
|
57
|
+
@IsObject({
|
|
58
|
+
message: (args) =>
|
|
59
|
+
getLocaleText('validation.localeMustBeObject', args.value),
|
|
60
|
+
})
|
|
61
|
+
@IsNotEmpty({
|
|
62
|
+
message: (args) => getLocaleText('validation.localeRequired', args.value),
|
|
63
|
+
})
|
|
39
64
|
locale: Record<string, { name: string }>;
|
|
40
65
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"categoryNotFound": "Category not found",
|
|
3
|
+
"categoryNotCreated": "Category not created",
|
|
4
|
+
"localeNotFound": "Locale {{locale}} not found",
|
|
5
|
+
"validation": {
|
|
6
|
+
"slugMustBeString": "Slug must be a string",
|
|
7
|
+
"slugRequired": "Slug is required",
|
|
8
|
+
"categoryIdMustBeNumber": "Category ID must be a number",
|
|
9
|
+
"colorMustBeString": "Color must be a string",
|
|
10
|
+
"colorMustBeHex": "Color must be a valid hexadecimal value",
|
|
11
|
+
"iconMustBeString": "Icon must be a string",
|
|
12
|
+
"statusMustBeEnum": "Status must be 'active' or 'inactive'",
|
|
13
|
+
"localeMustBeObject": "Locale must be an object",
|
|
14
|
+
"localeRequired": "Locale is required"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"categoryNotFound": "Categoria não encontrada",
|
|
3
|
+
"categoryNotCreated": "Categoria não criada",
|
|
4
|
+
"localeNotFound": "Localidade {{locale}} não encontrada",
|
|
5
|
+
"validation": {
|
|
6
|
+
"slugMustBeString": "Slug deve ser uma string",
|
|
7
|
+
"slugRequired": "Slug é obrigatório",
|
|
8
|
+
"categoryIdMustBeNumber": "ID da categoria deve ser um número",
|
|
9
|
+
"colorMustBeString": "Cor deve ser uma string",
|
|
10
|
+
"colorMustBeHex": "Cor deve ser um valor hexadecimal válido",
|
|
11
|
+
"iconMustBeString": "Ícone deve ser uma string",
|
|
12
|
+
"statusMustBeEnum": "Status deve ser 'active' ou 'inactive'",
|
|
13
|
+
"localeMustBeObject": "Localidade deve ser um objeto",
|
|
14
|
+
"localeRequired": "Localidade é obrigatória"
|
|
15
|
+
}
|
|
16
|
+
}
|