diff --git a/src/models/contact/contact.spec.ts b/src/models/contact/contact.spec.ts index f30317e..45ae7f4 100644 --- a/src/models/contact/contact.spec.ts +++ b/src/models/contact/contact.spec.ts @@ -9,7 +9,7 @@ describe('contact model', (): void => { it('should create a valid contact', (): void => { const contactData: ContactToValidate = { telephone: '+33145896378', - courriel: [Courriel('contact@cartographienationale.fr')], + courriels: [Courriel('contact@cartographienationale.fr')], site_web: [Url('http://www.cartographienationale.fr')] }; @@ -30,7 +30,7 @@ describe('contact model', (): void => { it('should create a valid contact with only courriel property', (): void => { const contactData: ContactToValidate = { - courriel: [Courriel('contact@cartographienationale.fr')] + courriels: [Courriel('contact@cartographienationale.fr')] }; const contact: Contact = Contact(contactData); @@ -41,7 +41,7 @@ describe('contact model', (): void => { it('should create a valid contact with a phone from French Guiana', (): void => { const contactData: ContactToValidate = { telephone: '+594694020905', - courriel: [Courriel('direction.yenkumu.lutu@gmail.com')], + courriels: [Courriel('direction.yenkumu.lutu@gmail.com')], site_web: [Url('https://www.facebook.com/YenkumuLutuPapaichton/')] }; diff --git a/src/models/contact/contact.ts b/src/models/contact/contact.ts index 2615622..26d2ae6 100644 --- a/src/models/contact/contact.ts +++ b/src/models/contact/contact.ts @@ -8,7 +8,7 @@ export type Contact = Model< { telephone?: string; /* eslint-disable-next-line @typescript-eslint/naming-convention */ - courriel?: Courriel[]; + courriels?: Courriel[]; /* eslint-disable-next-line @typescript-eslint/naming-convention */ site_web?: Url[]; } diff --git a/src/models/formation-label/formation-label.ts b/src/models/formation-label/formation-label.ts index 5be2802..85cc496 100644 --- a/src/models/formation-label/formation-label.ts +++ b/src/models/formation-label/formation-label.ts @@ -6,6 +6,7 @@ export enum FormationLabel { FormeADuplex = 'Formé à « DUPLEX » (illettrisme)', ArniaMednum = 'Arnia/MedNum BFC (Bourgogne-Franche-Comté)', CollectifRessourcesEtActeursReemploi = 'Collectif ressources et acteurs réemploi (Normandie)', + EtapesNumeriques = 'Étapes numériques (La Poste)', FabriquesDeTerritoire = 'Fabriques de Territoire', LesEclaireurs = 'Les Éclaireurs du numérique (Drôme)', MesPapiers = 'Mes Papiers (Métropole de Lyon)', diff --git a/src/transfer/schema-data-inclusion/from-schema-data-inclusion/from-schema-data-inclusion-fields.ts b/src/transfer/schema-data-inclusion/from-schema-data-inclusion/from-schema-data-inclusion-fields.ts index 86e676f..357dd98 100644 --- a/src/transfer/schema-data-inclusion/from-schema-data-inclusion/from-schema-data-inclusion-fields.ts +++ b/src/transfer/schema-data-inclusion/from-schema-data-inclusion/from-schema-data-inclusion-fields.ts @@ -82,6 +82,7 @@ const FORMATIONS_LABELS_MAP: Map = new Map { typologies: Typologies([Typologie.TIERS_LIEUX]), contact: Contact({ telephone: '+33180059880', - courriel: [Courriel('contact@laquincaillerie.tl'), Courriel('bonjour@laquincaillerie.tl')], + courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('bonjour@laquincaillerie.tl')], site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')] }), horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', diff --git a/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion-fields.ts b/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion-fields.ts index 29899eb..63015d0 100644 --- a/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion-fields.ts +++ b/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion-fields.ts @@ -120,6 +120,7 @@ const LABELS_NATIONAUX_MAP: Map ({ ...(lieuMediationNumerique.contact?.telephone == null ? {} : { telephone: lieuMediationNumerique.contact.telephone }), - ...(lieuMediationNumerique.contact?.courriel != null && lieuMediationNumerique.contact.courriel.length > 0 - ? courrielIfExist(lieuMediationNumerique.contact.courriel.at(0)?.toString()) + ...(lieuMediationNumerique.contact?.courriels != null && lieuMediationNumerique.contact.courriels.length > 0 + ? courrielIfExist(lieuMediationNumerique.contact.courriels.at(0)?.toString()) : {}), ...(lieuMediationNumerique.contact?.site_web != null && lieuMediationNumerique.contact.site_web.length > 0 ? siteWebIfExist(lieuMediationNumerique.contact.site_web.at(0)?.toString()) diff --git a/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion.spec.ts b/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion.spec.ts index 3d6e3db..07fec28 100644 --- a/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion.spec.ts +++ b/src/transfer/schema-data-inclusion/to-schema-data-inclusion/to-schema-data-inclusion.spec.ts @@ -92,7 +92,7 @@ describe('to schema data.inclusion', (): void => { contact: Contact({ site_web: [Url('https://www.asso-gonzalez.net/'), Url('https://www.facebook.com/asso-gonzalez.net/')], telephone: '0102030405', - courriel: [Courriel('julie@example.net'), Courriel('paul@example.net')] + courriels: [Courriel('julie@example.net'), Courriel('paul@example.net')] }), horaires: 'Mo-Fr 10:00-20:00 "sur rendez-vous"; PH off', presentation: { diff --git a/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique-fields.ts b/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique-fields.ts index d8cafef..61b6c5c 100644 --- a/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique-fields.ts +++ b/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique-fields.ts @@ -55,20 +55,20 @@ export const typologiesIfAny = (typologies?: string): { typologies?: Typologies const telephoneIfAny = (telephone?: string): { telephone?: string } => (telephone == null ? {} : { telephone }); -const courrielIfAny = (courriel?: string): { courriel?: Courriel[] } => - courriel == null ? {} : { courriel: listFromString(courriel) }; +const courrielsIfAny = (courriels?: string): { courriels?: Courriel[] } => + courriels == null ? {} : { courriels: listFromString(courriels) }; const siteWebIfAny = (siteWeb?: string): { site_web?: Url[] } => (siteWeb == null ? {} : { site_web: listFromString(siteWeb) }); export const contactIfAny = (schemaLieuMediationNumerique: SchemaLieuMediationNumerique): { contact?: Contact } => schemaLieuMediationNumerique.telephone == null && - schemaLieuMediationNumerique.courriel == null && + schemaLieuMediationNumerique.courriels == null && schemaLieuMediationNumerique.site_web == null ? {} : { contact: Contact({ ...telephoneIfAny(schemaLieuMediationNumerique.telephone), - ...courrielIfAny(schemaLieuMediationNumerique.courriel), + ...courrielsIfAny(schemaLieuMediationNumerique.courriels), ...siteWebIfAny(schemaLieuMediationNumerique.site_web) }) }; diff --git a/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique.spec.ts b/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique.spec.ts index 7589d7c..87d63d6 100644 --- a/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique.spec.ts +++ b/src/transfer/schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique/from-schema-lieux-de-mediation-numerique.spec.ts @@ -114,7 +114,7 @@ describe('from schema lieux de mediation numerique', (): void => { longitude: 5.41423, typologie: 'TIERS_LIEUX', telephone: '+33180059880', - courriel: 'contact@laquincaillerie.tl', + courriels: ['contact@laquincaillerie.tl', 'hello@laquincaillerie.tl'].join('|'), site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/', horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', presentation_resume: @@ -191,7 +191,7 @@ describe('from schema lieux de mediation numerique', (): void => { typologies: Typologies([Typologie.TIERS_LIEUX]), contact: Contact({ telephone: '+33180059880', - courriel: [Courriel('contact@laquincaillerie.tl')], + courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')], site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')] }), horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', @@ -262,7 +262,7 @@ describe('from schema lieux de mediation numerique', (): void => { longitude: 5.41423, typologie: 'TIERS_LIEUX', telephone: '+33180059880', - courriel: 'contact@laquincaillerie.tl', + courriels: ['contact@laquincaillerie.tl', 'hello@laquincaillerie.tl'].join('|'), site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/', horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', presentation_resume: @@ -333,7 +333,7 @@ describe('from schema lieux de mediation numerique', (): void => { typologies: Typologies([Typologie.TIERS_LIEUX]), contact: Contact({ telephone: '+33180059880', - courriel: [Courriel('contact@laquincaillerie.tl')], + courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')], site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')] }), horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', diff --git a/src/transfer/schema-lieux-de-mediation-numerique/schema-lieux-de-mediation-numerique.ts b/src/transfer/schema-lieux-de-mediation-numerique/schema-lieux-de-mediation-numerique.ts index 4a6270b..056f5f9 100644 --- a/src/transfer/schema-lieux-de-mediation-numerique/schema-lieux-de-mediation-numerique.ts +++ b/src/transfer/schema-lieux-de-mediation-numerique/schema-lieux-de-mediation-numerique.ts @@ -24,7 +24,7 @@ export type SchemaLieuMediationNumeriqueLocalisationFields = { export type SchemaLieuMediationNumeriqueContactFields = { telephone?: string; - courriel?: string; + courriels?: string; site_web?: string; }; diff --git a/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique-fields.ts b/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique-fields.ts index c63b768..22ff088 100644 --- a/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique-fields.ts +++ b/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique-fields.ts @@ -43,7 +43,9 @@ export const localisationFields = ( export const contactFields = (lieuMediationNumerique: LieuMediationNumerique): SchemaLieuMediationNumeriqueContactFields => ({ ...(lieuMediationNumerique.contact?.telephone == null ? {} : { telephone: lieuMediationNumerique.contact.telephone }), - ...(lieuMediationNumerique.contact?.courriel == null ? {} : { courriel: lieuMediationNumerique.contact.courriel.join('|') }), + ...(lieuMediationNumerique.contact?.courriels == null + ? {} + : { courriels: lieuMediationNumerique.contact.courriels.join('|') }), ...(lieuMediationNumerique.contact?.site_web == null ? {} : { site_web: lieuMediationNumerique.contact.site_web.join('|') }) }); diff --git a/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique.spec.ts b/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique.spec.ts index f19b3ad..bbf80f3 100644 --- a/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique.spec.ts +++ b/src/transfer/schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique/to-schema-lieux-de-mediation-numerique.spec.ts @@ -98,7 +98,7 @@ describe('to schema lieux de mediation numerique', (): void => { typologies: Typologies([Typologie.TIERS_LIEUX, Typologie.ASSO]), contact: Contact({ telephone: '+33180059880', - courriel: [Courriel('contact@laquincaillerie.tl')], + courriels: [Courriel('contact@laquincaillerie.tl'), Courriel('hello@laquincaillerie.tl')], site_web: [Url('https://www.laquincaillerie.tl/'), Url('https://m.facebook.com/laquincaillerienumerique/')] }), horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', @@ -163,7 +163,7 @@ describe('to schema lieux de mediation numerique', (): void => { longitude: 5.41423, typologie: 'TIERS_LIEUX|ASSO', telephone: '+33180059880', - courriel: 'contact@laquincaillerie.tl', + courriels: 'contact@laquincaillerie.tl|hello@laquincaillerie.tl', site_web: 'https://www.laquincaillerie.tl/|https://m.facebook.com/laquincaillerienumerique/', horaires: 'Mo-Fr 09:00-12:00,14:00-18:30; Sa 08:30-12:00', presentation_resume: