@hot-updater/aws 1.0.0-rc.0 → 1.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/iac/index.cjs +16 -16
- package/dist/iac/index.mjs +16 -16
- package/dist/index.cjs +15 -15
- package/dist/index.mjs +15 -15
- package/dist/lambda/index.cjs +311 -311
- package/package.json +6 -6
package/dist/iac/index.cjs
CHANGED
|
@@ -7425,7 +7425,7 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7425
7425
|
const originalApiKeys = /* @__PURE__ */ new Map();
|
|
7426
7426
|
const apiKeys = /* @__PURE__ */ new Map();
|
|
7427
7427
|
const apiKeyHashes = /* @__PURE__ */ new Map();
|
|
7428
|
-
const
|
|
7428
|
+
const insights = /* @__PURE__ */ new Map();
|
|
7429
7429
|
const rememberApiKey = (value) => {
|
|
7430
7430
|
if (value === null || apiKeys.has(value.row.id)) return;
|
|
7431
7431
|
originalApiKeys.set(value.row.id, value);
|
|
@@ -7548,10 +7548,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7548
7548
|
patches.set(change.row.id, change.row);
|
|
7549
7549
|
} else for (const [id, patch] of patches) if (patch.bundle_id === change.where.bundleId) patches.delete(id);
|
|
7550
7550
|
break;
|
|
7551
|
-
case "
|
|
7552
|
-
const key =
|
|
7553
|
-
if (
|
|
7554
|
-
|
|
7551
|
+
case "insights": {
|
|
7552
|
+
const key = insightsSortKey(change.row);
|
|
7553
|
+
if (insights.has(key)) throw new DynamoDBCommitStateError(`Insights event "${change.row.id}" is duplicated`);
|
|
7554
|
+
insights.set(key, change.row);
|
|
7555
7555
|
break;
|
|
7556
7556
|
}
|
|
7557
7557
|
case "apiKeys":
|
|
@@ -7740,10 +7740,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7740
7740
|
bundle_patches: patches.size - originalPatches.size
|
|
7741
7741
|
});
|
|
7742
7742
|
if (counter !== void 0) actions.push(counter);
|
|
7743
|
-
for (const [key, row] of
|
|
7743
|
+
for (const [key, row] of insights) actions.push({ Put: {
|
|
7744
7744
|
TableName: store.tableName,
|
|
7745
7745
|
Item: boundedDynamoDBMetadataItem({
|
|
7746
|
-
pk:
|
|
7746
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
7747
7747
|
sk: key,
|
|
7748
7748
|
version: 1,
|
|
7749
7749
|
row
|
|
@@ -7784,7 +7784,7 @@ const createDynamoDBCommit = (store) => async (input) => {
|
|
|
7784
7784
|
return compileAndCommitDynamoDBChanges(store, input);
|
|
7785
7785
|
}
|
|
7786
7786
|
};
|
|
7787
|
-
const
|
|
7787
|
+
const DYNAMODB_INSIGHTS_PARTITION = "bundle_events";
|
|
7788
7788
|
const DYNAMODB_API_KEY_PARTITION = "api_keys";
|
|
7789
7789
|
const DYNAMODB_API_KEY_HASH_PARTITION = "_hot-updater#api-key-hashes";
|
|
7790
7790
|
const hasValidBundleEventShape = (value) => {
|
|
@@ -7803,14 +7803,14 @@ const parseOfficialRowItem = (value, partition, isRow) => {
|
|
|
7803
7803
|
};
|
|
7804
7804
|
};
|
|
7805
7805
|
const timestampSortKey = (timestampMs) => Math.trunc(timestampMs).toString().padStart(16, "0");
|
|
7806
|
-
const
|
|
7807
|
-
const
|
|
7806
|
+
const insightsSortKey = (row) => `${timestampSortKey(row.received_at_ms)}#${row.id}`;
|
|
7807
|
+
const createDynamoDBInsightsTable = (store) => ({
|
|
7808
7808
|
async append(row) {
|
|
7809
7809
|
await store.client.send(new _aws_sdk_lib_dynamodb.PutCommand({
|
|
7810
7810
|
TableName: store.tableName,
|
|
7811
7811
|
Item: boundedDynamoDBMetadataItem({
|
|
7812
|
-
pk:
|
|
7813
|
-
sk:
|
|
7812
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
7813
|
+
sk: insightsSortKey(row),
|
|
7814
7814
|
version: 1,
|
|
7815
7815
|
row
|
|
7816
7816
|
}),
|
|
@@ -7835,7 +7835,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
7835
7835
|
},
|
|
7836
7836
|
ExpressionAttributeValues: {
|
|
7837
7837
|
":before": `${timestampSortKey(input.beforeReceivedAtMs)}#`,
|
|
7838
|
-
":pk":
|
|
7838
|
+
":pk": DYNAMODB_INSIGHTS_PARTITION,
|
|
7839
7839
|
...afterKey === void 0 ? {} : { ":after": afterKey }
|
|
7840
7840
|
},
|
|
7841
7841
|
Limit: input.limit - rows.length + (afterKey === void 0 ? 0 : 1),
|
|
@@ -7843,7 +7843,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
7843
7843
|
}));
|
|
7844
7844
|
for (const item of page.Items ?? []) {
|
|
7845
7845
|
if (item.sk === afterKey) continue;
|
|
7846
|
-
rows.push(parseOfficialRowItem(item,
|
|
7846
|
+
rows.push(parseOfficialRowItem(item, DYNAMODB_INSIGHTS_PARTITION, isBundleEventRow).row);
|
|
7847
7847
|
if (rows.length === input.limit) return rows;
|
|
7848
7848
|
}
|
|
7849
7849
|
exclusiveStartKey = page.LastEvaluatedKey;
|
|
@@ -7981,7 +7981,7 @@ const dynamoDB = (config) => {
|
|
|
7981
7981
|
models: {
|
|
7982
7982
|
...adapter.models,
|
|
7983
7983
|
bundlePatches: createDynamoDBBundlePatchTable(store, DYNAMODB_UPDATE_INDEX_NAME),
|
|
7984
|
-
|
|
7984
|
+
insights: createDynamoDBInsightsTable(store),
|
|
7985
7985
|
apiKeys: createDynamoDBApiKeyTable(store)
|
|
7986
7986
|
},
|
|
7987
7987
|
async commit(input) {
|
|
@@ -9265,7 +9265,7 @@ var IAMManager = class {
|
|
|
9265
9265
|
"bundle_patches",
|
|
9266
9266
|
DYNAMODB_CHANNEL_PARTITION,
|
|
9267
9267
|
DYNAMODB_CHANNEL_NAME_PARTITION,
|
|
9268
|
-
|
|
9268
|
+
DYNAMODB_INSIGHTS_PARTITION,
|
|
9269
9269
|
DYNAMODB_API_KEY_PARTITION,
|
|
9270
9270
|
DYNAMODB_API_KEY_HASH_PARTITION
|
|
9271
9271
|
] } },
|
package/dist/iac/index.mjs
CHANGED
|
@@ -7420,7 +7420,7 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7420
7420
|
const originalApiKeys = /* @__PURE__ */ new Map();
|
|
7421
7421
|
const apiKeys = /* @__PURE__ */ new Map();
|
|
7422
7422
|
const apiKeyHashes = /* @__PURE__ */ new Map();
|
|
7423
|
-
const
|
|
7423
|
+
const insights = /* @__PURE__ */ new Map();
|
|
7424
7424
|
const rememberApiKey = (value) => {
|
|
7425
7425
|
if (value === null || apiKeys.has(value.row.id)) return;
|
|
7426
7426
|
originalApiKeys.set(value.row.id, value);
|
|
@@ -7543,10 +7543,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7543
7543
|
patches.set(change.row.id, change.row);
|
|
7544
7544
|
} else for (const [id, patch] of patches) if (patch.bundle_id === change.where.bundleId) patches.delete(id);
|
|
7545
7545
|
break;
|
|
7546
|
-
case "
|
|
7547
|
-
const key =
|
|
7548
|
-
if (
|
|
7549
|
-
|
|
7546
|
+
case "insights": {
|
|
7547
|
+
const key = insightsSortKey(change.row);
|
|
7548
|
+
if (insights.has(key)) throw new DynamoDBCommitStateError(`Insights event "${change.row.id}" is duplicated`);
|
|
7549
|
+
insights.set(key, change.row);
|
|
7550
7550
|
break;
|
|
7551
7551
|
}
|
|
7552
7552
|
case "apiKeys":
|
|
@@ -7735,10 +7735,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
7735
7735
|
bundle_patches: patches.size - originalPatches.size
|
|
7736
7736
|
});
|
|
7737
7737
|
if (counter !== void 0) actions.push(counter);
|
|
7738
|
-
for (const [key, row] of
|
|
7738
|
+
for (const [key, row] of insights) actions.push({ Put: {
|
|
7739
7739
|
TableName: store.tableName,
|
|
7740
7740
|
Item: boundedDynamoDBMetadataItem({
|
|
7741
|
-
pk:
|
|
7741
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
7742
7742
|
sk: key,
|
|
7743
7743
|
version: 1,
|
|
7744
7744
|
row
|
|
@@ -7779,7 +7779,7 @@ const createDynamoDBCommit = (store) => async (input) => {
|
|
|
7779
7779
|
return compileAndCommitDynamoDBChanges(store, input);
|
|
7780
7780
|
}
|
|
7781
7781
|
};
|
|
7782
|
-
const
|
|
7782
|
+
const DYNAMODB_INSIGHTS_PARTITION = "bundle_events";
|
|
7783
7783
|
const DYNAMODB_API_KEY_PARTITION = "api_keys";
|
|
7784
7784
|
const DYNAMODB_API_KEY_HASH_PARTITION = "_hot-updater#api-key-hashes";
|
|
7785
7785
|
const hasValidBundleEventShape = (value) => {
|
|
@@ -7798,14 +7798,14 @@ const parseOfficialRowItem = (value, partition, isRow) => {
|
|
|
7798
7798
|
};
|
|
7799
7799
|
};
|
|
7800
7800
|
const timestampSortKey = (timestampMs) => Math.trunc(timestampMs).toString().padStart(16, "0");
|
|
7801
|
-
const
|
|
7802
|
-
const
|
|
7801
|
+
const insightsSortKey = (row) => `${timestampSortKey(row.received_at_ms)}#${row.id}`;
|
|
7802
|
+
const createDynamoDBInsightsTable = (store) => ({
|
|
7803
7803
|
async append(row) {
|
|
7804
7804
|
await store.client.send(new PutCommand({
|
|
7805
7805
|
TableName: store.tableName,
|
|
7806
7806
|
Item: boundedDynamoDBMetadataItem({
|
|
7807
|
-
pk:
|
|
7808
|
-
sk:
|
|
7807
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
7808
|
+
sk: insightsSortKey(row),
|
|
7809
7809
|
version: 1,
|
|
7810
7810
|
row
|
|
7811
7811
|
}),
|
|
@@ -7830,7 +7830,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
7830
7830
|
},
|
|
7831
7831
|
ExpressionAttributeValues: {
|
|
7832
7832
|
":before": `${timestampSortKey(input.beforeReceivedAtMs)}#`,
|
|
7833
|
-
":pk":
|
|
7833
|
+
":pk": DYNAMODB_INSIGHTS_PARTITION,
|
|
7834
7834
|
...afterKey === void 0 ? {} : { ":after": afterKey }
|
|
7835
7835
|
},
|
|
7836
7836
|
Limit: input.limit - rows.length + (afterKey === void 0 ? 0 : 1),
|
|
@@ -7838,7 +7838,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
7838
7838
|
}));
|
|
7839
7839
|
for (const item of page.Items ?? []) {
|
|
7840
7840
|
if (item.sk === afterKey) continue;
|
|
7841
|
-
rows.push(parseOfficialRowItem(item,
|
|
7841
|
+
rows.push(parseOfficialRowItem(item, DYNAMODB_INSIGHTS_PARTITION, isBundleEventRow).row);
|
|
7842
7842
|
if (rows.length === input.limit) return rows;
|
|
7843
7843
|
}
|
|
7844
7844
|
exclusiveStartKey = page.LastEvaluatedKey;
|
|
@@ -7976,7 +7976,7 @@ const dynamoDB = (config) => {
|
|
|
7976
7976
|
models: {
|
|
7977
7977
|
...adapter.models,
|
|
7978
7978
|
bundlePatches: createDynamoDBBundlePatchTable(store, DYNAMODB_UPDATE_INDEX_NAME),
|
|
7979
|
-
|
|
7979
|
+
insights: createDynamoDBInsightsTable(store),
|
|
7980
7980
|
apiKeys: createDynamoDBApiKeyTable(store)
|
|
7981
7981
|
},
|
|
7982
7982
|
async commit(input) {
|
|
@@ -9260,7 +9260,7 @@ var IAMManager = class {
|
|
|
9260
9260
|
"bundle_patches",
|
|
9261
9261
|
DYNAMODB_CHANNEL_PARTITION,
|
|
9262
9262
|
DYNAMODB_CHANNEL_NAME_PARTITION,
|
|
9263
|
-
|
|
9263
|
+
DYNAMODB_INSIGHTS_PARTITION,
|
|
9264
9264
|
DYNAMODB_API_KEY_PARTITION,
|
|
9265
9265
|
DYNAMODB_API_KEY_HASH_PARTITION
|
|
9266
9266
|
] } },
|
package/dist/index.cjs
CHANGED
|
@@ -1214,7 +1214,7 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1214
1214
|
const originalApiKeys = /* @__PURE__ */ new Map();
|
|
1215
1215
|
const apiKeys = /* @__PURE__ */ new Map();
|
|
1216
1216
|
const apiKeyHashes = /* @__PURE__ */ new Map();
|
|
1217
|
-
const
|
|
1217
|
+
const insights = /* @__PURE__ */ new Map();
|
|
1218
1218
|
const rememberApiKey = (value) => {
|
|
1219
1219
|
if (value === null || apiKeys.has(value.row.id)) return;
|
|
1220
1220
|
originalApiKeys.set(value.row.id, value);
|
|
@@ -1337,10 +1337,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1337
1337
|
patches.set(change.row.id, change.row);
|
|
1338
1338
|
} else for (const [id, patch] of patches) if (patch.bundle_id === change.where.bundleId) patches.delete(id);
|
|
1339
1339
|
break;
|
|
1340
|
-
case "
|
|
1341
|
-
const key =
|
|
1342
|
-
if (
|
|
1343
|
-
|
|
1340
|
+
case "insights": {
|
|
1341
|
+
const key = insightsSortKey(change.row);
|
|
1342
|
+
if (insights.has(key)) throw new DynamoDBCommitStateError(`Insights event "${change.row.id}" is duplicated`);
|
|
1343
|
+
insights.set(key, change.row);
|
|
1344
1344
|
break;
|
|
1345
1345
|
}
|
|
1346
1346
|
case "apiKeys":
|
|
@@ -1529,10 +1529,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1529
1529
|
bundle_patches: patches.size - originalPatches.size
|
|
1530
1530
|
});
|
|
1531
1531
|
if (counter !== void 0) actions.push(counter);
|
|
1532
|
-
for (const [key, row] of
|
|
1532
|
+
for (const [key, row] of insights) actions.push({ Put: {
|
|
1533
1533
|
TableName: store.tableName,
|
|
1534
1534
|
Item: boundedDynamoDBMetadataItem({
|
|
1535
|
-
pk:
|
|
1535
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
1536
1536
|
sk: key,
|
|
1537
1537
|
version: 1,
|
|
1538
1538
|
row
|
|
@@ -1573,7 +1573,7 @@ const createDynamoDBCommit = (store) => async (input) => {
|
|
|
1573
1573
|
return compileAndCommitDynamoDBChanges(store, input);
|
|
1574
1574
|
}
|
|
1575
1575
|
};
|
|
1576
|
-
const
|
|
1576
|
+
const DYNAMODB_INSIGHTS_PARTITION = "bundle_events";
|
|
1577
1577
|
const DYNAMODB_API_KEY_PARTITION = "api_keys";
|
|
1578
1578
|
const DYNAMODB_API_KEY_HASH_PARTITION = "_hot-updater#api-key-hashes";
|
|
1579
1579
|
const hasValidBundleEventShape = (value) => {
|
|
@@ -1592,14 +1592,14 @@ const parseOfficialRowItem = (value, partition, isRow) => {
|
|
|
1592
1592
|
};
|
|
1593
1593
|
};
|
|
1594
1594
|
const timestampSortKey = (timestampMs) => Math.trunc(timestampMs).toString().padStart(16, "0");
|
|
1595
|
-
const
|
|
1596
|
-
const
|
|
1595
|
+
const insightsSortKey = (row) => `${timestampSortKey(row.received_at_ms)}#${row.id}`;
|
|
1596
|
+
const createDynamoDBInsightsTable = (store) => ({
|
|
1597
1597
|
async append(row) {
|
|
1598
1598
|
await store.client.send(new _aws_sdk_lib_dynamodb.PutCommand({
|
|
1599
1599
|
TableName: store.tableName,
|
|
1600
1600
|
Item: boundedDynamoDBMetadataItem({
|
|
1601
|
-
pk:
|
|
1602
|
-
sk:
|
|
1601
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
1602
|
+
sk: insightsSortKey(row),
|
|
1603
1603
|
version: 1,
|
|
1604
1604
|
row
|
|
1605
1605
|
}),
|
|
@@ -1624,7 +1624,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
1624
1624
|
},
|
|
1625
1625
|
ExpressionAttributeValues: {
|
|
1626
1626
|
":before": `${timestampSortKey(input.beforeReceivedAtMs)}#`,
|
|
1627
|
-
":pk":
|
|
1627
|
+
":pk": DYNAMODB_INSIGHTS_PARTITION,
|
|
1628
1628
|
...afterKey === void 0 ? {} : { ":after": afterKey }
|
|
1629
1629
|
},
|
|
1630
1630
|
Limit: input.limit - rows.length + (afterKey === void 0 ? 0 : 1),
|
|
@@ -1632,7 +1632,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
1632
1632
|
}));
|
|
1633
1633
|
for (const item of page.Items ?? []) {
|
|
1634
1634
|
if (item.sk === afterKey) continue;
|
|
1635
|
-
rows.push(parseOfficialRowItem(item,
|
|
1635
|
+
rows.push(parseOfficialRowItem(item, DYNAMODB_INSIGHTS_PARTITION, isBundleEventRow).row);
|
|
1636
1636
|
if (rows.length === input.limit) return rows;
|
|
1637
1637
|
}
|
|
1638
1638
|
exclusiveStartKey = page.LastEvaluatedKey;
|
|
@@ -1770,7 +1770,7 @@ const dynamoDB = (config) => {
|
|
|
1770
1770
|
models: {
|
|
1771
1771
|
...adapter.models,
|
|
1772
1772
|
bundlePatches: createDynamoDBBundlePatchTable(store, DYNAMODB_UPDATE_INDEX_NAME),
|
|
1773
|
-
|
|
1773
|
+
insights: createDynamoDBInsightsTable(store),
|
|
1774
1774
|
apiKeys: createDynamoDBApiKeyTable(store)
|
|
1775
1775
|
},
|
|
1776
1776
|
async commit(input) {
|
package/dist/index.mjs
CHANGED
|
@@ -1213,7 +1213,7 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1213
1213
|
const originalApiKeys = /* @__PURE__ */ new Map();
|
|
1214
1214
|
const apiKeys = /* @__PURE__ */ new Map();
|
|
1215
1215
|
const apiKeyHashes = /* @__PURE__ */ new Map();
|
|
1216
|
-
const
|
|
1216
|
+
const insights = /* @__PURE__ */ new Map();
|
|
1217
1217
|
const rememberApiKey = (value) => {
|
|
1218
1218
|
if (value === null || apiKeys.has(value.row.id)) return;
|
|
1219
1219
|
originalApiKeys.set(value.row.id, value);
|
|
@@ -1336,10 +1336,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1336
1336
|
patches.set(change.row.id, change.row);
|
|
1337
1337
|
} else for (const [id, patch] of patches) if (patch.bundle_id === change.where.bundleId) patches.delete(id);
|
|
1338
1338
|
break;
|
|
1339
|
-
case "
|
|
1340
|
-
const key =
|
|
1341
|
-
if (
|
|
1342
|
-
|
|
1339
|
+
case "insights": {
|
|
1340
|
+
const key = insightsSortKey(change.row);
|
|
1341
|
+
if (insights.has(key)) throw new DynamoDBCommitStateError(`Insights event "${change.row.id}" is duplicated`);
|
|
1342
|
+
insights.set(key, change.row);
|
|
1343
1343
|
break;
|
|
1344
1344
|
}
|
|
1345
1345
|
case "apiKeys":
|
|
@@ -1528,10 +1528,10 @@ const compileAndCommitDynamoDBChanges = async (store, input) => {
|
|
|
1528
1528
|
bundle_patches: patches.size - originalPatches.size
|
|
1529
1529
|
});
|
|
1530
1530
|
if (counter !== void 0) actions.push(counter);
|
|
1531
|
-
for (const [key, row] of
|
|
1531
|
+
for (const [key, row] of insights) actions.push({ Put: {
|
|
1532
1532
|
TableName: store.tableName,
|
|
1533
1533
|
Item: boundedDynamoDBMetadataItem({
|
|
1534
|
-
pk:
|
|
1534
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
1535
1535
|
sk: key,
|
|
1536
1536
|
version: 1,
|
|
1537
1537
|
row
|
|
@@ -1572,7 +1572,7 @@ const createDynamoDBCommit = (store) => async (input) => {
|
|
|
1572
1572
|
return compileAndCommitDynamoDBChanges(store, input);
|
|
1573
1573
|
}
|
|
1574
1574
|
};
|
|
1575
|
-
const
|
|
1575
|
+
const DYNAMODB_INSIGHTS_PARTITION = "bundle_events";
|
|
1576
1576
|
const DYNAMODB_API_KEY_PARTITION = "api_keys";
|
|
1577
1577
|
const DYNAMODB_API_KEY_HASH_PARTITION = "_hot-updater#api-key-hashes";
|
|
1578
1578
|
const hasValidBundleEventShape = (value) => {
|
|
@@ -1591,14 +1591,14 @@ const parseOfficialRowItem = (value, partition, isRow) => {
|
|
|
1591
1591
|
};
|
|
1592
1592
|
};
|
|
1593
1593
|
const timestampSortKey = (timestampMs) => Math.trunc(timestampMs).toString().padStart(16, "0");
|
|
1594
|
-
const
|
|
1595
|
-
const
|
|
1594
|
+
const insightsSortKey = (row) => `${timestampSortKey(row.received_at_ms)}#${row.id}`;
|
|
1595
|
+
const createDynamoDBInsightsTable = (store) => ({
|
|
1596
1596
|
async append(row) {
|
|
1597
1597
|
await store.client.send(new PutCommand({
|
|
1598
1598
|
TableName: store.tableName,
|
|
1599
1599
|
Item: boundedDynamoDBMetadataItem({
|
|
1600
|
-
pk:
|
|
1601
|
-
sk:
|
|
1600
|
+
pk: DYNAMODB_INSIGHTS_PARTITION,
|
|
1601
|
+
sk: insightsSortKey(row),
|
|
1602
1602
|
version: 1,
|
|
1603
1603
|
row
|
|
1604
1604
|
}),
|
|
@@ -1623,7 +1623,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
1623
1623
|
},
|
|
1624
1624
|
ExpressionAttributeValues: {
|
|
1625
1625
|
":before": `${timestampSortKey(input.beforeReceivedAtMs)}#`,
|
|
1626
|
-
":pk":
|
|
1626
|
+
":pk": DYNAMODB_INSIGHTS_PARTITION,
|
|
1627
1627
|
...afterKey === void 0 ? {} : { ":after": afterKey }
|
|
1628
1628
|
},
|
|
1629
1629
|
Limit: input.limit - rows.length + (afterKey === void 0 ? 0 : 1),
|
|
@@ -1631,7 +1631,7 @@ const createDynamoDBAnalyticsTable = (store) => ({
|
|
|
1631
1631
|
}));
|
|
1632
1632
|
for (const item of page.Items ?? []) {
|
|
1633
1633
|
if (item.sk === afterKey) continue;
|
|
1634
|
-
rows.push(parseOfficialRowItem(item,
|
|
1634
|
+
rows.push(parseOfficialRowItem(item, DYNAMODB_INSIGHTS_PARTITION, isBundleEventRow).row);
|
|
1635
1635
|
if (rows.length === input.limit) return rows;
|
|
1636
1636
|
}
|
|
1637
1637
|
exclusiveStartKey = page.LastEvaluatedKey;
|
|
@@ -1769,7 +1769,7 @@ const dynamoDB = (config) => {
|
|
|
1769
1769
|
models: {
|
|
1770
1770
|
...adapter.models,
|
|
1771
1771
|
bundlePatches: createDynamoDBBundlePatchTable(store, DYNAMODB_UPDATE_INDEX_NAME),
|
|
1772
|
-
|
|
1772
|
+
insights: createDynamoDBInsightsTable(store),
|
|
1773
1773
|
apiKeys: createDynamoDBApiKeyTable(store)
|
|
1774
1774
|
},
|
|
1775
1775
|
async commit(input) {
|