From bb9cd934b1c164955b0eb51037f521d065e37bdd Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:33:53 +0100 Subject: [PATCH 01/28] feat (strapi): white paper collection --- .../content-types/white-paper/schema.json | 63 +++++++++++++++++++ .../white-paper/controllers/white-paper.ts | 7 +++ .../src/api/white-paper/routes/white-paper.ts | 7 +++ .../api/white-paper/services/white-paper.ts | 7 +++ 4 files changed, 84 insertions(+) create mode 100644 strapi/src/api/white-paper/content-types/white-paper/schema.json create mode 100644 strapi/src/api/white-paper/controllers/white-paper.ts create mode 100644 strapi/src/api/white-paper/routes/white-paper.ts create mode 100644 strapi/src/api/white-paper/services/white-paper.ts diff --git a/strapi/src/api/white-paper/content-types/white-paper/schema.json b/strapi/src/api/white-paper/content-types/white-paper/schema.json new file mode 100644 index 0000000..16a678d --- /dev/null +++ b/strapi/src/api/white-paper/content-types/white-paper/schema.json @@ -0,0 +1,63 @@ +{ + "kind": "collectionType", + "collectionName": "white_papers", + "info": { + "singularName": "white-paper", + "pluralName": "white-papers", + "displayName": "White Paper", + "description": "" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "attributes": { + "name": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "string", + "required": true + }, + "description": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "richtext" + }, + "cover_image": { + "type": "media", + "multiple": false, + "required": true, + "allowedTypes": [ + "images" + ], + "pluginOptions": { + "i18n": { + "localized": true + } + } + }, + "download_file": { + "type": "media", + "multiple": false, + "required": true, + "allowedTypes": [ + "files" + ], + "pluginOptions": { + "i18n": { + "localized": true + } + } + } + } +} diff --git a/strapi/src/api/white-paper/controllers/white-paper.ts b/strapi/src/api/white-paper/controllers/white-paper.ts new file mode 100644 index 0000000..990ac89 --- /dev/null +++ b/strapi/src/api/white-paper/controllers/white-paper.ts @@ -0,0 +1,7 @@ +/** + * white-paper controller + */ + +import { factories } from '@strapi/strapi' + +export default factories.createCoreController('api::white-paper.white-paper'); diff --git a/strapi/src/api/white-paper/routes/white-paper.ts b/strapi/src/api/white-paper/routes/white-paper.ts new file mode 100644 index 0000000..d864914 --- /dev/null +++ b/strapi/src/api/white-paper/routes/white-paper.ts @@ -0,0 +1,7 @@ +/** + * white-paper router + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::white-paper.white-paper'); diff --git a/strapi/src/api/white-paper/services/white-paper.ts b/strapi/src/api/white-paper/services/white-paper.ts new file mode 100644 index 0000000..3301ca7 --- /dev/null +++ b/strapi/src/api/white-paper/services/white-paper.ts @@ -0,0 +1,7 @@ +/** + * white-paper service + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::white-paper.white-paper'); From 4d17f703ebd87ccb2631ebd5af687969a56eb4d5 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:34:05 +0100 Subject: [PATCH 02/28] feat (strapi): white paper linked section --- .../linked-section/white-paper-section.json | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 strapi/src/components/linked-section/white-paper-section.json diff --git a/strapi/src/components/linked-section/white-paper-section.json b/strapi/src/components/linked-section/white-paper-section.json new file mode 100644 index 0000000..8a0f47a --- /dev/null +++ b/strapi/src/components/linked-section/white-paper-section.json @@ -0,0 +1,20 @@ +{ + "collectionName": "components_linked_section_white_paper_sections", + "info": { + "displayName": "White Paper Section" + }, + "options": {}, + "attributes": { + "props": { + "type": "component", + "repeatable": false, + "component": "sections.section-props", + "required": true + }, + "white_paper": { + "type": "relation", + "relation": "oneToOne", + "target": "api::white-paper.white-paper" + } + } +} From 71e65a06e9224a9cfb84226b4ea1137d047b7a5a Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:36:06 +0100 Subject: [PATCH 03/28] feat (strapi): two column section --- .../sections/two-column-section.json | 23 +++++++ strapi/types/generated/components.d.ts | 30 ++++++++++ strapi/types/generated/contentTypes.d.ts | 60 +++++++++++++++++++ 3 files changed, 113 insertions(+) create mode 100644 strapi/src/components/sections/two-column-section.json diff --git a/strapi/src/components/sections/two-column-section.json b/strapi/src/components/sections/two-column-section.json new file mode 100644 index 0000000..3942866 --- /dev/null +++ b/strapi/src/components/sections/two-column-section.json @@ -0,0 +1,23 @@ +{ + "collectionName": "components_sections_two_column_sections", + "info": { + "displayName": "Two Column Section" + }, + "options": {}, + "attributes": { + "left_column": { + "type": "richtext", + "required": true + }, + "right_column": { + "type": "richtext", + "required": true + }, + "props": { + "type": "component", + "repeatable": false, + "component": "sections.section-props", + "required": true + } + } +} diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index ca0fcb6..c6c498c 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -305,6 +305,21 @@ export interface GlobalSlaItem extends Struct.ComponentSchema { }; } +export interface LinkedSectionWhitePaperSection extends Struct.ComponentSchema { + collectionName: 'components_linked_section_white_paper_sections'; + info: { + displayName: 'White Paper Section'; + }; + attributes: { + props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; + white_paper: Schema.Attribute.Relation< + 'oneToOne', + 'api::white-paper.white-paper' + >; + }; +} + export interface RelationsQuotesRelation extends Struct.ComponentSchema { collectionName: 'components_relations_quotes_relations'; info: { @@ -664,6 +679,19 @@ export interface SectionsSectionWithRichtHeadingIntroAndCta }; } +export interface SectionsTwoColumnSection extends Struct.ComponentSchema { + collectionName: 'components_sections_two_column_sections'; + info: { + displayName: 'Two Column Section'; + }; + attributes: { + left_column: Schema.Attribute.RichText & Schema.Attribute.Required; + props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; + right_column: Schema.Attribute.RichText & Schema.Attribute.Required; + }; +} + declare module '@strapi/strapi' { export module Public { export interface ComponentSchemas { @@ -682,6 +710,7 @@ declare module '@strapi/strapi' { 'global.hero-with-cta': GlobalHeroWithCta; 'global.intro': GlobalIntro; 'global.sla-item': GlobalSlaItem; + 'linked-section.white-paper-section': LinkedSectionWhitePaperSection; 'relations.quotes-relation': RelationsQuotesRelation; 'relations.section-solutions-relation': RelationsSectionSolutionsRelation; 'relations.sla-card-section': RelationsSlaCardSection; @@ -703,6 +732,7 @@ declare module '@strapi/strapi' { 'sections.projects-card-section-with-external-link': SectionsProjectsCardSectionWithExternalLink; 'sections.section-props': SectionsSectionProps; 'sections.section-with-richt-heading-intro-and-cta': SectionsSectionWithRichtHeadingIntroAndCta; + 'sections.two-column-section': SectionsTwoColumnSection; } } } diff --git a/strapi/types/generated/contentTypes.d.ts b/strapi/types/generated/contentTypes.d.ts index f3ae680..279ad48 100644 --- a/strapi/types/generated/contentTypes.d.ts +++ b/strapi/types/generated/contentTypes.d.ts @@ -1214,6 +1214,65 @@ export interface ApiSolutionsPageSolutionsPage }; } +export interface ApiWhitePaperWhitePaper extends Struct.CollectionTypeSchema { + collectionName: 'white_papers'; + info: { + description: ''; + displayName: 'White Paper'; + pluralName: 'white-papers'; + singularName: 'white-paper'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + i18n: { + localized: true; + }; + }; + attributes: { + cover_image: Schema.Attribute.Media<'images'> & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + createdAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + description: Schema.Attribute.RichText & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + download_file: Schema.Attribute.Media<'files'> & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + locale: Schema.Attribute.String; + localizations: Schema.Attribute.Relation< + 'oneToMany', + 'api::white-paper.white-paper' + >; + name: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + publishedAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + }; +} + export interface PluginContentReleasesRelease extends Struct.CollectionTypeSchema { collectionName: 'strapi_releases'; @@ -1735,6 +1794,7 @@ declare module '@strapi/strapi' { 'api::sla-card.sla-card': ApiSlaCardSlaCard; 'api::solutions-overview.solutions-overview': ApiSolutionsOverviewSolutionsOverview; 'api::solutions-page.solutions-page': ApiSolutionsPageSolutionsPage; + 'api::white-paper.white-paper': ApiWhitePaperWhitePaper; 'plugin::content-releases.release': PluginContentReleasesRelease; 'plugin::content-releases.release-action': PluginContentReleasesReleaseAction; 'plugin::i18n.locale': PluginI18NLocale; From 4137208411e5c8296717b65f2145c670b969d2ac Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:49:15 +0100 Subject: [PATCH 04/28] fix (strapi): make icon card section props required --- .../components/sections/icon-card-section-with-relation.json | 3 ++- strapi/types/generated/components.d.ts | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/strapi/src/components/sections/icon-card-section-with-relation.json b/strapi/src/components/sections/icon-card-section-with-relation.json index e8babb7..ed284d0 100644 --- a/strapi/src/components/sections/icon-card-section-with-relation.json +++ b/strapi/src/components/sections/icon-card-section-with-relation.json @@ -13,7 +13,8 @@ "section_props": { "type": "component", "repeatable": false, - "component": "sections.section-props" + "component": "sections.section-props", + "required": true }, "cards": { "type": "relation", diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index c6c498c..c592603 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -560,7 +560,8 @@ export interface SectionsIconCardSectionWithRelation }; attributes: { cards: Schema.Attribute.Relation<'oneToMany', 'api::icon-card.icon-card'>; - section_props: Schema.Attribute.Component<'sections.section-props', false>; + section_props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; title: Schema.Attribute.RichText & Schema.Attribute.Required; }; } From deedc551ecd3cf188998404a16686fcda7ea10d9 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:55:20 +0100 Subject: [PATCH 05/28] fix (strapi): add cta to icon card section --- .../components/sections/icon-card-section-with-relation.json | 5 +++++ strapi/types/generated/components.d.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/strapi/src/components/sections/icon-card-section-with-relation.json b/strapi/src/components/sections/icon-card-section-with-relation.json index ed284d0..77e534d 100644 --- a/strapi/src/components/sections/icon-card-section-with-relation.json +++ b/strapi/src/components/sections/icon-card-section-with-relation.json @@ -20,6 +20,11 @@ "type": "relation", "relation": "oneToMany", "target": "api::icon-card.icon-card" + }, + "cta": { + "type": "component", + "repeatable": false, + "component": "external-links.call-to-action" } } } diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index c592603..6af1f26 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -560,6 +560,7 @@ export interface SectionsIconCardSectionWithRelation }; attributes: { cards: Schema.Attribute.Relation<'oneToMany', 'api::icon-card.icon-card'>; + cta: Schema.Attribute.Component<'external-links.call-to-action', false>; section_props: Schema.Attribute.Component<'sections.section-props', false> & Schema.Attribute.Required; title: Schema.Attribute.RichText & Schema.Attribute.Required; From 60124c5c655cd4c2e8396463e7fc8e96c620b517 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 09:56:52 +0100 Subject: [PATCH 06/28] feat (strapi): move white label section to relations --- .../white-paper-section.json | 2 +- strapi/types/generated/components.d.ts | 32 +++++++++---------- 2 files changed, 17 insertions(+), 17 deletions(-) rename strapi/src/components/{linked-section => relations}/white-paper-section.json (84%) diff --git a/strapi/src/components/linked-section/white-paper-section.json b/strapi/src/components/relations/white-paper-section.json similarity index 84% rename from strapi/src/components/linked-section/white-paper-section.json rename to strapi/src/components/relations/white-paper-section.json index 8a0f47a..f710027 100644 --- a/strapi/src/components/linked-section/white-paper-section.json +++ b/strapi/src/components/relations/white-paper-section.json @@ -1,5 +1,5 @@ { - "collectionName": "components_linked_section_white_paper_sections", + "collectionName": "components_relations_white_paper_sections", "info": { "displayName": "White Paper Section" }, diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index 6af1f26..45d1a87 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -305,21 +305,6 @@ export interface GlobalSlaItem extends Struct.ComponentSchema { }; } -export interface LinkedSectionWhitePaperSection extends Struct.ComponentSchema { - collectionName: 'components_linked_section_white_paper_sections'; - info: { - displayName: 'White Paper Section'; - }; - attributes: { - props: Schema.Attribute.Component<'sections.section-props', false> & - Schema.Attribute.Required; - white_paper: Schema.Attribute.Relation< - 'oneToOne', - 'api::white-paper.white-paper' - >; - }; -} - export interface RelationsQuotesRelation extends Struct.ComponentSchema { collectionName: 'components_relations_quotes_relations'; info: { @@ -380,6 +365,21 @@ export interface RelationsSolutionsRelationWithDescription }; } +export interface RelationsWhitePaperSection extends Struct.ComponentSchema { + collectionName: 'components_relations_white_paper_sections'; + info: { + displayName: 'White Paper Section'; + }; + attributes: { + props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; + white_paper: Schema.Attribute.Relation< + 'oneToOne', + 'api::white-paper.white-paper' + >; + }; +} + export interface RichHeadingsH1 extends Struct.ComponentSchema { collectionName: 'components_rich_headings_h1s'; info: { @@ -712,11 +712,11 @@ declare module '@strapi/strapi' { 'global.hero-with-cta': GlobalHeroWithCta; 'global.intro': GlobalIntro; 'global.sla-item': GlobalSlaItem; - 'linked-section.white-paper-section': LinkedSectionWhitePaperSection; 'relations.quotes-relation': RelationsQuotesRelation; 'relations.section-solutions-relation': RelationsSectionSolutionsRelation; 'relations.sla-card-section': RelationsSlaCardSection; 'relations.solutions-relation-with-description': RelationsSolutionsRelationWithDescription; + 'relations.white-paper-section': RelationsWhitePaperSection; 'rich-headings.h1': RichHeadingsH1; 'rich-headings.h2': RichHeadingsH2; 'rich-headings.h3': RichHeadingsH3; From c812dfc0247d4d8eeb47ac4a7e5f6635d88663c2 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 10:08:04 +0100 Subject: [PATCH 07/28] feat (strapi): calendly collection --- .../content-types/calendly-item/schema.json | 47 ++++++++++++++++ .../controllers/calendly-item.ts | 7 +++ .../api/calendly-item/routes/calendly-item.ts | 7 +++ .../calendly-item/services/calendly-item.ts | 7 +++ strapi/types/generated/contentTypes.d.ts | 55 +++++++++++++++++++ 5 files changed, 123 insertions(+) create mode 100644 strapi/src/api/calendly-item/content-types/calendly-item/schema.json create mode 100644 strapi/src/api/calendly-item/controllers/calendly-item.ts create mode 100644 strapi/src/api/calendly-item/routes/calendly-item.ts create mode 100644 strapi/src/api/calendly-item/services/calendly-item.ts diff --git a/strapi/src/api/calendly-item/content-types/calendly-item/schema.json b/strapi/src/api/calendly-item/content-types/calendly-item/schema.json new file mode 100644 index 0000000..46e9581 --- /dev/null +++ b/strapi/src/api/calendly-item/content-types/calendly-item/schema.json @@ -0,0 +1,47 @@ +{ + "kind": "collectionType", + "collectionName": "calendly_items", + "info": { + "singularName": "calendly-item", + "pluralName": "calendly-items", + "displayName": "Calendly Item", + "description": "" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "attributes": { + "name": { + "type": "string", + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "required": true + }, + "calendly_url": { + "type": "string", + "required": true, + "unique": true, + "pluginOptions": { + "i18n": { + "localized": true + } + } + }, + "body": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "richtext" + } + } +} diff --git a/strapi/src/api/calendly-item/controllers/calendly-item.ts b/strapi/src/api/calendly-item/controllers/calendly-item.ts new file mode 100644 index 0000000..fe2cd9d --- /dev/null +++ b/strapi/src/api/calendly-item/controllers/calendly-item.ts @@ -0,0 +1,7 @@ +/** + * calendly-item controller + */ + +import { factories } from '@strapi/strapi' + +export default factories.createCoreController('api::calendly-item.calendly-item'); diff --git a/strapi/src/api/calendly-item/routes/calendly-item.ts b/strapi/src/api/calendly-item/routes/calendly-item.ts new file mode 100644 index 0000000..cda16de --- /dev/null +++ b/strapi/src/api/calendly-item/routes/calendly-item.ts @@ -0,0 +1,7 @@ +/** + * calendly-item router + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::calendly-item.calendly-item'); diff --git a/strapi/src/api/calendly-item/services/calendly-item.ts b/strapi/src/api/calendly-item/services/calendly-item.ts new file mode 100644 index 0000000..398885e --- /dev/null +++ b/strapi/src/api/calendly-item/services/calendly-item.ts @@ -0,0 +1,7 @@ +/** + * calendly-item service + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::calendly-item.calendly-item'); diff --git a/strapi/types/generated/contentTypes.d.ts b/strapi/types/generated/contentTypes.d.ts index 279ad48..07d0dac 100644 --- a/strapi/types/generated/contentTypes.d.ts +++ b/strapi/types/generated/contentTypes.d.ts @@ -369,6 +369,60 @@ export interface AdminUser extends Struct.CollectionTypeSchema { }; } +export interface ApiCalendlyItemCalendlyItem + extends Struct.CollectionTypeSchema { + collectionName: 'calendly_items'; + info: { + description: ''; + displayName: 'Calendly Item'; + pluralName: 'calendly-items'; + singularName: 'calendly-item'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + i18n: { + localized: true; + }; + }; + attributes: { + body: Schema.Attribute.RichText & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + calendly_url: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.Unique & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + createdAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + localizations: Schema.Attribute.Relation< + 'oneToMany', + 'api::calendly-item.calendly-item' + >; + name: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + publishedAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + }; +} + export interface ApiCategoryCategory extends Struct.CollectionTypeSchema { collectionName: 'categories'; info: { @@ -1782,6 +1836,7 @@ declare module '@strapi/strapi' { 'admin::transfer-token': AdminTransferToken; 'admin::transfer-token-permission': AdminTransferTokenPermission; 'admin::user': AdminUser; + 'api::calendly-item.calendly-item': ApiCalendlyItemCalendlyItem; 'api::category.category': ApiCategoryCategory; 'api::contact-cta.contact-cta': ApiContactCtaContactCta; 'api::event-page.event-page': ApiEventPageEventPage; From 77637dd44ca7f8ae1922fb3788c1f2d656a44c40 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 10:12:19 +0100 Subject: [PATCH 08/28] feat (strapi): calendly relation section --- .../relations/calendly-section.json | 20 +++++++++++++++++++ strapi/types/generated/components.d.ts | 16 +++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 strapi/src/components/relations/calendly-section.json diff --git a/strapi/src/components/relations/calendly-section.json b/strapi/src/components/relations/calendly-section.json new file mode 100644 index 0000000..5c609ef --- /dev/null +++ b/strapi/src/components/relations/calendly-section.json @@ -0,0 +1,20 @@ +{ + "collectionName": "components_relations_calendly_sections", + "info": { + "displayName": "Calendly Section" + }, + "options": {}, + "attributes": { + "props": { + "type": "component", + "repeatable": false, + "component": "sections.section-props", + "required": true + }, + "calendly_item": { + "type": "relation", + "relation": "oneToOne", + "target": "api::calendly-item.calendly-item" + } + } +} diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index 45d1a87..997090b 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -305,6 +305,21 @@ export interface GlobalSlaItem extends Struct.ComponentSchema { }; } +export interface RelationsCalendlySection extends Struct.ComponentSchema { + collectionName: 'components_relations_calendly_sections'; + info: { + displayName: 'Calendly Section'; + }; + attributes: { + calendly_item: Schema.Attribute.Relation< + 'oneToOne', + 'api::calendly-item.calendly-item' + >; + props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; + }; +} + export interface RelationsQuotesRelation extends Struct.ComponentSchema { collectionName: 'components_relations_quotes_relations'; info: { @@ -712,6 +727,7 @@ declare module '@strapi/strapi' { 'global.hero-with-cta': GlobalHeroWithCta; 'global.intro': GlobalIntro; 'global.sla-item': GlobalSlaItem; + 'relations.calendly-section': RelationsCalendlySection; 'relations.quotes-relation': RelationsQuotesRelation; 'relations.section-solutions-relation': RelationsSectionSolutionsRelation; 'relations.sla-card-section': RelationsSlaCardSection; From be61868b9dcb5ae18a029037d8aa704d307a323f Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 10:20:57 +0100 Subject: [PATCH 09/28] feat (strapi): text section component --- .../sections/text-section-with-cta.json | 25 +++++++++++++++++++ strapi/types/generated/components.d.ts | 15 +++++++++++ 2 files changed, 40 insertions(+) create mode 100644 strapi/src/components/sections/text-section-with-cta.json diff --git a/strapi/src/components/sections/text-section-with-cta.json b/strapi/src/components/sections/text-section-with-cta.json new file mode 100644 index 0000000..c27618e --- /dev/null +++ b/strapi/src/components/sections/text-section-with-cta.json @@ -0,0 +1,25 @@ +{ + "collectionName": "components_sections_text_section_with_ctas", + "info": { + "displayName": "Text Section With CTA" + }, + "options": {}, + "attributes": { + "body": { + "type": "richtext", + "required": true + }, + "props": { + "type": "component", + "repeatable": false, + "component": "sections.section-props", + "required": true + }, + "cta": { + "type": "component", + "repeatable": false, + "component": "external-links.call-to-action", + "required": true + } + } +} diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index 997090b..9f46c76 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -696,6 +696,20 @@ export interface SectionsSectionWithRichtHeadingIntroAndCta }; } +export interface SectionsTextSectionWithCta extends Struct.ComponentSchema { + collectionName: 'components_sections_text_section_with_ctas'; + info: { + displayName: 'Text Section With CTA'; + }; + attributes: { + body: Schema.Attribute.RichText & Schema.Attribute.Required; + cta: Schema.Attribute.Component<'external-links.call-to-action', false> & + Schema.Attribute.Required; + props: Schema.Attribute.Component<'sections.section-props', false> & + Schema.Attribute.Required; + }; +} + export interface SectionsTwoColumnSection extends Struct.ComponentSchema { collectionName: 'components_sections_two_column_sections'; info: { @@ -750,6 +764,7 @@ declare module '@strapi/strapi' { 'sections.projects-card-section-with-external-link': SectionsProjectsCardSectionWithExternalLink; 'sections.section-props': SectionsSectionProps; 'sections.section-with-richt-heading-intro-and-cta': SectionsSectionWithRichtHeadingIntroAndCta; + 'sections.text-section-with-cta': SectionsTextSectionWithCta; 'sections.two-column-section': SectionsTwoColumnSection; } } From 2506e3e62c15c21018971ee7812f155fb1f62610 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 10:26:44 +0100 Subject: [PATCH 10/28] feat (strapi): page_partner_and_products collection with dynamic zones --- .../page-partner-and-product/schema.json | 70 +++++++++++++++++++ .../controllers/page-partner-and-product.ts | 7 ++ .../routes/page-partner-and-product.ts | 7 ++ .../services/page-partner-and-product.ts | 7 ++ strapi/types/generated/contentTypes.d.ts | 70 +++++++++++++++++++ 5 files changed, 161 insertions(+) create mode 100644 strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json create mode 100644 strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts create mode 100644 strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts create mode 100644 strapi/src/api/page-partner-and-product/services/page-partner-and-product.ts diff --git a/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json b/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json new file mode 100644 index 0000000..4bf690e --- /dev/null +++ b/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json @@ -0,0 +1,70 @@ +{ + "kind": "collectionType", + "collectionName": "page_partner_and_products", + "info": { + "singularName": "page-partner-and-product", + "pluralName": "page-partner-and-products", + "displayName": "Page Partner & Product" + }, + "options": { + "draftAndPublish": true + }, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "attributes": { + "metadata_title": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "string", + "required": true + }, + "metadata_description": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "text", + "required": false + }, + "hero": { + "type": "relation", + "relation": "oneToOne", + "target": "api::hero.hero" + }, + "intro": { + "type": "component", + "repeatable": false, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "component": "global.intro", + "required": true + }, + "sections": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "dynamiczone", + "components": [ + "sections.two-column-section", + "sections.text-section-with-cta", + "sections.icon-card-section-with-relation", + "sections.heading-with-link-container", + "relations.white-paper-section", + "relations.quotes-relation", + "relations.calendly-section" + ] + } + } +} diff --git a/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts b/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts new file mode 100644 index 0000000..e06e769 --- /dev/null +++ b/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts @@ -0,0 +1,7 @@ +/** + * page-partner-and-product controller + */ + +import { factories } from '@strapi/strapi' + +export default factories.createCoreController('api::page-partner-and-product.page-partner-and-product'); diff --git a/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts b/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts new file mode 100644 index 0000000..9c6f21f --- /dev/null +++ b/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts @@ -0,0 +1,7 @@ +/** + * page-partner-and-product router + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::page-partner-and-product.page-partner-and-product'); diff --git a/strapi/src/api/page-partner-and-product/services/page-partner-and-product.ts b/strapi/src/api/page-partner-and-product/services/page-partner-and-product.ts new file mode 100644 index 0000000..807d5d2 --- /dev/null +++ b/strapi/src/api/page-partner-and-product/services/page-partner-and-product.ts @@ -0,0 +1,7 @@ +/** + * page-partner-and-product service + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::page-partner-and-product.page-partner-and-product'); diff --git a/strapi/types/generated/contentTypes.d.ts b/strapi/types/generated/contentTypes.d.ts index 07d0dac..3046745 100644 --- a/strapi/types/generated/contentTypes.d.ts +++ b/strapi/types/generated/contentTypes.d.ts @@ -965,6 +965,75 @@ export interface ApiNewsPageNewsPage extends Struct.CollectionTypeSchema { }; } +export interface ApiPagePartnerAndProductPagePartnerAndProduct + extends Struct.CollectionTypeSchema { + collectionName: 'page_partner_and_products'; + info: { + displayName: 'Page Partner & Product'; + pluralName: 'page-partner-and-products'; + singularName: 'page-partner-and-product'; + }; + options: { + draftAndPublish: true; + }; + pluginOptions: { + i18n: { + localized: true; + }; + }; + attributes: { + createdAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + hero: Schema.Attribute.Relation<'oneToOne', 'api::hero.hero'>; + intro: Schema.Attribute.Component<'global.intro', false> & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + locale: Schema.Attribute.String; + localizations: Schema.Attribute.Relation< + 'oneToMany', + 'api::page-partner-and-product.page-partner-and-product' + >; + metadata_description: Schema.Attribute.Text & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + metadata_title: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + publishedAt: Schema.Attribute.DateTime; + sections: Schema.Attribute.DynamicZone< + [ + 'sections.two-column-section', + 'sections.text-section-with-cta', + 'sections.icon-card-section-with-relation', + 'sections.heading-with-link-container', + 'relations.white-paper-section', + 'relations.quotes-relation', + 'relations.calendly-section', + ] + > & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + updatedAt: Schema.Attribute.DateTime; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + }; +} + export interface ApiQuoteQuote extends Struct.CollectionTypeSchema { collectionName: 'quotes'; info: { @@ -1845,6 +1914,7 @@ declare module '@strapi/strapi' { 'api::homepage.homepage': ApiHomepageHomepage; 'api::icon-card.icon-card': ApiIconCardIconCard; 'api::news-page.news-page': ApiNewsPageNewsPage; + 'api::page-partner-and-product.page-partner-and-product': ApiPagePartnerAndProductPagePartnerAndProduct; 'api::quote.quote': ApiQuoteQuote; 'api::sla-card.sla-card': ApiSlaCardSlaCard; 'api::solutions-overview.solutions-overview': ApiSolutionsOverviewSolutionsOverview; From 6ac473d19f5571bf114ee652a0db81fd9cf14baa Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 10:45:36 +0100 Subject: [PATCH 11/28] feat (strapi): add slug and new intro comopnent to page-parenter-and-product collection --- .../page-partner-and-product/schema.json | 16 +++++++++++++--- strapi/src/components/global/intro-body.json | 13 +++++++++++++ strapi/types/generated/components.d.ts | 11 +++++++++++ strapi/types/generated/contentTypes.d.ts | 11 +++++++++-- 4 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 strapi/src/components/global/intro-body.json diff --git a/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json b/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json index 4bf690e..ef8e84b 100644 --- a/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json +++ b/strapi/src/api/page-partner-and-product/content-types/page-partner-and-product/schema.json @@ -31,7 +31,17 @@ } }, "type": "text", - "required": false + "required": true + }, + "slug": { + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "type": "uid", + "targetField": "metadata_title", + "required": true }, "hero": { "type": "relation", @@ -39,6 +49,7 @@ "target": "api::hero.hero" }, "intro": { + "displayName": "Intro Body", "type": "component", "repeatable": false, "pluginOptions": { @@ -46,8 +57,7 @@ "localized": true } }, - "component": "global.intro", - "required": true + "component": "global.intro-body" }, "sections": { "pluginOptions": { diff --git a/strapi/src/components/global/intro-body.json b/strapi/src/components/global/intro-body.json new file mode 100644 index 0000000..d2f578a --- /dev/null +++ b/strapi/src/components/global/intro-body.json @@ -0,0 +1,13 @@ +{ + "collectionName": "components_global_intro_bodies", + "info": { + "displayName": "Intro Body" + }, + "options": {}, + "attributes": { + "body": { + "type": "richtext", + "required": true + } + } +} diff --git a/strapi/types/generated/components.d.ts b/strapi/types/generated/components.d.ts index 9f46c76..b3c22c3 100644 --- a/strapi/types/generated/components.d.ts +++ b/strapi/types/generated/components.d.ts @@ -291,6 +291,16 @@ export interface GlobalIntro extends Struct.ComponentSchema { }; } +export interface GlobalIntroBody extends Struct.ComponentSchema { + collectionName: 'components_global_intro_bodies'; + info: { + displayName: 'Intro Body'; + }; + attributes: { + body: Schema.Attribute.RichText & Schema.Attribute.Required; + }; +} + export interface GlobalSlaItem extends Struct.ComponentSchema { collectionName: 'components_global_sla_items'; info: { @@ -740,6 +750,7 @@ declare module '@strapi/strapi' { 'global.hallmark': GlobalHallmark; 'global.hero-with-cta': GlobalHeroWithCta; 'global.intro': GlobalIntro; + 'global.intro-body': GlobalIntroBody; 'global.sla-item': GlobalSlaItem; 'relations.calendly-section': RelationsCalendlySection; 'relations.quotes-relation': RelationsQuotesRelation; diff --git a/strapi/types/generated/contentTypes.d.ts b/strapi/types/generated/contentTypes.d.ts index 3046745..047bef8 100644 --- a/strapi/types/generated/contentTypes.d.ts +++ b/strapi/types/generated/contentTypes.d.ts @@ -986,8 +986,7 @@ export interface ApiPagePartnerAndProductPagePartnerAndProduct createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; hero: Schema.Attribute.Relation<'oneToOne', 'api::hero.hero'>; - intro: Schema.Attribute.Component<'global.intro', false> & - Schema.Attribute.Required & + intro: Schema.Attribute.Component<'global.intro-body', false> & Schema.Attribute.SetPluginOptions<{ i18n: { localized: true; @@ -999,6 +998,7 @@ export interface ApiPagePartnerAndProductPagePartnerAndProduct 'api::page-partner-and-product.page-partner-and-product' >; metadata_description: Schema.Attribute.Text & + Schema.Attribute.Required & Schema.Attribute.SetPluginOptions<{ i18n: { localized: true; @@ -1028,6 +1028,13 @@ export interface ApiPagePartnerAndProductPagePartnerAndProduct localized: true; }; }>; + slug: Schema.Attribute.UID<'metadata_title'> & + Schema.Attribute.Required & + Schema.Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; updatedAt: Schema.Attribute.DateTime; updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & Schema.Attribute.Private; From cdc598be1ff7a531b0b1d67bbfadbb9dc9a28022 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 11:42:39 +0100 Subject: [PATCH 12/28] chore: gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c6ef218 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.idea + From 74a50c039058d679bf208abd2d15cc5c4d06812e Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 13:19:05 +0100 Subject: [PATCH 13/28] chore (strapi): upgrade npx @strapi/upgrade latest --- strapi/package-lock.json | 2642 +++++++++++++++++--------------------- strapi/package.json | 6 +- 2 files changed, 1195 insertions(+), 1453 deletions(-) diff --git a/strapi/package-lock.json b/strapi/package-lock.json index 9f971a5..938a1e4 100644 --- a/strapi/package-lock.json +++ b/strapi/package-lock.json @@ -8,10 +8,10 @@ "name": "strapi", "version": "0.7.1", "dependencies": { - "@strapi/plugin-cloud": "5.3.0", - "@strapi/plugin-users-permissions": "5.3.0", + "@strapi/plugin-cloud": "5.6.0", + "@strapi/plugin-users-permissions": "5.6.0", "@strapi/provider-upload-aws-s3": "^5.5.0", - "@strapi/strapi": "5.3.0", + "@strapi/strapi": "5.6.0", "@types/node": "^20.17.6", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", @@ -1986,13 +1986,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz", - "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.3.tgz", + "integrity": "sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==", "license": "MIT", "dependencies": { - "@babel/parser": "^7.26.2", - "@babel/types": "^7.26.0", + "@babel/parser": "^7.26.3", + "@babel/types": "^7.26.3", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^3.0.2" @@ -2033,12 +2033,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.26.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", - "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz", + "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==", "license": "MIT", "dependencies": { - "@babel/types": "^7.26.0" + "@babel/types": "^7.26.3" }, "bin": { "parser": "bin/babel-parser.js" @@ -2087,16 +2087,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz", - "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==", + "version": "7.26.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.4.tgz", + "integrity": "sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==", "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.25.9", - "@babel/generator": "^7.25.9", - "@babel/parser": "^7.25.9", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.3", + "@babel/parser": "^7.26.3", "@babel/template": "^7.25.9", - "@babel/types": "^7.25.9", + "@babel/types": "^7.26.3", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -2105,9 +2105,9 @@ } }, "node_modules/@babel/types": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", - "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz", + "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==", "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.25.9", @@ -2130,21 +2130,15 @@ } }, "node_modules/@codemirror/autocomplete": { - "version": "6.18.2", - "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.18.2.tgz", - "integrity": "sha512-wJGylKtMFR/Ds6Gh01+OovXE/pncPiKZNNBKuC39pKnH+XK5d9+WsNqcrdxPjFPFTigRBqse0rfxw9UxrfyhPg==", + "version": "6.18.4", + "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.18.4.tgz", + "integrity": "sha512-sFAphGQIqyQZfP2ZBsSHV7xQvo9Py0rV0dW7W3IMRdS+zDuNb2l3no78CvUaWKGfzFjI4FTrLdUSj86IGb2hRA==", "license": "MIT", "dependencies": { "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" - }, - "peerDependencies": { - "@codemirror/language": "^6.0.0", - "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.0.0", - "@lezer/common": "^1.0.0" } }, "node_modules/@codemirror/commands": { @@ -2170,9 +2164,9 @@ } }, "node_modules/@codemirror/language": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.3.tgz", - "integrity": "sha512-kDqEU5sCP55Oabl6E7m5N+vZRoc0iWqgDVhEKifcHzPzjqCegcO4amfrYVL9PmPZpl4G0yjkpTpUO/Ui8CzO8A==", + "version": "6.10.8", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.8.tgz", + "integrity": "sha512-wcP8XPPhDH2vTqf181U8MbZnW+tDyPYy0UzVOa+oHORjyT+mhhom9vBd7dApJwoDz9Nb/a8kHjJIsuA/t8vNFw==", "license": "MIT", "dependencies": { "@codemirror/state": "^6.0.0", @@ -2184,20 +2178,20 @@ } }, "node_modules/@codemirror/lint": { - "version": "6.8.2", - "resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.8.2.tgz", - "integrity": "sha512-PDFG5DjHxSEjOXk9TQYYVjZDqlZTFaDBfhQixHnQOEVDDNHUbEh/hstAjcQJaA6FQdZTD1hquXTK0rVBLADR1g==", + "version": "6.8.4", + "resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.8.4.tgz", + "integrity": "sha512-u4q7PnZlJUojeRe8FJa/njJcMctISGgPQ4PnWsd9268R4ZTtU+tfFYmwkBvgcrK2+QQ8tYFVALVb5fVJykKc5A==", "license": "MIT", "dependencies": { "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.0.0", + "@codemirror/view": "^6.35.0", "crelt": "^1.0.5" } }, "node_modules/@codemirror/search": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.5.7.tgz", - "integrity": "sha512-6+iLsXvITWKHYlkgHPCs/qiX4dNzn8N78YfhOFvPtPYCkuXqZq10rAfsUMhOq7O/1VjJqdXRflyExlfVcu/9VQ==", + "version": "6.5.8", + "resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.5.8.tgz", + "integrity": "sha512-PoWtZvo7c1XFeZWmmyaOp2G0XVbOnm+fJzvghqGAktBW3cufwJUWvSCcNG0ppXiBEM05mZu6RhMtXPv2hpllig==", "license": "MIT", "dependencies": { "@codemirror/state": "^6.0.0", @@ -2206,10 +2200,13 @@ } }, "node_modules/@codemirror/state": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.4.1.tgz", - "integrity": "sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==", - "license": "MIT" + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.0.tgz", + "integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==", + "license": "MIT", + "dependencies": { + "@marijn/find-cluster-break": "^1.0.0" + } }, "node_modules/@codemirror/theme-one-dark": { "version": "6.1.2", @@ -2224,12 +2221,12 @@ } }, "node_modules/@codemirror/view": { - "version": "6.34.2", - "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.34.2.tgz", - "integrity": "sha512-d6n0WFvL970A9Z+l9N2dO+Hk9ev4hDYQzIx+B9tCyBP0W5wPEszi1rhuyFesNSkLZzXbQE5FPH7F/z/TMJfoPA==", + "version": "6.36.1", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.1.tgz", + "integrity": "sha512-miD1nyT4m4uopZaDdO2uXU/LLHliKNYL9kB1C1wJHrunHLm/rpkb5QVSokqgw9hFqEZakrdlb/VGWX8aYZTslQ==", "license": "MIT", "dependencies": { - "@codemirror/state": "^6.4.0", + "@codemirror/state": "^6.5.0", "style-mod": "^4.1.0", "w3c-keyname": "^2.2.4" } @@ -2264,16 +2261,16 @@ } }, "node_modules/@emotion/babel-plugin": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz", - "integrity": "sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", - "@emotion/serialize": "^1.2.0", + "@emotion/serialize": "^1.3.3", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", @@ -2292,14 +2289,14 @@ } }, "node_modules/@emotion/cache": { - "version": "11.13.1", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.1.tgz", - "integrity": "sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", "license": "MIT", "dependencies": { "@emotion/memoize": "^0.9.0", "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "stylis": "4.2.0" } @@ -2332,17 +2329,17 @@ "license": "MIT" }, "node_modules/@emotion/react": { - "version": "11.13.3", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.3.tgz", - "integrity": "sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", - "@emotion/cache": "^11.13.0", - "@emotion/serialize": "^1.3.1", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "hoist-non-react-statics": "^3.3.1" }, @@ -2356,15 +2353,15 @@ } }, "node_modules/@emotion/serialize": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.2.tgz", - "integrity": "sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", "license": "MIT", "dependencies": { "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", "@emotion/unitless": "^0.10.0", - "@emotion/utils": "^1.4.1", + "@emotion/utils": "^1.4.2", "csstype": "^3.0.2" } }, @@ -2381,18 +2378,18 @@ "license": "MIT" }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz", - "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "license": "MIT", "peerDependencies": { "react": ">=16.8.0" } }, "node_modules/@emotion/utils": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.1.tgz", - "integrity": "sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", "license": "MIT" }, "node_modules/@emotion/weak-memoize": { @@ -2908,9 +2905,9 @@ "license": "BSD-3-Clause" }, "node_modules/@inquirer/figures": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.7.tgz", - "integrity": "sha512-m+Trk77mp54Zma6xLkLuY+mvanPxlE4A7yNKs2HBiyZ4UkVs28Mv5c/pgWrHeInx+USHeX/WEPzjrWrcJiQgjw==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.9.tgz", + "integrity": "sha512-BXvGj0ehzrngHTPTDqUoDT3NXL8U0RxUk2zJm2A66RhCEIWdtU1v6GuUqNAgArW4PQ9CinqIWyHdQgdwOj06zQ==", "license": "MIT", "engines": { "node": ">=18" @@ -3138,9 +3135,9 @@ } }, "node_modules/@lezer/json": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@lezer/json/-/json-1.0.2.tgz", - "integrity": "sha512-xHT2P4S5eeCYECyKNPhr4cbEL9tc8w83SPwRC373o9uEdrvGKTZoJVAGxpOsZckMlEh9W23Pc72ew918RWQOBQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@lezer/json/-/json-1.0.3.tgz", + "integrity": "sha512-BP9KzdF9Y35PDpv04r0VeSTKDeox5vVr3efE7eBbx3r4s3oNLfunchejZhjArmeieBH+nVOpgIiBJpEAv8ilqQ==", "license": "MIT", "dependencies": { "@lezer/common": "^1.2.0", @@ -3157,57 +3154,74 @@ "@lezer/common": "^1.0.0" } }, - "node_modules/@mswjs/cookies": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@mswjs/cookies/-/cookies-0.2.2.tgz", - "integrity": "sha512-mlN83YSrcFgk7Dm1Mys40DLssI1KdJji2CMKN8eOlBqsTADYzj2+jWzsANsUTFbxDMWPD5e9bfA1RGqBpS3O1g==", + "node_modules/@marijn/find-cluster-break": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", + "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", + "license": "MIT" + }, + "node_modules/@mux/mux-player": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mux/mux-player/-/mux-player-3.1.0.tgz", + "integrity": "sha512-vU7HjvM3KLDfMwMfjbotlhjQrakwm9A4zixxtzBdxwDMLKf0FUKiFOGyTGOdsIKNBRVlS5Ffz9ERU+3Hh+XcBQ==", "license": "MIT", "dependencies": { - "@types/set-cookie-parser": "^2.4.0", - "set-cookie-parser": "^2.4.6" - }, - "engines": { - "node": ">=14" + "@mux/mux-video": "0.22.0", + "@mux/playback-core": "0.27.0", + "media-chrome": "~4.2.1", + "player.style": "^0.0.8" } }, - "node_modules/@mswjs/interceptors": { - "version": "0.17.10", - "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.17.10.tgz", - "integrity": "sha512-N8x7eSLGcmUFNWZRxT1vsHvypzIRgQYdG0rJey/rZCy6zT/30qDt8Joj7FxzGNLSwXbeZqJOMqDurp7ra4hgbw==", + "node_modules/@mux/mux-player-react": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mux/mux-player-react/-/mux-player-react-3.1.0.tgz", + "integrity": "sha512-oJWcRtDNE84KKSi/5tz7CKGHBLA34V9XlLnv30qqVMAvfifa3S0lY82gP41YA0OfYANwp5Sg29bbh3quekusPg==", "license": "MIT", "dependencies": { - "@open-draft/until": "^1.0.3", - "@types/debug": "^4.1.7", - "@xmldom/xmldom": "^0.8.3", - "debug": "^4.3.3", - "headers-polyfill": "3.2.5", - "outvariant": "^1.2.1", - "strict-event-emitter": "^0.2.4", - "web-encoding": "^1.1.5" + "@mux/mux-player": "3.1.0", + "@mux/playback-core": "0.27.0", + "prop-types": "^15.7.2" }, - "engines": { - "node": ">=14" + "peerDependencies": { + "@types/react": "^17.0.0 || ^17.0.0-0 || ^18 || ^18.0.0-0 || ^19 || ^19.0.0-0", + "react": "^17.0.2 || ^17.0.0-0 || ^18 || ^18.0.0-0 || ^19 || ^19.0.0-0", + "react-dom": "^17.0.2 || ^17.0.2-0 || ^18 || ^18.0.0-0 || ^19 || ^19.0.0-0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, - "node_modules/@mswjs/interceptors/node_modules/headers-polyfill": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.2.5.tgz", - "integrity": "sha512-tUCGvt191vNSQgttSyJoibR+VO+I6+iCHIUdhzEMJKE+EAL8BwCN7fUOZlY4ofOelNHsK+gEjxB/B+9N3EWtdA==", - "license": "MIT" + "node_modules/@mux/mux-video": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/@mux/mux-video/-/mux-video-0.22.0.tgz", + "integrity": "sha512-VrY4AVc6KkQcG0EPOtHf7aGXFwO1DTLZKtRRdPCx0KWSAlwR1II5YnHcEAwPbi1Uv94Hykq3Lbjt5dLqRNXKtA==", + "license": "MIT", + "dependencies": { + "@mux/playback-core": "0.27.0", + "castable-video": "~1.1.0", + "custom-media-element": "~1.3.1", + "media-tracks": "~0.3.2" + } }, - "node_modules/@mswjs/interceptors/node_modules/strict-event-emitter": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.2.8.tgz", - "integrity": "sha512-KDf/ujU8Zud3YaLtMCcTI4xkZlZVIYxTLr+XIULexP+77EEVWixeXroLUXQXiVtH4XH2W7jr/3PT1v3zBuvc3A==", + "node_modules/@mux/playback-core": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/@mux/playback-core/-/playback-core-0.27.0.tgz", + "integrity": "sha512-9kzpGRJNXLNMfFV6hvOde2+Uy3HyllwwEt9H5r4gYXOmrivQ6IWIGr9nXrUy7fmNkx6H05W+96zt1GhtBTlSDQ==", "license": "MIT", "dependencies": { - "events": "^3.3.0" + "hls.js": "~1.5.11", + "mux-embed": "^5.3.1" } }, "node_modules/@noble/hashes": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz", - "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.0.tgz", + "integrity": "sha512-HXydb0DgzTpDPwbVeDGCG1gIu7X6+AuU6Zl6av/E/KG8LMsvPntvq+w17CHRpKBmN6Ybdrt1eP3k4cj8DJa78w==", "license": "MIT", "engines": { "node": "^14.21.3 || >=16" @@ -3251,12 +3265,6 @@ "node": ">= 8" } }, - "node_modules/@open-draft/until": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@open-draft/until/-/until-1.0.3.tgz", - "integrity": "sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q==", - "license": "MIT" - }, "node_modules/@paralleldrive/cuid2": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@paralleldrive/cuid2/-/cuid2-2.2.2.tgz", @@ -4636,9 +4644,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.4.tgz", - "integrity": "sha512-jfUJrFct/hTA0XDM5p/htWKoNNTbDLY0KRwEt6pyOA6k2fmk0WVwl65PdUdJZgzGEHWx+49LilkcSaumQRyNQw==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.29.1.tgz", + "integrity": "sha512-ssKhA8RNltTZLpG6/QNkCSge+7mBQGUqJRisZ2MDQcEGaK93QESEgWK2iOpIDZ7k9zPVkG5AS3ksvD5ZWxmItw==", "cpu": [ "arm" ], @@ -4649,9 +4657,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.4.tgz", - "integrity": "sha512-j4nrEO6nHU1nZUuCfRKoCcvh7PIywQPUCBa2UsootTHvTHIoIu2BzueInGJhhvQO/2FTRdNYpf63xsgEqH9IhA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.29.1.tgz", + "integrity": "sha512-CaRfrV0cd+NIIcVVN/jx+hVLN+VRqnuzLRmfmlzpOzB87ajixsN/+9L5xNmkaUUvEbI5BmIKS+XTwXsHEb65Ew==", "cpu": [ "arm64" ], @@ -4662,9 +4670,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.4.tgz", - "integrity": "sha512-GmU/QgGtBTeraKyldC7cDVVvAJEOr3dFLKneez/n7BvX57UdhOqDsVwzU7UOnYA7AAOt+Xb26lk79PldDHgMIQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.29.1.tgz", + "integrity": "sha512-2ORr7T31Y0Mnk6qNuwtyNmy14MunTAMx06VAPI6/Ju52W10zk1i7i5U3vlDRWjhOI5quBcrvhkCHyF76bI7kEw==", "cpu": [ "arm64" ], @@ -4675,9 +4683,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.4.tgz", - "integrity": "sha512-N6oDBiZCBKlwYcsEPXGDE4g9RoxZLK6vT98M8111cW7VsVJFpNEqvJeIPfsCzbf0XEakPslh72X0gnlMi4Ddgg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.29.1.tgz", + "integrity": "sha512-j/Ej1oanzPjmN0tirRd5K2/nncAhS9W6ICzgxV+9Y5ZsP0hiGhHJXZ2JQ53iSSjj8m6cRY6oB1GMzNn2EUt6Ng==", "cpu": [ "x64" ], @@ -4688,9 +4696,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.4.tgz", - "integrity": "sha512-py5oNShCCjCyjWXCZNrRGRpjWsF0ic8f4ieBNra5buQz0O/U6mMXCpC1LvrHuhJsNPgRt36tSYMidGzZiJF6mw==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.29.1.tgz", + "integrity": "sha512-91C//G6Dm/cv724tpt7nTyP+JdN12iqeXGFM1SqnljCmi5yTXriH7B1r8AD9dAZByHpKAumqP1Qy2vVNIdLZqw==", "cpu": [ "arm64" ], @@ -4701,9 +4709,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.4.tgz", - "integrity": "sha512-L7VVVW9FCnTTp4i7KrmHeDsDvjB4++KOBENYtNYAiYl96jeBThFfhP6HVxL74v4SiZEVDH/1ILscR5U9S4ms4g==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.29.1.tgz", + "integrity": "sha512-hEioiEQ9Dec2nIRoeHUP6hr1PSkXzQaCUyqBDQ9I9ik4gCXQZjJMIVzoNLBRGet+hIUb3CISMh9KXuCcWVW/8w==", "cpu": [ "x64" ], @@ -4714,9 +4722,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.4.tgz", - "integrity": "sha512-10ICosOwYChROdQoQo589N5idQIisxjaFE/PAnX2i0Zr84mY0k9zul1ArH0rnJ/fpgiqfu13TFZR5A5YJLOYZA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.29.1.tgz", + "integrity": "sha512-Py5vFd5HWYN9zxBv3WMrLAXY3yYJ6Q/aVERoeUFwiDGiMOWsMs7FokXihSOaT/PMWUty/Pj60XDQndK3eAfE6A==", "cpu": [ "arm" ], @@ -4727,9 +4735,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.4.tgz", - "integrity": "sha512-ySAfWs69LYC7QhRDZNKqNhz2UKN8LDfbKSMAEtoEI0jitwfAG2iZwVqGACJT+kfYvvz3/JgsLlcBP+WWoKCLcw==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.29.1.tgz", + "integrity": "sha512-RiWpGgbayf7LUcuSNIbahr0ys2YnEERD4gYdISA06wa0i8RALrnzflh9Wxii7zQJEB2/Eh74dX4y/sHKLWp5uQ==", "cpu": [ "arm" ], @@ -4740,9 +4748,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.4.tgz", - "integrity": "sha512-uHYJ0HNOI6pGEeZ/5mgm5arNVTI0nLlmrbdph+pGXpC9tFHFDQmDMOEqkmUObRfosJqpU8RliYoGz06qSdtcjg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.29.1.tgz", + "integrity": "sha512-Z80O+taYxTQITWMjm/YqNoe9d10OX6kDh8X5/rFCMuPqsKsSyDilvfg+vd3iXIqtfmp+cnfL1UrYirkaF8SBZA==", "cpu": [ "arm64" ], @@ -4753,9 +4761,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.4.tgz", - "integrity": "sha512-38yiWLemQf7aLHDgTg85fh3hW9stJ0Muk7+s6tIkSUOMmi4Xbv5pH/5Bofnsb6spIwD5FJiR+jg71f0CH5OzoA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.29.1.tgz", + "integrity": "sha512-fOHRtF9gahwJk3QVp01a/GqS4hBEZCV1oKglVVq13kcK3NeVlS4BwIFzOHDbmKzt3i0OuHG4zfRP0YoG5OF/rA==", "cpu": [ "arm64" ], @@ -4765,10 +4773,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.29.1.tgz", + "integrity": "sha512-5a7q3tnlbcg0OodyxcAdrrCxFi0DgXJSoOuidFUzHZ2GixZXQs6Tc3CHmlvqKAmOs5eRde+JJxeIf9DonkmYkw==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.4.tgz", - "integrity": "sha512-q73XUPnkwt9ZNF2xRS4fvneSuaHw2BXuV5rI4cw0fWYVIWIBeDZX7c7FWhFQPNTnE24172K30I+dViWRVD9TwA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.29.1.tgz", + "integrity": "sha512-9b4Mg5Yfz6mRnlSPIdROcfw1BU22FQxmfjlp/CShWwO3LilKQuMISMTtAu/bxmmrE6A902W2cZJuzx8+gJ8e9w==", "cpu": [ "ppc64" ], @@ -4779,9 +4800,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.4.tgz", - "integrity": "sha512-Aie/TbmQi6UXokJqDZdmTJuZBCU3QBDA8oTKRGtd4ABi/nHgXICulfg1KI6n9/koDsiDbvHAiQO3YAUNa/7BCw==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.29.1.tgz", + "integrity": "sha512-G5pn0NChlbRM8OJWpJFMX4/i8OEU538uiSv0P6roZcbpe/WfhEO+AT8SHVKfp8qhDQzaz7Q+1/ixMy7hBRidnQ==", "cpu": [ "riscv64" ], @@ -4792,9 +4813,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.4.tgz", - "integrity": "sha512-P8MPErVO/y8ohWSP9JY7lLQ8+YMHfTI4bAdtCi3pC2hTeqFJco2jYspzOzTUB8hwUWIIu1xwOrJE11nP+0JFAQ==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.29.1.tgz", + "integrity": "sha512-WM9lIkNdkhVwiArmLxFXpWndFGuOka4oJOZh8EP3Vb8q5lzdSCBuhjavJsw68Q9AKDGeOOIHYzYm4ZFvmWez5g==", "cpu": [ "s390x" ], @@ -4805,9 +4826,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.4.tgz", - "integrity": "sha512-K03TljaaoPK5FOyNMZAAEmhlyO49LaE4qCsr0lYHUKyb6QacTNF9pnfPpXnFlFD3TXuFbFbz7tJ51FujUXkXYA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.29.1.tgz", + "integrity": "sha512-87xYCwb0cPGZFoGiErT1eDcssByaLX4fc0z2nRM6eMtV9njAfEE6OW3UniAoDhX4Iq5xQVpE6qO9aJbCFumKYQ==", "cpu": [ "x64" ], @@ -4818,9 +4839,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.4.tgz", - "integrity": "sha512-VJYl4xSl/wqG2D5xTYncVWW+26ICV4wubwN9Gs5NrqhJtayikwCXzPL8GDsLnaLU3WwhQ8W02IinYSFJfyo34Q==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.29.1.tgz", + "integrity": "sha512-xufkSNppNOdVRCEC4WKvlR1FBDyqCSCpQeMMgv9ZyXqqtKBfkw1yfGMTUTs9Qsl6WQbJnsGboWCp7pJGkeMhKA==", "cpu": [ "x64" ], @@ -4831,9 +4852,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.4.tgz", - "integrity": "sha512-ku2GvtPwQfCqoPFIJCqZ8o7bJcj+Y54cZSr43hHca6jLwAiCbZdBUOrqE6y29QFajNAzzpIOwsckaTFmN6/8TA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.29.1.tgz", + "integrity": "sha512-F2OiJ42m77lSkizZQLuC+jiZ2cgueWQL5YC9tjo3AgaEw+KJmVxHGSyQfDUoYR9cci0lAywv2Clmckzulcq6ig==", "cpu": [ "arm64" ], @@ -4844,9 +4865,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.4.tgz", - "integrity": "sha512-V3nCe+eTt/W6UYNr/wGvO1fLpHUrnlirlypZfKCT1fG6hWfqhPgQV/K/mRBXBpxc0eKLIF18pIOFVPh0mqHjlg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.29.1.tgz", + "integrity": "sha512-rYRe5S0FcjlOBZQHgbTKNrqxCBUmgDJem/VQTCcTnA2KCabYSWQDrytOzX7avb79cAAweNmMUb/Zw18RNd4mng==", "cpu": [ "ia32" ], @@ -4857,9 +4878,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.4.tgz", - "integrity": "sha512-LTw1Dfd0mBIEqUVCxbvTE/LLo+9ZxVC9k99v1v4ahg9Aak6FpqOfNu5kRkeTAn0wphoC4JU7No1/rL+bBCEwhg==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.29.1.tgz", + "integrity": "sha512-+10CMg9vt1MoHj6x1pxyjPSMjHTIlqs8/tBztXvPAx24SKs9jwVnKqHJumlH/IzhaPUaj3T6T6wfZr8okdXaIg==", "cpu": [ "x64" ], @@ -4870,9 +4891,9 @@ ] }, "node_modules/@rushstack/node-core-library": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.9.0.tgz", - "integrity": "sha512-MMsshEWkTbXqxqFxD4gcIUWQOCeBChlGczdZbHfqmNZQFLHB3yWxDFSMHFUdu2/OB9NUk7Awn5qRL+rws4HQNg==", + "version": "5.10.1", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.10.1.tgz", + "integrity": "sha512-BSb/KcyBHmUQwINrgtzo6jiH0HlGFmrUy33vO6unmceuVKTEyL2q+P0fQq2oB5hvXVWOEUhxB2QvlkZluvUEmg==", "license": "MIT", "dependencies": { "ajv": "~8.13.0", @@ -4959,12 +4980,12 @@ } }, "node_modules/@rushstack/terminal": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.2.tgz", - "integrity": "sha512-2fC1wqu1VCExKC0/L+0noVcFQEXEnoBOtCIex1TOjBzEDWcw8KzJjjj7aTP6mLxepG0XIyn9OufeFb6SFsa+sg==", + "version": "0.14.4", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.14.4.tgz", + "integrity": "sha512-NxACqERW0PHq8Rpq1V6v5iTHEwkRGxenjEW+VWqRYQ8T9puUzgmGHmEZUaUEDHAe9Qyvp0/Ew04sAiQw9XjhJg==", "license": "MIT", "dependencies": { - "@rushstack/node-core-library": "5.9.0", + "@rushstack/node-core-library": "5.10.1", "supports-color": "~8.1.1" }, "peerDependencies": { @@ -4992,12 +5013,12 @@ } }, "node_modules/@rushstack/ts-command-line": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.23.0.tgz", - "integrity": "sha512-jYREBtsxduPV6ptNq8jOKp9+yx0ld1Tb/Tkdnlj8gTjazl1sF3DwX2VbluyYrNd0meWIL0bNeer7WDf5tKFjaQ==", + "version": "4.23.2", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.23.2.tgz", + "integrity": "sha512-JJ7XZX5K3ThBBva38aomgsPv1L7FV6XmSOcR6HtM7HDFZJkepqT65imw26h9ggGqMjsY0R9jcl30tzKcVj9aOQ==", "license": "MIT", "dependencies": { - "@rushstack/terminal": "0.14.2", + "@rushstack/terminal": "0.14.4", "@types/argparse": "1.0.38", "argparse": "~1.0.9", "string-argv": "~0.3.1" @@ -5936,9 +5957,9 @@ } }, "node_modules/@strapi/admin": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/admin/-/admin-5.3.0.tgz", - "integrity": "sha512-3IPKAg2iHxTGt3Pwg9sJmAEK3BIeziyTyZrG1UMaRSAsSfUYg2XcC+uY65iFVpiuNqnKJ0ShUciqlEPYfvdMew==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/admin/-/admin-5.6.0.tgz", + "integrity": "sha512-Lby4HY5bJknKlulZSSYWYudgi88e4Vz/AKv+h37i2O1xEX2Dfh3Kc+11atSKiNzF+PIKA5njmRAItT8HUh5V7g==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@casl/ability": "6.5.0", @@ -5946,12 +5967,12 @@ "@radix-ui/react-context": "1.0.1", "@radix-ui/react-toolbar": "1.0.4", "@reduxjs/toolkit": "1.9.7", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/permissions": "5.3.0", - "@strapi/types": "5.3.0", - "@strapi/typescript-utils": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/permissions": "5.6.0", + "@strapi/types": "5.6.0", + "@strapi/typescript-utils": "5.6.0", + "@strapi/utils": "5.6.0", "@testing-library/dom": "10.1.0", "@testing-library/react": "15.0.7", "@testing-library/user-event": "14.5.2", @@ -5979,7 +6000,6 @@ "koa-static": "5.0.0", "koa2-ratelimit": "^1.1.3", "lodash": "4.17.21", - "msw": "1.3.0", "node-schedule": "2.1.1", "ora": "5.4.1", "p-map": "4.0.0", @@ -6010,115 +6030,22 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/data-transfer": "^5.0.0 ||  ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/data-transfer": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", "styled-components": "^6.0.0" } }, - "node_modules/@strapi/admin/node_modules/cookies": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", - "license": "MIT", - "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@strapi/admin/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/admin/node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/admin/node_modules/koa": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", - "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", - "license": "MIT", - "dependencies": { - "accepts": "^1.3.5", - "cache-content-type": "^1.0.0", - "content-disposition": "~0.5.2", - "content-type": "^1.0.4", - "cookies": "~0.9.0", - "debug": "^4.3.2", - "delegates": "^1.0.0", - "depd": "^2.0.0", - "destroy": "^1.0.4", - "encodeurl": "^1.0.2", - "escape-html": "^1.0.3", - "fresh": "~0.5.2", - "http-assert": "^1.3.0", - "http-errors": "^1.6.3", - "is-generator-function": "^1.0.7", - "koa-compose": "^4.1.0", - "koa-convert": "^2.0.0", - "on-finished": "^2.3.0", - "only": "~0.0.2", - "parseurl": "^1.3.2", - "statuses": "^1.5.0", - "type-is": "^1.6.16", - "vary": "^1.1.2" - }, - "engines": { - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" - } - }, - "node_modules/@strapi/admin/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/admin/node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@strapi/cloud-cli": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/cloud-cli/-/cloud-cli-5.3.0.tgz", - "integrity": "sha512-9vzfVXhefrwP7Ov+2LSm+hvzKIH/jLUtyCYUqaa4JbkMsbPsYNukoWWpKIE9RB7EEqkkW6kTQSGSqPEZ6E0taQ==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/cloud-cli/-/cloud-cli-5.6.0.tgz", + "integrity": "sha512-M0Fot1YRuqWJR1RVehFKGsUvTP7euyxY6Mi2lmn3SaEoY1g28LwXBo3u/nNGFIQqlLDW4c+JJH1fUWyV47zbeg==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@strapi/utils": "5.3.0", + "@strapi/utils": "5.6.0", "axios": "1.7.4", + "boxen": "5.1.2", "chalk": "4.1.2", "cli-progress": "3.12.0", "commander": "8.3.0", @@ -6146,18 +6073,18 @@ } }, "node_modules/@strapi/content-manager": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/content-manager/-/content-manager-5.3.0.tgz", - "integrity": "sha512-6/0GiVooa8WL3vH456F2QYRFHzaorAt8Fem4Sc4vfQuguKXo/SwjAHI92MWxsFlXTu2lpJiTMdh9UCgct9VQlA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/content-manager/-/content-manager-5.6.0.tgz", + "integrity": "sha512-IUSubDlngYc43dEkbfVfc1mOWjj6es1Hz28LdJsA3MQ1PdKXJb5/Xn6OhZB7j7eoj+AkXaCygT0LFCXuKtlq6g==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@radix-ui/react-toolbar": "1.0.4", "@reduxjs/toolkit": "1.9.7", "@sindresorhus/slugify": "1.1.0", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/types": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/types": "5.6.0", + "@strapi/utils": "5.6.0", "codemirror5": "npm:codemirror@^5.65.11", "date-fns": "2.30.0", "fractional-indexing": "3.2.0", @@ -6176,6 +6103,7 @@ "markdown-it-sub": "^1.0.0", "markdown-it-sup": "1.0.0", "node-schedule": "2.1.1", + "prismjs": "^1.29.0", "qs": "6.11.1", "react-dnd": "16.0.1", "react-dnd-html5-backend": "16.0.1", @@ -6195,106 +6123,25 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/admin": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", "styled-components": "^6.0.0" } }, - "node_modules/@strapi/content-manager/node_modules/cookies": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", - "license": "MIT", - "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@strapi/content-manager/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/content-manager/node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/content-manager/node_modules/koa": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", - "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", - "license": "MIT", - "dependencies": { - "accepts": "^1.3.5", - "cache-content-type": "^1.0.0", - "content-disposition": "~0.5.2", - "content-type": "^1.0.4", - "cookies": "~0.9.0", - "debug": "^4.3.2", - "delegates": "^1.0.0", - "depd": "^2.0.0", - "destroy": "^1.0.4", - "encodeurl": "^1.0.2", - "escape-html": "^1.0.3", - "fresh": "~0.5.2", - "http-assert": "^1.3.0", - "http-errors": "^1.6.3", - "is-generator-function": "^1.0.7", - "koa-compose": "^4.1.0", - "koa-convert": "^2.0.0", - "on-finished": "^2.3.0", - "only": "~0.0.2", - "parseurl": "^1.3.2", - "statuses": "^1.5.0", - "type-is": "^1.6.16", - "vary": "^1.1.2" - }, - "engines": { - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" - } - }, - "node_modules/@strapi/content-manager/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/@strapi/content-releases": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/content-releases/-/content-releases-5.3.0.tgz", - "integrity": "sha512-JuPNiYRy91udKBt9a5eD11w5jHO2iI6ZFGYhDEkU3QKcVmtt7XqNbf2ERGNVnjZMTIjIYjWaCEDt282dccdrgg==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/content-releases/-/content-releases-5.6.0.tgz", + "integrity": "sha512-u8S1Qb9vDL0YJWwe3n1kBctOuh0FrjD++2TZJ6kYfbaHB1PyO78QUCsqGPt1dO4t1Pj4VmcdVp+7+m7Kp8KV5A==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@reduxjs/toolkit": "1.9.7", - "@strapi/database": "5.3.0", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/types": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/database": "5.6.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/types": "5.6.0", + "@strapi/utils": "5.6.0", "date-fns": "2.30.0", "date-fns-tz": "2.0.1", "formik": "2.4.5", @@ -6319,17 +6166,17 @@ } }, "node_modules/@strapi/content-type-builder": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/content-type-builder/-/content-type-builder-5.3.0.tgz", - "integrity": "sha512-PUgWJu0HBz0JB63LAEf/QBWaURkN/iQ88JUCOGrdr61kCfnV9b340FvyltD39lioTs1zT00T7wB8w8JGzJfARw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/content-type-builder/-/content-type-builder-5.6.0.tgz", + "integrity": "sha512-1oUL4kUWvTL8TAlNqqQvs6PZxFmsGToA4ElanVcjUFvYunaxzX58F+zu4XCBeR3GqjPlz1EPhuXp/VpuibRDwQ==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@reduxjs/toolkit": "1.9.7", "@sindresorhus/slugify": "1.1.0", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/generators": "5.3.0", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/utils": "5.3.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/generators": "5.6.0", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/utils": "5.6.0", "date-fns": "2.30.0", "fs-extra": "11.2.0", "immer": "9.0.21", @@ -6345,7 +6192,7 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/admin": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", @@ -6353,23 +6200,23 @@ } }, "node_modules/@strapi/core": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/core/-/core-5.3.0.tgz", - "integrity": "sha512-b7E+KCzR18Li4l1NcIrWK/GErr7LCnjmj7ogTCgkWe4ZFk1cC4UAm2q76/hSY9S9jD46E1Uf4JsJTNTl7NqpXw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/core/-/core-5.6.0.tgz", + "integrity": "sha512-/1o6OuQVLZGYHj0sqhgGMxvZXnGTry3Vlvg1F3kuwQy7D+eg+EV2IK3LZLE4MhXFGHDMgJzd6Qa1iR4xxY41PA==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@koa/cors": "5.0.0", "@koa/router": "12.0.2", "@paralleldrive/cuid2": "2.2.2", - "@strapi/admin": "5.3.0", - "@strapi/database": "5.3.0", - "@strapi/generators": "5.3.0", - "@strapi/logger": "5.3.0", - "@strapi/pack-up": "5.0.0", - "@strapi/permissions": "5.3.0", - "@strapi/types": "5.3.0", - "@strapi/typescript-utils": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/admin": "5.6.0", + "@strapi/database": "5.6.0", + "@strapi/generators": "5.6.0", + "@strapi/logger": "5.6.0", + "@strapi/pack-up": "5.0.2", + "@strapi/permissions": "5.6.0", + "@strapi/types": "5.6.0", + "@strapi/typescript-utils": "5.6.0", + "@strapi/utils": "5.6.0", "bcryptjs": "2.4.3", "boxen": "5.1.2", "chalk": "4.1.2", @@ -6447,109 +6294,15 @@ "@colors/colors": "1.5.0" } }, - "node_modules/@strapi/core/node_modules/cookies": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", - "license": "MIT", + "node_modules/@strapi/data-transfer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/data-transfer/-/data-transfer-5.6.0.tgz", + "integrity": "sha512-bOv/oki6GBR0YDu0nh8RimOspbC+EHvkNrJqaGqMWL5S9E2urvj+kTY6gQQVsCPv7zEfmZIEz7K/HzSzz/ga7A==", + "license": "SEE LICENSE IN LICENSE", "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@strapi/core/node_modules/koa": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", - "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", - "license": "MIT", - "dependencies": { - "accepts": "^1.3.5", - "cache-content-type": "^1.0.0", - "content-disposition": "~0.5.2", - "content-type": "^1.0.4", - "cookies": "~0.9.0", - "debug": "^4.3.2", - "delegates": "^1.0.0", - "depd": "^2.0.0", - "destroy": "^1.0.4", - "encodeurl": "^1.0.2", - "escape-html": "^1.0.3", - "fresh": "~0.5.2", - "http-assert": "^1.3.0", - "http-errors": "^1.6.3", - "is-generator-function": "^1.0.7", - "koa-compose": "^4.1.0", - "koa-convert": "^2.0.0", - "on-finished": "^2.3.0", - "only": "~0.0.2", - "parseurl": "^1.3.2", - "statuses": "^1.5.0", - "type-is": "^1.6.16", - "vary": "^1.1.2" - }, - "engines": { - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" - } - }, - "node_modules/@strapi/core/node_modules/koa/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/core/node_modules/koa/node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/core/node_modules/koa/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/@strapi/core/node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/@strapi/data-transfer": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/data-transfer/-/data-transfer-5.3.0.tgz", - "integrity": "sha512-Egvk3rGtnovoGxRBqJEWhGmPjrL7dAS8788J6rR0Md0wJHO1xwCYsiK4w4uLfdufJt5BxTgLuYv3+uKY1b4zNQ==", - "license": "SEE LICENSE IN LICENSE", - "dependencies": { - "@strapi/logger": "5.3.0", - "@strapi/types": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/logger": "5.6.0", + "@strapi/types": "5.6.0", + "@strapi/utils": "5.6.0", "chalk": "4.1.2", "cli-table3": "0.6.5", "commander": "8.3.0", @@ -6571,13 +6324,13 @@ } }, "node_modules/@strapi/database": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/database/-/database-5.3.0.tgz", - "integrity": "sha512-FEK+LiZm7SbNroz8THobLUlyJlxRSespF3v/83M7t5FiFDdq60tag/TaXo+kkxfJh9RdRa5OxorA7J+0IRUerw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/database/-/database-5.6.0.tgz", + "integrity": "sha512-d6kAXA07zDXK6vs9j07uC3Khf/bJHj0jOSL5wq+7aeM1tydDtl0TEO9JpGqXkSE/X0m5m1qb5iUZzwPhWw+TAQ==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@paralleldrive/cuid2": "2.2.2", - "@strapi/utils": "5.3.0", + "@strapi/utils": "5.6.0", "ajv": "8.16.0", "date-fns": "2.30.0", "debug": "4.3.4", @@ -6593,9 +6346,9 @@ } }, "node_modules/@strapi/design-system": { - "version": "2.0.0-rc.12", - "resolved": "https://registry.npmjs.org/@strapi/design-system/-/design-system-2.0.0-rc.12.tgz", - "integrity": "sha512-xtetrMqYi4CPzKCPbx9I3RYBwWAEBTDF3rrknEmKGqpLt+0OV+nRmNA5H3425NrWDcWp01MIEMJxB5EURGCq+A==", + "version": "2.0.0-rc.14", + "resolved": "https://registry.npmjs.org/@strapi/design-system/-/design-system-2.0.0-rc.14.tgz", + "integrity": "sha512-zOtArGfAQmKO5qqRE0IlONfjR1JL2VL/KjV3hE++KSybOZgfhbdckN4svpNtJ6i2Pv+glm7nHdu9h6AHRBuujQ==", "license": "MIT", "dependencies": { "@codemirror/lang-json": "6.0.1", @@ -6617,7 +6370,7 @@ "@radix-ui/react-switch": "1.0.3", "@radix-ui/react-tabs": "1.0.4", "@radix-ui/react-tooltip": "1.0.7", - "@strapi/ui-primitives": "2.0.0-rc.12", + "@strapi/ui-primitives": "2.0.0-rc.14", "@uiw/react-codemirror": "4.22.2", "react-remove-scroll": "2.5.10" }, @@ -6628,43 +6381,15 @@ "styled-components": "^6.0.0" } }, - "node_modules/@strapi/email": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/email/-/email-5.3.0.tgz", - "integrity": "sha512-3JgFk0+F1SpOonMS0hRPVApKlx4Kd2KJq0B47Dfog7CtNPkHls2Za4lhhcXEzvBmgGjoYJGHPmRuqNMf/rT7Ww==", - "license": "SEE LICENSE IN LICENSE", - "dependencies": { - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/provider-email-sendmail": "5.3.0", - "@strapi/utils": "5.3.0", - "lodash": "4.17.21", - "react-intl": "6.6.2", - "react-query": "3.39.3", - "yup": "0.32.9" - }, - "engines": { - "node": ">=18.0.0 <=22.x.x", - "npm": ">=6.0.0" - }, - "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", - "koa": "2.13.4", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^6.0.0" - } - }, "node_modules/@strapi/generators": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/generators/-/generators-5.3.0.tgz", - "integrity": "sha512-gH1sgE7CWkTrGYdfvbN4aPKV5YWXMRJbRMSFJ3vH/TPPRciKlsHxoOGEEqmUYLveNjmzn6XM7vi/uk65FGybHw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/generators/-/generators-5.6.0.tgz", + "integrity": "sha512-bocZhKpfFN4eLkEz+gtKCyFPc+2Z2gT+t3u8F0Sd8kzh3ifCPGk08Ihh3ROtO0UlaL24xmayYBUKVAH2cfKYhw==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@sindresorhus/slugify": "1.1.0", - "@strapi/typescript-utils": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/typescript-utils": "5.6.0", + "@strapi/utils": "5.6.0", "chalk": "4.1.2", "copyfiles": "2.4.1", "fs-extra": "11.2.0", @@ -6678,15 +6403,15 @@ } }, "node_modules/@strapi/i18n": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/i18n/-/i18n-5.3.0.tgz", - "integrity": "sha512-S3IPOBlq789VAqLiFgfM9kMOFhJrG7JnJ4+Levnf3DJbbxCAUlVeOiI+DcXn5jBDi9Jpfh4oePovoU2nRc7Axg==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/i18n/-/i18n-5.6.0.tgz", + "integrity": "sha512-sonJklCPdUVLGLtT2kCJHn+MX8/x/kfQBNPxRgHRBSDHogyiQtT12jU8kXJuwfMomT7Uozs3IZ/Lkboisos8qQ==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@reduxjs/toolkit": "1.9.7", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/utils": "5.3.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/utils": "5.6.0", "lodash": "4.17.21", "qs": "6.11.1", "react-intl": "6.6.2", @@ -6698,8 +6423,8 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", - "@strapi/content-manager": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/admin": "^5.0.0", + "@strapi/content-manager": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", @@ -6707,9 +6432,9 @@ } }, "node_modules/@strapi/icons": { - "version": "2.0.0-rc.12", - "resolved": "https://registry.npmjs.org/@strapi/icons/-/icons-2.0.0-rc.12.tgz", - "integrity": "sha512-Qt5WQ9fjS1Xh7F8Elrlf3ACJGwCjogZ7xFHl/xZNUgAueZb7OYsVL6Aclr/xAJe8cJP5ohpB0c6FI3JoyjcnHQ==", + "version": "2.0.0-rc.14", + "resolved": "https://registry.npmjs.org/@strapi/icons/-/icons-2.0.0-rc.14.tgz", + "integrity": "sha512-6kamFHcsoFpffp96HmFGgpM8FDezwb86sJ4c3Ydp7+eTgtEsHd8yLekAQhpaWXd2ZsHwRDbLLR0Tu1orgvRVYg==", "license": "MIT", "peerDependencies": { "react": "^17.0.0 || ^18.0.0", @@ -6718,9 +6443,9 @@ } }, "node_modules/@strapi/logger": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/logger/-/logger-5.3.0.tgz", - "integrity": "sha512-rAJjv6vOWcNA50/GXSeVyP6qmy/me4eie1qkWjI0ZFIY0pL6V1eahau2ZsFyASiFsBQEn9f6qp5HBqViYU5Esg==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-UxsV0UwLCEZgK2D9k9K18j6umr+AN/K1DWStSZHDLv0HJvFtCdjZc9ReOHzBLlpD35bBo8ffbqsdiBtreT0zxw==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "lodash": "4.17.21", @@ -6732,16 +6457,16 @@ } }, "node_modules/@strapi/pack-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@strapi/pack-up/-/pack-up-5.0.0.tgz", - "integrity": "sha512-XN00SUwiR/rFTXxA3TMyuPt6SN4r6vuhUtx3y2D0NTzgVToNi++MyspPQ/jHbolHhQxUWnet6X/2JRprtE/YpQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@strapi/pack-up/-/pack-up-5.0.2.tgz", + "integrity": "sha512-DWicuAyjLjVCxL2FQeTF3keakfHmfKx2BuBhBXEhiSWv7wW05MlW9fQqpZBQMKdkcYuzGnKwryhZQwaOF2CoOQ==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@vitejs/plugin-react-swc": "3.6.0", + "@vitejs/plugin-react-swc": "3.7.0", "boxen": "5.1.2", "browserslist-to-esbuild": "1.2.0", "chalk": "4.1.2", - "chokidar": "3.6.0", + "chokidar": "4.0.1", "commander": "8.3.0", "esbuild": "0.20.2", "esbuild-register": "3.5.0", @@ -6751,12 +6476,12 @@ "ora": "5.4.1", "outdent": "0.8.0", "pkg-up": "3.1.0", - "prettier": "2.8.8", - "prettier-plugin-packagejson": "2.4.14", + "prettier": "3.3.3", + "prettier-plugin-packagejson": "2.5.2", "prompts": "2.4.2", "rxjs": "7.8.1", "typescript": "5.4.4", - "vite": "5.2.8", + "vite": "5.4.8", "yup": "0.32.9" }, "bin": { @@ -7135,6 +6860,33 @@ "node": ">=12" } }, + "node_modules/@strapi/pack-up/node_modules/@vitejs/plugin-react-swc": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.0.tgz", + "integrity": "sha512-yrknSb3Dci6svCd/qhHqhFPDSw0QtjumcqdKMoNNzmOl5lMXTTiqzjWtG4Qask2HdvvzaNgSunbQGet8/GrKdA==", + "license": "MIT", + "dependencies": { + "@swc/core": "^1.5.7" + }, + "peerDependencies": { + "vite": "^4 || ^5" + } + }, + "node_modules/@strapi/pack-up/node_modules/chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/@strapi/pack-up/node_modules/esbuild": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", @@ -7182,19 +6934,17 @@ "git-up": "^7.0.0" } }, - "node_modules/@strapi/pack-up/node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "node_modules/@strapi/pack-up/node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", "license": "MIT", - "bin": { - "prettier": "bin-prettier.js" - }, "engines": { - "node": ">=10.13.0" + "node": ">= 14.16.0" }, "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/@strapi/pack-up/node_modules/typescript": { @@ -7211,14 +6961,14 @@ } }, "node_modules/@strapi/pack-up/node_modules/vite": { - "version": "5.2.8", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", - "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "version": "5.4.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", + "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", "license": "MIT", "dependencies": { - "esbuild": "^0.20.1", - "postcss": "^8.4.38", - "rollup": "^4.13.0" + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" }, "bin": { "vite": "bin/vite.js" @@ -7237,6 +6987,7 @@ "less": "*", "lightningcss": "^1.21.0", "sass": "*", + "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" @@ -7254,6 +7005,9 @@ "sass": { "optional": true }, + "sass-embedded": { + "optional": true + }, "stylus": { "optional": true }, @@ -7265,171 +7019,496 @@ } } }, - "node_modules/@strapi/permissions": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/permissions/-/permissions-5.3.0.tgz", - "integrity": "sha512-v7CBMi91z0GKsYy2hCrVqUuECjZsTbD2ZlKbwwkpW/j9M++3y8dMfQcjgAXpJxoe2XjuwK4gI4MDl4aVt8gDIg==", - "license": "SEE LICENSE IN LICENSE", - "dependencies": { - "@casl/ability": "6.5.0", - "@strapi/utils": "5.3.0", - "lodash": "4.17.21", - "qs": "6.11.1", - "sift": "16.0.1" - }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], "engines": { - "node": ">=18.0.0 <=22.x.x", - "npm": ">=6.0.0" + "node": ">=12" } }, - "node_modules/@strapi/plugin-cloud": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/plugin-cloud/-/plugin-cloud-5.3.0.tgz", - "integrity": "sha512-Y30elqf+SxYfm+XgmrfwgIUFstWVe2rkjoEO00/5P+hsMCOBwwiX1Tx0nAn9AnXQ9EsRz3VwKlQNWCbg6v9EFQ==", + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], "license": "MIT", - "dependencies": { - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "react-intl": "6.6.2" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=18.0.0 <=22.x.x", - "npm": ">=6.0.0" - }, - "peerDependencies": { - "@strapi/strapi": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^6.0.0" + "node": ">=12" } }, - "node_modules/@strapi/plugin-users-permissions": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/plugin-users-permissions/-/plugin-users-permissions-5.3.0.tgz", - "integrity": "sha512-6NBD8xOq19P3rE0MChhaiLB3LSpbm1KaUcsM8qqkkr8yfp/HGASACVCgqtn6W4VssHpaT8j5cdshE+bn+rHC3A==", - "license": "SEE LICENSE IN LICENSE", - "dependencies": { - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/utils": "5.3.0", - "bcryptjs": "2.4.3", - "formik": "2.4.5", - "grant-koa": "5.4.8", - "immer": "9.0.21", - "jsonwebtoken": "9.0.0", - "jwk-to-pem": "2.0.5", - "koa": "2.15.2", - "koa2-ratelimit": "^1.1.3", - "lodash": "4.17.21", - "prop-types": "^15.8.1", - "purest": "4.0.2", - "react-intl": "6.6.2", - "react-query": "3.39.3", - "react-redux": "8.1.3", - "url-join": "4.0.1", - "yup": "0.32.9" - }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">=18.0.0 <=22.x.x", - "npm": ">=6.0.0" - }, - "peerDependencies": { - "@strapi/strapi": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^6.0.0" + "node": ">=12" } }, - "node_modules/@strapi/plugin-users-permissions/node_modules/cookies": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], "license": "MIT", - "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">= 0.8" + "node": ">=12" } }, - "node_modules/@strapi/plugin-users-permissions/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], "license": "MIT", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.6" + "node": ">=12" } }, - "node_modules/@strapi/plugin-users-permissions/node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.6" + "node": ">=12" } }, - "node_modules/@strapi/plugin-users-permissions/node_modules/koa": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", - "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@strapi/pack-up/node_modules/vite/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/@strapi/permissions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/permissions/-/permissions-5.6.0.tgz", + "integrity": "sha512-udH0FMcFtKpffGw8pPLDzbvlX4rgYCjSXqrkrX9860hxJrPA0bba2rjxurGYiNyqyfcb/ohKW+ku+3WjORHrmQ==", + "license": "SEE LICENSE IN LICENSE", "dependencies": { - "accepts": "^1.3.5", - "cache-content-type": "^1.0.0", - "content-disposition": "~0.5.2", - "content-type": "^1.0.4", - "cookies": "~0.9.0", - "debug": "^4.3.2", - "delegates": "^1.0.0", - "depd": "^2.0.0", - "destroy": "^1.0.4", - "encodeurl": "^1.0.2", - "escape-html": "^1.0.3", - "fresh": "~0.5.2", - "http-assert": "^1.3.0", - "http-errors": "^1.6.3", - "is-generator-function": "^1.0.7", - "koa-compose": "^4.1.0", - "koa-convert": "^2.0.0", - "on-finished": "^2.3.0", - "only": "~0.0.2", - "parseurl": "^1.3.2", - "statuses": "^1.5.0", - "type-is": "^1.6.16", - "vary": "^1.1.2" + "@casl/ability": "6.5.0", + "@strapi/utils": "5.6.0", + "lodash": "4.17.21", + "qs": "6.11.1", + "sift": "16.0.1" }, "engines": { - "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" + "node": ">=18.0.0 <=22.x.x", + "npm": ">=6.0.0" } }, - "node_modules/@strapi/plugin-users-permissions/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "node_modules/@strapi/plugin-cloud": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/plugin-cloud/-/plugin-cloud-5.6.0.tgz", + "integrity": "sha512-Wdj5n1gp2vw/2G2CE/qizL8AFtlowMb1Qd/r2I1isP939SdZp9COeA+tJfovN5Y9/YMETfp6RGfubj2buO83CQ==", "license": "MIT", + "dependencies": { + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "react-intl": "6.6.2" + }, "engines": { - "node": ">= 0.6" + "node": ">=18.0.0 <=22.x.x", + "npm": ">=6.0.0" + }, + "peerDependencies": { + "@strapi/strapi": "^5.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0", + "react-router-dom": "^6.0.0", + "styled-components": "^6.0.0" + } + }, + "node_modules/@strapi/plugin-users-permissions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/plugin-users-permissions/-/plugin-users-permissions-5.6.0.tgz", + "integrity": "sha512-U07IQayrVSPmFQMUDoiMS0kjXbqFN3c+l3JmF0LCmIKP9GwqA81vOi+JeuBhlKu+Qcb+cJV0wz0R05+B2C9EDw==", + "license": "SEE LICENSE IN LICENSE", + "dependencies": { + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/utils": "5.6.0", + "bcryptjs": "2.4.3", + "formik": "2.4.5", + "grant-koa": "5.4.8", + "immer": "9.0.21", + "jsonwebtoken": "9.0.0", + "jwk-to-pem": "2.0.5", + "koa": "2.15.2", + "koa2-ratelimit": "^1.1.3", + "lodash": "4.17.21", + "prop-types": "^15.8.1", + "purest": "4.0.2", + "react-intl": "6.6.2", + "react-query": "3.39.3", + "react-redux": "8.1.3", + "url-join": "4.0.1", + "yup": "0.32.9" + }, + "engines": { + "node": ">=18.0.0 <=22.x.x", + "npm": ">=6.0.0" + }, + "peerDependencies": { + "@strapi/strapi": "^5.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0", + "react-router-dom": "^6.0.0", + "styled-components": "^6.0.0" } }, "node_modules/@strapi/provider-email-sendmail": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/provider-email-sendmail/-/provider-email-sendmail-5.3.0.tgz", - "integrity": "sha512-J+M/Ze4Qn1LMzMV1Ly/vrgEzxUZoZmLurc09nBAK1hgTRIwA2mxlSv9vhs2KdYA6hNia1jsv7oKH7PGBnUvTfA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/provider-email-sendmail/-/provider-email-sendmail-5.6.0.tgz", + "integrity": "sha512-4kmeXpYh+iTo613qxXwTN9qOc32au8mO2TBOULZ7fAG29KZIpT/vJ+LltGbwOMRRELo5ELJnVcA5SLhPYJ2Gzw==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@strapi/utils": "5.3.0", + "@strapi/utils": "5.6.0", "sendmail": "^1.6.1" }, "engines": { @@ -7455,12 +7534,12 @@ } }, "node_modules/@strapi/provider-upload-local": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/provider-upload-local/-/provider-upload-local-5.3.0.tgz", - "integrity": "sha512-DNnJXHOCjIUlh3yskwujSw+OSBjK5Uocd3mrpVslAHtAf3Y1rfsLcP915+he/WKI2aX2zfY6Xx2fgv1Rshi2Cw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/provider-upload-local/-/provider-upload-local-5.6.0.tgz", + "integrity": "sha512-SRLwKF2J2Wrk+UgbP83vQjBgtHFeXxdUyehiibUDzEGlKDnFvwhLXO5DK5WlEiPefcW2OdZrkyHbHqZ2QQBwTw==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@strapi/utils": "5.3.0", + "@strapi/utils": "5.6.0", "fs-extra": "11.2.0" }, "engines": { @@ -7469,15 +7548,15 @@ } }, "node_modules/@strapi/review-workflows": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/review-workflows/-/review-workflows-5.3.0.tgz", - "integrity": "sha512-8ErApG7o84Q4acXM9AVaR+l6sPOh3XZMXlcPfYpT7IDMtudLJ8pM6I0X0Y4lsiiMiz+3CGCjitwUGpUPxk2yTA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/review-workflows/-/review-workflows-5.6.0.tgz", + "integrity": "sha512-bolyB0lFk6zC9OzLSReXgjRNfAdypRA2Bm9n2XXHWsgq9mI4sqVVLIgMHxpTx/lfcgx+2+8DxhkNQOBh3EbPLg==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@reduxjs/toolkit": "1.9.7", - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/utils": "5.3.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/utils": "5.6.0", "fractional-indexing": "3.2.0", "react-dnd": "16.0.1", "react-dnd-html5-backend": "16.0.1", @@ -7491,8 +7570,8 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", - "@strapi/content-manager": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/admin": "^5.0.0", + "@strapi/content-manager": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", @@ -7500,31 +7579,31 @@ } }, "node_modules/@strapi/strapi": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/strapi/-/strapi-5.3.0.tgz", - "integrity": "sha512-f6DWn57m9B5Ocu+hbMV4ND1yBdh2H+rVms2rp8zOgnu/NcgwyTJHVv20+spv2WhkXxRA2luAqAUa+z1AnVenWQ==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/strapi/-/strapi-5.6.0.tgz", + "integrity": "sha512-LOQiwfyDVd0oL/jswhDzJL3U48d/4ny6qkdbAmfhSbnOhDQwDoy8pijXOkWoUUIf9ICGxLJxA8OLDIkhqyryZg==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@pmmmwh/react-refresh-webpack-plugin": "0.5.15", - "@strapi/admin": "5.3.0", - "@strapi/cloud-cli": "5.3.0", - "@strapi/content-manager": "5.3.0", - "@strapi/content-releases": "5.3.0", - "@strapi/content-type-builder": "5.3.0", - "@strapi/core": "5.3.0", - "@strapi/data-transfer": "5.3.0", - "@strapi/database": "5.3.0", - "@strapi/email": "5.3.0", - "@strapi/generators": "5.3.0", - "@strapi/i18n": "5.3.0", - "@strapi/logger": "5.3.0", - "@strapi/pack-up": "5.0.0", - "@strapi/permissions": "5.3.0", - "@strapi/review-workflows": "5.3.0", - "@strapi/types": "5.3.0", - "@strapi/typescript-utils": "5.3.0", - "@strapi/upload": "5.3.0", - "@strapi/utils": "5.3.0", + "@strapi/admin": "5.6.0", + "@strapi/cloud-cli": "5.6.0", + "@strapi/content-manager": "5.6.0", + "@strapi/content-releases": "5.6.0", + "@strapi/content-type-builder": "5.6.0", + "@strapi/core": "5.6.0", + "@strapi/data-transfer": "5.6.0", + "@strapi/database": "5.6.0", + "@strapi/email": "5.6.0", + "@strapi/generators": "5.6.0", + "@strapi/i18n": "5.6.0", + "@strapi/logger": "5.6.0", + "@strapi/pack-up": "5.0.2", + "@strapi/permissions": "5.6.0", + "@strapi/review-workflows": "5.6.0", + "@strapi/types": "5.6.0", + "@strapi/typescript-utils": "5.6.0", + "@strapi/upload": "5.6.0", + "@strapi/utils": "5.6.0", "@types/nodemon": "1.19.6", "@vitejs/plugin-react-swc": "3.6.0", "boxen": "5.1.2", @@ -7585,63 +7664,40 @@ "styled-components": "^6.0.0" } }, - "node_modules/@strapi/strapi/node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/@strapi/types": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/types/-/types-5.3.0.tgz", - "integrity": "sha512-r/u0x/Iu6t+TI63byCsCp2+XBz+xUOZX2T6gLP14N+z64TTlXL9IDnE09L6EYho+yYuRGOaUdJk3cy0XP987Dw==", + "node_modules/@strapi/strapi/node_modules/@strapi/email": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/email/-/email-5.6.0.tgz", + "integrity": "sha512-B2OczqAuqCkDsxJN0v/L8KBofYi16wYmKP8GkaEW+vPXLg+1QqOZSkocqbzxfIPA66HhGmAlBEgef8rrZCnRyg==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@casl/ability": "6.5.0", - "@koa/cors": "5.0.0", - "@koa/router": "12.0.2", - "@strapi/database": "5.3.0", - "@strapi/logger": "5.3.0", - "@strapi/permissions": "5.3.0", - "@strapi/utils": "5.3.0", - "commander": "8.3.0", - "koa": "2.15.2", - "koa-body": "6.0.1", - "node-schedule": "2.1.1", - "typedoc": "0.25.10", - "typedoc-github-wiki-theme": "1.1.0", - "typedoc-plugin-markdown": "3.17.1" + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/provider-email-sendmail": "5.6.0", + "@strapi/utils": "5.6.0", + "lodash": "4.17.21", + "react-intl": "6.6.2", + "react-query": "3.39.3", + "yup": "0.32.9" }, "engines": { "node": ">=18.0.0 <=22.x.x", "npm": ">=6.0.0" - } - }, - "node_modules/@strapi/types/node_modules/cookies": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", - "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", - "license": "MIT", - "dependencies": { - "depd": "~2.0.0", - "keygrip": "~1.1.0" }, - "engines": { - "node": ">= 0.8" + "peerDependencies": { + "@strapi/admin": "^5.0.0", + "koa": "^2.15.2", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0", + "react-router-dom": "^6.0.0", + "styled-components": "^6.0.0" } }, - "node_modules/@strapi/types/node_modules/http-errors": { + "node_modules/@strapi/strapi/node_modules/http-errors": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "license": "MIT", + "peer": true, "dependencies": { "depd": "~1.1.2", "inherits": "2.0.4", @@ -7653,20 +7709,22 @@ "node": ">= 0.6" } }, - "node_modules/@strapi/types/node_modules/http-errors/node_modules/depd": { + "node_modules/@strapi/strapi/node_modules/http-errors/node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } }, - "node_modules/@strapi/types/node_modules/koa": { - "version": "2.15.2", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", - "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", + "node_modules/@strapi/strapi/node_modules/koa": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.3.tgz", + "integrity": "sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==", "license": "MIT", + "peer": true, "dependencies": { "accepts": "^1.3.5", "cache-content-type": "^1.0.0", @@ -7696,76 +7754,46 @@ "node": "^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4" } }, - "node_modules/@strapi/types/node_modules/statuses": { + "node_modules/@strapi/strapi/node_modules/statuses": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "license": "MIT", + "peer": true, "engines": { "node": ">= 0.6" } }, - "node_modules/@strapi/types/node_modules/typedoc": { - "version": "0.25.10", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.10.tgz", - "integrity": "sha512-v10rtOFojrjW9og3T+6wAKeJaGMuojU87DXGZ33sfs+554wgPTRG+s07Ag1BjPZI85Y5QPVouPI63JQ6fcQM5w==", - "license": "Apache-2.0", - "dependencies": { - "lunr": "^2.3.9", - "marked": "^4.3.0", - "minimatch": "^9.0.3", - "shiki": "^0.14.7" - }, - "bin": { - "typedoc": "bin/typedoc" - }, - "engines": { - "node": ">= 16" - }, - "peerDependencies": { - "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x" - } - }, - "node_modules/@strapi/types/node_modules/typedoc-github-wiki-theme": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/typedoc-github-wiki-theme/-/typedoc-github-wiki-theme-1.1.0.tgz", - "integrity": "sha512-VyFmz8ZV2j/qEsCjD5EtR6FgZsCoy64Zr6SS9kCTcq7zx69Cx4UJBx8Ga/naxqs08TDggE6myIfODY6awwAGcA==", - "license": "MIT", - "peerDependencies": { - "typedoc": ">=0.24.0", - "typedoc-plugin-markdown": ">=3.15.0" - } - }, - "node_modules/@strapi/types/node_modules/typedoc-plugin-markdown": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.17.1.tgz", - "integrity": "sha512-QzdU3fj0Kzw2XSdoL15ExLASt2WPqD7FbLeaqwT70+XjKyTshBnUlQA5nNREO1C2P8Uen0CDjsBLMsCQ+zd0lw==", - "license": "MIT", + "node_modules/@strapi/types": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/types/-/types-5.6.0.tgz", + "integrity": "sha512-vTC3NHz4ndpdnCCFjhvdRPCGZx88Vu+EPNfOeHq1WBgSoTv314lRuQHvFShKNXAZ5XMLMEtKr40WGfRnjd+yOQ==", + "license": "SEE LICENSE IN LICENSE", "dependencies": { - "handlebars": "^4.7.7" - }, - "peerDependencies": { - "typedoc": ">=0.24.0" - } - }, - "node_modules/@strapi/types/node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "license": "Apache-2.0", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "@casl/ability": "6.5.0", + "@koa/cors": "5.0.0", + "@koa/router": "12.0.2", + "@strapi/database": "5.6.0", + "@strapi/logger": "5.6.0", + "@strapi/permissions": "5.6.0", + "@strapi/utils": "5.6.0", + "commander": "8.3.0", + "koa": "2.15.2", + "koa-body": "6.0.1", + "node-schedule": "2.1.1", + "typedoc": "0.25.10", + "typedoc-github-wiki-theme": "1.1.0", + "typedoc-plugin-markdown": "3.17.1" }, "engines": { - "node": ">=14.17" + "node": ">=18.0.0 <=22.x.x", + "npm": ">=6.0.0" } }, "node_modules/@strapi/typescript-utils": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/typescript-utils/-/typescript-utils-5.3.0.tgz", - "integrity": "sha512-hXIKjLEb3n6K75E8epwmOHg7Al8e97SdCf3o/wKZdDRHDTmTcdnSlO94fIrfJywGpc2QxjfkTdL91oBCI0sEaw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/typescript-utils/-/typescript-utils-5.6.0.tgz", + "integrity": "sha512-HWPoMilyZ1f/iWBzNNNBwXg3PPoBl9q6hXJe+oRmOlFuwPbF+pfb/ff24wxW0QEOzVXL+XkoAg+OuTj73/icfw==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "chalk": "4.1.2", @@ -7780,23 +7808,10 @@ "npm": ">=6.0.0" } }, - "node_modules/@strapi/typescript-utils/node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@strapi/ui-primitives": { - "version": "2.0.0-rc.12", - "resolved": "https://registry.npmjs.org/@strapi/ui-primitives/-/ui-primitives-2.0.0-rc.12.tgz", - "integrity": "sha512-roFSirCbI/eGTYLwNu0pOrB5WZ5RKJh60gp5GXoQ7ogSk7aRR+5NuXOuTEZvPqvZr/1I5YRufZEIGfAnm0INng==", + "version": "2.0.0-rc.14", + "resolved": "https://registry.npmjs.org/@strapi/ui-primitives/-/ui-primitives-2.0.0-rc.14.tgz", + "integrity": "sha512-lCl370AKFJXjEJmZHW9r8m8gXwgQs+K2WqND2sykL3+1VNjawDhThnRtYqYxheCf10vW8aS0Zd1CduLZ6EoEjg==", "license": "MIT", "dependencies": { "@radix-ui/number": "1.0.1", @@ -7827,15 +7842,16 @@ } }, "node_modules/@strapi/upload": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/upload/-/upload-5.3.0.tgz", - "integrity": "sha512-gxW8yDzwuJttqVE1gmPb7DVawQq7+b9dCFa3uV34qcpwn+COmwmGa7nBPy/LphB5XGNCo+TC1QKcpEa3qbP7WQ==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/upload/-/upload-5.6.0.tgz", + "integrity": "sha512-H2t/zwjfiltLK553/qWrf5tocC8jtwJq4Q4VwrEt3Gk4h27i3MLJd9v8GdeHbPjwB4ZOesi5y5dnkumpdcaFzQ==", "license": "SEE LICENSE IN LICENSE", "dependencies": { - "@strapi/design-system": "2.0.0-rc.12", - "@strapi/icons": "2.0.0-rc.12", - "@strapi/provider-upload-local": "5.3.0", - "@strapi/utils": "5.3.0", + "@mux/mux-player-react": "3.1.0", + "@strapi/design-system": "2.0.0-rc.14", + "@strapi/icons": "2.0.0-rc.14", + "@strapi/provider-upload-local": "5.6.0", + "@strapi/utils": "5.6.0", "byte-size": "8.1.1", "cropperjs": "1.6.1", "date-fns": "2.30.0", @@ -7861,7 +7877,7 @@ "npm": ">=6.0.0" }, "peerDependencies": { - "@strapi/admin": "^5.0.0 || ^5.0.0-beta || ^5.0.0-alpha || ^5.0.0-rc", + "@strapi/admin": "^5.0.0", "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0", "react-router-dom": "^6.0.0", @@ -7869,9 +7885,9 @@ } }, "node_modules/@strapi/utils": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@strapi/utils/-/utils-5.3.0.tgz", - "integrity": "sha512-suX1dP3T9fD9b8rdNR3//jMeuugO62IHYambpDjpbtK/RgyzIudGpyBOUk/LNSgSlAAPC2k9Fws+GqBeLEpzLA==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@strapi/utils/-/utils-5.6.0.tgz", + "integrity": "sha512-Q7JwRnbRLtNgLIgWrOI+LQzkdsr68+Eo7/aRccvdp4tD/wDDG8hOJlffT6R8JsgecuA16DLu9Rl0uPj9vRf4XA==", "license": "SEE LICENSE IN LICENSE", "dependencies": { "@sindresorhus/slugify": "1.1.0", @@ -7891,14 +7907,14 @@ } }, "node_modules/@swc/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.9.1.tgz", - "integrity": "sha512-OnPc+Kt5oy3xTvr/KCUOqE9ptJcWbyQgAUr1ydh9EmbBcmJTaO1kfQCxm/axzJi6sKeDTxL9rX5zvLOhoYIaQw==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.10.4.tgz", + "integrity": "sha512-ut3zfiTLORMxhr6y/GBxkHmzcGuVpwJYX4qyXWuBKkpw/0g0S5iO1/wW7RnLnZbAi8wS/n0atRZoaZlXWBkeJg==", "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.14" + "@swc/types": "^0.1.17" }, "engines": { "node": ">=10" @@ -7908,16 +7924,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.9.1", - "@swc/core-darwin-x64": "1.9.1", - "@swc/core-linux-arm-gnueabihf": "1.9.1", - "@swc/core-linux-arm64-gnu": "1.9.1", - "@swc/core-linux-arm64-musl": "1.9.1", - "@swc/core-linux-x64-gnu": "1.9.1", - "@swc/core-linux-x64-musl": "1.9.1", - "@swc/core-win32-arm64-msvc": "1.9.1", - "@swc/core-win32-ia32-msvc": "1.9.1", - "@swc/core-win32-x64-msvc": "1.9.1" + "@swc/core-darwin-arm64": "1.10.4", + "@swc/core-darwin-x64": "1.10.4", + "@swc/core-linux-arm-gnueabihf": "1.10.4", + "@swc/core-linux-arm64-gnu": "1.10.4", + "@swc/core-linux-arm64-musl": "1.10.4", + "@swc/core-linux-x64-gnu": "1.10.4", + "@swc/core-linux-x64-musl": "1.10.4", + "@swc/core-win32-arm64-msvc": "1.10.4", + "@swc/core-win32-ia32-msvc": "1.10.4", + "@swc/core-win32-x64-msvc": "1.10.4" }, "peerDependencies": { "@swc/helpers": "*" @@ -7929,9 +7945,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.9.1.tgz", - "integrity": "sha512-2/ncHSCdAh5OHem1fMITrWEzzl97OdMK1PHc9CkxSJnphLjRubfxB5sbc5tDhcO68a5tVy+DxwaBgDec3PXnOg==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.10.4.tgz", + "integrity": "sha512-sV/eurLhkjn/197y48bxKP19oqcLydSel42Qsy2zepBltqUx+/zZ8+/IS0Bi7kaWVFxerbW1IPB09uq8Zuvm3g==", "cpu": [ "arm64" ], @@ -7945,9 +7961,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.9.1.tgz", - "integrity": "sha512-4MDOFC5zmNqRJ9RGFOH95oYf27J9HniLVpB1pYm2gGeNHdl2QvDMtx2QTuMHQ6+OTn/3y1BHYuhBGp7d405oLA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.10.4.tgz", + "integrity": "sha512-gjYNU6vrAUO4+FuovEo9ofnVosTFXkF0VDuo1MKPItz6e2pxc2ale4FGzLw0Nf7JB1sX4a8h06CN16/pLJ8Q2w==", "cpu": [ "x64" ], @@ -7961,9 +7977,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.9.1.tgz", - "integrity": "sha512-eVW/BjRW8/HpLe3+1jRU7w7PdRLBgnEEYTkHJISU8805/EKT03xNZn6CfaBpKfeAloY4043hbGzE/NP9IahdpQ==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.10.4.tgz", + "integrity": "sha512-zd7fXH5w8s+Sfvn2oO464KDWl+ZX1MJiVmE4Pdk46N3PEaNwE0koTfgx2vQRqRG4vBBobzVvzICC3618WcefOA==", "cpu": [ "arm" ], @@ -7977,9 +7993,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.9.1.tgz", - "integrity": "sha512-8m3u1v8R8NgI/9+cHMkzk14w87blSy3OsQPWPfhOL+XPwhyLPvat+ahQJb2nZmltjTgkB4IbzKFSfbuA34LmNA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.10.4.tgz", + "integrity": "sha512-+UGfoHDxsMZgFD3tABKLeEZHqLNOkxStu+qCG7atGBhS4Slri6h6zijVvf4yI5X3kbXdvc44XV/hrP/Klnui2A==", "cpu": [ "arm64" ], @@ -7993,9 +8009,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.9.1.tgz", - "integrity": "sha512-hpT0sQAZnW8l02I289yeyFfT9llGO9PzKDxUq8pocKtioEHiElRqR53juCWoSmzuWi+6KX7zUJ0NKCBrc8pmDg==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.10.4.tgz", + "integrity": "sha512-cDDj2/uYsOH0pgAnDkovLZvKJpFmBMyXkxEG6Q4yw99HbzO6QzZ5HDGWGWVq/6dLgYKlnnmpjZCPPQIu01mXEg==", "cpu": [ "arm64" ], @@ -8009,9 +8025,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.9.1.tgz", - "integrity": "sha512-sGFdpdAYusk/ropHiwtXom2JrdaKPxl8MqemRv6dvxZq1Gm/GdmOowxdXIPjCgBGMgoXVcgNviH6CgiO5q+UtA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.10.4.tgz", + "integrity": "sha512-qJXh9D6Kf5xSdGWPINpLGixAbB5JX8JcbEJpRamhlDBoOcQC79dYfOMEIxWPhTS1DGLyFakAx2FX/b2VmQmj0g==", "cpu": [ "x64" ], @@ -8025,9 +8041,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.9.1.tgz", - "integrity": "sha512-YtNLNwIWs0Z2+XgBs6+LrCIGtfCDtNr4S4b6Q5HDOreEIGzSvhkef8eyBI5L+fJ2eGov4b7iEo61C4izDJS5RA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.10.4.tgz", + "integrity": "sha512-A76lIAeyQnHCVt0RL/pG+0er8Qk9+acGJqSZOZm67Ve3B0oqMd871kPtaHBM0BW3OZAhoILgfHW3Op9Q3mx3Cw==", "cpu": [ "x64" ], @@ -8041,9 +8057,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.9.1.tgz", - "integrity": "sha512-qSxD3uZW2vSiHqUt30vUi0PB92zDh9bjqh5YKpfhhVa7h1vt/xXhlid8yMvSNToTfzhRrTEffOAPUr7WVoyQUA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.10.4.tgz", + "integrity": "sha512-e6j5kBu4fIY7fFxFxnZI0MlEovRvp50Lg59Fw+DVbtqHk3C85dckcy5xKP+UoXeuEmFceauQDczUcGs19SRGSQ==", "cpu": [ "arm64" ], @@ -8057,9 +8073,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.9.1.tgz", - "integrity": "sha512-C3fPEwyX/WRPlX6zIToNykJuz1JkZX0sk8H1QH2vpnKuySUkt/Ur5K2FzLgSWzJdbfxstpgS151/es0VGAD+ZA==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.10.4.tgz", + "integrity": "sha512-RSYHfdKgNXV/amY5Tqk1EWVsyQnhlsM//jeqMLw5Fy9rfxP592W9UTumNikNRPdjI8wKKzNMXDb1U29tQjN0dg==", "cpu": [ "ia32" ], @@ -8073,9 +8089,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.9.1.tgz", - "integrity": "sha512-2XZ+U1AyVsOAXeH6WK1syDm7+gwTjA8fShs93WcbxnK7HV+NigDlvr4124CeJLTHyh3fMh1o7+CnQnaBJhlysQ==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.10.4.tgz", + "integrity": "sha512-1ujYpaqfqNPYdwKBlvJnOqcl+Syn3UrQ4XE0Txz6zMYgyh6cdU6a3pxqLqIUSJ12MtXRA9ZUhEz1ekU3LfLWXw==", "cpu": [ "x64" ], @@ -8095,18 +8111,18 @@ "license": "Apache-2.0" }, "node_modules/@swc/helpers": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.13.tgz", - "integrity": "sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==", + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", + "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.4.0" + "tslib": "^2.8.0" } }, "node_modules/@swc/types": { - "version": "0.1.14", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.14.tgz", - "integrity": "sha512-PbSmTiYCN+GMrvfjrMo9bdY+f2COnwbdnoMw7rqU/PI5jXpKjxOGZ0qqZCImxnT81NkNsKnmEpvu+hRXLBeCJg==", + "version": "0.1.17", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.17.tgz", + "integrity": "sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==", "license": "Apache-2.0", "dependencies": { "@swc/counter": "^0.1.3" @@ -8248,12 +8264,6 @@ "integrity": "sha512-QVSSvno3dE0MgO76pJhmv4Qyi/j0Yk9pBp0Y7TJ2Tlj+KCgJWY6qX7nnxCOLkZ3VYRSIk1WTxCvwUSdx6CCLdg==", "license": "MIT" }, - "node_modules/@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "license": "MIT" - }, "node_modules/@types/cookies": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.9.0.tgz", @@ -8266,15 +8276,6 @@ "@types/node": "*" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", - "license": "MIT", - "dependencies": { - "@types/ms": "*" - } - }, "node_modules/@types/eslint": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", @@ -8427,12 +8428,6 @@ "integrity": "sha512-RvC8KMw5BCac1NvRRyaHgMMEtBaZ6wh0pyPTBu7izn4Sj/AX9Y4aXU5c7rX8PnM/knsuUpC1IeoBkANtxBypsQ==", "license": "MIT" }, - "node_modules/@types/js-levenshtein": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@types/js-levenshtein/-/js-levenshtein-1.1.3.tgz", - "integrity": "sha512-jd+Q+sD20Qfu9e2aEXogiO3vpOC1PYJOUdyN9gvs4Qrvkg4wF43L5OhqrPeokdv8TL0/mXoYfpkcoGZMNN2pkQ==", - "license": "MIT" - }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -8516,12 +8511,6 @@ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", "license": "MIT" }, - "node_modules/@types/ms": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", - "license": "MIT" - }, "node_modules/@types/node": { "version": "20.17.6", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.6.tgz", @@ -8599,11 +8588,11 @@ } }, "node_modules/@types/react-transition-group": { - "version": "4.4.11", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz", - "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==", + "version": "4.4.12", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", + "integrity": "sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==", "license": "MIT", - "dependencies": { + "peerDependencies": { "@types/react": "*" } }, @@ -8637,15 +8626,6 @@ "@types/send": "*" } }, - "node_modules/@types/set-cookie-parser": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@types/set-cookie-parser/-/set-cookie-parser-2.4.10.tgz", - "integrity": "sha512-GGmQVGpQWUe5qglJozEjZV/5dyxbOOZ0LHe/lqyWssB88Y4svNfst0uqBVscdDeIKl5Jy5+aPSvy7mI9tYRguw==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/stylis": { "version": "4.2.5", "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz", @@ -8919,15 +8899,6 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -8940,25 +8911,6 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "license": "Apache-2.0" }, - "node_modules/@zxing/text-encoding": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz", - "integrity": "sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==", - "license": "(Unlicense OR Apache-2.0)", - "optional": true - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -9267,21 +9219,6 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "license": "MIT" }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/axios": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", @@ -9357,13 +9294,13 @@ } }, "node_modules/bare-stream": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.3.2.tgz", - "integrity": "sha512-EFZHSIBkDgSHIwj2l2QZfP4U5OcD4xFAOwhSb/vlr9PIqyGJGvB/nfClJbcnh3EY4jtPE4zsb5ztae96bVF79A==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.6.1.tgz", + "integrity": "sha512-eVZbtKM+4uehzrsj49KtCy3Pbg7kO1pJ3SKZ1SFrIH/0pnj9scuGGgUlNDf/7qS8WKtGdiJY5Kyhs/ivYPTB/g==", "license": "Apache-2.0", "optional": true, "dependencies": { - "streamx": "^2.20.0" + "streamx": "^2.21.0" } }, "node_modules/base64-js": { @@ -9920,6 +9857,21 @@ "tslib": "^2.0.3" } }, + "node_modules/castable-video": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/castable-video/-/castable-video-1.1.4.tgz", + "integrity": "sha512-EBQJ04ShZFi1CGKXhBui6UYFJf+6C6wNIa12J2/NSu+ca/XeF5gkXUwHQ8uSKVCpvFYS2RRRB2zf29R0OYz8Iw==", + "license": "MIT", + "dependencies": { + "custom-media-element": "~1.4.2" + } + }, + "node_modules/castable-video/node_modules/custom-media-element": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/custom-media-element/-/custom-media-element-1.4.2.tgz", + "integrity": "sha512-AM6FRWqJyW7pWTvXb4uJj6yvHE7C6UutdhJ5o3XO5NEl5aWFcfnpz8/TuW8qr1+/wfbj50wRvdArnSNjTmjmVw==", + "license": "MIT" + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -10508,11 +10460,10 @@ } }, "node_modules/cookies": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", - "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.9.1.tgz", + "integrity": "sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==", "license": "MIT", - "peer": true, "dependencies": { "depd": "~2.0.0", "keygrip": "~1.1.0" @@ -10706,9 +10657,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -10829,6 +10780,12 @@ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "license": "MIT" }, + "node_modules/custom-media-element": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/custom-media-element/-/custom-media-element-1.3.3.tgz", + "integrity": "sha512-5Tenv3iLP8ZiLHcT0qSyfDPrqzkCMxczeLY7cTndbsMF7EkVgL/74a6hxNrn/F6RuD74TLK6R2r0GsmntTTtRg==", + "license": "MIT" + }, "node_modules/date-fns": { "version": "2.30.0", "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", @@ -12055,15 +12012,6 @@ "node": ">=4.0" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", @@ -12209,9 +12157,9 @@ } }, "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.18.0.tgz", + "integrity": "sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==", "license": "ISC", "dependencies": { "reusify": "^1.0.4" @@ -12353,15 +12301,6 @@ } } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.3" - } - }, "node_modules/for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -13151,15 +13090,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/graphql": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.9.0.tgz", - "integrity": "sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==", - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" - } - }, "node_modules/gzip-size": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", @@ -13306,12 +13236,6 @@ "upper-case": "^1.1.3" } }, - "node_modules/headers-polyfill": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/headers-polyfill/-/headers-polyfill-3.3.0.tgz", - "integrity": "sha512-5e57etwBpNcDc0b6KCVWEh/Ro063OxPvzVimUdM0/tsYM/T7Hfy3kknIGj78SFTOhNd8AZY41U8mOHoO4LzmIQ==", - "license": "MIT" - }, "node_modules/helmet": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/helmet/-/helmet-6.2.0.tgz", @@ -13339,6 +13263,12 @@ "node": "*" } }, + "node_modules/hls.js": { + "version": "1.5.18", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.5.18.tgz", + "integrity": "sha512-znxR+2jecWluu/0KOBqUcvVyAB5tLff10vjMGrpAlz1eFY+ZhF1bY3r82V+Bk7WJdk03iTjtja9KFFz5BrqjSA==", + "license": "Apache-2.0" + }, "node_modules/hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", @@ -13824,22 +13754,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -13855,19 +13769,7 @@ "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, "node_modules/is-class-hotfix": { @@ -13984,12 +13886,6 @@ "lower-case": "^1.1.0" } }, - "node_modules/is-node-process": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-node-process/-/is-node-process-1.2.0.tgz", - "integrity": "sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==", - "license": "MIT" - }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -14103,21 +13999,6 @@ "isstream": "~0.1.2" } }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -14288,15 +14169,6 @@ "node": ">=10" } }, - "node_modules/js-levenshtein": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", - "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -14338,9 +14210,9 @@ "license": "BSD-3-Clause" }, "node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -14591,17 +14463,16 @@ } }, "node_modules/koa": { - "version": "2.13.4", - "resolved": "https://registry.npmjs.org/koa/-/koa-2.13.4.tgz", - "integrity": "sha512-43zkIKubNbnrULWlHdN5h1g3SEKXOEzoAlRsHOTFpnlDu8JlAOZSMJBLULusuXRequboiwJcj5vtYXKB3k7+2g==", + "version": "2.15.2", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.15.2.tgz", + "integrity": "sha512-MXTeZH3M6AJ8ukW2QZ8wqO3Dcdfh2WRRmjCBkEP+NhKNCiqlO5RDqHmSnsyNrbRJrdjyvIGSJho4vQiWgQJSVA==", "license": "MIT", - "peer": true, "dependencies": { "accepts": "^1.3.5", "cache-content-type": "^1.0.0", "content-disposition": "~0.5.2", "content-type": "^1.0.4", - "cookies": "~0.8.0", + "cookies": "~0.9.0", "debug": "^4.3.2", "delegates": "^1.0.0", "depd": "^2.0.0", @@ -14859,7 +14730,6 @@ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "license": "MIT", - "peer": true, "dependencies": { "depd": "~1.1.2", "inherits": "2.0.4", @@ -14876,7 +14746,6 @@ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", "license": "MIT", - "peer": true, "engines": { "node": ">= 0.6" } @@ -14886,7 +14755,6 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "license": "MIT", - "peer": true, "engines": { "node": ">= 0.6" } @@ -15097,9 +14965,9 @@ } }, "node_modules/logform": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.1.tgz", - "integrity": "sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "license": "MIT", "dependencies": { "@colors/colors": "1.6.0", @@ -15396,6 +15264,18 @@ "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", "license": "MIT" }, + "node_modules/media-chrome": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/media-chrome/-/media-chrome-4.2.3.tgz", + "integrity": "sha512-gzwFy2b+RLsEtnPzUzqzf2L5XkaTLQr8POOyLOcoebWSAWg31cPy2vfXNiUnd93sc5IxwJ8OAwkKxnaJNZ8Gjg==", + "license": "MIT" + }, + "node_modules/media-tracks": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/media-tracks/-/media-tracks-0.3.3.tgz", + "integrity": "sha512-9P2FuUHnZZ3iji+2RQk7Zkh5AmZTnOG5fODACnjhCVveX1McY3jmCRHofIEI+yTBqplz7LXy48c7fQ3Uigp88w==", + "license": "MIT" + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -15651,73 +15531,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "license": "MIT" }, - "node_modules/msw": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/msw/-/msw-1.3.0.tgz", - "integrity": "sha512-nnWAZlQyQOKeYRblCpseT1kSPt1aF5e/jHz1hn/18IxbsMFreSVV1cJriT0uV+YG6+wvwFRMHXU3zVuMvuwERQ==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "@mswjs/cookies": "^0.2.2", - "@mswjs/interceptors": "^0.17.5", - "@open-draft/until": "^1.0.3", - "@types/cookie": "^0.4.1", - "@types/js-levenshtein": "^1.1.1", - "chalk": "^4.1.1", - "chokidar": "^3.4.2", - "cookie": "^0.4.2", - "graphql": "^15.0.0 || ^16.0.0", - "headers-polyfill": "^3.2.0", - "inquirer": "^8.2.0", - "is-node-process": "^1.2.0", - "js-levenshtein": "^1.1.6", - "node-fetch": "^2.6.7", - "outvariant": "^1.4.0", - "path-to-regexp": "^6.2.0", - "strict-event-emitter": "^0.4.3", - "type-fest": "^2.19.0", - "yargs": "^17.3.1" - }, - "bin": { - "msw": "cli/index.js" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mswjs" - }, - "peerDependencies": { - "typescript": ">= 4.4.x <= 5.2.x" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/msw/node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/msw/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/multistream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/multistream/-/multistream-4.1.0.tgz", @@ -15771,6 +15584,12 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "license": "ISC" }, + "node_modules/mux-embed": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/mux-embed/-/mux-embed-5.5.0.tgz", + "integrity": "sha512-81XjttB/8aDXMbK6zVD5DSsxbNWlKVrf/ZngxTV7oI8FldD1Ky3q6TTM1GYgZxQIw5txUK8ba30R2zWXpvnmrQ==", + "license": "MIT" + }, "node_modules/mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", @@ -15869,26 +15688,6 @@ "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", "license": "MIT" }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "license": "MIT", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, "node_modules/node-machine-id": { "version": "1.1.12", "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz", @@ -16440,12 +16239,6 @@ "integrity": "sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==", "license": "MIT" }, - "node_modules/outvariant": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", - "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==", - "license": "MIT" - }, "node_modules/p-cancelable": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", @@ -17016,6 +16809,22 @@ "node": ">=8" } }, + "node_modules/player.style": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/player.style/-/player.style-0.0.8.tgz", + "integrity": "sha512-ScmFzio3634eEn+ejpkEw13F5xYvnPghtaZz/Kg7QQP78ECrxdjRVqwVPZhUwbYxmg5OIScByOgHfrHpzTtR1Q==", + "license": "MIT", + "workspaces": [ + ".", + "site", + "examples/*", + "scripts/*", + "themes/*" + ], + "dependencies": { + "media-chrome": "^4.1.0" + } + }, "node_modules/plop": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/plop/-/plop-4.0.1.tgz", @@ -17087,9 +16896,9 @@ } }, "node_modules/plop/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", "license": "MIT", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" @@ -17758,15 +17567,6 @@ "node": ">=12.0.0" } }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, "node_modules/postcss": { "version": "8.4.47", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", @@ -18057,13 +17857,13 @@ } }, "node_modules/prettier-plugin-packagejson": { - "version": "2.4.14", - "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.4.14.tgz", - "integrity": "sha512-sli+gV5tW7uxvzDZQscaBtSfbyAW2ToL6n/HGt51PipwX9vI7M54vefG0mKSfklVkT29TNGO6Mo6g8c6Z79gmw==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz", + "integrity": "sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==", "license": "MIT", "dependencies": { - "sort-package-json": "2.10.0", - "synckit": "0.9.0" + "sort-package-json": "2.10.1", + "synckit": "0.9.1" }, "peerDependencies": { "prettier": ">= 1.16.0" @@ -18116,13 +17916,13 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "license": "MIT" }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", "license": "MIT", "engines": { - "node": ">= 0.6.0" + "node": ">=6" } }, "node_modules/process-nextick-args": { @@ -18576,20 +18376,20 @@ } }, "node_modules/react-remove-scroll-bar": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", - "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", "license": "MIT", "dependencies": { - "react-style-singleton": "^2.2.1", + "react-style-singleton": "^2.2.2", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -18660,21 +18460,20 @@ } }, "node_modules/react-style-singleton": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", - "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", "license": "MIT", "dependencies": { "get-nonce": "^1.0.0", - "invariant": "^2.2.4", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -18878,9 +18677,9 @@ "license": "MIT" }, "node_modules/registry-auth-token": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.2.tgz", - "integrity": "sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-5.0.3.tgz", + "integrity": "sha512-1bpc9IyC+e+CNFRaWyn77tk4xGG4PPUyfakSmA6F6cvUDjrm58dfyJ3II+9yb10EDkHoy1LaPSmHaWLOH3m6HA==", "license": "MIT", "dependencies": { "@pnpm/npm-conf": "^2.1.0" @@ -19193,9 +18992,9 @@ } }, "node_modules/rollup": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.4.tgz", - "integrity": "sha512-vGorVWIsWfX3xbcyAS+I047kFKapHYivmkaT63Smj77XwvLSJos6M1xGqZnBPFQFBRZDOcG1QnYEIxAvTr/HjA==", + "version": "4.29.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.29.1.tgz", + "integrity": "sha512-RaJ45M/kmJUzSWDs1Nnd5DdV4eerC98idtUOVr6FfKcgxqvjwHmxc5upLF9qZU9EpsVzzhleFahrT3shLuJzIw==", "license": "MIT", "dependencies": { "@types/estree": "1.0.6" @@ -19208,24 +19007,25 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.24.4", - "@rollup/rollup-android-arm64": "4.24.4", - "@rollup/rollup-darwin-arm64": "4.24.4", - "@rollup/rollup-darwin-x64": "4.24.4", - "@rollup/rollup-freebsd-arm64": "4.24.4", - "@rollup/rollup-freebsd-x64": "4.24.4", - "@rollup/rollup-linux-arm-gnueabihf": "4.24.4", - "@rollup/rollup-linux-arm-musleabihf": "4.24.4", - "@rollup/rollup-linux-arm64-gnu": "4.24.4", - "@rollup/rollup-linux-arm64-musl": "4.24.4", - "@rollup/rollup-linux-powerpc64le-gnu": "4.24.4", - "@rollup/rollup-linux-riscv64-gnu": "4.24.4", - "@rollup/rollup-linux-s390x-gnu": "4.24.4", - "@rollup/rollup-linux-x64-gnu": "4.24.4", - "@rollup/rollup-linux-x64-musl": "4.24.4", - "@rollup/rollup-win32-arm64-msvc": "4.24.4", - "@rollup/rollup-win32-ia32-msvc": "4.24.4", - "@rollup/rollup-win32-x64-msvc": "4.24.4", + "@rollup/rollup-android-arm-eabi": "4.29.1", + "@rollup/rollup-android-arm64": "4.29.1", + "@rollup/rollup-darwin-arm64": "4.29.1", + "@rollup/rollup-darwin-x64": "4.29.1", + "@rollup/rollup-freebsd-arm64": "4.29.1", + "@rollup/rollup-freebsd-x64": "4.29.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.29.1", + "@rollup/rollup-linux-arm-musleabihf": "4.29.1", + "@rollup/rollup-linux-arm64-gnu": "4.29.1", + "@rollup/rollup-linux-arm64-musl": "4.29.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.29.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.29.1", + "@rollup/rollup-linux-riscv64-gnu": "4.29.1", + "@rollup/rollup-linux-s390x-gnu": "4.29.1", + "@rollup/rollup-linux-x64-gnu": "4.29.1", + "@rollup/rollup-linux-x64-musl": "4.29.1", + "@rollup/rollup-win32-arm64-msvc": "4.29.1", + "@rollup/rollup-win32-ia32-msvc": "4.29.1", + "@rollup/rollup-win32-x64-msvc": "4.29.1", "fsevents": "~2.3.2" } }, @@ -19349,9 +19149,9 @@ } }, "node_modules/sanitize-html/node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.1.tgz", + "integrity": "sha512-xWXmuRnN9OMP6ptPd2+H0cCbcYBULa5YDTbMm/2lvkWvNA3O4wcW+GvzooqBuNM8yy6pl3VIAeJTUUWUbfI5Fw==", "license": "BSD-2-Clause", "dependencies": { "dom-serializer": "^2.0.0", @@ -19510,12 +19310,6 @@ "randombytes": "^2.1.0" } }, - "node_modules/set-cookie-parser": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz", - "integrity": "sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==", - "license": "MIT" - }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", @@ -19817,9 +19611,9 @@ "license": "MIT" }, "node_modules/sort-package-json": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.0.tgz", - "integrity": "sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==", + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.1.tgz", + "integrity": "sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==", "license": "MIT", "dependencies": { "detect-indent": "^7.0.1", @@ -20076,9 +19870,9 @@ "license": "MIT" }, "node_modules/streamx": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.1.tgz", - "integrity": "sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==", + "version": "2.21.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.21.1.tgz", + "integrity": "sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==", "license": "MIT", "dependencies": { "fast-fifo": "^1.3.2", @@ -20089,12 +19883,6 @@ "bare-events": "^2.2.0" } }, - "node_modules/strict-event-emitter": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.4.6.tgz", - "integrity": "sha512-12KWeb+wixJohmnwNFerbyiBrAlq5qJLwIt38etRtKtmmHyDSoGlIqFE9wx+4IwG0aDjI7GV8tc8ZccjWZZtTg==", - "license": "MIT" - }, "node_modules/string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", @@ -20334,9 +20122,9 @@ } }, "node_modules/synckit": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.0.tgz", - "integrity": "sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "license": "MIT", "dependencies": { "@pkgr/core": "^0.1.0", @@ -20565,10 +20353,13 @@ "license": "MIT" }, "node_modules/text-decoder": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.1.tgz", - "integrity": "sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==", - "license": "Apache-2.0" + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" + } }, "node_modules/text-hex": { "version": "1.0.0", @@ -20737,12 +20528,6 @@ "nodetouch": "bin/nodetouch.js" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "license": "MIT" - }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -20822,10 +20607,53 @@ "is-typedarray": "^1.0.0" } }, + "node_modules/typedoc": { + "version": "0.25.10", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.25.10.tgz", + "integrity": "sha512-v10rtOFojrjW9og3T+6wAKeJaGMuojU87DXGZ33sfs+554wgPTRG+s07Ag1BjPZI85Y5QPVouPI63JQ6fcQM5w==", + "license": "Apache-2.0", + "dependencies": { + "lunr": "^2.3.9", + "marked": "^4.3.0", + "minimatch": "^9.0.3", + "shiki": "^0.14.7" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 16" + }, + "peerDependencies": { + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x" + } + }, + "node_modules/typedoc-github-wiki-theme": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/typedoc-github-wiki-theme/-/typedoc-github-wiki-theme-1.1.0.tgz", + "integrity": "sha512-VyFmz8ZV2j/qEsCjD5EtR6FgZsCoy64Zr6SS9kCTcq7zx69Cx4UJBx8Ga/naxqs08TDggE6myIfODY6awwAGcA==", + "license": "MIT", + "peerDependencies": { + "typedoc": ">=0.24.0", + "typedoc-plugin-markdown": ">=3.15.0" + } + }, + "node_modules/typedoc-plugin-markdown": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.17.1.tgz", + "integrity": "sha512-QzdU3fj0Kzw2XSdoL15ExLASt2WPqD7FbLeaqwT70+XjKyTshBnUlQA5nNREO1C2P8Uen0CDjsBLMsCQ+zd0lw==", + "license": "MIT", + "dependencies": { + "handlebars": "^4.7.7" + }, + "peerDependencies": { + "typedoc": ">=0.24.0" + } + }, "node_modules/typescript": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", - "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", + "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -20871,9 +20699,9 @@ } }, "node_modules/umzug/node_modules/type-fest": { - "version": "4.26.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", - "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", + "version": "4.31.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", + "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=16" @@ -21022,9 +20850,9 @@ "license": "MIT" }, "node_modules/use-callback-ref": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", - "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" @@ -21033,8 +20861,8 @@ "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -21063,12 +20891,12 @@ } }, "node_modules/use-isomorphic-layout-effect": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", - "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.0.tgz", + "integrity": "sha512-q6ayo8DWoPZT0VdG4u3D3uxcgONP3Mevx2i2b0434cwWBoL+aelL1DzkXI6w3PhTZzUeR2kaVlZn70iCiseP6w==", "license": "MIT", "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -21077,9 +20905,9 @@ } }, "node_modules/use-sidecar": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", - "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", "license": "MIT", "dependencies": { "detect-node-es": "^1.1.0", @@ -21089,8 +20917,8 @@ "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -21107,19 +20935,6 @@ "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, - "node_modules/util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -21679,24 +21494,6 @@ "defaults": "^1.0.3" } }, - "node_modules/web-encoding": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/web-encoding/-/web-encoding-1.1.5.tgz", - "integrity": "sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==", - "license": "MIT", - "dependencies": { - "util": "^0.12.3" - }, - "optionalDependencies": { - "@zxing/text-encoding": "0.9.0" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "license": "BSD-2-Clause" - }, "node_modules/webpack": { "version": "5.96.1", "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.96.1.tgz", @@ -21915,16 +21712,6 @@ "node": ">=10.13.0" } }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "license": "MIT", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -21962,25 +21749,6 @@ "node": ">=8" } }, - "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/widest-line": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", @@ -22016,57 +21784,31 @@ } }, "node_modules/winston-transport": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.8.0.tgz", - "integrity": "sha512-qxSTKswC6llEMZKgCQdaWgDuMJQnhuvF5f2Nk3SNXc4byfQ+voo2mX1Px9dkNOuR8p0KAjfPG29PuYUSIb+vSA==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "license": "MIT", "dependencies": { - "logform": "^2.6.1", - "readable-stream": "^4.5.2", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "engines": { "node": ">= 12.0.0" } }, - "node_modules/winston-transport/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "node_modules/winston-transport/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "license": "MIT", "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 6" } }, "node_modules/winston-transport/node_modules/string_decoder": { @@ -22482,9 +22224,9 @@ } }, "node_modules/zod": { - "version": "3.23.8", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", - "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "version": "3.24.1", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz", + "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" diff --git a/strapi/package.json b/strapi/package.json index 54e6e3e..d2b22d9 100644 --- a/strapi/package.json +++ b/strapi/package.json @@ -11,10 +11,10 @@ "strapi": "strapi" }, "dependencies": { - "@strapi/plugin-cloud": "5.3.0", - "@strapi/plugin-users-permissions": "5.3.0", + "@strapi/plugin-cloud": "5.6.0", + "@strapi/plugin-users-permissions": "5.6.0", "@strapi/provider-upload-aws-s3": "^5.5.0", - "@strapi/strapi": "5.3.0", + "@strapi/strapi": "5.6.0", "@types/node": "^20.17.6", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", From 67f3228bac7019962d351573e8c0303ff73373ee Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 13:20:31 +0100 Subject: [PATCH 14/28] feat (strapi)!: find page by slug instead of documentId, breaking default strapi behaviour --- .../controllers/page-partner-and-product.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts b/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts index e06e769..9527103 100644 --- a/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts +++ b/strapi/src/api/page-partner-and-product/controllers/page-partner-and-product.ts @@ -4,4 +4,18 @@ import { factories } from '@strapi/strapi' -export default factories.createCoreController('api::page-partner-and-product.page-partner-and-product'); +export default factories.createCoreController('api::page-partner-and-product.page-partner-and-product', ({ strapi }) => ({ + async findOne(ctx) { + const { id: slug } = ctx.params; + const { query } = ctx; + + const entity = await strapi.documents('api::page-partner-and-product.page-partner-and-product').findFirst({ + filters: { slug }, + ...query, + }); + + const sanitizedEntity = await this.sanitizeOutput(entity, ctx); + + return this.transformResponse(sanitizedEntity); + } +})); From b2f79bc29b6c0004296e96791db778e62c7d0d41 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 13:21:11 +0100 Subject: [PATCH 15/28] feat (strapi): add default populate middleware for partners and products page --- .../populate-partner-and-products.ts | 23 +++++++++++++++++++ .../routes/page-partner-and-product.ts | 8 ++++++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts new file mode 100644 index 0000000..0c97b0f --- /dev/null +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -0,0 +1,23 @@ +"use strict"; + +const populate = { + localizations: true, + hero: true, + intro: { + populate: true, + }, + sections: { + populate: '*' + } +}; + +module.exports = (config, {strapi}) => { + return async (ctx, next) => { + + ctx.query = { + populate, + } + + return next(); + }; +}; diff --git a/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts b/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts index 9c6f21f..90ebe40 100644 --- a/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts +++ b/strapi/src/api/page-partner-and-product/routes/page-partner-and-product.ts @@ -4,4 +4,10 @@ import { factories } from '@strapi/strapi'; -export default factories.createCoreRouter('api::page-partner-and-product.page-partner-and-product'); +export default factories.createCoreRouter('api::page-partner-and-product.page-partner-and-product', { + config: { + findOne: { + middlewares: ['api::page-partner-and-product.populate-partner-and-products'] + } + }, +}); From 0aeb89d1e85e832c6f2bb037aa7f6ef6dfe826b5 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer Date: Fri, 3 Jan 2025 13:36:34 +0100 Subject: [PATCH 16/28] feat: strapi & frontend hero on partner products page --- .../partners-and-products/[slug]/page.tsx | 47 +++++++++++++++++++ .../app/[locale]/(partners-products)/slugs.ts | 5 ++ .../populate-partner-and-products.ts | 4 +- 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx create mode 100644 nextjs/src/app/[locale]/(partners-products)/slugs.ts diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx new file mode 100644 index 0000000..f1c67c2 --- /dev/null +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -0,0 +1,47 @@ +import { SLUGS } from "@/app/[locale]/(partners-products)/slugs" +import strapi from "@/lib/strapi" +import Hero from "@/components/hero" +import Title from "@/components/title" +import Text from "@/components/text" + +export default async function SolutionsDetailPage({ + params: { locale, slug }, +}: { + params: { + locale: string + slug: string + } +}) { + const url = `page-partner-and-products/${slug}` + + const currentLocale = { + href: `/${locale}/${SLUGS[locale]}`, + locale: locale, + isActive: true, + } + + const { data } = await (await strapi(url)).json() + + const locales = data.localizations.map((item: { locale: string }) => { + return { + href: `/${item.locale}/${SLUGS[item.locale]}`, + locale: item.locale, + isActive: false, + } + }) + locales.push(currentLocale) + // locales.push(activeLocale) + + const { hero } = data + console.log({ hero }) + return ( + <> + {hero && ( + + + <Text markdown={hero.body} /> + </Hero> + )} + </> + ) +} diff --git a/nextjs/src/app/[locale]/(partners-products)/slugs.ts b/nextjs/src/app/[locale]/(partners-products)/slugs.ts new file mode 100644 index 0000000..833cbc2 --- /dev/null +++ b/nextjs/src/app/[locale]/(partners-products)/slugs.ts @@ -0,0 +1,5 @@ +export const SLUGS: { [key: string]: string } = { + nl: "partners-en-producten", + en: "partners-and-products", + de: "partner-und-produkte", +} diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index 0c97b0f..5eb1b33 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -2,7 +2,9 @@ const populate = { localizations: true, - hero: true, + hero: { + populate: '*' + }, intro: { populate: true, }, From 457177d1d263b6fe3bc647f87787249712156c9a Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 13:40:22 +0100 Subject: [PATCH 17/28] feat (frontend): add intro to product partners page new intro component implementation --- .../partners-and-products/[slug]/page.tsx | 8 +++++++- .../(partners-products)/partners-products-page.tsx | 0 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index f1c67c2..e1f9b35 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -3,6 +3,7 @@ import strapi from "@/lib/strapi" import Hero from "@/components/hero" import Title from "@/components/title" import Text from "@/components/text" +import Intro from "@/components/intro" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -32,7 +33,7 @@ export default async function SolutionsDetailPage({ locales.push(currentLocale) // locales.push(activeLocale) - const { hero } = data + const { hero, intro } = data console.log({ hero }) return ( <> @@ -42,6 +43,11 @@ export default async function SolutionsDetailPage({ <Text markdown={hero.body} /> </Hero> )} + {intro && ( + <Intro> + <Text markdown={intro.body} className="grid gap-8" /> + </Intro> + )} </> ) } diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx new file mode 100644 index 0000000..e69de29 From 809f03ebad58f6e97321de841ec23fdea24ebf3c Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 13:53:13 +0100 Subject: [PATCH 18/28] feat (frontend): support two column section on partners and products page --- .../partners-and-products/[slug]/page.tsx | 47 ++++++++++++++++++- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index e1f9b35..7e3de64 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -4,6 +4,9 @@ import Hero from "@/components/hero" import Title from "@/components/title" import Text from "@/components/text" import Intro from "@/components/intro" +import SectionGroup from "@/components/sections/section-group" +import Container from "@/components/container" +import type { colors } from "@/lib/colors" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -33,8 +36,8 @@ export default async function SolutionsDetailPage({ locales.push(currentLocale) // locales.push(activeLocale) - const { hero, intro } = data - console.log({ hero }) + const { hero, intro, sections } = data + return ( <> {hero && ( @@ -48,6 +51,46 @@ export default async function SolutionsDetailPage({ <Text markdown={intro.body} className="grid gap-8" /> </Intro> )} + {sections && sections.length > 0 && ( + <div>{sections.map(dynamicSection)}</div> + )} </> ) } + +type PickStringLiteral<A, B extends A> = B + +type TwoColumnSection = { + __component: string + props: { + background: PickStringLiteral< + keyof typeof colors, + "white" | "neutral" | "sapphire" | "stone" + > + padding: "no-padding" | "both-padding" + } + left_column: string + right_column: string +} + +type SupportedSections = TwoColumnSection + +function dynamicSection(section: SupportedSections, index: number) { + switch (section.__component) { + case "sections.two-column-section": + return ( + <Container + key={`section_two_column_${index}`} + background={section.props.background} + padding={section.props.padding} + > + <SectionGroup columns={2}> + <Text markdown={section.left_column} /> + <Text markdown={section.right_column} /> + </SectionGroup> + </Container> + ) + default: + return <p key={`section_${index}`}>Unknown section</p> + } +} From 3169060128eea82bf572267724c26c5ecacdce16 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:15:20 +0100 Subject: [PATCH 19/28] fix (strapi): detailed populate dynamic comopnents also add card section --- .../partners-and-products/[slug]/page.tsx | 62 ++++++++++++++++++- .../populate-partner-and-products.ts | 14 ++++- 2 files changed, 74 insertions(+), 2 deletions(-) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index 7e3de64..bbedc2c 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -7,6 +7,8 @@ import Intro from "@/components/intro" import SectionGroup from "@/components/sections/section-group" import Container from "@/components/container" import type { colors } from "@/lib/colors" +import CardGroup from "@/components/cards/card-group" +import CardIcon from "@/components/cards/card-icon" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -73,7 +75,33 @@ type TwoColumnSection = { right_column: string } -type SupportedSections = TwoColumnSection +type CTA = { + label: string + url: string +} + +type IconCard = { + icon_image: { + url: string + } + title: string + description: string + cta: CTA +} +type IconCardSection = { + __component: string + section_props: { + background: PickStringLiteral< + keyof typeof colors, + "white" | "neutral" | "sapphire" | "stone" + > + padding: "no-padding" | "both-padding" + } + title: string + cards: IconCard[] +} + +type SupportedSections = TwoColumnSection | IconCardSection function dynamicSection(section: SupportedSections, index: number) { switch (section.__component) { @@ -90,7 +118,39 @@ function dynamicSection(section: SupportedSections, index: number) { </SectionGroup> </Container> ) + case "sections.icon-card-section-with-relation": + return ( + <Container + key={`section_icon_card_${index}`} + background={section.section_props.background} + padding={section.section_props.padding} + > + <SectionGroup title={section.title}> + <CardGroup> + {section.cards.map((item: any, i: number) => { + return ( + <CardIcon + imageUrl={item.icon_image.url} + title={item.title} + description={item.description} + cta={[item.cta].map(mapCta)[0]} + key={`kpi_sections_${i}`} + /> + ) + })} + </CardGroup> + </SectionGroup> + </Container> + ) default: return <p key={`section_${index}`}>Unknown section</p> } } + +const mapCta = (cta: any) => { + if (!cta) return undefined + return { + text: cta.label, + ...cta, + } +} diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index 5eb1b33..6112414 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -9,7 +9,19 @@ const populate = { populate: true, }, sections: { - populate: '*' + on: { + 'sections.two-column-section': { + populate: '*' + }, + 'sections.icon-card-section-with-relation': { + populate: { + cards: { + populate: '*' + }, + section_props: true + } + } + }, } }; From 9e5f7c7f83b69f11b3252524406039739678391a Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:26:35 +0100 Subject: [PATCH 20/28] feat: white paper section --- .../partners-and-products/[slug]/page.tsx | 25 +++++++++++++++++++ .../populate-partner-and-products.ts | 14 ++++++++--- 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index bbedc2c..5e3fbe4 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -9,6 +9,8 @@ import Container from "@/components/container" import type { colors } from "@/lib/colors" import CardGroup from "@/components/cards/card-group" import CardIcon from "@/components/cards/card-icon" +import { whitepaperSection } from "@/app/[locale]/theme/texts" +import SectionWhitepaper from "@/components/sections/section-whitepaper" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -142,6 +144,29 @@ function dynamicSection(section: SupportedSections, index: number) { </SectionGroup> </Container> ) + case "relations.white-paper-section": + return ( + <Container + key={`section_white_paper_${index}`} + background={section.props.background} + padding={section.props.padding} + > + <SectionWhitepaper + title={section.white_paper.title} + cta={{ + text: "Download whitepaper", + href: section.white_paper.download_file.url, + variant: "cta", + size: "large", + }} + image={{ + src: section.white_paper.cover_image.url, + alt: section.white_paper.cover_image.alternativeText ?? "", + }} + text={section.white_paper.description} + /> + </Container> + ) default: return <p key={`section_${index}`}>Unknown section</p> } diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index 6112414..6c78913 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -11,15 +11,23 @@ const populate = { sections: { on: { 'sections.two-column-section': { - populate: '*' + populate: '*', }, 'sections.icon-card-section-with-relation': { populate: { cards: { - populate: '*' + populate: '*', }, - section_props: true + section_props: true, } + }, + 'relations.white-paper-section': { + populate: { + props: true, + white_paper: { + populate: '*' + } + }, } }, } From a4b38bd5f7990422820b03620c1454c30c490f2c Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:37:47 +0100 Subject: [PATCH 21/28] feat: quotes section on partners and products page --- .../partners-and-products/[slug]/page.tsx | 17 ++++++++++++++++- .../populate-partner-and-products.ts | 7 +++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index 5e3fbe4..910e032 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -9,8 +9,9 @@ import Container from "@/components/container" import type { colors } from "@/lib/colors" import CardGroup from "@/components/cards/card-group" import CardIcon from "@/components/cards/card-icon" -import { whitepaperSection } from "@/app/[locale]/theme/texts" +import { quoteSection, whitepaperSection } from "@/app/[locale]/theme/texts" import SectionWhitepaper from "@/components/sections/section-whitepaper" +import SectionQuote from "@/components/sections/section-quote" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -167,6 +168,20 @@ function dynamicSection(section: SupportedSections, index: number) { /> </Container> ) + case "relations.quotes-relation": + return ( + <Container key={`section_quote_${index}`}> + <SectionGroup hasDividers> + {section.quotes.length > 0 && section.quotes[0] && ( + <SectionQuote + author={`${section.quotes[0].name} | ${section.quotes[0].tagline}`} + image={section.quotes[0].image} + quote={section.quotes[0].quote} + /> + )} + </SectionGroup> + </Container> + ) default: return <p key={`section_${index}`}>Unknown section</p> } diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index 6c78913..0dc0b6c 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -28,6 +28,13 @@ const populate = { populate: '*' } }, + }, + 'relations.quotes-relation': { + populate: { + quotes: { + populate: '*' + } + }, } }, } From ea8dad6992b0e084e852118c4c568589f738f7bc Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:39:52 +0100 Subject: [PATCH 22/28] refactor: code style --- .../middlewares/populate-partner-and-products.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index 0dc0b6c..f315c94 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -19,23 +19,23 @@ const populate = { populate: '*', }, section_props: true, - } + }, }, 'relations.white-paper-section': { populate: { props: true, white_paper: { populate: '*' - } + }, }, }, 'relations.quotes-relation': { populate: { quotes: { populate: '*' - } + }, }, - } + }, }, } }; From 9c57c4eed9205dd634a6d3c00d7d31c844828657 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:42:17 +0100 Subject: [PATCH 23/28] feat: heading with link container on partners and products page --- .../partners-and-products/[slug]/page.tsx | 32 ++++++++++++++++++- .../populate-partner-and-products.ts | 7 ++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index 910e032..b128d0b 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -9,9 +9,9 @@ import Container from "@/components/container" import type { colors } from "@/lib/colors" import CardGroup from "@/components/cards/card-group" import CardIcon from "@/components/cards/card-icon" -import { quoteSection, whitepaperSection } from "@/app/[locale]/theme/texts" import SectionWhitepaper from "@/components/sections/section-whitepaper" import SectionQuote from "@/components/sections/section-quote" +import ButtonGroup from "@/components/button-group" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -182,6 +182,36 @@ function dynamicSection(section: SupportedSections, index: number) { </SectionGroup> </Container> ) + case "sections.heading-with-link-container": + return ( + <Container + key={`section_heading_with_link_${index}`} + background={section.background} + padding={section.padding} + > + <SectionGroup + title={section.section_group_with_external_link.title} + align={"center"} + > + <ButtonGroup + align={"center"} + ctas={[ + { + href: section.section_group_with_external_link + .external_cta_link.href, + size: section.section_group_with_external_link + .external_cta_link.size, + variant: + section.section_group_with_external_link.external_cta_link + .variant, + text: section.section_group_with_external_link + .external_cta_link.label, + }, + ]} + /> + </SectionGroup> + </Container> + ) default: return <p key={`section_${index}`}>Unknown section</p> } diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index f315c94..b91df49 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -36,6 +36,13 @@ const populate = { }, }, }, + 'sections.heading-with-link-container': { + populate: { + section_group_with_external_link: { + populate: '*' + }, + }, + }, }, } }; From 0f7ab21dc58335f7576d4e9f9f0ce3f736ccf2af Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 14:45:11 +0100 Subject: [PATCH 24/28] chore (frontend): add navbar to partner products page --- .../(partners-products)/partners-and-products/[slug]/page.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index b128d0b..0766660 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -12,6 +12,7 @@ import CardIcon from "@/components/cards/card-icon" import SectionWhitepaper from "@/components/sections/section-whitepaper" import SectionQuote from "@/components/sections/section-quote" import ButtonGroup from "@/components/button-group" +import NavBar from "@/components/nav-bar/nav-bar" export default async function SolutionsDetailPage({ params: { locale, slug }, @@ -45,6 +46,7 @@ export default async function SolutionsDetailPage({ return ( <> + <NavBar items={locales} /> {hero && ( <Hero color={hero.color.color} imageUrl={hero.backround_image.url}> <Title markdown={hero.title} /> From 3f5392039c72bf95e721ce6085463e1fe2a4a4f5 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 15:07:00 +0100 Subject: [PATCH 25/28] fix (strapi): support locale for navbar language switcher --- .../middlewares/populate-partner-and-products.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts index b91df49..2218424 100644 --- a/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts +++ b/strapi/src/api/page-partner-and-product/middlewares/populate-partner-and-products.ts @@ -51,6 +51,7 @@ module.exports = (config, {strapi}) => { return async (ctx, next) => { ctx.query = { + ...ctx.query, populate, } From bedac680e407f22a55508f8eb1ab8df776f46ebf Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 15:07:25 +0100 Subject: [PATCH 26/28] refactor (frontend): reusable partner and products page --- .../partners-and-products/[slug]/page.tsx | 217 +---------------- .../partners-en-producten/[slug]/page.tsx | 19 ++ .../partners-products-page.tsx | 0 .../(partners-products)/partners-products.tsx | 223 ++++++++++++++++++ 4 files changed, 246 insertions(+), 213 deletions(-) create mode 100644 nextjs/src/app/[locale]/(partners-products)/partners-en-producten/[slug]/page.tsx delete mode 100644 nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx create mode 100644 nextjs/src/app/[locale]/(partners-products)/partners-products.tsx diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx index 0766660..76eda98 100644 --- a/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx +++ b/nextjs/src/app/[locale]/(partners-products)/partners-and-products/[slug]/page.tsx @@ -1,20 +1,7 @@ import { SLUGS } from "@/app/[locale]/(partners-products)/slugs" -import strapi from "@/lib/strapi" -import Hero from "@/components/hero" -import Title from "@/components/title" -import Text from "@/components/text" -import Intro from "@/components/intro" -import SectionGroup from "@/components/sections/section-group" -import Container from "@/components/container" -import type { colors } from "@/lib/colors" -import CardGroup from "@/components/cards/card-group" -import CardIcon from "@/components/cards/card-icon" -import SectionWhitepaper from "@/components/sections/section-whitepaper" -import SectionQuote from "@/components/sections/section-quote" -import ButtonGroup from "@/components/button-group" -import NavBar from "@/components/nav-bar/nav-bar" +import PartnersProducts from "@/app/[locale]/(partners-products)/partners-products" -export default async function SolutionsDetailPage({ +export default async function PartnerAndProductsPage({ params: { locale, slug }, }: { params: { @@ -22,207 +9,11 @@ export default async function SolutionsDetailPage({ slug: string } }) { - const url = `page-partner-and-products/${slug}` - const currentLocale = { - href: `/${locale}/${SLUGS[locale]}`, + href: `/${locale}/${SLUGS[locale]}/${slug}`, locale: locale, isActive: true, } - const { data } = await (await strapi(url)).json() - - const locales = data.localizations.map((item: { locale: string }) => { - return { - href: `/${item.locale}/${SLUGS[item.locale]}`, - locale: item.locale, - isActive: false, - } - }) - locales.push(currentLocale) - // locales.push(activeLocale) - - const { hero, intro, sections } = data - - return ( - <> - <NavBar items={locales} /> - {hero && ( - <Hero color={hero.color.color} imageUrl={hero.backround_image.url}> - <Title markdown={hero.title} /> - <Text markdown={hero.body} /> - </Hero> - )} - {intro && ( - <Intro> - <Text markdown={intro.body} className="grid gap-8" /> - </Intro> - )} - {sections && sections.length > 0 && ( - <div>{sections.map(dynamicSection)}</div> - )} - </> - ) -} - -type PickStringLiteral<A, B extends A> = B - -type TwoColumnSection = { - __component: string - props: { - background: PickStringLiteral< - keyof typeof colors, - "white" | "neutral" | "sapphire" | "stone" - > - padding: "no-padding" | "both-padding" - } - left_column: string - right_column: string -} - -type CTA = { - label: string - url: string -} - -type IconCard = { - icon_image: { - url: string - } - title: string - description: string - cta: CTA -} -type IconCardSection = { - __component: string - section_props: { - background: PickStringLiteral< - keyof typeof colors, - "white" | "neutral" | "sapphire" | "stone" - > - padding: "no-padding" | "both-padding" - } - title: string - cards: IconCard[] -} - -type SupportedSections = TwoColumnSection | IconCardSection - -function dynamicSection(section: SupportedSections, index: number) { - switch (section.__component) { - case "sections.two-column-section": - return ( - <Container - key={`section_two_column_${index}`} - background={section.props.background} - padding={section.props.padding} - > - <SectionGroup columns={2}> - <Text markdown={section.left_column} /> - <Text markdown={section.right_column} /> - </SectionGroup> - </Container> - ) - case "sections.icon-card-section-with-relation": - return ( - <Container - key={`section_icon_card_${index}`} - background={section.section_props.background} - padding={section.section_props.padding} - > - <SectionGroup title={section.title}> - <CardGroup> - {section.cards.map((item: any, i: number) => { - return ( - <CardIcon - imageUrl={item.icon_image.url} - title={item.title} - description={item.description} - cta={[item.cta].map(mapCta)[0]} - key={`kpi_sections_${i}`} - /> - ) - })} - </CardGroup> - </SectionGroup> - </Container> - ) - case "relations.white-paper-section": - return ( - <Container - key={`section_white_paper_${index}`} - background={section.props.background} - padding={section.props.padding} - > - <SectionWhitepaper - title={section.white_paper.title} - cta={{ - text: "Download whitepaper", - href: section.white_paper.download_file.url, - variant: "cta", - size: "large", - }} - image={{ - src: section.white_paper.cover_image.url, - alt: section.white_paper.cover_image.alternativeText ?? "", - }} - text={section.white_paper.description} - /> - </Container> - ) - case "relations.quotes-relation": - return ( - <Container key={`section_quote_${index}`}> - <SectionGroup hasDividers> - {section.quotes.length > 0 && section.quotes[0] && ( - <SectionQuote - author={`${section.quotes[0].name} | ${section.quotes[0].tagline}`} - image={section.quotes[0].image} - quote={section.quotes[0].quote} - /> - )} - </SectionGroup> - </Container> - ) - case "sections.heading-with-link-container": - return ( - <Container - key={`section_heading_with_link_${index}`} - background={section.background} - padding={section.padding} - > - <SectionGroup - title={section.section_group_with_external_link.title} - align={"center"} - > - <ButtonGroup - align={"center"} - ctas={[ - { - href: section.section_group_with_external_link - .external_cta_link.href, - size: section.section_group_with_external_link - .external_cta_link.size, - variant: - section.section_group_with_external_link.external_cta_link - .variant, - text: section.section_group_with_external_link - .external_cta_link.label, - }, - ]} - /> - </SectionGroup> - </Container> - ) - default: - return <p key={`section_${index}`}>Unknown section</p> - } -} - -const mapCta = (cta: any) => { - if (!cta) return undefined - return { - text: cta.label, - ...cta, - } + return <PartnersProducts activeLocale={currentLocale} slug={slug} /> } diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-en-producten/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-en-producten/[slug]/page.tsx new file mode 100644 index 0000000..76eda98 --- /dev/null +++ b/nextjs/src/app/[locale]/(partners-products)/partners-en-producten/[slug]/page.tsx @@ -0,0 +1,19 @@ +import { SLUGS } from "@/app/[locale]/(partners-products)/slugs" +import PartnersProducts from "@/app/[locale]/(partners-products)/partners-products" + +export default async function PartnerAndProductsPage({ + params: { locale, slug }, +}: { + params: { + locale: string + slug: string + } +}) { + const currentLocale = { + href: `/${locale}/${SLUGS[locale]}/${slug}`, + locale: locale, + isActive: true, + } + + return <PartnersProducts activeLocale={currentLocale} slug={slug} /> +} diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-products-page.tsx deleted file mode 100644 index e69de29..0000000 diff --git a/nextjs/src/app/[locale]/(partners-products)/partners-products.tsx b/nextjs/src/app/[locale]/(partners-products)/partners-products.tsx new file mode 100644 index 0000000..6349ef8 --- /dev/null +++ b/nextjs/src/app/[locale]/(partners-products)/partners-products.tsx @@ -0,0 +1,223 @@ +import { SLUGS } from "@/app/[locale]/(partners-products)/slugs" +import strapi from "@/lib/strapi" +import Hero from "@/components/hero" +import Title from "@/components/title" +import Text from "@/components/text" +import Intro from "@/components/intro" +import SectionGroup from "@/components/sections/section-group" +import Container from "@/components/container" +import type { colors } from "@/lib/colors" +import CardGroup from "@/components/cards/card-group" +import CardIcon from "@/components/cards/card-icon" +import SectionWhitepaper from "@/components/sections/section-whitepaper" +import SectionQuote from "@/components/sections/section-quote" +import ButtonGroup from "@/components/button-group" +import NavBar from "@/components/nav-bar/nav-bar" +import { LinkedLocale } from "@/components/nav-bar/linked-locales-provider" + +export default async function PartnersProducts({ + activeLocale, + slug, +}: { + activeLocale: LinkedLocale + slug: string +}) { + const url = `page-partner-and-products/${slug}?locale=${activeLocale.locale}` + const { data } = await (await strapi(url)).json() + + const locales = data.localizations.map( + (item: { locale: string; slug: string }) => { + return { + href: `/${item.locale}/${SLUGS[item.locale]}/${item.slug}`, + locale: item.locale, + isActive: false, + } + }, + ) + + locales.push(activeLocale) + + const { hero, intro, sections } = data + + return ( + <> + <NavBar items={locales} /> + {hero && ( + <Hero color={hero.color.color} imageUrl={hero.backround_image.url}> + <Title markdown={hero.title} /> + <Text markdown={hero.body} /> + </Hero> + )} + {intro && ( + <Intro> + <Text markdown={intro.body} className="grid gap-8" /> + </Intro> + )} + {sections && sections.length > 0 && ( + <div>{sections.map(dynamicSection)}</div> + )} + </> + ) +} + +type PickStringLiteral<A, B extends A> = B + +type TwoColumnSection = { + __component: string + props: { + background: PickStringLiteral< + keyof typeof colors, + "white" | "neutral" | "sapphire" | "stone" + > + padding: "no-padding" | "both-padding" + } + left_column: string + right_column: string +} + +type CTA = { + label: string + url: string +} + +type IconCard = { + icon_image: { + url: string + } + title: string + description: string + cta: CTA +} +type IconCardSection = { + __component: string + section_props: { + background: PickStringLiteral< + keyof typeof colors, + "white" | "neutral" | "sapphire" | "stone" + > + padding: "no-padding" | "both-padding" + } + title: string + cards: IconCard[] +} + +type SupportedSections = TwoColumnSection | IconCardSection + +function dynamicSection(section: SupportedSections, index: number) { + switch (section.__component) { + case "sections.two-column-section": + return ( + <Container + key={`section_two_column_${index}`} + background={section.props.background} + padding={section.props.padding} + > + <SectionGroup columns={2}> + <Text markdown={section.left_column} /> + <Text markdown={section.right_column} /> + </SectionGroup> + </Container> + ) + case "sections.icon-card-section-with-relation": + return ( + <Container + key={`section_icon_card_${index}`} + background={section.section_props.background} + padding={section.section_props.padding} + > + <SectionGroup title={section.title}> + <CardGroup> + {section.cards.map((item: any, i: number) => { + return ( + <CardIcon + imageUrl={item.icon_image.url} + title={item.title} + description={item.description} + cta={[item.cta].map(mapCta)[0]} + key={`kpi_sections_${i}`} + /> + ) + })} + </CardGroup> + </SectionGroup> + </Container> + ) + case "relations.white-paper-section": + return ( + <Container + key={`section_white_paper_${index}`} + background={section.props.background} + padding={section.props.padding} + > + <SectionWhitepaper + title={section.white_paper.title} + cta={{ + text: "Download whitepaper", + href: section.white_paper.download_file.url, + variant: "cta", + size: "large", + }} + image={{ + src: section.white_paper.cover_image.url, + alt: section.white_paper.cover_image.alternativeText ?? "", + }} + text={section.white_paper.description} + /> + </Container> + ) + case "relations.quotes-relation": + return ( + <Container key={`section_quote_${index}`}> + <SectionGroup hasDividers> + {section.quotes.length > 0 && section.quotes[0] && ( + <SectionQuote + author={`${section.quotes[0].name} | ${section.quotes[0].tagline}`} + image={section.quotes[0].image} + quote={section.quotes[0].quote} + /> + )} + </SectionGroup> + </Container> + ) + case "sections.heading-with-link-container": + return ( + <Container + key={`section_heading_with_link_${index}`} + background={section.background} + padding={section.padding} + > + <SectionGroup + title={section.section_group_with_external_link.title} + align={"center"} + > + <ButtonGroup + align={"center"} + ctas={[ + { + href: section.section_group_with_external_link + .external_cta_link.href, + size: section.section_group_with_external_link + .external_cta_link.size, + variant: + section.section_group_with_external_link.external_cta_link + .variant, + text: section.section_group_with_external_link + .external_cta_link.label, + }, + ]} + /> + </SectionGroup> + </Container> + ) + default: + return <p key={`section_${index}`}>Unknown section</p> + } +} + +const mapCta = (cta: any) => { + if (!cta) return undefined + return { + text: cta.label, + ...cta, + } +} From 0f7cd55702d80ea80e2d06d6958c25ab77b500d2 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 15:11:22 +0100 Subject: [PATCH 27/28] feat (frontend): de product and partners page --- .../partner-und-produkte/[slug]/page.tsx | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 nextjs/src/app/[locale]/(partners-products)/partner-und-produkte/[slug]/page.tsx diff --git a/nextjs/src/app/[locale]/(partners-products)/partner-und-produkte/[slug]/page.tsx b/nextjs/src/app/[locale]/(partners-products)/partner-und-produkte/[slug]/page.tsx new file mode 100644 index 0000000..76eda98 --- /dev/null +++ b/nextjs/src/app/[locale]/(partners-products)/partner-und-produkte/[slug]/page.tsx @@ -0,0 +1,19 @@ +import { SLUGS } from "@/app/[locale]/(partners-products)/slugs" +import PartnersProducts from "@/app/[locale]/(partners-products)/partners-products" + +export default async function PartnerAndProductsPage({ + params: { locale, slug }, +}: { + params: { + locale: string + slug: string + } +}) { + const currentLocale = { + href: `/${locale}/${SLUGS[locale]}/${slug}`, + locale: locale, + isActive: true, + } + + return <PartnersProducts activeLocale={currentLocale} slug={slug} /> +} From bebf2ccce101b4e995a4318211d43e1dbd41bce2 Mon Sep 17 00:00:00 2001 From: Mauricio Kruijer <mauricio.kruijer@gmail.com> Date: Fri, 3 Jan 2025 15:17:18 +0100 Subject: [PATCH 28/28] fix (frontend): tests --- nextjs/src/components/form/messages.ts | 3 ++- nextjs/src/components/form/standard-form.tsx | 11 ++--------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/nextjs/src/components/form/messages.ts b/nextjs/src/components/form/messages.ts index c9e31a0..a29f42f 100644 --- a/nextjs/src/components/form/messages.ts +++ b/nextjs/src/components/form/messages.ts @@ -32,6 +32,7 @@ export default { oneOf: "Dit veld moet een van de volgende waarden zijn: ${values}.", privacyPolicy: "U moet het privacybeleid accepteren.", }, - "en-AU": EN_MESSAGE, en: EN_MESSAGE, + "en-AU": EN_MESSAGE, + "en-US": EN_MESSAGE, } as const diff --git a/nextjs/src/components/form/standard-form.tsx b/nextjs/src/components/form/standard-form.tsx index 0573101..6949452 100644 --- a/nextjs/src/components/form/standard-form.tsx +++ b/nextjs/src/components/form/standard-form.tsx @@ -16,15 +16,6 @@ const StandardForm: React.FC<FormProps> = ({ locale }) => { switch (locale) { case "en": case "en-US": - return { - firstName: "First Name", - lastName: "Last Name", - email: "Email", - company: "Company", - job: "Job", - privacyPolicy: "I accept the privacy policy of Adfinis", - submit: "Submit", - } case "en-AU": return { firstName: "First Name", @@ -100,6 +91,8 @@ const StandardForm: React.FC<FormProps> = ({ locale }) => { privacyPolicy: false, } + console.log({ locale }) + const validationSchema = Yup.object({ firstName: Yup.string().required(), lastName: Yup.string().required(),