@envisiongroup/porygon 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,11 @@
1
- import { jsx as T } from "react/jsx-runtime";
2
- import { createContext as E, useContext as p, useMemo as i } from "react";
3
- import { DEFAULT_EFW_BUTTONS_LOCALE_TEXT as u, DEFAULT_EFW_FIELDS_LOCALE_TEXT as s, DEFAULT_EFW_TABLE_LOCALE_TEXT as A, DEFAULT_EFW_FORM_LOCALE_TEXT as _ } from "./defaultLocaleText.js";
4
- const f = E({}), P = (e, t) => {
1
+ import { jsx as x } from "react/jsx-runtime";
2
+ import { createContext as _, useContext as g, useMemo as l } from "react";
3
+ import { DEFAULT_EFW_BUTTONS_LOCALE_TEXT as c, DEFAULT_EFW_FIELDS_LOCALE_TEXT as n, DEFAULT_EFW_TABLE_LOCALE_TEXT as A, DEFAULT_EFW_FORM_LOCALE_TEXT as F, DEFAULT_EFW_TIMELINE_LOCALE_TEXT as p } from "./defaultLocaleText.js";
4
+ const m = _({}), P = (e, t) => {
5
5
  if (!e && !t) return;
6
6
  if (!e) return t;
7
7
  if (!t) return e;
8
- const n = {}, l = [
8
+ const s = {}, i = [
9
9
  "input",
10
10
  "numberInput",
11
11
  "textArea",
@@ -14,42 +14,42 @@ const f = E({}), P = (e, t) => {
14
14
  "datePicker",
15
15
  "attachments"
16
16
  ];
17
- for (const o of l) {
17
+ for (const o of i) {
18
18
  const a = e[o], r = t[o];
19
19
  if (!a && !r) continue;
20
20
  if (!a) {
21
- n[o] = r;
21
+ s[o] = r;
22
22
  continue;
23
23
  }
24
24
  if (!r) {
25
- n[o] = a;
25
+ s[o] = a;
26
26
  continue;
27
27
  }
28
- const d = {}, L = a, x = r;
28
+ const f = {}, T = a, E = r;
29
29
  for (const b of ["labels", "validationMessages"]) {
30
- const m = L[b], g = x[b];
31
- !m && !g || (d[b] = { ...m, ...g });
30
+ const L = T[b], d = E[b];
31
+ !L && !d || (f[b] = { ...L, ...d });
32
32
  }
33
- n[o] = d;
33
+ s[o] = f;
34
34
  }
35
- return n;
36
- }, v = (e, t) => {
35
+ return s;
36
+ }, M = (e, t) => {
37
37
  if (!e && !t) return;
38
38
  if (!e) return t;
39
39
  if (!t) return e;
40
- const n = {}, l = ["button", "groupButton", "drawer"];
41
- for (const o of l) {
40
+ const s = {}, i = ["button", "groupButton", "drawer"];
41
+ for (const o of i) {
42
42
  const a = e[o], r = t[o];
43
43
  if (!(!a && !r)) {
44
44
  if (!a) {
45
- n[o] = r;
45
+ s[o] = r;
46
46
  continue;
47
47
  }
48
48
  if (!r) {
49
- n[o] = a;
49
+ s[o] = a;
50
50
  continue;
51
51
  }
52
- n[o] = {
52
+ s[o] = {
53
53
  labels: {
54
54
  ...a.labels ?? {},
55
55
  ...r.labels ?? {}
@@ -57,89 +57,182 @@ const f = E({}), P = (e, t) => {
57
57
  };
58
58
  }
59
59
  }
60
- return n;
61
- }, C = ({ children: e, localeText: t }) => {
62
- const n = p(f), l = i(() => ({
63
- form: {
64
- ...n.form,
65
- ...t?.form
66
- },
67
- table: {
68
- ...n.table,
69
- ...t?.table
70
- },
71
- fields: P(n.fields, t?.fields),
72
- buttons: v(n.buttons, t?.buttons)
73
- }), [n.form, n.table, n.fields, n.buttons, t?.form, t?.table, t?.fields, t?.buttons]);
74
- return /* @__PURE__ */ T(f.Provider, { value: l, children: e });
75
- }, c = () => p(f), y = (e) => {
76
- const t = c();
77
- return i(() => ({
78
- ..._,
79
- ...t.form ?? {},
80
- ...e ?? {}
81
- }), [t.form, e]);
82
- }, I = () => {
83
- const e = c();
84
- return i(() => {
60
+ return s;
61
+ }, k = (e, t) => {
62
+ if (!(!e && !t))
63
+ return e ? t ? {
64
+ ...e,
65
+ ...t,
66
+ statusLabels: { ...e.statusLabels, ...t.statusLabels }
67
+ } : e : t;
68
+ }, y = ({
69
+ children: e,
70
+ localeText: t
71
+ }) => {
72
+ const s = g(m), i = l(
73
+ () => ({
74
+ form: {
75
+ ...s.form,
76
+ ...t?.form
77
+ },
78
+ table: {
79
+ ...s.table,
80
+ ...t?.table
81
+ },
82
+ fields: P(
83
+ s.fields,
84
+ t?.fields
85
+ ),
86
+ buttons: M(
87
+ s.buttons,
88
+ t?.buttons
89
+ ),
90
+ timeline: k(
91
+ s.timeline,
92
+ t?.timeline
93
+ )
94
+ }),
95
+ [
96
+ s.form,
97
+ s.table,
98
+ s.fields,
99
+ s.buttons,
100
+ s.timeline,
101
+ t?.form,
102
+ t?.table,
103
+ t?.fields,
104
+ t?.buttons,
105
+ t?.timeline
106
+ ]
107
+ );
108
+ return /* @__PURE__ */ x(m.Provider, { value: i, children: e });
109
+ }, u = () => g(m), h = (e) => {
110
+ const t = u();
111
+ return l(
112
+ () => ({
113
+ ...F,
114
+ ...t.form ?? {},
115
+ ...e ?? {}
116
+ }),
117
+ [t.form, e]
118
+ );
119
+ }, w = () => {
120
+ const e = u();
121
+ return l(() => {
85
122
  const t = e.fields;
86
123
  return t ? {
87
124
  input: {
88
- labels: { ...s.input.labels, ...t.input?.labels },
89
- validationMessages: { ...s.input.validationMessages, ...t.input?.validationMessages }
125
+ labels: {
126
+ ...n.input.labels,
127
+ ...t.input?.labels
128
+ },
129
+ validationMessages: {
130
+ ...n.input.validationMessages,
131
+ ...t.input?.validationMessages
132
+ }
90
133
  },
91
134
  numberInput: {
92
- labels: { ...s.numberInput.labels, ...t.numberInput?.labels },
93
- validationMessages: { ...s.numberInput.validationMessages, ...t.numberInput?.validationMessages }
135
+ labels: {
136
+ ...n.numberInput.labels,
137
+ ...t.numberInput?.labels
138
+ },
139
+ validationMessages: {
140
+ ...n.numberInput.validationMessages,
141
+ ...t.numberInput?.validationMessages
142
+ }
94
143
  },
95
144
  textArea: {
96
- labels: { ...s.textArea.labels, ...t.textArea?.labels },
97
- validationMessages: { ...s.textArea.validationMessages, ...t.textArea?.validationMessages }
145
+ labels: {
146
+ ...n.textArea.labels,
147
+ ...t.textArea?.labels
148
+ },
149
+ validationMessages: {
150
+ ...n.textArea.validationMessages,
151
+ ...t.textArea?.validationMessages
152
+ }
98
153
  },
99
154
  switch: {
100
- labels: { ...s.switch.labels, ...t.switch?.labels }
155
+ labels: {
156
+ ...n.switch.labels,
157
+ ...t.switch?.labels
158
+ }
101
159
  },
102
160
  tagPicker: {
103
- labels: { ...s.tagPicker.labels, ...t.tagPicker?.labels }
161
+ labels: {
162
+ ...n.tagPicker.labels,
163
+ ...t.tagPicker?.labels
164
+ }
104
165
  },
105
166
  datePicker: {
106
- labels: { ...s.datePicker.labels, ...t.datePicker?.labels },
107
- calendarStrings: t.datePicker?.calendarStrings ?? s.datePicker.calendarStrings
167
+ labels: {
168
+ ...n.datePicker.labels,
169
+ ...t.datePicker?.labels
170
+ },
171
+ calendarStrings: t.datePicker?.calendarStrings ?? n.datePicker.calendarStrings
108
172
  },
109
173
  attachments: {
110
- labels: { ...s.attachments.labels, ...t.attachments?.labels }
174
+ labels: {
175
+ ...n.attachments.labels,
176
+ ...t.attachments?.labels
177
+ }
111
178
  }
112
- } : s;
179
+ } : n;
113
180
  }, [e.fields]);
114
- }, h = () => {
115
- const e = c();
116
- return i(() => {
181
+ }, B = () => {
182
+ const e = u();
183
+ return l(() => {
117
184
  const t = e.buttons;
118
185
  return t ? {
119
186
  button: {
120
- labels: { ...u.button.labels, ...t.button?.labels }
187
+ labels: {
188
+ ...c.button.labels,
189
+ ...t.button?.labels
190
+ }
121
191
  },
122
192
  groupButton: {
123
- labels: { ...u.groupButton.labels, ...t.groupButton?.labels }
193
+ labels: {
194
+ ...c.groupButton.labels,
195
+ ...t.groupButton?.labels
196
+ }
124
197
  },
125
198
  drawer: {
126
- labels: { ...u.drawer.labels, ...t.drawer?.labels }
199
+ labels: {
200
+ ...c.drawer.labels,
201
+ ...t.drawer?.labels
202
+ }
127
203
  }
128
- } : u;
204
+ } : c;
129
205
  }, [e.buttons]);
130
- }, w = (e) => {
131
- const t = c();
132
- return i(() => ({
133
- ...A,
134
- ...t.table ?? {},
135
- ...e ?? {}
136
- }), [t.table, e]);
206
+ }, O = (e) => {
207
+ const t = u();
208
+ return l(
209
+ () => ({
210
+ ...A,
211
+ ...t.table ?? {},
212
+ ...e ?? {}
213
+ }),
214
+ [t.table, e]
215
+ );
216
+ }, S = (e) => {
217
+ const t = u();
218
+ return l(() => {
219
+ const s = t.timeline;
220
+ return {
221
+ noTimestamp: e?.noTimestamp ?? s?.noTimestamp ?? p.noTimestamp,
222
+ statusLabels: {
223
+ ...p.statusLabels,
224
+ ...s?.statusLabels,
225
+ ...e?.statusLabels
226
+ }
227
+ };
228
+ }, [t.timeline, e]);
137
229
  };
138
230
  export {
139
- C as PorygonI18nProvider,
140
- h as useButtonsLocaleText,
141
- I as useFieldsLocaleText,
142
- y as useFormLocaleText,
143
- c as usePorygonLocaleText,
144
- w as useTableLocaleText
231
+ y as PorygonI18nProvider,
232
+ B as useButtonsLocaleText,
233
+ w as useFieldsLocaleText,
234
+ h as useFormLocaleText,
235
+ u as usePorygonLocaleText,
236
+ O as useTableLocaleText,
237
+ S as useTimelineLocaleText
145
238
  };
@@ -1,6 +1,7 @@
1
- import { EFWFormLocaleText, EFWFieldsLocaleText, EFWButtonsLocaleText, EFWTableLocaleText } from './porygonI18n.types';
1
+ import { EFWFormLocaleText, EFWFieldsLocaleText, EFWButtonsLocaleText, EFWTableLocaleText, EFWTimelineLocaleText } from './porygonI18n.types';
2
2
 
3
3
  export declare const DEFAULT_EFW_FORM_LOCALE_TEXT: EFWFormLocaleText;
4
+ export declare const DEFAULT_EFW_TIMELINE_LOCALE_TEXT: EFWTimelineLocaleText;
4
5
  export declare const DEFAULT_EFW_FIELDS_LOCALE_TEXT: EFWFieldsLocaleText;
5
6
  export declare const DEFAULT_EFW_BUTTONS_LOCALE_TEXT: EFWButtonsLocaleText;
6
7
  export declare const DEFAULT_EFW_TABLE_LOCALE_TEXT: EFWTableLocaleText;
@@ -6,6 +6,14 @@ const c = {
6
6
  requiredFieldsNotification: "Por favor complete todos los campos indicados como requeridos e inténtelo nuevamente.",
7
7
  unsupportedFieldType: (e) => `Tipo de campo no soportado: ${e}`
8
8
  }, m = {
9
+ noTimestamp: "Sin fecha registrada",
10
+ statusLabels: {
11
+ done: "Completada",
12
+ current: "En curso",
13
+ error: "Con error",
14
+ pending: "Pendiente"
15
+ }
16
+ }, u = {
9
17
  input: {
10
18
  labels: {
11
19
  placeholder: "",
@@ -76,7 +84,7 @@ const c = {
76
84
  maxFileSizeExceededMessage: (e, a) => `Existe un adjunto que excede el peso máximo de ${a} (${e} bytes).`
77
85
  }
78
86
  }
79
- }, u = {
87
+ }, p = {
80
88
  button: {
81
89
  labels: {
82
90
  loadingText: "Procesando...",
@@ -97,7 +105,7 @@ const c = {
97
105
  loadingContentText: "Cargando contenido..."
98
106
  }
99
107
  }
100
- }, p = {
108
+ }, E = {
101
109
  addButtonLabel: "Nuevo",
102
110
  addDrawerTitle: "Nuevo elemento",
103
111
  addDrawerDescription: /* @__PURE__ */ o(r, { children: [
@@ -169,8 +177,9 @@ const c = {
169
177
  resizeColumnAriaLabel: "Redimensionar columna"
170
178
  };
171
179
  export {
172
- u as DEFAULT_EFW_BUTTONS_LOCALE_TEXT,
173
- m as DEFAULT_EFW_FIELDS_LOCALE_TEXT,
180
+ p as DEFAULT_EFW_BUTTONS_LOCALE_TEXT,
181
+ u as DEFAULT_EFW_FIELDS_LOCALE_TEXT,
174
182
  c as DEFAULT_EFW_FORM_LOCALE_TEXT,
175
- p as DEFAULT_EFW_TABLE_LOCALE_TEXT
183
+ E as DEFAULT_EFW_TABLE_LOCALE_TEXT,
184
+ m as DEFAULT_EFW_TIMELINE_LOCALE_TEXT
176
185
  };
@@ -1,4 +1,4 @@
1
- export { PorygonI18nProvider, usePorygonLocaleText, useFormLocaleText, useFieldsLocaleText, useButtonsLocaleText, useTableLocaleText } from './PorygonI18nProvider';
2
- export { DEFAULT_EFW_FORM_LOCALE_TEXT, DEFAULT_EFW_FIELDS_LOCALE_TEXT, DEFAULT_EFW_BUTTONS_LOCALE_TEXT, DEFAULT_EFW_TABLE_LOCALE_TEXT } from './defaultLocaleText';
3
- export { PORYGON_LOCALE_ES, PORYGON_LOCALE_EN, PORYGON_LOCALE_PT_BR, PORYGON_LOCALES } from './localePresets';
4
- export type { EFWFormLocaleText, EFWFormExtendedLocaleText, EFWFieldsLocaleText, EFWButtonsLocaleText, EFWTableLocaleText, EFWTableExtendedLocaleText, PorygonLocaleText, PorygonResolvedLocaleText, PorygonLocalePresetCode, DeepPartial, } from './porygonI18n.types';
1
+ export { PorygonI18nProvider, usePorygonLocaleText, useFormLocaleText, useFieldsLocaleText, useButtonsLocaleText, useTableLocaleText, useTimelineLocaleText, } from './PorygonI18nProvider';
2
+ export { DEFAULT_EFW_FORM_LOCALE_TEXT, DEFAULT_EFW_FIELDS_LOCALE_TEXT, DEFAULT_EFW_BUTTONS_LOCALE_TEXT, DEFAULT_EFW_TABLE_LOCALE_TEXT, DEFAULT_EFW_TIMELINE_LOCALE_TEXT, } from './defaultLocaleText';
3
+ export { PORYGON_LOCALE_ES, PORYGON_LOCALE_EN, PORYGON_LOCALE_PT_BR, PORYGON_LOCALES, } from './localePresets';
4
+ export type { EFWFormLocaleText, EFWFormExtendedLocaleText, EFWFieldsLocaleText, EFWButtonsLocaleText, EFWTableLocaleText, EFWTableExtendedLocaleText, EFWTimelineLocaleText, PorygonLocaleText, PorygonResolvedLocaleText, PorygonLocalePresetCode, DeepPartial, } from './porygonI18n.types';
@@ -1,19 +1,21 @@
1
- import { PorygonI18nProvider as _, useButtonsLocaleText as T, useFieldsLocaleText as e, useFormLocaleText as o, usePorygonLocaleText as O, useTableLocaleText as A } from "./PorygonI18nProvider.js";
2
- import { DEFAULT_EFW_BUTTONS_LOCALE_TEXT as r, DEFAULT_EFW_FIELDS_LOCALE_TEXT as t, DEFAULT_EFW_FORM_LOCALE_TEXT as x, DEFAULT_EFW_TABLE_LOCALE_TEXT as C } from "./defaultLocaleText.js";
3
- import { PORYGON_LOCALES as l, PORYGON_LOCALE_EN as s, PORYGON_LOCALE_ES as a, PORYGON_LOCALE_PT_BR as u } from "./localePresets.js";
1
+ import { PorygonI18nProvider as T, useButtonsLocaleText as _, useFieldsLocaleText as e, useFormLocaleText as o, usePorygonLocaleText as O, useTableLocaleText as A, useTimelineLocaleText as F } from "./PorygonI18nProvider.js";
2
+ import { DEFAULT_EFW_BUTTONS_LOCALE_TEXT as t, DEFAULT_EFW_FIELDS_LOCALE_TEXT as l, DEFAULT_EFW_FORM_LOCALE_TEXT as x, DEFAULT_EFW_TABLE_LOCALE_TEXT as C, DEFAULT_EFW_TIMELINE_LOCALE_TEXT as s } from "./defaultLocaleText.js";
3
+ import { PORYGON_LOCALES as a, PORYGON_LOCALE_EN as u, PORYGON_LOCALE_ES as N, PORYGON_LOCALE_PT_BR as c } from "./localePresets.js";
4
4
  export {
5
- r as DEFAULT_EFW_BUTTONS_LOCALE_TEXT,
6
- t as DEFAULT_EFW_FIELDS_LOCALE_TEXT,
5
+ t as DEFAULT_EFW_BUTTONS_LOCALE_TEXT,
6
+ l as DEFAULT_EFW_FIELDS_LOCALE_TEXT,
7
7
  x as DEFAULT_EFW_FORM_LOCALE_TEXT,
8
8
  C as DEFAULT_EFW_TABLE_LOCALE_TEXT,
9
- l as PORYGON_LOCALES,
10
- s as PORYGON_LOCALE_EN,
11
- a as PORYGON_LOCALE_ES,
12
- u as PORYGON_LOCALE_PT_BR,
13
- _ as PorygonI18nProvider,
14
- T as useButtonsLocaleText,
9
+ s as DEFAULT_EFW_TIMELINE_LOCALE_TEXT,
10
+ a as PORYGON_LOCALES,
11
+ u as PORYGON_LOCALE_EN,
12
+ N as PORYGON_LOCALE_ES,
13
+ c as PORYGON_LOCALE_PT_BR,
14
+ T as PorygonI18nProvider,
15
+ _ as useButtonsLocaleText,
15
16
  e as useFieldsLocaleText,
16
17
  o as useFormLocaleText,
17
18
  O as usePorygonLocaleText,
18
- A as useTableLocaleText
19
+ A as useTableLocaleText,
20
+ F as useTimelineLocaleText
19
21
  };
@@ -1,12 +1,12 @@
1
1
  import { jsxs as t, Fragment as o, jsx as r } from "react/jsx-runtime";
2
2
  import { Text as l } from "@fluentui/react-components";
3
- import { DEFAULT_EFW_TABLE_LOCALE_TEXT as i, DEFAULT_EFW_BUTTONS_LOCALE_TEXT as d, DEFAULT_EFW_FIELDS_LOCALE_TEXT as n, DEFAULT_EFW_FORM_LOCALE_TEXT as s } from "./defaultLocaleText.js";
4
- import { enLocalizedStrings as c, ptLocalizedStrings as m } from "../fields/DatePicker/EFWDatePicker.utils.js";
5
- const u = {
3
+ import { DEFAULT_EFW_TIMELINE_LOCALE_TEXT as i, DEFAULT_EFW_TABLE_LOCALE_TEXT as n, DEFAULT_EFW_BUTTONS_LOCALE_TEXT as d, DEFAULT_EFW_FIELDS_LOCALE_TEXT as s, DEFAULT_EFW_FORM_LOCALE_TEXT as c } from "./defaultLocaleText.js";
4
+ import { enLocalizedStrings as m, ptLocalizedStrings as u } from "../fields/DatePicker/EFWDatePicker.utils.js";
5
+ const p = {
6
6
  requiredFieldError: "This field is required",
7
7
  requiredFieldsNotification: "Please complete all required fields and try again.",
8
8
  unsupportedFieldType: (e) => `Unsupported field type: ${e}`
9
- }, p = {
9
+ }, E = {
10
10
  input: {
11
11
  labels: {
12
12
  placeholder: "",
@@ -66,7 +66,7 @@ const u = {
66
66
  placeholder: "DD/MM/YYYY",
67
67
  emptyState: "No data available"
68
68
  },
69
- calendarStrings: c
69
+ calendarStrings: m
70
70
  },
71
71
  attachments: {
72
72
  labels: {
@@ -77,7 +77,7 @@ const u = {
77
77
  maxFileSizeExceededMessage: (e, a) => `An attachment exceeds the maximum size of ${a}.`
78
78
  }
79
79
  }
80
- }, E = {
80
+ }, L = {
81
81
  button: {
82
82
  labels: {
83
83
  loadingText: "Processing...",
@@ -98,7 +98,7 @@ const u = {
98
98
  loadingContentText: "Loading content..."
99
99
  }
100
100
  }
101
- }, L = {
101
+ }, T = {
102
102
  addButtonLabel: "Create",
103
103
  addDrawerTitle: "Create item",
104
104
  addDrawerDescription: /* @__PURE__ */ t(o, { children: [
@@ -170,11 +170,19 @@ const u = {
170
170
  loadingMoreAriaLabel: "Loading more rows",
171
171
  loadingMoreSpinnerLabel: "Loading more...",
172
172
  resizeColumnAriaLabel: "Resize column"
173
- }, T = {
173
+ }, g = {
174
+ noTimestamp: "No date recorded",
175
+ statusLabels: {
176
+ done: "Completed",
177
+ current: "In progress",
178
+ error: "Error",
179
+ pending: "Pending"
180
+ }
181
+ }, h = {
174
182
  requiredFieldError: "Este campo é obrigatório",
175
183
  requiredFieldsNotification: "Por favor, preencha todos os campos obrigatórios e tente novamente.",
176
184
  unsupportedFieldType: (e) => `Tipo de campo não suportado: ${e}`
177
- }, g = {
185
+ }, b = {
178
186
  input: {
179
187
  labels: {
180
188
  placeholder: "",
@@ -234,7 +242,7 @@ const u = {
234
242
  placeholder: "DD/MM/YYYY",
235
243
  emptyState: "Sem dados disponíveis"
236
244
  },
237
- calendarStrings: m
245
+ calendarStrings: u
238
246
  },
239
247
  attachments: {
240
248
  labels: {
@@ -245,7 +253,7 @@ const u = {
245
253
  maxFileSizeExceededMessage: (e, a) => `Existe um anexo que excede o tamanho máximo de ${a}.`
246
254
  }
247
255
  }
248
- }, h = {
256
+ }, v = {
249
257
  button: {
250
258
  labels: {
251
259
  loadingText: "Processando...",
@@ -266,7 +274,7 @@ const u = {
266
274
  loadingContentText: "Carregando conteúdo..."
267
275
  }
268
276
  }
269
- }, v = {
277
+ }, f = {
270
278
  addButtonLabel: "Novo",
271
279
  addDrawerTitle: "Novo item",
272
280
  addDrawerDescription: /* @__PURE__ */ t(o, { children: [
@@ -338,29 +346,40 @@ const u = {
338
346
  loadingMoreAriaLabel: "Carregando mais itens",
339
347
  loadingMoreSpinnerLabel: "Carregando mais...",
340
348
  resizeColumnAriaLabel: "Redimensionar coluna"
341
- }, b = {
342
- form: s,
343
- fields: n,
344
- buttons: d,
345
- table: i
346
- }, f = {
347
- form: u,
348
- fields: p,
349
- buttons: E,
350
- table: L
351
349
  }, S = {
352
- form: T,
353
- fields: g,
354
- buttons: h,
355
- table: v
356
- }, C = {
357
- "es-ES": b,
358
- "en-EN": f,
359
- "pt-BR": S
350
+ noTimestamp: "Sem data registrada",
351
+ statusLabels: {
352
+ done: "Concluída",
353
+ current: "Em andamento",
354
+ error: "Com erro",
355
+ pending: "Pendente"
356
+ }
357
+ }, _ = {
358
+ form: c,
359
+ fields: s,
360
+ buttons: d,
361
+ table: n,
362
+ timeline: i
363
+ }, x = {
364
+ form: p,
365
+ fields: E,
366
+ buttons: L,
367
+ table: T,
368
+ timeline: g
369
+ }, A = {
370
+ form: h,
371
+ fields: b,
372
+ buttons: v,
373
+ table: f,
374
+ timeline: S
375
+ }, O = {
376
+ "es-ES": _,
377
+ "en-EN": x,
378
+ "pt-BR": A
360
379
  };
361
380
  export {
362
- C as PORYGON_LOCALES,
363
- f as PORYGON_LOCALE_EN,
364
- b as PORYGON_LOCALE_ES,
365
- S as PORYGON_LOCALE_PT_BR
381
+ O as PORYGON_LOCALES,
382
+ x as PORYGON_LOCALE_EN,
383
+ _ as PORYGON_LOCALE_ES,
384
+ A as PORYGON_LOCALE_PT_BR
366
385
  };
@@ -9,6 +9,7 @@ import { EFWAttachmentsLabels } from '../fields/Attachments/EFWAttachments.types
9
9
  import { EFWButtonLabels } from '../buttons/EFWButton/EFWButton.types';
10
10
  import { EFWGroupButtonLabels } from '../buttons/EFWGroupButton/EFWGroupButton.types';
11
11
  import { UseDrawerLabels } from '../hooks/useDrawer/useDrawer.types';
12
+ import { EFWTimelineKnownStatus } from '../timeline/EFWTimeline/EFWTimeline.types';
12
13
 
13
14
  /**
14
15
  * Tipo utilitario que hace opcionales todas las propiedades de un objeto de forma recursiva.
@@ -154,11 +155,24 @@ export interface EFWTableExtendedLocaleText extends EFWTableLocaleText {
154
155
  fields?: DeepPartial<EFWFieldsLocaleText>;
155
156
  buttons?: DeepPartial<EFWButtonsLocaleText>;
156
157
  }
158
+ /**
159
+ * Textos localizables de `EFWTimeline`: el texto para timestamps vacíos y los
160
+ * labels de badge de los estados conocidos (`done`, `current`, `error`,
161
+ * `pending`). Los estados de dominio propio siguen definiéndose por instancia
162
+ * vía la prop `statusLabels`.
163
+ */
164
+ export interface EFWTimelineLocaleText {
165
+ /** Texto cuando `timestamp` es `null`/vacío. */
166
+ noTimestamp: string;
167
+ /** Labels de badge para los estados conocidos. */
168
+ statusLabels: Record<EFWTimelineKnownStatus, string>;
169
+ }
157
170
  export interface PorygonResolvedLocaleText {
158
171
  form: EFWFormLocaleText;
159
172
  table: EFWTableLocaleText;
160
173
  fields: EFWFieldsLocaleText;
161
174
  buttons: EFWButtonsLocaleText;
175
+ timeline: EFWTimelineLocaleText;
162
176
  }
163
177
  export type PorygonLocalePresetCode = 'es-ES' | 'en-EN' | 'pt-BR';
164
178
  export interface PorygonLocaleText {
@@ -166,4 +180,5 @@ export interface PorygonLocaleText {
166
180
  table?: Partial<EFWTableLocaleText>;
167
181
  fields?: DeepPartial<EFWFieldsLocaleText>;
168
182
  buttons?: DeepPartial<EFWButtonsLocaleText>;
183
+ timeline?: DeepPartial<EFWTimelineLocaleText>;
169
184
  }