@ms-cloudpack/path-utilities 0.0.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/lib/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ export { intermediateToSourcePath } from './intermediateToSourcePath.js';
2
+ export { sourceToIntermediatePath } from './sourceToIntermediatePath.js';
3
+ export { slash } from './slash.js';
package/lib/index.js ADDED
@@ -0,0 +1,4 @@
1
+ export { intermediateToSourcePath } from './intermediateToSourcePath.js';
2
+ export { sourceToIntermediatePath } from './sourceToIntermediatePath.js';
3
+ export { slash } from './slash.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Takes a relative intermediate content path (e.g. "lib/foo/bar.js") and resolves it to a source content path
3
+ * (e.g. "/src/foo/foo.tsx"). Note: source files must exist so that the utility can resolve the source.
4
+ */
5
+ export declare function intermediateToSourcePath(relativeIntermediatePath: string, rootPath: string): string;
@@ -0,0 +1,35 @@
1
+ import { existsSync } from 'fs';
2
+ import path from 'path';
3
+ import { slash } from './slash.js';
4
+ /**
5
+ * Takes a relative intermediate content path (e.g. "lib/foo/bar.js") and resolves it to a source content path
6
+ * (e.g. "/src/foo/foo.tsx"). Note: source files must exist so that the utility can resolve the source.
7
+ */
8
+ export function intermediateToSourcePath(relativeIntermediatePath, rootPath) {
9
+ const candidates = [];
10
+ const parts = slash(relativeIntermediatePath).split('/');
11
+ let firstFolderIndex = 0;
12
+ // Find first folder in relative path
13
+ while (parts.length && (!parts[firstFolderIndex] || parts[firstFolderIndex] === '.' || parts[firstFolderIndex] === '..')) {
14
+ firstFolderIndex++;
15
+ }
16
+ // If there is at least 1 folder and 1 filename in the path, add source candidates.
17
+ if ((parts.length - firstFolderIndex) > 1) {
18
+ const isIntermediatePath = ['lib', 'lib-amd', 'lib-esm', 'lib-commonjs', 'dist'].indexOf(parts[firstFolderIndex]) >= 0;
19
+ const sourcePath = isIntermediatePath
20
+ ? path.dirname(parts.map((v, i) => i === firstFolderIndex ? 'src' : v).join('/'))
21
+ : path.dirname(relativeIntermediatePath);
22
+ const ext = path.extname(relativeIntermediatePath);
23
+ const basename = path.basename(relativeIntermediatePath, ext);
24
+ if (!ext || ext === '.js' || ext === '.mjs') {
25
+ ['.tsx', '.ts', '.mtsx', '.mts', '.jsx', '.js', ''].forEach(newExt => candidates.unshift(slash(path.join(sourcePath, basename + newExt))));
26
+ }
27
+ candidates.push(slash(path.join(sourcePath, basename + ext)));
28
+ candidates.push(slash(relativeIntermediatePath));
29
+ }
30
+ return candidates.find(candidate => {
31
+ const resolvedPath = path.resolve(rootPath, candidate);
32
+ return existsSync(resolvedPath);
33
+ }) || candidates[candidates.length - 1] || relativeIntermediatePath;
34
+ }
35
+ //# sourceMappingURL=intermediateToSourcePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intermediateToSourcePath.js","sourceRoot":"../src/","sources":["intermediateToSourcePath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,wBAAgC,EAAE,QAAgB;IACzF,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzD,IAAI,gBAAgB,GAAG,CAAC,CAAC;IAEzB,sCAAsC;IACtC,OAAO,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,EAAE;QACxH,gBAAgB,EAAE,CAAC;KACpB;IAED,mFAAmF;IACnF,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE;QACzC,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;QACvH,MAAM,UAAU,GAAG,kBAAkB;YACnC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAG9D,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;YAC3C,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5I;QAED,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAE9D,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;KAClD;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QACjC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,wBAAwB,CAAC;AACtE,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,34 @@
1
+ import { fileURLToPath } from 'url';
2
+ import { intermediateToSourcePath } from './intermediateToSourcePath.js';
3
+ import path from 'path';
4
+ const testPath = path.join(path.dirname(fileURLToPath(import.meta.url)), '../test-scenarios');
5
+ describe('intermediateToSourcePath', () => {
6
+ it('can resolve a .js', () => {
7
+ expect(intermediateToSourcePath('lib/js.js', testPath)).toEqual('src/js.js');
8
+ });
9
+ it('can resolve a .jsx', () => {
10
+ expect(intermediateToSourcePath('lib/jsx.js', testPath)).toEqual('src/jsx.jsx');
11
+ });
12
+ it('can resolve a .ts', () => {
13
+ expect(intermediateToSourcePath('lib/ts.js', testPath)).toEqual('src/ts.ts');
14
+ });
15
+ it('can resolve a .ts from the src path', () => {
16
+ expect(intermediateToSourcePath('src/ts', testPath)).toEqual('src/ts.ts');
17
+ });
18
+ it('can resolve a .tsx', () => {
19
+ expect(intermediateToSourcePath('lib/tsx.js', testPath)).toEqual('src/tsx.tsx');
20
+ });
21
+ it('can resolve a .mts', () => {
22
+ expect(intermediateToSourcePath('lib/mts.mjs', testPath)).toEqual('src/mts.mts');
23
+ });
24
+ it('can resolve .scss files', () => {
25
+ expect(intermediateToSourcePath('lib/scss.scss.js', testPath)).toEqual('src/scss.scss');
26
+ });
27
+ it('can resolve non-js files', () => {
28
+ expect(intermediateToSourcePath('lib/png.png', testPath)).toEqual('src/png.png');
29
+ });
30
+ it('can fall back to the original path', () => {
31
+ expect(intermediateToSourcePath('lib/dne.mjs', testPath)).toEqual('lib/dne.mjs');
32
+ });
33
+ });
34
+ //# sourceMappingURL=intermediateToSourcePath.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intermediateToSourcePath.test.js","sourceRoot":"../src/","sources":["intermediateToSourcePath.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;AAE9F,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IAExC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,wBAAwB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,wBAAwB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAC"}
package/lib/slash.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare function slash(str: string): string;
package/lib/slash.js ADDED
@@ -0,0 +1,4 @@
1
+ export function slash(str) {
2
+ return str.replace(/\\/g, '/');
3
+ }
4
+ //# sourceMappingURL=slash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slash.js","sourceRoot":"../src/","sources":["slash.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,7 @@
1
+ import { slash } from './slash.js';
2
+ describe('slash', () => {
3
+ it('can reverse slashes', () => {
4
+ expect(slash('\\asdf\\asdf/asdf')).toEqual('/asdf/asdf/asdf');
5
+ });
6
+ });
7
+ //# sourceMappingURL=slash.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slash.test.js","sourceRoot":"../src/","sources":["slash.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Takes a relative source path (e.g. "src/foo/bar.ts") and resolves it to an intermediate content path
3
+ * (e.g. "/lib/foo/bar.js").
4
+ */
5
+ export declare function sourceToIntermediatePath(sourcePath: string): string;
@@ -0,0 +1,27 @@
1
+ import path from 'path';
2
+ import { slash } from './slash.js';
3
+ /**
4
+ * Takes a relative source path (e.g. "src/foo/bar.ts") and resolves it to an intermediate content path
5
+ * (e.g. "/lib/foo/bar.js").
6
+ */
7
+ export function sourceToIntermediatePath(sourcePath) {
8
+ let ext = path.extname(sourcePath);
9
+ const basename = path.basename(sourcePath, ext);
10
+ const pathParts = slash(path.dirname(sourcePath)).split('/');
11
+ if (pathParts[0] === 'src') {
12
+ pathParts[0] = 'lib';
13
+ }
14
+ if (['.ts', '.tsx', '.jsx'].indexOf(ext) >= 0) {
15
+ // Handle js replacement extensions
16
+ ext = '.js';
17
+ }
18
+ else if (['.mts'].indexOf(ext) >= 0) {
19
+ ext = '.mjs';
20
+ }
21
+ else if (['.scss'].indexOf(ext) >= 0) {
22
+ // Handle js appends
23
+ ext += '.js';
24
+ }
25
+ return slash(path.join(...pathParts, basename + ext));
26
+ }
27
+ //# sourceMappingURL=sourceToIntermediatePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceToIntermediatePath.js","sourceRoot":"../src/","sources":["sourceToIntermediatePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,UAAkB;IACzD,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE7D,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;QAC1B,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;KACtB;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC/C,mCAAmC;QACjC,GAAG,GAAG,KAAK,CAAC;KACb;SAAM,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACrC,GAAG,GAAG,MAAM,CAAC;KACd;SAAM,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACtC,oBAAoB;QACpB,GAAG,IAAI,KAAK,CAAA;KACb;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC;AACxD,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,28 @@
1
+ import { sourceToIntermediatePath } from './sourceToIntermediatePath.js';
2
+ describe('sourceToIntermediatePath', () => {
3
+ it('can resolve a .js', () => {
4
+ expect(sourceToIntermediatePath('src/js.js')).toEqual('lib/js.js');
5
+ });
6
+ it('can resolve a .jsx', () => {
7
+ expect(sourceToIntermediatePath('src/jsx.jsx')).toEqual('lib/jsx.js');
8
+ });
9
+ it('can resolve a .ts', () => {
10
+ expect(sourceToIntermediatePath('src/ts.ts')).toEqual('lib/ts.js');
11
+ });
12
+ it('can resolve a .tsx', () => {
13
+ expect(sourceToIntermediatePath('src/tsx.tsx')).toEqual('lib/tsx.js');
14
+ });
15
+ it('can resolve a .mts', () => {
16
+ expect(sourceToIntermediatePath('src/mts.mts')).toEqual('lib/mts.mjs');
17
+ });
18
+ it('can resolve .mjs files', () => {
19
+ expect(sourceToIntermediatePath('src/mjs.mjs')).toEqual('lib/mjs.mjs');
20
+ });
21
+ it('can resolve non-js files', () => {
22
+ expect(sourceToIntermediatePath('src/png.png')).toEqual('lib/png.png');
23
+ });
24
+ it('can fall back tot he original path', () => {
25
+ expect(sourceToIntermediatePath('lib/dne.mjs')).toEqual('lib/dne.mjs');
26
+ });
27
+ });
28
+ //# sourceMappingURL=sourceToIntermediatePath.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceToIntermediatePath.test.js","sourceRoot":"../src/","sources":["sourceToIntermediatePath.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IAExC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@ms-cloudpack/path-utilities",
3
+ "version": "0.0.1",
4
+ "description": "Utilities for resolving paths between source/itermediate/output locations in Cloudpack.",
5
+ "type": "module",
6
+ "sideEffects": false,
7
+ "exports": {
8
+ ".": {
9
+ "types": "./lib/index.d.ts",
10
+ "import": "./lib/index.js"
11
+ }
12
+ },
13
+ "devDependencies": {
14
+ "@ms-cloudpack/scripts": "*",
15
+ "@ms-cloudpack/eslint-config-base": "*"
16
+ },
17
+ "scripts": {
18
+ "build": "just-scripts build",
19
+ "build:watch": "just-scripts build:watch",
20
+ "lint": "just-scripts lint",
21
+ "lint:fix": "just-scripts lint:fix",
22
+ "test": "just-scripts test",
23
+ "test:watch": "just-scripts test:watch"
24
+ },
25
+ "files": [
26
+ "/lib"
27
+ ]
28
+ }