Skip to content

Commit

Permalink
(PC-33502)[PRO] style: Adjust collective offer creation form styles
Browse files Browse the repository at this point in the history
  • Loading branch information
gmeigniez-pass committed Dec 31, 2024
1 parent 4021a2e commit 124143f
Show file tree
Hide file tree
Showing 25 changed files with 249 additions and 177 deletions.
71 changes: 59 additions & 12 deletions pro/cypress/e2e/createCollectiveOffer.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,17 +55,19 @@ describe('Create collective offers', () => {

cy.findByLabelText('Lieu *').select(venueName)

cy.findByLabelText('Domaine artistique et culturel *').click()
cy.findByLabelText('Ajoutez un ou plusieurs domaines artistiques *').click()

cy.get('#list-domains').find('#option-display-2').click()
cy.findByText('Type d’offre').click()
cy.findByText('Quel est le type de votre offre ?').click()

cy.findByLabelText('Format *').click()
cy.findByLabelText('Ajoutez un ou plusieurs formats *').click()
cy.get('#list-formats').find('#option-display-Concert').click()
cy.findByText('Type d’offre').click()
cy.findByText('Quel est le type de votre offre ?').click()

cy.findByLabelText('Titre de l’offre *').type(newOfferName)
cy.findByLabelText('Description *').type('Bookable draft offer')
cy.findByLabelText(
'Décrivez ici votre projet et son interêt pédagogique *'
).type('Bookable draft offer')
cy.findByText('Collège - 6e').click()
cy.findByLabelText('Email *').type('[email protected]')
cy.findByLabelText('Email auquel envoyer les notifications *').type(
Expand All @@ -89,9 +91,9 @@ describe('Create collective offers', () => {
cy.get('#list-institution')
.findByText(/COLLEGE 123/)
.click()
cy.findByText('Établissement scolaire et enseignant').click()
cy.findByText("Renseignez l'établissement scolaire et l’enseignant").click()

cy.findByText('Établissement scolaire et enseignant').click()
cy.findByText("Renseignez l'établissement scolaire et l’enseignant").click()

cy.findByText('Enregistrer et continuer').click()
cy.findByText('Enregistrer et continuer').click()
Expand All @@ -111,9 +113,36 @@ describe('Create collective offers', () => {
cy.wait('@collectiveOffers')

const expectedResults = [
['', '', '', 'Titre', 'Date de l’évènement', 'Lieu', 'Établissement', 'Statut'],
['', '', '', newOfferName, '10/05/202518h30', venueName, 'COLLEGE 123', 'brouillon'],
['', '', '', offerDraft.name, 'Toute l’année scolaire', offerDraft.venueName, 'DE LA TOUR', 'brouillon'],
[
'',
'',
'',
'Titre',
'Date de l’évènement',
'Lieu',
'Établissement',
'Statut',
],
[
'',
'',
'',
newOfferName,
'10/05/202518h30',
venueName,
'COLLEGE 123',
'brouillon',
],
[
'',
'',
'',
offerDraft.name,
'Toute l’année scolaire',
offerDraft.venueName,
'DE LA TOUR',
'brouillon',
],
]

expectOffersOrBookingsAreFound(expectedResults)
Expand All @@ -138,8 +167,26 @@ describe('Create collective offers', () => {
cy.findByText('Rechercher').click()

const expectedNewResults = [
['', '', '', 'Titre', 'Date de l’évènement', 'Lieu', 'Établissement', 'Statut'],
['', '', '', newOfferName, '10/05/202518h30', venueName, 'COLLEGE 123', 'publiée'],
[
'',
'',
'',
'Titre',
'Date de l’évènement',
'Lieu',
'Établissement',
'Statut',
],
[
'',
'',
'',
newOfferName,
'10/05/202518h30',
venueName,
'COLLEGE 123',
'publiée',
],
]

expectOffersOrBookingsAreFound(expectedNewResults)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ describe('CollectiveOfferCreation', () => {
).toBeInTheDocument()
expect(
screen.getByRole('heading', {
name: 'Qui propose l’offre ? *',
name: 'Qui propose l’offre ?',
})
).toBeInTheDocument()
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export const FormAccessibility = ({
const { setFieldValue } = useFormikContext<OfferEducationalFormValues>()

return (
<FormLayout.Section title="À quel type de handicap votre offre est-elle accessible ? *">
<FormLayout.Section title="À quel type de handicap votre offre est-elle accessible ?">
<FormLayout.Row>
<CheckboxGroup
group={useAccessibilityOptions(setFieldValue)}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ interface FormContactProps {

export const FormContact = ({ disableForm }: FormContactProps): JSX.Element => {
return (
<FormLayout.Section
title="Comment les enseignants peuvent-ils vous contacter ? *"
>
<FormLayout.Section title="Comment les enseignants peuvent-ils vous contacter ?">
<FormLayout.Row className={styles['phone-number-row']}>
<PhoneNumberInput
name="phone"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export const FormContactTemplate = ({
const ariaDescribedBy = 'error-contactOptions'

return (
<FormLayout.Section title="Comment les enseignants peuvent-ils vous contacter ? *">
<FormLayout.Section title="Comment les enseignants peuvent-ils vous contacter ?">
<FieldSetLayout
legend="Choisissez le ou les moyens par lesquels vous souhaitez être contacté par les enseignants au sujet de cette offre :"
name="contactOptions"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,21 @@
@use "styles/mixins/_rem.scss" as rem;
@use "styles/mixins/fonts-design-system.scss" as fonts-design-system;

.container {
margin: rem.torem(48px) 0;
}

.banner {
margin: rem.torem(16px) 0;
}

.container {
.subtitle {
@include fonts-design-system.title2;

margin-bottom: rem.torem(16px);
}

.row-container {
display: flex;
gap: rem.torem(8px);
margin-bottom: rem.torem(8px);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { useFormikContext } from 'formik'
import { ChangeEvent } from 'react'
import { ChangeEvent, useId } from 'react'

import { OfferEducationalFormValues } from 'commons/core/OfferEducational/types'
import { useActiveFeature } from 'commons/hooks/useActiveFeature'
Expand Down Expand Up @@ -28,6 +28,9 @@ export const FormDates = ({
const areNewStatusesEnabled = useActiveFeature(
'ENABLE_COLLECTIVE_NEW_STATUSES'
)

const subtitleId = useId()

const minBeginningDate = dateCreated ? new Date(dateCreated) : new Date()
const minDateForEndingDate = isDateValid(values.beginningDate)
? new Date(values.beginningDate)
Expand All @@ -45,7 +48,10 @@ export const FormDates = ({
: 'désactivée'

return (
<FormLayout.Section title="Quand votre offre peut-elle avoir lieu ? *">
<div className={styles['container']}>
<h2 id={subtitleId} className={styles['subtitle']}>
Quand votre offre peut-elle avoir lieu ? *
</h2>
<RadioGroup
disabled={disableForm}
group={[
Expand All @@ -54,12 +60,12 @@ export const FormDates = ({
value: 'permanent',
},
{
label: 'Pendant une période précise uniquement',
label: 'À une date ou une période précise',
value: 'specific_dates',
},
]}
variant={RadioVariant.BOX}
legend="Quand votre offre peut-elle avoir lieu ?"
describedBy={subtitleId}
name="datesType"
/>
{values.datesType === 'specific_dates' && (
Expand All @@ -68,7 +74,7 @@ export const FormDates = ({
{`Votre offre sera ${deactivateWording} automatiquement à l’issue des dates
précisées ci-dessous.`}
</Callout>
<FormLayout.Row className={styles.container}>
<FormLayout.Row className={styles['row-container']}>
<DatePicker
name="beginningDate"
label="Date de début"
Expand All @@ -94,6 +100,6 @@ export const FormDates = ({
</FormLayout.Row>
</>
)}
</FormLayout.Section>
</div>
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ describe('FormDates', () => {

expect(
screen.getByRole('radio', {
name: 'Pendant une période précise uniquement',
name: 'À une date ou une période précise',
})
).not.toBeChecked()
})
Expand All @@ -156,7 +156,7 @@ describe('FormDates', () => {
})

const screenSpecific = screen.getByRole('radio', {
name: 'Pendant une période précise uniquement',
name: 'À une date ou une période précise',
})

await userEvent.click(radioPermanent)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ export const FormNotifications = ({
const { values } = useFormikContext<OfferEducationalFormValues>()

return (
<FormLayout.Section title="À quel email le pass Culture peut-il vous envoyer des notifications ? *">
<FormLayout.Section title="À quel email le pass Culture peut-il vous envoyer des notifications ?">
<FieldArray name="notificationEmails">
{({ remove, push }) => (
<>
Expand Down
Loading

0 comments on commit 124143f

Please sign in to comment.