From edeae4a8c3583455e782559deffcf22a9dea61cf Mon Sep 17 00:00:00 2001 From: Tiago Ribeiro Date: Fri, 15 Mar 2024 09:54:25 +0000 Subject: [PATCH] Created the structure for the whole About page --- package.json | 1 + src/api/about/content-types/about/schema.json | 21 ++ src/components/about-page/capabilities.json | 41 ++++ src/components/about-page/expertise.json | 41 ++++ .../1.0.0/full_documentation.json | 188 +++++++++++++++++- types/generated/components.d.ts | 36 ++++ types/generated/contentTypes.d.ts | 12 ++ yarn.lock | 5 + 8 files changed, 344 insertions(+), 1 deletion(-) create mode 100644 src/components/about-page/capabilities.json create mode 100644 src/components/about-page/expertise.json diff --git a/package.json b/package.json index 2f24433..1383680 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "react-dom": "^18.0.0", "react-router-dom": "5.3.4", "strapi-plugin-import-export-entries": "^1.23.1", + "strapi-plugin-populate-deep": "^3.0.1", "styled-components": "5.3.3" }, "author": { diff --git a/src/api/about/content-types/about/schema.json b/src/api/about/content-types/about/schema.json index b5a269d..71d868b 100644 --- a/src/api/about/content-types/about/schema.json +++ b/src/api/about/content-types/about/schema.json @@ -58,6 +58,27 @@ } }, "component": "about-page.ceo-message" + }, + "Capabilities": { + "type": "component", + "repeatable": false, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "component": "about-page.capabilities" + }, + "Expertise": { + "displayName": "Expertise", + "type": "component", + "repeatable": false, + "pluginOptions": { + "i18n": { + "localized": true + } + }, + "component": "about-page.expertise" } } } diff --git a/src/components/about-page/capabilities.json b/src/components/about-page/capabilities.json new file mode 100644 index 0000000..760834c --- /dev/null +++ b/src/components/about-page/capabilities.json @@ -0,0 +1,41 @@ +{ + "collectionName": "components_about_page_capabilities", + "info": { + "displayName": "Capabilities", + "description": "" + }, + "options": {}, + "attributes": { + "Title": { + "type": "string" + }, + "Intro": { + "type": "text" + }, + "Analytics": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "Predictive": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "NLP": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "Engine": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "ContinuousLearning": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + } + } +} diff --git a/src/components/about-page/expertise.json b/src/components/about-page/expertise.json new file mode 100644 index 0000000..f975253 --- /dev/null +++ b/src/components/about-page/expertise.json @@ -0,0 +1,41 @@ +{ + "collectionName": "components_about_page_expertise", + "info": { + "displayName": "Expertise", + "description": "" + }, + "options": {}, + "attributes": { + "Title": { + "type": "string" + }, + "Intro": { + "type": "text" + }, + "Language": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "IELTS": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "Alignment": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "Native": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + }, + "KnowledgeExperience": { + "type": "component", + "repeatable": false, + "component": "section.title-with-text" + } + } +} diff --git a/src/extensions/documentation/documentation/1.0.0/full_documentation.json b/src/extensions/documentation/documentation/1.0.0/full_documentation.json index f690bb4..7cc6317 100644 --- a/src/extensions/documentation/documentation/1.0.0/full_documentation.json +++ b/src/extensions/documentation/documentation/1.0.0/full_documentation.json @@ -14,7 +14,7 @@ "name": "Apache 2.0", "url": "https://www.apache.org/licenses/LICENSE-2.0.html" }, - "x-generation-date": "2024-03-14T18:34:06.485Z" + "x-generation-date": "2024-03-15T09:42:42.132Z" }, "x-strapi-config": { "path": "/documentation", @@ -104,6 +104,12 @@ "CEOMessage": { "$ref": "#/components/schemas/AboutPageCeoMessageComponent" }, + "Capabilities": { + "$ref": "#/components/schemas/AboutPageCapabilitiesComponent" + }, + "Expertise": { + "$ref": "#/components/schemas/AboutPageExpertiseComponent" + }, "locale": { "type": "string" } @@ -130,6 +136,12 @@ "CEOMessage": { "$ref": "#/components/schemas/AboutPageCeoMessageComponent" }, + "Capabilities": { + "$ref": "#/components/schemas/AboutPageCapabilitiesComponent" + }, + "Expertise": { + "$ref": "#/components/schemas/AboutPageExpertiseComponent" + }, "locale": { "type": "string" } @@ -266,6 +278,12 @@ "CEOMessage": { "$ref": "#/components/schemas/AboutPageCeoMessageComponent" }, + "Capabilities": { + "$ref": "#/components/schemas/AboutPageCapabilitiesComponent" + }, + "Expertise": { + "$ref": "#/components/schemas/AboutPageExpertiseComponent" + }, "createdAt": { "type": "string", "format": "date-time" @@ -664,6 +682,174 @@ } } }, + "AboutPageCapabilitiesComponent": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Intro": { + "type": "string" + }, + "Analytics": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "Predictive": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "NLP": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "Engine": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "ContinuousLearning": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + } + } + }, + "AboutPageExpertiseComponent": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Intro": { + "type": "string" + }, + "Language": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "IELTS": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "Alignment": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "Native": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + }, + "KnowledgeExperience": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "Title": { + "type": "string" + }, + "Text": { + "type": "string" + } + } + } + } + }, "HomeLocalizationRequest": { "required": [ "locale" diff --git a/types/generated/components.d.ts b/types/generated/components.d.ts index dba9c60..714a3a8 100644 --- a/types/generated/components.d.ts +++ b/types/generated/components.d.ts @@ -13,6 +13,23 @@ export interface AboutPage5Texts extends Schema.Component { }; } +export interface AboutPageCapabilities extends Schema.Component { + collectionName: 'components_about_page_capabilities'; + info: { + displayName: 'Capabilities'; + description: ''; + }; + attributes: { + Title: Attribute.String; + Intro: Attribute.Text; + Analytics: Attribute.Component<'section.title-with-text'>; + Predictive: Attribute.Component<'section.title-with-text'>; + NLP: Attribute.Component<'section.title-with-text'>; + Engine: Attribute.Component<'section.title-with-text'>; + ContinuousLearning: Attribute.Component<'section.title-with-text'>; + }; +} + export interface AboutPageCeoMessage extends Schema.Component { collectionName: 'components_about_page_ceo_messages'; info: { @@ -26,6 +43,23 @@ export interface AboutPageCeoMessage extends Schema.Component { }; } +export interface AboutPageExpertise extends Schema.Component { + collectionName: 'components_about_page_expertise'; + info: { + displayName: 'Expertise'; + description: ''; + }; + attributes: { + Title: Attribute.String; + Intro: Attribute.Text; + Language: Attribute.Component<'section.title-with-text'>; + IELTS: Attribute.Component<'section.title-with-text'>; + Alignment: Attribute.Component<'section.title-with-text'>; + Native: Attribute.Component<'section.title-with-text'>; + KnowledgeExperience: Attribute.Component<'section.title-with-text'>; + }; +} + export interface SectionTitleWithText extends Schema.Component { collectionName: 'components_section_title_with_texts'; info: { @@ -54,7 +88,9 @@ declare module '@strapi/types' { export module Shared { export interface Components { 'about-page.5-texts': AboutPage5Texts; + 'about-page.capabilities': AboutPageCapabilities; 'about-page.ceo-message': AboutPageCeoMessage; + 'about-page.expertise': AboutPageExpertise; 'section.title-with-text': SectionTitleWithText; 'title.title-with-tag': TitleTitleWithTag; } diff --git a/types/generated/contentTypes.d.ts b/types/generated/contentTypes.d.ts index 3bdf439..831be84 100644 --- a/types/generated/contentTypes.d.ts +++ b/types/generated/contentTypes.d.ts @@ -403,6 +403,18 @@ export interface ApiAboutAbout extends Schema.SingleType { localized: true; }; }>; + Capabilities: Attribute.Component<'about-page.capabilities'> & + Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; + Expertise: Attribute.Component<'about-page.expertise'> & + Attribute.SetPluginOptions<{ + i18n: { + localized: true; + }; + }>; createdAt: Attribute.DateTime; updatedAt: Attribute.DateTime; publishedAt: Attribute.DateTime; diff --git a/yarn.lock b/yarn.lock index 6253fc9..010ce04 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9046,6 +9046,11 @@ strapi-plugin-import-export-entries@^1.23.1: node-fetch "2.6.9" react-singleton-hook "3.3.0" +strapi-plugin-populate-deep@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strapi-plugin-populate-deep/-/strapi-plugin-populate-deep-3.0.1.tgz#cd8f9853dc6e9a1859bdcc0176323a29bd2b8509" + integrity sha512-7t1bPPBN1AGKZlFT/6qsqmwgd7SzTA9CNzEBSzeYEjL/e0GKD2lf4wF11C2vMkfsQW2GhRAXZQRCGlLnV2XHFQ== + stream-chain@2.2.5, stream-chain@^2.2.5: version "2.2.5" resolved "https://registry.yarnpkg.com/stream-chain/-/stream-chain-2.2.5.tgz#b30967e8f14ee033c5b9a19bbe8a2cba90ba0d09"