@webiny/api-prerendering-service-so-ddb 0.0.0-unstable.990c3ab1b6 → 0.0.0-unstable.d16f688daf

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.
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createQueueJobEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createQueueJobEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -35,4 +39,5 @@ const createQueueJobEntity = params => {
35
39
  }, attributes || {})
36
40
  });
37
41
  };
42
+
38
43
  exports.createQueueJobEntity = createQueueJobEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createQueueJobEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","id","args"],"sources":["queueJob.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateQueueJobEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createQueueJobEntity = (params: CreateQueueJobEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n id: {\n type: \"string\"\n },\n args: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,oBAAoB,GAAIC,MAAkC,IAAkB;EACrF,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,EAAE,EAAE;QACAD,IAAI,EAAE;MACV,CAAC;MACDE,IAAI,EAAE;QACFF,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createQueueJobEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","id","args"],"sources":["queueJob.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateQueueJobEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createQueueJobEntity = (params: CreateQueueJobEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n id: {\n type: \"string\"\n },\n args: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,oBAAoB,GAAIC,MAAD,IAAqD;EACrF,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,EAAE,EAAE;QACAD,IAAI,EAAE;MADN,CAVE;MAaNE,IAAI,EAAE;QACFF,IAAI,EAAE;MADJ;IAbA,GAgBFT,UAAU,IAAI,EAhBZ;EAHI,CAAX,CAAP;AAsBH,CAxBM"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createRenderEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createRenderEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -38,4 +42,5 @@ const createRenderEntity = params => {
38
42
  }, attributes || {})
39
43
  });
40
44
  };
45
+
41
46
  exports.createRenderEntity = createRenderEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createRenderEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","GSI1_PK","GSI1_SK","data"],"sources":["render.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateRenderEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createRenderEntity = (params: CreateRenderEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,kBAAkB,GAAIC,MAAgC,IAAkB;EACjF,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,OAAO,EAAE;QACLD,IAAI,EAAE;MACV,CAAC;MACDE,OAAO,EAAE;QACLF,IAAI,EAAE;MACV,CAAC;MACDG,IAAI,EAAE;QACFH,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createRenderEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","GSI1_PK","GSI1_SK","data"],"sources":["render.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateRenderEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createRenderEntity = (params: CreateRenderEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,kBAAkB,GAAIC,MAAD,IAAmD;EACjF,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,OAAO,EAAE;QACLD,IAAI,EAAE;MADD,CAVH;MAaNE,OAAO,EAAE;QACLF,IAAI,EAAE;MADD,CAbH;MAgBNG,IAAI,EAAE;QACFH,IAAI,EAAE;MADJ;IAhBA,GAmBFT,UAAU,IAAI,EAnBZ;EAHI,CAAX,CAAP;AAyBH,CA3BM"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createRenderEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createRenderEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -44,4 +48,5 @@ const createRenderEntity = params => {
44
48
  }, attributes || {})
45
49
  });
46
50
  };
51
+
47
52
  exports.createRenderEntity = createRenderEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createRenderEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","namespace","url","args","configuration","files"],"sources":["renderLegacy.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateRenderEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createRenderEntity = (params: CreateRenderEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n namespace: {\n type: \"string\"\n },\n url: {\n type: \"string\"\n },\n args: {\n type: \"map\"\n },\n configuration: {\n type: \"map\"\n },\n files: {\n type: \"list\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,kBAAkB,GAAIC,MAAgC,IAAkB;EACjF,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,SAAS,EAAE;QACPD,IAAI,EAAE;MACV,CAAC;MACDE,GAAG,EAAE;QACDF,IAAI,EAAE;MACV,CAAC;MACDG,IAAI,EAAE;QACFH,IAAI,EAAE;MACV,CAAC;MACDI,aAAa,EAAE;QACXJ,IAAI,EAAE;MACV,CAAC;MACDK,KAAK,EAAE;QACHL,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createRenderEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","namespace","url","args","configuration","files"],"sources":["renderLegacy.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateRenderEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createRenderEntity = (params: CreateRenderEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n namespace: {\n type: \"string\"\n },\n url: {\n type: \"string\"\n },\n args: {\n type: \"map\"\n },\n configuration: {\n type: \"map\"\n },\n files: {\n type: \"list\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,kBAAkB,GAAIC,MAAD,IAAmD;EACjF,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,SAAS,EAAE;QACPD,IAAI,EAAE;MADC,CAVL;MAaNE,GAAG,EAAE;QACDF,IAAI,EAAE;MADL,CAbC;MAgBNG,IAAI,EAAE;QACFH,IAAI,EAAE;MADJ,CAhBA;MAmBNI,aAAa,EAAE;QACXJ,IAAI,EAAE;MADK,CAnBT;MAsBNK,KAAK,EAAE;QACHL,IAAI,EAAE;MADH;IAtBD,GAyBFT,UAAU,IAAI,EAzBZ;EAHI,CAAX,CAAP;AA+BH,CAjCM"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createSettingsEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createSettingsEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -32,4 +36,5 @@ const createSettingsEntity = params => {
32
36
  }, attributes || {})
33
37
  });
34
38
  };
39
+
35
40
  exports.createSettingsEntity = createSettingsEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createSettingsEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","data"],"sources":["settings.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateSettingsEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createSettingsEntity = (params: CreateSettingsEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,oBAAoB,GAAIC,MAAkC,IAAkB;EACrF,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,IAAI,EAAE;QACFD,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createSettingsEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","data"],"sources":["settings.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\nexport interface CreateSettingsEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createSettingsEntity = (params: CreateSettingsEntityParams): Entity<any> => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,oBAAoB,GAAIC,MAAD,IAAqD;EACrF,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,IAAI,EAAE;QACFD,IAAI,EAAE;MADJ;IAVA,GAaFT,UAAU,IAAI,EAbZ;EAHI,CAAX,CAAP;AAmBH,CArBM"}
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createTable = void 0;
7
+
7
8
  var _dynamodbToolbox = require("dynamodb-toolbox");
9
+
8
10
  const createTable = params => {
9
11
  const {
10
12
  table,
@@ -25,4 +27,5 @@ const createTable = params => {
25
27
  const config = typeof table === "function" ? table(tableConfig) : tableConfig;
26
28
  return new _dynamodbToolbox.Table(config);
27
29
  };
30
+
28
31
  exports.createTable = createTable;
@@ -1 +1 @@
1
- {"version":3,"names":["createTable","params","table","documentClient","tableConfig","name","process","env","DB_TABLE_PRERENDERING_SERVICE","DB_TABLE","partitionKey","sortKey","DocumentClient","indexes","GSI1","config","Table"],"sources":["table.ts"],"sourcesContent":["import { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport { Table } from \"dynamodb-toolbox\";\nimport { TableModifier } from \"~/types\";\nimport { TableConstructor } from \"dynamodb-toolbox/dist/classes/Table\";\n\ninterface CreateTableParams {\n table?: TableModifier;\n documentClient: DocumentClient;\n}\n\nexport const createTable = (params: CreateTableParams): Table => {\n const { table, documentClient } = params;\n\n const tableConfig: TableConstructor = {\n name: (process.env.DB_TABLE_PRERENDERING_SERVICE || process.env.DB_TABLE) as string,\n partitionKey: \"PK\",\n sortKey: \"SK\",\n DocumentClient: documentClient,\n indexes: {\n GSI1: {\n partitionKey: \"GSI1_PK\",\n sortKey: \"GSI1_SK\"\n }\n }\n };\n\n const config = typeof table === \"function\" ? table(tableConfig) : tableConfig;\n\n return new Table(config);\n};\n"],"mappings":";;;;;;AACA;AASO,MAAMA,WAAW,GAAIC,MAAyB,IAAY;EAC7D,MAAM;IAAEC,KAAK;IAAEC;EAAe,CAAC,GAAGF,MAAM;EAExC,MAAMG,WAA6B,GAAG;IAClCC,IAAI,EAAGC,OAAO,CAACC,GAAG,CAACC,6BAA6B,IAAIF,OAAO,CAACC,GAAG,CAACE,QAAmB;IACnFC,YAAY,EAAE,IAAI;IAClBC,OAAO,EAAE,IAAI;IACbC,cAAc,EAAET,cAAc;IAC9BU,OAAO,EAAE;MACLC,IAAI,EAAE;QACFJ,YAAY,EAAE,SAAS;QACvBC,OAAO,EAAE;MACb;IACJ;EACJ,CAAC;EAED,MAAMI,MAAM,GAAG,OAAOb,KAAK,KAAK,UAAU,GAAGA,KAAK,CAACE,WAAW,CAAC,GAAGA,WAAW;EAE7E,OAAO,IAAIY,sBAAK,CAACD,MAAM,CAAC;AAC5B,CAAC;AAAC"}
1
+ {"version":3,"names":["createTable","params","table","documentClient","tableConfig","name","process","env","DB_TABLE_PRERENDERING_SERVICE","DB_TABLE","partitionKey","sortKey","DocumentClient","indexes","GSI1","config","Table"],"sources":["table.ts"],"sourcesContent":["import { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport { Table } from \"dynamodb-toolbox\";\nimport { TableModifier } from \"~/types\";\nimport { TableConstructor } from \"dynamodb-toolbox/dist/classes/Table\";\n\ninterface CreateTableParams {\n table?: TableModifier;\n documentClient: DocumentClient;\n}\n\nexport const createTable = (params: CreateTableParams): Table => {\n const { table, documentClient } = params;\n\n const tableConfig: TableConstructor = {\n name: (process.env.DB_TABLE_PRERENDERING_SERVICE || process.env.DB_TABLE) as string,\n partitionKey: \"PK\",\n sortKey: \"SK\",\n DocumentClient: documentClient,\n indexes: {\n GSI1: {\n partitionKey: \"GSI1_PK\",\n sortKey: \"GSI1_SK\"\n }\n }\n };\n\n const config = typeof table === \"function\" ? table(tableConfig) : tableConfig;\n\n return new Table(config);\n};\n"],"mappings":";;;;;;;AACA;;AASO,MAAMA,WAAW,GAAIC,MAAD,IAAsC;EAC7D,MAAM;IAAEC,KAAF;IAASC;EAAT,IAA4BF,MAAlC;EAEA,MAAMG,WAA6B,GAAG;IAClCC,IAAI,EAAGC,OAAO,CAACC,GAAR,CAAYC,6BAAZ,IAA6CF,OAAO,CAACC,GAAR,CAAYE,QAD9B;IAElCC,YAAY,EAAE,IAFoB;IAGlCC,OAAO,EAAE,IAHyB;IAIlCC,cAAc,EAAET,cAJkB;IAKlCU,OAAO,EAAE;MACLC,IAAI,EAAE;QACFJ,YAAY,EAAE,SADZ;QAEFC,OAAO,EAAE;MAFP;IADD;EALyB,CAAtC;EAaA,MAAMI,MAAM,GAAG,OAAOb,KAAP,KAAiB,UAAjB,GAA8BA,KAAK,CAACE,WAAD,CAAnC,GAAmDA,WAAlE;EAEA,OAAO,IAAIY,sBAAJ,CAAUD,MAAV,CAAP;AACH,CAnBM"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createTagPathLinkEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createTagPathLinkEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -38,4 +42,5 @@ const createTagPathLinkEntity = params => {
38
42
  }, attributes || {})
39
43
  });
40
44
  };
45
+
41
46
  exports.createTagPathLinkEntity = createTagPathLinkEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createTagPathLinkEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","GSI1_PK","GSI1_SK","data"],"sources":["tagPathLink.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface CreateTagPathLinkEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createTagPathLinkEntity = (params: CreateTagPathLinkEntityParams) => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,uBAAuB,GAAIC,MAAqC,IAAK;EAC9E,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,OAAO,EAAE;QACLD,IAAI,EAAE;MACV,CAAC;MACDE,OAAO,EAAE;QACLF,IAAI,EAAE;MACV,CAAC;MACDG,IAAI,EAAE;QACFH,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createTagPathLinkEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","GSI1_PK","GSI1_SK","data"],"sources":["tagPathLink.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface CreateTagPathLinkEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createTagPathLinkEntity = (params: CreateTagPathLinkEntityParams) => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,uBAAuB,GAAIC,MAAD,IAA2C;EAC9E,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,OAAO,EAAE;QACLD,IAAI,EAAE;MADD,CAVH;MAaNE,OAAO,EAAE;QACLF,IAAI,EAAE;MADD,CAbH;MAgBNG,IAAI,EAAE;QACFH,IAAI,EAAE;MADJ;IAhBA,GAmBFT,UAAU,IAAI,EAnBZ;EAHI,CAAX,CAAP;AAyBH,CA3BM"}
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createTagUrlLinkEntity = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _dynamodbToolbox = require("dynamodb-toolbox");
13
+
10
14
  const createTagUrlLinkEntity = params => {
11
15
  const {
12
16
  entityName,
@@ -41,4 +45,5 @@ const createTagUrlLinkEntity = params => {
41
45
  }, attributes || {})
42
46
  });
43
47
  };
48
+
44
49
  exports.createTagUrlLinkEntity = createTagUrlLinkEntity;
@@ -1 +1 @@
1
- {"version":3,"names":["createTagUrlLinkEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","namespace","url","value","key"],"sources":["tagPathLinkLegacy.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface CreateTagUrlLinkEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createTagUrlLinkEntity = (params: CreateTagUrlLinkEntityParams) => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n namespace: {\n type: \"string\"\n },\n url: {\n type: \"string\"\n },\n value: {\n type: \"string\"\n },\n key: {\n type: \"string\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AASO,MAAMA,sBAAsB,GAAIC,MAAoC,IAAK;EAC5E,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAM,CAAC,GAAGH,MAAM;EAChD,OAAO,IAAII,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBE,KAAK;IACLD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,IAAI,EAAE;QACFC,IAAI,EAAE;MACV,CAAC;MACDC,SAAS,EAAE;QACPD,IAAI,EAAE;MACV,CAAC;MACDE,GAAG,EAAE;QACDF,IAAI,EAAE;MACV,CAAC;MACDG,KAAK,EAAE;QACHH,IAAI,EAAE;MACV,CAAC;MACDI,GAAG,EAAE;QACDJ,IAAI,EAAE;MACV;IAAC,GACGT,UAAU,IAAI,CAAC,CAAC;EAE5B,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["createTagUrlLinkEntity","params","entityName","attributes","table","Entity","name","PK","partitionKey","SK","sortKey","TYPE","type","namespace","url","value","key"],"sources":["tagPathLinkLegacy.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface CreateTagUrlLinkEntityParams {\n table: Table;\n entityName: string;\n attributes: Attributes;\n}\n\nexport const createTagUrlLinkEntity = (params: CreateTagUrlLinkEntityParams) => {\n const { entityName, attributes, table } = params;\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n namespace: {\n type: \"string\"\n },\n url: {\n type: \"string\"\n },\n value: {\n type: \"string\"\n },\n key: {\n type: \"string\"\n },\n ...(attributes || {})\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,sBAAsB,GAAIC,MAAD,IAA0C;EAC5E,MAAM;IAAEC,UAAF;IAAcC,UAAd;IAA0BC;EAA1B,IAAoCH,MAA1C;EACA,OAAO,IAAII,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdE,KAFc;IAGdD,UAAU;MACNI,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,IAAI,EAAE;QACFC,IAAI,EAAE;MADJ,CAPA;MAUNC,SAAS,EAAE;QACPD,IAAI,EAAE;MADC,CAVL;MAaNE,GAAG,EAAE;QACDF,IAAI,EAAE;MADL,CAbC;MAgBNG,KAAK,EAAE;QACHH,IAAI,EAAE;MADH,CAhBD;MAmBNI,GAAG,EAAE;QACDJ,IAAI,EAAE;MADL;IAnBC,GAsBFT,UAAU,IAAI,EAtBZ;EAHI,CAAX,CAAP;AA4BH,CA9BM"}
package/index.js CHANGED
@@ -1,41 +1,59 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createPrerenderingServiceStorageOperations = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _error = _interopRequireDefault(require("@webiny/error"));
13
+
10
14
  var _types = require("./types");
15
+
11
16
  var _table = require("./definitions/table");
17
+
12
18
  var _render = require("./definitions/render");
19
+
13
20
  var _settings = require("./definitions/settings");
21
+
14
22
  var _queueJob = require("./definitions/queueJob");
23
+
15
24
  var _render2 = require("./operations/render");
25
+
16
26
  var _settings2 = require("./operations/settings");
27
+
17
28
  var _queueJob2 = require("./operations/queueJob");
29
+
18
30
  var _tagPathLink = require("./definitions/tagPathLink");
31
+
19
32
  const reservedFields = ["PK", "SK", "index", "data", "TYPE", "__type", "GSI1_PK", "GSI1_SK"];
33
+
20
34
  const isReserved = name => {
21
35
  if (reservedFields.includes(name) === false) {
22
36
  return;
23
37
  }
38
+
24
39
  throw new _error.default(`Attribute name "${name}" is not allowed.`, "ATTRIBUTE_NOT_ALLOWED", {
25
40
  name
26
41
  });
27
42
  };
43
+
28
44
  const createPrerenderingServiceStorageOperations = params => {
29
45
  const {
30
46
  attributes,
31
47
  table,
32
48
  documentClient
33
49
  } = params;
50
+
34
51
  if (attributes) {
35
52
  Object.values(attributes).forEach(attrs => {
36
53
  Object.keys(attrs).forEach(isReserved);
37
54
  });
38
55
  }
56
+
39
57
  const tableInstance = (0, _table.createTable)({
40
58
  table,
41
59
  documentClient
@@ -74,4 +92,5 @@ const createPrerenderingServiceStorageOperations = params => {
74
92
  entity: entities.settings
75
93
  }));
76
94
  };
95
+
77
96
  exports.createPrerenderingServiceStorageOperations = createPrerenderingServiceStorageOperations;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["reservedFields","isReserved","name","includes","WebinyError","createPrerenderingServiceStorageOperations","params","attributes","table","documentClient","Object","values","forEach","attrs","keys","tableInstance","createTable","entities","render","createRenderEntity","entityName","ENTITIES","RENDER","settings","createSettingsEntity","SETTINGS","queueJob","createQueueJobEntity","QUEUE_JOB","tagPathLink","createTagPathLinkEntity","TAG_PATH_LINK","getTable","getEntities","createRenderStorageOperations","entity","tagPathLinkEntity","createQueueJobStorageOperations","createSettingsStorageOperations"],"sources":["index.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { ENTITIES, PrerenderingServiceFactory, PrerenderingServiceFactoryParams } from \"~/types\";\nimport { createTable } from \"~/definitions/table\";\nimport { createRenderEntity } from \"~/definitions/render\";\nimport { createSettingsEntity } from \"~/definitions/settings\";\nimport { createQueueJobEntity } from \"~/definitions/queueJob\";\nimport { createRenderStorageOperations } from \"~/operations/render\";\nimport { createSettingsStorageOperations } from \"~/operations/settings\";\nimport { createQueueJobStorageOperations } from \"~/operations/queueJob\";\nimport { createTagPathLinkEntity } from \"~/definitions/tagPathLink\";\n\nconst reservedFields = [\"PK\", \"SK\", \"index\", \"data\", \"TYPE\", \"__type\", \"GSI1_PK\", \"GSI1_SK\"];\n\nconst isReserved = (name: string): void => {\n if (reservedFields.includes(name) === false) {\n return;\n }\n throw new WebinyError(`Attribute name \"${name}\" is not allowed.`, \"ATTRIBUTE_NOT_ALLOWED\", {\n name\n });\n};\n\nexport const createPrerenderingServiceStorageOperations: PrerenderingServiceFactory = (\n params: PrerenderingServiceFactoryParams\n) => {\n const { attributes, table, documentClient } = params;\n\n if (attributes) {\n Object.values(attributes).forEach(attrs => {\n Object.keys(attrs).forEach(isReserved);\n });\n }\n\n const tableInstance = createTable({ table, documentClient });\n\n const entities = {\n render: createRenderEntity({\n entityName: ENTITIES.RENDER,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.RENDER] : {}\n }),\n settings: createSettingsEntity({\n entityName: ENTITIES.SETTINGS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.SETTINGS] : {}\n }),\n queueJob: createQueueJobEntity({\n entityName: ENTITIES.QUEUE_JOB,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.QUEUE_JOB] : {}\n }),\n tagPathLink: createTagPathLinkEntity({\n entityName: ENTITIES.TAG_PATH_LINK,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.TAG_PATH_LINK] : {}\n })\n };\n\n return {\n getTable: () => tableInstance,\n getEntities: () => entities,\n ...createRenderStorageOperations({\n entity: entities.render,\n tagPathLinkEntity: entities.tagPathLink\n }),\n ...createQueueJobStorageOperations({\n entity: entities.queueJob\n }),\n ...createSettingsStorageOperations({\n entity: entities.settings\n })\n };\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAMA,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;AAE5F,MAAMC,UAAU,GAAIC,IAAY,IAAW;EACvC,IAAIF,cAAc,CAACG,QAAQ,CAACD,IAAI,CAAC,KAAK,KAAK,EAAE;IACzC;EACJ;EACA,MAAM,IAAIE,cAAW,CAAE,mBAAkBF,IAAK,mBAAkB,EAAE,uBAAuB,EAAE;IACvFA;EACJ,CAAC,CAAC;AACN,CAAC;AAEM,MAAMG,0CAAsE,GAC/EC,MAAwC,IACvC;EACD,MAAM;IAAEC,UAAU;IAAEC,KAAK;IAAEC;EAAe,CAAC,GAAGH,MAAM;EAEpD,IAAIC,UAAU,EAAE;IACZG,MAAM,CAACC,MAAM,CAACJ,UAAU,CAAC,CAACK,OAAO,CAACC,KAAK,IAAI;MACvCH,MAAM,CAACI,IAAI,CAACD,KAAK,CAAC,CAACD,OAAO,CAACX,UAAU,CAAC;IAC1C,CAAC,CAAC;EACN;EAEA,MAAMc,aAAa,GAAG,IAAAC,kBAAW,EAAC;IAAER,KAAK;IAAEC;EAAe,CAAC,CAAC;EAE5D,MAAMQ,QAAQ,GAAG;IACbC,MAAM,EAAE,IAAAC,0BAAkB,EAAC;MACvBC,UAAU,EAAEC,eAAQ,CAACC,MAAM;MAC3Bd,KAAK,EAAEO,aAAa;MACpBR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAQ,CAACC,MAAM,CAAC,GAAG,CAAC;IAC5D,CAAC,CAAC;IACFC,QAAQ,EAAE,IAAAC,8BAAoB,EAAC;MAC3BJ,UAAU,EAAEC,eAAQ,CAACI,QAAQ;MAC7BjB,KAAK,EAAEO,aAAa;MACpBR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAQ,CAACI,QAAQ,CAAC,GAAG,CAAC;IAC9D,CAAC,CAAC;IACFC,QAAQ,EAAE,IAAAC,8BAAoB,EAAC;MAC3BP,UAAU,EAAEC,eAAQ,CAACO,SAAS;MAC9BpB,KAAK,EAAEO,aAAa;MACpBR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAQ,CAACO,SAAS,CAAC,GAAG,CAAC;IAC/D,CAAC,CAAC;IACFC,WAAW,EAAE,IAAAC,oCAAuB,EAAC;MACjCV,UAAU,EAAEC,eAAQ,CAACU,aAAa;MAClCvB,KAAK,EAAEO,aAAa;MACpBR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAQ,CAACU,aAAa,CAAC,GAAG,CAAC;IACnE,CAAC;EACL,CAAC;EAED;IACIC,QAAQ,EAAE,MAAMjB,aAAa;IAC7BkB,WAAW,EAAE,MAAMhB;EAAQ,GACxB,IAAAiB,sCAA6B,EAAC;IAC7BC,MAAM,EAAElB,QAAQ,CAACC,MAAM;IACvBkB,iBAAiB,EAAEnB,QAAQ,CAACY;EAChC,CAAC,CAAC,GACC,IAAAQ,0CAA+B,EAAC;IAC/BF,MAAM,EAAElB,QAAQ,CAACS;EACrB,CAAC,CAAC,GACC,IAAAY,0CAA+B,EAAC;IAC/BH,MAAM,EAAElB,QAAQ,CAACM;EACrB,CAAC,CAAC;AAEV,CAAC;AAAC"}
1
+ {"version":3,"names":["reservedFields","isReserved","name","includes","WebinyError","createPrerenderingServiceStorageOperations","params","attributes","table","documentClient","Object","values","forEach","attrs","keys","tableInstance","createTable","entities","render","createRenderEntity","entityName","ENTITIES","RENDER","settings","createSettingsEntity","SETTINGS","queueJob","createQueueJobEntity","QUEUE_JOB","tagPathLink","createTagPathLinkEntity","TAG_PATH_LINK","getTable","getEntities","createRenderStorageOperations","entity","tagPathLinkEntity","createQueueJobStorageOperations","createSettingsStorageOperations"],"sources":["index.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { ENTITIES, PrerenderingServiceFactory, PrerenderingServiceFactoryParams } from \"~/types\";\nimport { createTable } from \"~/definitions/table\";\nimport { createRenderEntity } from \"~/definitions/render\";\nimport { createSettingsEntity } from \"~/definitions/settings\";\nimport { createQueueJobEntity } from \"~/definitions/queueJob\";\nimport { createRenderStorageOperations } from \"~/operations/render\";\nimport { createSettingsStorageOperations } from \"~/operations/settings\";\nimport { createQueueJobStorageOperations } from \"~/operations/queueJob\";\nimport { createTagPathLinkEntity } from \"~/definitions/tagPathLink\";\n\nconst reservedFields = [\"PK\", \"SK\", \"index\", \"data\", \"TYPE\", \"__type\", \"GSI1_PK\", \"GSI1_SK\"];\n\nconst isReserved = (name: string): void => {\n if (reservedFields.includes(name) === false) {\n return;\n }\n throw new WebinyError(`Attribute name \"${name}\" is not allowed.`, \"ATTRIBUTE_NOT_ALLOWED\", {\n name\n });\n};\n\nexport const createPrerenderingServiceStorageOperations: PrerenderingServiceFactory = (\n params: PrerenderingServiceFactoryParams\n) => {\n const { attributes, table, documentClient } = params;\n\n if (attributes) {\n Object.values(attributes).forEach(attrs => {\n Object.keys(attrs).forEach(isReserved);\n });\n }\n\n const tableInstance = createTable({ table, documentClient });\n\n const entities = {\n render: createRenderEntity({\n entityName: ENTITIES.RENDER,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.RENDER] : {}\n }),\n settings: createSettingsEntity({\n entityName: ENTITIES.SETTINGS,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.SETTINGS] : {}\n }),\n queueJob: createQueueJobEntity({\n entityName: ENTITIES.QUEUE_JOB,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.QUEUE_JOB] : {}\n }),\n tagPathLink: createTagPathLinkEntity({\n entityName: ENTITIES.TAG_PATH_LINK,\n table: tableInstance,\n attributes: attributes ? attributes[ENTITIES.TAG_PATH_LINK] : {}\n })\n };\n\n return {\n getTable: () => tableInstance,\n getEntities: () => entities,\n ...createRenderStorageOperations({\n entity: entities.render,\n tagPathLinkEntity: entities.tagPathLink\n }),\n ...createQueueJobStorageOperations({\n entity: entities.queueJob\n }),\n ...createSettingsStorageOperations({\n entity: entities.settings\n })\n };\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,MAAMA,cAAc,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,OAAb,EAAsB,MAAtB,EAA8B,MAA9B,EAAsC,QAAtC,EAAgD,SAAhD,EAA2D,SAA3D,CAAvB;;AAEA,MAAMC,UAAU,GAAIC,IAAD,IAAwB;EACvC,IAAIF,cAAc,CAACG,QAAf,CAAwBD,IAAxB,MAAkC,KAAtC,EAA6C;IACzC;EACH;;EACD,MAAM,IAAIE,cAAJ,CAAiB,mBAAkBF,IAAK,mBAAxC,EAA4D,uBAA5D,EAAqF;IACvFA;EADuF,CAArF,CAAN;AAGH,CAPD;;AASO,MAAMG,0CAAsE,GAC/EC,MADkF,IAEjF;EACD,MAAM;IAAEC,UAAF;IAAcC,KAAd;IAAqBC;EAArB,IAAwCH,MAA9C;;EAEA,IAAIC,UAAJ,EAAgB;IACZG,MAAM,CAACC,MAAP,CAAcJ,UAAd,EAA0BK,OAA1B,CAAkCC,KAAK,IAAI;MACvCH,MAAM,CAACI,IAAP,CAAYD,KAAZ,EAAmBD,OAAnB,CAA2BX,UAA3B;IACH,CAFD;EAGH;;EAED,MAAMc,aAAa,GAAG,IAAAC,kBAAA,EAAY;IAAER,KAAF;IAASC;EAAT,CAAZ,CAAtB;EAEA,MAAMQ,QAAQ,GAAG;IACbC,MAAM,EAAE,IAAAC,0BAAA,EAAmB;MACvBC,UAAU,EAAEC,eAAA,CAASC,MADE;MAEvBd,KAAK,EAAEO,aAFgB;MAGvBR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAA,CAASC,MAAV,CAAb,GAAiC;IAHhC,CAAnB,CADK;IAMbC,QAAQ,EAAE,IAAAC,8BAAA,EAAqB;MAC3BJ,UAAU,EAAEC,eAAA,CAASI,QADM;MAE3BjB,KAAK,EAAEO,aAFoB;MAG3BR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAA,CAASI,QAAV,CAAb,GAAmC;IAH9B,CAArB,CANG;IAWbC,QAAQ,EAAE,IAAAC,8BAAA,EAAqB;MAC3BP,UAAU,EAAEC,eAAA,CAASO,SADM;MAE3BpB,KAAK,EAAEO,aAFoB;MAG3BR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAA,CAASO,SAAV,CAAb,GAAoC;IAH/B,CAArB,CAXG;IAgBbC,WAAW,EAAE,IAAAC,oCAAA,EAAwB;MACjCV,UAAU,EAAEC,eAAA,CAASU,aADY;MAEjCvB,KAAK,EAAEO,aAF0B;MAGjCR,UAAU,EAAEA,UAAU,GAAGA,UAAU,CAACc,eAAA,CAASU,aAAV,CAAb,GAAwC;IAH7B,CAAxB;EAhBA,CAAjB;EAuBA;IACIC,QAAQ,EAAE,MAAMjB,aADpB;IAEIkB,WAAW,EAAE,MAAMhB;EAFvB,GAGO,IAAAiB,sCAAA,EAA8B;IAC7BC,MAAM,EAAElB,QAAQ,CAACC,MADY;IAE7BkB,iBAAiB,EAAEnB,QAAQ,CAACY;EAFC,CAA9B,CAHP,GAOO,IAAAQ,0CAAA,EAAgC;IAC/BF,MAAM,EAAElB,QAAQ,CAACS;EADc,CAAhC,CAPP,GAUO,IAAAY,0CAAA,EAAgC;IAC/BH,MAAM,EAAElB,QAAQ,CAACM;EADc,CAAhC,CAVP;AAcH,CAlDM"}
@@ -1,28 +1,39 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createQueueJobStorageOperations = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _error = _interopRequireDefault(require("@webiny/error"));
13
+
10
14
  var _batchWrite = require("@webiny/db-dynamodb/utils/batchWrite");
15
+
11
16
  var _query = require("@webiny/db-dynamodb/utils/query");
17
+
12
18
  var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
19
+
13
20
  const createQueueJobStorageOperations = params => {
14
21
  const {
15
22
  entity
16
23
  } = params;
24
+
17
25
  const createQueueJobPartitionKey = () => {
18
26
  return "PS#Q#JOB";
19
27
  };
28
+
20
29
  const createQueueJobSortKey = id => {
21
30
  return id;
22
31
  };
32
+
23
33
  const createQueueJobType = () => {
24
34
  return "ps.queue.job";
25
35
  };
36
+
26
37
  const createQueueJob = async params => {
27
38
  const {
28
39
  queueJob
@@ -31,6 +42,7 @@ const createQueueJobStorageOperations = params => {
31
42
  PK: createQueueJobPartitionKey(),
32
43
  SK: createQueueJobSortKey(queueJob.id)
33
44
  };
45
+
34
46
  try {
35
47
  await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, queueJob), keys), {}, {
36
48
  TYPE: createQueueJobType()
@@ -43,6 +55,7 @@ const createQueueJobStorageOperations = params => {
43
55
  });
44
56
  }
45
57
  };
58
+
46
59
  const listQueueJobs = async () => {
47
60
  const queryAllParams = {
48
61
  entity,
@@ -51,6 +64,7 @@ const createQueueJobStorageOperations = params => {
51
64
  gte: " "
52
65
  }
53
66
  };
67
+
54
68
  try {
55
69
  const results = await (0, _query.queryAll)(queryAllParams);
56
70
  return (0, _cleanup.cleanupItems)(entity, results);
@@ -61,6 +75,7 @@ const createQueueJobStorageOperations = params => {
61
75
  });
62
76
  }
63
77
  };
78
+
64
79
  const deleteQueueJobs = async params => {
65
80
  const {
66
81
  queueJobs
@@ -71,6 +86,7 @@ const createQueueJobStorageOperations = params => {
71
86
  SK: createQueueJobSortKey(job.id)
72
87
  });
73
88
  });
89
+
74
90
  try {
75
91
  await (0, _batchWrite.batchWriteAll)({
76
92
  table: entity.table,
@@ -83,10 +99,12 @@ const createQueueJobStorageOperations = params => {
83
99
  });
84
100
  }
85
101
  };
102
+
86
103
  return {
87
104
  createQueueJob,
88
105
  deleteQueueJobs,
89
106
  listQueueJobs
90
107
  };
91
108
  };
109
+
92
110
  exports.createQueueJobStorageOperations = createQueueJobStorageOperations;
@@ -1 +1 @@
1
- {"version":3,"names":["createQueueJobStorageOperations","params","entity","createQueueJobPartitionKey","createQueueJobSortKey","id","createQueueJobType","createQueueJob","queueJob","keys","PK","SK","put","TYPE","ex","WebinyError","message","code","listQueueJobs","queryAllParams","partitionKey","options","gte","results","queryAll","cleanupItems","deleteQueueJobs","queueJobs","items","map","job","deleteBatch","batchWriteAll","table"],"sources":["queueJob.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceQueueJobStorageOperations,\n PrerenderingServiceStorageOperationsCreateQueueJobParams,\n PrerenderingServiceStorageOperationsDeleteQueueJobsParams,\n QueueJob\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { batchWriteAll } from \"@webiny/db-dynamodb/utils/batchWrite\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { cleanupItems } from \"@webiny/db-dynamodb/utils/cleanup\";\n\nexport interface CreateQueueJobStorageOperationsParams {\n entity: Entity<any>;\n}\n\nexport const createQueueJobStorageOperations = (\n params: CreateQueueJobStorageOperationsParams\n): PrerenderingServiceQueueJobStorageOperations => {\n const { entity } = params;\n\n const createQueueJobPartitionKey = (): string => {\n return \"PS#Q#JOB\";\n };\n const createQueueJobSortKey = (id: string): string => {\n return id;\n };\n\n const createQueueJobType = () => {\n return \"ps.queue.job\";\n };\n\n const createQueueJob = async (\n params: PrerenderingServiceStorageOperationsCreateQueueJobParams\n ): Promise<QueueJob> => {\n const { queueJob } = params;\n const keys = {\n PK: createQueueJobPartitionKey(),\n SK: createQueueJobSortKey(queueJob.id)\n };\n\n try {\n await entity.put({\n ...queueJob,\n ...keys,\n TYPE: createQueueJobType()\n });\n return queueJob;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create render record.\",\n ex.code || \"CREATE_RENDER_ERROR\",\n {\n keys,\n queueJob\n }\n );\n }\n };\n\n const listQueueJobs = async () => {\n const queryAllParams: QueryAllParams = {\n entity,\n partitionKey: createQueueJobPartitionKey(),\n options: {\n gte: \" \"\n }\n };\n\n try {\n const results = await queryAll<QueueJob>(queryAllParams);\n\n return cleanupItems(entity, results);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list queue jobs records.\",\n ex.code || \"LIST_QUEUE_JOBS_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n };\n\n const deleteQueueJobs = async (\n params: PrerenderingServiceStorageOperationsDeleteQueueJobsParams\n ) => {\n const { queueJobs } = params;\n\n const items = queueJobs.map(job => {\n return entity.deleteBatch({\n PK: createQueueJobPartitionKey(),\n SK: createQueueJobSortKey(job.id)\n });\n });\n\n try {\n await batchWriteAll({\n table: entity.table,\n items\n });\n return queueJobs;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete queue jobs records.\",\n ex.code || \"DELETE_QUEUE_JOBS_ERROR\",\n {\n queueJobs\n }\n );\n }\n };\n\n return {\n createQueueJob,\n deleteQueueJobs,\n listQueueJobs\n };\n};\n"],"mappings":";;;;;;;;AAAA;AAQA;AACA;AACA;AAMO,MAAMA,+BAA+B,GACxCC,MAA6C,IACE;EAC/C,MAAM;IAAEC;EAAO,CAAC,GAAGD,MAAM;EAEzB,MAAME,0BAA0B,GAAG,MAAc;IAC7C,OAAO,UAAU;EACrB,CAAC;EACD,MAAMC,qBAAqB,GAAIC,EAAU,IAAa;IAClD,OAAOA,EAAE;EACb,CAAC;EAED,MAAMC,kBAAkB,GAAG,MAAM;IAC7B,OAAO,cAAc;EACzB,CAAC;EAED,MAAMC,cAAc,GAAG,MACnBN,MAAgE,IAC5C;IACpB,MAAM;MAAEO;IAAS,CAAC,GAAGP,MAAM;IAC3B,MAAMQ,IAAI,GAAG;MACTC,EAAE,EAAEP,0BAA0B,EAAE;MAChCQ,EAAE,EAAEP,qBAAqB,CAACI,QAAQ,CAACH,EAAE;IACzC,CAAC;IAED,IAAI;MACA,MAAMH,MAAM,CAACU,GAAG,yFACTJ,QAAQ,GACRC,IAAI;QACPI,IAAI,EAAEP,kBAAkB;MAAE,GAC5B;MACF,OAAOE,QAAQ;IACnB,CAAC,CAAC,OAAOM,EAAE,EAAE;MACT,MAAM,IAAIC,cAAW,CACjBD,EAAE,CAACE,OAAO,IAAI,iCAAiC,EAC/CF,EAAE,CAACG,IAAI,IAAI,qBAAqB,EAChC;QACIR,IAAI;QACJD;MACJ,CAAC,CACJ;IACL;EACJ,CAAC;EAED,MAAMU,aAAa,GAAG,YAAY;IAC9B,MAAMC,cAA8B,GAAG;MACnCjB,MAAM;MACNkB,YAAY,EAAEjB,0BAA0B,EAAE;MAC1CkB,OAAO,EAAE;QACLC,GAAG,EAAE;MACT;IACJ,CAAC;IAED,IAAI;MACA,MAAMC,OAAO,GAAG,MAAM,IAAAC,eAAQ,EAAWL,cAAc,CAAC;MAExD,OAAO,IAAAM,qBAAY,EAACvB,MAAM,EAAEqB,OAAO,CAAC;IACxC,CAAC,CAAC,OAAOT,EAAE,EAAE;MACT,MAAM,IAAIC,cAAW,CACjBD,EAAE,CAACE,OAAO,IAAI,oCAAoC,EAClDF,EAAE,CAACG,IAAI,IAAI,uBAAuB,EAClC;QACIG,YAAY,EAAED,cAAc,CAACC,YAAY;QACzCC,OAAO,EAAEF,cAAc,CAACE;MAC5B,CAAC,CACJ;IACL;EACJ,CAAC;EAED,MAAMK,eAAe,GAAG,MACpBzB,MAAiE,IAChE;IACD,MAAM;MAAE0B;IAAU,CAAC,GAAG1B,MAAM;IAE5B,MAAM2B,KAAK,GAAGD,SAAS,CAACE,GAAG,CAACC,GAAG,IAAI;MAC/B,OAAO5B,MAAM,CAAC6B,WAAW,CAAC;QACtBrB,EAAE,EAAEP,0BAA0B,EAAE;QAChCQ,EAAE,EAAEP,qBAAqB,CAAC0B,GAAG,CAACzB,EAAE;MACpC,CAAC,CAAC;IACN,CAAC,CAAC;IAEF,IAAI;MACA,MAAM,IAAA2B,yBAAa,EAAC;QAChBC,KAAK,EAAE/B,MAAM,CAAC+B,KAAK;QACnBL;MACJ,CAAC,CAAC;MACF,OAAOD,SAAS;IACpB,CAAC,CAAC,OAAOb,EAAE,EAAE;MACT,MAAM,IAAIC,cAAW,CACjBD,EAAE,CAACE,OAAO,IAAI,sCAAsC,EACpDF,EAAE,CAACG,IAAI,IAAI,yBAAyB,EACpC;QACIU;MACJ,CAAC,CACJ;IACL;EACJ,CAAC;EAED,OAAO;IACHpB,cAAc;IACdmB,eAAe;IACfR;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createQueueJobStorageOperations","params","entity","createQueueJobPartitionKey","createQueueJobSortKey","id","createQueueJobType","createQueueJob","queueJob","keys","PK","SK","put","TYPE","ex","WebinyError","message","code","listQueueJobs","queryAllParams","partitionKey","options","gte","results","queryAll","cleanupItems","deleteQueueJobs","queueJobs","items","map","job","deleteBatch","batchWriteAll","table"],"sources":["queueJob.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceQueueJobStorageOperations,\n PrerenderingServiceStorageOperationsCreateQueueJobParams,\n PrerenderingServiceStorageOperationsDeleteQueueJobsParams,\n QueueJob\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { batchWriteAll } from \"@webiny/db-dynamodb/utils/batchWrite\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { cleanupItems } from \"@webiny/db-dynamodb/utils/cleanup\";\n\nexport interface CreateQueueJobStorageOperationsParams {\n entity: Entity<any>;\n}\n\nexport const createQueueJobStorageOperations = (\n params: CreateQueueJobStorageOperationsParams\n): PrerenderingServiceQueueJobStorageOperations => {\n const { entity } = params;\n\n const createQueueJobPartitionKey = (): string => {\n return \"PS#Q#JOB\";\n };\n const createQueueJobSortKey = (id: string): string => {\n return id;\n };\n\n const createQueueJobType = () => {\n return \"ps.queue.job\";\n };\n\n const createQueueJob = async (\n params: PrerenderingServiceStorageOperationsCreateQueueJobParams\n ): Promise<QueueJob> => {\n const { queueJob } = params;\n const keys = {\n PK: createQueueJobPartitionKey(),\n SK: createQueueJobSortKey(queueJob.id)\n };\n\n try {\n await entity.put({\n ...queueJob,\n ...keys,\n TYPE: createQueueJobType()\n });\n return queueJob;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create render record.\",\n ex.code || \"CREATE_RENDER_ERROR\",\n {\n keys,\n queueJob\n }\n );\n }\n };\n\n const listQueueJobs = async () => {\n const queryAllParams: QueryAllParams = {\n entity,\n partitionKey: createQueueJobPartitionKey(),\n options: {\n gte: \" \"\n }\n };\n\n try {\n const results = await queryAll<QueueJob>(queryAllParams);\n\n return cleanupItems(entity, results);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list queue jobs records.\",\n ex.code || \"LIST_QUEUE_JOBS_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n };\n\n const deleteQueueJobs = async (\n params: PrerenderingServiceStorageOperationsDeleteQueueJobsParams\n ) => {\n const { queueJobs } = params;\n\n const items = queueJobs.map(job => {\n return entity.deleteBatch({\n PK: createQueueJobPartitionKey(),\n SK: createQueueJobSortKey(job.id)\n });\n });\n\n try {\n await batchWriteAll({\n table: entity.table,\n items\n });\n return queueJobs;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete queue jobs records.\",\n ex.code || \"DELETE_QUEUE_JOBS_ERROR\",\n {\n queueJobs\n }\n );\n }\n };\n\n return {\n createQueueJob,\n deleteQueueJobs,\n listQueueJobs\n };\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AAQA;;AACA;;AACA;;AAMO,MAAMA,+BAA+B,GACxCC,MAD2C,IAEI;EAC/C,MAAM;IAAEC;EAAF,IAAaD,MAAnB;;EAEA,MAAME,0BAA0B,GAAG,MAAc;IAC7C,OAAO,UAAP;EACH,CAFD;;EAGA,MAAMC,qBAAqB,GAAIC,EAAD,IAAwB;IAClD,OAAOA,EAAP;EACH,CAFD;;EAIA,MAAMC,kBAAkB,GAAG,MAAM;IAC7B,OAAO,cAAP;EACH,CAFD;;EAIA,MAAMC,cAAc,GAAG,MACnBN,MADmB,IAEC;IACpB,MAAM;MAAEO;IAAF,IAAeP,MAArB;IACA,MAAMQ,IAAI,GAAG;MACTC,EAAE,EAAEP,0BAA0B,EADrB;MAETQ,EAAE,EAAEP,qBAAqB,CAACI,QAAQ,CAACH,EAAV;IAFhB,CAAb;;IAKA,IAAI;MACA,MAAMH,MAAM,CAACU,GAAP,yFACCJ,QADD,GAECC,IAFD;QAGFI,IAAI,EAAEP,kBAAkB;MAHtB,GAAN;MAKA,OAAOE,QAAP;IACH,CAPD,CAOE,OAAOM,EAAP,EAAW;MACT,MAAM,IAAIC,cAAJ,CACFD,EAAE,CAACE,OAAH,IAAc,iCADZ,EAEFF,EAAE,CAACG,IAAH,IAAW,qBAFT,EAGF;QACIR,IADJ;QAEID;MAFJ,CAHE,CAAN;IAQH;EACJ,CA1BD;;EA4BA,MAAMU,aAAa,GAAG,YAAY;IAC9B,MAAMC,cAA8B,GAAG;MACnCjB,MADmC;MAEnCkB,YAAY,EAAEjB,0BAA0B,EAFL;MAGnCkB,OAAO,EAAE;QACLC,GAAG,EAAE;MADA;IAH0B,CAAvC;;IAQA,IAAI;MACA,MAAMC,OAAO,GAAG,MAAM,IAAAC,eAAA,EAAmBL,cAAnB,CAAtB;MAEA,OAAO,IAAAM,qBAAA,EAAavB,MAAb,EAAqBqB,OAArB,CAAP;IACH,CAJD,CAIE,OAAOT,EAAP,EAAW;MACT,MAAM,IAAIC,cAAJ,CACFD,EAAE,CAACE,OAAH,IAAc,oCADZ,EAEFF,EAAE,CAACG,IAAH,IAAW,uBAFT,EAGF;QACIG,YAAY,EAAED,cAAc,CAACC,YADjC;QAEIC,OAAO,EAAEF,cAAc,CAACE;MAF5B,CAHE,CAAN;IAQH;EACJ,CAvBD;;EAyBA,MAAMK,eAAe,GAAG,MACpBzB,MADoB,IAEnB;IACD,MAAM;MAAE0B;IAAF,IAAgB1B,MAAtB;IAEA,MAAM2B,KAAK,GAAGD,SAAS,CAACE,GAAV,CAAcC,GAAG,IAAI;MAC/B,OAAO5B,MAAM,CAAC6B,WAAP,CAAmB;QACtBrB,EAAE,EAAEP,0BAA0B,EADR;QAEtBQ,EAAE,EAAEP,qBAAqB,CAAC0B,GAAG,CAACzB,EAAL;MAFH,CAAnB,CAAP;IAIH,CALa,CAAd;;IAOA,IAAI;MACA,MAAM,IAAA2B,yBAAA,EAAc;QAChBC,KAAK,EAAE/B,MAAM,CAAC+B,KADE;QAEhBL;MAFgB,CAAd,CAAN;MAIA,OAAOD,SAAP;IACH,CAND,CAME,OAAOb,EAAP,EAAW;MACT,MAAM,IAAIC,cAAJ,CACFD,EAAE,CAACE,OAAH,IAAc,sCADZ,EAEFF,EAAE,CAACG,IAAH,IAAW,yBAFT,EAGF;QACIU;MADJ,CAHE,CAAN;IAOH;EACJ,CA3BD;;EA6BA,OAAO;IACHpB,cADG;IAEHmB,eAFG;IAGHR;EAHG,CAAP;AAKH,CAvGM"}
@@ -1,22 +1,32 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createRenderStorageOperations = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _error = _interopRequireDefault(require("@webiny/error"));
13
+
10
14
  var _get = require("@webiny/db-dynamodb/utils/get");
15
+
11
16
  var _query = require("@webiny/db-dynamodb/utils/query");
17
+
12
18
  var _batchRead = require("@webiny/db-dynamodb/utils/batchRead");
19
+
13
20
  var _batchWrite = require("@webiny/db-dynamodb/utils/batchWrite");
21
+
14
22
  var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
23
+
15
24
  const createRenderStorageOperations = params => {
16
25
  const {
17
26
  entity,
18
27
  tagPathLinkEntity
19
28
  } = params;
29
+
20
30
  const createRenderPartitionKey = (tenant, path) => {
21
31
  /**
22
32
  * For backwards compatibility remove the T# if it exists.
@@ -24,17 +34,22 @@ const createRenderStorageOperations = params => {
24
34
  if (tenant.startsWith("T#")) {
25
35
  tenant = tenant.replace(/^T#/, "");
26
36
  }
37
+
27
38
  return `T#${tenant}#PS#RENDER#${path}`;
28
39
  };
40
+
29
41
  const createRenderSortKey = () => {
30
42
  return "A";
31
43
  };
44
+
32
45
  const createRenderGSI1PartitionKey = tenant => {
33
46
  return `T#${tenant}#PS#RENDER`;
34
47
  };
48
+
35
49
  const createRenderType = () => {
36
50
  return "ps.render";
37
51
  };
52
+
38
53
  const createTagPathLinkPartitionKey = params => {
39
54
  const {
40
55
  tag,
@@ -43,31 +58,40 @@ const createRenderStorageOperations = params => {
43
58
  let {
44
59
  tenant
45
60
  } = params;
61
+
46
62
  if (tenant.startsWith("T#")) {
47
63
  tenant = tenant.replace(/^T#/, "");
48
64
  }
65
+
49
66
  return `T#${tenant}#PS#TAG#${tag.key}#${tag.value}#${path}`;
50
67
  };
68
+
51
69
  const createTagPathLinkSortKey = params => {
52
70
  const {
53
71
  tag,
54
72
  path
55
73
  } = params;
56
74
  const values = [tag.value];
75
+
57
76
  if (path) {
58
77
  values.push(path);
59
78
  }
79
+
60
80
  return values.join("#");
61
81
  };
82
+
62
83
  const createTagPathLinkGSI1PartitionKey = params => {
63
84
  let {
64
85
  tenant
65
86
  } = params;
87
+
66
88
  if (tenant.startsWith("T#")) {
67
89
  tenant = tenant.replace(/^T#/, "");
68
90
  }
91
+
69
92
  return `T#${tenant}#PS#TAG`;
70
93
  };
94
+
71
95
  const createTagPathLinkGSI1SortKey = params => {
72
96
  const {
73
97
  tag,
@@ -75,9 +99,11 @@ const createRenderStorageOperations = params => {
75
99
  } = params;
76
100
  return `${tag.key}#${tag.value}#${path}`;
77
101
  };
102
+
78
103
  const createTagPathLinkType = () => {
79
104
  return "ps.tagPathLink";
80
105
  };
106
+
81
107
  const getRender = async params => {
82
108
  const {
83
109
  where
@@ -86,6 +112,7 @@ const createRenderStorageOperations = params => {
86
112
  PK: createRenderPartitionKey(where.tenant, where.path),
87
113
  SK: createRenderSortKey()
88
114
  };
115
+
89
116
  try {
90
117
  const result = await (0, _get.get)({
91
118
  entity,
@@ -100,6 +127,7 @@ const createRenderStorageOperations = params => {
100
127
  });
101
128
  }
102
129
  };
130
+
103
131
  const createRender = async params => {
104
132
  const {
105
133
  render
@@ -108,6 +136,7 @@ const createRenderStorageOperations = params => {
108
136
  PK: createRenderPartitionKey(render.tenant, render.path),
109
137
  SK: createRenderSortKey()
110
138
  };
139
+
111
140
  try {
112
141
  await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, keys), {}, {
113
142
  data: render,
@@ -123,6 +152,7 @@ const createRenderStorageOperations = params => {
123
152
  });
124
153
  }
125
154
  };
155
+
126
156
  const deleteRender = async params => {
127
157
  const {
128
158
  render
@@ -131,6 +161,7 @@ const createRenderStorageOperations = params => {
131
161
  PK: createRenderPartitionKey(render.tenant, render.path),
132
162
  SK: createRenderSortKey()
133
163
  };
164
+
134
165
  try {
135
166
  await entity.delete(keys);
136
167
  } catch (ex) {
@@ -140,6 +171,7 @@ const createRenderStorageOperations = params => {
140
171
  });
141
172
  }
142
173
  };
174
+
143
175
  const listRendersByTag = async params => {
144
176
  const {
145
177
  where
@@ -151,9 +183,11 @@ const createRenderStorageOperations = params => {
151
183
  /**
152
184
  * Possibly there is no tag.key so no need to go further
153
185
  */
186
+
154
187
  if (!tag || !tag.key) {
155
188
  return [];
156
189
  }
190
+
157
191
  const links = await listTagPathLinks({
158
192
  where: {
159
193
  tenant,
@@ -166,6 +200,7 @@ const createRenderStorageOperations = params => {
166
200
  SK: createRenderSortKey()
167
201
  });
168
202
  });
203
+
169
204
  try {
170
205
  const results = await (0, _batchRead.batchReadAll)({
171
206
  table: entity.table,
@@ -178,6 +213,7 @@ const createRenderStorageOperations = params => {
178
213
  });
179
214
  }
180
215
  };
216
+
181
217
  const listRenders = async params => {
182
218
  const {
183
219
  where
@@ -186,9 +222,11 @@ const createRenderStorageOperations = params => {
186
222
  tenant,
187
223
  tag
188
224
  } = where;
225
+
189
226
  if (tag) {
190
227
  return listRendersByTag(params);
191
228
  }
229
+
192
230
  const queryAllParams = {
193
231
  entity,
194
232
  partitionKey: createRenderGSI1PartitionKey(tenant),
@@ -197,6 +235,7 @@ const createRenderStorageOperations = params => {
197
235
  gte: " "
198
236
  }
199
237
  };
238
+
200
239
  try {
201
240
  const results = await (0, _query.queryAll)(queryAllParams);
202
241
  return (0, _cleanup.cleanupItems)(entity, results).map(item => item.data);
@@ -207,6 +246,7 @@ const createRenderStorageOperations = params => {
207
246
  });
208
247
  }
209
248
  };
249
+
210
250
  const createTagPathLinks = async params => {
211
251
  const {
212
252
  tagPathLinks
@@ -234,6 +274,7 @@ const createRenderStorageOperations = params => {
234
274
  })
235
275
  });
236
276
  });
277
+
237
278
  try {
238
279
  await (0, _batchWrite.batchWriteAll)({
239
280
  table: tagPathLinkEntity.table,
@@ -246,6 +287,7 @@ const createRenderStorageOperations = params => {
246
287
  });
247
288
  }
248
289
  };
290
+
249
291
  const deleteTagPathLinks = async params => {
250
292
  const {
251
293
  tenant,
@@ -265,6 +307,7 @@ const createRenderStorageOperations = params => {
265
307
  })
266
308
  });
267
309
  });
310
+
268
311
  try {
269
312
  await (0, _batchWrite.batchWriteAll)({
270
313
  table: tagPathLinkEntity.table,
@@ -278,6 +321,7 @@ const createRenderStorageOperations = params => {
278
321
  });
279
322
  }
280
323
  };
324
+
281
325
  const listTagPathLinks = async params => {
282
326
  const {
283
327
  where
@@ -293,16 +337,19 @@ const createRenderStorageOperations = params => {
293
337
  const options = {
294
338
  index: "GSI1"
295
339
  };
340
+
296
341
  if (tag.value) {
297
342
  options.beginsWith = `${tag.key}#${tag.value}#`;
298
343
  } else {
299
344
  options.beginsWith = `${tag.key}#`;
300
345
  }
346
+
301
347
  const queryAllParams = {
302
348
  entity: tagPathLinkEntity,
303
349
  partitionKey,
304
350
  options
305
351
  };
352
+
306
353
  try {
307
354
  const results = await (0, _query.queryAll)(queryAllParams);
308
355
  return (0, _cleanup.cleanupItems)(tagPathLinkEntity, results).map(item => item.data);
@@ -313,6 +360,7 @@ const createRenderStorageOperations = params => {
313
360
  });
314
361
  }
315
362
  };
363
+
316
364
  return {
317
365
  createRender,
318
366
  deleteRender,
@@ -323,4 +371,5 @@ const createRenderStorageOperations = params => {
323
371
  listTagPathLinks
324
372
  };
325
373
  };
374
+
326
375
  exports.createRenderStorageOperations = createRenderStorageOperations;
@@ -1 +1 @@
1
- {"version":3,"names":["createRenderStorageOperations","params","entity","tagPathLinkEntity","createRenderPartitionKey","tenant","path","startsWith","replace","createRenderSortKey","createRenderGSI1PartitionKey","createRenderType","createTagPathLinkPartitionKey","tag","key","value","createTagPathLinkSortKey","values","push","join","createTagPathLinkGSI1PartitionKey","createTagPathLinkGSI1SortKey","createTagPathLinkType","getRender","where","keys","PK","SK","result","get","dbItem","cleanupItem","data","ex","WebinyError","message","code","createRender","render","put","TYPE","GSI1_PK","GSI1_SK","deleteRender","delete","listRendersByTag","links","listTagPathLinks","items","map","link","getBatch","results","batchReadAll","table","cleanupItems","item","listRenders","queryAllParams","partitionKey","options","index","gte","queryAll","createTagPathLinks","tagPathLinks","putBatch","batchWriteAll","deleteTagPathLinks","tags","deleteBatch","beginsWith"],"sources":["render.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceRenderStorageOperations,\n PrerenderingServiceStorageOperationsCreateRenderParams,\n PrerenderingServiceStorageOperationsCreateTagPathLinksParams,\n PrerenderingServiceStorageOperationsDeleteRenderParams,\n PrerenderingServiceStorageOperationsDeleteTagPathLinksParams,\n PrerenderingServiceStorageOperationsGetRenderParams,\n PrerenderingServiceStorageOperationsListRendersParams,\n PrerenderingServiceStorageOperationsListTagPathLinksParams,\n Render,\n TagPathLink\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { get } from \"@webiny/db-dynamodb/utils/get\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { batchReadAll } from \"@webiny/db-dynamodb/utils/batchRead\";\nimport { batchWriteAll } from \"@webiny/db-dynamodb/utils/batchWrite\";\nimport { Tag } from \"@webiny/api-prerendering-service/types\";\nimport { cleanupItem, cleanupItems } from \"@webiny/db-dynamodb/utils/cleanup\";\nimport { queryOptions as DynamoDBToolboxQueryOptions } from \"dynamodb-toolbox/dist/classes/Table\";\nimport { DataContainer } from \"~/types\";\n\nexport interface CreateRenderStorageOperationsParams {\n entity: Entity<any>;\n tagPathLinkEntity: Entity<any>;\n}\n\nexport interface CreateTagPathLinkPartitionKeyParams {\n tenant: string;\n tag: Tag;\n path: string;\n}\n\nexport interface CreateTagPathLinkGSI1PartitionKeyParams {\n tenant: string;\n tag: Tag;\n}\n\nexport interface CreateTagPathLinkSortKeyParams {\n tag: Tag;\n path?: string;\n}\n\nexport const createRenderStorageOperations = (\n params: CreateRenderStorageOperationsParams\n): PrerenderingServiceRenderStorageOperations => {\n const { entity, tagPathLinkEntity } = params;\n\n const createRenderPartitionKey = (tenant: string, path: string): string => {\n /**\n * For backwards compatibility remove the T# if it exists.\n */\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#RENDER#${path}`;\n };\n\n const createRenderSortKey = (): string => {\n return \"A\";\n };\n\n const createRenderGSI1PartitionKey = (tenant: string): string => {\n return `T#${tenant}#PS#RENDER`;\n };\n\n const createRenderType = (): string => {\n return \"ps.render\";\n };\n\n const createTagPathLinkPartitionKey = (params: CreateTagPathLinkPartitionKeyParams): string => {\n const { tag, path } = params;\n let { tenant } = params;\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#TAG#${tag.key}#${tag.value}#${path}`;\n };\n\n const createTagPathLinkSortKey = (params: CreateTagPathLinkSortKeyParams): string => {\n const { tag, path } = params;\n const values = [tag.value];\n if (path) {\n values.push(path);\n }\n return values.join(\"#\");\n };\n\n const createTagPathLinkGSI1PartitionKey = (\n params: CreateTagPathLinkGSI1PartitionKeyParams\n ): string => {\n let { tenant } = params;\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#TAG`;\n };\n\n const createTagPathLinkGSI1SortKey = (params: CreateTagPathLinkSortKeyParams): string => {\n const { tag, path } = params;\n\n return `${tag.key}#${tag.value}#${path}`;\n };\n\n const createTagPathLinkType = (): string => {\n return \"ps.tagPathLink\";\n };\n\n const getRender = async (\n params: PrerenderingServiceStorageOperationsGetRenderParams\n ): Promise<Render | null> => {\n const { where } = params;\n\n const keys = {\n PK: createRenderPartitionKey(where.tenant, where.path),\n SK: createRenderSortKey()\n };\n\n try {\n const result = await get<DataContainer<Render>>({\n entity,\n keys\n });\n\n const dbItem = cleanupItem(entity, result);\n\n return dbItem ? dbItem.data : null;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not get render record by given key.\",\n ex.code || \"GET_RENDER_ERROR\",\n {\n keys,\n params\n }\n );\n }\n };\n const createRender = async (params: PrerenderingServiceStorageOperationsCreateRenderParams) => {\n const { render } = params;\n\n const keys = {\n PK: createRenderPartitionKey(render.tenant, render.path),\n SK: createRenderSortKey()\n };\n\n try {\n await entity.put({\n ...keys,\n data: render,\n TYPE: createRenderType(),\n GSI1_PK: createRenderGSI1PartitionKey(render.tenant),\n GSI1_SK: render.path\n });\n\n return render;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create render record.\",\n ex.code || \"CREATE_RENDER_ERROR\",\n {\n keys,\n render\n }\n );\n }\n };\n const deleteRender = async (\n params: PrerenderingServiceStorageOperationsDeleteRenderParams\n ): Promise<void> => {\n const { render } = params;\n\n const keys = {\n PK: createRenderPartitionKey(render.tenant, render.path),\n SK: createRenderSortKey()\n };\n\n try {\n await entity.delete(keys);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete render record.\",\n ex.code || \"DELETE_RENDER_ERROR\",\n {\n keys,\n render\n }\n );\n }\n };\n\n const listRendersByTag = async (\n params: PrerenderingServiceStorageOperationsListRendersParams\n ) => {\n const { where } = params;\n const { tenant, tag } = where;\n /**\n * Possibly there is no tag.key so no need to go further\n */\n if (!tag || !tag.key) {\n return [];\n }\n\n const links = await listTagPathLinks({\n where: {\n tenant,\n tag\n }\n });\n\n const items = links.map(link => {\n return entity.getBatch({\n PK: createRenderPartitionKey(tenant, link.path),\n SK: createRenderSortKey()\n });\n });\n try {\n const results = await batchReadAll<DataContainer<Render>>({\n table: entity.table,\n items\n });\n return cleanupItems(entity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list render records after links.\",\n ex.code || \"LIST_LINKS_RENDER_ERROR\",\n {\n links\n }\n );\n }\n };\n\n const listRenders = async (params: PrerenderingServiceStorageOperationsListRendersParams) => {\n const { where } = params;\n const { tenant, tag } = where;\n\n if (tag) {\n return listRendersByTag(params);\n }\n\n const queryAllParams: QueryAllParams = {\n entity,\n partitionKey: createRenderGSI1PartitionKey(tenant),\n options: {\n index: \"GSI1\",\n gte: \" \"\n }\n };\n\n try {\n const results = await queryAll<DataContainer<Render>>(queryAllParams);\n\n return cleanupItems(entity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list render records.\",\n ex.code || \"LIST_RENDER_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n };\n\n const createTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsCreateTagPathLinksParams\n ) => {\n const { tagPathLinks } = params;\n\n const items = tagPathLinks.map(item => {\n return tagPathLinkEntity.putBatch({\n data: item,\n TYPE: createTagPathLinkType(),\n PK: createTagPathLinkPartitionKey({\n tenant: item.tenant,\n tag: item,\n path: item.path\n }),\n SK: createTagPathLinkSortKey({\n tag: item,\n path: item.path\n }),\n GSI1_PK: createTagPathLinkGSI1PartitionKey({ tag: item, tenant: item.tenant }),\n GSI1_SK: createTagPathLinkGSI1SortKey({ tag: item, path: item.path })\n });\n });\n\n try {\n await batchWriteAll({\n table: tagPathLinkEntity.table,\n items\n });\n return tagPathLinks;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create tagPathLink records.\",\n ex.code || \"CREATE_URL_TAG_LINKS_ERROR\",\n {\n tagPathLinks\n }\n );\n }\n };\n\n const deleteTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsDeleteTagPathLinksParams\n ): Promise<void> => {\n const { tenant, tags, path } = params;\n const items = tags.map(tag => {\n return tagPathLinkEntity.deleteBatch({\n PK: createTagPathLinkPartitionKey({\n tag,\n tenant,\n path\n }),\n SK: createTagPathLinkSortKey({\n tag,\n path\n })\n });\n });\n\n try {\n await batchWriteAll({\n table: tagPathLinkEntity.table,\n items\n });\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete tagPathLink records.\",\n ex.code || \"DELETE_URL_TAG_LINKS_ERROR\",\n {\n tags,\n tenant,\n path\n }\n );\n }\n };\n\n const listTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsListTagPathLinksParams\n ) => {\n const { where } = params;\n const { tenant, tag } = where;\n\n const partitionKey = createTagPathLinkGSI1PartitionKey({\n tenant,\n tag\n });\n\n const options: DynamoDBToolboxQueryOptions = { index: \"GSI1\" };\n\n if (tag.value) {\n options.beginsWith = `${tag.key}#${tag.value}#`;\n } else {\n options.beginsWith = `${tag.key}#`;\n }\n\n const queryAllParams: QueryAllParams = {\n entity: tagPathLinkEntity,\n partitionKey,\n options\n };\n\n try {\n const results = await queryAll<DataContainer<TagPathLink>>(queryAllParams);\n\n return cleanupItems(tagPathLinkEntity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list tagPathLink records.\",\n ex.code || \"LIST_TAG_PATH_LINK_ERROR\",\n {\n partitionKey,\n options\n }\n );\n }\n };\n\n return {\n createRender,\n deleteRender,\n listRenders,\n getRender,\n createTagPathLinks,\n deleteTagPathLinks,\n listTagPathLinks\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["createRenderStorageOperations","params","entity","tagPathLinkEntity","createRenderPartitionKey","tenant","path","startsWith","replace","createRenderSortKey","createRenderGSI1PartitionKey","createRenderType","createTagPathLinkPartitionKey","tag","key","value","createTagPathLinkSortKey","values","push","join","createTagPathLinkGSI1PartitionKey","createTagPathLinkGSI1SortKey","createTagPathLinkType","getRender","where","keys","PK","SK","result","get","dbItem","cleanupItem","data","ex","WebinyError","message","code","createRender","render","put","TYPE","GSI1_PK","GSI1_SK","deleteRender","delete","listRendersByTag","links","listTagPathLinks","items","map","link","getBatch","results","batchReadAll","table","cleanupItems","item","listRenders","queryAllParams","partitionKey","options","index","gte","queryAll","createTagPathLinks","tagPathLinks","putBatch","batchWriteAll","deleteTagPathLinks","tags","deleteBatch","beginsWith"],"sources":["render.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceRenderStorageOperations,\n PrerenderingServiceStorageOperationsCreateRenderParams,\n PrerenderingServiceStorageOperationsCreateTagPathLinksParams,\n PrerenderingServiceStorageOperationsDeleteRenderParams,\n PrerenderingServiceStorageOperationsDeleteTagPathLinksParams,\n PrerenderingServiceStorageOperationsGetRenderParams,\n PrerenderingServiceStorageOperationsListRendersParams,\n PrerenderingServiceStorageOperationsListTagPathLinksParams,\n Render,\n TagPathLink\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { get } from \"@webiny/db-dynamodb/utils/get\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { batchReadAll } from \"@webiny/db-dynamodb/utils/batchRead\";\nimport { batchWriteAll } from \"@webiny/db-dynamodb/utils/batchWrite\";\nimport { Tag } from \"@webiny/api-prerendering-service/types\";\nimport { cleanupItem, cleanupItems } from \"@webiny/db-dynamodb/utils/cleanup\";\nimport { queryOptions as DynamoDBToolboxQueryOptions } from \"dynamodb-toolbox/dist/classes/Table\";\nimport { DataContainer } from \"~/types\";\n\nexport interface CreateRenderStorageOperationsParams {\n entity: Entity<any>;\n tagPathLinkEntity: Entity<any>;\n}\n\nexport interface CreateTagPathLinkPartitionKeyParams {\n tenant: string;\n tag: Tag;\n path: string;\n}\n\nexport interface CreateTagPathLinkGSI1PartitionKeyParams {\n tenant: string;\n tag: Tag;\n}\n\nexport interface CreateTagPathLinkSortKeyParams {\n tag: Tag;\n path?: string;\n}\n\nexport const createRenderStorageOperations = (\n params: CreateRenderStorageOperationsParams\n): PrerenderingServiceRenderStorageOperations => {\n const { entity, tagPathLinkEntity } = params;\n\n const createRenderPartitionKey = (tenant: string, path: string): string => {\n /**\n * For backwards compatibility remove the T# if it exists.\n */\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#RENDER#${path}`;\n };\n\n const createRenderSortKey = (): string => {\n return \"A\";\n };\n\n const createRenderGSI1PartitionKey = (tenant: string): string => {\n return `T#${tenant}#PS#RENDER`;\n };\n\n const createRenderType = (): string => {\n return \"ps.render\";\n };\n\n const createTagPathLinkPartitionKey = (params: CreateTagPathLinkPartitionKeyParams): string => {\n const { tag, path } = params;\n let { tenant } = params;\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#TAG#${tag.key}#${tag.value}#${path}`;\n };\n\n const createTagPathLinkSortKey = (params: CreateTagPathLinkSortKeyParams): string => {\n const { tag, path } = params;\n const values = [tag.value];\n if (path) {\n values.push(path);\n }\n return values.join(\"#\");\n };\n\n const createTagPathLinkGSI1PartitionKey = (\n params: CreateTagPathLinkGSI1PartitionKeyParams\n ): string => {\n let { tenant } = params;\n if (tenant.startsWith(\"T#\")) {\n tenant = tenant.replace(/^T#/, \"\");\n }\n return `T#${tenant}#PS#TAG`;\n };\n\n const createTagPathLinkGSI1SortKey = (params: CreateTagPathLinkSortKeyParams): string => {\n const { tag, path } = params;\n\n return `${tag.key}#${tag.value}#${path}`;\n };\n\n const createTagPathLinkType = (): string => {\n return \"ps.tagPathLink\";\n };\n\n const getRender = async (\n params: PrerenderingServiceStorageOperationsGetRenderParams\n ): Promise<Render | null> => {\n const { where } = params;\n\n const keys = {\n PK: createRenderPartitionKey(where.tenant, where.path),\n SK: createRenderSortKey()\n };\n\n try {\n const result = await get<DataContainer<Render>>({\n entity,\n keys\n });\n\n const dbItem = cleanupItem(entity, result);\n\n return dbItem ? dbItem.data : null;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not get render record by given key.\",\n ex.code || \"GET_RENDER_ERROR\",\n {\n keys,\n params\n }\n );\n }\n };\n const createRender = async (params: PrerenderingServiceStorageOperationsCreateRenderParams) => {\n const { render } = params;\n\n const keys = {\n PK: createRenderPartitionKey(render.tenant, render.path),\n SK: createRenderSortKey()\n };\n\n try {\n await entity.put({\n ...keys,\n data: render,\n TYPE: createRenderType(),\n GSI1_PK: createRenderGSI1PartitionKey(render.tenant),\n GSI1_SK: render.path\n });\n\n return render;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create render record.\",\n ex.code || \"CREATE_RENDER_ERROR\",\n {\n keys,\n render\n }\n );\n }\n };\n const deleteRender = async (\n params: PrerenderingServiceStorageOperationsDeleteRenderParams\n ): Promise<void> => {\n const { render } = params;\n\n const keys = {\n PK: createRenderPartitionKey(render.tenant, render.path),\n SK: createRenderSortKey()\n };\n\n try {\n await entity.delete(keys);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete render record.\",\n ex.code || \"DELETE_RENDER_ERROR\",\n {\n keys,\n render\n }\n );\n }\n };\n\n const listRendersByTag = async (\n params: PrerenderingServiceStorageOperationsListRendersParams\n ) => {\n const { where } = params;\n const { tenant, tag } = where;\n /**\n * Possibly there is no tag.key so no need to go further\n */\n if (!tag || !tag.key) {\n return [];\n }\n\n const links = await listTagPathLinks({\n where: {\n tenant,\n tag\n }\n });\n\n const items = links.map(link => {\n return entity.getBatch({\n PK: createRenderPartitionKey(tenant, link.path),\n SK: createRenderSortKey()\n });\n });\n try {\n const results = await batchReadAll<DataContainer<Render>>({\n table: entity.table,\n items\n });\n return cleanupItems(entity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list render records after links.\",\n ex.code || \"LIST_LINKS_RENDER_ERROR\",\n {\n links\n }\n );\n }\n };\n\n const listRenders = async (params: PrerenderingServiceStorageOperationsListRendersParams) => {\n const { where } = params;\n const { tenant, tag } = where;\n\n if (tag) {\n return listRendersByTag(params);\n }\n\n const queryAllParams: QueryAllParams = {\n entity,\n partitionKey: createRenderGSI1PartitionKey(tenant),\n options: {\n index: \"GSI1\",\n gte: \" \"\n }\n };\n\n try {\n const results = await queryAll<DataContainer<Render>>(queryAllParams);\n\n return cleanupItems(entity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list render records.\",\n ex.code || \"LIST_RENDER_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n };\n\n const createTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsCreateTagPathLinksParams\n ) => {\n const { tagPathLinks } = params;\n\n const items = tagPathLinks.map(item => {\n return tagPathLinkEntity.putBatch({\n data: item,\n TYPE: createTagPathLinkType(),\n PK: createTagPathLinkPartitionKey({\n tenant: item.tenant,\n tag: item,\n path: item.path\n }),\n SK: createTagPathLinkSortKey({\n tag: item,\n path: item.path\n }),\n GSI1_PK: createTagPathLinkGSI1PartitionKey({ tag: item, tenant: item.tenant }),\n GSI1_SK: createTagPathLinkGSI1SortKey({ tag: item, path: item.path })\n });\n });\n\n try {\n await batchWriteAll({\n table: tagPathLinkEntity.table,\n items\n });\n return tagPathLinks;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create tagPathLink records.\",\n ex.code || \"CREATE_URL_TAG_LINKS_ERROR\",\n {\n tagPathLinks\n }\n );\n }\n };\n\n const deleteTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsDeleteTagPathLinksParams\n ): Promise<void> => {\n const { tenant, tags, path } = params;\n const items = tags.map(tag => {\n return tagPathLinkEntity.deleteBatch({\n PK: createTagPathLinkPartitionKey({\n tag,\n tenant,\n path\n }),\n SK: createTagPathLinkSortKey({\n tag,\n path\n })\n });\n });\n\n try {\n await batchWriteAll({\n table: tagPathLinkEntity.table,\n items\n });\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete tagPathLink records.\",\n ex.code || \"DELETE_URL_TAG_LINKS_ERROR\",\n {\n tags,\n tenant,\n path\n }\n );\n }\n };\n\n const listTagPathLinks = async (\n params: PrerenderingServiceStorageOperationsListTagPathLinksParams\n ) => {\n const { where } = params;\n const { tenant, tag } = where;\n\n const partitionKey = createTagPathLinkGSI1PartitionKey({\n tenant,\n tag\n });\n\n const options: DynamoDBToolboxQueryOptions = { index: \"GSI1\" };\n\n if (tag.value) {\n options.beginsWith = `${tag.key}#${tag.value}#`;\n } else {\n options.beginsWith = `${tag.key}#`;\n }\n\n const queryAllParams: QueryAllParams = {\n entity: tagPathLinkEntity,\n partitionKey,\n options\n };\n\n try {\n const results = await queryAll<DataContainer<TagPathLink>>(queryAllParams);\n\n return cleanupItems(tagPathLinkEntity, results).map(item => item.data);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list tagPathLink records.\",\n ex.code || \"LIST_TAG_PATH_LINK_ERROR\",\n {\n partitionKey,\n options\n }\n );\n }\n };\n\n return {\n createRender,\n deleteRender,\n listRenders,\n getRender,\n createTagPathLinks,\n deleteTagPathLinks,\n listTagPathLinks\n };\n};\n"],"mappings":"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"}
@@ -1,30 +1,39 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.createSettingsStorageOperations = void 0;
9
+
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+
9
12
  var _error = _interopRequireDefault(require("@webiny/error"));
13
+
10
14
  var _get = require("@webiny/db-dynamodb/utils/get");
15
+
11
16
  const createSettingsStorageOperations = params => {
12
17
  const {
13
18
  entity
14
19
  } = params;
20
+
15
21
  const getSettings = async (variant = "default") => {
16
22
  const keys = {
17
23
  PK: "PS#SETTINGS",
18
24
  SK: variant
19
25
  };
26
+
20
27
  try {
21
28
  const result = await (0, _get.get)({
22
29
  entity,
23
30
  keys
24
31
  });
32
+
25
33
  if (!result) {
26
34
  throw Error();
27
35
  }
36
+
28
37
  return result.data;
29
38
  } catch (ex) {
30
39
  throw new _error.default(ex.message || "Could not load prerendering settings!", ex.code || "GET_SETTINGS_ERROR", {
@@ -33,6 +42,7 @@ const createSettingsStorageOperations = params => {
33
42
  });
34
43
  }
35
44
  };
45
+
36
46
  const saveSettings = async params => {
37
47
  const {
38
48
  settings,
@@ -42,6 +52,7 @@ const createSettingsStorageOperations = params => {
42
52
  PK: "PS#SETTINGS",
43
53
  SK: variant
44
54
  };
55
+
45
56
  try {
46
57
  await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, keys), {}, {
47
58
  TYPE: "ps.settings",
@@ -54,9 +65,11 @@ const createSettingsStorageOperations = params => {
54
65
  });
55
66
  }
56
67
  };
68
+
57
69
  return {
58
70
  getSettings,
59
71
  saveSettings
60
72
  };
61
73
  };
74
+
62
75
  exports.createSettingsStorageOperations = createSettingsStorageOperations;
@@ -1 +1 @@
1
- {"version":3,"names":["createSettingsStorageOperations","params","entity","getSettings","variant","keys","PK","SK","result","get","Error","data","ex","WebinyError","message","code","saveSettings","settings","put","TYPE"],"sources":["settings.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceSaveSettingsParams,\n PrerenderingServiceSettingsStorageOperations,\n PrerenderingSettings\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { get } from \"@webiny/db-dynamodb/utils/get\";\n\nexport interface CreateSettingsStorageOperationsParams {\n entity: Entity<any>;\n}\n\nexport const createSettingsStorageOperations = (\n params: CreateSettingsStorageOperationsParams\n): PrerenderingServiceSettingsStorageOperations => {\n const { entity } = params;\n\n const getSettings = async (variant = \"default\"): Promise<PrerenderingSettings> => {\n const keys = {\n PK: \"PS#SETTINGS\",\n SK: variant\n };\n\n try {\n const result = await get<{ data: PrerenderingSettings }>({\n entity,\n keys\n });\n\n if (!result) {\n throw Error();\n }\n\n return result.data;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load prerendering settings!\",\n ex.code || \"GET_SETTINGS_ERROR\",\n {\n keys,\n params\n }\n );\n }\n };\n\n const saveSettings = async (params: PrerenderingServiceSaveSettingsParams) => {\n const { settings, variant = \"default\" } = params;\n const keys = {\n PK: \"PS#SETTINGS\",\n SK: variant\n };\n\n try {\n await entity.put({\n ...keys,\n TYPE: \"ps.settings\",\n data: settings\n });\n\n return settings;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not save settings.\",\n ex.code || \"SAVE_SETTINGS_ERROR\",\n {\n keys\n }\n );\n }\n };\n\n return {\n getSettings,\n saveSettings\n };\n};\n"],"mappings":";;;;;;;;AAAA;AAOA;AAMO,MAAMA,+BAA+B,GACxCC,MAA6C,IACE;EAC/C,MAAM;IAAEC;EAAO,CAAC,GAAGD,MAAM;EAEzB,MAAME,WAAW,GAAG,OAAOC,OAAO,GAAG,SAAS,KAAoC;IAC9E,MAAMC,IAAI,GAAG;MACTC,EAAE,EAAE,aAAa;MACjBC,EAAE,EAAEH;IACR,CAAC;IAED,IAAI;MACA,MAAMI,MAAM,GAAG,MAAM,IAAAC,QAAG,EAAiC;QACrDP,MAAM;QACNG;MACJ,CAAC,CAAC;MAEF,IAAI,CAACG,MAAM,EAAE;QACT,MAAME,KAAK,EAAE;MACjB;MAEA,OAAOF,MAAM,CAACG,IAAI;IACtB,CAAC,CAAC,OAAOC,EAAE,EAAE;MACT,MAAM,IAAIC,cAAW,CACjBD,EAAE,CAACE,OAAO,IAAI,uCAAuC,EACrDF,EAAE,CAACG,IAAI,IAAI,oBAAoB,EAC/B;QACIV,IAAI;QACJJ;MACJ,CAAC,CACJ;IACL;EACJ,CAAC;EAED,MAAMe,YAAY,GAAG,MAAOf,MAA6C,IAAK;IAC1E,MAAM;MAAEgB,QAAQ;MAAEb,OAAO,GAAG;IAAU,CAAC,GAAGH,MAAM;IAChD,MAAMI,IAAI,GAAG;MACTC,EAAE,EAAE,aAAa;MACjBC,EAAE,EAAEH;IACR,CAAC;IAED,IAAI;MACA,MAAMF,MAAM,CAACgB,GAAG,6DACTb,IAAI;QACPc,IAAI,EAAE,aAAa;QACnBR,IAAI,EAAEM;MAAQ,GAChB;MAEF,OAAOA,QAAQ;IACnB,CAAC,CAAC,OAAOL,EAAE,EAAE;MACT,MAAM,IAAIC,cAAW,CACjBD,EAAE,CAACE,OAAO,IAAI,0BAA0B,EACxCF,EAAE,CAACG,IAAI,IAAI,qBAAqB,EAChC;QACIV;MACJ,CAAC,CACJ;IACL;EACJ,CAAC;EAED,OAAO;IACHF,WAAW;IACXa;EACJ,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["createSettingsStorageOperations","params","entity","getSettings","variant","keys","PK","SK","result","get","Error","data","ex","WebinyError","message","code","saveSettings","settings","put","TYPE"],"sources":["settings.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n PrerenderingServiceSaveSettingsParams,\n PrerenderingServiceSettingsStorageOperations,\n PrerenderingSettings\n} from \"@webiny/api-prerendering-service/types\";\nimport { Entity } from \"dynamodb-toolbox\";\nimport { get } from \"@webiny/db-dynamodb/utils/get\";\n\nexport interface CreateSettingsStorageOperationsParams {\n entity: Entity<any>;\n}\n\nexport const createSettingsStorageOperations = (\n params: CreateSettingsStorageOperationsParams\n): PrerenderingServiceSettingsStorageOperations => {\n const { entity } = params;\n\n const getSettings = async (variant = \"default\"): Promise<PrerenderingSettings> => {\n const keys = {\n PK: \"PS#SETTINGS\",\n SK: variant\n };\n\n try {\n const result = await get<{ data: PrerenderingSettings }>({\n entity,\n keys\n });\n\n if (!result) {\n throw Error();\n }\n\n return result.data;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load prerendering settings!\",\n ex.code || \"GET_SETTINGS_ERROR\",\n {\n keys,\n params\n }\n );\n }\n };\n\n const saveSettings = async (params: PrerenderingServiceSaveSettingsParams) => {\n const { settings, variant = \"default\" } = params;\n const keys = {\n PK: \"PS#SETTINGS\",\n SK: variant\n };\n\n try {\n await entity.put({\n ...keys,\n TYPE: \"ps.settings\",\n data: settings\n });\n\n return settings;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not save settings.\",\n ex.code || \"SAVE_SETTINGS_ERROR\",\n {\n keys\n }\n );\n }\n };\n\n return {\n getSettings,\n saveSettings\n };\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AAOA;;AAMO,MAAMA,+BAA+B,GACxCC,MAD2C,IAEI;EAC/C,MAAM;IAAEC;EAAF,IAAaD,MAAnB;;EAEA,MAAME,WAAW,GAAG,OAAOC,OAAO,GAAG,SAAjB,KAA8D;IAC9E,MAAMC,IAAI,GAAG;MACTC,EAAE,EAAE,aADK;MAETC,EAAE,EAAEH;IAFK,CAAb;;IAKA,IAAI;MACA,MAAMI,MAAM,GAAG,MAAM,IAAAC,QAAA,EAAoC;QACrDP,MADqD;QAErDG;MAFqD,CAApC,CAArB;;MAKA,IAAI,CAACG,MAAL,EAAa;QACT,MAAME,KAAK,EAAX;MACH;;MAED,OAAOF,MAAM,CAACG,IAAd;IACH,CAXD,CAWE,OAAOC,EAAP,EAAW;MACT,MAAM,IAAIC,cAAJ,CACFD,EAAE,CAACE,OAAH,IAAc,uCADZ,EAEFF,EAAE,CAACG,IAAH,IAAW,oBAFT,EAGF;QACIV,IADJ;QAEIJ;MAFJ,CAHE,CAAN;IAQH;EACJ,CA3BD;;EA6BA,MAAMe,YAAY,GAAG,MAAOf,MAAP,IAAyD;IAC1E,MAAM;MAAEgB,QAAF;MAAYb,OAAO,GAAG;IAAtB,IAAoCH,MAA1C;IACA,MAAMI,IAAI,GAAG;MACTC,EAAE,EAAE,aADK;MAETC,EAAE,EAAEH;IAFK,CAAb;;IAKA,IAAI;MACA,MAAMF,MAAM,CAACgB,GAAP,6DACCb,IADD;QAEFc,IAAI,EAAE,aAFJ;QAGFR,IAAI,EAAEM;MAHJ,GAAN;MAMA,OAAOA,QAAP;IACH,CARD,CAQE,OAAOL,EAAP,EAAW;MACT,MAAM,IAAIC,cAAJ,CACFD,EAAE,CAACE,OAAH,IAAc,0BADZ,EAEFF,EAAE,CAACG,IAAH,IAAW,qBAFT,EAGF;QACIV;MADJ,CAHE,CAAN;IAOH;EACJ,CAxBD;;EA0BA,OAAO;IACHF,WADG;IAEHa;EAFG,CAAP;AAIH,CAhEM"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/api-prerendering-service-so-ddb",
3
- "version": "0.0.0-unstable.990c3ab1b6",
3
+ "version": "0.0.0-unstable.d16f688daf",
4
4
  "main": "index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -17,9 +17,9 @@
17
17
  "author": "Webiny Ltd",
18
18
  "license": "MIT",
19
19
  "dependencies": {
20
- "@babel/runtime": "7.20.1",
21
- "@webiny/api-prerendering-service": "0.0.0-unstable.990c3ab1b6",
22
- "@webiny/error": "0.0.0-unstable.990c3ab1b6",
20
+ "@babel/runtime": "7.19.0",
21
+ "@webiny/api-prerendering-service": "0.0.0-unstable.d16f688daf",
22
+ "@webiny/error": "0.0.0-unstable.d16f688daf",
23
23
  "dynamodb-toolbox": "0.3.5"
24
24
  },
25
25
  "devDependencies": {
@@ -28,11 +28,11 @@
28
28
  "@babel/plugin-proposal-export-default-from": "^7.16.0",
29
29
  "@babel/preset-env": "^7.19.4",
30
30
  "@babel/preset-typescript": "^7.18.6",
31
- "@webiny/cli": "^0.0.0-unstable.990c3ab1b6",
32
- "@webiny/db": "^0.0.0-unstable.990c3ab1b6",
33
- "@webiny/db-dynamodb": "^0.0.0-unstable.990c3ab1b6",
34
- "@webiny/handler-aws": "^0.0.0-unstable.990c3ab1b6",
35
- "@webiny/project-utils": "^0.0.0-unstable.990c3ab1b6",
31
+ "@webiny/cli": "^0.0.0-unstable.d16f688daf",
32
+ "@webiny/db": "^0.0.0-unstable.d16f688daf",
33
+ "@webiny/db-dynamodb": "^0.0.0-unstable.d16f688daf",
34
+ "@webiny/handler-aws": "^0.0.0-unstable.d16f688daf",
35
+ "@webiny/project-utils": "^0.0.0-unstable.d16f688daf",
36
36
  "jest-dynalite": "^3.3.1",
37
37
  "jest-environment-node": "^27.3.0",
38
38
  "prettier": "^2.3.2",
@@ -55,5 +55,5 @@
55
55
  ]
56
56
  }
57
57
  },
58
- "gitHead": "87e7b4d0a643f65b31d029d6bf2a81902fb940a8"
58
+ "gitHead": "d16f688daf2f36622d725e53a4dd1c0486017015"
59
59
  }
package/types.js CHANGED
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ENTITIES = void 0;
7
7
  let ENTITIES;
8
8
  exports.ENTITIES = ENTITIES;
9
+
9
10
  (function (ENTITIES) {
10
11
  ENTITIES["RENDER"] = "PrerenderingServiceRender";
11
12
  ENTITIES["SETTINGS"] = "PrerenderingServiceSettings";
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["ENTITIES"],"sources":["types.ts"],"sourcesContent":["import { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport { Table, Entity } from \"dynamodb-toolbox\";\nimport { DynamoDBTypes, TableConstructor } from \"dynamodb-toolbox/dist/classes/Table\";\nimport {\n EntityAttributeConfig,\n EntityCompositeAttributes\n} from \"dynamodb-toolbox/dist/classes/Entity\";\nimport { PrerenderingServiceStorageOperations as BasePrerenderingServiceStorageOperations } from \"@webiny/api-prerendering-service/types\";\n\nexport type AttributeDefinition = DynamoDBTypes | EntityAttributeConfig | EntityCompositeAttributes;\n\nexport type Attributes = Record<string, AttributeDefinition>;\n\nexport enum ENTITIES {\n RENDER = \"PrerenderingServiceRender\",\n SETTINGS = \"PrerenderingServiceSettings\",\n QUEUE_JOB = \"PrerenderingServiceQueueJob\",\n TAG_PATH_LINK = \"PrerenderingServiceTagPathLink\"\n}\n\nexport interface PrerenderingServiceFactoryParams {\n documentClient: DocumentClient;\n table?: TableModifier;\n attributes?: Record<ENTITIES, Attributes>;\n}\n\nexport type Entities = \"render\" | \"queueJob\" | \"tagPathLink\";\n\nexport interface PrerenderingServiceStorageOperations\n extends BasePrerenderingServiceStorageOperations {\n getTable(): Table;\n getEntities(): Record<Entities, Entity<any>>;\n}\n\nexport interface PrerenderingServiceFactory {\n (params: PrerenderingServiceFactoryParams): PrerenderingServiceStorageOperations;\n}\n\nexport interface TableModifier {\n (table: TableConstructor): TableConstructor;\n}\n\nexport interface DataContainer<T> {\n PK: string;\n SK: string;\n data: T;\n}\n"],"mappings":";;;;;;IAaYA,QAAQ;AAAA;AAAA,WAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;AAAA,GAARA,QAAQ,wBAARA,QAAQ"}
1
+ {"version":3,"names":["ENTITIES"],"sources":["types.ts"],"sourcesContent":["import { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport { Table, Entity } from \"dynamodb-toolbox\";\nimport { DynamoDBTypes, TableConstructor } from \"dynamodb-toolbox/dist/classes/Table\";\nimport {\n EntityAttributeConfig,\n EntityCompositeAttributes\n} from \"dynamodb-toolbox/dist/classes/Entity\";\nimport { PrerenderingServiceStorageOperations as BasePrerenderingServiceStorageOperations } from \"@webiny/api-prerendering-service/types\";\n\nexport type AttributeDefinition = DynamoDBTypes | EntityAttributeConfig | EntityCompositeAttributes;\n\nexport type Attributes = Record<string, AttributeDefinition>;\n\nexport enum ENTITIES {\n RENDER = \"PrerenderingServiceRender\",\n SETTINGS = \"PrerenderingServiceSettings\",\n QUEUE_JOB = \"PrerenderingServiceQueueJob\",\n TAG_PATH_LINK = \"PrerenderingServiceTagPathLink\"\n}\n\nexport interface PrerenderingServiceFactoryParams {\n documentClient: DocumentClient;\n table?: TableModifier;\n attributes?: Record<ENTITIES, Attributes>;\n}\n\nexport type Entities = \"render\" | \"queueJob\" | \"tagPathLink\";\n\nexport interface PrerenderingServiceStorageOperations\n extends BasePrerenderingServiceStorageOperations {\n getTable(): Table;\n getEntities(): Record<Entities, Entity<any>>;\n}\n\nexport interface PrerenderingServiceFactory {\n (params: PrerenderingServiceFactoryParams): PrerenderingServiceStorageOperations;\n}\n\nexport interface TableModifier {\n (table: TableConstructor): TableConstructor;\n}\n\nexport interface DataContainer<T> {\n PK: string;\n SK: string;\n data: T;\n}\n"],"mappings":";;;;;;IAaYA,Q;;;WAAAA,Q;EAAAA,Q;EAAAA,Q;EAAAA,Q;EAAAA,Q;GAAAA,Q,wBAAAA,Q"}