@webiny/website-builder-sdk 0.0.0-unstable.eb196ccd2f → 0.0.0-unstable.eb81deee7e
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/BindingsApi.js +29 -36
- package/BindingsApi.js.map +1 -1
- package/BindingsProcessor.js +34 -43
- package/BindingsProcessor.js.map +1 -1
- package/BindingsProcessor.test.js +82 -77
- package/BindingsProcessor.test.js.map +1 -1
- package/BindingsResolver.d.ts +5 -2
- package/BindingsResolver.js +99 -122
- package/BindingsResolver.js.map +1 -1
- package/BindingsResolver.test.js +399 -362
- package/BindingsResolver.test.js.map +1 -1
- package/ComponentInputTraverser.js +32 -49
- package/ComponentInputTraverser.js.map +1 -1
- package/ComponentManifestToAstConverter.js +20 -21
- package/ComponentManifestToAstConverter.js.map +1 -1
- package/ComponentRegistry.d.ts +9 -0
- package/ComponentRegistry.js +38 -22
- package/ComponentRegistry.js.map +1 -1
- package/ComponentResolver.d.ts +3 -2
- package/ComponentResolver.js +39 -29
- package/ComponentResolver.js.map +1 -1
- package/ComponentResolver.test.d.ts +1 -0
- package/ComponentResolver.test.js +81 -0
- package/ComponentResolver.test.js.map +1 -0
- package/ConstraintEvaluator.d.ts +36 -0
- package/ConstraintEvaluator.js +288 -0
- package/ConstraintEvaluator.js.map +1 -0
- package/ConstraintEvaluator.test.d.ts +1 -0
- package/ConstraintEvaluator.test.js +1634 -0
- package/ConstraintEvaluator.test.js.map +1 -0
- package/ContentSdk.d.ts +17 -3
- package/ContentSdk.js +113 -90
- package/ContentSdk.js.map +1 -1
- package/DocumentStore.d.ts +1 -1
- package/DocumentStore.js +47 -59
- package/DocumentStore.js.map +1 -1
- package/DocumentStoreManager.js +17 -16
- package/DocumentStoreManager.js.map +1 -1
- package/EditingSdk.d.ts +2 -2
- package/EditingSdk.js +92 -124
- package/EditingSdk.js.map +1 -1
- package/ElementFactory.d.ts +2 -3
- package/ElementFactory.js +164 -163
- package/ElementFactory.js.map +1 -1
- package/ElementFactory.objectListDefaults.test.d.ts +1 -0
- package/ElementFactory.objectListDefaults.test.js +423 -0
- package/ElementFactory.objectListDefaults.test.js.map +1 -0
- package/ElementFactory.test.d.ts +1 -0
- package/ElementFactory.test.js +353 -0
- package/ElementFactory.test.js.map +1 -0
- package/Environment.js +18 -19
- package/Environment.js.map +1 -1
- package/FunctionConverter.js +8 -7
- package/FunctionConverter.js.map +1 -1
- package/HashObject.js +11 -12
- package/HashObject.js.map +1 -1
- package/HotkeyManager.js +41 -48
- package/HotkeyManager.js.map +1 -1
- package/IBindingsUpdater.js +0 -3
- package/IRedirects.js +0 -3
- package/InheritanceProcessor.d.ts +2 -2
- package/InheritanceProcessor.js +99 -139
- package/InheritanceProcessor.js.map +1 -1
- package/InheritanceProcessor.test.js +178 -178
- package/InheritanceProcessor.test.js.map +1 -1
- package/InheritedValueResolver.d.ts +18 -1
- package/InheritedValueResolver.js +18 -20
- package/InheritedValueResolver.js.map +1 -1
- package/InputBindingsProcessor.d.ts +23 -2
- package/InputBindingsProcessor.js +200 -289
- package/InputBindingsProcessor.js.map +1 -1
- package/InputBindingsProcessorTokens.test.d.ts +1 -0
- package/InputBindingsProcessorTokens.test.js +400 -0
- package/InputBindingsProcessorTokens.test.js.map +1 -0
- package/InputsBindingsProcessor.test.js +334 -313
- package/InputsBindingsProcessor.test.js.map +1 -1
- package/InputsUpdater.d.ts +1 -1
- package/InputsUpdater.js +23 -26
- package/InputsUpdater.js.map +1 -1
- package/LiveSdk.d.ts +2 -2
- package/LiveSdk.js +12 -13
- package/LiveSdk.js.map +1 -1
- package/Logger.d.ts +2 -1
- package/Logger.js +9 -8
- package/Logger.js.map +1 -1
- package/MouseTracker.js +77 -83
- package/MouseTracker.js.map +1 -1
- package/NullSdk.d.ts +4 -3
- package/NullSdk.js +22 -14
- package/NullSdk.js.map +1 -1
- package/PreviewDocument.d.ts +1 -0
- package/PreviewDocument.js +30 -30
- package/PreviewDocument.js.map +1 -1
- package/PreviewSdk.d.ts +4 -3
- package/PreviewSdk.js +19 -17
- package/PreviewSdk.js.map +1 -1
- package/PreviewViewport.d.ts +0 -1
- package/PreviewViewport.js +50 -82
- package/PreviewViewport.js.map +1 -1
- package/README.md +10 -2
- package/ResizeObserver.js +24 -31
- package/ResizeObserver.js.map +1 -1
- package/StylesBindingsProcessor.d.ts +12 -2
- package/StylesBindingsProcessor.js +62 -79
- package/StylesBindingsProcessor.js.map +1 -1
- package/StylesUpdater.d.ts +1 -1
- package/StylesUpdater.js +20 -25
- package/StylesUpdater.js.map +1 -1
- package/Theme.js +30 -32
- package/Theme.js.map +1 -1
- package/ViewportManager.d.ts +2 -0
- package/ViewportManager.js +89 -97
- package/ViewportManager.js.map +1 -1
- package/assertBindingShapes.d.ts +31 -0
- package/assertBindingShapes.js +64 -0
- package/assertBindingShapes.js.map +1 -0
- package/assertBindingShapes.test.d.ts +1 -0
- package/assertBindingShapes.test.js +131 -0
- package/assertBindingShapes.test.js.map +1 -0
- package/asset/deliveryUrl.d.ts +41 -0
- package/asset/deliveryUrl.js +34 -0
- package/asset/deliveryUrl.js.map +1 -0
- package/asset/deliveryUrl.test.d.ts +1 -0
- package/asset/deliveryUrl.test.js +127 -0
- package/asset/deliveryUrl.test.js.map +1 -0
- package/asset/geometry.d.ts +7 -0
- package/asset/geometry.js +10 -0
- package/asset/geometry.js.map +1 -0
- package/asset/imageSrcSet.d.ts +63 -0
- package/asset/imageSrcSet.js +98 -0
- package/asset/imageSrcSet.js.map +1 -0
- package/asset/imageSrcSet.test.d.ts +1 -0
- package/asset/imageSrcSet.test.js +103 -0
- package/asset/imageSrcSet.test.js.map +1 -0
- package/asset/index.d.ts +5 -0
- package/asset/index.js +5 -0
- package/asset/normalize.d.ts +24 -0
- package/asset/normalize.js +106 -0
- package/asset/normalize.js.map +1 -0
- package/asset/normalize.test.d.ts +1 -0
- package/asset/normalize.test.js +263 -0
- package/asset/normalize.test.js.map +1 -0
- package/asset/types.d.ts +2 -0
- package/asset/types.js +0 -0
- package/constants.d.ts +1 -0
- package/constants.js +7 -5
- package/constants.js.map +1 -1
- package/contentEntry/ContentEntryBindingsResolver.d.ts +30 -0
- package/contentEntry/ContentEntryBindingsResolver.js +45 -0
- package/contentEntry/ContentEntryBindingsResolver.js.map +1 -0
- package/contentEntry/ContentEntryCache.d.ts +46 -0
- package/contentEntry/ContentEntryCache.js +50 -0
- package/contentEntry/ContentEntryCache.js.map +1 -0
- package/contentEntry/resolveContentEntry.d.ts +74 -0
- package/contentEntry/resolveContentEntry.js +53 -0
- package/contentEntry/resolveContentEntry.js.map +1 -0
- package/contentEntry/resolveContentEntry.test.d.ts +1 -0
- package/contentEntry/resolveContentEntry.test.js +213 -0
- package/contentEntry/resolveContentEntry.test.js.map +1 -0
- package/createComponent.d.ts +5 -0
- package/createComponent.js +32 -0
- package/createComponent.js.map +1 -0
- package/createElement.js +5 -6
- package/createElement.js.map +1 -1
- package/createInput.d.ts +132 -16
- package/createInput.js +92 -111
- package/createInput.js.map +1 -1
- package/createTheme.js +2 -3
- package/createTheme.js.map +1 -1
- package/dataProviders/ApiClient.d.ts +10 -5
- package/dataProviders/ApiClient.js +40 -49
- package/dataProviders/ApiClient.js.map +1 -1
- package/dataProviders/DefaultDataProvider.d.ts +7 -3
- package/dataProviders/DefaultDataProvider.js +91 -45
- package/dataProviders/DefaultDataProvider.js.map +1 -1
- package/dataProviders/GET_EXPERIMENT_PAUSED.d.ts +1 -0
- package/dataProviders/GET_EXPERIMENT_PAUSED.js +17 -0
- package/dataProviders/GET_EXPERIMENT_PAUSED.js.map +1 -0
- package/dataProviders/GET_PAGE_BY_ID.d.ts +1 -1
- package/dataProviders/GET_PAGE_BY_ID.js +4 -1
- package/dataProviders/GET_PAGE_BY_ID.js.map +1 -1
- package/dataProviders/GET_PAGE_BY_PATH.d.ts +1 -1
- package/dataProviders/GET_PAGE_BY_PATH.js +4 -1
- package/dataProviders/GET_PAGE_BY_PATH.js.map +1 -1
- package/dataProviders/GET_PAGE_EXPERIMENT.d.ts +1 -0
- package/dataProviders/GET_PAGE_EXPERIMENT.js +32 -0
- package/dataProviders/GET_PAGE_EXPERIMENT.js.map +1 -0
- package/dataProviders/GET_VARIANT_CONTENT.d.ts +1 -0
- package/dataProviders/GET_VARIANT_CONTENT.js +24 -0
- package/dataProviders/GET_VARIANT_CONTENT.js.map +1 -0
- package/dataProviders/LIST_PUBLISHED_PAGES.d.ts +1 -1
- package/dataProviders/LIST_PUBLISHED_PAGES.js +17 -5
- package/dataProviders/LIST_PUBLISHED_PAGES.js.map +1 -1
- package/dataProviders/NullDataProvider.d.ts +16 -4
- package/dataProviders/NullDataProvider.js +30 -13
- package/dataProviders/NullDataProvider.js.map +1 -1
- package/dataProviders/RedirectsProvider.js +24 -27
- package/dataProviders/RedirectsProvider.js.map +1 -1
- package/defaultBreakpoints.js +43 -22
- package/defaultBreakpoints.js.map +1 -1
- package/documentOperations/$addElementReferenceToParent.d.ts +1 -1
- package/documentOperations/$addElementReferenceToParent.js +30 -26
- package/documentOperations/$addElementReferenceToParent.js.map +1 -1
- package/documentOperations/AddElement.js +8 -7
- package/documentOperations/AddElement.js.map +1 -1
- package/documentOperations/AddToParent.d.ts +2 -2
- package/documentOperations/AddToParent.js +14 -13
- package/documentOperations/AddToParent.js.map +1 -1
- package/documentOperations/IDocumentOperation.js +0 -3
- package/documentOperations/RemoveElement.js +10 -7
- package/documentOperations/RemoveElement.js.map +1 -1
- package/documentOperations/SetGlobalInputBinding.js +23 -22
- package/documentOperations/SetGlobalInputBinding.js.map +1 -1
- package/documentOperations/SetGlobalStyleBinding.js +23 -23
- package/documentOperations/SetGlobalStyleBinding.js.map +1 -1
- package/documentOperations/SetInputBindingOverride.js +30 -29
- package/documentOperations/SetInputBindingOverride.js.map +1 -1
- package/documentOperations/SetStyleBindingOverride.js +30 -31
- package/documentOperations/SetStyleBindingOverride.js.map +1 -1
- package/documentOperations/index.js +9 -8
- package/documentOperations/index.js.map +1 -1
- package/experiments/PostHogAnalyticsProvider.d.ts +31 -0
- package/experiments/PostHogAnalyticsProvider.js +28 -0
- package/experiments/PostHogAnalyticsProvider.js.map +1 -0
- package/experiments/analyticsProvider.d.ts +4 -0
- package/experiments/analyticsProvider.js +11 -0
- package/experiments/analyticsProvider.js.map +1 -0
- package/experiments/bucketing.d.ts +27 -0
- package/experiments/bucketing.js +91 -0
- package/experiments/bucketing.js.map +1 -0
- package/experiments/bucketing.test.d.ts +1 -0
- package/experiments/bucketing.test.js +183 -0
- package/experiments/bucketing.test.js.map +1 -0
- package/experiments/index.d.ts +5 -0
- package/experiments/index.js +5 -0
- package/experiments/render.d.ts +79 -0
- package/experiments/render.js +149 -0
- package/experiments/render.js.map +1 -0
- package/experiments/types.d.ts +108 -0
- package/experiments/types.js +4 -0
- package/experiments/types.js.map +1 -0
- package/findMatchingAstNode.js +11 -13
- package/findMatchingAstNode.js.map +1 -1
- package/generateElementId.d.ts +1 -1
- package/generateElementId.js +2 -2
- package/generateElementId.js.map +1 -1
- package/headersProvider.js +4 -3
- package/headersProvider.js.map +1 -1
- package/image/geometry.d.ts +54 -0
- package/image/geometry.js +112 -0
- package/image/geometry.js.map +1 -0
- package/image/geometry.test.d.ts +1 -0
- package/image/geometry.test.js +190 -0
- package/image/geometry.test.js.map +1 -0
- package/image/index.d.ts +3 -0
- package/image/index.js +3 -0
- package/image/presets.d.ts +6 -0
- package/image/presets.js +20 -0
- package/image/presets.js.map +1 -0
- package/image/types.d.ts +10 -0
- package/image/types.js +0 -0
- package/index.d.ts +12 -1
- package/index.js +11 -3
- package/jsonPatch.d.ts +1 -1
- package/jsonPatch.js +5 -9
- package/jsonPatch.js.map +1 -1
- package/messages.js +12 -11
- package/messages.js.map +1 -1
- package/messenger/MessageOrigin.js +12 -11
- package/messenger/MessageOrigin.js.map +1 -1
- package/messenger/Messenger.js +59 -70
- package/messenger/Messenger.js.map +1 -1
- package/messenger/index.js +0 -2
- package/package.json +19 -22
- package/registerComponentGroup.js +5 -6
- package/registerComponentGroup.js.map +1 -1
- package/tokenBinding.d.ts +26 -0
- package/tokenBinding.js +15 -0
- package/tokenBinding.js.map +1 -0
- package/tokenBinding.test.d.ts +1 -0
- package/tokenBinding.test.js +165 -0
- package/tokenBinding.test.js.map +1 -0
- package/types/ShorthandCssProperties.js +0 -3
- package/types/WebsiteBuilderTheme.d.ts +54 -45
- package/types/WebsiteBuilderTheme.js +0 -3
- package/types.d.ts +294 -13
- package/types.js +0 -3
- package/IBindingsUpdater.js.map +0 -1
- package/IRedirects.js.map +0 -1
- package/documentOperations/IDocumentOperation.js.map +0 -1
- package/index.js.map +0 -1
- package/lexical/createDefaultLexicalTheme.d.ts +0 -2
- package/lexical/createDefaultLexicalTheme.js +0 -84
- package/lexical/createDefaultLexicalTheme.js.map +0 -1
- package/lexical/createLexicalTheme.d.ts +0 -2
- package/lexical/createLexicalTheme.js +0 -7
- package/lexical/createLexicalTheme.js.map +0 -1
- package/lexical/deepMerge.d.ts +0 -1
- package/lexical/deepMerge.js +0 -23
- package/lexical/deepMerge.js.map +0 -1
- package/messenger/index.js.map +0 -1
- package/types/LexicalEditorTheme.d.ts +0 -2
- package/types/LexicalEditorTheme.js +0 -3
- package/types/LexicalEditorTheme.js.map +0 -1
- package/types/ShorthandCssProperties.js.map +0 -1
- package/types/WebsiteBuilderTheme.js.map +0 -1
- package/types.js.map +0 -1
|
@@ -1,52 +1,98 @@
|
|
|
1
1
|
import { GET_PAGE_BY_PATH } from "./GET_PAGE_BY_PATH.js";
|
|
2
2
|
import { GET_PAGE_BY_ID } from "./GET_PAGE_BY_ID.js";
|
|
3
3
|
import { LIST_PUBLISHED_PAGES } from "./LIST_PUBLISHED_PAGES.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
4
|
+
import { GET_PAGE_EXPERIMENT } from "./GET_PAGE_EXPERIMENT.js";
|
|
5
|
+
import { GET_VARIANT_CONTENT } from "./GET_VARIANT_CONTENT.js";
|
|
6
|
+
import { GET_EXPERIMENT_PAUSED } from "./GET_EXPERIMENT_PAUSED.js";
|
|
7
|
+
const ignoreActions = [
|
|
8
|
+
".well-known",
|
|
9
|
+
"_next"
|
|
10
|
+
];
|
|
11
|
+
class DefaultDataProvider {
|
|
12
|
+
constructor(config){
|
|
13
|
+
this.config = config;
|
|
14
|
+
}
|
|
15
|
+
async getPageByPath(path) {
|
|
16
|
+
const result = await this.config.apiClient.query({
|
|
17
|
+
query: GET_PAGE_BY_PATH,
|
|
18
|
+
variables: {
|
|
19
|
+
path
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
this.checkForErrors(`getPageByPath:${path}`, result.websiteBuilder.getPageByPath);
|
|
23
|
+
return result.websiteBuilder.getPageByPath.data;
|
|
24
|
+
}
|
|
25
|
+
async getPageById(id) {
|
|
26
|
+
const result = await this.config.apiClient.query({
|
|
27
|
+
query: GET_PAGE_BY_ID,
|
|
28
|
+
variables: {
|
|
29
|
+
id
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
this.checkForErrors("getPageById", result.websiteBuilder.getPageById);
|
|
33
|
+
return result.websiteBuilder.getPageById.data;
|
|
34
|
+
}
|
|
35
|
+
async listPages(options) {
|
|
36
|
+
const { where, ...rest } = options ?? {};
|
|
37
|
+
const result = await this.config.apiClient.query({
|
|
38
|
+
query: LIST_PUBLISHED_PAGES,
|
|
39
|
+
variables: {
|
|
40
|
+
where: {
|
|
41
|
+
...where,
|
|
42
|
+
published: true
|
|
43
|
+
},
|
|
44
|
+
...rest
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
this.checkForErrors("listPages", result.websiteBuilder.listPages);
|
|
48
|
+
return {
|
|
49
|
+
data: result.websiteBuilder.listPages.data ?? [],
|
|
50
|
+
meta: result.websiteBuilder.listPages.meta ?? {
|
|
51
|
+
hasMoreItems: false,
|
|
52
|
+
totalCount: 0,
|
|
53
|
+
cursor: null
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
async getPageExperiment(path) {
|
|
58
|
+
const result = await this.config.apiClient.query({
|
|
59
|
+
query: GET_PAGE_EXPERIMENT,
|
|
60
|
+
variables: {
|
|
61
|
+
path
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
this.checkForErrors(`getPageExperiment:${path}`, result.websiteBuilder.getPageExperiment);
|
|
65
|
+
return result.websiteBuilder.getPageExperiment.data ?? null;
|
|
66
|
+
}
|
|
67
|
+
async getVariantContent(variantId) {
|
|
68
|
+
const result = await this.config.apiClient.query({
|
|
69
|
+
query: GET_VARIANT_CONTENT,
|
|
70
|
+
variables: {
|
|
71
|
+
id: variantId
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
this.checkForErrors(`getVariantContent:${variantId}`, result.websiteBuilder.getVariantContent);
|
|
75
|
+
return result.websiteBuilder.getVariantContent.data ?? null;
|
|
76
|
+
}
|
|
77
|
+
async getExperimentPaused(experimentId) {
|
|
78
|
+
const result = await this.config.apiClient.query({
|
|
79
|
+
query: GET_EXPERIMENT_PAUSED,
|
|
80
|
+
variables: {
|
|
81
|
+
experimentId
|
|
82
|
+
}
|
|
83
|
+
}, {
|
|
84
|
+
noStore: true
|
|
85
|
+
});
|
|
86
|
+
this.checkForErrors(`getExperimentPaused:${experimentId}`, result.websiteBuilder.getExperimentPaused);
|
|
87
|
+
return true === result.websiteBuilder.getExperimentPaused.data;
|
|
88
|
+
}
|
|
89
|
+
checkForErrors(action, data) {
|
|
90
|
+
if (data.error) {
|
|
91
|
+
if (ignoreActions.some((item)=>action.includes(item))) return;
|
|
92
|
+
console.error(`Could not execute "${action}". Reason: ${data.error.message}`);
|
|
35
93
|
}
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
this.checkForErrors("listPages", result.websiteBuilder.listPages);
|
|
39
|
-
return result.websiteBuilder.listPages.data ?? [];
|
|
40
|
-
}
|
|
41
|
-
checkForErrors(action, data) {
|
|
42
|
-
if (data.error) {
|
|
43
|
-
// TODO: investigate how these ignored actions make their way to the SDK.
|
|
44
|
-
if (ignoreActions.some(item => action.includes(item))) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
console.error(`Could not execute "${action}". Reason: ${data.error.message}`);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
94
|
+
}
|
|
50
95
|
}
|
|
96
|
+
export { DefaultDataProvider };
|
|
51
97
|
|
|
52
98
|
//# sourceMappingURL=DefaultDataProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/DefaultDataProvider.js","sources":["../../src/dataProviders/DefaultDataProvider.ts"],"sourcesContent":["import type { IDataProvider, ListPagesOptions, ListPagesResult, PublicPage } from \"~/types.js\";\nimport type { ActiveExperiment, VariantContent } from \"~/experiments/types.js\";\nimport type { ApiClient } from \"~/dataProviders/ApiClient.js\";\nimport { GET_PAGE_BY_PATH } from \"./GET_PAGE_BY_PATH.js\";\nimport { GET_PAGE_BY_ID } from \"./GET_PAGE_BY_ID.js\";\nimport { LIST_PUBLISHED_PAGES } from \"./LIST_PUBLISHED_PAGES.js\";\nimport { GET_PAGE_EXPERIMENT } from \"./GET_PAGE_EXPERIMENT.js\";\nimport { GET_VARIANT_CONTENT } from \"./GET_VARIANT_CONTENT.js\";\nimport { GET_EXPERIMENT_PAUSED } from \"./GET_EXPERIMENT_PAUSED.js\";\n\ninterface DefaultDataProviderConfig {\n apiClient: ApiClient;\n}\n\nconst ignoreActions = [\".well-known\", \"_next\"];\n\nexport class DefaultDataProvider implements IDataProvider {\n private config: DefaultDataProviderConfig;\n\n constructor(config: DefaultDataProviderConfig) {\n this.config = config;\n }\n\n public async getPageByPath(path: string): Promise<PublicPage | null> {\n const result = await this.config.apiClient.query({\n query: GET_PAGE_BY_PATH,\n variables: {\n path\n }\n });\n\n this.checkForErrors(`getPageByPath:${path}`, result.websiteBuilder.getPageByPath);\n\n return result.websiteBuilder.getPageByPath.data;\n }\n\n public async getPageById(id: string): Promise<PublicPage | null> {\n const result = await this.config.apiClient.query({\n query: GET_PAGE_BY_ID,\n variables: {\n id\n }\n });\n\n this.checkForErrors(\"getPageById\", result.websiteBuilder.getPageById);\n\n return result.websiteBuilder.getPageById.data;\n }\n\n public async listPages(options?: ListPagesOptions): Promise<ListPagesResult> {\n const { where, ...rest } = options ?? {};\n\n const result = await this.config.apiClient.query({\n query: LIST_PUBLISHED_PAGES,\n variables: {\n where: {\n ...where,\n published: true\n },\n ...rest\n }\n });\n\n this.checkForErrors(\"listPages\", result.websiteBuilder.listPages);\n\n return {\n data: result.websiteBuilder.listPages.data ?? [],\n meta: result.websiteBuilder.listPages.meta ?? {\n hasMoreItems: false,\n totalCount: 0,\n cursor: null\n }\n };\n }\n\n public async getPageExperiment(path: string): Promise<ActiveExperiment | null> {\n const result = await this.config.apiClient.query({\n query: GET_PAGE_EXPERIMENT,\n variables: {\n path\n }\n });\n\n this.checkForErrors(`getPageExperiment:${path}`, result.websiteBuilder.getPageExperiment);\n\n return result.websiteBuilder.getPageExperiment.data ?? null;\n }\n\n public async getVariantContent(variantId: string): Promise<VariantContent | null> {\n const result = await this.config.apiClient.query({\n query: GET_VARIANT_CONTENT,\n variables: {\n id: variantId\n }\n });\n\n this.checkForErrors(\n `getVariantContent:${variantId}`,\n result.websiteBuilder.getVariantContent\n );\n\n return result.websiteBuilder.getVariantContent.data ?? null;\n }\n\n public async getExperimentPaused(experimentId: string): Promise<boolean> {\n // Uncached: the kill-switch must take effect immediately, even while page/variant content\n // stays cached.\n const result = await this.config.apiClient.query(\n {\n query: GET_EXPERIMENT_PAUSED,\n variables: { experimentId }\n },\n { noStore: true }\n );\n\n this.checkForErrors(\n `getExperimentPaused:${experimentId}`,\n result.websiteBuilder.getExperimentPaused\n );\n\n return result.websiteBuilder.getExperimentPaused.data === true;\n }\n\n private checkForErrors(action: string, data: any) {\n if (data.error) {\n // TODO: investigate how these ignored actions make their way to the SDK.\n if (ignoreActions.some(item => action.includes(item))) {\n return;\n }\n console.error(`Could not execute \"${action}\". Reason: ${data.error.message}`);\n }\n }\n}\n"],"names":["ignoreActions","DefaultDataProvider","config","path","result","GET_PAGE_BY_PATH","id","GET_PAGE_BY_ID","options","where","rest","LIST_PUBLISHED_PAGES","GET_PAGE_EXPERIMENT","variantId","GET_VARIANT_CONTENT","experimentId","GET_EXPERIMENT_PAUSED","action","data","item","console"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GET_EXPERIMENT_PAUSED = "\n query GetExperimentPaused($experimentId: String!) {\n websiteBuilder {\n getExperimentPaused(experimentId: $experimentId) {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
const GET_EXPERIMENT_PAUSED = `
|
|
2
|
+
query GetExperimentPaused($experimentId: String!) {
|
|
3
|
+
websiteBuilder {
|
|
4
|
+
getExperimentPaused(experimentId: $experimentId) {
|
|
5
|
+
data
|
|
6
|
+
error {
|
|
7
|
+
code
|
|
8
|
+
message
|
|
9
|
+
data
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
15
|
+
export { GET_EXPERIMENT_PAUSED };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=GET_EXPERIMENT_PAUSED.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataProviders/GET_EXPERIMENT_PAUSED.js","sources":["../../src/dataProviders/GET_EXPERIMENT_PAUSED.ts"],"sourcesContent":["export const GET_EXPERIMENT_PAUSED = /* GraphQL*/ `\n query GetExperimentPaused($experimentId: String!) {\n websiteBuilder {\n getExperimentPaused(experimentId: $experimentId) {\n data\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["GET_EXPERIMENT_PAUSED"],"mappings":"AAAO,MAAMA,wBAAqC,CAAC;;;;;;;;;;;;;AAanD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const GET_PAGE_BY_ID = "\n query GetPageById($id: ID!) {\n websiteBuilder {\n getPageById(id: $id) {\n data {\n id\n properties\n elements\n bindings\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
1
|
+
export declare const GET_PAGE_BY_ID = "\n query GetPageById($id: ID!) {\n websiteBuilder {\n getPageById(id: $id) {\n data {\n id\n properties\n elements\n bindings\n extensions\n languagePaths\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
const GET_PAGE_BY_ID = `
|
|
2
2
|
query GetPageById($id: ID!) {
|
|
3
3
|
websiteBuilder {
|
|
4
4
|
getPageById(id: $id) {
|
|
@@ -7,6 +7,8 @@ export const GET_PAGE_BY_ID = /* GraphQL*/`
|
|
|
7
7
|
properties
|
|
8
8
|
elements
|
|
9
9
|
bindings
|
|
10
|
+
extensions
|
|
11
|
+
languagePaths
|
|
10
12
|
}
|
|
11
13
|
error {
|
|
12
14
|
code
|
|
@@ -17,5 +19,6 @@ export const GET_PAGE_BY_ID = /* GraphQL*/`
|
|
|
17
19
|
}
|
|
18
20
|
}
|
|
19
21
|
`;
|
|
22
|
+
export { GET_PAGE_BY_ID };
|
|
20
23
|
|
|
21
24
|
//# sourceMappingURL=GET_PAGE_BY_ID.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/GET_PAGE_BY_ID.js","sources":["../../src/dataProviders/GET_PAGE_BY_ID.ts"],"sourcesContent":["export const GET_PAGE_BY_ID = /* GraphQL*/ `\n query GetPageById($id: ID!) {\n websiteBuilder {\n getPageById(id: $id) {\n data {\n id\n properties\n elements\n bindings\n extensions\n languagePaths\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["GET_PAGE_BY_ID"],"mappings":"AAAO,MAAMA,iBAA8B,CAAC;;;;;;;;;;;;;;;;;;;;AAoB5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const GET_PAGE_BY_PATH = "\n query GetPageByPath($path: String!) {\n websiteBuilder {\n getPageByPath(path: $path) {\n data {\n id\n properties\n elements\n bindings\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
1
|
+
export declare const GET_PAGE_BY_PATH = "\n query GetPageByPath($path: String!) {\n websiteBuilder {\n getPageByPath(path: $path) {\n data {\n id\n properties\n elements\n bindings\n extensions\n languagePaths\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
const GET_PAGE_BY_PATH = `
|
|
2
2
|
query GetPageByPath($path: String!) {
|
|
3
3
|
websiteBuilder {
|
|
4
4
|
getPageByPath(path: $path) {
|
|
@@ -7,6 +7,8 @@ export const GET_PAGE_BY_PATH = /* GraphQL*/`
|
|
|
7
7
|
properties
|
|
8
8
|
elements
|
|
9
9
|
bindings
|
|
10
|
+
extensions
|
|
11
|
+
languagePaths
|
|
10
12
|
}
|
|
11
13
|
error {
|
|
12
14
|
code
|
|
@@ -17,5 +19,6 @@ export const GET_PAGE_BY_PATH = /* GraphQL*/`
|
|
|
17
19
|
}
|
|
18
20
|
}
|
|
19
21
|
`;
|
|
22
|
+
export { GET_PAGE_BY_PATH };
|
|
20
23
|
|
|
21
24
|
//# sourceMappingURL=GET_PAGE_BY_PATH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/GET_PAGE_BY_PATH.js","sources":["../../src/dataProviders/GET_PAGE_BY_PATH.ts"],"sourcesContent":["export const GET_PAGE_BY_PATH = /* GraphQL*/ `\n query GetPageByPath($path: String!) {\n websiteBuilder {\n getPageByPath(path: $path) {\n data {\n id\n properties\n elements\n bindings\n extensions\n languagePaths\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["GET_PAGE_BY_PATH"],"mappings":"AAAO,MAAMA,mBAAgC,CAAC;;;;;;;;;;;;;;;;;;;;AAoB9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GET_PAGE_EXPERIMENT = "\n query GetPageExperiment($path: String!) {\n websiteBuilder {\n getPageExperiment(path: $path) {\n data {\n experimentId\n revisionId\n pageEntryId\n path\n status\n controlVariantId\n tenantId\n trafficSplit\n targeting\n analytics\n variants {\n variantId\n name\n }\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const GET_PAGE_EXPERIMENT = `
|
|
2
|
+
query GetPageExperiment($path: String!) {
|
|
3
|
+
websiteBuilder {
|
|
4
|
+
getPageExperiment(path: $path) {
|
|
5
|
+
data {
|
|
6
|
+
experimentId
|
|
7
|
+
revisionId
|
|
8
|
+
pageEntryId
|
|
9
|
+
path
|
|
10
|
+
status
|
|
11
|
+
controlVariantId
|
|
12
|
+
tenantId
|
|
13
|
+
trafficSplit
|
|
14
|
+
targeting
|
|
15
|
+
analytics
|
|
16
|
+
variants {
|
|
17
|
+
variantId
|
|
18
|
+
name
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
error {
|
|
22
|
+
code
|
|
23
|
+
message
|
|
24
|
+
data
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
export { GET_PAGE_EXPERIMENT };
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=GET_PAGE_EXPERIMENT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataProviders/GET_PAGE_EXPERIMENT.js","sources":["../../src/dataProviders/GET_PAGE_EXPERIMENT.ts"],"sourcesContent":["export const GET_PAGE_EXPERIMENT = /* GraphQL*/ `\n query GetPageExperiment($path: String!) {\n websiteBuilder {\n getPageExperiment(path: $path) {\n data {\n experimentId\n revisionId\n pageEntryId\n path\n status\n controlVariantId\n tenantId\n trafficSplit\n targeting\n analytics\n variants {\n variantId\n name\n }\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["GET_PAGE_EXPERIMENT"],"mappings":"AAAO,MAAMA,sBAAmC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GET_VARIANT_CONTENT = "\n query GetVariantContent($id: ID!) {\n websiteBuilder {\n getVariantContent(id: $id) {\n data {\n id\n properties\n elements\n bindings\n extensions\n metadata\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const GET_VARIANT_CONTENT = `
|
|
2
|
+
query GetVariantContent($id: ID!) {
|
|
3
|
+
websiteBuilder {
|
|
4
|
+
getVariantContent(id: $id) {
|
|
5
|
+
data {
|
|
6
|
+
id
|
|
7
|
+
properties
|
|
8
|
+
elements
|
|
9
|
+
bindings
|
|
10
|
+
extensions
|
|
11
|
+
metadata
|
|
12
|
+
}
|
|
13
|
+
error {
|
|
14
|
+
code
|
|
15
|
+
message
|
|
16
|
+
data
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
`;
|
|
22
|
+
export { GET_VARIANT_CONTENT };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=GET_VARIANT_CONTENT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataProviders/GET_VARIANT_CONTENT.js","sources":["../../src/dataProviders/GET_VARIANT_CONTENT.ts"],"sourcesContent":["export const GET_VARIANT_CONTENT = /* GraphQL*/ `\n query GetVariantContent($id: ID!) {\n websiteBuilder {\n getVariantContent(id: $id) {\n data {\n id\n properties\n elements\n bindings\n extensions\n metadata\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["GET_VARIANT_CONTENT"],"mappings":"AAAO,MAAMA,sBAAmC,CAAC;;;;;;;;;;;;;;;;;;;;AAoBjD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const LIST_PUBLISHED_PAGES = "\n query ListPublishedPages($where: WbPagesListWhereInput) {\n websiteBuilder {\n listPages(where: $where) {\n data {\n id\n properties\n
|
|
1
|
+
export declare const LIST_PUBLISHED_PAGES = "\n query ListPublishedPages(\n $where: WbPagesListWhereInput\n $limit: Int\n $after: String\n $sort: [WbPageListSorter]\n $search: String\n ) {\n websiteBuilder {\n listPages(where: $where, limit: $limit, after: $after, sort: $sort, search: $search) {\n data {\n id\n properties\n metadata\n extensions\n }\n meta {\n hasMoreItems\n totalCount\n cursor\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n";
|
|
@@ -1,12 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
query ListPublishedPages(
|
|
1
|
+
const LIST_PUBLISHED_PAGES = `
|
|
2
|
+
query ListPublishedPages(
|
|
3
|
+
$where: WbPagesListWhereInput
|
|
4
|
+
$limit: Int
|
|
5
|
+
$after: String
|
|
6
|
+
$sort: [WbPageListSorter]
|
|
7
|
+
$search: String
|
|
8
|
+
) {
|
|
3
9
|
websiteBuilder {
|
|
4
|
-
listPages(where: $where) {
|
|
10
|
+
listPages(where: $where, limit: $limit, after: $after, sort: $sort, search: $search) {
|
|
5
11
|
data {
|
|
6
12
|
id
|
|
7
13
|
properties
|
|
8
|
-
|
|
9
|
-
|
|
14
|
+
metadata
|
|
15
|
+
extensions
|
|
16
|
+
}
|
|
17
|
+
meta {
|
|
18
|
+
hasMoreItems
|
|
19
|
+
totalCount
|
|
20
|
+
cursor
|
|
10
21
|
}
|
|
11
22
|
error {
|
|
12
23
|
code
|
|
@@ -17,5 +28,6 @@ export const LIST_PUBLISHED_PAGES = /* GraphQL*/`
|
|
|
17
28
|
}
|
|
18
29
|
}
|
|
19
30
|
`;
|
|
31
|
+
export { LIST_PUBLISHED_PAGES };
|
|
20
32
|
|
|
21
33
|
//# sourceMappingURL=LIST_PUBLISHED_PAGES.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/LIST_PUBLISHED_PAGES.js","sources":["../../src/dataProviders/LIST_PUBLISHED_PAGES.ts"],"sourcesContent":["export const LIST_PUBLISHED_PAGES = /* GraphQL*/ `\n query ListPublishedPages(\n $where: WbPagesListWhereInput\n $limit: Int\n $after: String\n $sort: [WbPageListSorter]\n $search: String\n ) {\n websiteBuilder {\n listPages(where: $where, limit: $limit, after: $after, sort: $sort, search: $search) {\n data {\n id\n properties\n metadata\n extensions\n }\n meta {\n hasMoreItems\n totalCount\n cursor\n }\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["LIST_PUBLISHED_PAGES"],"mappings":"AAAO,MAAMA,uBAAoC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BlD,CAAC"}
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type { IDataProvider,
|
|
1
|
+
import type { IDataProvider, PublicRedirect } from "../types.js";
|
|
2
|
+
import type { PublicPage } from "../types.js";
|
|
3
|
+
import type { ActiveExperiment, VariantContent } from "../experiments/types.js";
|
|
2
4
|
export declare class NullDataProvider implements IDataProvider {
|
|
3
|
-
getPageById(): Promise<
|
|
4
|
-
getPageByPath(): Promise<
|
|
5
|
-
|
|
5
|
+
getPageById(): Promise<PublicPage | null>;
|
|
6
|
+
getPageByPath(): Promise<PublicPage | null>;
|
|
7
|
+
getPageExperiment(): Promise<ActiveExperiment | null>;
|
|
8
|
+
getVariantContent(): Promise<VariantContent | null>;
|
|
9
|
+
getExperimentPaused(): Promise<boolean>;
|
|
10
|
+
listPages(): Promise<{
|
|
11
|
+
data: never[];
|
|
12
|
+
meta: {
|
|
13
|
+
hasMoreItems: boolean;
|
|
14
|
+
totalCount: number;
|
|
15
|
+
cursor: null;
|
|
16
|
+
};
|
|
17
|
+
}>;
|
|
6
18
|
listRedirects(): Promise<PublicRedirect[]>;
|
|
7
19
|
}
|
|
@@ -1,16 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
class NullDataProvider {
|
|
2
|
+
getPageById() {
|
|
3
|
+
return Promise.resolve(null);
|
|
4
|
+
}
|
|
5
|
+
getPageByPath() {
|
|
6
|
+
return Promise.resolve(null);
|
|
7
|
+
}
|
|
8
|
+
getPageExperiment() {
|
|
9
|
+
return Promise.resolve(null);
|
|
10
|
+
}
|
|
11
|
+
getVariantContent() {
|
|
12
|
+
return Promise.resolve(null);
|
|
13
|
+
}
|
|
14
|
+
getExperimentPaused() {
|
|
15
|
+
return Promise.resolve(false);
|
|
16
|
+
}
|
|
17
|
+
async listPages() {
|
|
18
|
+
return {
|
|
19
|
+
data: [],
|
|
20
|
+
meta: {
|
|
21
|
+
hasMoreItems: false,
|
|
22
|
+
totalCount: 0,
|
|
23
|
+
cursor: null
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
listRedirects() {
|
|
28
|
+
return Promise.resolve([]);
|
|
29
|
+
}
|
|
14
30
|
}
|
|
31
|
+
export { NullDataProvider };
|
|
15
32
|
|
|
16
33
|
//# sourceMappingURL=NullDataProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/NullDataProvider.js","sources":["../../src/dataProviders/NullDataProvider.ts"],"sourcesContent":["import type { IDataProvider, PublicRedirect } from \"~/types.js\";\nimport type { PublicPage } from \"~/types.js\";\nimport type { ActiveExperiment, VariantContent } from \"~/experiments/types.js\";\n\nexport class NullDataProvider implements IDataProvider {\n getPageById(): Promise<PublicPage | null> {\n return Promise.resolve(null);\n }\n\n getPageByPath(): Promise<PublicPage | null> {\n return Promise.resolve(null);\n }\n\n getPageExperiment(): Promise<ActiveExperiment | null> {\n return Promise.resolve(null);\n }\n\n getVariantContent(): Promise<VariantContent | null> {\n return Promise.resolve(null);\n }\n\n getExperimentPaused(): Promise<boolean> {\n return Promise.resolve(false);\n }\n\n public async listPages() {\n return { data: [], meta: { hasMoreItems: false, totalCount: 0, cursor: null } };\n }\n\n listRedirects(): Promise<PublicRedirect[]> {\n return Promise.resolve([]);\n }\n}\n"],"names":["NullDataProvider","Promise"],"mappings":"AAIO,MAAMA;IACT,cAA0C;QACtC,OAAOC,QAAQ,OAAO,CAAC;IAC3B;IAEA,gBAA4C;QACxC,OAAOA,QAAQ,OAAO,CAAC;IAC3B;IAEA,oBAAsD;QAClD,OAAOA,QAAQ,OAAO,CAAC;IAC3B;IAEA,oBAAoD;QAChD,OAAOA,QAAQ,OAAO,CAAC;IAC3B;IAEA,sBAAwC;QACpC,OAAOA,QAAQ,OAAO,CAAC;IAC3B;IAEA,MAAa,YAAY;QACrB,OAAO;YAAE,MAAM,EAAE;YAAE,MAAM;gBAAE,cAAc;gBAAO,YAAY;gBAAG,QAAQ;YAAK;QAAE;IAClF;IAEA,gBAA2C;QACvC,OAAOA,QAAQ,OAAO,CAAC,EAAE;IAC7B;AACJ"}
|
|
@@ -1,32 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
async getRedirectByPath(path) {
|
|
7
|
-
await this.populateCache();
|
|
8
|
-
if (!this.redirectsCache) {
|
|
9
|
-
return undefined;
|
|
1
|
+
class RedirectsProvider {
|
|
2
|
+
constructor(apiClient){
|
|
3
|
+
this.redirectsCache = void 0;
|
|
4
|
+
this.apiClient = apiClient;
|
|
10
5
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
6
|
+
async getRedirectByPath(path) {
|
|
7
|
+
await this.populateCache();
|
|
8
|
+
if (!this.redirectsCache) return;
|
|
9
|
+
return this.redirectsCache.get(path);
|
|
10
|
+
}
|
|
11
|
+
async getAllRedirects() {
|
|
12
|
+
await this.populateCache();
|
|
13
|
+
return this.redirectsCache ?? new Map();
|
|
14
|
+
}
|
|
15
|
+
async populateCache() {
|
|
16
|
+
const redirects = await this.apiClient.fetch({
|
|
17
|
+
path: "/wb/redirects",
|
|
18
|
+
cache: "no-cache",
|
|
19
|
+
next: {
|
|
20
|
+
revalidate: 0
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
this.redirectsCache = new Map();
|
|
24
|
+
for (const redirect of redirects)this.redirectsCache.set(redirect.from, redirect);
|
|
28
25
|
}
|
|
29
|
-
}
|
|
30
26
|
}
|
|
27
|
+
export { RedirectsProvider };
|
|
31
28
|
|
|
32
29
|
//# sourceMappingURL=RedirectsProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"dataProviders/RedirectsProvider.js","sources":["../../src/dataProviders/RedirectsProvider.ts"],"sourcesContent":["import type { ApiClient } from \"./ApiClient.js\";\nimport type { IRedirects } from \"~/IRedirects.js\";\nimport type { PublicRedirect } from \"~/types.js\";\n\nexport class RedirectsProvider implements IRedirects {\n private redirectsCache: Map<string, PublicRedirect> | undefined = undefined;\n private apiClient: ApiClient;\n\n constructor(apiClient: ApiClient) {\n this.apiClient = apiClient;\n }\n\n async getRedirectByPath(path: string): Promise<PublicRedirect | undefined> {\n await this.populateCache();\n\n if (!this.redirectsCache) {\n return undefined;\n }\n\n return this.redirectsCache.get(path);\n }\n\n async getAllRedirects(): Promise<Map<string, PublicRedirect>> {\n await this.populateCache();\n return this.redirectsCache ?? new Map();\n }\n\n private async populateCache() {\n const redirects: PublicRedirect[] = await this.apiClient.fetch({\n path: \"/wb/redirects\",\n cache: \"no-cache\",\n next: {\n revalidate: 0\n }\n });\n\n this.redirectsCache = new Map();\n for (const redirect of redirects) {\n this.redirectsCache.set(redirect.from, redirect);\n }\n }\n}\n"],"names":["RedirectsProvider","apiClient","undefined","path","Map","redirects","redirect"],"mappings":"AAIO,MAAMA;IAIT,YAAYC,SAAoB,CAAE;aAH1B,cAAc,GAA4CC;QAI9D,IAAI,CAAC,SAAS,GAAGD;IACrB;IAEA,MAAM,kBAAkBE,IAAY,EAAuC;QACvE,MAAM,IAAI,CAAC,aAAa;QAExB,IAAI,CAAC,IAAI,CAAC,cAAc,EACpB;QAGJ,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAACA;IACnC;IAEA,MAAM,kBAAwD;QAC1D,MAAM,IAAI,CAAC,aAAa;QACxB,OAAO,IAAI,CAAC,cAAc,IAAI,IAAIC;IACtC;IAEA,MAAc,gBAAgB;QAC1B,MAAMC,YAA8B,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC3D,MAAM;YACN,OAAO;YACP,MAAM;gBACF,YAAY;YAChB;QACJ;QAEA,IAAI,CAAC,cAAc,GAAG,IAAID;QAC1B,KAAK,MAAME,YAAYD,UACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAACC,SAAS,IAAI,EAAEA;IAE/C;AACJ"}
|