@cloud-copilot/iam-data 0.6.202410011 → 0.7.202410011
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/cjs/data.d.ts.map +1 -1
- package/dist/cjs/data.js +20 -4
- package/dist/cjs/data.js.map +1 -1
- package/dist/esm/data.d.ts.map +1 -1
- package/dist/esm/data.js +20 -4
- package/dist/esm/data.js.map +1 -1
- package/package.json +3 -2
package/dist/cjs/data.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"AAKA,wBAAsB,YAAY,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BxE;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEtE;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEzE;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEzE"}
|
package/dist/cjs/data.js
CHANGED
|
@@ -6,14 +6,30 @@ exports.readConditionKeys = readConditionKeys;
|
|
|
6
6
|
exports.readResourceTypes = readResourceTypes;
|
|
7
7
|
const readRelativeFile_js_1 = require("./readRelativeFile.js");
|
|
8
8
|
const dataCache = {};
|
|
9
|
+
const requestCache = {};
|
|
9
10
|
async function readDataFile(...pathParts) {
|
|
10
11
|
pathParts.unshift('data');
|
|
11
12
|
const file = pathParts.join('/');
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
dataCache[file]
|
|
13
|
+
// If the data is already cached, return it immediately.
|
|
14
|
+
if (dataCache[file]) {
|
|
15
|
+
return dataCache[file];
|
|
15
16
|
}
|
|
16
|
-
return
|
|
17
|
+
// If there's an ongoing request, return the existing Promise.
|
|
18
|
+
if (requestCache[file] !== undefined) {
|
|
19
|
+
return requestCache[file];
|
|
20
|
+
}
|
|
21
|
+
// Create a new Promise and store it in dataQueues synchronously.
|
|
22
|
+
requestCache[file] = (async () => {
|
|
23
|
+
try {
|
|
24
|
+
const data = await (0, readRelativeFile_js_1.readRelativeFile)(pathParts);
|
|
25
|
+
dataCache[file] = data; // Cache the fetched data.
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
finally {
|
|
29
|
+
delete requestCache[file]; // Clean up the queue regardless of success or failure.
|
|
30
|
+
}
|
|
31
|
+
})();
|
|
32
|
+
return requestCache[file];
|
|
17
33
|
}
|
|
18
34
|
/**
|
|
19
35
|
* Read the action data for a service
|
package/dist/cjs/data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":";;AAKA,oCA0BC;AAQD,wCAEC;AAQD,8CAEC;AAQD,8CAEC;AA7DD,+DAAyD;AAEzD,MAAM,SAAS,GAAwB,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAiC,EAAE,CAAC;AAE/C,KAAK,UAAU,YAAY,CAAI,GAAG,SAAmB;IAC1D,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjC,wDAAwD;IACxD,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,8DAA8D;IAC9D,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,iEAAiE;IACjE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAA,sCAAgB,EAAC,SAAS,CAAC,CAAC;YAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,0BAA0B;YAClD,OAAO,IAAI,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,uDAAuD;QACpF,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAAI,UAAkB;IACxD,OAAO,YAAY,CAAI,SAAS,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CAAI,UAAkB;IAC3D,OAAO,YAAY,CAAI,eAAe,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CAAI,UAAkB;IAC3D,OAAO,YAAY,CAAI,eAAe,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAChE,CAAC"}
|
package/dist/esm/data.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"AAKA,wBAAsB,YAAY,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BxE;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEtE;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEzE;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEzE"}
|
package/dist/esm/data.js
CHANGED
|
@@ -1,13 +1,29 @@
|
|
|
1
1
|
import { readRelativeFile } from "./readRelativeFile.js";
|
|
2
2
|
const dataCache = {};
|
|
3
|
+
const requestCache = {};
|
|
3
4
|
export async function readDataFile(...pathParts) {
|
|
4
5
|
pathParts.unshift('data');
|
|
5
6
|
const file = pathParts.join('/');
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
dataCache[file]
|
|
7
|
+
// If the data is already cached, return it immediately.
|
|
8
|
+
if (dataCache[file]) {
|
|
9
|
+
return dataCache[file];
|
|
9
10
|
}
|
|
10
|
-
return
|
|
11
|
+
// If there's an ongoing request, return the existing Promise.
|
|
12
|
+
if (requestCache[file] !== undefined) {
|
|
13
|
+
return requestCache[file];
|
|
14
|
+
}
|
|
15
|
+
// Create a new Promise and store it in dataQueues synchronously.
|
|
16
|
+
requestCache[file] = (async () => {
|
|
17
|
+
try {
|
|
18
|
+
const data = await readRelativeFile(pathParts);
|
|
19
|
+
dataCache[file] = data; // Cache the fetched data.
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
finally {
|
|
23
|
+
delete requestCache[file]; // Clean up the queue regardless of success or failure.
|
|
24
|
+
}
|
|
25
|
+
})();
|
|
26
|
+
return requestCache[file];
|
|
11
27
|
}
|
|
12
28
|
/**
|
|
13
29
|
* Read the action data for a service
|
package/dist/esm/data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,SAAS,GAAwB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,SAAS,GAAwB,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAiC,EAAE,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,GAAG,SAAmB;IAC1D,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjC,wDAAwD;IACxD,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,8DAA8D;IAC9D,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,iEAAiE;IACjE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,0BAA0B;YAClD,OAAO,IAAI,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,uDAAuD;QACpF,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAI,UAAkB;IACxD,OAAO,YAAY,CAAI,SAAS,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAI,UAAkB;IAC3D,OAAO,YAAY,CAAI,eAAe,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAI,UAAkB;IAC3D,OAAO,YAAY,CAAI,eAAe,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;AAChE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloud-copilot/iam-data",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.202410011",
|
|
4
4
|
"description": "AWS IAM Data",
|
|
5
5
|
"repository": "github:cloud-copilot/iam-data",
|
|
6
6
|
"updatedAt": "2024-10-01T04:48:40.009Z",
|
|
@@ -18,8 +18,9 @@
|
|
|
18
18
|
"types": "dist/cjs/index.d.ts",
|
|
19
19
|
"scripts": {
|
|
20
20
|
"test": "npx vitest --run --coverage",
|
|
21
|
+
"clean": "rm -rf dist",
|
|
21
22
|
"build": "npx tsc -p tsconfig.cjs.json && npx tsc -p tsconfig.esm.json && ./postbuild.sh",
|
|
22
|
-
"
|
|
23
|
+
"release": "npm install && npm run clean && npm run build && npm run test && npm publish"
|
|
23
24
|
},
|
|
24
25
|
"keywords": [
|
|
25
26
|
"AWS",
|