diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index f36cb0a0..7cf5916c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,15 +1,26 @@ name: Release + on: workflow_dispatch: push: branches: [master, main, alpha, beta, next] + +permissions: + id-token: write # Required for OIDC token generation + jobs: release: name: Release runs-on: ubuntu-latest steps: + - name: Get GitHub App Token + id: token + uses: SocialGouv/token-bureau@main + with: + token-bureau-url: https://token-bureau.fabrique.social.gouv.fr + audience: socialgouv - uses: socialgouv/workflows/actions/semantic-release@v1 with: - github-token: ${{ secrets.SOCIALGROOVYBOT_BOTO_PAT }} + github-token: ${{ steps.token.outputs.token }} author-name: ${{ secrets.SOCIALGROOVYBOT_NAME }} author-email: ${{ secrets.SOCIALGROOVYBOT_EMAIL }} diff --git a/.kontinuous/env/dev/templates/server.sealed-secret.yaml b/.kontinuous/env/dev/templates/server.sealed-secret.yaml index 0e6ca803..b0da30de 100644 --- a/.kontinuous/env/dev/templates/server.sealed-secret.yaml +++ b/.kontinuous/env/dev/templates/server.sealed-secret.yaml @@ -42,6 +42,15 @@ spec: #BCE BCE_URL: AgCqlK4k2JFDjSa37o2zoon5aCmkFlRTNH/oA5enfna6IZGoXMJOH0EOTI9Yc63zeMrPPqHcnbMw3h5ZnDiQCxgWD+z4vKhjh9XfsDQL3KDdXmvFhnyMWSl+8rvr56b1fH1gSEoC0e/sgpwE+fqv723AcPOMZRrl8ama1gZ+T92gcChQ6tIFSkKc6x9O2o94yfAbACGH+kLV5rWegnde2iK6adlVUraHtHpOvsOnzr4RrUd2alJWQHTUCan1L6IQX1eA2HfYUUhKC4tJ6COQPgBgNTCFHYky+BrVGscZjmGumr4A4Av9FbpCQHc5iBKEac2Zl2vooYMU1dbUFE01SAe1tBSnts2aRAHEH/fB34vUzIVWAgya8jUlHaabwfe+e1c5kxVcNyZLPNfEgRUxp1HYCSgU4nbkDOAP+OV4Cue99Ye93X5YQRj0Bi6ASpxXT2nE1lP1EKLewLB8at4mPvkRKBI2vfIXfA6SXKal2wfo1vdGzz7VcmeGZKYetBsfJFrEhpgVsuQOPh/R9nR+zaJSG0QbKoR9An889zV5IW26I3CRra47cZ3gNI08MIz2NXvKDuQFsBL0EAZ85JzNM8KjVRRJ40EwqdatSwxvyP09qTgwS8JXBE2nTm6G5t9L3h3bfOO6zdV8SwfHlRfjmzCwy7Rp4nLUlN36CrydyKh+WGYW1IHpDwImmZOhgOdbUP4amde6hePF3qbmR0xusTbBuBU+kziHDFxaBtEOf/bihbgjruMnz0N+ow== BCE_TOKEN: AgCps9Mhf3nJXIMAlJFMz5uc9nrDLt300W9DhppI0s9Y+7psqYSGFJ+jUiAzBhxgrE4fHxHOFEz1yuBtnAol0FIK3hZpGSXVMC84vTL/6H80YEAEHEez3vVvTGiejGWmyjxeYnq8OTybstXJl2VOOk1zQIaKCzYpcvjaW0DHDgCuxSmI+JOT2h89YPgv5IhSphu0u9f9Xzv13Kv8Ds7sKyLpkQCoylWtlF3MDSg656leBoLVk8Vj3olh18pKjujRrqZYgdyA36KFxy+Z8jbGUuld7I6bqPTCdX9vo79s5stRn39Hrw5o/D+ZjVFYBDC7KnqGlz+KGJTI0BFHw1I1qC1qgN3MpvINlKb6QhXWg9osr1Fe5JmGc1cu8Ltx67x2g5ScgCfM5HFpJAIw2Cph/lGs0WsuXp44Cktyel8wxHbi5nzBUYPnjVqNc8iqxaHPKPucuiVnonojAg/U7Xuq5v3z5+bj2JalHXCISB2xWH0QfLJfzLl0nj7sbBf0q1L+W0hKQkraHvDJ8PtnkX2LkpyXSOChnS8lN1++ZH2b8sS2bEUP6konaqgLyuOAAPNOJtwVX/2Al5L981XuUyUeHkG4gGapolPc4rtHVpa6AD6DqhbM8JLJWof1tBCnWfRYujW/zglXtd4vz7eyLz4OxEXOYe5CRZ0nfTLKtVK52WJX+TJ8FhRsnBWu4Z72Pw70U7zJILiWnP1HzOm8CznDP6/XAJJDdLDIn9hOpHzn7xqVQvRlta/UyuoRy+YdRUksaLXxJrYI35ZGG4niTpS/YKQtdqiHOAcWZSp52FhtliiT1E5HK1AINLtLTCbpLPoqnZiFx+ONYf+duzVX01x/C9kimBFvDIEweKsAh+a0ht3LBws6ynhkhCmSavLqT+nlP8zs6vc455RKNFfKhC8uCn8WIsIWG2s/MpteBpJpA1bqdyqHGrgnh9jY18NrDelNtXqILpLFs3usn+IdqzcNrSD9yoZEYiQhuyBmPAaNsqE5xTwaQMjg8Vzu8IRG4dD57oudMdpGErkvncX/dvyt0yAAG3Jbfj3frdXpo7Vj+1jpuvOhSsZPhBwgjjld+ccY98Xm5vljLnHFiQioIoWbjNZw/S1uo4Q6mrDxNAZLXbTwjPE7BgLknHT0lMrMva8Pr+Ej9yn/LENmVCiHiwmmkWucaiXu4/Phom8rA+3P3kMiZfETHnZmMb4Zumqk1nSc89fcEd7S5tGmGYlY+ofeP3d5pdUQ+YJEWJtyvnKL5QfCpfkgNOERx5bqL0xOLKaZ387vD0DKUDfkdvAbvVTbRLJmLc/Yc9lEFNrmHn0Ej1B5+QhheMvsjFFiu2VacOX+2Wl7qTOL1WWvR2qCn5GHuO+nroykfl0OVaEsuhWJK/mSzpIcHLF5NbNk+IIJe+T3Q3oSMGThUmLhUX70axJF/qMxg1vB/7gNMwK03bbqldkVVzy3jZxb3bPpKND3y4zBx4V61qdE+gQxuEAwFBss87AH2Mohh/0KI7OINhibA8s9V65Xn96uFIgpks0YXFIvDOG6rPdqYyEiNznoJB51SxajLYZQO//ko3IBexJogCIxq4zdIAcAJMdhKbDYbgWGH2R6LeC6BhcDupr0g5UwZOUZaVrjbk/6nuE7rQS3i3uXOVMjg0uL5dCfWb1AfHSZnGNzeCOq1XCpQKu+0zXJaNq/b3Ohyiovf1Gt/qpofidULi0RgVHaRbcz3iN+xqVP1BpLLnC10Uwg4B9wrby2r5BQzb+xe9s0a0vHRJzIf8LkdBUjCdaY2QElzm7E8wb9dOqHvdMSmAvY+jT9WjY+Vh6/whKPrnztjdDaIbJ4LT8SyZYxjDA550uitOVXdVySy3vxzVmOPREAwerCCKq/ + + # Proconnect + PROCONNECT_CLIENT_ID: AgC620JKWBgExrZaXMajDG6pqyXdwqfIacIob1ThryTJk3CHlUGrLvk9qSMrD88R1DDUR7EddLO51D14hWmHia1VIAcXtIOSCOdaR76VBrxf+9sDyfM+OfDUTL0nBhxHyVaArXKqujdWfI7J0wKZqX1Um2CdujeiJUDhvHwqAbsvxDDOlrHiCcABa6TqdRXVgR7r4dnZHUgFoQrnyrk369LemnmUhJ+yJhwA3hLSvK57KMQSMasqhYOhiMkWwCep0fujW4MvG8plfQoUHyuLcJ9SjFnkkJKy8nC3QGHvw/pTcAG8YLlqLJSODxocTSbr8+yTRcI1Zs4SsSbKhC22owlamAxXOjQSEihOYaJsUWTKA3++i4XOhPlr6MFW4AMVYsxAPf6zeWNhqknQ+vURO2vMGXjD7WWCNSFektDVTjCQ9e7/VJf81Z0Ci7Kxjdcf2kJ3sdCgZ80aljsexXHcGDZmnIKv/9rVuQzj7IMaBvbcdEwE7Acv0FVFBE3OwtbB8Pg+B/uKr6d+6zodei7WQv0fvfUWrbJWbAVhDiiEdAi/shKRdTGyKAu62DgTOYzbZwITmsiYM8kza/ri2lXPicX1H1vUs/mL9p2TbI+Cx44C/UDPJgBnr7ics+rQwOIDD8RUAJFapf59sCHwz6OX93zwi6a8MkVCjJMbni1BEKS7SxP/5ES4zUZVd871/f0W9jUcIZG1/oYgibHsK+qAQJrrP3ix61ZhzPwMkS75B8D8sHh9iDk= + PROCONNECT_CLIENT_SECRET: AgCE49DDy95vI43CxvP04HtGfh+KbLU8uBiSkoZDikLNUtjtPVhvG/6YbpKrxu0K4nsLcrejc0QSaJBVr8Xacii3qBl7rdK8CCd/F49hKcg5DdrI6SIOdSxLxaNmrGMhqfoQQ8uFSGXGK8uNoeYQ5C9e0riYvQjWlSLeUAA5+qh97QnbFqE2nWD0LvULQ+BCHbfaxhOHqnzFGccOVWJrLdd+obJb3BAcMKwvLkTzSSgpseZWahbxpkgb6Qdy0j28/HWOsvEk3EMXxXkGmtlJ1uvY/5XFeYEUcQzQrBDIIUoQ+D0HswGC4pxaSdmrXjhHO0XeWfSKFvXtJUaxUoC8bWLvtGUckGFB5XLfYXfri3Kc7wnEAlvhkLx867Aw41pVgRaPFEISYb40teIlgAzROW6sejjHqRCxBTAF12sZ2vus/VLtnTtuvdHVbRCvVZBbiPeHH4Ba5yCAbawF08Y2z1BQ6+JdM6P1fexaM5zq9s6pmWygRSG0winDyLPdmhumuTUJzjgnjS7bkn1sGMaY7qWHDogFh2h/28uhLsK7NTERHpd+w7tICWJYfJBAYmbYcSSEB5saZbBO3daMg7riR3jO+KZcx/dIq1gqMhq3U3pZRTmH1px3Tq5MbsGGD7v0z5c4kksXWR0zEaCc8JN1DVArT/QNAhOVPWbUh+dR6i6OfDN8djc+xCvk7aOpjcigR/pVpXtNBVk8dDH3O2vfpr7fHwCXx7g05n/GoeKabC3osqpOKy3DEOm2ijclTg9OQy6xPl1VDA+NSUdiPRZK9KqN + PROCONNECT_REDIRECT_URI: AgDR/omwxeqKeZX/yvoB0HOLA0XIP/k5NsicbZ6/OOCezQflnMhXET5nu/6gE72YOsNio6vFETOxCNUV39gBj6Y0dduf8/CmviFZlwhcK4NgzhGKP+b0Pm7eYIHutk2yPdQsGgpJT3IQTwrU/VTwN9PTtRkki3RK0U0ZpCnmqRmYaKO7MNlbefGeZy8eU0mKl+skjeqZ38DtbUArfP6qfodz445sRhZHBgq0EtfdkDjsP7MyCcQgPi2Bq7P2jmW4L9iDKxfFSTkXyeQ48sUUAfObrPU3g0E3Blb1kzAfsrZOLJZpkxSqAVIlY3/0a9vZU06CXpgTcMKfefj9/Iw1IB4aj8cVYGDKQCjXmWlNbb2PH8XvaXQ5qcrvI4eB1lCDtMnvStrjmeTeZ6qZrJGf/Bib8Vr4D26rO7KNWK6fe042XC1qwich+DSzmTVG2QEVJmj+kYIt8cve/QT6rHygU7zGihsAilVyY47W03l1zueDA5Uka7gTGIE9UK3pSdn0E4wn7quNpvG50LlyBCkErK3KRGafheIZsox7DPp52aNZ2T34dN0y1nzKL6c+XaNlIbswnJEaeZWwF8IhAsBqp7DESeNYGO8L5lXYeRf7bPThfS038xNFlRzZUjY3F6OxOf/WqbXvfZ/4yoZx62zIWmMbXMYUPAFun73VE863gacWUO8OHbp6izvC5a/94rYtEI2LhFakhLalkMyQil1al6RW1DBGdKm/6VqNmhmLF/LGNySQsbPcO5rfdDohhfbv2scJdf54thgKCD6TyD5i5UgRe4t1kPGfRS7cqGXg7ZB3XpkqrQ== + PROCONNECT_URL_DISCOVER: AgDUkP38wnFJoLQaTp4bkT8AavvG4yFvEmdGWtRFDUw4TPCg83gloloUZh3TZvIYyJaLIayNdScZm1zIiiGm4lDoMmMPEGZTqc/QtSb4qLHth44i6/7/5+ju+dbpkblVkPCBbEc5E81oQsJIeEv9Pv3ob5XMTiwjKlm7eiHADqev0+LE/qfaS8yI3j2cloo3QRvxp3e3cfi+D6IrCxw0L4vzg4WKJ+i3HxAyLLXWRVoqljF18kzyoy1rMUmmPdU6Gb+xrRD20ONJFiJLevAa+ZWAiugVlYl8Yr/MsPjwpCtsnAPtD96gUgprrYJxZ6fwz+3yuMo9BXDn8VPLhoUPRIrGr94Ft7SFoXkRlu/S9RhDkw/8KhTpE1KdyEuAOfLPcmW09UPMUbDhjGWOalfJxo0SPsAcbNBDIDFMzJ32WVwqdwPfUn3kjJpPP5gRdkG9xZIH7lBEInykXbJgFIRKXne210o8e9Ej7EJZ5GPP++PZRzQjGOQsPS1k4qWR9iwEb7E9GdULR5NatWAWD07vgjuOkjWnL8HBQlx1G1P4va4nCju6B5AFzMvBSkIVk0ahLFVbztfBIY4NuIOmjYiJ2y5BvodhDHs1RaDf6JjlPgxY/PrPxGXQDPNrznhrGhoeg6ABAChyBMje3wLvA4AtRtoWEl6wf7nXms1QprpXXg+/GuD8xFvDMybjumOvYmzcKvIildfyWl5ec/qbNkyXKNNyp/DFR9abwaCvUcDFXnpH4usCYuUaboqH6R5HAzJw/YY2S6zu3KleUVVclfRW01a5fB8ks1JydaexQnAfuu7+ + PROCONNECT_POST_LOGOUT_REDIRECT_URI: AgCTAmb0vAd7QLm7PphMdm17uuhvGdNVCpa3gxvu+hVpErlC6ZB1JhsdDkRYzHdt7ijEvqifu0m4TS7U4nE5EgFx30FgksNIk7086QoLN2WX3soPPez4w2rLNscOK59JOd9vbY0YqkxzL49dRzfOENSb1QPq3qS8FKarqeNwcjrF73CntzQ2PfhlhUoDPs4C7SxVVRC2TWyldjBmrrTlHdHA9jtwLHqZD8PPzbg0c3kyEPZAyz95KMC2J1oE3sBGYaallqEcpjhlaB6ayesiNc/QI41qUwq8++0RagKT2cdLTdHDagLzaSnGzxwltqtuoCgStwPx4PjB6VJWMVR4sHzO2mpB4920oO3nq6kJnA8hEb7DqYw25YENJs8YuPfED2SGIfTu3CSZS2fJIk5145tB3l1aRJVAUapNAJuSuywKG0APei/Vt0pThzsi4ajULSpI1a6mNHHq+HqYjpuUh8FO2p3pYRRu0FrE8FSpOY76Zoq8cjj6AXuDOofcDJQGCUIs2n1OX8/YjsViQYt741hnPlS9BSWWktwzd0ZCbQH0Qhpi1usOyJR8W3lbWKB1bjp44qygzVoTCIj+fNM2cL2awQCIAD2qA6Iv886jHQgvfQ2Spgd8hjQnIByjC9s8MPVuuavn3fJHCCBzck4HJlFM3qvRPfLiZb3WolC/C6KBDpqXL3JA1OG4YLayBAsJ7UD3wH/ySv/ItkGtJB0V4lBGMeZjpnhSjpH2+G1MCvo2xrQN/SWBEdw0lSZp1vcKFKonZ3jie3IO8wQx6ae/E3pajOi34DZimm8V0nUlnkzv + SESSION_SECRET: AgCXSLdEhhs/ehEG6fQVxGfTp+RNt+hJZ0jzWZZIpHUrPThCEJehGLUIOOwjTUtOSabPReQoYi2IesC3HP15lSAjXRdWHj9SAnxjkuIGuxeHB3VD0unldG7Wbe58G517vB+8ZSOCGL5bdW/Gx8LH09SKhQh1BQGSRvfj62Q6dBHjgqapMhyPxi9SXgb8xZjuPD5j+2Hg+Rn/OqZvyfaDDLpcQRUyz5eKddzszTIxJ+LmOU0UJPu/b0P2qk1rW89ah7NT5gH8PdzGSsCkoo8PRnS/MwXHMyGAia0Rj6X7gd6kYBURP35+oAHvXvU+8PN8fYUHdAZ+WZArv372QbIrasjRrsEBZa4i4p9m2gtGwWpjJvAta5d0I83KzAfjzuTc2WpV9SEhM7vmbGmFH4sdaAH/nZr/7lPtFqsGXHHJu2tlrEozjoOOTdA92wucc22AFlHdWHbq/nAQ0sXdhl+lMsZ4LL9silUuuyz/SZsSIYePL+DAU0m8oCMmRV4fMjfxesG4OyDA/sGrzu7nJoeyvRaFBdG0GAM9tTwYBUefzhj+I2wqtjt0fH85tVF9jJaeHB8iXjz6ccXdgGonUyklptA4bJZVvnKdON2N9nuIsoKMxd8qh8gHPrx+Gvmlna7aNGiLlXcY7l6TYzX3gWVU/CXz80BKPKxq9C/ujExDnn3xHTdnn0ldLZyBmFLS/iD3jTXFcIhcokRVc80= + template: metadata: annotations: *a1 diff --git a/CHANGELOG.md b/CHANGELOG.md index acb20a5b..7732c859 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [27.106.3](https://github.com/SocialGouv/fce/compare/v27.106.2...v27.106.3) (2025-01-20) + + +### Bug Fixes + +* **ci-cd:** use token-bureau ([#360](https://github.com/SocialGouv/fce/issues/360)) ([304cd39](https://github.com/SocialGouv/fce/commit/304cd395444920e520fa3975e411d54dedaed392)) + ## [27.106.2](https://github.com/SocialGouv/fce/compare/v27.106.1...v27.106.2) (2024-11-07) diff --git a/package.json b/package.json index 5449b949..822990dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fce", - "version": "27.106.2", + "version": "27.106.3", "description": "", "author": "commit42", "private": true, diff --git a/src/client/src/components/DataSheets/Sections/Enterprise/EnterpriseRelationship/AccidentTravail.js b/src/client/src/components/DataSheets/Sections/Enterprise/EnterpriseRelationship/AccidentTravail.js index 5e01b23f..387dabbf 100644 --- a/src/client/src/components/DataSheets/Sections/Enterprise/EnterpriseRelationship/AccidentTravail.js +++ b/src/client/src/components/DataSheets/Sections/Enterprise/EnterpriseRelationship/AccidentTravail.js @@ -34,10 +34,7 @@ const AccidentTravail = ({ entreprise }) => { return (
- +
{
+
)} diff --git a/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.gql.js b/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.gql.js new file mode 100644 index 00000000..94d08764 --- /dev/null +++ b/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.gql.js @@ -0,0 +1,38 @@ +import { gql, useQuery } from "@apollo/client"; +import { pipe, prop } from "lodash/fp"; + +import { BCE_CLIENT } from "../../../../../../services/GraphQL/GraphQL"; +import { mapQueryResult } from "../../../../../../utils/graphql/graphql"; + +const AidesFinancieresQuery = gql` + query GetAidesFinancieresParSiret($siretValue: String!) { + fce_ademe_aide( + where: { + siret: { + # relationship field on fce_ademe_aide + siret: { _eq: $siretValue } # the actual scalar column in fce_etablissements + } + } + ) { + dateConvention + objet + Nom_de_l_attribuant + montant + nomBeneficiaire + notificationUE + siret { + # must provide nested selection since it's an object + siret # the scalar field in the fce_etablissements table + } + } + } +`; + +export const useAidesFinancieresData = pipe( + (siretValue) => + useQuery(AidesFinancieresQuery, { + context: { clientName: BCE_CLIENT }, + variables: { siretValue }, + }), + mapQueryResult(prop("fce_ademe_aide")) +); diff --git a/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.jsx b/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.jsx new file mode 100644 index 00000000..affbe279 --- /dev/null +++ b/src/client/src/components/DataSheets/Sections/Establishment/Helps/Subcategory/AidesFinancieres.jsx @@ -0,0 +1,90 @@ +import PropTypes from "prop-types"; +import React from "react"; + +import { useRenderIfSiret } from "../../../../../../helpers/hoc/renderIfSiret"; +import { formatChiffre } from "../../../../../../utils/donnees-ecofi/donnees-ecofi.js"; +import LoadableContent from "../../../../../shared/LoadableContent/LoadableContent"; +import Value from "../../../../../shared/Value"; +import NonBorderedTable from "../../../SharedComponents/NonBorderedTable"; +import { useSortableData } from "../../../SharedComponents/NonBorderedTable/hooks"; +import SortableButton from "../../../SharedComponents/NonBorderedTable/SortableButton.jsx"; +import SeeDetailsLink from "../../../SharedComponents/SeeDetailsLink"; +import Subcategory from "../../../SharedComponents/Subcategory"; +import { useAidesFinancieresData } from "./AidesFinancieres.gql"; + +const AidesFinancieres = ({ siret }) => { + const { loading, data, error } = useAidesFinancieresData(siret); + const { items, requestSort, sortConfig } = useSortableData(data, { + direction: "descending", + key: "dateConvention", + }); + const shouldNotRender = useRenderIfSiret({ siret }); + + if (error || loading || shouldNotRender) { + return null; + } + + return ( + + + {items?.length > 0 && ( +
+ + + + + + + Beneficiaire + Objet + + + + + + + {items?.map((aide) => ( + + + + + + + + {aide?.objet} + {} + + ))} + + +
+ )} + {items?.length === 0 && ( +
+ {"Aucune aide financières connue"} +
+ )} +
+
+ ); +}; + +AidesFinancieres.propTypes = { + siret: PropTypes.string.isRequired, +}; + +export default AidesFinancieres; diff --git a/src/client/src/components/DataSheets/Sections/Establishment/Relationship/WorkAccident.js b/src/client/src/components/DataSheets/Sections/Establishment/Relationship/WorkAccident.js index 4df266c7..88214efa 100644 --- a/src/client/src/components/DataSheets/Sections/Establishment/Relationship/WorkAccident.js +++ b/src/client/src/components/DataSheets/Sections/Establishment/Relationship/WorkAccident.js @@ -13,10 +13,7 @@ const WorkAccident = ({ siret }) => { return (
- +
{ const [sortConfig, setSortConfig] = useState(config); const sortedItems = useMemo(() => { - const sortableItems = [...items]; - if (sortConfig !== null) { + const sortableItems = [...(items || [])]; + if (items && sortConfig !== null) { sortableItems.sort((a, b) => { let aValue, bValue;