@positronic/cloudflare 0.0.26 → 0.0.28

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/src/api.js CHANGED
@@ -968,7 +968,7 @@ app.get('/brains/:identifier', function(context) {
968
968
  });
969
969
  app.get('/resources', function(context) {
970
970
  return _async_to_generator(function() {
971
- var bucket, listed, resources, error, errorMessage;
971
+ var bucket, listed, resources, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, object, _r2Object_customMetadata, r2Object, err, error, errorMessage;
972
972
  return _ts_generator(this, function(_state) {
973
973
  switch(_state.label){
974
974
  case 0:
@@ -977,9 +977,9 @@ app.get('/resources', function(context) {
977
977
  case 1:
978
978
  _state.trys.push([
979
979
  1,
980
- 4,
980
+ 11,
981
981
  ,
982
- 5
982
+ 12
983
983
  ]);
984
984
  return [
985
985
  4,
@@ -987,47 +987,81 @@ app.get('/resources', function(context) {
987
987
  ];
988
988
  case 2:
989
989
  listed = _state.sent();
990
+ resources = [];
991
+ _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
992
+ _state.label = 3;
993
+ case 3:
994
+ _state.trys.push([
995
+ 3,
996
+ 8,
997
+ 9,
998
+ 10
999
+ ]);
1000
+ _iterator = listed.objects[Symbol.iterator]();
1001
+ _state.label = 4;
1002
+ case 4:
1003
+ if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
1004
+ 3,
1005
+ 7
1006
+ ];
1007
+ object = _step.value;
990
1008
  return [
991
1009
  4,
992
- Promise.all(listed.objects.map(function(object) {
993
- return _async_to_generator(function() {
994
- var _r2Object_customMetadata, r2Object, resource;
995
- return _ts_generator(this, function(_state) {
996
- switch(_state.label){
997
- case 0:
998
- return [
999
- 4,
1000
- bucket.head(object.key)
1001
- ];
1002
- case 1:
1003
- r2Object = _state.sent();
1004
- if (!r2Object) {
1005
- throw new Error('Resource "'.concat(object.key, '" not found'));
1006
- }
1007
- if (!((_r2Object_customMetadata = r2Object.customMetadata) === null || _r2Object_customMetadata === void 0 ? void 0 : _r2Object_customMetadata.type)) {
1008
- throw new Error('Resource "'.concat(object.key, '" is missing required metadata field "type"'));
1009
- }
1010
- resource = _object_spread_props(_object_spread({
1011
- type: r2Object.customMetadata.type
1012
- }, r2Object.customMetadata.path && {
1013
- path: r2Object.customMetadata.path
1014
- }), {
1015
- key: object.key,
1016
- size: object.size,
1017
- lastModified: object.uploaded.toISOString(),
1018
- local: r2Object.customMetadata.local === 'true'
1019
- });
1020
- return [
1021
- 2,
1022
- resource
1023
- ];
1024
- }
1025
- });
1026
- })();
1027
- }))
1010
+ bucket.head(object.key)
1028
1011
  ];
1029
- case 3:
1030
- resources = _state.sent();
1012
+ case 5:
1013
+ r2Object = _state.sent();
1014
+ // Skip objects without type metadata (e.g., pages or other non-resource data)
1015
+ if (!r2Object || !((_r2Object_customMetadata = r2Object.customMetadata) === null || _r2Object_customMetadata === void 0 ? void 0 : _r2Object_customMetadata.type)) {
1016
+ return [
1017
+ 3,
1018
+ 6
1019
+ ];
1020
+ }
1021
+ resources.push(_object_spread_props(_object_spread({
1022
+ type: r2Object.customMetadata.type
1023
+ }, r2Object.customMetadata.path && {
1024
+ path: r2Object.customMetadata.path
1025
+ }), {
1026
+ key: object.key,
1027
+ size: object.size,
1028
+ lastModified: object.uploaded.toISOString(),
1029
+ local: r2Object.customMetadata.local === 'true'
1030
+ }));
1031
+ _state.label = 6;
1032
+ case 6:
1033
+ _iteratorNormalCompletion = true;
1034
+ return [
1035
+ 3,
1036
+ 4
1037
+ ];
1038
+ case 7:
1039
+ return [
1040
+ 3,
1041
+ 10
1042
+ ];
1043
+ case 8:
1044
+ err = _state.sent();
1045
+ _didIteratorError = true;
1046
+ _iteratorError = err;
1047
+ return [
1048
+ 3,
1049
+ 10
1050
+ ];
1051
+ case 9:
1052
+ try {
1053
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
1054
+ _iterator.return();
1055
+ }
1056
+ } finally{
1057
+ if (_didIteratorError) {
1058
+ throw _iteratorError;
1059
+ }
1060
+ }
1061
+ return [
1062
+ 7
1063
+ ];
1064
+ case 10:
1031
1065
  return [
1032
1066
  2,
1033
1067
  context.json({
@@ -1036,7 +1070,7 @@ app.get('/resources', function(context) {
1036
1070
  count: resources.length
1037
1071
  })
1038
1072
  ];
1039
- case 4:
1073
+ case 11:
1040
1074
  error = _state.sent();
1041
1075
  errorMessage = _instanceof(error, Error) ? error.message : 'Unknown error occurred';
1042
1076
  return [
@@ -1045,7 +1079,7 @@ app.get('/resources', function(context) {
1045
1079
  error: errorMessage
1046
1080
  }, 500)
1047
1081
  ];
1048
- case 5:
1082
+ case 12:
1049
1083
  return [
1050
1084
  2
1051
1085
  ];
@@ -1229,7 +1263,7 @@ app.delete('/resources/:key', function(context) {
1229
1263
  // Delete all resources (bulk delete) - only available in development mode
1230
1264
  app.delete('/resources', function(context) {
1231
1265
  return _async_to_generator(function() {
1232
- var isDevelopment, bucket, listed, deletedCount, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, object, err, cursor, nextBatch, _iteratorNormalCompletion1, _didIteratorError1, _iteratorError1, _iterator1, _step1, object1, err;
1266
+ var isDevelopment, bucket, listed, deletedCount, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, object, _r2Object_customMetadata, r2Object, err, cursor, nextBatch, _iteratorNormalCompletion1, _didIteratorError1, _iteratorError1, _iterator1, _step1, object1, _r2Object_customMetadata1, r2Object1, err;
1233
1267
  return _ts_generator(this, function(_state) {
1234
1268
  switch(_state.label){
1235
1269
  case 0:
@@ -1256,46 +1290,56 @@ app.delete('/resources', function(context) {
1256
1290
  case 2:
1257
1291
  _state.trys.push([
1258
1292
  2,
1259
- 7,
1260
1293
  8,
1261
- 9
1294
+ 9,
1295
+ 10
1262
1296
  ]);
1263
1297
  _iterator = listed.objects[Symbol.iterator]();
1264
1298
  _state.label = 3;
1265
1299
  case 3:
1266
1300
  if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
1267
1301
  3,
1268
- 6
1302
+ 7
1269
1303
  ];
1270
1304
  object = _step.value;
1271
1305
  return [
1272
1306
  4,
1273
- bucket.delete(object.key)
1307
+ bucket.head(object.key)
1274
1308
  ];
1275
1309
  case 4:
1310
+ r2Object = _state.sent();
1311
+ if (!(r2Object === null || r2Object === void 0 ? void 0 : (_r2Object_customMetadata = r2Object.customMetadata) === null || _r2Object_customMetadata === void 0 ? void 0 : _r2Object_customMetadata.type)) return [
1312
+ 3,
1313
+ 6
1314
+ ];
1315
+ return [
1316
+ 4,
1317
+ bucket.delete(object.key)
1318
+ ];
1319
+ case 5:
1276
1320
  _state.sent();
1277
1321
  deletedCount++;
1278
- _state.label = 5;
1279
- case 5:
1322
+ _state.label = 6;
1323
+ case 6:
1280
1324
  _iteratorNormalCompletion = true;
1281
1325
  return [
1282
1326
  3,
1283
1327
  3
1284
1328
  ];
1285
- case 6:
1329
+ case 7:
1286
1330
  return [
1287
1331
  3,
1288
- 9
1332
+ 10
1289
1333
  ];
1290
- case 7:
1334
+ case 8:
1291
1335
  err = _state.sent();
1292
1336
  _didIteratorError = true;
1293
1337
  _iteratorError = err;
1294
1338
  return [
1295
1339
  3,
1296
- 9
1340
+ 10
1297
1341
  ];
1298
- case 8:
1342
+ case 9:
1299
1343
  try {
1300
1344
  if (!_iteratorNormalCompletion && _iterator.return != null) {
1301
1345
  _iterator.return();
@@ -1308,14 +1352,14 @@ app.delete('/resources', function(context) {
1308
1352
  return [
1309
1353
  7
1310
1354
  ];
1311
- case 9:
1355
+ case 10:
1312
1356
  // Handle pagination if there are more than 1000 objects
1313
1357
  cursor = listed.cursor;
1314
- _state.label = 10;
1315
- case 10:
1358
+ _state.label = 11;
1359
+ case 11:
1316
1360
  if (!(listed.truncated && cursor)) return [
1317
1361
  3,
1318
- 20
1362
+ 22
1319
1363
  ];
1320
1364
  return [
1321
1365
  4,
@@ -1323,53 +1367,63 @@ app.delete('/resources', function(context) {
1323
1367
  cursor: cursor
1324
1368
  })
1325
1369
  ];
1326
- case 11:
1370
+ case 12:
1327
1371
  nextBatch = _state.sent();
1328
1372
  _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = undefined;
1329
- _state.label = 12;
1330
- case 12:
1373
+ _state.label = 13;
1374
+ case 13:
1331
1375
  _state.trys.push([
1332
- 12,
1333
- 17,
1334
- 18,
1335
- 19
1376
+ 13,
1377
+ 19,
1378
+ 20,
1379
+ 21
1336
1380
  ]);
1337
1381
  _iterator1 = nextBatch.objects[Symbol.iterator]();
1338
- _state.label = 13;
1339
- case 13:
1382
+ _state.label = 14;
1383
+ case 14:
1340
1384
  if (!!(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done)) return [
1341
1385
  3,
1342
- 16
1386
+ 18
1343
1387
  ];
1344
1388
  object1 = _step1.value;
1389
+ return [
1390
+ 4,
1391
+ bucket.head(object1.key)
1392
+ ];
1393
+ case 15:
1394
+ r2Object1 = _state.sent();
1395
+ if (!(r2Object1 === null || r2Object1 === void 0 ? void 0 : (_r2Object_customMetadata1 = r2Object1.customMetadata) === null || _r2Object_customMetadata1 === void 0 ? void 0 : _r2Object_customMetadata1.type)) return [
1396
+ 3,
1397
+ 17
1398
+ ];
1345
1399
  return [
1346
1400
  4,
1347
1401
  bucket.delete(object1.key)
1348
1402
  ];
1349
- case 14:
1403
+ case 16:
1350
1404
  _state.sent();
1351
1405
  deletedCount++;
1352
- _state.label = 15;
1353
- case 15:
1406
+ _state.label = 17;
1407
+ case 17:
1354
1408
  _iteratorNormalCompletion1 = true;
1355
1409
  return [
1356
1410
  3,
1357
- 13
1411
+ 14
1358
1412
  ];
1359
- case 16:
1413
+ case 18:
1360
1414
  return [
1361
1415
  3,
1362
- 19
1416
+ 21
1363
1417
  ];
1364
- case 17:
1418
+ case 19:
1365
1419
  err = _state.sent();
1366
1420
  _didIteratorError1 = true;
1367
1421
  _iteratorError1 = err;
1368
1422
  return [
1369
1423
  3,
1370
- 19
1424
+ 21
1371
1425
  ];
1372
- case 18:
1426
+ case 20:
1373
1427
  try {
1374
1428
  if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
1375
1429
  _iterator1.return();
@@ -1382,13 +1436,13 @@ app.delete('/resources', function(context) {
1382
1436
  return [
1383
1437
  7
1384
1438
  ];
1385
- case 19:
1439
+ case 21:
1386
1440
  cursor = nextBatch.cursor;
1387
1441
  return [
1388
1442
  3,
1389
- 10
1443
+ 11
1390
1444
  ];
1391
- case 20:
1445
+ case 22:
1392
1446
  return [
1393
1447
  2,
1394
1448
  context.json({
@@ -1105,11 +1105,99 @@ export var CloudflareDevServer = /*#__PURE__*/ function() {
1105
1105
  }).call(this);
1106
1106
  }
1107
1107
  },
1108
+ {
1109
+ key: "ensureR2BucketExists",
1110
+ value: function ensureR2BucketExists(bucketName) {
1111
+ return _async_to_generator(function() {
1112
+ var apiToken, accountId, apiBase, headers, listResponse, errorText, listData, existingBuckets, createResponse, errorText1;
1113
+ return _ts_generator(this, function(_state) {
1114
+ switch(_state.label){
1115
+ case 0:
1116
+ apiToken = process.env.CLOUDFLARE_API_TOKEN;
1117
+ accountId = process.env.CLOUDFLARE_ACCOUNT_ID;
1118
+ if (!apiToken || !accountId) {
1119
+ throw new Error('Missing Cloudflare credentials for R2 bucket management.\n' + 'Please set CLOUDFLARE_API_TOKEN and CLOUDFLARE_ACCOUNT_ID environment variables.');
1120
+ }
1121
+ apiBase = "https://api.cloudflare.com/client/v4/accounts/".concat(accountId, "/r2/buckets");
1122
+ headers = {
1123
+ Authorization: "Bearer ".concat(apiToken),
1124
+ 'Content-Type': 'application/json'
1125
+ };
1126
+ return [
1127
+ 4,
1128
+ fetch(apiBase, {
1129
+ headers: headers
1130
+ })
1131
+ ];
1132
+ case 1:
1133
+ listResponse = _state.sent();
1134
+ if (!!listResponse.ok) return [
1135
+ 3,
1136
+ 3
1137
+ ];
1138
+ return [
1139
+ 4,
1140
+ listResponse.text()
1141
+ ];
1142
+ case 2:
1143
+ errorText = _state.sent();
1144
+ throw new Error("Failed to list R2 buckets: ".concat(listResponse.status, " ").concat(listResponse.statusText, "\n").concat(errorText));
1145
+ case 3:
1146
+ return [
1147
+ 4,
1148
+ listResponse.json()
1149
+ ];
1150
+ case 4:
1151
+ listData = _state.sent();
1152
+ existingBuckets = listData.result.buckets.map(function(b) {
1153
+ return b.name;
1154
+ });
1155
+ if (existingBuckets.includes(bucketName)) {
1156
+ console.log("\uD83D\uDCE6 R2 bucket '".concat(bucketName, "' already exists"));
1157
+ return [
1158
+ 2
1159
+ ];
1160
+ }
1161
+ // Create the bucket using Cloudflare API
1162
+ console.log("\uD83D\uDCE6 Creating R2 bucket '".concat(bucketName, "'..."));
1163
+ return [
1164
+ 4,
1165
+ fetch(apiBase, {
1166
+ method: 'POST',
1167
+ headers: headers,
1168
+ body: JSON.stringify({
1169
+ name: bucketName
1170
+ })
1171
+ })
1172
+ ];
1173
+ case 5:
1174
+ createResponse = _state.sent();
1175
+ if (!!createResponse.ok) return [
1176
+ 3,
1177
+ 7
1178
+ ];
1179
+ return [
1180
+ 4,
1181
+ createResponse.text()
1182
+ ];
1183
+ case 6:
1184
+ errorText1 = _state.sent();
1185
+ throw new Error("Failed to create R2 bucket: ".concat(createResponse.status, " ").concat(createResponse.statusText, "\n").concat(errorText1));
1186
+ case 7:
1187
+ console.log("✅ R2 bucket '".concat(bucketName, "' created successfully"));
1188
+ return [
1189
+ 2
1190
+ ];
1191
+ }
1192
+ });
1193
+ })();
1194
+ }
1195
+ },
1108
1196
  {
1109
1197
  key: "deploy",
1110
1198
  value: function deploy() {
1111
1199
  return _async_to_generator(function() {
1112
- var _this, projectRoot, serverDir;
1200
+ var _this, projectRoot, serverDir, configPath, configContent, config, bucketName;
1113
1201
  return _ts_generator(this, function(_state) {
1114
1202
  switch(_state.label){
1115
1203
  case 0:
@@ -1127,6 +1215,26 @@ export var CloudflareDevServer = /*#__PURE__*/ function() {
1127
1215
  if (!process.env.CLOUDFLARE_API_TOKEN || !process.env.CLOUDFLARE_ACCOUNT_ID) {
1128
1216
  throw new Error('Missing required Cloudflare credentials.\n' + 'Please set CLOUDFLARE_API_TOKEN and CLOUDFLARE_ACCOUNT_ID environment variables.\n' + 'For example:\n' + ' export CLOUDFLARE_API_TOKEN=your-api-token\n' + ' export CLOUDFLARE_ACCOUNT_ID=your-account-id');
1129
1217
  }
1218
+ // Get project name from config (used as R2 bucket name)
1219
+ configPath = path.join(projectRoot, 'positronic.config.json');
1220
+ return [
1221
+ 4,
1222
+ fsPromises.readFile(configPath, 'utf-8')
1223
+ ];
1224
+ case 2:
1225
+ configContent = _state.sent();
1226
+ config = JSON.parse(configContent);
1227
+ bucketName = config.projectName;
1228
+ if (!bucketName) {
1229
+ throw new Error('Project name not found in positronic.config.json');
1230
+ }
1231
+ // Ensure R2 bucket exists before deploying
1232
+ return [
1233
+ 4,
1234
+ this.ensureR2BucketExists(bucketName)
1235
+ ];
1236
+ case 3:
1237
+ _state.sent();
1130
1238
  console.log('🚀 Deploying to Cloudflare Workers (production)...');
1131
1239
  // Deploy to production using wrangler
1132
1240
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAI1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,2BAA2B,CAAC;AAGpE,KAAK,QAAQ,GAAG;IACd,eAAe,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACvD,UAAU,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC9C,WAAW,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAChD,gBAAgB,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAmBF,QAAA,MAAM,GAAG;cAAwB,QAAQ;yCAAK,CAAC;AAgkC/C,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAI1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,2BAA2B,CAAC;AAGpE,KAAK,QAAQ,GAAG;IACd,eAAe,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACvD,UAAU,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC9C,WAAW,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAChD,gBAAgB,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAmBF,QAAA,MAAM,GAAG;cAAwB,QAAQ;yCAAK,CAAC;AA+jC/C,eAAe,GAAG,CAAC"}
@@ -33,6 +33,7 @@ export declare class CloudflareDevServer implements PositronicDevServer {
33
33
  private configureLocalR2;
34
34
  start(port?: number): Promise<ServerHandle>;
35
35
  watch(filePath: string, event: 'add' | 'change' | 'unlink'): Promise<void>;
36
+ private ensureR2BucketExists;
36
37
  deploy(): Promise<void>;
37
38
  onLog(callback: (message: string) => void): void;
38
39
  onError(callback: (message: string) => void): void;
@@ -1 +1 @@
1
- {"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/dev-server.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAqJ1E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAmBnD;AA8CD,qBAAa,mBAAoB,YAAW,mBAAmB;IAyB1C,cAAc,EAAE,MAAM;IAjBzC;;;;;;;;;;;OAWG;IAEH,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,cAAc,CAAwC;IAC9D,OAAO,CAAC,gBAAgB,CAAwC;gBAE7C,cAAc,EAAE,MAAM;IAEnC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAiB7B,qBAAqB;YA4DrB,wBAAwB;YAqBxB,yBAAyB;YAQzB,2BAA2B;IAuBzC,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,wBAAwB;YASlB,0BAA0B;IA4BxC,OAAO,CAAC,iBAAiB;IAuBzB,OAAO,CAAC,gBAAgB;IA4BlB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAkD3C,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,GACjC,OAAO,CAAC,IAAI,CAAC;IAUV,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA6E7B,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhD,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIlD,SAAS,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI9C,WAAW,IAAI,OAAO,CAC1B,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,CAC5D;IAwCK,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CrD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuC5C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA0DnD"}
1
+ {"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../src/dev-server.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAqJ1E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAmBnD;AA8CD,qBAAa,mBAAoB,YAAW,mBAAmB;IAyB1C,cAAc,EAAE,MAAM;IAjBzC;;;;;;;;;;;OAWG;IAEH,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,cAAc,CAAwC;IAC9D,OAAO,CAAC,gBAAgB,CAAwC;gBAE7C,cAAc,EAAE,MAAM;IAEnC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAiB7B,qBAAqB;YA4DrB,wBAAwB;YAqBxB,yBAAyB;YAQzB,2BAA2B;IAuBzC,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,wBAAwB;YASlB,0BAA0B;IA4BxC,OAAO,CAAC,iBAAiB;IAuBzB,OAAO,CAAC,gBAAgB;IA4BlB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAkD3C,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,GACjC,OAAO,CAAC,IAAI,CAAC;YAUF,oBAAoB;IA0D5B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA0F7B,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhD,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIlD,SAAS,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI9C,WAAW,IAAI,OAAO,CAC1B,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,CAC5D;IAwCK,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CrD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuC5C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA0DnD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@positronic/cloudflare",
3
- "version": "0.0.26",
3
+ "version": "0.0.28",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -31,9 +31,9 @@
31
31
  "clean": "rm -rf tsconfig.tsbuildinfo dist"
32
32
  },
33
33
  "dependencies": {
34
- "@positronic/core": "^0.0.26",
35
- "@positronic/spec": "^0.0.26",
36
- "@positronic/template-new-project": "^0.0.26",
34
+ "@positronic/core": "^0.0.28",
35
+ "@positronic/spec": "^0.0.28",
36
+ "@positronic/template-new-project": "^0.0.28",
37
37
  "aws4fetch": "^1.0.18",
38
38
  "caz": "^2.0.0",
39
39
  "cron-schedule": "^5.0.4",