@dev.smartpricing/message-composer-layer 4.0.1 → 4.0.2-templates.1
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/app/api/index.ts +1 -0
- package/app/api/templates.ts +62 -0
- package/app/components/Common/NewMessageModal.vue +274 -0
- package/app/components/Composer/EmailComposer.vue +31 -1
- package/app/components/Composer/MessageLibrary.vue +71 -2
- package/app/components/Composer/WhatsappComposer.vue +24 -0
- package/app/components/CreateTemplateButton.vue +8 -45
- package/app/components/Email/InlinePreview.vue +8 -1
- package/app/components/TemplateList/BaseTable.vue +7 -0
- package/app/components/TemplateList/PromoteModal.vue +69 -0
- package/app/pages/{template → compose}/email/create.vue +10 -1
- package/app/pages/{template → compose}/whatsapp/create.vue +4 -1
- package/app/pages/templates/email/[id].vue +82 -0
- package/app/pages/templates/email/create.vue +74 -0
- package/app/pages/templates/index.vue +263 -0
- package/app/pages/templates/whatsapp/[id].vue +82 -0
- package/app/pages/templates/whatsapp/create.vue +74 -0
- package/app/queries/index.ts +1 -0
- package/app/queries/templates.ts +132 -0
- package/app/utils/testIds.const.ts +1 -0
- package/i18n/locales/de.ts +43 -0
- package/i18n/locales/en.ts +53 -0
- package/i18n/locales/es.ts +42 -0
- package/i18n/locales/fr.ts +42 -0
- package/i18n/locales/it.ts +42 -0
- package/package.json +2 -2
- /package/app/pages/{template → compose}/email/[id].vue +0 -0
- /package/app/pages/{template → compose}/whatsapp/[id].vue +0 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { useQuery, useMutation, useQueryCache } from '@pinia/colada'
|
|
2
|
+
import type { RenderType } from '@dev.smartpricing/message-composer-utils/types'
|
|
3
|
+
import type {
|
|
4
|
+
TemplateWithMessageSummary,
|
|
5
|
+
CreateTemplatePayload,
|
|
6
|
+
UpdateTemplatePayload,
|
|
7
|
+
PromoteTemplatePayload,
|
|
8
|
+
} from '@dev.smartpricing/message-composer-utils/types'
|
|
9
|
+
import { templatesApi } from '~/api/templates'
|
|
10
|
+
|
|
11
|
+
// QUERIES
|
|
12
|
+
|
|
13
|
+
export function useTemplatesQuery(
|
|
14
|
+
options?: MaybeRefOrGetter<{
|
|
15
|
+
renderType?: RenderType
|
|
16
|
+
scope?: 'system' | 'mine' | 'all'
|
|
17
|
+
tags?: string[]
|
|
18
|
+
tagsMode?: 'and' | 'or'
|
|
19
|
+
}>,
|
|
20
|
+
) {
|
|
21
|
+
return useQuery({
|
|
22
|
+
key: () => ['templates', JSON.stringify(toValue(options))],
|
|
23
|
+
query: () => templatesApi.getAll(toValue(options)),
|
|
24
|
+
staleTime: 0,
|
|
25
|
+
})
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function useTemplateQuery(id: MaybeRefOrGetter<string>) {
|
|
29
|
+
return useQuery({
|
|
30
|
+
key: () => ['templates', toValue(id)],
|
|
31
|
+
query: () => templatesApi.getById(toValue(id)),
|
|
32
|
+
staleTime: 2 * 60 * 1000,
|
|
33
|
+
})
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// MUTATIONS
|
|
37
|
+
|
|
38
|
+
export function useCreateTemplateMutation() {
|
|
39
|
+
const queryCache = useQueryCache()
|
|
40
|
+
|
|
41
|
+
return useMutation({
|
|
42
|
+
mutation: (data: CreateTemplatePayload) => templatesApi.create(data),
|
|
43
|
+
onSuccess: () => {
|
|
44
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
45
|
+
},
|
|
46
|
+
})
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function useUpdateTemplateMutation() {
|
|
50
|
+
const queryCache = useQueryCache()
|
|
51
|
+
|
|
52
|
+
return useMutation({
|
|
53
|
+
mutation: ({ id, data }: { id: string; data: UpdateTemplatePayload }) =>
|
|
54
|
+
templatesApi.update(id, data),
|
|
55
|
+
onSuccess: (_, { id }) => {
|
|
56
|
+
queryCache.invalidateQueries({ key: ['templates', id] })
|
|
57
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
58
|
+
},
|
|
59
|
+
})
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export function useDeleteTemplateMutation() {
|
|
63
|
+
const queryCache = useQueryCache()
|
|
64
|
+
|
|
65
|
+
return useMutation({
|
|
66
|
+
mutation: templatesApi.delete,
|
|
67
|
+
onMutate: async (id) => {
|
|
68
|
+
queryCache.cancelQueries({ key: ['templates'] })
|
|
69
|
+
const previous = queryCache.getQueryData(['templates'])
|
|
70
|
+
|
|
71
|
+
queryCache.setQueryData(['templates'], (old: TemplateWithMessageSummary[] | undefined) =>
|
|
72
|
+
old?.filter((t) => t.id !== id),
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
return { previous }
|
|
76
|
+
},
|
|
77
|
+
onError: (_, __, context) => {
|
|
78
|
+
if (context?.previous) {
|
|
79
|
+
queryCache.setQueryData(['templates'], context.previous)
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
onSuccess: () => {
|
|
83
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
84
|
+
},
|
|
85
|
+
})
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export function usePublishTemplateMutation() {
|
|
89
|
+
const queryCache = useQueryCache()
|
|
90
|
+
|
|
91
|
+
return useMutation({
|
|
92
|
+
mutation: templatesApi.publish,
|
|
93
|
+
onSuccess: () => {
|
|
94
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
95
|
+
},
|
|
96
|
+
})
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export function useUnpublishTemplateMutation() {
|
|
100
|
+
const queryCache = useQueryCache()
|
|
101
|
+
|
|
102
|
+
return useMutation({
|
|
103
|
+
mutation: templatesApi.unpublish,
|
|
104
|
+
onSuccess: () => {
|
|
105
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
106
|
+
},
|
|
107
|
+
})
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export function usePromoteTemplateMutation() {
|
|
111
|
+
const queryCache = useQueryCache()
|
|
112
|
+
|
|
113
|
+
return useMutation({
|
|
114
|
+
mutation: ({ id, data }: { id: string; data: PromoteTemplatePayload }) =>
|
|
115
|
+
templatesApi.promote(id, data),
|
|
116
|
+
onSuccess: () => {
|
|
117
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
118
|
+
},
|
|
119
|
+
})
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export function useSaveAsTemplateMutation() {
|
|
123
|
+
const queryCache = useQueryCache()
|
|
124
|
+
|
|
125
|
+
return useMutation({
|
|
126
|
+
mutation: ({ messageGroupId, name }: { messageGroupId: string; name?: string }) =>
|
|
127
|
+
templatesApi.saveFromMessageGroup(messageGroupId, name),
|
|
128
|
+
onSuccess: () => {
|
|
129
|
+
queryCache.invalidateQueries({ key: ['templates'] })
|
|
130
|
+
},
|
|
131
|
+
})
|
|
132
|
+
}
|
|
@@ -520,6 +520,7 @@ export const templateListTableTestIds = {
|
|
|
520
520
|
rowDuplicateAction: 'template-list-table-row-duplicate',
|
|
521
521
|
rowPublishAction: 'template-list-table-row-publish',
|
|
522
522
|
rowUnpublishAction: 'template-list-table-row-unpublish',
|
|
523
|
+
rowSaveAsTemplateAction: 'template-list-table-row-save-as-template',
|
|
523
524
|
} as const
|
|
524
525
|
|
|
525
526
|
export const templateListStatusCellTestIds = {
|
package/i18n/locales/de.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default {
|
|
|
43
43
|
save: 'Speichern',
|
|
44
44
|
remove: 'Entfernen',
|
|
45
45
|
reset_defaults: 'Auf Standardwerte zurücksetzen',
|
|
46
|
+
confirm: 'Bestätigen',
|
|
46
47
|
},
|
|
47
48
|
internal: 'Intern',
|
|
48
49
|
imageUpload: {
|
|
@@ -831,6 +832,48 @@ Diese Nachrichten müssen funktional sein, nicht werblich.
|
|
|
831
832
|
no_preview: 'Keine Vorschau verfügbar',
|
|
832
833
|
subject: 'Betreff',
|
|
833
834
|
},
|
|
835
|
+
templates: {
|
|
836
|
+
title: 'Vorlagen',
|
|
837
|
+
my_templates: 'Meine Vorlagen',
|
|
838
|
+
system_templates: 'Systemvorlagen',
|
|
839
|
+
add_template: 'Neue Vorlage',
|
|
840
|
+
create_template: 'Vorlage erstellen',
|
|
841
|
+
edit_template: 'Vorlage bearbeiten',
|
|
842
|
+
use_template: 'Diese Vorlage verwenden',
|
|
843
|
+
start_from_scratch: 'Neu beginnen',
|
|
844
|
+
pick_template: 'Vorlage auswählen',
|
|
845
|
+
save_as_template: 'Als Vorlage speichern',
|
|
846
|
+
system_template: 'Systemvorlage',
|
|
847
|
+
template_name: 'Vorlagenname',
|
|
848
|
+
template_name_placeholder: 'Vorlagenname eingeben',
|
|
849
|
+
no_templates: 'Keine Vorlagen verfügbar',
|
|
850
|
+
new_message_email: 'Neue E-Mail-Nachricht',
|
|
851
|
+
new_message_whatsapp: 'Neue WhatsApp-Nachricht',
|
|
852
|
+
dialogs: {
|
|
853
|
+
delete: {
|
|
854
|
+
title: 'Vorlage löschen',
|
|
855
|
+
message:
|
|
856
|
+
'Diese Aktion kann nicht rückgängig gemacht werden. Möchten Sie {name} wirklich löschen?',
|
|
857
|
+
success: '"{name}" wurde gelöscht.',
|
|
858
|
+
},
|
|
859
|
+
publish: {
|
|
860
|
+
title: 'Vorlage veröffentlichen',
|
|
861
|
+
message: '"{name}" veröffentlichen, um sie allen Benutzern zugänglich zu machen?',
|
|
862
|
+
success: '"{name}" wurde veröffentlicht.',
|
|
863
|
+
},
|
|
864
|
+
unpublish: {
|
|
865
|
+
title: 'Vorlage verbergen',
|
|
866
|
+
message: '"{name}" verbergen? Sie wird für andere Benutzer nicht mehr sichtbar sein.',
|
|
867
|
+
success: '"{name}" wurde verborgen.',
|
|
868
|
+
},
|
|
869
|
+
save_as_template: {
|
|
870
|
+
title: 'Als Vorlage speichern',
|
|
871
|
+
message: 'Diese Nachricht als wiederverwendbare Vorlage speichern?',
|
|
872
|
+
success: 'Vorlage erfolgreich gespeichert.',
|
|
873
|
+
},
|
|
874
|
+
},
|
|
875
|
+
copy_success: 'Nachricht aus Vorlage erstellt.',
|
|
876
|
+
},
|
|
834
877
|
public: {
|
|
835
878
|
select_message: {
|
|
836
879
|
choose_message: 'Nachricht auswählen...',
|
package/i18n/locales/en.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default {
|
|
|
43
43
|
save: 'Save',
|
|
44
44
|
remove: 'Remove',
|
|
45
45
|
reset_defaults: 'Reset to defaults',
|
|
46
|
+
confirm: 'Confirm',
|
|
46
47
|
},
|
|
47
48
|
internal: 'Internal',
|
|
48
49
|
imageUpload: {
|
|
@@ -822,6 +823,58 @@ These messages must be functional, not promotional.
|
|
|
822
823
|
no_preview: 'No preview available',
|
|
823
824
|
subject: 'Subject',
|
|
824
825
|
},
|
|
826
|
+
templates: {
|
|
827
|
+
title: 'Templates',
|
|
828
|
+
my_templates: 'My templates',
|
|
829
|
+
system_templates: 'System templates',
|
|
830
|
+
add_template: 'New template',
|
|
831
|
+
create_template: 'Create template',
|
|
832
|
+
edit_template: 'Edit template',
|
|
833
|
+
use_template: 'Use this template',
|
|
834
|
+
start_from_scratch: 'Start from scratch',
|
|
835
|
+
pick_template: 'Choose a template',
|
|
836
|
+
save_as_template: 'Save as template',
|
|
837
|
+
system_template: 'System template',
|
|
838
|
+
template_name: 'Template name',
|
|
839
|
+
template_name_placeholder: 'Enter template name',
|
|
840
|
+
no_templates: 'No templates available',
|
|
841
|
+
new_message_email: 'New email message',
|
|
842
|
+
new_message_whatsapp: 'New WhatsApp message',
|
|
843
|
+
dialogs: {
|
|
844
|
+
delete: {
|
|
845
|
+
title: 'Delete template',
|
|
846
|
+
message: "This action can't be undone. Are you sure you want to delete {name}?",
|
|
847
|
+
success: '"{name}" has been deleted.',
|
|
848
|
+
},
|
|
849
|
+
publish: {
|
|
850
|
+
title: 'Publish template',
|
|
851
|
+
message: 'Publish "{name}" to make it available to all users?',
|
|
852
|
+
success: '"{name}" has been published.',
|
|
853
|
+
},
|
|
854
|
+
unpublish: {
|
|
855
|
+
title: 'Unpublish template',
|
|
856
|
+
message: 'Unpublish "{name}"? It will no longer be visible to other users.',
|
|
857
|
+
success: '"{name}" has been unpublished.',
|
|
858
|
+
},
|
|
859
|
+
save_as_template: {
|
|
860
|
+
title: 'Save as template',
|
|
861
|
+
message: 'Save this message as a reusable template?',
|
|
862
|
+
success: 'Template saved successfully.',
|
|
863
|
+
},
|
|
864
|
+
promote: {
|
|
865
|
+
title: 'Promote to System Template',
|
|
866
|
+
clone_label: 'Clone as System',
|
|
867
|
+
clone_description:
|
|
868
|
+
'Create an independent copy as a system template. The original template stays unchanged.',
|
|
869
|
+
convert_label: 'Convert to System',
|
|
870
|
+
convert_description:
|
|
871
|
+
'This template will become a system template. The original owner will lose ownership. This action cannot be undone.',
|
|
872
|
+
success_clone: '"{name}" cloned as system template.',
|
|
873
|
+
success_convert: '"{name}" promoted to system template.',
|
|
874
|
+
},
|
|
875
|
+
},
|
|
876
|
+
copy_success: 'Message created from template.',
|
|
877
|
+
},
|
|
825
878
|
public: {
|
|
826
879
|
select_message: {
|
|
827
880
|
choose_message: 'Choose a message...',
|
package/i18n/locales/es.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default {
|
|
|
43
43
|
save: 'Guardar',
|
|
44
44
|
remove: 'Eliminar',
|
|
45
45
|
reset_defaults: 'Restablecer valores predeterminados',
|
|
46
|
+
confirm: 'Confirmar',
|
|
46
47
|
},
|
|
47
48
|
internal: 'Interno',
|
|
48
49
|
imageUpload: {
|
|
@@ -830,6 +831,47 @@ Estos mensajes deben ser funcionales, no promocionales.
|
|
|
830
831
|
no_preview: 'No hay vista previa disponible',
|
|
831
832
|
subject: 'Asunto',
|
|
832
833
|
},
|
|
834
|
+
templates: {
|
|
835
|
+
title: 'Plantillas',
|
|
836
|
+
my_templates: 'Mis plantillas',
|
|
837
|
+
system_templates: 'Plantillas del sistema',
|
|
838
|
+
add_template: 'Nueva plantilla',
|
|
839
|
+
create_template: 'Crear plantilla',
|
|
840
|
+
edit_template: 'Editar plantilla',
|
|
841
|
+
use_template: 'Usar esta plantilla',
|
|
842
|
+
start_from_scratch: 'Empezar desde cero',
|
|
843
|
+
pick_template: 'Elegir una plantilla',
|
|
844
|
+
save_as_template: 'Guardar como plantilla',
|
|
845
|
+
system_template: 'Plantilla de sistema',
|
|
846
|
+
template_name: 'Nombre de plantilla',
|
|
847
|
+
template_name_placeholder: 'Ingrese nombre de plantilla',
|
|
848
|
+
no_templates: 'No hay plantillas disponibles',
|
|
849
|
+
new_message_email: 'Nuevo mensaje de email',
|
|
850
|
+
new_message_whatsapp: 'Nuevo mensaje de WhatsApp',
|
|
851
|
+
dialogs: {
|
|
852
|
+
delete: {
|
|
853
|
+
title: 'Eliminar plantilla',
|
|
854
|
+
message: 'Esta acción no se puede deshacer. ¿Está seguro de que desea eliminar {name}?',
|
|
855
|
+
success: '"{name}" ha sido eliminado.',
|
|
856
|
+
},
|
|
857
|
+
publish: {
|
|
858
|
+
title: 'Publicar plantilla',
|
|
859
|
+
message: '¿Publicar "{name}" para hacerla disponible a todos los usuarios?',
|
|
860
|
+
success: '"{name}" ha sido publicado.',
|
|
861
|
+
},
|
|
862
|
+
unpublish: {
|
|
863
|
+
title: 'Ocultar plantilla',
|
|
864
|
+
message: '¿Ocultar "{name}"? Ya no será visible para otros usuarios.',
|
|
865
|
+
success: '"{name}" ha sido ocultado.',
|
|
866
|
+
},
|
|
867
|
+
save_as_template: {
|
|
868
|
+
title: 'Guardar como plantilla',
|
|
869
|
+
message: '¿Guardar este mensaje como plantilla reutilizable?',
|
|
870
|
+
success: 'Plantilla guardada exitosamente.',
|
|
871
|
+
},
|
|
872
|
+
},
|
|
873
|
+
copy_success: 'Mensaje creado a partir de la plantilla.',
|
|
874
|
+
},
|
|
833
875
|
public: {
|
|
834
876
|
select_message: {
|
|
835
877
|
choose_message: 'Elige un mensaje...',
|
package/i18n/locales/fr.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default {
|
|
|
43
43
|
save: 'Enregistrer',
|
|
44
44
|
remove: 'Supprimer',
|
|
45
45
|
reset_defaults: 'Réinitialiser les valeurs par défaut',
|
|
46
|
+
confirm: 'Confirmer',
|
|
46
47
|
},
|
|
47
48
|
internal: 'Interne',
|
|
48
49
|
imageUpload: {
|
|
@@ -834,6 +835,47 @@ Ces messages doivent être fonctionnels, et non promotionnels.
|
|
|
834
835
|
no_preview: 'Aucun aperçu disponible',
|
|
835
836
|
subject: 'Objet',
|
|
836
837
|
},
|
|
838
|
+
templates: {
|
|
839
|
+
title: 'Modèles',
|
|
840
|
+
my_templates: 'Mes modèles',
|
|
841
|
+
system_templates: 'Modèles système',
|
|
842
|
+
add_template: 'Nouveau modèle',
|
|
843
|
+
create_template: 'Créer un modèle',
|
|
844
|
+
edit_template: 'Modifier le modèle',
|
|
845
|
+
use_template: 'Utiliser ce modèle',
|
|
846
|
+
start_from_scratch: 'Partir de zéro',
|
|
847
|
+
pick_template: 'Choisir un modèle',
|
|
848
|
+
save_as_template: 'Enregistrer comme modèle',
|
|
849
|
+
system_template: 'Modèle système',
|
|
850
|
+
template_name: 'Nom du modèle',
|
|
851
|
+
template_name_placeholder: 'Entrez le nom du modèle',
|
|
852
|
+
no_templates: 'Aucun modèle disponible',
|
|
853
|
+
new_message_email: 'Nouveau message email',
|
|
854
|
+
new_message_whatsapp: 'Nouveau message WhatsApp',
|
|
855
|
+
dialogs: {
|
|
856
|
+
delete: {
|
|
857
|
+
title: 'Supprimer le modèle',
|
|
858
|
+
message: 'Cette action est irréversible. Êtes-vous sûr de vouloir supprimer {name} ?',
|
|
859
|
+
success: '"{name}" a été supprimé.',
|
|
860
|
+
},
|
|
861
|
+
publish: {
|
|
862
|
+
title: 'Publier le modèle',
|
|
863
|
+
message: 'Publier "{name}" pour le rendre accessible à tous les utilisateurs ?',
|
|
864
|
+
success: '"{name}" a été publié.',
|
|
865
|
+
},
|
|
866
|
+
unpublish: {
|
|
867
|
+
title: 'Masquer le modèle',
|
|
868
|
+
message: 'Masquer "{name}" ? Il ne sera plus visible pour les autres utilisateurs.',
|
|
869
|
+
success: '"{name}" a été masqué.',
|
|
870
|
+
},
|
|
871
|
+
save_as_template: {
|
|
872
|
+
title: 'Enregistrer comme modèle',
|
|
873
|
+
message: 'Enregistrer ce message comme modèle réutilisable ?',
|
|
874
|
+
success: 'Modèle enregistré avec succès.',
|
|
875
|
+
},
|
|
876
|
+
},
|
|
877
|
+
copy_success: 'Message créé à partir du modèle.',
|
|
878
|
+
},
|
|
837
879
|
public: {
|
|
838
880
|
select_message: {
|
|
839
881
|
choose_message: 'Choisir un message...',
|
package/i18n/locales/it.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default {
|
|
|
43
43
|
save: 'Salva',
|
|
44
44
|
remove: 'Rimuovi',
|
|
45
45
|
reset_defaults: 'Ripristina valori predefiniti',
|
|
46
|
+
confirm: 'Conferma',
|
|
46
47
|
},
|
|
47
48
|
internal: 'Interno',
|
|
48
49
|
imageUpload: {
|
|
@@ -828,6 +829,47 @@ Questi messaggi devono essere funzionali, non promozionali.
|
|
|
828
829
|
no_preview: 'Nessuna anteprima disponibile',
|
|
829
830
|
subject: 'Oggetto',
|
|
830
831
|
},
|
|
832
|
+
templates: {
|
|
833
|
+
title: 'Modelli',
|
|
834
|
+
my_templates: 'I miei modelli',
|
|
835
|
+
system_templates: 'Modelli di sistema',
|
|
836
|
+
add_template: 'Nuovo modello',
|
|
837
|
+
create_template: 'Crea modello',
|
|
838
|
+
edit_template: 'Modifica modello',
|
|
839
|
+
use_template: 'Usa questo modello',
|
|
840
|
+
start_from_scratch: 'Inizia da zero',
|
|
841
|
+
pick_template: 'Scegli un modello',
|
|
842
|
+
save_as_template: 'Salva come modello',
|
|
843
|
+
system_template: 'Modello di sistema',
|
|
844
|
+
template_name: 'Nome modello',
|
|
845
|
+
template_name_placeholder: 'Inserisci nome modello',
|
|
846
|
+
no_templates: 'Nessun modello disponibile',
|
|
847
|
+
new_message_email: 'Nuovo messaggio email',
|
|
848
|
+
new_message_whatsapp: 'Nuovo messaggio WhatsApp',
|
|
849
|
+
dialogs: {
|
|
850
|
+
delete: {
|
|
851
|
+
title: 'Elimina modello',
|
|
852
|
+
message: 'Questa azione non può essere annullata. Sei sicuro di voler eliminare {name}?',
|
|
853
|
+
success: '"{name}" è stato eliminato.',
|
|
854
|
+
},
|
|
855
|
+
publish: {
|
|
856
|
+
title: 'Pubblica modello',
|
|
857
|
+
message: 'Pubblicare "{name}" per renderlo disponibile a tutti gli utenti?',
|
|
858
|
+
success: '"{name}" è stato pubblicato.',
|
|
859
|
+
},
|
|
860
|
+
unpublish: {
|
|
861
|
+
title: 'Nascondi modello',
|
|
862
|
+
message: 'Nascondere "{name}"? Non sarà più visibile agli altri utenti.',
|
|
863
|
+
success: '"{name}" è stato nascosto.',
|
|
864
|
+
},
|
|
865
|
+
save_as_template: {
|
|
866
|
+
title: 'Salva come modello',
|
|
867
|
+
message: 'Salvare questo messaggio come modello riutilizzabile?',
|
|
868
|
+
success: 'Modello salvato con successo.',
|
|
869
|
+
},
|
|
870
|
+
},
|
|
871
|
+
copy_success: 'Messaggio creato dal modello.',
|
|
872
|
+
},
|
|
831
873
|
public: {
|
|
832
874
|
select_message: {
|
|
833
875
|
choose_message: 'Scegli un messaggio...',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dev.smartpricing/message-composer-layer",
|
|
3
|
-
"version": "4.0.1",
|
|
3
|
+
"version": "4.0.2-templates.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./nuxt.config.ts",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"vue-router": "^5.0.7",
|
|
39
39
|
"vue3-emoji-picker": "^1.1.8",
|
|
40
40
|
"zod": "^4.4.3",
|
|
41
|
-
"@dev.smartpricing/message-composer-utils": "4.0.1"
|
|
41
|
+
"@dev.smartpricing/message-composer-utils": "4.0.3-templates.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@nuxt/eslint": "^1.15.2",
|
|
File without changes
|
|
File without changes
|