@webiny/api-page-builder-so-ddb-es 0.0.0-ee-vpcs.549378cf03
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/LICENSE +21 -0
- package/README.md +30 -0
- package/configurations.d.ts +9 -0
- package/configurations.js +49 -0
- package/configurations.js.map +1 -0
- package/definitions/blockCategoryEntity.d.ts +9 -0
- package/definitions/blockCategoryEntity.js +61 -0
- package/definitions/blockCategoryEntity.js.map +1 -0
- package/definitions/categoryEntity.d.ts +9 -0
- package/definitions/categoryEntity.js +61 -0
- package/definitions/categoryEntity.js.map +1 -0
- package/definitions/menuEntity.d.ts +9 -0
- package/definitions/menuEntity.js +61 -0
- package/definitions/menuEntity.js.map +1 -0
- package/definitions/pageBlockEntity.d.ts +9 -0
- package/definitions/pageBlockEntity.js +64 -0
- package/definitions/pageBlockEntity.js.map +1 -0
- package/definitions/pageElasticsearchEntity.d.ts +9 -0
- package/definitions/pageElasticsearchEntity.js +40 -0
- package/definitions/pageElasticsearchEntity.js.map +1 -0
- package/definitions/pageElementEntity.d.ts +9 -0
- package/definitions/pageElementEntity.js +67 -0
- package/definitions/pageElementEntity.js.map +1 -0
- package/definitions/pageEntity.d.ts +9 -0
- package/definitions/pageEntity.js +97 -0
- package/definitions/pageEntity.js.map +1 -0
- package/definitions/settingsEntity.d.ts +9 -0
- package/definitions/settingsEntity.js +77 -0
- package/definitions/settingsEntity.js.map +1 -0
- package/definitions/systemEntity.d.ts +9 -0
- package/definitions/systemEntity.js +40 -0
- package/definitions/systemEntity.js.map +1 -0
- package/definitions/table.d.ts +9 -0
- package/definitions/table.js +24 -0
- package/definitions/table.js.map +1 -0
- package/definitions/tableElasticsearch.d.ts +9 -0
- package/definitions/tableElasticsearch.js +24 -0
- package/definitions/tableElasticsearch.js.map +1 -0
- package/elasticsearch/createElasticsearchIndex.d.ts +9 -0
- package/elasticsearch/createElasticsearchIndex.js +60 -0
- package/elasticsearch/createElasticsearchIndex.js.map +1 -0
- package/elasticsearch/indices/base.d.ts +2 -0
- package/elasticsearch/indices/base.js +15 -0
- package/elasticsearch/indices/base.js.map +1 -0
- package/elasticsearch/indices/index.d.ts +1 -0
- package/elasticsearch/indices/index.js +16 -0
- package/elasticsearch/indices/index.js.map +1 -0
- package/elasticsearch/indices/japanese.d.ts +2 -0
- package/elasticsearch/indices/japanese.js +16 -0
- package/elasticsearch/indices/japanese.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.js +233 -0
- package/index.js.map +1 -0
- package/operations/blockCategory/dataLoader.d.ts +16 -0
- package/operations/blockCategory/dataLoader.js +79 -0
- package/operations/blockCategory/dataLoader.js.map +1 -0
- package/operations/blockCategory/fields.d.ts +2 -0
- package/operations/blockCategory/fields.js +28 -0
- package/operations/blockCategory/fields.js.map +1 -0
- package/operations/blockCategory/index.d.ts +8 -0
- package/operations/blockCategory/index.js +208 -0
- package/operations/blockCategory/index.js.map +1 -0
- package/operations/blockCategory/keys.d.ts +9 -0
- package/operations/blockCategory/keys.js +25 -0
- package/operations/blockCategory/keys.js.map +1 -0
- package/operations/category/dataLoader.d.ts +16 -0
- package/operations/category/dataLoader.js +79 -0
- package/operations/category/dataLoader.js.map +1 -0
- package/operations/category/fields.d.ts +2 -0
- package/operations/category/fields.js +28 -0
- package/operations/category/fields.js.map +1 -0
- package/operations/category/index.d.ts +8 -0
- package/operations/category/index.js +208 -0
- package/operations/category/index.js.map +1 -0
- package/operations/category/keys.d.ts +9 -0
- package/operations/category/keys.js +25 -0
- package/operations/category/keys.js.map +1 -0
- package/operations/menu/fields.d.ts +2 -0
- package/operations/menu/fields.js +27 -0
- package/operations/menu/fields.js.map +1 -0
- package/operations/menu/index.d.ts +8 -0
- package/operations/menu/index.js +217 -0
- package/operations/menu/index.js.map +1 -0
- package/operations/pageBlock/dataLoader.d.ts +16 -0
- package/operations/pageBlock/dataLoader.js +79 -0
- package/operations/pageBlock/dataLoader.js.map +1 -0
- package/operations/pageBlock/fields.d.ts +2 -0
- package/operations/pageBlock/fields.js +25 -0
- package/operations/pageBlock/fields.js.map +1 -0
- package/operations/pageBlock/index.d.ts +8 -0
- package/operations/pageBlock/index.js +208 -0
- package/operations/pageBlock/index.js.map +1 -0
- package/operations/pageBlock/keys.d.ts +9 -0
- package/operations/pageBlock/keys.js +25 -0
- package/operations/pageBlock/keys.js.map +1 -0
- package/operations/pageElement/fields.d.ts +2 -0
- package/operations/pageElement/fields.js +19 -0
- package/operations/pageElement/fields.js.map +1 -0
- package/operations/pageElement/index.d.ts +8 -0
- package/operations/pageElement/index.js +207 -0
- package/operations/pageElement/index.js.map +1 -0
- package/operations/pages/elasticsearchQueryBody.d.ts +12 -0
- package/operations/pages/elasticsearchQueryBody.js +237 -0
- package/operations/pages/elasticsearchQueryBody.js.map +1 -0
- package/operations/pages/fields.d.ts +4 -0
- package/operations/pages/fields.js +54 -0
- package/operations/pages/fields.js.map +1 -0
- package/operations/pages/helpers.d.ts +35 -0
- package/operations/pages/helpers.js +83 -0
- package/operations/pages/helpers.js.map +1 -0
- package/operations/pages/index.d.ts +11 -0
- package/operations/pages/index.js +829 -0
- package/operations/pages/index.js.map +1 -0
- package/operations/pages/keys.d.ts +24 -0
- package/operations/pages/keys.js +79 -0
- package/operations/pages/keys.js.map +1 -0
- package/operations/settings/index.d.ts +6 -0
- package/operations/settings/index.js +178 -0
- package/operations/settings/index.js.map +1 -0
- package/operations/system/index.d.ts +6 -0
- package/operations/system/index.js +104 -0
- package/operations/system/index.js.map +1 -0
- package/package.json +65 -0
- package/plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin.d.ts +4 -0
- package/plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin.js +17 -0
- package/plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin.js.map +1 -0
- package/plugins/definitions/CategoryDynamoDbElasticFieldPlugin.d.ts +4 -0
- package/plugins/definitions/CategoryDynamoDbElasticFieldPlugin.js +17 -0
- package/plugins/definitions/CategoryDynamoDbElasticFieldPlugin.js.map +1 -0
- package/plugins/definitions/IndexPageDataPlugin.d.ts +17 -0
- package/plugins/definitions/IndexPageDataPlugin.js +32 -0
- package/plugins/definitions/IndexPageDataPlugin.js.map +1 -0
- package/plugins/definitions/MenuDynamoDbElasticFieldPlugin.d.ts +4 -0
- package/plugins/definitions/MenuDynamoDbElasticFieldPlugin.js +17 -0
- package/plugins/definitions/MenuDynamoDbElasticFieldPlugin.js.map +1 -0
- package/plugins/definitions/PageBlockDynamoDbFieldPlugin.d.ts +4 -0
- package/plugins/definitions/PageBlockDynamoDbFieldPlugin.js +17 -0
- package/plugins/definitions/PageBlockDynamoDbFieldPlugin.js.map +1 -0
- package/plugins/definitions/PageDynamoDbElasticsearchFieldPlugin.d.ts +4 -0
- package/plugins/definitions/PageDynamoDbElasticsearchFieldPlugin.js +17 -0
- package/plugins/definitions/PageDynamoDbElasticsearchFieldPlugin.js.map +1 -0
- package/plugins/definitions/PageElasticsearchBodyModifierPlugin.d.ts +4 -0
- package/plugins/definitions/PageElasticsearchBodyModifierPlugin.js +17 -0
- package/plugins/definitions/PageElasticsearchBodyModifierPlugin.js.map +1 -0
- package/plugins/definitions/PageElasticsearchFieldPlugin.d.ts +4 -0
- package/plugins/definitions/PageElasticsearchFieldPlugin.js +17 -0
- package/plugins/definitions/PageElasticsearchFieldPlugin.js.map +1 -0
- package/plugins/definitions/PageElasticsearchIndexPlugin.d.ts +4 -0
- package/plugins/definitions/PageElasticsearchIndexPlugin.js +17 -0
- package/plugins/definitions/PageElasticsearchIndexPlugin.js.map +1 -0
- package/plugins/definitions/PageElasticsearchQueryModifierPlugin.d.ts +4 -0
- package/plugins/definitions/PageElasticsearchQueryModifierPlugin.js +17 -0
- package/plugins/definitions/PageElasticsearchQueryModifierPlugin.js.map +1 -0
- package/plugins/definitions/PageElasticsearchSortModifierPlugin.d.ts +4 -0
- package/plugins/definitions/PageElasticsearchSortModifierPlugin.js +17 -0
- package/plugins/definitions/PageElasticsearchSortModifierPlugin.js.map +1 -0
- package/plugins/definitions/PageElementDynamoDbElasticFieldPlugin.d.ts +4 -0
- package/plugins/definitions/PageElementDynamoDbElasticFieldPlugin.js +17 -0
- package/plugins/definitions/PageElementDynamoDbElasticFieldPlugin.js.map +1 -0
- package/plugins/definitions/SearchLatestPagesPlugin.d.ts +4 -0
- package/plugins/definitions/SearchLatestPagesPlugin.js +17 -0
- package/plugins/definitions/SearchLatestPagesPlugin.js.map +1 -0
- package/plugins/definitions/SearchPagesPlugin.d.ts +23 -0
- package/plugins/definitions/SearchPagesPlugin.js +39 -0
- package/plugins/definitions/SearchPagesPlugin.js.map +1 -0
- package/plugins/definitions/SearchPublishedPagesPlugin.d.ts +4 -0
- package/plugins/definitions/SearchPublishedPagesPlugin.js +17 -0
- package/plugins/definitions/SearchPublishedPagesPlugin.js.map +1 -0
- package/types.d.ts +39 -0
- package/types.js +20 -0
- package/types.js.map +1 -0
- package/upgrades/index.d.ts +2 -0
- package/upgrades/index.js +14 -0
- package/upgrades/index.js.map +1 -0
- package/upgrades/v5.15.0/category.d.ts +2 -0
- package/upgrades/v5.15.0/category.js +73 -0
- package/upgrades/v5.15.0/category.js.map +1 -0
- package/upgrades/v5.15.0/index.d.ts +4 -0
- package/upgrades/v5.15.0/index.js +52 -0
- package/upgrades/v5.15.0/index.js.map +1 -0
- package/upgrades/v5.15.0/menu.d.ts +2 -0
- package/upgrades/v5.15.0/menu.js +73 -0
- package/upgrades/v5.15.0/menu.js.map +1 -0
- package/upgrades/v5.15.0/pageElement.d.ts +2 -0
- package/upgrades/v5.15.0/pageElement.js +73 -0
- package/upgrades/v5.15.0/pageElement.js.map +1 -0
package/index.js
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createStorageOperations = void 0;
|
|
9
|
+
|
|
10
|
+
var _filters = _interopRequireDefault(require("@webiny/db-dynamodb/plugins/filters"));
|
|
11
|
+
|
|
12
|
+
var _plugins = require("@webiny/plugins");
|
|
13
|
+
|
|
14
|
+
var _operators = require("@webiny/api-elasticsearch/operators");
|
|
15
|
+
|
|
16
|
+
var _types = require("./types");
|
|
17
|
+
|
|
18
|
+
var _table = require("./definitions/table");
|
|
19
|
+
|
|
20
|
+
var _tableElasticsearch = require("./definitions/tableElasticsearch");
|
|
21
|
+
|
|
22
|
+
var _indices = require("./elasticsearch/indices");
|
|
23
|
+
|
|
24
|
+
var _createElasticsearchIndex = require("./elasticsearch/createElasticsearchIndex");
|
|
25
|
+
|
|
26
|
+
var _categoryEntity = require("./definitions/categoryEntity");
|
|
27
|
+
|
|
28
|
+
var _fields = require("./operations/category/fields");
|
|
29
|
+
|
|
30
|
+
var _category = require("./operations/category");
|
|
31
|
+
|
|
32
|
+
var _menuEntity = require("./definitions/menuEntity");
|
|
33
|
+
|
|
34
|
+
var _fields2 = require("./operations/menu/fields");
|
|
35
|
+
|
|
36
|
+
var _menu = require("./operations/menu");
|
|
37
|
+
|
|
38
|
+
var _pageElementEntity = require("./definitions/pageElementEntity");
|
|
39
|
+
|
|
40
|
+
var _fields3 = require("./operations/pageElement/fields");
|
|
41
|
+
|
|
42
|
+
var _pageElement = require("./operations/pageElement");
|
|
43
|
+
|
|
44
|
+
var _settingsEntity = require("./definitions/settingsEntity");
|
|
45
|
+
|
|
46
|
+
var _settings = require("./operations/settings");
|
|
47
|
+
|
|
48
|
+
var _systemEntity = require("./definitions/systemEntity");
|
|
49
|
+
|
|
50
|
+
var _system = require("./operations/system");
|
|
51
|
+
|
|
52
|
+
var _pageEntity = require("./definitions/pageEntity");
|
|
53
|
+
|
|
54
|
+
var _fields4 = require("./operations/pages/fields");
|
|
55
|
+
|
|
56
|
+
var _pages = require("./operations/pages");
|
|
57
|
+
|
|
58
|
+
var _pageElasticsearchEntity = require("./definitions/pageElasticsearchEntity");
|
|
59
|
+
|
|
60
|
+
var _blockCategoryEntity = require("./definitions/blockCategoryEntity");
|
|
61
|
+
|
|
62
|
+
var _fields5 = require("./operations/blockCategory/fields");
|
|
63
|
+
|
|
64
|
+
var _blockCategory = require("./operations/blockCategory");
|
|
65
|
+
|
|
66
|
+
var _pageBlockEntity = require("./definitions/pageBlockEntity");
|
|
67
|
+
|
|
68
|
+
var _fields6 = require("./operations/pageBlock/fields");
|
|
69
|
+
|
|
70
|
+
var _pageBlock = require("./operations/pageBlock");
|
|
71
|
+
|
|
72
|
+
const createStorageOperations = params => {
|
|
73
|
+
const {
|
|
74
|
+
documentClient,
|
|
75
|
+
elasticsearch,
|
|
76
|
+
table,
|
|
77
|
+
esTable,
|
|
78
|
+
attributes,
|
|
79
|
+
plugins: userPlugins
|
|
80
|
+
} = params;
|
|
81
|
+
const tableInstance = (0, _table.createTable)({
|
|
82
|
+
table,
|
|
83
|
+
documentClient
|
|
84
|
+
});
|
|
85
|
+
const tableElasticsearchInstance = (0, _tableElasticsearch.createElasticsearchTable)({
|
|
86
|
+
table: esTable,
|
|
87
|
+
documentClient
|
|
88
|
+
});
|
|
89
|
+
const plugins = new _plugins.PluginsContainer([
|
|
90
|
+
/**
|
|
91
|
+
* User defined custom plugins.
|
|
92
|
+
*/
|
|
93
|
+
...(userPlugins || []),
|
|
94
|
+
/**
|
|
95
|
+
* DynamoDB filter plugins for the where conditions.
|
|
96
|
+
*/
|
|
97
|
+
(0, _filters.default)(),
|
|
98
|
+
/**
|
|
99
|
+
* Elasticsearch operators.
|
|
100
|
+
*/
|
|
101
|
+
(0, _operators.getElasticsearchOperators)(),
|
|
102
|
+
/**
|
|
103
|
+
* Category fields required for filtering/sorting.
|
|
104
|
+
*/
|
|
105
|
+
(0, _fields.createCategoryDynamoDbFields)(),
|
|
106
|
+
/**
|
|
107
|
+
* Menu fields required for filtering/sorting.
|
|
108
|
+
*/
|
|
109
|
+
(0, _fields2.createMenuDynamoDbFields)(),
|
|
110
|
+
/**
|
|
111
|
+
* Page element fields required for filtering/sorting.
|
|
112
|
+
*/
|
|
113
|
+
(0, _fields3.createPageElementDynamoDbFields)(),
|
|
114
|
+
/**
|
|
115
|
+
* Page fields required for filtering/sorting.
|
|
116
|
+
*/
|
|
117
|
+
(0, _fields4.createPagesElasticsearchFields)(),
|
|
118
|
+
/**
|
|
119
|
+
* Page fields required for filtering/sorting when using dynamodb.
|
|
120
|
+
*/
|
|
121
|
+
(0, _fields4.createPagesDynamoDbFields)(),
|
|
122
|
+
/**
|
|
123
|
+
* Built-in Elasticsearch index templates
|
|
124
|
+
*/
|
|
125
|
+
(0, _indices.elasticsearchIndexPlugins)(),
|
|
126
|
+
/**
|
|
127
|
+
* Block Category fields required for filtering/sorting.
|
|
128
|
+
*/
|
|
129
|
+
(0, _fields5.createBlockCategoryDynamoDbFields)(),
|
|
130
|
+
/**
|
|
131
|
+
* Page Block fields required for filtering/sorting.
|
|
132
|
+
*/
|
|
133
|
+
(0, _fields6.createPageBlockDynamoDbFields)()]);
|
|
134
|
+
const entities = {
|
|
135
|
+
settings: (0, _settingsEntity.createSettingsEntity)({
|
|
136
|
+
entityName: _types.ENTITIES.SETTINGS,
|
|
137
|
+
table: tableInstance,
|
|
138
|
+
attributes: attributes ? attributes[_types.ENTITIES.SETTINGS] : {}
|
|
139
|
+
}),
|
|
140
|
+
system: (0, _systemEntity.createSystemEntity)({
|
|
141
|
+
entityName: _types.ENTITIES.SYSTEM,
|
|
142
|
+
table: tableInstance,
|
|
143
|
+
attributes: attributes ? attributes[_types.ENTITIES.SYSTEM] : {}
|
|
144
|
+
}),
|
|
145
|
+
categories: (0, _categoryEntity.createCategoryEntity)({
|
|
146
|
+
entityName: _types.ENTITIES.CATEGORIES,
|
|
147
|
+
table: tableInstance,
|
|
148
|
+
attributes: attributes ? attributes[_types.ENTITIES.CATEGORIES] : {}
|
|
149
|
+
}),
|
|
150
|
+
menus: (0, _menuEntity.createMenuEntity)({
|
|
151
|
+
entityName: _types.ENTITIES.MENUS,
|
|
152
|
+
table: tableInstance,
|
|
153
|
+
attributes: attributes ? attributes[_types.ENTITIES.MENUS] : {}
|
|
154
|
+
}),
|
|
155
|
+
pageElements: (0, _pageElementEntity.createPageElementEntity)({
|
|
156
|
+
entityName: _types.ENTITIES.PAGE_ELEMENTS,
|
|
157
|
+
table: tableInstance,
|
|
158
|
+
attributes: attributes ? attributes[_types.ENTITIES.PAGE_ELEMENTS] : {}
|
|
159
|
+
}),
|
|
160
|
+
pages: (0, _pageEntity.createPageEntity)({
|
|
161
|
+
entityName: _types.ENTITIES.PAGES,
|
|
162
|
+
table: tableInstance,
|
|
163
|
+
attributes: attributes ? attributes[_types.ENTITIES.PAGES] : {}
|
|
164
|
+
}),
|
|
165
|
+
pagesEs: (0, _pageElasticsearchEntity.createPageElasticsearchEntity)({
|
|
166
|
+
entityName: _types.ENTITIES.PAGES_ES,
|
|
167
|
+
table: tableElasticsearchInstance,
|
|
168
|
+
attributes: attributes ? attributes[_types.ENTITIES.PAGES_ES] : {}
|
|
169
|
+
}),
|
|
170
|
+
blockCategories: (0, _blockCategoryEntity.createBlockCategoryEntity)({
|
|
171
|
+
entityName: _types.ENTITIES.BLOCK_CATEGORIES,
|
|
172
|
+
table: tableInstance,
|
|
173
|
+
attributes: attributes ? attributes[_types.ENTITIES.BLOCK_CATEGORIES] : {}
|
|
174
|
+
}),
|
|
175
|
+
pageBlocks: (0, _pageBlockEntity.createPageBlockEntity)({
|
|
176
|
+
entityName: _types.ENTITIES.PAGE_BLOCKS,
|
|
177
|
+
table: tableInstance,
|
|
178
|
+
attributes: attributes ? attributes[_types.ENTITIES.PAGE_BLOCKS] : {}
|
|
179
|
+
})
|
|
180
|
+
};
|
|
181
|
+
return {
|
|
182
|
+
init: async context => {
|
|
183
|
+
context.i18n.locales.onLocaleBeforeCreate.subscribe(async ({
|
|
184
|
+
locale,
|
|
185
|
+
tenant
|
|
186
|
+
}) => {
|
|
187
|
+
await (0, _createElasticsearchIndex.createElasticsearchIndex)({
|
|
188
|
+
elasticsearch,
|
|
189
|
+
plugins,
|
|
190
|
+
locale: locale.code,
|
|
191
|
+
tenant
|
|
192
|
+
});
|
|
193
|
+
});
|
|
194
|
+
},
|
|
195
|
+
getEntities: () => entities,
|
|
196
|
+
getTable: () => tableInstance,
|
|
197
|
+
getEsTable: () => tableElasticsearchInstance,
|
|
198
|
+
system: (0, _system.createSystemStorageOperations)({
|
|
199
|
+
entity: entities.system
|
|
200
|
+
}),
|
|
201
|
+
settings: (0, _settings.createSettingsStorageOperations)({
|
|
202
|
+
entity: entities.settings
|
|
203
|
+
}),
|
|
204
|
+
categories: (0, _category.createCategoryStorageOperations)({
|
|
205
|
+
entity: entities.categories,
|
|
206
|
+
plugins
|
|
207
|
+
}),
|
|
208
|
+
menus: (0, _menu.createMenuStorageOperations)({
|
|
209
|
+
entity: entities.menus,
|
|
210
|
+
plugins
|
|
211
|
+
}),
|
|
212
|
+
pageElements: (0, _pageElement.createPageElementStorageOperations)({
|
|
213
|
+
entity: entities.pageElements,
|
|
214
|
+
plugins
|
|
215
|
+
}),
|
|
216
|
+
pages: (0, _pages.createPageStorageOperations)({
|
|
217
|
+
entity: entities.pages,
|
|
218
|
+
esEntity: entities.pagesEs,
|
|
219
|
+
elasticsearch,
|
|
220
|
+
plugins
|
|
221
|
+
}),
|
|
222
|
+
blockCategories: (0, _blockCategory.createBlockCategoryStorageOperations)({
|
|
223
|
+
entity: entities.blockCategories,
|
|
224
|
+
plugins
|
|
225
|
+
}),
|
|
226
|
+
pageBlocks: (0, _pageBlock.createPageBlockStorageOperations)({
|
|
227
|
+
entity: entities.pageBlocks,
|
|
228
|
+
plugins
|
|
229
|
+
})
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
exports.createStorageOperations = createStorageOperations;
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createStorageOperations","params","documentClient","elasticsearch","table","esTable","attributes","plugins","userPlugins","tableInstance","createTable","tableElasticsearchInstance","createElasticsearchTable","PluginsContainer","dynamoDbValueFilters","getElasticsearchOperators","createCategoryDynamoDbFields","createMenuDynamoDbFields","createPageElementDynamoDbFields","createPagesElasticsearchFields","createPagesDynamoDbFields","elasticsearchIndexPlugins","createBlockCategoryDynamoDbFields","createPageBlockDynamoDbFields","entities","settings","createSettingsEntity","entityName","ENTITIES","SETTINGS","system","createSystemEntity","SYSTEM","categories","createCategoryEntity","CATEGORIES","menus","createMenuEntity","MENUS","pageElements","createPageElementEntity","PAGE_ELEMENTS","pages","createPageEntity","PAGES","pagesEs","createPageElasticsearchEntity","PAGES_ES","blockCategories","createBlockCategoryEntity","BLOCK_CATEGORIES","pageBlocks","createPageBlockEntity","PAGE_BLOCKS","init","context","i18n","locales","onLocaleBeforeCreate","subscribe","locale","tenant","createElasticsearchIndex","code","getEntities","getTable","getEsTable","createSystemStorageOperations","entity","createSettingsStorageOperations","createCategoryStorageOperations","createMenuStorageOperations","createPageElementStorageOperations","createPageStorageOperations","esEntity","createBlockCategoryStorageOperations","createPageBlockStorageOperations"],"sources":["index.ts"],"sourcesContent":["import dynamoDbValueFilters from \"@webiny/db-dynamodb/plugins/filters\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { getElasticsearchOperators } from \"@webiny/api-elasticsearch/operators\";\n\nimport { ENTITIES, StorageOperationsFactory } from \"~/types\";\nimport { createTable } from \"~/definitions/table\";\nimport { createElasticsearchTable } from \"~/definitions/tableElasticsearch\";\nimport { elasticsearchIndexPlugins } from \"~/elasticsearch/indices\";\nimport { createElasticsearchIndex } from \"~/elasticsearch/createElasticsearchIndex\";\n\nimport { createCategoryEntity } from \"~/definitions/categoryEntity\";\nimport { createCategoryDynamoDbFields } from \"~/operations/category/fields\";\nimport { createCategoryStorageOperations } from \"~/operations/category\";\n\nimport { createMenuEntity } from \"~/definitions/menuEntity\";\nimport { createMenuDynamoDbFields } from \"~/operations/menu/fields\";\nimport { createMenuStorageOperations } from \"~/operations/menu\";\n\nimport { createPageElementEntity } from \"~/definitions/pageElementEntity\";\nimport { createPageElementDynamoDbFields } from \"~/operations/pageElement/fields\";\nimport { createPageElementStorageOperations } from \"~/operations/pageElement\";\n\nimport { createSettingsEntity } from \"~/definitions/settingsEntity\";\nimport { createSettingsStorageOperations } from \"~/operations/settings\";\n\nimport { createSystemEntity } from \"~/definitions/systemEntity\";\nimport { createSystemStorageOperations } from \"~/operations/system\";\n\nimport { createPageEntity } from \"~/definitions/pageEntity\";\nimport {\n createPagesElasticsearchFields,\n createPagesDynamoDbFields\n} from \"~/operations/pages/fields\";\nimport { createPageStorageOperations } from \"~/operations/pages\";\nimport { createPageElasticsearchEntity } from \"~/definitions/pageElasticsearchEntity\";\n\nimport { createBlockCategoryEntity } from \"~/definitions/blockCategoryEntity\";\nimport { createBlockCategoryDynamoDbFields } from \"~/operations/blockCategory/fields\";\nimport { createBlockCategoryStorageOperations } from \"~/operations/blockCategory\";\n\nimport { createPageBlockEntity } from \"~/definitions/pageBlockEntity\";\nimport { createPageBlockDynamoDbFields } from \"~/operations/pageBlock/fields\";\nimport { createPageBlockStorageOperations } from \"~/operations/pageBlock\";\n\nexport const createStorageOperations: StorageOperationsFactory = params => {\n const {\n documentClient,\n elasticsearch,\n table,\n esTable,\n attributes,\n plugins: userPlugins\n } = params;\n\n const tableInstance = createTable({\n table,\n documentClient\n });\n const tableElasticsearchInstance = createElasticsearchTable({\n table: esTable,\n documentClient\n });\n\n const plugins = new PluginsContainer([\n /**\n * User defined custom plugins.\n */\n ...(userPlugins || []),\n /**\n * DynamoDB filter plugins for the where conditions.\n */\n dynamoDbValueFilters(),\n /**\n * Elasticsearch operators.\n */\n getElasticsearchOperators(),\n /**\n * Category fields required for filtering/sorting.\n */\n createCategoryDynamoDbFields(),\n /**\n * Menu fields required for filtering/sorting.\n */\n createMenuDynamoDbFields(),\n /**\n * Page element fields required for filtering/sorting.\n */\n createPageElementDynamoDbFields(),\n /**\n * Page fields required for filtering/sorting.\n */\n createPagesElasticsearchFields(),\n /**\n * Page fields required for filtering/sorting when using dynamodb.\n */\n createPagesDynamoDbFields(),\n /**\n * Built-in Elasticsearch index templates\n */\n elasticsearchIndexPlugins(),\n /**\n * Block Category fields required for filtering/sorting.\n */\n createBlockCategoryDynamoDbFields(),\n /**\n * Page Block fields required for filtering/sorting.\n */\n createPageBlockDynamoDbFields()\n ]);\n\n const entities = {\n settings: createSettingsEntity({\n entityName: ENTITIES.SETTINGS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.SETTINGS] : {}\n }),\n system: createSystemEntity({\n entityName: ENTITIES.SYSTEM,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.SYSTEM] : {}\n }),\n categories: createCategoryEntity({\n entityName: ENTITIES.CATEGORIES,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.CATEGORIES] : {}\n }),\n menus: createMenuEntity({\n entityName: ENTITIES.MENUS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.MENUS] : {}\n }),\n pageElements: createPageElementEntity({\n entityName: ENTITIES.PAGE_ELEMENTS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.PAGE_ELEMENTS] : {}\n }),\n pages: createPageEntity({\n entityName: ENTITIES.PAGES,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.PAGES] : {}\n }),\n pagesEs: createPageElasticsearchEntity({\n entityName: ENTITIES.PAGES_ES,\n table: tableElasticsearchInstance,\n attributes: attributes ? attributes[ENTITIES.PAGES_ES] : {}\n }),\n blockCategories: createBlockCategoryEntity({\n entityName: ENTITIES.BLOCK_CATEGORIES,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.BLOCK_CATEGORIES] : {}\n }),\n pageBlocks: createPageBlockEntity({\n entityName: ENTITIES.PAGE_BLOCKS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.PAGE_BLOCKS] : {}\n })\n };\n\n return {\n init: async context => {\n context.i18n.locales.onLocaleBeforeCreate.subscribe(async ({ locale, tenant }) => {\n await createElasticsearchIndex({\n elasticsearch,\n plugins,\n locale: locale.code,\n tenant\n });\n });\n },\n getEntities: () => entities,\n getTable: () => tableInstance,\n getEsTable: () => tableElasticsearchInstance,\n system: createSystemStorageOperations({\n entity: entities.system\n }),\n settings: createSettingsStorageOperations({\n entity: entities.settings\n }),\n categories: createCategoryStorageOperations({\n entity: entities.categories,\n plugins\n }),\n menus: createMenuStorageOperations({\n entity: entities.menus,\n plugins\n }),\n pageElements: createPageElementStorageOperations({\n entity: entities.pageElements,\n plugins\n }),\n pages: createPageStorageOperations({\n entity: entities.pages,\n esEntity: entities.pagesEs,\n elasticsearch,\n plugins\n }),\n blockCategories: createBlockCategoryStorageOperations({\n entity: entities.blockCategories,\n plugins\n }),\n pageBlocks: createPageBlockStorageOperations({\n entity: entities.pageBlocks,\n plugins\n })\n };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BlockCategory } from "@webiny/api-page-builder/types";
|
|
2
|
+
import { Entity } from "dynamodb-toolbox";
|
|
3
|
+
interface Params {
|
|
4
|
+
entity: Entity<any>;
|
|
5
|
+
}
|
|
6
|
+
declare type DataLoaderGetItem = Pick<BlockCategory, "slug" | "tenant" | "locale">;
|
|
7
|
+
export declare class BlockCategoryDataLoader {
|
|
8
|
+
private _getDataLoader;
|
|
9
|
+
private readonly entity;
|
|
10
|
+
constructor(params: Params);
|
|
11
|
+
getOne(item: DataLoaderGetItem): Promise<BlockCategory>;
|
|
12
|
+
getAll(items: DataLoaderGetItem[]): Promise<BlockCategory[]>;
|
|
13
|
+
clear(): void;
|
|
14
|
+
private getDataLoader;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.BlockCategoryDataLoader = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _dataloader = _interopRequireDefault(require("dataloader"));
|
|
13
|
+
|
|
14
|
+
var _batchRead = require("@webiny/db-dynamodb/utils/batchRead");
|
|
15
|
+
|
|
16
|
+
var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
|
|
17
|
+
|
|
18
|
+
var _keys = require("./keys");
|
|
19
|
+
|
|
20
|
+
class BlockCategoryDataLoader {
|
|
21
|
+
constructor(params) {
|
|
22
|
+
(0, _defineProperty2.default)(this, "_getDataLoader", undefined);
|
|
23
|
+
(0, _defineProperty2.default)(this, "entity", void 0);
|
|
24
|
+
this.entity = params.entity;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
async getOne(item) {
|
|
28
|
+
return await this.getDataLoader().load(item);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
async getAll(items) {
|
|
32
|
+
return await this.getDataLoader().loadMany(items);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
clear() {
|
|
36
|
+
this.getDataLoader().clearAll();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
getDataLoader() {
|
|
40
|
+
if (!this._getDataLoader) {
|
|
41
|
+
const cacheKeyFn = key => {
|
|
42
|
+
return `T#${key.tenant}#L#${key.locale}#${key.slug}`;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
this._getDataLoader = new _dataloader.default(async items => {
|
|
46
|
+
const batched = items.map(item => {
|
|
47
|
+
return this.entity.getBatch({
|
|
48
|
+
PK: (0, _keys.createPartitionKey)(item),
|
|
49
|
+
SK: (0, _keys.createSortKey)(item)
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
const records = await (0, _batchRead.batchReadAll)({
|
|
53
|
+
table: this.entity.table,
|
|
54
|
+
items: batched
|
|
55
|
+
});
|
|
56
|
+
const results = records.reduce((collection, result) => {
|
|
57
|
+
if (!result) {
|
|
58
|
+
return collection;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const key = cacheKeyFn(result);
|
|
62
|
+
collection[key] = (0, _cleanup.cleanupItem)(this.entity, result);
|
|
63
|
+
return collection;
|
|
64
|
+
}, {});
|
|
65
|
+
return items.map(item => {
|
|
66
|
+
const key = cacheKeyFn(item);
|
|
67
|
+
return results[key] || null;
|
|
68
|
+
});
|
|
69
|
+
}, {
|
|
70
|
+
cacheKeyFn
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return this._getDataLoader;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
exports.BlockCategoryDataLoader = BlockCategoryDataLoader;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BlockCategoryDataLoader","constructor","params","undefined","entity","getOne","item","getDataLoader","load","getAll","items","loadMany","clear","clearAll","_getDataLoader","cacheKeyFn","key","tenant","locale","slug","DataLoader","batched","map","getBatch","PK","createPartitionKey","SK","createSortKey","records","batchReadAll","table","results","reduce","collection","result","cleanupItem"],"sources":["dataLoader.ts"],"sourcesContent":["import DataLoader from \"dataloader\";\nimport { batchReadAll } from \"@webiny/db-dynamodb/utils/batchRead\";\nimport { BlockCategory } from \"@webiny/api-page-builder/types\";\nimport { cleanupItem } from \"@webiny/db-dynamodb/utils/cleanup\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { createPartitionKey, createSortKey } from \"./keys\";\n\ninterface Params {\n entity: Entity<any>;\n}\n\ntype DataLoaderGetItem = Pick<BlockCategory, \"slug\" | \"tenant\" | \"locale\">;\n\nexport class BlockCategoryDataLoader {\n private _getDataLoader: DataLoader<any, any> | undefined = undefined;\n\n private readonly entity: Entity<any>;\n\n constructor(params: Params) {\n this.entity = params.entity;\n }\n\n public async getOne(item: DataLoaderGetItem): Promise<BlockCategory> {\n return await this.getDataLoader().load(item);\n }\n\n public async getAll(items: DataLoaderGetItem[]): Promise<BlockCategory[]> {\n return await this.getDataLoader().loadMany(items);\n }\n\n public clear(): void {\n this.getDataLoader().clearAll();\n }\n\n private getDataLoader(): DataLoader<any, any> {\n if (!this._getDataLoader) {\n const cacheKeyFn = (key: DataLoaderGetItem) => {\n return `T#${key.tenant}#L#${key.locale}#${key.slug}`;\n };\n this._getDataLoader = new DataLoader(\n async items => {\n const batched = items.map(item => {\n return this.entity.getBatch({\n PK: createPartitionKey(item),\n SK: createSortKey(item)\n });\n });\n\n const records = await batchReadAll<BlockCategory>({\n table: this.entity.table,\n items: batched\n });\n\n const results = records.reduce((collection, result) => {\n if (!result) {\n return collection;\n }\n const key = cacheKeyFn(result);\n collection[key] = cleanupItem(this.entity, result) as BlockCategory;\n return collection;\n }, {} as Record<string, BlockCategory>);\n return items.map(item => {\n const key = cacheKeyFn(item);\n return results[key] || null;\n });\n },\n {\n cacheKeyFn\n }\n );\n }\n return this._getDataLoader;\n }\n}\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AAQO,MAAMA,uBAAN,CAA8B;EAKjCC,WAAW,CAACC,MAAD,EAAiB;IAAA,sDAJ+BC,SAI/B;IAAA;IACxB,KAAKC,MAAL,GAAcF,MAAM,CAACE,MAArB;EACH;;EAEkB,MAANC,MAAM,CAACC,IAAD,EAAkD;IACjE,OAAO,MAAM,KAAKC,aAAL,GAAqBC,IAArB,CAA0BF,IAA1B,CAAb;EACH;;EAEkB,MAANG,MAAM,CAACC,KAAD,EAAuD;IACtE,OAAO,MAAM,KAAKH,aAAL,GAAqBI,QAArB,CAA8BD,KAA9B,CAAb;EACH;;EAEME,KAAK,GAAS;IACjB,KAAKL,aAAL,GAAqBM,QAArB;EACH;;EAEON,aAAa,GAAyB;IAC1C,IAAI,CAAC,KAAKO,cAAV,EAA0B;MACtB,MAAMC,UAAU,GAAIC,GAAD,IAA4B;QAC3C,OAAQ,KAAIA,GAAG,CAACC,MAAO,MAAKD,GAAG,CAACE,MAAO,IAAGF,GAAG,CAACG,IAAK,EAAnD;MACH,CAFD;;MAGA,KAAKL,cAAL,GAAsB,IAAIM,mBAAJ,CAClB,MAAMV,KAAN,IAAe;QACX,MAAMW,OAAO,GAAGX,KAAK,CAACY,GAAN,CAAUhB,IAAI,IAAI;UAC9B,OAAO,KAAKF,MAAL,CAAYmB,QAAZ,CAAqB;YACxBC,EAAE,EAAE,IAAAC,wBAAA,EAAmBnB,IAAnB,CADoB;YAExBoB,EAAE,EAAE,IAAAC,mBAAA,EAAcrB,IAAd;UAFoB,CAArB,CAAP;QAIH,CALe,CAAhB;QAOA,MAAMsB,OAAO,GAAG,MAAM,IAAAC,uBAAA,EAA4B;UAC9CC,KAAK,EAAE,KAAK1B,MAAL,CAAY0B,KAD2B;UAE9CpB,KAAK,EAAEW;QAFuC,CAA5B,CAAtB;QAKA,MAAMU,OAAO,GAAGH,OAAO,CAACI,MAAR,CAAe,CAACC,UAAD,EAAaC,MAAb,KAAwB;UACnD,IAAI,CAACA,MAAL,EAAa;YACT,OAAOD,UAAP;UACH;;UACD,MAAMjB,GAAG,GAAGD,UAAU,CAACmB,MAAD,CAAtB;UACAD,UAAU,CAACjB,GAAD,CAAV,GAAkB,IAAAmB,oBAAA,EAAY,KAAK/B,MAAjB,EAAyB8B,MAAzB,CAAlB;UACA,OAAOD,UAAP;QACH,CAPe,EAOb,EAPa,CAAhB;QAQA,OAAOvB,KAAK,CAACY,GAAN,CAAUhB,IAAI,IAAI;UACrB,MAAMU,GAAG,GAAGD,UAAU,CAACT,IAAD,CAAtB;UACA,OAAOyB,OAAO,CAACf,GAAD,CAAP,IAAgB,IAAvB;QACH,CAHM,CAAP;MAIH,CA1BiB,EA2BlB;QACID;MADJ,CA3BkB,CAAtB;IA+BH;;IACD,OAAO,KAAKD,cAAZ;EACH;;AA3DgC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createBlockCategoryDynamoDbFields = void 0;
|
|
7
|
+
|
|
8
|
+
var _BlockCategoryDynamoDbElasticFieldPlugin = require("../../plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin");
|
|
9
|
+
|
|
10
|
+
const createBlockCategoryDynamoDbFields = () => {
|
|
11
|
+
return [new _BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin({
|
|
12
|
+
field: "id"
|
|
13
|
+
}), new _BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin({
|
|
14
|
+
field: "createdOn",
|
|
15
|
+
type: "date"
|
|
16
|
+
}), new _BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin({
|
|
17
|
+
field: "savedOn",
|
|
18
|
+
type: "date"
|
|
19
|
+
}), new _BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin({
|
|
20
|
+
field: "publishedOn",
|
|
21
|
+
type: "date"
|
|
22
|
+
}), new _BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin({
|
|
23
|
+
field: "createdBy",
|
|
24
|
+
path: "createdBy.id"
|
|
25
|
+
})];
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
exports.createBlockCategoryDynamoDbFields = createBlockCategoryDynamoDbFields;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createBlockCategoryDynamoDbFields","BlockCategoryDynamoDbElasticFieldPlugin","field","type","path"],"sources":["fields.ts"],"sourcesContent":["import { BlockCategoryDynamoDbElasticFieldPlugin } from \"~/plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin\";\n\nexport const createBlockCategoryDynamoDbFields = (): BlockCategoryDynamoDbElasticFieldPlugin[] => {\n return [\n new BlockCategoryDynamoDbElasticFieldPlugin({\n field: \"id\"\n }),\n new BlockCategoryDynamoDbElasticFieldPlugin({\n field: \"createdOn\",\n type: \"date\"\n }),\n new BlockCategoryDynamoDbElasticFieldPlugin({\n field: \"savedOn\",\n type: \"date\"\n }),\n new BlockCategoryDynamoDbElasticFieldPlugin({\n field: \"publishedOn\",\n type: \"date\"\n }),\n new BlockCategoryDynamoDbElasticFieldPlugin({\n field: \"createdBy\",\n path: \"createdBy.id\"\n })\n ];\n};\n"],"mappings":";;;;;;;AAAA;;AAEO,MAAMA,iCAAiC,GAAG,MAAiD;EAC9F,OAAO,CACH,IAAIC,gFAAJ,CAA4C;IACxCC,KAAK,EAAE;EADiC,CAA5C,CADG,EAIH,IAAID,gFAAJ,CAA4C;IACxCC,KAAK,EAAE,WADiC;IAExCC,IAAI,EAAE;EAFkC,CAA5C,CAJG,EAQH,IAAIF,gFAAJ,CAA4C;IACxCC,KAAK,EAAE,SADiC;IAExCC,IAAI,EAAE;EAFkC,CAA5C,CARG,EAYH,IAAIF,gFAAJ,CAA4C;IACxCC,KAAK,EAAE,aADiC;IAExCC,IAAI,EAAE;EAFkC,CAA5C,CAZG,EAgBH,IAAIF,gFAAJ,CAA4C;IACxCC,KAAK,EAAE,WADiC;IAExCE,IAAI,EAAE;EAFkC,CAA5C,CAhBG,CAAP;AAqBH,CAtBM"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BlockCategoryStorageOperations } from "@webiny/api-page-builder/types";
|
|
2
|
+
import { Entity } from "dynamodb-toolbox";
|
|
3
|
+
import { PluginsContainer } from "@webiny/plugins";
|
|
4
|
+
export interface CreateBlockCategoryStorageOperationsParams {
|
|
5
|
+
entity: Entity<any>;
|
|
6
|
+
plugins: PluginsContainer;
|
|
7
|
+
}
|
|
8
|
+
export declare const createBlockCategoryStorageOperations: ({ entity, plugins }: CreateBlockCategoryStorageOperationsParams) => BlockCategoryStorageOperations;
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createBlockCategoryStorageOperations = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
|
|
12
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
13
|
+
|
|
14
|
+
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
15
|
+
|
|
16
|
+
var _query = require("@webiny/db-dynamodb/utils/query");
|
|
17
|
+
|
|
18
|
+
var _sort = require("@webiny/db-dynamodb/utils/sort");
|
|
19
|
+
|
|
20
|
+
var _filter = require("@webiny/db-dynamodb/utils/filter");
|
|
21
|
+
|
|
22
|
+
var _dataLoader = require("./dataLoader");
|
|
23
|
+
|
|
24
|
+
var _listResponse = require("@webiny/db-dynamodb/utils/listResponse");
|
|
25
|
+
|
|
26
|
+
var _BlockCategoryDynamoDbElasticFieldPlugin = require("../../plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin");
|
|
27
|
+
|
|
28
|
+
var _keys = require("./keys");
|
|
29
|
+
|
|
30
|
+
const _excluded = ["tenant", "locale"];
|
|
31
|
+
|
|
32
|
+
const createType = () => {
|
|
33
|
+
return "pb.blockCategory";
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
const createBlockCategoryStorageOperations = ({
|
|
37
|
+
entity,
|
|
38
|
+
plugins
|
|
39
|
+
}) => {
|
|
40
|
+
const dataLoader = new _dataLoader.BlockCategoryDataLoader({
|
|
41
|
+
entity
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
const get = async params => {
|
|
45
|
+
const {
|
|
46
|
+
where
|
|
47
|
+
} = params;
|
|
48
|
+
|
|
49
|
+
try {
|
|
50
|
+
return await dataLoader.getOne(where);
|
|
51
|
+
} catch (ex) {
|
|
52
|
+
throw new _error.default(ex.message || "Could not load block category by given parameters.", ex.code || "BLOCK_CATEGORY_GET_ERROR", {
|
|
53
|
+
where
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const create = async params => {
|
|
59
|
+
const {
|
|
60
|
+
blockCategory
|
|
61
|
+
} = params;
|
|
62
|
+
const keys = {
|
|
63
|
+
PK: (0, _keys.createPartitionKey)({
|
|
64
|
+
tenant: blockCategory.tenant,
|
|
65
|
+
locale: blockCategory.locale
|
|
66
|
+
}),
|
|
67
|
+
SK: (0, _keys.createSortKey)(blockCategory)
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
try {
|
|
71
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, blockCategory), {}, {
|
|
72
|
+
TYPE: createType()
|
|
73
|
+
}, keys));
|
|
74
|
+
/**
|
|
75
|
+
* Always clear data loader cache when modifying the records.
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
dataLoader.clear();
|
|
79
|
+
return blockCategory;
|
|
80
|
+
} catch (ex) {
|
|
81
|
+
throw new _error.default(ex.message || "Could not create block category.", ex.code || "BLOCK_CATEGORY_CREATE_ERROR", {
|
|
82
|
+
keys
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
const update = async params => {
|
|
88
|
+
const {
|
|
89
|
+
original,
|
|
90
|
+
blockCategory
|
|
91
|
+
} = params;
|
|
92
|
+
const keys = {
|
|
93
|
+
PK: (0, _keys.createPartitionKey)({
|
|
94
|
+
tenant: original.tenant,
|
|
95
|
+
locale: original.locale
|
|
96
|
+
}),
|
|
97
|
+
SK: (0, _keys.createSortKey)(blockCategory)
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
try {
|
|
101
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, blockCategory), {}, {
|
|
102
|
+
TYPE: createType()
|
|
103
|
+
}, keys));
|
|
104
|
+
/**
|
|
105
|
+
* Always clear data loader cache when modifying the records.
|
|
106
|
+
*/
|
|
107
|
+
|
|
108
|
+
dataLoader.clear();
|
|
109
|
+
return blockCategory;
|
|
110
|
+
} catch (ex) {
|
|
111
|
+
throw new _error.default(ex.message || "Could not update block category.", ex.code || "BLOCK_CATEGORY_UPDATE_ERROR", {
|
|
112
|
+
keys,
|
|
113
|
+
original,
|
|
114
|
+
category: blockCategory
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
const deleteBlockCategory = async params => {
|
|
120
|
+
const {
|
|
121
|
+
blockCategory
|
|
122
|
+
} = params;
|
|
123
|
+
const keys = {
|
|
124
|
+
PK: (0, _keys.createPartitionKey)({
|
|
125
|
+
tenant: blockCategory.tenant,
|
|
126
|
+
locale: blockCategory.locale
|
|
127
|
+
}),
|
|
128
|
+
SK: (0, _keys.createSortKey)(blockCategory)
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
try {
|
|
132
|
+
await entity.delete((0, _objectSpread2.default)((0, _objectSpread2.default)({}, blockCategory), keys));
|
|
133
|
+
/**
|
|
134
|
+
* Always clear data loader cache when modifying the records.
|
|
135
|
+
*/
|
|
136
|
+
|
|
137
|
+
dataLoader.clear();
|
|
138
|
+
return blockCategory;
|
|
139
|
+
} catch (ex) {
|
|
140
|
+
throw new _error.default(ex.message || "Could not delete block category.", ex.code || "BLOCK_CATEGORY_DELETE_ERROR", {
|
|
141
|
+
keys,
|
|
142
|
+
blockCategory
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
const list = async params => {
|
|
148
|
+
const {
|
|
149
|
+
where,
|
|
150
|
+
sort,
|
|
151
|
+
limit
|
|
152
|
+
} = params;
|
|
153
|
+
const {
|
|
154
|
+
tenant,
|
|
155
|
+
locale
|
|
156
|
+
} = where,
|
|
157
|
+
restWhere = (0, _objectWithoutProperties2.default)(where, _excluded);
|
|
158
|
+
const queryAllParams = {
|
|
159
|
+
entity,
|
|
160
|
+
partitionKey: (0, _keys.createPartitionKey)({
|
|
161
|
+
tenant,
|
|
162
|
+
locale
|
|
163
|
+
}),
|
|
164
|
+
options: {
|
|
165
|
+
gt: " "
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
let items = [];
|
|
169
|
+
|
|
170
|
+
try {
|
|
171
|
+
items = await (0, _query.queryAll)(queryAllParams);
|
|
172
|
+
} catch (ex) {
|
|
173
|
+
throw new _error.default(ex.message || "Could not list block categories by given parameters.", ex.code || "BLOCK_CATEGORIES_LIST_ERROR", {
|
|
174
|
+
partitionKey: queryAllParams.partitionKey,
|
|
175
|
+
options: queryAllParams.options
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
const fields = plugins.byType(_BlockCategoryDynamoDbElasticFieldPlugin.BlockCategoryDynamoDbElasticFieldPlugin.type);
|
|
180
|
+
const filteredItems = (0, _filter.filterItems)({
|
|
181
|
+
plugins,
|
|
182
|
+
where: restWhere,
|
|
183
|
+
items,
|
|
184
|
+
fields
|
|
185
|
+
});
|
|
186
|
+
const sortedItems = (0, _sort.sortItems)({
|
|
187
|
+
items: filteredItems,
|
|
188
|
+
sort,
|
|
189
|
+
fields
|
|
190
|
+
});
|
|
191
|
+
return (0, _listResponse.createListResponse)({
|
|
192
|
+
items: sortedItems,
|
|
193
|
+
limit: limit || 100000,
|
|
194
|
+
totalCount: filteredItems.length,
|
|
195
|
+
after: null
|
|
196
|
+
});
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
return {
|
|
200
|
+
get,
|
|
201
|
+
create,
|
|
202
|
+
update,
|
|
203
|
+
delete: deleteBlockCategory,
|
|
204
|
+
list
|
|
205
|
+
};
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
exports.createBlockCategoryStorageOperations = createBlockCategoryStorageOperations;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createType","createBlockCategoryStorageOperations","entity","plugins","dataLoader","BlockCategoryDataLoader","get","params","where","getOne","ex","WebinyError","message","code","create","blockCategory","keys","PK","createPartitionKey","tenant","locale","SK","createSortKey","put","TYPE","clear","update","original","category","deleteBlockCategory","delete","list","sort","limit","restWhere","queryAllParams","partitionKey","options","gt","items","queryAll","fields","byType","BlockCategoryDynamoDbElasticFieldPlugin","type","filteredItems","filterItems","sortedItems","sortItems","createListResponse","totalCount","length","after"],"sources":["index.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n BlockCategory,\n BlockCategoryStorageOperations,\n BlockCategoryStorageOperationsCreateParams,\n BlockCategoryStorageOperationsDeleteParams,\n BlockCategoryStorageOperationsGetParams,\n BlockCategoryStorageOperationsListParams,\n BlockCategoryStorageOperationsUpdateParams\n} from \"@webiny/api-page-builder/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { sortItems } from \"@webiny/db-dynamodb/utils/sort\";\nimport { filterItems } from \"@webiny/db-dynamodb/utils/filter\";\nimport { BlockCategoryDataLoader } from \"./dataLoader\";\nimport { createListResponse } from \"@webiny/db-dynamodb/utils/listResponse\";\nimport { BlockCategoryDynamoDbElasticFieldPlugin } from \"~/plugins/definitions/BlockCategoryDynamoDbElasticFieldPlugin\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { createPartitionKey, createSortKey } from \"~/operations/blockCategory/keys\";\n\nconst createType = (): string => {\n return \"pb.blockCategory\";\n};\n\nexport interface CreateBlockCategoryStorageOperationsParams {\n entity: Entity<any>;\n plugins: PluginsContainer;\n}\nexport const createBlockCategoryStorageOperations = ({\n entity,\n plugins\n}: CreateBlockCategoryStorageOperationsParams): BlockCategoryStorageOperations => {\n const dataLoader = new BlockCategoryDataLoader({\n entity\n });\n\n const get = async (params: BlockCategoryStorageOperationsGetParams) => {\n const { where } = params;\n\n try {\n return await dataLoader.getOne(where);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load block category by given parameters.\",\n ex.code || \"BLOCK_CATEGORY_GET_ERROR\",\n {\n where\n }\n );\n }\n };\n\n const create = async (params: BlockCategoryStorageOperationsCreateParams) => {\n const { blockCategory } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: blockCategory.tenant,\n locale: blockCategory.locale\n }),\n SK: createSortKey(blockCategory)\n };\n\n try {\n await entity.put({\n ...blockCategory,\n TYPE: createType(),\n ...keys\n });\n /**\n * Always clear data loader cache when modifying the records.\n */\n dataLoader.clear();\n\n return blockCategory;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create block category.\",\n ex.code || \"BLOCK_CATEGORY_CREATE_ERROR\",\n {\n keys\n }\n );\n }\n };\n\n const update = async (params: BlockCategoryStorageOperationsUpdateParams) => {\n const { original, blockCategory } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: original.tenant,\n locale: original.locale\n }),\n SK: createSortKey(blockCategory)\n };\n\n try {\n await entity.put({\n ...blockCategory,\n TYPE: createType(),\n ...keys\n });\n /**\n * Always clear data loader cache when modifying the records.\n */\n dataLoader.clear();\n\n return blockCategory;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update block category.\",\n ex.code || \"BLOCK_CATEGORY_UPDATE_ERROR\",\n {\n keys,\n original,\n category: blockCategory\n }\n );\n }\n };\n\n const deleteBlockCategory = async (params: BlockCategoryStorageOperationsDeleteParams) => {\n const { blockCategory } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: blockCategory.tenant,\n locale: blockCategory.locale\n }),\n SK: createSortKey(blockCategory)\n };\n\n try {\n await entity.delete({\n ...blockCategory,\n ...keys\n });\n /**\n * Always clear data loader cache when modifying the records.\n */\n dataLoader.clear();\n\n return blockCategory;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete block category.\",\n ex.code || \"BLOCK_CATEGORY_DELETE_ERROR\",\n {\n keys,\n blockCategory\n }\n );\n }\n };\n\n const list = async (params: BlockCategoryStorageOperationsListParams) => {\n const { where, sort, limit } = params;\n\n const { tenant, locale, ...restWhere } = where;\n const queryAllParams: QueryAllParams = {\n entity,\n partitionKey: createPartitionKey({ tenant, locale }),\n options: {\n gt: \" \"\n }\n };\n\n let items: BlockCategory[] = [];\n\n try {\n items = await queryAll<BlockCategory>(queryAllParams);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list block categories by given parameters.\",\n ex.code || \"BLOCK_CATEGORIES_LIST_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n\n const fields = plugins.byType<BlockCategoryDynamoDbElasticFieldPlugin>(\n BlockCategoryDynamoDbElasticFieldPlugin.type\n );\n\n const filteredItems = filterItems<BlockCategory>({\n plugins,\n where: restWhere,\n items,\n fields\n });\n\n const sortedItems = sortItems<BlockCategory>({\n items: filteredItems,\n sort,\n fields\n });\n\n return createListResponse({\n items: sortedItems,\n limit: limit || 100000,\n totalCount: filteredItems.length,\n after: null\n });\n };\n\n return {\n get,\n create,\n update,\n delete: deleteBlockCategory,\n list\n };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface PartitionKeyParams {
|
|
2
|
+
tenant: string;
|
|
3
|
+
locale: string;
|
|
4
|
+
}
|
|
5
|
+
export declare const createPartitionKey: (params: PartitionKeyParams) => string;
|
|
6
|
+
export interface SortKeyParams {
|
|
7
|
+
slug: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const createSortKey: (params: SortKeyParams) => string;
|