@open-mercato/core 0.6.6-develop.6519.1.bdc91fb755 → 0.6.6-develop.6520.1.55df6df792

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.
Files changed (70) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/modules/customers/backend/calendar/page.js +9 -1
  3. package/dist/modules/customers/backend/calendar/page.js.map +2 -2
  4. package/dist/modules/customers/components/calendar/AgendaList.js +0 -11
  5. package/dist/modules/customers/components/calendar/AgendaList.js.map +2 -2
  6. package/dist/modules/customers/components/calendar/CalendarEventEditor.js +391 -235
  7. package/dist/modules/customers/components/calendar/CalendarEventEditor.js.map +2 -2
  8. package/dist/modules/customers/components/calendar/CalendarScreen.js +5 -5
  9. package/dist/modules/customers/components/calendar/CalendarScreen.js.map +2 -2
  10. package/dist/modules/customers/components/calendar/CalendarSettingsModal.js +2 -2
  11. package/dist/modules/customers/components/calendar/CalendarSettingsModal.js.map +2 -2
  12. package/dist/modules/customers/components/calendar/MonthGrid.js +1 -11
  13. package/dist/modules/customers/components/calendar/MonthGrid.js.map +2 -2
  14. package/dist/modules/customers/components/calendar/TimeGrid.js +162 -176
  15. package/dist/modules/customers/components/calendar/TimeGrid.js.map +2 -2
  16. package/dist/modules/customers/components/calendar/editor/LocationField.js +61 -14
  17. package/dist/modules/customers/components/calendar/editor/LocationField.js.map +2 -2
  18. package/dist/modules/customers/components/calendar/editor/PeopleField.js +10 -5
  19. package/dist/modules/customers/components/calendar/editor/PeopleField.js.map +2 -2
  20. package/dist/modules/customers/components/calendar/editor/PriorityField.js +85 -0
  21. package/dist/modules/customers/components/calendar/editor/PriorityField.js.map +7 -0
  22. package/dist/modules/customers/components/calendar/editor/RelatedToField.js +8 -3
  23. package/dist/modules/customers/components/calendar/editor/RelatedToField.js.map +2 -2
  24. package/dist/modules/customers/components/calendar/editor/ResourcesField.js +225 -0
  25. package/dist/modules/customers/components/calendar/editor/ResourcesField.js.map +7 -0
  26. package/dist/modules/customers/components/calendar/editor/SegmentGroup.js +12 -7
  27. package/dist/modules/customers/components/calendar/editor/SegmentGroup.js.map +2 -2
  28. package/dist/modules/customers/components/calendar/editor/inputs.js +68 -57
  29. package/dist/modules/customers/components/calendar/editor/inputs.js.map +2 -2
  30. package/dist/modules/customers/components/calendar/editor/lookups.js +82 -2
  31. package/dist/modules/customers/components/calendar/editor/lookups.js.map +2 -2
  32. package/dist/modules/customers/components/calendar/useCalendarItems.js +6 -1
  33. package/dist/modules/customers/components/calendar/useCalendarItems.js.map +2 -2
  34. package/dist/modules/customers/data/validators.js +3 -1
  35. package/dist/modules/customers/data/validators.js.map +2 -2
  36. package/dist/modules/customers/lib/calendar/editorPayload.js +53 -22
  37. package/dist/modules/customers/lib/calendar/editorPayload.js.map +2 -2
  38. package/dist/modules/entities/backend/entities/user/[entityId]/page.js +1 -1
  39. package/dist/modules/entities/backend/entities/user/[entityId]/page.js.map +2 -2
  40. package/package.json +7 -7
  41. package/src/modules/customers/backend/calendar/page.tsx +8 -1
  42. package/src/modules/customers/components/calendar/AgendaList.tsx +0 -10
  43. package/src/modules/customers/components/calendar/CalendarEventEditor.tsx +444 -261
  44. package/src/modules/customers/components/calendar/CalendarScreen.tsx +12 -5
  45. package/src/modules/customers/components/calendar/CalendarSettingsModal.tsx +6 -6
  46. package/src/modules/customers/components/calendar/MonthGrid.tsx +0 -11
  47. package/src/modules/customers/components/calendar/TimeGrid.tsx +1 -24
  48. package/src/modules/customers/components/calendar/editor/LocationField.tsx +64 -2
  49. package/src/modules/customers/components/calendar/editor/PeopleField.tsx +11 -4
  50. package/src/modules/customers/components/calendar/editor/PriorityField.tsx +90 -0
  51. package/src/modules/customers/components/calendar/editor/RelatedToField.tsx +8 -3
  52. package/src/modules/customers/components/calendar/editor/ResourcesField.tsx +264 -0
  53. package/src/modules/customers/components/calendar/editor/SegmentGroup.tsx +14 -6
  54. package/src/modules/customers/components/calendar/editor/inputs.tsx +91 -50
  55. package/src/modules/customers/components/calendar/editor/lookups.ts +115 -2
  56. package/src/modules/customers/components/calendar/useCalendarItems.ts +8 -1
  57. package/src/modules/customers/data/validators.ts +3 -1
  58. package/src/modules/customers/i18n/de.json +12 -2
  59. package/src/modules/customers/i18n/en.json +12 -2
  60. package/src/modules/customers/i18n/es.json +12 -2
  61. package/src/modules/customers/i18n/pl.json +12 -2
  62. package/src/modules/customers/lib/calendar/editorPayload.ts +94 -37
  63. package/src/modules/entities/backend/entities/user/[entityId]/page.tsx +1 -1
  64. package/src/modules/entities/i18n/de.json +120 -0
  65. package/src/modules/entities/i18n/en.json +120 -0
  66. package/src/modules/entities/i18n/es.json +120 -0
  67. package/src/modules/entities/i18n/pl.json +120 -0
  68. package/dist/modules/customers/components/calendar/editor/CategoryField.js +0 -75
  69. package/dist/modules/customers/components/calendar/editor/CategoryField.js.map +0 -7
  70. package/src/modules/customers/components/calendar/editor/CategoryField.tsx +0 -79
@@ -1,6 +1,126 @@
1
1
  {
2
2
  "entities.customFields.addFirst": "Add the first one",
3
3
  "entities.customFields.defaultFieldset": "Default",
4
+ "entities.customFields.editor.active": "Active",
5
+ "entities.customFields.editor.add": "Add",
6
+ "entities.customFields.editor.addField": "Add Field",
7
+ "entities.customFields.editor.addFirstFieldset": "Add first fieldset",
8
+ "entities.customFields.editor.addOption": "Add option",
9
+ "entities.customFields.editor.addOptionDescription": "Provide the stored value and optional label shown to users.",
10
+ "entities.customFields.editor.addRule": "Add rule",
11
+ "entities.customFields.editor.assignToFieldset": "Assign to fieldset",
12
+ "entities.customFields.editor.cancel": "Cancel",
13
+ "entities.customFields.editor.code": "Code",
14
+ "entities.customFields.editor.createGroup": "Create group",
15
+ "entities.customFields.editor.defaultOption": "Default",
16
+ "entities.customFields.editor.delete": "Delete",
17
+ "entities.customFields.editor.deleteFieldsetText": "This will move its fields to Unassigned.",
18
+ "entities.customFields.editor.deleteFieldsetTitle": "Delete fieldset \"{code}\"?",
19
+ "entities.customFields.editor.deleteGroupAria": "Delete {code}",
20
+ "entities.customFields.editor.description": "Description",
21
+ "entities.customFields.editor.dragToReorder": "Drag to reorder",
22
+ "entities.customFields.editor.editGroup": "Edit group",
23
+ "entities.customFields.editor.editGroupAria": "Edit {code}",
24
+ "entities.customFields.editor.editGroupDescription": "Update the selected group for this fieldset.",
25
+ "entities.customFields.editor.editGroups": "Edit groups",
26
+ "entities.customFields.editor.editor": "Editor",
27
+ "entities.customFields.editor.editorHtmlRichText": "HTML Rich Text",
28
+ "entities.customFields.editor.editorMarkdown": "Markdown (UIW)",
29
+ "entities.customFields.editor.editorSimpleMarkdown": "Simple Markdown",
30
+ "entities.customFields.editor.existingGroups": "Existing groups",
31
+ "entities.customFields.editor.group": "Group",
32
+ "entities.customFields.editor.groupCode": "Group code",
33
+ "entities.customFields.editor.groupCodePlaceholder": "e.g. buying_committee",
34
+ "entities.customFields.editor.groupCodeRequired": "Group code is required.",
35
+ "entities.customFields.editor.groupHintPlaceholder": "Visible to merchandisers",
36
+ "entities.customFields.editor.groupLabelPlaceholder": "Buying committee",
37
+ "entities.customFields.editor.hint": "Hint",
38
+ "entities.customFields.editor.icon": "Icon",
39
+ "entities.customFields.editor.iconOption.bookOpen": "Book open",
40
+ "entities.customFields.editor.iconOption.bookmark": "Bookmark",
41
+ "entities.customFields.editor.iconOption.briefcase": "Briefcase",
42
+ "entities.customFields.editor.iconOption.building": "Building",
43
+ "entities.customFields.editor.iconOption.camera": "Camera",
44
+ "entities.customFields.editor.iconOption.car": "Car",
45
+ "entities.customFields.editor.iconOption.clock": "Clock",
46
+ "entities.customFields.editor.iconOption.cloud": "Cloud",
47
+ "entities.customFields.editor.iconOption.coins": "Coins",
48
+ "entities.customFields.editor.iconOption.compass": "Compass",
49
+ "entities.customFields.editor.iconOption.creditCard": "Credit card",
50
+ "entities.customFields.editor.iconOption.database": "Database",
51
+ "entities.customFields.editor.iconOption.flame": "Flame",
52
+ "entities.customFields.editor.iconOption.gift": "Gift",
53
+ "entities.customFields.editor.iconOption.globe": "Globe",
54
+ "entities.customFields.editor.iconOption.grid": "Grid",
55
+ "entities.customFields.editor.iconOption.heart": "Heart",
56
+ "entities.customFields.editor.iconOption.key": "Key",
57
+ "entities.customFields.editor.iconOption.layers": "Layers",
58
+ "entities.customFields.editor.iconOption.map": "Map",
59
+ "entities.customFields.editor.iconOption.package": "Package",
60
+ "entities.customFields.editor.iconOption.palette": "Palette",
61
+ "entities.customFields.editor.iconOption.shield": "Shield",
62
+ "entities.customFields.editor.iconOption.shirt": "Shirt",
63
+ "entities.customFields.editor.iconOption.shoppingBag": "Shopping bag",
64
+ "entities.customFields.editor.iconOption.shoppingCart": "Shopping cart",
65
+ "entities.customFields.editor.iconOption.sparkles": "Sparkles",
66
+ "entities.customFields.editor.iconOption.star": "Star",
67
+ "entities.customFields.editor.iconOption.store": "Store",
68
+ "entities.customFields.editor.iconOption.tag": "Tag",
69
+ "entities.customFields.editor.iconOption.truck": "Truck",
70
+ "entities.customFields.editor.iconOption.users": "Users",
71
+ "entities.customFields.editor.iconOption.zap": "Zap",
72
+ "entities.customFields.editor.key": "Key",
73
+ "entities.customFields.editor.kind": "Kind",
74
+ "entities.customFields.editor.kindOption.attachment": "Attachment",
75
+ "entities.customFields.editor.kindOption.boolean": "Boolean",
76
+ "entities.customFields.editor.kindOption.currency": "Currency",
77
+ "entities.customFields.editor.kindOption.date": "Date",
78
+ "entities.customFields.editor.kindOption.datetime": "Datetime",
79
+ "entities.customFields.editor.kindOption.dictionary": "Dictionary",
80
+ "entities.customFields.editor.kindOption.float": "Float",
81
+ "entities.customFields.editor.kindOption.integer": "Integer",
82
+ "entities.customFields.editor.kindOption.multiline": "Multiline",
83
+ "entities.customFields.editor.kindOption.relation": "Relation",
84
+ "entities.customFields.editor.kindOption.select": "Select",
85
+ "entities.customFields.editor.kindOption.text": "Text",
86
+ "entities.customFields.editor.label": "Label",
87
+ "entities.customFields.editor.listboxSearchable": "Listbox (searchable)",
88
+ "entities.customFields.editor.multiSelectInputStyle": "Multi-select input style",
89
+ "entities.customFields.editor.multiple": "Multiple",
90
+ "entities.customFields.editor.newFieldsetLabel": "New fieldset",
91
+ "entities.customFields.editor.newGroup": "New group",
92
+ "entities.customFields.editor.newGroupDescription": "Add a reusable group for this fieldset.",
93
+ "entities.customFields.editor.noFieldsets": "No fieldsets defined yet. Fieldsets let you group custom fields for different variants of the same entity (e.g., Fashion vs. Sport products).",
94
+ "entities.customFields.editor.noGroup": "No group",
95
+ "entities.customFields.editor.noOptionsDefined": "No options defined.",
96
+ "entities.customFields.editor.noValidationRules": "No validation rules defined.",
97
+ "entities.customFields.editor.optionLabelPlaceholder": "Label shown to users (optional)",
98
+ "entities.customFields.editor.options": "Options",
99
+ "entities.customFields.editor.optionsSource": "Options source",
100
+ "entities.customFields.editor.optionsUrl": "Options URL",
101
+ "entities.customFields.editor.relatedEntityId": "Related Entity ID",
102
+ "entities.customFields.editor.removeField": "Remove field",
103
+ "entities.customFields.editor.removeOption": "Remove option",
104
+ "entities.customFields.editor.removeRule": "Remove rule",
105
+ "entities.customFields.editor.reorderedSavingSoon": "Reordered — saving soon",
106
+ "entities.customFields.editor.restoreDeletedFields": "Restore deleted fields:",
107
+ "entities.customFields.editor.ruleErrorMessagePlaceholder": "Error message",
108
+ "entities.customFields.editor.ruleNumberPlaceholder": "Number",
109
+ "entities.customFields.editor.rulePatternPlaceholder": "Pattern (e.g. ^[a-z]+$)",
110
+ "entities.customFields.editor.ruleRequiredMessage": "This field is required",
111
+ "entities.customFields.editor.saveGroup": "Save group",
112
+ "entities.customFields.editor.savingOrder": "Saving order…",
113
+ "entities.customFields.editor.singleFieldsetPerEntity": "Single fieldset per entity",
114
+ "entities.customFields.editor.singleFieldsetToggleHint": "(add at least two fieldsets to toggle)",
115
+ "entities.customFields.editor.supportedKindsNote": "Supported kinds: text, multiline, integer, float, boolean, select (with options/optionsUrl), currency (fixed currencies list), relation (with related entity and options URL).",
116
+ "entities.customFields.editor.translateField": "Translate field",
117
+ "entities.customFields.editor.unassigned": "Unassigned",
118
+ "entities.customFields.editor.unassignedFields": "Unassigned fields",
119
+ "entities.customFields.editor.unitsOptional": "Units (optional)",
120
+ "entities.customFields.editor.unitsPlaceholder": "kg, cm, etc.",
121
+ "entities.customFields.editor.validationRules": "Validation rules",
122
+ "entities.customFields.editor.value": "Value",
123
+ "entities.customFields.editor.valueRequired": "Value is required",
4
124
  "entities.customFields.empty": "No custom attributes specified yet.",
5
125
  "entities.customFields.emptyFieldset": "No fields defined for this fieldset.",
6
126
  "entities.customFields.errors.deleteFailed": "Failed to delete field.",
@@ -1,6 +1,126 @@
1
1
  {
2
2
  "entities.customFields.addFirst": "Agregar el primero",
3
3
  "entities.customFields.defaultFieldset": "Predeterminado",
4
+ "entities.customFields.editor.active": "Activo",
5
+ "entities.customFields.editor.add": "Agregar",
6
+ "entities.customFields.editor.addField": "Agregar campo",
7
+ "entities.customFields.editor.addFirstFieldset": "Agregar el primer conjunto de campos",
8
+ "entities.customFields.editor.addOption": "Agregar opción",
9
+ "entities.customFields.editor.addOptionDescription": "Indica el valor almacenado y una etiqueta opcional visible para los usuarios.",
10
+ "entities.customFields.editor.addRule": "Agregar regla",
11
+ "entities.customFields.editor.assignToFieldset": "Asignar a un conjunto de campos",
12
+ "entities.customFields.editor.cancel": "Cancelar",
13
+ "entities.customFields.editor.code": "Código",
14
+ "entities.customFields.editor.createGroup": "Crear grupo",
15
+ "entities.customFields.editor.defaultOption": "Predeterminado",
16
+ "entities.customFields.editor.delete": "Eliminar",
17
+ "entities.customFields.editor.deleteFieldsetText": "Sus campos se moverán a Sin asignar.",
18
+ "entities.customFields.editor.deleteFieldsetTitle": "¿Eliminar el conjunto de campos «{code}»?",
19
+ "entities.customFields.editor.deleteGroupAria": "Eliminar {code}",
20
+ "entities.customFields.editor.description": "Descripción",
21
+ "entities.customFields.editor.dragToReorder": "Arrastra para reordenar",
22
+ "entities.customFields.editor.editGroup": "Editar grupo",
23
+ "entities.customFields.editor.editGroupAria": "Editar {code}",
24
+ "entities.customFields.editor.editGroupDescription": "Actualiza el grupo seleccionado de este conjunto de campos.",
25
+ "entities.customFields.editor.editGroups": "Editar grupos",
26
+ "entities.customFields.editor.editor": "Editor",
27
+ "entities.customFields.editor.editorHtmlRichText": "Texto enriquecido (HTML)",
28
+ "entities.customFields.editor.editorMarkdown": "Markdown (UIW)",
29
+ "entities.customFields.editor.editorSimpleMarkdown": "Markdown simple",
30
+ "entities.customFields.editor.existingGroups": "Grupos existentes",
31
+ "entities.customFields.editor.group": "Grupo",
32
+ "entities.customFields.editor.groupCode": "Código del grupo",
33
+ "entities.customFields.editor.groupCodePlaceholder": "p. ej. comite_de_compras",
34
+ "entities.customFields.editor.groupCodeRequired": "El código del grupo es obligatorio.",
35
+ "entities.customFields.editor.groupHintPlaceholder": "Visible para los responsables de merchandising",
36
+ "entities.customFields.editor.groupLabelPlaceholder": "Comité de compras",
37
+ "entities.customFields.editor.hint": "Sugerencia",
38
+ "entities.customFields.editor.icon": "Icono",
39
+ "entities.customFields.editor.iconOption.bookOpen": "Libro abierto",
40
+ "entities.customFields.editor.iconOption.bookmark": "Marcador",
41
+ "entities.customFields.editor.iconOption.briefcase": "Maletín",
42
+ "entities.customFields.editor.iconOption.building": "Edificio",
43
+ "entities.customFields.editor.iconOption.camera": "Cámara",
44
+ "entities.customFields.editor.iconOption.car": "Coche",
45
+ "entities.customFields.editor.iconOption.clock": "Reloj",
46
+ "entities.customFields.editor.iconOption.cloud": "Nube",
47
+ "entities.customFields.editor.iconOption.coins": "Monedas",
48
+ "entities.customFields.editor.iconOption.compass": "Brújula",
49
+ "entities.customFields.editor.iconOption.creditCard": "Tarjeta de crédito",
50
+ "entities.customFields.editor.iconOption.database": "Base de datos",
51
+ "entities.customFields.editor.iconOption.flame": "Llama",
52
+ "entities.customFields.editor.iconOption.gift": "Regalo",
53
+ "entities.customFields.editor.iconOption.globe": "Globo",
54
+ "entities.customFields.editor.iconOption.grid": "Cuadrícula",
55
+ "entities.customFields.editor.iconOption.heart": "Corazón",
56
+ "entities.customFields.editor.iconOption.key": "Llave",
57
+ "entities.customFields.editor.iconOption.layers": "Capas",
58
+ "entities.customFields.editor.iconOption.map": "Mapa",
59
+ "entities.customFields.editor.iconOption.package": "Paquete",
60
+ "entities.customFields.editor.iconOption.palette": "Paleta",
61
+ "entities.customFields.editor.iconOption.shield": "Escudo",
62
+ "entities.customFields.editor.iconOption.shirt": "Camiseta",
63
+ "entities.customFields.editor.iconOption.shoppingBag": "Bolsa de compras",
64
+ "entities.customFields.editor.iconOption.shoppingCart": "Carrito de compras",
65
+ "entities.customFields.editor.iconOption.sparkles": "Destellos",
66
+ "entities.customFields.editor.iconOption.star": "Estrella",
67
+ "entities.customFields.editor.iconOption.store": "Tienda",
68
+ "entities.customFields.editor.iconOption.tag": "Etiqueta",
69
+ "entities.customFields.editor.iconOption.truck": "Camión",
70
+ "entities.customFields.editor.iconOption.users": "Usuarios",
71
+ "entities.customFields.editor.iconOption.zap": "Rayo",
72
+ "entities.customFields.editor.key": "Clave",
73
+ "entities.customFields.editor.kind": "Tipo",
74
+ "entities.customFields.editor.kindOption.attachment": "Adjunto",
75
+ "entities.customFields.editor.kindOption.boolean": "Booleano",
76
+ "entities.customFields.editor.kindOption.currency": "Moneda",
77
+ "entities.customFields.editor.kindOption.date": "Fecha",
78
+ "entities.customFields.editor.kindOption.datetime": "Fecha y hora",
79
+ "entities.customFields.editor.kindOption.dictionary": "Diccionario",
80
+ "entities.customFields.editor.kindOption.float": "Número decimal",
81
+ "entities.customFields.editor.kindOption.integer": "Número entero",
82
+ "entities.customFields.editor.kindOption.multiline": "Texto multilínea",
83
+ "entities.customFields.editor.kindOption.relation": "Relación",
84
+ "entities.customFields.editor.kindOption.select": "Lista de selección",
85
+ "entities.customFields.editor.kindOption.text": "Texto",
86
+ "entities.customFields.editor.label": "Etiqueta",
87
+ "entities.customFields.editor.listboxSearchable": "Lista (con búsqueda)",
88
+ "entities.customFields.editor.multiSelectInputStyle": "Estilo del campo de selección múltiple",
89
+ "entities.customFields.editor.multiple": "Múltiples valores",
90
+ "entities.customFields.editor.newFieldsetLabel": "Nuevo conjunto de campos",
91
+ "entities.customFields.editor.newGroup": "Nuevo grupo",
92
+ "entities.customFields.editor.newGroupDescription": "Agrega un grupo reutilizable para este conjunto de campos.",
93
+ "entities.customFields.editor.noFieldsets": "Aún no se han definido conjuntos de campos. Los conjuntos de campos permiten agrupar campos personalizados para distintas variantes de la misma entidad (p. ej. productos de Moda vs. Deporte).",
94
+ "entities.customFields.editor.noGroup": "Sin grupo",
95
+ "entities.customFields.editor.noOptionsDefined": "No se han definido opciones.",
96
+ "entities.customFields.editor.noValidationRules": "No se han definido reglas de validación.",
97
+ "entities.customFields.editor.optionLabelPlaceholder": "Etiqueta visible para los usuarios (opcional)",
98
+ "entities.customFields.editor.options": "Opciones",
99
+ "entities.customFields.editor.optionsSource": "Origen de las opciones",
100
+ "entities.customFields.editor.optionsUrl": "URL de opciones",
101
+ "entities.customFields.editor.relatedEntityId": "ID de la entidad relacionada",
102
+ "entities.customFields.editor.removeField": "Eliminar campo",
103
+ "entities.customFields.editor.removeOption": "Eliminar opción",
104
+ "entities.customFields.editor.removeRule": "Eliminar regla",
105
+ "entities.customFields.editor.reorderedSavingSoon": "Reordenado — se guardará en breve",
106
+ "entities.customFields.editor.restoreDeletedFields": "Restaurar campos eliminados:",
107
+ "entities.customFields.editor.ruleErrorMessagePlaceholder": "Mensaje de error",
108
+ "entities.customFields.editor.ruleNumberPlaceholder": "Número",
109
+ "entities.customFields.editor.rulePatternPlaceholder": "Patrón (p. ej. ^[a-z]+$)",
110
+ "entities.customFields.editor.ruleRequiredMessage": "Este campo es obligatorio",
111
+ "entities.customFields.editor.saveGroup": "Guardar grupo",
112
+ "entities.customFields.editor.savingOrder": "Guardando el orden…",
113
+ "entities.customFields.editor.singleFieldsetPerEntity": "Un solo conjunto de campos por entidad",
114
+ "entities.customFields.editor.singleFieldsetToggleHint": "(agrega al menos dos conjuntos de campos para alternar)",
115
+ "entities.customFields.editor.supportedKindsNote": "Tipos admitidos: texto, texto multilínea, número entero, número decimal, booleano, lista de selección (con opciones/optionsUrl), moneda (lista fija de monedas), relación (con entidad relacionada y URL de opciones).",
116
+ "entities.customFields.editor.translateField": "Traducir campo",
117
+ "entities.customFields.editor.unassigned": "Sin asignar",
118
+ "entities.customFields.editor.unassignedFields": "Campos sin asignar",
119
+ "entities.customFields.editor.unitsOptional": "Unidades (opcional)",
120
+ "entities.customFields.editor.unitsPlaceholder": "kg, cm, etc.",
121
+ "entities.customFields.editor.validationRules": "Reglas de validación",
122
+ "entities.customFields.editor.value": "Valor",
123
+ "entities.customFields.editor.valueRequired": "El valor es obligatorio",
4
124
  "entities.customFields.empty": "Aún no se han definido atributos personalizados.",
5
125
  "entities.customFields.emptyFieldset": "No hay campos definidos para este conjunto.",
6
126
  "entities.customFields.errors.deleteFailed": "No se pudo eliminar el campo.",
@@ -1,6 +1,126 @@
1
1
  {
2
2
  "entities.customFields.addFirst": "Dodaj pierwszy",
3
3
  "entities.customFields.defaultFieldset": "Domyślny",
4
+ "entities.customFields.editor.active": "Aktywne",
5
+ "entities.customFields.editor.add": "Dodaj",
6
+ "entities.customFields.editor.addField": "Dodaj pole",
7
+ "entities.customFields.editor.addFirstFieldset": "Dodaj pierwszy zestaw pól",
8
+ "entities.customFields.editor.addOption": "Dodaj opcję",
9
+ "entities.customFields.editor.addOptionDescription": "Podaj zapisywaną wartość oraz opcjonalną etykietę widoczną dla użytkowników.",
10
+ "entities.customFields.editor.addRule": "Dodaj regułę",
11
+ "entities.customFields.editor.assignToFieldset": "Przypisz do zestawu pól",
12
+ "entities.customFields.editor.cancel": "Anuluj",
13
+ "entities.customFields.editor.code": "Kod",
14
+ "entities.customFields.editor.createGroup": "Utwórz grupę",
15
+ "entities.customFields.editor.defaultOption": "Domyślny",
16
+ "entities.customFields.editor.delete": "Usuń",
17
+ "entities.customFields.editor.deleteFieldsetText": "Jego pola zostaną przeniesione do nieprzypisanych.",
18
+ "entities.customFields.editor.deleteFieldsetTitle": "Usunąć zestaw pól „{code}”?",
19
+ "entities.customFields.editor.deleteGroupAria": "Usuń {code}",
20
+ "entities.customFields.editor.description": "Opis",
21
+ "entities.customFields.editor.dragToReorder": "Przeciągnij, aby zmienić kolejność",
22
+ "entities.customFields.editor.editGroup": "Edytuj grupę",
23
+ "entities.customFields.editor.editGroupAria": "Edytuj {code}",
24
+ "entities.customFields.editor.editGroupDescription": "Zaktualizuj wybraną grupę w tym zestawie pól.",
25
+ "entities.customFields.editor.editGroups": "Edytuj grupy",
26
+ "entities.customFields.editor.editor": "Edytor",
27
+ "entities.customFields.editor.editorHtmlRichText": "Tekst sformatowany (HTML)",
28
+ "entities.customFields.editor.editorMarkdown": "Markdown (UIW)",
29
+ "entities.customFields.editor.editorSimpleMarkdown": "Prosty Markdown",
30
+ "entities.customFields.editor.existingGroups": "Istniejące grupy",
31
+ "entities.customFields.editor.group": "Grupa",
32
+ "entities.customFields.editor.groupCode": "Kod grupy",
33
+ "entities.customFields.editor.groupCodePlaceholder": "np. komitet_zakupowy",
34
+ "entities.customFields.editor.groupCodeRequired": "Kod grupy jest wymagany.",
35
+ "entities.customFields.editor.groupHintPlaceholder": "Widoczne dla merchandiserów",
36
+ "entities.customFields.editor.groupLabelPlaceholder": "Komitet zakupowy",
37
+ "entities.customFields.editor.hint": "Podpowiedź",
38
+ "entities.customFields.editor.icon": "Ikona",
39
+ "entities.customFields.editor.iconOption.bookOpen": "Otwarta książka",
40
+ "entities.customFields.editor.iconOption.bookmark": "Zakładka",
41
+ "entities.customFields.editor.iconOption.briefcase": "Aktówka",
42
+ "entities.customFields.editor.iconOption.building": "Budynek",
43
+ "entities.customFields.editor.iconOption.camera": "Aparat",
44
+ "entities.customFields.editor.iconOption.car": "Samochód",
45
+ "entities.customFields.editor.iconOption.clock": "Zegar",
46
+ "entities.customFields.editor.iconOption.cloud": "Chmura",
47
+ "entities.customFields.editor.iconOption.coins": "Monety",
48
+ "entities.customFields.editor.iconOption.compass": "Kompas",
49
+ "entities.customFields.editor.iconOption.creditCard": "Karta płatnicza",
50
+ "entities.customFields.editor.iconOption.database": "Baza danych",
51
+ "entities.customFields.editor.iconOption.flame": "Płomień",
52
+ "entities.customFields.editor.iconOption.gift": "Prezent",
53
+ "entities.customFields.editor.iconOption.globe": "Globus",
54
+ "entities.customFields.editor.iconOption.grid": "Siatka",
55
+ "entities.customFields.editor.iconOption.heart": "Serce",
56
+ "entities.customFields.editor.iconOption.key": "Klucz",
57
+ "entities.customFields.editor.iconOption.layers": "Warstwy",
58
+ "entities.customFields.editor.iconOption.map": "Mapa",
59
+ "entities.customFields.editor.iconOption.package": "Paczka",
60
+ "entities.customFields.editor.iconOption.palette": "Paleta",
61
+ "entities.customFields.editor.iconOption.shield": "Tarcza",
62
+ "entities.customFields.editor.iconOption.shirt": "Koszulka",
63
+ "entities.customFields.editor.iconOption.shoppingBag": "Torba na zakupy",
64
+ "entities.customFields.editor.iconOption.shoppingCart": "Koszyk",
65
+ "entities.customFields.editor.iconOption.sparkles": "Iskry",
66
+ "entities.customFields.editor.iconOption.star": "Gwiazda",
67
+ "entities.customFields.editor.iconOption.store": "Sklep",
68
+ "entities.customFields.editor.iconOption.tag": "Etykieta",
69
+ "entities.customFields.editor.iconOption.truck": "Ciężarówka",
70
+ "entities.customFields.editor.iconOption.users": "Użytkownicy",
71
+ "entities.customFields.editor.iconOption.zap": "Błyskawica",
72
+ "entities.customFields.editor.key": "Klucz",
73
+ "entities.customFields.editor.kind": "Typ",
74
+ "entities.customFields.editor.kindOption.attachment": "Załącznik",
75
+ "entities.customFields.editor.kindOption.boolean": "Wartość logiczna",
76
+ "entities.customFields.editor.kindOption.currency": "Waluta",
77
+ "entities.customFields.editor.kindOption.date": "Data",
78
+ "entities.customFields.editor.kindOption.datetime": "Data i godzina",
79
+ "entities.customFields.editor.kindOption.dictionary": "Słownik",
80
+ "entities.customFields.editor.kindOption.float": "Liczba zmiennoprzecinkowa",
81
+ "entities.customFields.editor.kindOption.integer": "Liczba całkowita",
82
+ "entities.customFields.editor.kindOption.multiline": "Tekst wielowierszowy",
83
+ "entities.customFields.editor.kindOption.relation": "Relacja",
84
+ "entities.customFields.editor.kindOption.select": "Lista wyboru",
85
+ "entities.customFields.editor.kindOption.text": "Tekst",
86
+ "entities.customFields.editor.label": "Etykieta",
87
+ "entities.customFields.editor.listboxSearchable": "Lista (z wyszukiwaniem)",
88
+ "entities.customFields.editor.multiSelectInputStyle": "Styl pola wielokrotnego wyboru",
89
+ "entities.customFields.editor.multiple": "Wiele wartości",
90
+ "entities.customFields.editor.newFieldsetLabel": "Nowy zestaw pól",
91
+ "entities.customFields.editor.newGroup": "Nowa grupa",
92
+ "entities.customFields.editor.newGroupDescription": "Dodaj grupę wielokrotnego użytku dla tego zestawu pól.",
93
+ "entities.customFields.editor.noFieldsets": "Nie zdefiniowano jeszcze zestawów pól. Zestawy pól pozwalają grupować pola niestandardowe dla różnych wariantów tej samej encji (np. produkty Moda vs Sport).",
94
+ "entities.customFields.editor.noGroup": "Bez grupy",
95
+ "entities.customFields.editor.noOptionsDefined": "Nie zdefiniowano opcji.",
96
+ "entities.customFields.editor.noValidationRules": "Nie zdefiniowano reguł walidacji.",
97
+ "entities.customFields.editor.optionLabelPlaceholder": "Etykieta widoczna dla użytkowników (opcjonalnie)",
98
+ "entities.customFields.editor.options": "Opcje",
99
+ "entities.customFields.editor.optionsSource": "Źródło opcji",
100
+ "entities.customFields.editor.optionsUrl": "Adres URL opcji",
101
+ "entities.customFields.editor.relatedEntityId": "ID powiązanej encji",
102
+ "entities.customFields.editor.removeField": "Usuń pole",
103
+ "entities.customFields.editor.removeOption": "Usuń opcję",
104
+ "entities.customFields.editor.removeRule": "Usuń regułę",
105
+ "entities.customFields.editor.reorderedSavingSoon": "Zmieniono kolejność — zapis za chwilę",
106
+ "entities.customFields.editor.restoreDeletedFields": "Przywróć usunięte pola:",
107
+ "entities.customFields.editor.ruleErrorMessagePlaceholder": "Komunikat błędu",
108
+ "entities.customFields.editor.ruleNumberPlaceholder": "Liczba",
109
+ "entities.customFields.editor.rulePatternPlaceholder": "Wzorzec (np. ^[a-z]+$)",
110
+ "entities.customFields.editor.ruleRequiredMessage": "To pole jest wymagane",
111
+ "entities.customFields.editor.saveGroup": "Zapisz grupę",
112
+ "entities.customFields.editor.savingOrder": "Zapisywanie kolejności…",
113
+ "entities.customFields.editor.singleFieldsetPerEntity": "Jeden zestaw pól na encję",
114
+ "entities.customFields.editor.singleFieldsetToggleHint": "(dodaj co najmniej dwa zestawy pól, aby przełączać)",
115
+ "entities.customFields.editor.supportedKindsNote": "Obsługiwane typy: tekst, tekst wielowierszowy, liczba całkowita, liczba zmiennoprzecinkowa, wartość logiczna, lista wyboru (z opcjami/optionsUrl), waluta (stała lista walut), relacja (z powiązaną encją i adresem URL opcji).",
116
+ "entities.customFields.editor.translateField": "Przetłumacz pole",
117
+ "entities.customFields.editor.unassigned": "Nieprzypisane",
118
+ "entities.customFields.editor.unassignedFields": "Pola nieprzypisane",
119
+ "entities.customFields.editor.unitsOptional": "Jednostki (opcjonalnie)",
120
+ "entities.customFields.editor.unitsPlaceholder": "kg, cm itp.",
121
+ "entities.customFields.editor.validationRules": "Reguły walidacji",
122
+ "entities.customFields.editor.value": "Wartość",
123
+ "entities.customFields.editor.valueRequired": "Wartość jest wymagana",
4
124
  "entities.customFields.empty": "Brak zdefiniowanych atrybutów niestandardowych.",
5
125
  "entities.customFields.emptyFieldset": "Brak pól zdefiniowanych dla tego zestawu.",
6
126
  "entities.customFields.errors.deleteFailed": "Nie udało się usunąć pola.",
@@ -1,75 +0,0 @@
1
- "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import * as React from "react";
4
- import { ChevronDown } from "lucide-react";
5
- import { cn } from "@open-mercato/shared/lib/utils";
6
- import { useT } from "@open-mercato/shared/lib/i18n/context";
7
- import { Button } from "@open-mercato/ui/primitives/button";
8
- import { categoryPillStyle, CONTROL_BORDER, DROPDOWN_PANEL_CLASS, UppercaseBadge } from "./inputs.js";
9
- function CategoryField({
10
- label,
11
- value,
12
- options,
13
- colors,
14
- onChange
15
- }) {
16
- const t = useT();
17
- const [open, setOpen] = React.useState(false);
18
- const selected = options.find((option) => option.value === value) ?? { value, label: value };
19
- return /* @__PURE__ */ jsxs(
20
- "div",
21
- {
22
- className: "relative w-full",
23
- onBlur: (event) => {
24
- if (!event.currentTarget.contains(event.relatedTarget)) setOpen(false);
25
- },
26
- children: [
27
- /* @__PURE__ */ jsxs(
28
- Button,
29
- {
30
- type: "button",
31
- variant: "outline",
32
- "aria-haspopup": "listbox",
33
- "aria-expanded": open,
34
- "aria-label": label,
35
- onClick: () => setOpen((previous) => !previous),
36
- className: cn(
37
- "h-9 w-full justify-between bg-background px-3 shadow-none",
38
- CONTROL_BORDER
39
- ),
40
- children: [
41
- /* @__PURE__ */ jsx(UppercaseBadge, { style: categoryPillStyle(colors[selected.value] ?? null), children: selected.label }),
42
- /* @__PURE__ */ jsxs("span", { className: "flex shrink-0 items-center", children: [
43
- /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "h-px w-2" }),
44
- /* @__PURE__ */ jsx(ChevronDown, { "aria-hidden": true, className: "size-4 opacity-60" })
45
- ] })
46
- ]
47
- }
48
- ),
49
- open ? /* @__PURE__ */ jsxs("div", { role: "listbox", "aria-label": label, className: DROPDOWN_PANEL_CLASS, children: [
50
- options.length === 0 ? /* @__PURE__ */ jsx("p", { className: "px-2 py-3 text-center text-xs text-muted-foreground", children: t("customers.calendar.editor.noResults", "No results") }) : null,
51
- options.map((option) => /* @__PURE__ */ jsx(
52
- Button,
53
- {
54
- type: "button",
55
- variant: "ghost",
56
- role: "option",
57
- "aria-selected": option.value === value,
58
- onClick: () => {
59
- onChange(option.value);
60
- setOpen(false);
61
- },
62
- className: "h-auto w-full justify-start px-2 py-1.5 text-left",
63
- children: /* @__PURE__ */ jsx(UppercaseBadge, { style: categoryPillStyle(colors[option.value] ?? null), children: option.label })
64
- },
65
- option.value
66
- ))
67
- ] }) : null
68
- ]
69
- }
70
- );
71
- }
72
- export {
73
- CategoryField
74
- };
75
- //# sourceMappingURL=CategoryField.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../src/modules/customers/components/calendar/editor/CategoryField.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport * as React from 'react'\nimport { ChevronDown } from 'lucide-react'\nimport { cn } from '@open-mercato/shared/lib/utils'\nimport { useT } from '@open-mercato/shared/lib/i18n/context'\nimport { Button } from '@open-mercato/ui/primitives/button'\nimport { categoryPillStyle, CONTROL_BORDER, DROPDOWN_PANEL_CLASS, UppercaseBadge } from './inputs'\n\nexport function CategoryField({\n label,\n value,\n options,\n colors,\n onChange,\n}: {\n label: string\n value: string\n options: Array<{ value: string; label: string }>\n colors: Record<string, string | null>\n onChange(next: string): void\n}) {\n const t = useT()\n const [open, setOpen] = React.useState(false)\n const selected = options.find((option) => option.value === value) ?? { value, label: value }\n\n return (\n <div\n className=\"relative w-full\"\n onBlur={(event) => {\n if (!event.currentTarget.contains(event.relatedTarget as Node | null)) setOpen(false)\n }}\n >\n <Button\n type=\"button\"\n variant=\"outline\"\n aria-haspopup=\"listbox\"\n aria-expanded={open}\n aria-label={label}\n onClick={() => setOpen((previous) => !previous)}\n className={cn(\n 'h-9 w-full justify-between bg-background px-3 shadow-none',\n CONTROL_BORDER,\n )}\n >\n <UppercaseBadge style={categoryPillStyle(colors[selected.value] ?? null)}>{selected.label}</UppercaseBadge>\n <span className=\"flex shrink-0 items-center\">\n <span aria-hidden className=\"h-px w-2\" />\n <ChevronDown aria-hidden className=\"size-4 opacity-60\" />\n </span>\n </Button>\n {open ? (\n <div role=\"listbox\" aria-label={label} className={DROPDOWN_PANEL_CLASS}>\n {options.length === 0 ? (\n <p className=\"px-2 py-3 text-center text-xs text-muted-foreground\">\n {t('customers.calendar.editor.noResults', 'No results')}\n </p>\n ) : null}\n {options.map((option) => (\n <Button\n key={option.value}\n type=\"button\"\n variant=\"ghost\"\n role=\"option\"\n aria-selected={option.value === value}\n onClick={() => {\n onChange(option.value)\n setOpen(false)\n }}\n className=\"h-auto w-full justify-start px-2 py-1.5 text-left\"\n >\n <UppercaseBadge style={categoryPillStyle(colors[option.value] ?? null)}>{option.label}</UppercaseBadge>\n </Button>\n ))}\n </div>\n ) : null}\n </div>\n )\n}\n"],
5
- "mappings": ";AA6CQ,cACA,YADA;AA3CR,YAAY,WAAW;AACvB,SAAS,mBAAmB;AAC5B,SAAS,UAAU;AACnB,SAAS,YAAY;AACrB,SAAS,cAAc;AACvB,SAAS,mBAAmB,gBAAgB,sBAAsB,sBAAsB;AAEjF,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMG;AACD,QAAM,IAAI,KAAK;AACf,QAAM,CAAC,MAAM,OAAO,IAAI,MAAM,SAAS,KAAK;AAC5C,QAAM,WAAW,QAAQ,KAAK,CAAC,WAAW,OAAO,UAAU,KAAK,KAAK,EAAE,OAAO,OAAO,MAAM;AAE3F,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,QAAQ,CAAC,UAAU;AACjB,YAAI,CAAC,MAAM,cAAc,SAAS,MAAM,aAA4B,EAAG,SAAQ,KAAK;AAAA,MACtF;AAAA,MAEA;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,iBAAc;AAAA,YACd,iBAAe;AAAA,YACf,cAAY;AAAA,YACZ,SAAS,MAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ;AAAA,YAC9C,WAAW;AAAA,cACT;AAAA,cACA;AAAA,YACF;AAAA,YAEA;AAAA,kCAAC,kBAAe,OAAO,kBAAkB,OAAO,SAAS,KAAK,KAAK,IAAI,GAAI,mBAAS,OAAM;AAAA,cAC1F,qBAAC,UAAK,WAAU,8BACd;AAAA,oCAAC,UAAK,eAAW,MAAC,WAAU,YAAW;AAAA,gBACvC,oBAAC,eAAY,eAAW,MAAC,WAAU,qBAAoB;AAAA,iBACzD;AAAA;AAAA;AAAA,QACF;AAAA,QACC,OACC,qBAAC,SAAI,MAAK,WAAU,cAAY,OAAO,WAAW,sBAC/C;AAAA,kBAAQ,WAAW,IAClB,oBAAC,OAAE,WAAU,uDACV,YAAE,uCAAuC,YAAY,GACxD,IACE;AAAA,UACH,QAAQ,IAAI,CAAC,WACZ;AAAA,YAAC;AAAA;AAAA,cAEC,MAAK;AAAA,cACL,SAAQ;AAAA,cACR,MAAK;AAAA,cACL,iBAAe,OAAO,UAAU;AAAA,cAChC,SAAS,MAAM;AACb,yBAAS,OAAO,KAAK;AACrB,wBAAQ,KAAK;AAAA,cACf;AAAA,cACA,WAAU;AAAA,cAEV,8BAAC,kBAAe,OAAO,kBAAkB,OAAO,OAAO,KAAK,KAAK,IAAI,GAAI,iBAAO,OAAM;AAAA;AAAA,YAXjF,OAAO;AAAA,UAYd,CACD;AAAA,WACH,IACE;AAAA;AAAA;AAAA,EACN;AAEJ;",
6
- "names": []
7
- }
@@ -1,79 +0,0 @@
1
- "use client"
2
-
3
- import * as React from 'react'
4
- import { ChevronDown } from 'lucide-react'
5
- import { cn } from '@open-mercato/shared/lib/utils'
6
- import { useT } from '@open-mercato/shared/lib/i18n/context'
7
- import { Button } from '@open-mercato/ui/primitives/button'
8
- import { categoryPillStyle, CONTROL_BORDER, DROPDOWN_PANEL_CLASS, UppercaseBadge } from './inputs'
9
-
10
- export function CategoryField({
11
- label,
12
- value,
13
- options,
14
- colors,
15
- onChange,
16
- }: {
17
- label: string
18
- value: string
19
- options: Array<{ value: string; label: string }>
20
- colors: Record<string, string | null>
21
- onChange(next: string): void
22
- }) {
23
- const t = useT()
24
- const [open, setOpen] = React.useState(false)
25
- const selected = options.find((option) => option.value === value) ?? { value, label: value }
26
-
27
- return (
28
- <div
29
- className="relative w-full"
30
- onBlur={(event) => {
31
- if (!event.currentTarget.contains(event.relatedTarget as Node | null)) setOpen(false)
32
- }}
33
- >
34
- <Button
35
- type="button"
36
- variant="outline"
37
- aria-haspopup="listbox"
38
- aria-expanded={open}
39
- aria-label={label}
40
- onClick={() => setOpen((previous) => !previous)}
41
- className={cn(
42
- 'h-9 w-full justify-between bg-background px-3 shadow-none',
43
- CONTROL_BORDER,
44
- )}
45
- >
46
- <UppercaseBadge style={categoryPillStyle(colors[selected.value] ?? null)}>{selected.label}</UppercaseBadge>
47
- <span className="flex shrink-0 items-center">
48
- <span aria-hidden className="h-px w-2" />
49
- <ChevronDown aria-hidden className="size-4 opacity-60" />
50
- </span>
51
- </Button>
52
- {open ? (
53
- <div role="listbox" aria-label={label} className={DROPDOWN_PANEL_CLASS}>
54
- {options.length === 0 ? (
55
- <p className="px-2 py-3 text-center text-xs text-muted-foreground">
56
- {t('customers.calendar.editor.noResults', 'No results')}
57
- </p>
58
- ) : null}
59
- {options.map((option) => (
60
- <Button
61
- key={option.value}
62
- type="button"
63
- variant="ghost"
64
- role="option"
65
- aria-selected={option.value === value}
66
- onClick={() => {
67
- onChange(option.value)
68
- setOpen(false)
69
- }}
70
- className="h-auto w-full justify-start px-2 py-1.5 text-left"
71
- >
72
- <UppercaseBadge style={categoryPillStyle(colors[option.value] ?? null)}>{option.label}</UppercaseBadge>
73
- </Button>
74
- ))}
75
- </div>
76
- ) : null}
77
- </div>
78
- )
79
- }