static-file-mapper 0.3.0

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/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # Static File Mapper
2
+
3
+ Helps with managing static files for frontend deployments.
@@ -0,0 +1,32 @@
1
+ export interface StaticFileMapping {
2
+ name: string;
3
+ generatedName: string;
4
+ }
5
+ export declare type MappingStore = StaticFileMapping[];
6
+ /**
7
+ * Allows resolving static file mappings.
8
+ */
9
+ export interface StaticFileMapper {
10
+ resolve({ name }: {
11
+ name: string;
12
+ }): Promise<string>;
13
+ has({ name }: {
14
+ name: string;
15
+ }): Promise<boolean>;
16
+ }
17
+ export declare class StaticFileMapperRun implements StaticFileMapper {
18
+ private store;
19
+ private baseUrl;
20
+ private readStore;
21
+ has({ name }: {
22
+ name: string;
23
+ }): Promise<boolean>;
24
+ resolve({ name }: {
25
+ name: string;
26
+ }): Promise<string>;
27
+ constructor({ store, baseUrl }: {
28
+ store: MappingStore;
29
+ baseUrl: string;
30
+ });
31
+ }
32
+ //# sourceMappingURL=staticFileMapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staticFileMapper.d.ts","sourceRoot":"","sources":["../../src/staticFileMapper.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,oBAAY,YAAY,GAAG,iBAAiB,EAAE,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnD;AAED,qBAAa,mBAAoB,YAAW,gBAAgB;IAC1D,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,SAAS;IAIJ,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAQjD,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;gBAUrD,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAIzE"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StaticFileMapperRun = void 0;
4
+ class StaticFileMapperRun {
5
+ constructor({ store, baseUrl }) {
6
+ this.store = store;
7
+ this.baseUrl = baseUrl;
8
+ }
9
+ readStore() {
10
+ return this.store;
11
+ }
12
+ async has({ name }) {
13
+ const store = this.readStore();
14
+ const mapping = store.find((mapping) => mapping.name === name);
15
+ return !!mapping;
16
+ }
17
+ async resolve({ name }) {
18
+ const store = this.readStore();
19
+ const mapping = store.find((mapping) => mapping.name === name);
20
+ if (!mapping) {
21
+ throw new Error(`Cannot find static file mapping for ${name}`);
22
+ }
23
+ return `${this.baseUrl}${mapping.generatedName}`;
24
+ }
25
+ }
26
+ exports.StaticFileMapperRun = StaticFileMapperRun;
27
+ //# sourceMappingURL=staticFileMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staticFileMapper.js","sourceRoot":"","sources":["../../src/staticFileMapper.ts"],"names":[],"mappings":";;;AAeA,MAAa,mBAAmB;IA0B9B,YAAY,EAAE,KAAK,EAAE,OAAO,EAA4C;QACtE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAzBO,SAAS;QACf,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAoB;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAE/D,OAAO,CAAC,CAAC,OAAO,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAoB;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;SAChE;QACD,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IACnD,CAAC;CAMF;AA9BD,kDA8BC"}
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "static-file-mapper",
3
+ "version": "0.3.0",
4
+ "description": "Helps tracking path to generated static files for deployment bundles",
5
+ "keywords": [
6
+ "javascript"
7
+ ],
8
+ "homepage": "https://goldstack.party",
9
+ "bugs": {
10
+ "url": "https://github.com/goldstack/goldstack/issues"
11
+ },
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "https://github.com/goldstack/goldstack.git"
15
+ },
16
+ "license": "MIT",
17
+ "author": "Max Rohde",
18
+ "sideEffects": false,
19
+ "main": "dist/src/staticFileMapper.js",
20
+ "scripts": {
21
+ "build": "yarn clean && yarn compile",
22
+ "build:watch": "yarn clean && yarn compile-watch",
23
+ "clean": "rimraf ./dist",
24
+ "compile": "tsc -p tsconfig.json",
25
+ "compile-watch": "tsc -p tsconfig.json --watch",
26
+ "compile-watch:light": "nodemon --watch ./src/ -e '*' --exec 'yarn compile'",
27
+ "coverage": "jest --collect-coverage --passWithNoTests --config=./jest.config.js --runInBand",
28
+ "prepublishOnly": "yarn run build",
29
+ "publish": "utils-git changed --exec \"yarn npm publish $@\"",
30
+ "test-ci": "jest --passWithNoTests --config=./jest.config.js --runInBand",
31
+ "version:apply": "utils-git changed --exec \"yarn version $@ && yarn version apply\""
32
+ },
33
+ "devDependencies": {
34
+ "@goldstack/utils-git": "0.2.0",
35
+ "@types/aws-lambda": "^8.10.88",
36
+ "@types/jest": "^28.1.8",
37
+ "@types/node": "^18.7.13",
38
+ "jest": "^28.1.0",
39
+ "rimraf": "^3.0.2",
40
+ "ts-jest": "^28.0.2",
41
+ "typescript": "^4.7.4"
42
+ },
43
+ "publishConfig": {
44
+ "main": "dist/src/staticFileMapper.js"
45
+ }
46
+ }