diff --git a/packages/code-du-travail-frontend/__tests__/__snapshots__/modeles-de-courriers.test.tsx.snap b/packages/code-du-travail-frontend/__tests__/__snapshots__/modeles-de-courriers.test.tsx.snap
index 033681f0af..02dad7d0b6 100644
--- a/packages/code-du-travail-frontend/__tests__/__snapshots__/modeles-de-courriers.test.tsx.snap
+++ b/packages/code-du-travail-frontend/__tests__/__snapshots__/modeles-de-courriers.test.tsx.snap
@@ -215,7 +215,7 @@ exports[`
Ces informations sont issues de l’analyse des règles prévues par votre convention collective de branche étendue et par le Code du travail. Elles s’appliqueront sauf si une convention ou un accord d’entreprise (ou de groupe, ou d’établissement) existant dans votre entreprise prévoit également des règles sur le même sujet. En effet, dans ce cas, cette convention ou accord s’appliquera, qu’il soit plus ou moins favorable que la convention de branche, sous réserve d’être au moins aussi favorable que le Code du travail. Dans tous les cas, reportez-vous à votre contrat de travail car s’il contient des règles plus favorables, ce sont ces dernières qui s’appliqueront.
Attention, d’autres règles non étendues peuvent potentiellement vous être applicables.
" }, + { + "date": "29/05/2024", + "contents": [ + { + "name": "contrat-de-travail-a-duree-indeterminee-cdi", + "title": "Contrat de travail à durée indéterminée (CDI)", + "blocks": [ + { + "type": "markdown", + "html": "Selon le Code du travail, la forme du contrat à durée indéterminée est libre : un écrit n’est pas nécessairement exigé s'il s'agit d'un CDI à temps plein sauf si votre
Par exemple, pour qu’il y ait une période d’essai, celle-ci doit être expressément indiquée dans le contrat de travail. Vérifiez ici la durée maximale prévue par votre convention collective.
\nPar ailleurs, elle ne peut être renouvelée que si la
Ce modèle de contrat de travail à durée indéterminée vous est donc proposé à titre d’exemple. Consultez le modèle de CDI
\nIl convient de l’adapter à votre situation et d’y faire figurer les clauses imposées par votre
Le contrat de travail à durée déterminée est nécessairement établi par écrit et comporte la définition précise du motif du recours au CDD.
\nIl doit être transmis au salarié, au plus tard, dans les deux
Ce modèle, proposé à titre d’exemple, reprend les mentions obligatoires qui doivent figurer dans le contrat, précise les mentions spécifiques liées au motif du recours au CDD, et comporte des clauses particulières qui peuvent être retenues ou non selon les modalités d'exécution du travail prévues par les parties.
\nEn toutes hypothèses, il convient de vous assurer que vous êtes dans l’un des cas de recours autorisés par la loi et d’adapter ce contrat à votre situation. Vérifiez notamment la durée maximale prévue par la convention collective ainsi que les conditions de renouvellement du CDD.
\n\nAttention au cas particulier du CDD d'usage qui comporte de nombreuses spécificités.\nConsultez votre convention collective sur le CDD d'usage
\nLe CDD à objet défini fait également l’objet de règles particulières, présentées sur cette fiche.
\nPour finir, à la fin d'un CDD, le salarié touche dans certains cas une prime de précarité. Pour connaître le montant de cette prime, un simulateur de l'indemnité est disponible ici.
" + } + ], + "references": [ + { + "label": "Liens utiles", + "links": [ + { + "id": "641025df-8eb9-4f14-823f-c75a6c4cca14", + "url": "https://code.travail.gouv.fr/contribution/dans-le-cadre-dun-cdd-quel-est-le-montant-de-lindemnite-de-fin-de-contrat", + "type": "external", + "order": 1, + "title": "Dans le cadre d’un CDD, quel est le montant de l’indemnité de fin de contrat ?" + }, + { + "id": "c3bf9ca6-d1bc-4c60-ac3a-9f77d39cba1a", + "url": "https://code.travail.gouv.fr/fiche-ministere-travail/le-contrat-a-duree-determinee-cdd?q=CDD", + "type": "external", + "order": 2, + "title": "Le contrat à durée déterminée (CDD)" + }, + { + "id": "2d82e85c-cd89-4150-9844-b07905c3c1bc", + "url": "https://code.travail.gouv.fr/outils/convention-collective", + "type": "external", + "order": 3, + "title": "Trouver sa convention collective" + } + ] + } + ] + } + ], + "description": "Afin de faciliter la rédaction des contrats de travail, le ministère du Travail propose aux salariés et aux employeurs des exemples de contrats : CDI et CDD.", + "dismissalProcess": false, + "sectionDisplayMode": "accordion", + "breadcrumbs": [ + ], + "cdtnId": "16fc2b793b", + "excludeFromSearch": false, + "id": "0dfda666-dd70-4b19-be87-2366975f8a5c", + "isPublished": true, + "metaDescription": "Afin de faciliter la rédaction des contrats de travail, le ministère du Travail propose aux salariés et aux employeurs des exemples de contrats : CDI et CDD à télécharger en format Word.", + "refs": [ + ], + "slug": "exemples-de-contrats-de-travail-cdi-et-cdd", + "source": "information", + "text": "Exemples de contrats de travail CDI et CDD", + "title": "Exemples de contrats de travail CDI et CDD", + "intro": "Afin de faciliter la rédaction des contrats de travail, cette page propose deux exemples : un contrat de travail à durée indéterminée (CDI) et un contrat de travail à durée déterminée (CDD).
\nIls sont mis à
La
L'employeur et le salarié doivent se réunir à l'occasion d'au moins un entretien dont les conditions sont précisées à l’avance (date, heure, lieu). Voir le modèle de lettre « demande d’entretien pour une rupture conventionnelle ».
\nAu cours de cet entretien le salarié peut se faire assister (par un représentant du personnel ou par tout autre salarié ou, s’il n’y a pas de représentant du personnel dans l’entreprise, par un
Une fois les conditions de la rupture définies dans le cadre de cet ou de ces entretiens, la convention de rupture peut être rédigée.
\nLa convention de rupture conventionnelle individuelle contient les informations relatives aux parties et fixe les conditions, librement définies par l'employeur et le salarié, de la rupture du contrat de travail (notamment la date de rupture du contrat et le montant de l’indemnité versée au salarié).\nLe salarié et l'employeur doivent signer la convention.
\nL'employeur doit en remettre un exemplaire au salarié.
\nÀ partir du lendemain de la signature de la convention de rupture, l'employeur et le salarié disposent d'un délai de 15
Si ce délai expire un samedi, un dimanche ou un
En l'absence de rétractation dans le délai de 15 jours prévu, un exemplaire de la convention de rupture doit être adressé à la DREETS afin d’obtenir sa validation.
\nCette demande de validation de la convention doit être effectuée via le téléservice TéléRC.
\nÀ noter : la convention de rupture qui concerne un salarié protégé est soumise non pas à
L’administration dispose alors d’un délai de 15
Si le dernier jour de ce délai tombe un samedi, un dimanche ou un
En cas d'acceptation de la demande, ou si la DREETS n'a pas répondu dans le délai de 15 jours, la convention est homologuée.
\nLe contrat est rompu à la date prévue dans la convention de rupture.
\nEn cas de refus d'
Le contrat de travail n’est pas rompu et se poursuit donc dans les conditions habituelles.
" + } + ], + "references": [ + { + "label": "Références juridiques", + "links": [ + { + "id": "b253bc47-f25f-47fa-994e-1778a2f7a6ca", + "url": "https://www.legifrance.gouv.fr/codes/article_lc/LEGIARTI000019071185", + "type": "external", + "order": 1, + "title": "Article L. 1237-12 du Code du travail" + }, + { + "id": "f993bfe8-8007-4150-834c-b65add92e3e9", + "url": "https://www.legifrance.gouv.fr/codes/article_lc/LEGIARTI000019071182", + "type": "external", + "order": 2, + "title": "Article L. 1237-13 du Code du travail" + }, + { + "id": "ef289550-f492-4129-87cc-8c81a0fef215", + "url": "https://www.legifrance.gouv.fr/codes/article_lc/LEGIARTI000019071180", + "type": "external", + "order": 3, + "title": "Article L. 1237-14 du Code du travail" + } + ] + } + ] + }, + { + "name": "quelle-est-la-procedure-a-suivre-infographie", + "title": "Quelle est la procédure à suivre ? [infographie]", + "blocks": [ + { + "size": "4.72 MB", + "type": "graphic", + "imgUrl": "ruptureconventionnelle.svg", + "altText": "Cette infographie décrit les différentes étapes possibles en cas de rupture conventionnelle. Sa version textuelle est disponible en cliquant sur \"Voir en détail\" (plus bas, à gauche).", + "fileUrl": "ruptureconventionnelle.pdf", + "html": "Étape 1: Proposition de rupture conventionnelle :
\nQui ?
\nComment ?
\nÉtape 2 : Entretien(s) :
\nPourquoi ?
\npour se mettre d’accord sur l’utilisation d’une rupture conventionnelle dans le but de mettre fin au contrat de travail
\npour définir les conditions de cette rupture (date de départ, montant de l’indemnité versée au salarié)
\nQuelles sont les modalités ?
\nL’employeur doit informer le salarié qu’il peut être assisté par un représentant du personnel ou par tout autre salarié ou, s’il n’y a pas de représentant du personnel dans l’entreprise, par un
Étape 3 : Signature de la convention :
\nQuand ?
\nComment ?
\naller sur le site TeleRC et “Créer une nouvelle demande”
\nremplir le formulaire en 3 exemplaires : 1 pour l’employeur, 1 pour le salarié, 1 pour l’administration (Dreets) pour l'
chaque exemplaire doit être daté et signé par l’employeur et le salarié
\nmême si ce formulaire suffit, une convention de rupture « annexe » peut également être signée pour fixer par exemple le maintien ou non d’une clause de non concurrence
\nDélai de rétractation : 15
Le délai de rétractation :
\nil débute le lendemain de la signature de la convention et se termine 15
pendant ce délai, le salarié ou l’employeur peut revenir sur sa décision et se rétracter par lettre recommandée avec demande d’avis de réception ou par lettre remise à l’autre partie en main propre contre décharge mentionnant la date de remise
\nen cas de rétractation, aucune justification n’est nécessaire
\nÉtape 4 : Demande d’homologation :
\nQuand ?
\nComment ?
\nenvoi dématérialisé du formulaire sur le site TeleRC
\nPourquoi ?
\nL’administration (la Dreets) va s’assurer du respect de la liberté de consentement des parties et des conditions prévues par le Code du travail : respect des règles relatives à l’assistance des parties, au droit de rétractation, au montant minimal de l’indemnité spécifique de rupture conventionnelle, etc.
\nDélai d’instruction : 15
Le délai d’instruction :
\nÉtape 5 : Décision d’homologation
\nQuelles conséquences ?
\nIl n’y a pas de
À noter : le contrat de travail continue de s’exécuter normalement pendant toute la durée de la procédure d’élaboration et d’homologation de la convention, et jusqu’à la date de rupture fixée. Le salarié peut prendre des congés payés entre la date de signature du formulaire et la date de rupture de son contrat. Il est rémunéré normalement pendant cette période.
\nCette procédure ne concerne pas la rupture conventionnelle des salariés protégés (délégués syndicaux, membres élus du
L'employeur et l'assistante maternelle ne peuvent pas conclure de rupture conventionnelle.
\n(1) Correspond à la totalité des jours de la
(2) Correspond à tous les jours de la
(3) Si le dernier jour du délai tombe un samedi, un dimanche, un
Lorsque l’employeur et le salarié conviennent de rompre le contrat de travail à durée indéterminée (CDI) qui les lie dans le cadre d’une rupture conventionnelle, la procédure spécifique suivante doit être respectée.
\nÀ noter : Le code du travail numérique propose un simulateur d’indemnité de rupture conventionnelle
" + }, { "source": "versions", "data": { diff --git a/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.test.ts.snap b/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.es.test.ts.snap similarity index 95% rename from packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.test.ts.snap rename to packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.es.test.ts.snap index 7d939e946d..6ba47eaff0 100644 --- a/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.test.ts.snap +++ b/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/idcc.es.test.ts.snap @@ -37,7 +37,7 @@ exports[`IDCC return idcc results for boulangerie 1`] = ` "answers.answer.keyword", ], "_index": "cdtn_test-v2_documents", - "_score": 14.4136915, + "_score": 14.4407215, "_source": { "cdtnId": "647c224c9b", "contributions": true, @@ -53,7 +53,7 @@ exports[`IDCC return idcc results for boulangerie 1`] = ` { "_id": "18", "_index": "cdtn_test-v2_documents", - "_score": 13.31033, + "_score": 13.33736, "_source": { "cdtnId": "16752da066", "contributions": false, @@ -67,7 +67,7 @@ exports[`IDCC return idcc results for boulangerie 1`] = ` }, }, ], - "max_score": 14.4136915, + "max_score": 14.4407215, "total": { "relation": "eq", "value": 2, @@ -84,7 +84,7 @@ exports[`IDCC return idcc results for pati 1`] = ` "answers.answer.keyword", ], "_index": "cdtn_test-v2_documents", - "_score": 14.146065, + "_score": 14.173094, "_source": { "cdtnId": "647c224c9b", "contributions": true, @@ -100,7 +100,7 @@ exports[`IDCC return idcc results for pati 1`] = ` { "_id": "18", "_index": "cdtn_test-v2_documents", - "_score": 13.042704, + "_score": 13.069733, "_source": { "cdtnId": "16752da066", "contributions": false, @@ -114,7 +114,7 @@ exports[`IDCC return idcc results for pati 1`] = ` }, }, ], - "max_score": 14.146065, + "max_score": 14.173094, "total": { "relation": "eq", "value": 2, @@ -131,7 +131,7 @@ exports[`IDCC return idcc results in correct order for banque 1`] = ` "answers.answer.keyword", ], "_index": "cdtn_test-v2_documents", - "_score": 15.278859, + "_score": 15.306967, "_source": { "cdtnId": "a25dfc974f", "contributions": true, @@ -147,7 +147,7 @@ exports[`IDCC return idcc results in correct order for banque 1`] = ` { "_id": "20", "_index": "cdtn_test-v2_documents", - "_score": 9.034006, + "_score": 9.072985, "_source": { "cdtnId": "ceb38cca3c", "contributions": false, @@ -161,7 +161,7 @@ exports[`IDCC return idcc results in correct order for banque 1`] = ` }, }, ], - "max_score": 15.278859, + "max_score": 15.306967, "total": { "relation": "eq", "value": 2, diff --git a/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/suggest.test.ts.snap b/packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/suggest.es.test.ts.snap similarity index 100% rename from packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/suggest.test.ts.snap rename to packages/code-du-travail-frontend/src/api/__tests__/__snapshots__/suggest.es.test.ts.snap diff --git a/packages/code-du-travail-frontend/src/api/__tests__/idcc.test.ts b/packages/code-du-travail-frontend/src/api/__tests__/idcc.es.test.ts similarity index 100% rename from packages/code-du-travail-frontend/src/api/__tests__/idcc.test.ts rename to packages/code-du-travail-frontend/src/api/__tests__/idcc.es.test.ts diff --git a/packages/code-du-travail-frontend/src/api/__tests__/suggest.test.ts b/packages/code-du-travail-frontend/src/api/__tests__/suggest.es.test.ts similarity index 100% rename from packages/code-du-travail-frontend/src/api/__tests__/suggest.test.ts rename to packages/code-du-travail-frontend/src/api/__tests__/suggest.es.test.ts diff --git a/packages/code-du-travail-frontend/src/api/__tests__/utils.test.ts b/packages/code-du-travail-frontend/src/api/__tests__/utils.es.test.ts similarity index 100% rename from packages/code-du-travail-frontend/src/api/__tests__/utils.test.ts rename to packages/code-du-travail-frontend/src/api/__tests__/utils.es.test.ts diff --git a/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/__snapshots__/service.test.ts.snap b/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/__snapshots__/service.es.test.ts.snap similarity index 100% rename from packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/__snapshots__/service.test.ts.snap rename to packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/__snapshots__/service.es.test.ts.snap diff --git a/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.test.ts b/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.es.test.ts similarity index 84% rename from packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.test.ts rename to packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.es.test.ts index 803da95428..739f85a11a 100644 --- a/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.test.ts +++ b/packages/code-du-travail-frontend/src/api/modules/agreements/__tests__/service.es.test.ts @@ -9,10 +9,7 @@ import { describe("Agreements", () => { it("getAllAgreements", async () => { - const result = await getAllAgreements( - ["title", "shortTitle", "description", "url", "slug", "source", "num"], - "shortTitle" - ); + const result = await getAllAgreements(); expect(result).toMatchSnapshot(); }); it("getBySlugsAgreements", async () => { diff --git a/packages/code-du-travail-frontend/src/api/modules/agreements/queries.ts b/packages/code-du-travail-frontend/src/api/modules/agreements/queries.ts index aebaceccc4..126dac7822 100644 --- a/packages/code-du-travail-frontend/src/api/modules/agreements/queries.ts +++ b/packages/code-du-travail-frontend/src/api/modules/agreements/queries.ts @@ -1,7 +1,16 @@ import { SOURCES } from "@socialgouv/cdtn-utils"; -export const getAllAgreementsQuery = () => { +export const getAllAgreementsWithContributions = () => { return { + _source: [ + "title", + "shortTitle", + "description", + "url", + "slug", + "source", + "num", + ], query: { bool: { filter: [ diff --git a/packages/code-du-travail-frontend/src/api/modules/agreements/service.ts b/packages/code-du-travail-frontend/src/api/modules/agreements/service.ts index ac623df46f..1f2241bb0b 100644 --- a/packages/code-du-travail-frontend/src/api/modules/agreements/service.ts +++ b/packages/code-du-travail-frontend/src/api/modules/agreements/service.ts @@ -3,31 +3,24 @@ import { getAgreementBySlug, getAgreementsByIds, getAgreementsBySlugs, - getAllAgreementsQuery, + getAllAgreementsWithContributions, } from "./queries"; import { ElasticSearchItem } from "../../types"; import { AgreementDoc, ElasticAgreement } from "@socialgouv/cdtn-types"; -import {orderByAlpha} from "../../utils/sort"; +import { nonNullable } from "@socialgouv/modeles-social"; -export const getAllAgreements = async