Merge branch 'trunk'

This commit is contained in:
Vincent BRIDIER 2026-10-23 15:51:35 +02:00
commit ad4218da01
11 changed files with 472 additions and 389 deletions

View file

@ -1,3 +1,2 @@
#!/bin/sh #!/bin/sh
npx commitlint --config node_modules/@uwil/husky-config/commitlint.config.js --edit $1
npx --no -- commitlint --config node_modules/@uwil/husky-config/commitlint.config.cjs --edit $1

View file

@ -82,7 +82,7 @@ class StaticPageController extends Controller
public function unveil(): \Illuminate\Contracts\View\View public function unveil(): \Illuminate\Contracts\View\View
{ {
$staticPageModel = StaticPage::query()->where('type', StaticPageType::unveil)->first(); $staticPageModel = StaticPage::query()->where('type', StaticPageType::unveil)->first();
$sectionModels = Section::query()->where('page_id', $staticPageModel->id)->get(); $sectionModels = Section::query()->where('page_id', $staticPageModel->getKey())->get();
$historicalMilestoneModels = HistoricalMilestone::query()->orderBy('year', 'ASC')->get(); $historicalMilestoneModels = HistoricalMilestone::query()->orderBy('year', 'ASC')->get();
/** @var \Illuminate\Database\Eloquent\Collection<array-key,\App\Models\Site> */ /** @var \Illuminate\Database\Eloquent\Collection<array-key,\App\Models\Site> */
$siteModelList = Site::query()->orderBy('order')->get(); $siteModelList = Site::query()->orderBy('order')->get();

View file

@ -56,7 +56,7 @@ class StoreStickyRequest extends FormRequest
'type' => trans('validation.custom.type'), 'type' => trans('validation.custom.type'),
'title' => trans('validation.attributes.title'), 'title' => trans('validation.attributes.title'),
'anchor' => trans('validation.custom.anchor'), 'anchor' => trans('validation.custom.anchor'),
'color' => trans('validation.custom.color'), 'color' => trans('validation.custom.color'),
]; ];
} }
} }

View file

@ -1 +0,0 @@
module.exports = require('@uwil/husky-config/commitlint.config.cjs');

1
commitlint.config.js Normal file
View file

@ -0,0 +1 @@
export default { extends: ["@uwil/husky-config/commitlint.config.js"] };

View file

@ -88,7 +88,12 @@ spec:
lifecycle: lifecycle:
preStop: preStop:
exec: exec:
command: [ "/bin/sh", "-c", "kill -s TERM 1; while test $(ps ax | grep -v grep | grep bash | wc -l) -gt 0; do sleep 2s; done" ] command:
[
"/bin/sh",
"-c",
"kill -s TERM 1; while test $(ps ax | grep -v grep | grep bash | wc -l) -gt 0; do sleep 2s; done",
]
resources: resources:
limits: limits:
cpu: "${APP_CI_CPU_LIMIT}" cpu: "${APP_CI_CPU_LIMIT}"
@ -97,21 +102,21 @@ spec:
cpu: "${APP_CI_CPU_REQUEST}" cpu: "${APP_CI_CPU_REQUEST}"
memory: "${APP_CI_MEMORY_REQUEST}" memory: "${APP_CI_MEMORY_REQUEST}"
command: command:
- "bash" - "bash"
args: args:
- "k8s-queues.sh" - "k8s-queues.sh"
envFrom: envFrom:
- configMapRef: - configMapRef:
name: ${CI_PROJECT_PATH_SLUG}-config-map name: ${CI_PROJECT_PATH_SLUG}-config-map
volumeMounts: volumeMounts:
- name: storage - name: storage
mountPath: /app/srcs/storage mountPath: /app/srcs/storage
imagePullSecrets: imagePullSecrets:
- name: docker-registry-credentials - name: docker-registry-credentials
securityContext: securityContext:
runAsUser: 33 runAsUser: 82
runAsGroup: 33 runAsGroup: 82
fsGroup: 33 fsGroup: 82
fsGroupChangePolicy: "OnRootMismatch" fsGroupChangePolicy: "OnRootMismatch"
volumes: volumes:
- name: storage - name: storage
@ -197,8 +202,8 @@ spec:
persistentVolumeClaim: persistentVolumeClaim:
claimName: ${CI_PROJECT_PATH_SLUG}-pvc-storage claimName: ${CI_PROJECT_PATH_SLUG}-pvc-storage
securityContext: securityContext:
runAsUser: 33 runAsUser: 82
runAsGroup: 33 runAsGroup: 82
fsGroup: 33 fsGroup: 82
fsGroupChangePolicy: "OnRootMismatch" fsGroupChangePolicy: "OnRootMismatch"
restartPolicy: OnFailure restartPolicy: OnFailure

699
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -29,7 +29,7 @@
"@types/toastify-js": "^1.12.1", "@types/toastify-js": "^1.12.1",
"@typescript-eslint/eslint-plugin": "^5.62.0", "@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.36.2", "@typescript-eslint/parser": "^5.36.2",
"@uwil/husky-config": "^1.0.1", "@uwil/husky-config": "^1.1.1",
"@vitejs/plugin-basic-ssl": "^1.0.1", "@vitejs/plugin-basic-ssl": "^1.0.1",
"@vitejs/plugin-vue": "^4.6.2", "@vitejs/plugin-vue": "^4.6.2",
"@vue/compiler-sfc": "latest", "@vue/compiler-sfc": "latest",

View file

@ -17,27 +17,29 @@
@section('content') @section('content')
<section class="commit"> <section class="commit">
<div class="sticky-navigation"> @if ($navLinks->count())
<div class="sticky-navigation-wrapper show row m-0 p-0"> <div class="sticky-navigation">
@foreach ($navLinks as $link) <div class="sticky-navigation-wrapper show row m-0 p-0">
<div class="col-6 col-md-12 py-md-1 p-2"> @foreach ($navLinks as $link)
<div class="rounded-5 bg-{{ $link->color->name }}-light shadow-sm"> <div class="col-6 col-md-12 py-md-1 p-2">
<a class="d-flex justify-content-center align-items-center text-primary text-decoration-none p-sm-3 p-2" <div class="rounded-5 bg-{{ $link->color->name }}-light shadow-sm">
data-bs-toggle="tooltip" href="#{{ $link->anchor }}" <a class="d-flex justify-content-center align-items-center text-primary text-decoration-none p-sm-3 p-2"
title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}"> data-bs-toggle="tooltip" href="#{{ $link->anchor }}"
<span class="badge rounded-pill bg-{{ $link->color->name }} d-block me-2"></span> title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}">
<small>{{ $link->title }}</small> <span class="badge rounded-pill bg-{{ $link->color->name }} d-block me-2"></span>
</a> <small>{{ $link->title }}</small>
</a>
</div>
</div> </div>
</div> @endforeach
@endforeach </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3"
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div> </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3" @endif
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div>
{{-- AMBITION --}} {{-- AMBITION --}}
<section class="ambition anchor-padding container my-4" id="introduction"> <section class="ambition anchor-padding container my-4" id="introduction">
<span id="sticky-displayer"></span> <span id="sticky-displayer"></span>

View file

@ -17,27 +17,29 @@
@section('content') @section('content')
<section class="we-hire"> <section class="we-hire">
<div class="sticky-navigation"> @if ($navLinks->count())
<div class="sticky-navigation-wrapper show row m-0 p-0"> <div class="sticky-navigation">
@foreach ($navLinks as $link) <div class="sticky-navigation-wrapper show row m-0 p-0">
<div class="col-6 col-md-12 py-md-1 p-2"> @foreach ($navLinks as $link)
<div class="rounded-5 shadow-sm h-100 bg-{{ $link->color->name }}-light"> <div class="col-6 col-md-12 py-md-1 p-2">
<a class="d-flex justify-content-start align-items-center text-primary text-decoration-none p-sm-3 p-2 h-100" <div class="rounded-5 shadow-sm h-100 bg-{{ $link->color->name }}-light">
data-bs-toggle="tooltip" href="#{{ $link->anchor }}" <a class="d-flex justify-content-start align-items-center text-primary text-decoration-none p-sm-3 p-2 h-100"
title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}"> data-bs-toggle="tooltip" href="#{{ $link->anchor }}"
<span class="badge rounded-pill d-block me-2 bg-{{ $link->color->name }}"></span> title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}">
<small>{{ $link->title }}</small> <span class="badge rounded-pill d-block me-2 bg-{{ $link->color->name }}"></span>
</a> <small>{{ $link->title }}</small>
</a>
</div>
</div> </div>
</div> @endforeach
@endforeach </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3"
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div> </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3" @endif
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div>
{{-- COMPAGNY LIFE --}} {{-- COMPAGNY LIFE --}}
<section class="company-life anchor-padding" id="company-life"> <section class="company-life anchor-padding" id="company-life">
<span id="sticky-displayer"></span> <span id="sticky-displayer"></span>

View file

@ -17,27 +17,29 @@
@section('content') @section('content')
<section class="unveil"> <section class="unveil">
<div class="sticky-navigation"> @if ($navLinks->count())
<div class="sticky-navigation-wrapper show row m-0 p-0"> <div class="sticky-navigation">
@foreach ($navLinks as $link) <div class="sticky-navigation-wrapper show row m-0 p-0">
<div class="col-6 col-md-12 py-md-1 p-2"> @foreach ($navLinks as $link)
<div class="rounded-5 shadow-sm h-100 bg-{{ $link->color->name }}-light"> <div class="col-6 col-md-12 py-md-1 p-2">
<a class="d-flex justify-content-start align-items-center text-primary text-decoration-none p-sm-3 p-2 h-100" <div class="rounded-5 shadow-sm h-100 bg-{{ $link->color->name }}-light">
data-bs-toggle="tooltip" href="#{{ $link->anchor }}" <a class="d-flex justify-content-start align-items-center text-primary text-decoration-none p-sm-3 p-2 h-100"
title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}"> data-bs-toggle="tooltip" href="#{{ $link->anchor }}"
<span class="badge rounded-pill d-block me-2 bg-{{ $link->color->name }}"></span> title="{{ __('Accéder à la partie :name de la page', ['name' => $link->title]) }}">
<small>{{ $link->title }}</small> <span class="badge rounded-pill d-block me-2 bg-{{ $link->color->name }}"></span>
</a> <small>{{ $link->title }}</small>
</a>
</div>
</div> </div>
</div> @endforeach
@endforeach </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3"
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div> </div>
<button class="d-none d-md-block btn btn-primary rounded-pill mt-1 w-fit px-3" @endif
title="{{ __('Afficher/Masquer le menu des ancres') }}">
<i class="fa-solid fa-plus d-none"></i>
<i class="fa-solid fa-minus"></i>
</button>
</div>
{{-- KEY NUMBERS --}} {{-- KEY NUMBERS --}}
<section class="key-numbers anchor-padding my-5" id="key-numbers"> <section class="key-numbers anchor-padding my-5" id="key-numbers">
<span id="sticky-displayer"></span> <span id="sticky-displayer"></span>