@hed-hog/catalog 0.0.285 → 0.0.291
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/catalog-resource.config.d.ts +1 -0
- package/dist/catalog-resource.config.d.ts.map +1 -1
- package/dist/catalog-resource.config.js +12 -0
- package/dist/catalog-resource.config.js.map +1 -1
- package/dist/catalog.service.js +2 -2
- package/dist/catalog.service.js.map +1 -1
- package/hedhog/frontend/app/_components/catalog-resource-form-sheet.tsx.ejs +37 -28
- package/hedhog/frontend/app/_lib/catalog-resources.tsx.ejs +31 -24
- package/hedhog/frontend/app/dashboard/page.tsx.ejs +24 -40
- package/hedhog/frontend/messages/en.json +15 -12
- package/hedhog/frontend/messages/pt.json +15 -12
- package/package.json +7 -7
- package/src/catalog-resource.config.ts +231 -218
- package/src/catalog.service.ts +167 -167
|
@@ -6,6 +6,7 @@ export type CatalogResourceConfig = {
|
|
|
6
6
|
fields: string[];
|
|
7
7
|
defaultOrderBy?: Record<string, 'asc' | 'desc'>;
|
|
8
8
|
statusField?: string;
|
|
9
|
+
activeStatusValue?: string;
|
|
9
10
|
};
|
|
10
11
|
export declare const catalogResources: CatalogResourceConfig[];
|
|
11
12
|
export declare const catalogResourceMap: Map<string, CatalogResourceConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-resource.config.d.ts","sourceRoot":"","sources":["../src/catalog-resource.config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"catalog-resource.config.d.ts","sourceRoot":"","sources":["../src/catalog-resource.config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,qBAAqB,EAuNnD,CAAC;AAEF,eAAO,MAAM,kBAAkB,oCAE9B,CAAC"}
|
|
@@ -9,6 +9,7 @@ exports.catalogResources = [
|
|
|
9
9
|
filterFields: ['status', 'logo_file_id'],
|
|
10
10
|
fields: ['slug', 'name', 'normalized_name', 'logo_file_id', 'status', 'website_url'],
|
|
11
11
|
statusField: 'status',
|
|
12
|
+
activeStatusValue: 'active',
|
|
12
13
|
},
|
|
13
14
|
{
|
|
14
15
|
resource: 'sites',
|
|
@@ -17,6 +18,7 @@ exports.catalogResources = [
|
|
|
17
18
|
filterFields: ['status', 'site_type', 'default_locale_id'],
|
|
18
19
|
fields: ['slug', 'name', 'domain', 'status', 'site_type', 'default_locale_id', 'theme_settings_json', 'seo_defaults_json'],
|
|
19
20
|
statusField: 'status',
|
|
21
|
+
activeStatusValue: 'active',
|
|
20
22
|
},
|
|
21
23
|
{
|
|
22
24
|
resource: 'products',
|
|
@@ -25,6 +27,7 @@ exports.catalogResources = [
|
|
|
25
27
|
filterFields: ['status', 'comparison_status', 'brand_id', 'category_id', 'primary_content_id', 'is_active'],
|
|
26
28
|
fields: ['brand_id', 'category_id', 'primary_content_id', 'slug', 'name', 'short_description', 'description', 'model_name', 'sku', 'gtin', 'status', 'comparison_status', 'release_date', 'spec_snapshot_json', 'comparison_snapshot_json', 'is_active'],
|
|
27
29
|
statusField: 'status',
|
|
30
|
+
activeStatusValue: 'published',
|
|
28
31
|
},
|
|
29
32
|
{
|
|
30
33
|
resource: 'product-categories',
|
|
@@ -47,6 +50,7 @@ exports.catalogResources = [
|
|
|
47
50
|
filterFields: ['product_id', 'site_id', 'publication_status', 'is_featured'],
|
|
48
51
|
fields: ['product_id', 'site_id', 'publication_status', 'canonical_slug', 'is_featured', 'visibility_score', 'override_brand_name', 'seo_title', 'seo_description'],
|
|
49
52
|
statusField: 'publication_status',
|
|
53
|
+
activeStatusValue: 'published',
|
|
50
54
|
},
|
|
51
55
|
{
|
|
52
56
|
resource: 'attribute-groups',
|
|
@@ -55,6 +59,7 @@ exports.catalogResources = [
|
|
|
55
59
|
filterFields: ['status'],
|
|
56
60
|
fields: ['slug', 'name', 'status'],
|
|
57
61
|
statusField: 'status',
|
|
62
|
+
activeStatusValue: 'active',
|
|
58
63
|
},
|
|
59
64
|
{
|
|
60
65
|
resource: 'attributes',
|
|
@@ -84,6 +89,7 @@ exports.catalogResources = [
|
|
|
84
89
|
filterFields: ['category_id', 'status', 'score_type'],
|
|
85
90
|
fields: ['category_id', 'slug', 'name', 'weight', 'score_type', 'formula_json', 'display_order', 'status'],
|
|
86
91
|
statusField: 'status',
|
|
92
|
+
activeStatusValue: 'active',
|
|
87
93
|
},
|
|
88
94
|
{
|
|
89
95
|
resource: 'product-scores',
|
|
@@ -99,6 +105,7 @@ exports.catalogResources = [
|
|
|
99
105
|
filterFields: ['category_id', 'site_id', 'primary_content_id', 'comparison_type', 'generation_mode', 'status'],
|
|
100
106
|
fields: ['category_id', 'site_id', 'primary_content_id', 'slug', 'comparison_type', 'generation_mode', 'status', 'title', 'summary', 'intro', 'verdict', 'spec_snapshot_json', 'eligibility_hash', 'published_at'],
|
|
101
107
|
statusField: 'status',
|
|
108
|
+
activeStatusValue: 'published',
|
|
102
109
|
},
|
|
103
110
|
{
|
|
104
111
|
resource: 'comparison-items',
|
|
@@ -121,6 +128,7 @@ exports.catalogResources = [
|
|
|
121
128
|
filterFields: ['category_id', 'status'],
|
|
122
129
|
fields: ['category_id', 'rule_type', 'rule_json', 'min_similarity_score', 'status'],
|
|
123
130
|
statusField: 'status',
|
|
131
|
+
activeStatusValue: 'active',
|
|
124
132
|
},
|
|
125
133
|
{
|
|
126
134
|
resource: 'merchants',
|
|
@@ -129,6 +137,7 @@ exports.catalogResources = [
|
|
|
129
137
|
filterFields: ['status', 'merchant_type', 'logo_file_id'],
|
|
130
138
|
fields: ['slug', 'name', 'status', 'merchant_type', 'logo_file_id'],
|
|
131
139
|
statusField: 'status',
|
|
140
|
+
activeStatusValue: 'active',
|
|
132
141
|
},
|
|
133
142
|
{
|
|
134
143
|
resource: 'affiliate-programs',
|
|
@@ -137,6 +146,7 @@ exports.catalogResources = [
|
|
|
137
146
|
filterFields: ['merchant_id', 'status', 'network_type'],
|
|
138
147
|
fields: ['merchant_id', 'slug', 'name', 'network_type', 'tracking_template', 'commission_type', 'default_commission_value', 'status'],
|
|
139
148
|
statusField: 'status',
|
|
149
|
+
activeStatusValue: 'active',
|
|
140
150
|
},
|
|
141
151
|
{
|
|
142
152
|
resource: 'offers',
|
|
@@ -180,6 +190,7 @@ exports.catalogResources = [
|
|
|
180
190
|
filterFields: ['site_id', 'category_id', 'status', 'page_type'],
|
|
181
191
|
fields: ['site_id', 'category_id', 'page_type', 'rule_slug', 'status', 'generation_query_json', 'min_product_count', 'min_attribute_coverage', 'canonical_strategy', 'priority', 'template_json'],
|
|
182
192
|
statusField: 'status',
|
|
193
|
+
activeStatusValue: 'active',
|
|
183
194
|
},
|
|
184
195
|
{
|
|
185
196
|
resource: 'import-sources',
|
|
@@ -188,6 +199,7 @@ exports.catalogResources = [
|
|
|
188
199
|
filterFields: ['source_type', 'status'],
|
|
189
200
|
fields: ['slug', 'name', 'source_type', 'config_json', 'status'],
|
|
190
201
|
statusField: 'status',
|
|
202
|
+
activeStatusValue: 'active',
|
|
191
203
|
},
|
|
192
204
|
{
|
|
193
205
|
resource: 'import-runs',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-resource.config.js","sourceRoot":"","sources":["../src/catalog-resource.config.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"catalog-resource.config.js","sourceRoot":"","sources":["../src/catalog-resource.config.ts"],"names":[],"mappings":"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"}
|
package/dist/catalog.service.js
CHANGED
|
@@ -83,10 +83,10 @@ let CatalogService = class CatalogService {
|
|
|
83
83
|
const model = this.getModel(resource, locale);
|
|
84
84
|
const total = await model.count({});
|
|
85
85
|
const result = { total };
|
|
86
|
-
if (config.statusField) {
|
|
86
|
+
if (config.statusField && config.activeStatusValue) {
|
|
87
87
|
result.active = await model.count({
|
|
88
88
|
where: {
|
|
89
|
-
[config.statusField]:
|
|
89
|
+
[config.statusField]: config.activeStatusValue,
|
|
90
90
|
},
|
|
91
91
|
});
|
|
92
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.service.js","sourceRoot":"","sources":["../src/catalog.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"catalog.service.js","sourceRoot":"","sources":["../src/catalog.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
catalogResourceMap,
|
|
5
|
-
getCatalogLocalizedText,
|
|
6
|
-
getCatalogRecordLabel,
|
|
7
|
-
type CatalogFormFieldDefinition,
|
|
8
|
-
type CatalogResourceDefinition,
|
|
9
|
-
} from '../_lib/catalog-resources';
|
|
10
3
|
import { RichTextEditor } from '@/components/rich-text-editor';
|
|
11
4
|
import { Button } from '@/components/ui/button';
|
|
12
5
|
import {
|
|
@@ -50,15 +43,22 @@ import {
|
|
|
50
43
|
} from '@/components/ui/sheet';
|
|
51
44
|
import { Switch } from '@/components/ui/switch';
|
|
52
45
|
import { Textarea } from '@/components/ui/textarea';
|
|
53
|
-
import { zodResolver } from '@hookform/resolvers/zod';
|
|
54
46
|
import { useApp, useQuery } from '@hed-hog/next-app-provider';
|
|
47
|
+
import { zodResolver } from '@hookform/resolvers/zod';
|
|
55
48
|
import { ChevronsUpDown, Loader2, Plus, Save, Upload, X } from 'lucide-react';
|
|
56
|
-
import Image from 'next/image';
|
|
57
49
|
import { useTranslations } from 'next-intl';
|
|
50
|
+
import Image from 'next/image';
|
|
58
51
|
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
59
52
|
import { useForm } from 'react-hook-form';
|
|
60
53
|
import { toast } from 'sonner';
|
|
61
54
|
import { z } from 'zod';
|
|
55
|
+
import {
|
|
56
|
+
catalogResourceMap,
|
|
57
|
+
getCatalogLocalizedText,
|
|
58
|
+
getCatalogRecordLabel,
|
|
59
|
+
type CatalogFormFieldDefinition,
|
|
60
|
+
type CatalogResourceDefinition,
|
|
61
|
+
} from '../_lib/catalog-resources';
|
|
62
62
|
|
|
63
63
|
type CatalogRecord = Record<string, unknown>;
|
|
64
64
|
type CatalogFormValues = Record<string, unknown>;
|
|
@@ -135,7 +135,7 @@ function buildFormSchema(resourceConfig: CatalogResourceDefinition) {
|
|
|
135
135
|
|
|
136
136
|
for (const section of resourceConfig.formSections) {
|
|
137
137
|
for (const field of section.fields) {
|
|
138
|
-
let schema = buildFieldSchema(field);
|
|
138
|
+
let schema: z.ZodTypeAny = buildFieldSchema(field);
|
|
139
139
|
|
|
140
140
|
if (field.required) {
|
|
141
141
|
if (
|
|
@@ -260,7 +260,11 @@ function normalizeSubmitValue(
|
|
|
260
260
|
return String(rawValue || '').trim() || null;
|
|
261
261
|
}
|
|
262
262
|
|
|
263
|
-
if (
|
|
263
|
+
if (
|
|
264
|
+
field.type === 'date' ||
|
|
265
|
+
field.type === 'datetime' ||
|
|
266
|
+
field.type === 'select'
|
|
267
|
+
) {
|
|
264
268
|
return String(rawValue || '').trim() || null;
|
|
265
269
|
}
|
|
266
270
|
|
|
@@ -274,7 +278,7 @@ function extractRecordId(record: CatalogRecord) {
|
|
|
274
278
|
function extractRelationLabel(
|
|
275
279
|
item: CatalogRecord,
|
|
276
280
|
labelKeys: string[]
|
|
277
|
-
) {
|
|
281
|
+
): string {
|
|
278
282
|
for (const key of labelKeys) {
|
|
279
283
|
const value = item[key];
|
|
280
284
|
|
|
@@ -283,7 +287,7 @@ function extractRelationLabel(
|
|
|
283
287
|
}
|
|
284
288
|
}
|
|
285
289
|
|
|
286
|
-
return getCatalogRecordLabel(item);
|
|
290
|
+
return String(getCatalogRecordLabel(item));
|
|
287
291
|
}
|
|
288
292
|
|
|
289
293
|
function getLocalizedPlaceholder(
|
|
@@ -345,7 +349,8 @@ function CatalogRelationField({
|
|
|
345
349
|
debouncedSearch,
|
|
346
350
|
],
|
|
347
351
|
queryFn: async () => {
|
|
348
|
-
|
|
352
|
+
const relation = field.relation;
|
|
353
|
+
if (!relation) return [];
|
|
349
354
|
|
|
350
355
|
const params: Record<string, string | number> = {
|
|
351
356
|
page: 1,
|
|
@@ -353,11 +358,11 @@ function CatalogRelationField({
|
|
|
353
358
|
};
|
|
354
359
|
|
|
355
360
|
if (debouncedSearch.trim()) {
|
|
356
|
-
params[
|
|
361
|
+
params[relation.searchParam || 'search'] = debouncedSearch.trim();
|
|
357
362
|
}
|
|
358
363
|
|
|
359
364
|
const response = await request({
|
|
360
|
-
url:
|
|
365
|
+
url: relation.endpoint,
|
|
361
366
|
method: 'GET',
|
|
362
367
|
params,
|
|
363
368
|
});
|
|
@@ -373,8 +378,8 @@ function CatalogRelationField({
|
|
|
373
378
|
: [];
|
|
374
379
|
|
|
375
380
|
return items.map((item) => ({
|
|
376
|
-
id: Number(item[
|
|
377
|
-
label: extractRelationLabel(item,
|
|
381
|
+
id: Number(item[relation.valueKey || 'id']),
|
|
382
|
+
label: extractRelationLabel(item, relation.labelKeys),
|
|
378
383
|
}));
|
|
379
384
|
},
|
|
380
385
|
enabled: Boolean(field.relation),
|
|
@@ -492,7 +497,7 @@ function CatalogRelationField({
|
|
|
492
497
|
onChange(createdId);
|
|
493
498
|
}
|
|
494
499
|
|
|
495
|
-
setSelectedLabel(getCatalogRecordLabel(created));
|
|
500
|
+
setSelectedLabel(String(getCatalogRecordLabel(created)));
|
|
496
501
|
}}
|
|
497
502
|
/>
|
|
498
503
|
) : null}
|
|
@@ -703,7 +708,10 @@ export function CatalogResourceFormSheet({
|
|
|
703
708
|
|
|
704
709
|
const submitLabel = isEditing
|
|
705
710
|
? getCatalogLocalizedText(resourceConfig.editActionLabel, currentLocaleCode)
|
|
706
|
-
: getCatalogLocalizedText(
|
|
711
|
+
: getCatalogLocalizedText(
|
|
712
|
+
resourceConfig.createActionLabel,
|
|
713
|
+
currentLocaleCode
|
|
714
|
+
);
|
|
707
715
|
|
|
708
716
|
const handleSubmit = async (values: CatalogFormValues) => {
|
|
709
717
|
try {
|
|
@@ -761,7 +769,10 @@ export function CatalogResourceFormSheet({
|
|
|
761
769
|
>
|
|
762
770
|
<div>
|
|
763
771
|
<h3 className="text-sm font-semibold">
|
|
764
|
-
{getCatalogLocalizedText(
|
|
772
|
+
{getCatalogLocalizedText(
|
|
773
|
+
section.title,
|
|
774
|
+
currentLocaleCode
|
|
775
|
+
)}
|
|
765
776
|
</h3>
|
|
766
777
|
{section.description ? (
|
|
767
778
|
<p className="text-sm text-muted-foreground">
|
|
@@ -802,10 +813,10 @@ export function CatalogResourceFormSheet({
|
|
|
802
813
|
field.type === 'url'
|
|
803
814
|
? 'url'
|
|
804
815
|
: field.type === 'date'
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
816
|
+
? 'date'
|
|
817
|
+
: field.type === 'datetime'
|
|
818
|
+
? 'datetime-local'
|
|
819
|
+
: 'text'
|
|
809
820
|
}
|
|
810
821
|
placeholder={getLocalizedPlaceholder(
|
|
811
822
|
field,
|
|
@@ -849,9 +860,7 @@ export function CatalogResourceFormSheet({
|
|
|
849
860
|
) : field.type === 'number' ? (
|
|
850
861
|
<Input
|
|
851
862
|
type="number"
|
|
852
|
-
className={
|
|
853
|
-
'w-full'
|
|
854
|
-
}
|
|
863
|
+
className={'w-full'}
|
|
855
864
|
placeholder={getLocalizedPlaceholder(
|
|
856
865
|
field,
|
|
857
866
|
currentLocaleCode
|
|
@@ -118,11 +118,15 @@ export type CatalogResourceDefinition = {
|
|
|
118
118
|
|
|
119
119
|
const ptEn = (pt: string, en: string): CatalogLocalizedText => ({ pt, en });
|
|
120
120
|
|
|
121
|
-
const
|
|
121
|
+
const activeInactiveStatusFilterOptions: CatalogFilterOptionDefinition[] = [
|
|
122
122
|
{ value: 'active', labelKey: 'active' },
|
|
123
123
|
{ value: 'inactive', labelKey: 'inactive' },
|
|
124
|
+
];
|
|
125
|
+
|
|
126
|
+
const publicationStatusFilterOptions: CatalogFilterOptionDefinition[] = [
|
|
124
127
|
{ value: 'draft', labelKey: 'draft' },
|
|
125
128
|
{ value: 'published', labelKey: 'published' },
|
|
129
|
+
{ value: 'archived', labelKey: 'archived' },
|
|
126
130
|
];
|
|
127
131
|
|
|
128
132
|
const availabilityFilterOptions: CatalogFilterOptionDefinition[] = [
|
|
@@ -144,18 +148,21 @@ const facetModeFilterOptions: CatalogFilterOptionDefinition[] = [
|
|
|
144
148
|
{ value: 'select', labelKey: 'select' },
|
|
145
149
|
];
|
|
146
150
|
|
|
147
|
-
const
|
|
151
|
+
const activeInactiveStatusOptions = [
|
|
148
152
|
{ value: 'active', label: ptEn('Ativo', 'Active') },
|
|
149
153
|
{ value: 'inactive', label: ptEn('Inativo', 'Inactive') },
|
|
154
|
+
];
|
|
155
|
+
|
|
156
|
+
const publicationStatusOptions = [
|
|
150
157
|
{ value: 'draft', label: ptEn('Rascunho', 'Draft') },
|
|
151
158
|
{ value: 'published', label: ptEn('Publicado', 'Published') },
|
|
159
|
+
{ value: 'archived', label: ptEn('Arquivado', 'Archived') },
|
|
152
160
|
];
|
|
153
161
|
|
|
154
162
|
const comparisonStatusOptions = [
|
|
155
163
|
{ value: 'draft', label: ptEn('Rascunho', 'Draft') },
|
|
156
|
-
{ value: '
|
|
157
|
-
{ value: '
|
|
158
|
-
{ value: 'inactive', label: ptEn('Inativo', 'Inactive') },
|
|
164
|
+
{ value: 'ready', label: ptEn('Pronto', 'Ready') },
|
|
165
|
+
{ value: 'disabled', label: ptEn('Desabilitado', 'Disabled') },
|
|
159
166
|
];
|
|
160
167
|
|
|
161
168
|
const siteTypeOptions = [
|
|
@@ -285,7 +292,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
285
292
|
hasActiveStats: true,
|
|
286
293
|
listVariant: 'cards',
|
|
287
294
|
primaryFilterField: 'status',
|
|
288
|
-
primaryFilterOptions:
|
|
295
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
289
296
|
titleFields: ['name', 'slug'],
|
|
290
297
|
descriptionFields: ['normalized_name', 'website_url'],
|
|
291
298
|
badgeFields: ['status'],
|
|
@@ -314,7 +321,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
314
321
|
{ key: 'name', label: ptEn('Nome da marca', 'Brand name'), type: 'text', required: true, placeholder: ptEn('Ex.: Samsung', 'Ex.: Samsung') },
|
|
315
322
|
{ key: 'slug', label: ptEn('Slug', 'Slug'), type: 'text', required: true, placeholder: ptEn('Ex.: samsung', 'Ex.: samsung') },
|
|
316
323
|
{ key: 'normalized_name', label: ptEn('Nome normalizado', 'Normalized name'), type: 'text', placeholder: ptEn('Versão limpa para buscas e matching', 'Normalized value for search and matching') },
|
|
317
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
324
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
318
325
|
{ key: 'website_url', label: ptEn('Site oficial', 'Official website'), type: 'url', span: 2, placeholder: ptEn('https://www.sua-marca.com', 'https://www.your-brand.com') },
|
|
319
326
|
fileField('logo_file_id', ptEn('Logo', 'Logo')),
|
|
320
327
|
],
|
|
@@ -408,7 +415,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
408
415
|
hasActiveStats: true,
|
|
409
416
|
listVariant: 'cards',
|
|
410
417
|
primaryFilterField: 'status',
|
|
411
|
-
primaryFilterOptions:
|
|
418
|
+
primaryFilterOptions: publicationStatusFilterOptions,
|
|
412
419
|
titleFields: ['title', 'slug'],
|
|
413
420
|
descriptionFields: ['summary', 'slug'],
|
|
414
421
|
badgeFields: ['status', 'comparison_type', 'generation_mode'],
|
|
@@ -422,7 +429,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
422
429
|
icon: Scale,
|
|
423
430
|
count: (records) =>
|
|
424
431
|
records.filter((record) =>
|
|
425
|
-
|
|
432
|
+
String(record.status ?? '') === 'published'
|
|
426
433
|
).length,
|
|
427
434
|
},
|
|
428
435
|
template: {
|
|
@@ -462,7 +469,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
462
469
|
{ key: 'primary_content_id', label: ptEn('Conteúdo principal', 'Primary content'), type: 'relation', relation: relation('/content', ['title', 'slug'], { valueKey: 'content_id' }) },
|
|
463
470
|
{ key: 'comparison_type', label: ptEn('Tipo de comparação', 'Comparison type'), type: 'select', required: true, options: comparisonTypeOptions },
|
|
464
471
|
{ key: 'generation_mode', label: ptEn('Modo de geração', 'Generation mode'), type: 'select', required: true, options: generationModeOptions },
|
|
465
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
472
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: publicationStatusOptions },
|
|
466
473
|
{ key: 'published_at', label: ptEn('Publicado em', 'Published at'), type: 'datetime' },
|
|
467
474
|
],
|
|
468
475
|
},
|
|
@@ -607,7 +614,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
607
614
|
hasActiveStats: true,
|
|
608
615
|
listVariant: 'cards',
|
|
609
616
|
primaryFilterField: 'status',
|
|
610
|
-
primaryFilterOptions:
|
|
617
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
611
618
|
titleFields: ['name', 'domain', 'slug'],
|
|
612
619
|
descriptionFields: ['domain', 'slug'],
|
|
613
620
|
badgeFields: ['status', 'site_type'],
|
|
@@ -638,7 +645,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
638
645
|
{ key: 'name', label: ptEn('Nome do site', 'Site name'), type: 'text', required: true, placeholder: ptEn('Ex.: Tech Radar BR', 'Ex.: Tech Radar BR') },
|
|
639
646
|
{ key: 'slug', label: ptEn('Slug', 'Slug'), type: 'text', required: true, placeholder: ptEn('Ex.: tech-radar-br', 'Ex.: tech-radar-br') },
|
|
640
647
|
{ key: 'domain', label: ptEn('Domínio', 'Domain'), type: 'url', required: true, placeholder: ptEn('https://www.exemplo.com', 'https://www.example.com') },
|
|
641
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
648
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
642
649
|
{ key: 'site_type', label: ptEn('Tipo de site', 'Site type'), type: 'select', required: true, options: siteTypeOptions },
|
|
643
650
|
{
|
|
644
651
|
key: 'default_locale_id',
|
|
@@ -671,7 +678,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
671
678
|
hasActiveStats: true,
|
|
672
679
|
listVariant: 'cards',
|
|
673
680
|
primaryFilterField: 'status',
|
|
674
|
-
primaryFilterOptions:
|
|
681
|
+
primaryFilterOptions: publicationStatusFilterOptions,
|
|
675
682
|
titleFields: ['name', 'model_name', 'slug'],
|
|
676
683
|
descriptionFields: ['model_name', 'sku', 'slug'],
|
|
677
684
|
badgeFields: ['status', 'comparison_status', 'is_active'],
|
|
@@ -742,7 +749,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
742
749
|
{ key: 'sku', label: ptEn('SKU', 'SKU'), type: 'text', placeholder: ptEn('Código interno de estoque', 'Internal stock code') },
|
|
743
750
|
{ key: 'gtin', label: ptEn('GTIN', 'GTIN'), type: 'text', placeholder: ptEn('Código de barras/GTIN', 'Barcode / GTIN') },
|
|
744
751
|
{ key: 'release_date', label: ptEn('Data de lançamento', 'Release date'), type: 'date' },
|
|
745
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
752
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: publicationStatusOptions },
|
|
746
753
|
{ key: 'comparison_status', label: ptEn('Status de comparação', 'Comparison status'), type: 'select', required: true, options: comparisonStatusOptions },
|
|
747
754
|
{ key: 'is_active', label: ptEn('Ativo para comparação', 'Active for comparison'), type: 'switch' },
|
|
748
755
|
],
|
|
@@ -771,7 +778,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
771
778
|
hasActiveStats: true,
|
|
772
779
|
listVariant: 'table',
|
|
773
780
|
primaryFilterField: 'status',
|
|
774
|
-
primaryFilterOptions:
|
|
781
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
775
782
|
titleFields: ['name', 'slug'],
|
|
776
783
|
descriptionFields: ['slug'],
|
|
777
784
|
badgeFields: ['status'],
|
|
@@ -797,7 +804,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
797
804
|
fields: [
|
|
798
805
|
{ key: 'name', label: ptEn('Nome do grupo', 'Group name'), type: 'text', required: true, placeholder: ptEn('Ex.: Tela e Display', 'Ex.: Display and Screen') },
|
|
799
806
|
{ key: 'slug', label: ptEn('Slug', 'Slug'), type: 'text', required: true, placeholder: ptEn('Ex.: tela-e-display', 'Ex.: display-and-screen') },
|
|
800
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
807
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
801
808
|
],
|
|
802
809
|
},
|
|
803
810
|
],
|
|
@@ -898,7 +905,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
898
905
|
hasActiveStats: true,
|
|
899
906
|
listVariant: 'cards',
|
|
900
907
|
primaryFilterField: 'status',
|
|
901
|
-
primaryFilterOptions:
|
|
908
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
902
909
|
titleFields: ['name', 'slug'],
|
|
903
910
|
descriptionFields: ['slug'],
|
|
904
911
|
badgeFields: ['status', 'merchant_type'],
|
|
@@ -926,7 +933,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
926
933
|
{ key: 'name', label: ptEn('Nome do lojista', 'Merchant name'), type: 'text', required: true, placeholder: ptEn('Ex.: Magazine Luiza', 'Ex.: Best Buy') },
|
|
927
934
|
{ key: 'slug', label: ptEn('Slug', 'Slug'), type: 'text', required: true, placeholder: ptEn('Ex.: magazine-luiza', 'Ex.: best-buy') },
|
|
928
935
|
{ key: 'merchant_type', label: ptEn('Tipo de lojista', 'Merchant type'), type: 'select', required: true, options: merchantTypeOptions },
|
|
929
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
936
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
930
937
|
fileField('logo_file_id', ptEn('Logo', 'Logo')),
|
|
931
938
|
],
|
|
932
939
|
},
|
|
@@ -945,7 +952,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
945
952
|
hasActiveStats: true,
|
|
946
953
|
listVariant: 'cards',
|
|
947
954
|
primaryFilterField: 'status',
|
|
948
|
-
primaryFilterOptions:
|
|
955
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
949
956
|
titleFields: ['name', 'slug'],
|
|
950
957
|
descriptionFields: ['slug', 'network_type'],
|
|
951
958
|
badgeFields: ['status', 'network_type', 'commission_type'],
|
|
@@ -989,7 +996,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
989
996
|
{ key: 'network_type', label: ptEn('Rede', 'Network'), type: 'select', required: true, options: networkTypeOptions },
|
|
990
997
|
{ key: 'commission_type', label: ptEn('Tipo de comissão', 'Commission type'), type: 'select', required: true, options: commissionTypeOptions },
|
|
991
998
|
{ key: 'default_commission_value', label: ptEn('Comissão padrão', 'Default commission'), type: 'currency' },
|
|
992
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
999
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
993
1000
|
{ key: 'tracking_template', label: ptEn('Template de tracking', 'Tracking template'), type: 'textarea', span: 2, placeholder: ptEn('Template com macros e parâmetros de tracking', 'Template with tracking macros and parameters') },
|
|
994
1001
|
],
|
|
995
1002
|
},
|
|
@@ -1009,7 +1016,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
1009
1016
|
hasActiveStats: true,
|
|
1010
1017
|
listVariant: 'cards',
|
|
1011
1018
|
primaryFilterField: 'status',
|
|
1012
|
-
primaryFilterOptions:
|
|
1019
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
1013
1020
|
titleFields: ['rule_slug', 'page_type'],
|
|
1014
1021
|
descriptionFields: ['page_type', 'canonical_strategy'],
|
|
1015
1022
|
badgeFields: ['status', 'page_type', 'canonical_strategy'],
|
|
@@ -1054,7 +1061,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
1054
1061
|
{ key: 'category_id', label: ptEn('Categoria', 'Category'), type: 'relation', relation: relation('/category', ['name', 'slug'], { valueKey: 'category_id' }) },
|
|
1055
1062
|
{ key: 'page_type', label: ptEn('Tipo de página', 'Page type'), type: 'select', required: true, options: pageTypeOptions },
|
|
1056
1063
|
{ key: 'rule_slug', label: ptEn('Slug da regra', 'Rule slug'), type: 'text', required: true, placeholder: ptEn('Ex.: comparativo-celulares-premium', 'Ex.: premium-smartphone-comparison') },
|
|
1057
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
1064
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
1058
1065
|
{ key: 'canonical_strategy', label: ptEn('Estratégia canônica', 'Canonical strategy'), type: 'select', required: true, options: canonicalStrategyOptions },
|
|
1059
1066
|
{ key: 'priority', label: ptEn('Prioridade', 'Priority'), type: 'number' },
|
|
1060
1067
|
{ key: 'min_product_count', label: ptEn('Mínimo de produtos', 'Minimum products'), type: 'number' },
|
|
@@ -1084,7 +1091,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
1084
1091
|
hasActiveStats: true,
|
|
1085
1092
|
listVariant: 'cards',
|
|
1086
1093
|
primaryFilterField: 'status',
|
|
1087
|
-
primaryFilterOptions:
|
|
1094
|
+
primaryFilterOptions: activeInactiveStatusFilterOptions,
|
|
1088
1095
|
titleFields: ['name', 'slug'],
|
|
1089
1096
|
descriptionFields: ['slug', 'source_type'],
|
|
1090
1097
|
badgeFields: ['status', 'source_type'],
|
|
@@ -1112,7 +1119,7 @@ export const catalogResources: CatalogResourceDefinition[] = [
|
|
|
1112
1119
|
{ key: 'name', label: ptEn('Nome da fonte', 'Source name'), type: 'text', required: true, placeholder: ptEn('Ex.: API principal do parceiro', 'Ex.: Primary partner API') },
|
|
1113
1120
|
{ key: 'slug', label: ptEn('Slug', 'Slug'), type: 'text', required: true, placeholder: ptEn('Ex.: api-parceiro-principal', 'Ex.: primary-partner-api') },
|
|
1114
1121
|
{ key: 'source_type', label: ptEn('Tipo de fonte', 'Source type'), type: 'select', required: true, options: sourceTypeOptions },
|
|
1115
|
-
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options:
|
|
1122
|
+
{ key: 'status', label: ptEn('Status', 'Status'), type: 'select', required: true, options: activeInactiveStatusOptions },
|
|
1116
1123
|
{ key: 'config_json', label: ptEn('Configuração', 'Configuration'), type: 'json', span: 2 },
|
|
1117
1124
|
],
|
|
1118
1125
|
},
|