@griddo/cx 11.9.17 → 11.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -240
- package/build/commands/end-render.d.ts +0 -1
- package/build/commands/end-render.js +31 -0
- package/build/commands/end-render.js.map +7 -0
- package/build/commands/prepare-assets-directory.js +9 -0
- package/build/commands/prepare-assets-directory.js.map +7 -0
- package/build/commands/prepare-domains-render.js +40 -0
- package/build/commands/prepare-domains-render.js.map +7 -0
- package/build/commands/reset-render.d.ts +0 -1
- package/build/commands/reset-render.js +31 -0
- package/build/commands/reset-render.js.map +7 -0
- package/build/commands/single-domain-upload-search-content.d.ts +1 -0
- package/build/commands/start-render.d.ts +0 -1
- package/build/commands/start-render.js +66 -0
- package/build/commands/start-render.js.map +7 -0
- package/build/commands/upload-search-content.d.ts +0 -1
- package/build/commands/upload-search-content.js +32 -0
- package/build/commands/upload-search-content.js.map +7 -0
- package/build/core/GriddoLog.d.ts +16 -0
- package/build/{utils/health-checks.d.ts → core/check-env-health.d.ts} +4 -2
- package/build/core/db-class.d.ts +11 -0
- package/build/core/db.d.ts +4 -0
- package/build/core/dist-rollback.d.ts +11 -0
- package/build/core/errors.d.ts +26 -0
- package/build/core/fs.d.ts +69 -0
- package/build/core/life-cycle.d.ts +26 -0
- package/build/core/logger.d.ts +18 -0
- package/build/core/objects.d.ts +11 -0
- package/build/core/print-logos.d.ts +5 -0
- package/build/index.d.ts +10 -29
- package/build/index.js +404 -73
- package/build/react/DynamicScript/index.d.ts +4 -0
- package/build/react/GriddoFavicon/index.d.ts +4 -0
- package/build/react/GriddoIntegrations/index.d.ts +3 -4
- package/build/react/GriddoIntegrations/utils.d.ts +7 -6
- package/build/react/GriddoOpenGraph/index.d.ts +10 -0
- package/build/react/index.d.ts +3 -2
- package/build/react/index.js +1 -3
- package/build/{utils → services}/api.d.ts +1 -1
- package/build/services/auth.d.ts +2 -5
- package/build/services/domains.d.ts +3 -4
- package/build/services/manage-sites.d.ts +22 -0
- package/build/services/manage-store.d.ts +32 -0
- package/build/services/navigation.d.ts +16 -16
- package/build/{utils → services}/pages.d.ts +3 -3
- package/build/services/reference-fields.d.ts +3 -3
- package/build/services/render-artifacts.d.ts +6 -0
- package/build/services/render.d.ts +70 -0
- package/build/services/robots.d.ts +2 -19
- package/build/services/sitemaps.d.ts +5 -0
- package/build/services/sites.d.ts +8 -5
- package/build/services/store.d.ts +10 -1
- package/build/shared/context.d.ts +36 -0
- package/build/shared/envs.d.ts +17 -0
- package/build/{errors/errors-data.d.ts → shared/errors.d.ts} +5 -3
- package/build/shared/npm-modules/brush.d.ts +18 -0
- package/build/shared/npm-modules/find-up-simple.d.ts +34 -0
- package/build/shared/npm-modules/pkg-dir.d.ts +7 -0
- package/build/shared/npm-modules/xml-parser.d.ts +4 -0
- package/build/{types → shared/types}/api.d.ts +18 -18
- package/build/{types → shared/types}/global.d.ts +15 -16
- package/build/{types → shared/types}/navigation.d.ts +5 -5
- package/build/{types → shared/types}/pages.d.ts +9 -9
- package/build/shared/types/render.d.ts +56 -0
- package/build/{types → shared/types}/sites.d.ts +18 -19
- package/build/shared/types.d.ts +15 -0
- package/build/ssg-adapters/gatsby/actions/clean.d.ts +3 -0
- package/build/ssg-adapters/gatsby/actions/close.d.ts +3 -0
- package/build/ssg-adapters/gatsby/actions/data.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/healthCheck.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/init.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/logs.d.ts +3 -0
- package/build/ssg-adapters/gatsby/actions/meta.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/prepare.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/relocation.d.ts +2 -0
- package/build/ssg-adapters/gatsby/actions/restore.d.ts +3 -0
- package/build/ssg-adapters/gatsby/actions/ssg.d.ts +3 -0
- package/build/ssg-adapters/gatsby/actions/sync.d.ts +3 -0
- package/build/ssg-adapters/gatsby/index.d.ts +9 -0
- package/build/ssg-adapters/gatsby/shared/artifacts.d.ts +4 -0
- package/build/ssg-adapters/gatsby/shared/diff-assets.d.ts +15 -0
- package/build/ssg-adapters/gatsby/shared/extract-assets.d.ts +7 -0
- package/build/ssg-adapters/gatsby/shared/gatsby-build.d.ts +7 -0
- package/build/ssg-adapters/gatsby/shared/render-rollback.d.ts +18 -0
- package/build/ssg-adapters/gatsby/shared/sync-render.d.ts +26 -0
- package/build/ssg-adapters/gatsby/shared/types.d.ts +34 -0
- package/cli.mjs +231 -0
- package/exporter/build-esbuild.noop +42 -0
- package/exporter/build.sh +16 -24
- package/exporter/commands/README.md +142 -0
- package/exporter/commands/end-render.ts +53 -87
- package/exporter/commands/prepare-assets-directory.ts +35 -0
- package/exporter/commands/prepare-domains-render.ts +150 -33
- package/exporter/commands/reset-render.ts +13 -8
- package/exporter/commands/single-domain-upload-search-content.ts +206 -0
- package/exporter/commands/start-render.ts +14 -65
- package/exporter/commands/upload-search-content.ts +204 -26
- package/exporter/core/GriddoLog.ts +45 -0
- package/exporter/core/check-env-health.ts +203 -0
- package/exporter/core/db-class.ts +54 -0
- package/exporter/core/db.ts +33 -0
- package/exporter/core/dist-rollback.ts +49 -0
- package/exporter/core/errors.ts +93 -0
- package/exporter/core/fs.ts +385 -0
- package/exporter/{utils → core}/images.ts +1 -6
- package/exporter/{utils → core}/instance.ts +9 -13
- package/exporter/core/life-cycle.ts +73 -0
- package/exporter/core/logger.ts +137 -0
- package/exporter/core/objects.ts +37 -0
- package/exporter/core/print-logos.ts +21 -0
- package/exporter/index.ts +14 -56
- package/exporter/react/DynamicScript/index.tsx +33 -0
- package/exporter/react/{Favicon → GriddoFavicon}/index.tsx +3 -9
- package/exporter/react/GriddoIntegrations/index.tsx +17 -23
- package/exporter/react/GriddoIntegrations/utils.ts +24 -12
- package/exporter/react/GriddoOpenGraph/index.tsx +39 -0
- package/exporter/react/index.tsx +3 -9
- package/exporter/services/api.ts +306 -0
- package/exporter/services/auth.ts +8 -10
- package/exporter/services/domains.ts +23 -8
- package/exporter/services/manage-sites.ts +116 -0
- package/exporter/services/manage-store.ts +173 -0
- package/exporter/services/navigation.ts +12 -18
- package/exporter/{utils → services}/pages.ts +27 -92
- package/exporter/services/reference-fields.ts +14 -32
- package/exporter/services/render-artifacts.ts +44 -0
- package/exporter/services/render.ts +229 -0
- package/exporter/services/robots.ts +33 -61
- package/exporter/services/sitemaps.ts +129 -0
- package/exporter/services/sites.ts +40 -28
- package/exporter/services/store.ts +354 -321
- package/exporter/shared/context.ts +49 -0
- package/exporter/{constants → shared}/endpoints.ts +12 -11
- package/exporter/shared/envs.ts +58 -0
- package/exporter/{errors/errors-data.ts → shared/errors.ts} +24 -14
- package/exporter/shared/npm-modules/README.md +36 -0
- package/exporter/shared/npm-modules/brush.ts +34 -0
- package/exporter/shared/npm-modules/find-up-simple.ts +100 -0
- package/exporter/shared/npm-modules/pkg-dir.ts +17 -0
- package/exporter/shared/npm-modules/xml-parser.ts +57 -0
- package/exporter/{types → shared/types}/api.ts +40 -41
- package/exporter/{types → shared/types}/global.ts +17 -21
- package/exporter/{types → shared/types}/navigation.ts +3 -3
- package/exporter/{types → shared/types}/pages.ts +10 -11
- package/exporter/shared/types/render.ts +65 -0
- package/exporter/{types → shared/types}/sites.ts +18 -19
- package/exporter/shared/types.ts +15 -0
- package/exporter/ssg-adapters/gatsby/actions/clean.ts +26 -0
- package/exporter/ssg-adapters/gatsby/actions/close.ts +17 -0
- package/exporter/ssg-adapters/gatsby/actions/data.ts +22 -0
- package/exporter/ssg-adapters/gatsby/actions/healthCheck.ts +10 -0
- package/exporter/ssg-adapters/gatsby/actions/init.ts +12 -0
- package/exporter/ssg-adapters/gatsby/actions/logs.ts +10 -0
- package/exporter/ssg-adapters/gatsby/actions/meta.ts +13 -0
- package/exporter/ssg-adapters/gatsby/actions/prepare.ts +9 -0
- package/exporter/ssg-adapters/gatsby/actions/relocation.ts +15 -0
- package/exporter/ssg-adapters/gatsby/actions/restore.ts +21 -0
- package/exporter/ssg-adapters/gatsby/actions/ssg.ts +12 -0
- package/exporter/ssg-adapters/gatsby/actions/sync.ts +65 -0
- package/exporter/ssg-adapters/gatsby/index.ts +117 -0
- package/exporter/ssg-adapters/gatsby/shared/artifacts.ts +17 -0
- package/exporter/ssg-adapters/gatsby/shared/diff-assets.ts +128 -0
- package/exporter/ssg-adapters/gatsby/shared/extract-assets.ts +75 -0
- package/exporter/ssg-adapters/gatsby/shared/gatsby-build.ts +58 -0
- package/exporter/ssg-adapters/gatsby/shared/render-rollback.ts +33 -0
- package/exporter/ssg-adapters/gatsby/shared/sync-render.ts +298 -0
- package/exporter/ssg-adapters/gatsby/shared/types.ts +35 -0
- package/gatsby-browser.tsx +41 -58
- package/gatsby-config.ts +10 -17
- package/gatsby-node.ts +20 -79
- package/gatsby-ssr.tsx +2 -1
- package/package.json +41 -78
- package/plugins/gatsby-plugin-svgr-loader/gatsby-node.js +55 -0
- package/plugins/gatsby-plugin-svgr-loader/package.json +8 -0
- package/src/components/Head.tsx +28 -73
- package/src/components/template.tsx +6 -29
- package/src/gatsby-node-utils.ts +81 -2
- package/src/html.tsx +2 -11
- package/src/types.ts +3 -3
- package/tsconfig.commands.json +36 -0
- package/tsconfig.exporter.json +21 -0
- package/tsconfig.json +5 -3
- package/build/adapters/gatsby/index.d.ts +0 -4
- package/build/adapters/gatsby/utils.d.ts +0 -26
- package/build/artifacts/index.d.ts +0 -6
- package/build/constants/envs.d.ts +0 -37
- package/build/constants/index.d.ts +0 -57
- package/build/end-render.js +0 -74
- package/build/end-render.js.map +0 -7
- package/build/errors/index.d.ts +0 -15
- package/build/index.js.map +0 -7
- package/build/prepare-domains-render.js +0 -73
- package/build/prepare-domains-render.js.map +0 -7
- package/build/react/Favicon/index.d.ts +0 -5
- package/build/registers/api.d.ts +0 -9
- package/build/registers/gatsby.d.ts +0 -9
- package/build/registers/index.d.ts +0 -3
- package/build/reset-render.js +0 -74
- package/build/reset-render.js.map +0 -7
- package/build/services/register.d.ts +0 -36
- package/build/services/settings.d.ts +0 -4
- package/build/start-render.js +0 -100
- package/build/start-render.js.map +0 -7
- package/build/upload-search-content.js +0 -74
- package/build/upload-search-content.js.map +0 -7
- package/build/utils/alerts.d.ts +0 -3
- package/build/utils/cache.d.ts +0 -35
- package/build/utils/core-utils.d.ts +0 -107
- package/build/utils/create-build-data.d.ts +0 -8
- package/build/utils/domains.d.ts +0 -13
- package/build/utils/folders.d.ts +0 -53
- package/build/utils/loggin.d.ts +0 -51
- package/build/utils/render.d.ts +0 -13
- package/build/utils/searches.d.ts +0 -15
- package/build/utils/sites.d.ts +0 -31
- package/build/utils/store.d.ts +0 -81
- package/cx.config.d.ts +0 -5
- package/cx.config.js +0 -36
- package/exporter/adapters/gatsby/index.ts +0 -182
- package/exporter/adapters/gatsby/utils.ts +0 -186
- package/exporter/artifacts/README.md +0 -34
- package/exporter/artifacts/index.ts +0 -33
- package/exporter/commands/move-assets.ts +0 -11
- package/exporter/constants/envs.ts +0 -94
- package/exporter/constants/index.ts +0 -129
- package/exporter/errors/index.ts +0 -40
- package/exporter/registers/api.ts +0 -14
- package/exporter/registers/gatsby.ts +0 -14
- package/exporter/registers/index.ts +0 -4
- package/exporter/services/register.ts +0 -113
- package/exporter/services/settings.ts +0 -17
- package/exporter/utils/alerts.ts +0 -29
- package/exporter/utils/api.ts +0 -243
- package/exporter/utils/cache.ts +0 -142
- package/exporter/utils/core-utils.ts +0 -458
- package/exporter/utils/create-build-data.ts +0 -17
- package/exporter/utils/domains.ts +0 -39
- package/exporter/utils/folders.ts +0 -320
- package/exporter/utils/health-checks.ts +0 -64
- package/exporter/utils/loggin.ts +0 -184
- package/exporter/utils/render.ts +0 -71
- package/exporter/utils/searches.ts +0 -156
- package/exporter/utils/sites.ts +0 -312
- package/exporter/utils/store.ts +0 -314
- package/src/README.md +0 -7
- package/start-render.js +0 -7
- /package/build/commands/{move-assets.d.ts → prepare-assets-directory.d.ts} +0 -0
- /package/build/{utils → core}/images.d.ts +0 -0
- /package/build/{utils → core}/instance.d.ts +0 -0
- /package/build/react/{Favicon → GriddoFavicon}/utils.d.ts +0 -0
- /package/build/{constants → shared}/endpoints.d.ts +0 -0
- /package/build/{types → shared/types}/templates.d.ts +0 -0
- /package/exporter/react/{Favicon → GriddoFavicon}/utils.ts +0 -0
- /package/exporter/{types → shared/types}/templates.ts +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { Core, Fields } from "@griddo/core";
|
|
1
2
|
import type { EndSiteRenderBody } from "./api";
|
|
2
3
|
import type { Site } from "./sites";
|
|
3
|
-
import type { Core, Fields } from "@griddo/core";
|
|
4
4
|
interface Settings {
|
|
5
5
|
apiVersion?: string;
|
|
6
6
|
avoidCanonicalsOnSitemaps?: boolean;
|
|
@@ -49,36 +49,35 @@ type Domain = {
|
|
|
49
49
|
slug: string;
|
|
50
50
|
url: string;
|
|
51
51
|
};
|
|
52
|
-
type Domains =
|
|
52
|
+
type Domains = Domain[];
|
|
53
53
|
/** Describes the type of build process data object. */
|
|
54
54
|
type BuildProcessData = Record<string, EndSiteRenderBody>;
|
|
55
55
|
type Robot = {
|
|
56
56
|
path: string;
|
|
57
57
|
content: string;
|
|
58
58
|
};
|
|
59
|
-
type Robots =
|
|
59
|
+
type Robots = Robot[];
|
|
60
60
|
interface RenderInfo {
|
|
61
61
|
buildProcessData: BuildProcessData;
|
|
62
|
-
createdPages:
|
|
63
|
-
sitesToPublish:
|
|
62
|
+
createdPages: number[];
|
|
63
|
+
sitesToPublish: Site[];
|
|
64
64
|
}
|
|
65
|
-
type
|
|
66
|
-
type LifeCyclesNames = "Init" | "Prepare" | "Restore" | "Data" | "SSG" | "Relocation" | "Meta" | "
|
|
67
|
-
type PlaceholderPath = "__exports" | "__cache" | "__cx" | "__ssg" | "__components" | "__root" | "__exports_dist" | "
|
|
65
|
+
type LifeCycleAction = (...args: unknown[]) => void | Promise<void>;
|
|
66
|
+
type LifeCyclesNames = "Init" | "Prepare" | "Restore" | "Data" | "SSG" | "Relocation" | "Meta" | "Sync" | "Clean" | "Close" | "HealthCheck" | "Close";
|
|
67
|
+
type PlaceholderPath = "__exports" | "__cache" | "__cx" | "__ssg" | "__components" | "__root" | "__exports_dist" | "__sites";
|
|
68
68
|
interface CXConfig {
|
|
69
|
-
proDomain: string;
|
|
70
69
|
griddoVersion: string;
|
|
71
70
|
buildReportFileName: string;
|
|
72
|
-
paths: (domain?: string) => Record<PlaceholderPath, string>;
|
|
73
71
|
}
|
|
74
72
|
interface AIEmbeddingsResponse {
|
|
75
73
|
code: number;
|
|
76
74
|
message: string;
|
|
77
75
|
}
|
|
78
|
-
interface
|
|
79
|
-
disposables:
|
|
80
|
-
cacheables:
|
|
81
|
-
initials:
|
|
82
|
-
archivables:
|
|
76
|
+
interface RenderArtifacts {
|
|
77
|
+
disposables: string[];
|
|
78
|
+
cacheables: string[];
|
|
79
|
+
initials: string[];
|
|
80
|
+
archivables: string[];
|
|
81
|
+
restaurable: string[];
|
|
83
82
|
}
|
|
84
|
-
export type { AIEmbeddingsResponse,
|
|
83
|
+
export type { AIEmbeddingsResponse, RenderArtifacts, BuildProcessData, CXConfig, Domain, Domains, FetchDataProps, LifeCyclesNames, Petition, PlaceholderPath, PostSearchInfoProps, RenderInfo, Robot, Robots, Settings, LifeCycleAction, };
|
|
@@ -4,9 +4,9 @@ export type Header = {
|
|
|
4
4
|
id: number;
|
|
5
5
|
isDefault: boolean;
|
|
6
6
|
language: number;
|
|
7
|
-
navigationLanguages:
|
|
7
|
+
navigationLanguages: {
|
|
8
8
|
navigationId: number;
|
|
9
|
-
}
|
|
9
|
+
}[];
|
|
10
10
|
setAsDefault: boolean;
|
|
11
11
|
theme: null | string;
|
|
12
12
|
title: string;
|
|
@@ -18,11 +18,11 @@ export type Footer = {
|
|
|
18
18
|
id: number;
|
|
19
19
|
isDefault: boolean;
|
|
20
20
|
language: number;
|
|
21
|
-
navigationLanguages:
|
|
21
|
+
navigationLanguages: {
|
|
22
22
|
navigationId: number;
|
|
23
|
-
}
|
|
23
|
+
}[];
|
|
24
24
|
setAsDefault: boolean;
|
|
25
25
|
theme: null | string;
|
|
26
26
|
title: string;
|
|
27
|
-
type: "
|
|
27
|
+
type: "footer";
|
|
28
28
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import type { Core, Fields } from "@griddo/core";
|
|
1
2
|
import type { SocialsResponse } from "./api";
|
|
2
3
|
import type { Settings } from "./global";
|
|
3
4
|
import type { Site } from "./sites";
|
|
4
|
-
import type { Core, Fields } from "@griddo/core";
|
|
5
5
|
export type APIPageObject = Core.Page & {
|
|
6
6
|
id: number;
|
|
7
7
|
} & {
|
|
@@ -29,7 +29,7 @@ export type GriddoSinglePage = Core.Page & {
|
|
|
29
29
|
};
|
|
30
30
|
export type GriddoListPage = Core.Page & {
|
|
31
31
|
page: APIPageObject;
|
|
32
|
-
pages:
|
|
32
|
+
pages: Fields.QueriedDataItem[][];
|
|
33
33
|
isRoot?: boolean;
|
|
34
34
|
defaultLang?: Core.SiteLanguage;
|
|
35
35
|
template: {
|
|
@@ -39,7 +39,7 @@ export type GriddoListPage = Core.Page & {
|
|
|
39
39
|
activeSectionSlug: string;
|
|
40
40
|
activeSectionBase: string;
|
|
41
41
|
};
|
|
42
|
-
totalQueriedItems:
|
|
42
|
+
totalQueriedItems: Fields.QueriedDataItem[];
|
|
43
43
|
};
|
|
44
44
|
export type GriddoMultiPage = Core.Page & {
|
|
45
45
|
header: number | null;
|
|
@@ -54,7 +54,7 @@ export interface AdditionalInfo {
|
|
|
54
54
|
griddoVersion: string;
|
|
55
55
|
instance?: string;
|
|
56
56
|
publicBaseUrl: string;
|
|
57
|
-
siteLangs:
|
|
57
|
+
siteLangs: Core.SiteLanguage[];
|
|
58
58
|
siteMetadata: Site["siteMetadata"];
|
|
59
59
|
siteSlug: string;
|
|
60
60
|
socials: SocialsResponse;
|
|
@@ -71,13 +71,13 @@ export interface PageAdditionalInfo extends AdditionalInfo {
|
|
|
71
71
|
export type MultiPageElement = {
|
|
72
72
|
component: string;
|
|
73
73
|
title: string | Required<Fields.Heading>;
|
|
74
|
-
elements:
|
|
75
|
-
componentModules:
|
|
74
|
+
elements: Record<string, unknown>[];
|
|
75
|
+
componentModules: Record<string, unknown>[];
|
|
76
76
|
sectionSlug: string;
|
|
77
77
|
metaTitle: string;
|
|
78
78
|
metaDescription: string;
|
|
79
79
|
};
|
|
80
|
-
export type MultiPageElements =
|
|
80
|
+
export type MultiPageElements = MultiPageElement[];
|
|
81
81
|
/**
|
|
82
82
|
* Gatsby page object format.
|
|
83
83
|
*/
|
|
@@ -119,7 +119,7 @@ export type GriddoPageObject = {
|
|
|
119
119
|
siteMetadata: Site["siteMetadata"];
|
|
120
120
|
theme: string;
|
|
121
121
|
title: string;
|
|
122
|
-
siteLangs:
|
|
122
|
+
siteLangs: Core.SiteLanguage[];
|
|
123
123
|
siteOptions: AdditionalInfo["siteOptions"];
|
|
124
124
|
siteScript: string;
|
|
125
125
|
socials: SocialsResponse;
|
|
@@ -130,7 +130,7 @@ export interface Dimensions {
|
|
|
130
130
|
values: Record<string, string> | null;
|
|
131
131
|
contentSelect?: "group" | "individual" | null;
|
|
132
132
|
groupSelect?: string;
|
|
133
|
-
dimensionsSelect?:
|
|
133
|
+
dimensionsSelect?: string[];
|
|
134
134
|
}
|
|
135
135
|
export interface GatsbyPageTemplateProps extends Omit<GriddoPageObject, "context"> {
|
|
136
136
|
pageContext: GriddoPageObject["context"] & {
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { RenderInfo } from "./global";
|
|
2
|
+
declare const RENDER_MODE: {
|
|
3
|
+
readonly FROM_SCRATCH: "FROM_SCRATCH";
|
|
4
|
+
readonly INCREMENTAL: "INCREMENTAL";
|
|
5
|
+
readonly IDLE: "IDLE";
|
|
6
|
+
readonly ERROR: "ERROR";
|
|
7
|
+
readonly COMPLETED: "COMPLETED";
|
|
8
|
+
};
|
|
9
|
+
type RenderMode = (typeof RENDER_MODE)[keyof typeof RENDER_MODE];
|
|
10
|
+
export interface RenderModeTuple {
|
|
11
|
+
renderMode: RenderMode;
|
|
12
|
+
reason?: string;
|
|
13
|
+
}
|
|
14
|
+
type DomainLike = string;
|
|
15
|
+
type RenderDB = {
|
|
16
|
+
griddoVersion: string;
|
|
17
|
+
buildReportFileName: string;
|
|
18
|
+
sortedDomains: DomainLike[];
|
|
19
|
+
needsRollbackOnError: boolean;
|
|
20
|
+
currentRenderingDomain: string | null;
|
|
21
|
+
commitHash: string;
|
|
22
|
+
commitMessage: string;
|
|
23
|
+
paths: {
|
|
24
|
+
root: string;
|
|
25
|
+
cx: string;
|
|
26
|
+
ssg: string;
|
|
27
|
+
cxCache: string;
|
|
28
|
+
components: string;
|
|
29
|
+
exportsDir: string;
|
|
30
|
+
exportsDirBackup: string;
|
|
31
|
+
};
|
|
32
|
+
domains: {
|
|
33
|
+
[key: DomainLike]: {
|
|
34
|
+
renderMode?: RenderMode;
|
|
35
|
+
shouldBeRendered?: boolean;
|
|
36
|
+
isRendering?: boolean;
|
|
37
|
+
renderInfo?: RenderInfo;
|
|
38
|
+
renderModeReason?: string;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
interface Report {
|
|
43
|
+
authControl: {
|
|
44
|
+
Authorization: string;
|
|
45
|
+
"Cache-Control": string;
|
|
46
|
+
lang?: string | undefined;
|
|
47
|
+
} | undefined;
|
|
48
|
+
sites: {
|
|
49
|
+
siteId: number;
|
|
50
|
+
publishHashes: string[];
|
|
51
|
+
siteHash: string | null;
|
|
52
|
+
unpublishHashes: string[];
|
|
53
|
+
publishPagesIds: number[];
|
|
54
|
+
}[];
|
|
55
|
+
}
|
|
56
|
+
export { RENDER_MODE, type RenderDB, type RenderMode, type Report };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { Core } from "@griddo/core";
|
|
1
2
|
import type { SocialsResponse } from "./api";
|
|
2
3
|
import type { Footer, Header } from "./navigation";
|
|
3
|
-
import type { Core } from "@griddo/core";
|
|
4
4
|
/**
|
|
5
5
|
* Describes a Griddo site object from API.
|
|
6
6
|
* This takes some type props from Core.Site.
|
|
@@ -8,12 +8,12 @@ import type { Core } from "@griddo/core";
|
|
|
8
8
|
export interface Site extends Required<Pick<Core.Site, "bigAvatar" | "favicon" | "home" | "id" | "isPublished" | "timezone" | "thumbnail" | "theme" | "socials" | "slug" | "smallAvatar" | "modified" | "name" | "siteMetadata">> {
|
|
9
9
|
author: string;
|
|
10
10
|
deleted: number;
|
|
11
|
-
domains:
|
|
12
|
-
footers:
|
|
11
|
+
domains: Record<string, string>[];
|
|
12
|
+
footers: Footer[];
|
|
13
13
|
hash: string | null;
|
|
14
|
-
headers:
|
|
15
|
-
languages:
|
|
16
|
-
languageSites:
|
|
14
|
+
headers: Header[];
|
|
15
|
+
languages: Core.SiteLanguage[];
|
|
16
|
+
languageSites: number[];
|
|
17
17
|
navigationModules: {
|
|
18
18
|
header?: string;
|
|
19
19
|
footer?: string;
|
|
@@ -24,9 +24,8 @@ export interface Site extends Required<Pick<Core.Site, "bigAvatar" | "favicon" |
|
|
|
24
24
|
* `select/site/33/pages` -> [{id,label}, {id,label}, {id,label}] // array of published, pending, unpublished... page objects
|
|
25
25
|
* `select/site/33/pages?liveStatus=active` -> // array of publishedpage objects
|
|
26
26
|
*/
|
|
27
|
-
pages:
|
|
28
|
-
onlinePages:
|
|
29
|
-
changedPages: Array<number>;
|
|
27
|
+
pages: number[];
|
|
28
|
+
onlinePages: number[];
|
|
30
29
|
published: string;
|
|
31
30
|
rendering: boolean;
|
|
32
31
|
renderingHours: number;
|
|
@@ -35,22 +34,22 @@ export interface Site extends Required<Pick<Core.Site, "bigAvatar" | "favicon" |
|
|
|
35
34
|
smallAvatar: string;
|
|
36
35
|
updated: boolean;
|
|
37
36
|
pagesStatus: {
|
|
38
|
-
active:
|
|
39
|
-
uploadPending:
|
|
40
|
-
offlinePending:
|
|
41
|
-
offline:
|
|
42
|
-
deleted:
|
|
37
|
+
active: number[];
|
|
38
|
+
uploadPending: number[];
|
|
39
|
+
offlinePending: number[];
|
|
40
|
+
offline: number[];
|
|
41
|
+
deleted: number[];
|
|
43
42
|
};
|
|
44
43
|
}
|
|
45
44
|
export interface SiteData {
|
|
46
45
|
siteInfo: Site;
|
|
47
|
-
validPagesIds:
|
|
46
|
+
validPagesIds: number[];
|
|
48
47
|
siteHash: string | null;
|
|
49
|
-
unpublishHashes:
|
|
50
|
-
siteLangs:
|
|
48
|
+
unpublishHashes: string[];
|
|
49
|
+
siteLangs: Core.SiteLanguage[];
|
|
51
50
|
defaultLang: Core.SiteLanguage | undefined;
|
|
52
|
-
headers:
|
|
53
|
-
footers:
|
|
51
|
+
headers: Header[];
|
|
52
|
+
footers: Footer[];
|
|
54
53
|
socials: SocialsResponse;
|
|
55
54
|
}
|
|
56
55
|
export type SiteHash = string | null;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Core } from "@griddo/core";
|
|
2
|
+
import type { Dimensions, GriddoPageObject } from "@griddo/cx";
|
|
3
|
+
import type { HeadProps } from "gatsby";
|
|
4
|
+
interface CustomHeadProps extends HeadProps {
|
|
5
|
+
pageContext: GriddoPageObject["context"] & {
|
|
6
|
+
page: Core.Page & {
|
|
7
|
+
defaultLang: {
|
|
8
|
+
id: number;
|
|
9
|
+
};
|
|
10
|
+
dimensions: Dimensions;
|
|
11
|
+
disableHrefLangs: number[];
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export type { CustomHeadProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes a complete Gatsby render process for a given domain.
|
|
3
|
+
*
|
|
4
|
+
* The render process consists of multiple lifecycle steps that handle cleaning,
|
|
5
|
+
* preparing, building and syncing the site. It can run in two modes:
|
|
6
|
+
* - FROM_SCRATCH: Performs a complete rebuild of the domains sites.
|
|
7
|
+
* - INCREMENTAL: Only rebuilds changed pages while preserving the rest.
|
|
8
|
+
*/
|
|
9
|
+
export declare function gatsbyRenderDomain(domain: string): Promise<void>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compara los assets clave entre dos directorios de build de Gatsby.
|
|
3
|
+
* Solo compara los archivos definidos en KEY_ASSET_PATTERNS.
|
|
4
|
+
*
|
|
5
|
+
* @param dir1 Ruta al primer directorio (ej. el de producción)
|
|
6
|
+
* @param dir2 Ruta al segundo directorio (ej. el del nuevo build)
|
|
7
|
+
* @returns `true` si hay diferencias en los assets clave, `false` si son idénticos.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getAssetsDiffBetweenRenders(dir1: string, dir2: string): Promise<boolean>;
|
|
10
|
+
/**
|
|
11
|
+
* Actualiza el webpackCompilationHash en un único fichero HTML.
|
|
12
|
+
* @param filePath Ruta al fichero HTML.
|
|
13
|
+
* @param newHash El nuevo hash a insertar.
|
|
14
|
+
*/
|
|
15
|
+
export declare function patchHtmlFile(filePath: string, newHash: string): Promise<void>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update the Griddo's `/dist` dir with the contents from `public` dir only
|
|
3
|
+
* with files of type: js, json and css.
|
|
4
|
+
* TODO: Explicar que el static se copia a assets porque el js va en el subdominio de assets.
|
|
5
|
+
*/
|
|
6
|
+
declare function extractAssetsFromDist(domain: string): Promise<void>;
|
|
7
|
+
export { extractAssetsFromDist };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spawn a new node process `gatsby build`
|
|
3
|
+
* @note This proccess can not access to the custom Griddo `process.env` so it
|
|
4
|
+
* needs variables passed to it via the `env` prop.
|
|
5
|
+
*/
|
|
6
|
+
declare function gatsbyBuild(assetPrefixWithDomain: string): Promise<void>;
|
|
7
|
+
export { gatsbyBuild };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enables the rollback-on-error feature for subsequent render lifecycles.
|
|
3
|
+
* When this feature is active, if an error occurs during a render process,
|
|
4
|
+
* the application will automatically restore the 'exports' directory to its
|
|
5
|
+
* state before the render began. This function updates the configuration
|
|
6
|
+
* in the database to reflect this change.
|
|
7
|
+
* @async
|
|
8
|
+
*/
|
|
9
|
+
declare function enableRollbackOnError(): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Disables the rollback-on-error feature for subsequent render lifecycles.
|
|
12
|
+
* When this feature is inactive, the application will not restore the
|
|
13
|
+
* 'exports' directory if a render process fails. This is the default behavior.
|
|
14
|
+
* This function updates the configuration in the database.
|
|
15
|
+
* @async
|
|
16
|
+
*/
|
|
17
|
+
declare function disableRollbackOnError(): Promise<void>;
|
|
18
|
+
export { disableRollbackOnError, enableRollbackOnError };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
interface SyncRenderConfig {
|
|
2
|
+
src: string;
|
|
3
|
+
dst: string;
|
|
4
|
+
pagesToCreate: number[];
|
|
5
|
+
pagesToDelete: number[];
|
|
6
|
+
artifactsToCopyToExports: string[];
|
|
7
|
+
}
|
|
8
|
+
declare class SyncRender {
|
|
9
|
+
private bundleDir;
|
|
10
|
+
private currentRenderDir;
|
|
11
|
+
private pagesToCreate;
|
|
12
|
+
private pagesToDelete;
|
|
13
|
+
private assetArtifacts;
|
|
14
|
+
private state;
|
|
15
|
+
constructor(config: SyncRenderConfig);
|
|
16
|
+
execute(): Promise<void>;
|
|
17
|
+
private assertAssetsAreValid;
|
|
18
|
+
private setPagesToDelete;
|
|
19
|
+
private setPagesToAdd;
|
|
20
|
+
private sync;
|
|
21
|
+
private restoreWebpackCompilationHash;
|
|
22
|
+
private copyAssetArtifacts;
|
|
23
|
+
private copySitemaps;
|
|
24
|
+
private scanPages;
|
|
25
|
+
}
|
|
26
|
+
export { SyncRender };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
interface SSG {
|
|
2
|
+
assetPrefix: string;
|
|
3
|
+
ssgArtifacts: {
|
|
4
|
+
disposables: string[];
|
|
5
|
+
cacheables: string[];
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
interface GatsbyPageData {
|
|
9
|
+
path: string;
|
|
10
|
+
result: {
|
|
11
|
+
pageContext: {
|
|
12
|
+
id: number;
|
|
13
|
+
title: string;
|
|
14
|
+
path: string;
|
|
15
|
+
openGraph: any;
|
|
16
|
+
pageMetadata: any;
|
|
17
|
+
page: {
|
|
18
|
+
site: number;
|
|
19
|
+
id: number;
|
|
20
|
+
fullPath: {
|
|
21
|
+
compose: string;
|
|
22
|
+
};
|
|
23
|
+
language: number;
|
|
24
|
+
title: string;
|
|
25
|
+
fullUrl: string;
|
|
26
|
+
templateId: string;
|
|
27
|
+
template: {
|
|
28
|
+
templateType: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export type { GatsbyPageData, SSG };
|