@basemaps/shared 7.0.0 → 7.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.
Files changed (142) hide show
  1. package/build/__tests__/api.test.d.ts +0 -1
  2. package/build/__tests__/api.test.js +38 -37
  3. package/build/__tests__/api.test.js.map +1 -1
  4. package/build/__tests__/env.test.d.ts +0 -1
  5. package/build/__tests__/env.test.js +7 -6
  6. package/build/__tests__/env.test.js.map +1 -1
  7. package/build/__tests__/fqdn.test.d.ts +1 -0
  8. package/build/__tests__/fqdn.test.js +39 -0
  9. package/build/__tests__/fqdn.test.js.map +1 -0
  10. package/build/__tests__/url.test.d.ts +0 -1
  11. package/build/__tests__/url.test.js +11 -10
  12. package/build/__tests__/url.test.js.map +1 -1
  13. package/build/__tests__/util.test.d.ts +0 -1
  14. package/build/__tests__/util.test.js +42 -41
  15. package/build/__tests__/util.test.js.map +1 -1
  16. package/build/__tests__/vdom.test.d.ts +0 -1
  17. package/build/__tests__/vdom.test.js +30 -29
  18. package/build/__tests__/vdom.test.js.map +1 -1
  19. package/build/api.d.ts +0 -1
  20. package/build/api.js +1 -1
  21. package/build/api.js.map +1 -1
  22. package/build/cli/__tests__/git.tag.test.d.ts +0 -1
  23. package/build/cli/__tests__/git.tag.test.js +6 -5
  24. package/build/cli/__tests__/git.tag.test.js.map +1 -1
  25. package/build/cli/base.d.ts +0 -2
  26. package/build/cli/base.js +30 -9
  27. package/build/cli/base.js.map +1 -1
  28. package/build/cli/git.tag.d.ts +0 -1
  29. package/build/cli/info.d.ts +0 -2
  30. package/build/cli/info.js +3 -5
  31. package/build/cli/info.js.map +1 -1
  32. package/build/config.d.ts +0 -1
  33. package/build/config.js +1 -1
  34. package/build/config.js.map +1 -1
  35. package/build/const.d.ts +0 -1
  36. package/build/const.js +1 -1
  37. package/build/const.js.map +1 -1
  38. package/build/dynamo/__tests__/config.dynamo.test.d.ts +0 -1
  39. package/build/dynamo/__tests__/config.dynamo.test.js +71 -41
  40. package/build/dynamo/__tests__/config.dynamo.test.js.map +1 -1
  41. package/build/dynamo/__tests__/config.imagery.test.d.ts +0 -1
  42. package/build/dynamo/__tests__/config.imagery.test.js +41 -47
  43. package/build/dynamo/__tests__/config.imagery.test.js.map +1 -1
  44. package/build/dynamo/__tests__/config.provider.test.d.ts +0 -1
  45. package/build/dynamo/__tests__/config.provider.test.js +6 -5
  46. package/build/dynamo/__tests__/config.provider.test.js.map +1 -1
  47. package/build/dynamo/dynamo.config.base.d.ts +0 -1
  48. package/build/dynamo/dynamo.config.base.js +18 -11
  49. package/build/dynamo/dynamo.config.base.js.map +1 -1
  50. package/build/dynamo/dynamo.config.cached.d.ts +0 -1
  51. package/build/dynamo/dynamo.config.cached.js +6 -1
  52. package/build/dynamo/dynamo.config.cached.js.map +1 -1
  53. package/build/dynamo/dynamo.config.d.ts +42 -5
  54. package/build/dynamo/dynamo.config.js +55 -8
  55. package/build/dynamo/dynamo.config.js.map +1 -1
  56. package/build/file.system.d.ts +26 -0
  57. package/build/file.system.js +98 -0
  58. package/build/file.system.js.map +1 -0
  59. package/build/file.system.middleware.d.ts +20 -0
  60. package/build/file.system.middleware.js +23 -0
  61. package/build/file.system.middleware.js.map +1 -0
  62. package/build/imagery.url.d.ts +67 -0
  63. package/build/imagery.url.js +50 -0
  64. package/build/imagery.url.js.map +1 -0
  65. package/build/index.d.ts +12 -10
  66. package/build/index.js +12 -8
  67. package/build/index.js.map +1 -1
  68. package/build/log.d.ts +0 -1
  69. package/build/log.js +3 -1
  70. package/build/log.js.map +1 -1
  71. package/build/logger.fatal.error.d.ts +0 -1
  72. package/build/logger.fatal.error.js +6 -0
  73. package/build/logger.fatal.error.js.map +1 -1
  74. package/build/url.d.ts +0 -1
  75. package/build/url.js.map +1 -1
  76. package/build/util.d.ts +0 -1
  77. package/build/util.js.map +1 -1
  78. package/build/vdom.d.ts +0 -1
  79. package/build/vdom.js +25 -0
  80. package/build/vdom.js.map +1 -1
  81. package/package.json +17 -13
  82. package/CHANGELOG.md +0 -1118
  83. package/build/__tests__/api.test.d.ts.map +0 -1
  84. package/build/__tests__/env.test.d.ts.map +0 -1
  85. package/build/__tests__/url.test.d.ts.map +0 -1
  86. package/build/__tests__/util.test.d.ts.map +0 -1
  87. package/build/__tests__/vdom.test.d.ts.map +0 -1
  88. package/build/api.d.ts.map +0 -1
  89. package/build/cli/__tests__/git.tag.test.d.ts.map +0 -1
  90. package/build/cli/base.d.ts.map +0 -1
  91. package/build/cli/git.tag.d.ts.map +0 -1
  92. package/build/cli/info.d.ts.map +0 -1
  93. package/build/cog/constants.d.ts +0 -5
  94. package/build/cog/constants.d.ts.map +0 -1
  95. package/build/cog/constants.js +0 -5
  96. package/build/cog/constants.js.map +0 -1
  97. package/build/cog/gdal.config.d.ts +0 -51
  98. package/build/cog/gdal.config.d.ts.map +0 -1
  99. package/build/cog/gdal.config.js +0 -23
  100. package/build/cog/gdal.config.js.map +0 -1
  101. package/build/cog/stac.d.ts +0 -32
  102. package/build/cog/stac.d.ts.map +0 -1
  103. package/build/cog/stac.js +0 -3
  104. package/build/cog/stac.js.map +0 -1
  105. package/build/cog/types.d.ts +0 -83
  106. package/build/cog/types.d.ts.map +0 -1
  107. package/build/cog/types.js +0 -2
  108. package/build/cog/types.js.map +0 -1
  109. package/build/composite.error.d.ts +0 -2
  110. package/build/composite.error.d.ts.map +0 -1
  111. package/build/composite.error.js +0 -2
  112. package/build/composite.error.js.map +0 -1
  113. package/build/config.d.ts.map +0 -1
  114. package/build/const.d.ts.map +0 -1
  115. package/build/dynamo/__tests__/config.dynamo.test.d.ts.map +0 -1
  116. package/build/dynamo/__tests__/config.imagery.test.d.ts.map +0 -1
  117. package/build/dynamo/__tests__/config.provider.test.d.ts.map +0 -1
  118. package/build/dynamo/dynamo.config.base.d.ts.map +0 -1
  119. package/build/dynamo/dynamo.config.cached.d.ts.map +0 -1
  120. package/build/dynamo/dynamo.config.d.ts.map +0 -1
  121. package/build/file/__tests__/file.local.test.d.ts +0 -2
  122. package/build/file/__tests__/file.local.test.d.ts.map +0 -1
  123. package/build/file/__tests__/file.local.test.js +0 -49
  124. package/build/file/__tests__/file.local.test.js.map +0 -1
  125. package/build/file/__tests__/file.operator.test.helper.d.ts +0 -22
  126. package/build/file/__tests__/file.operator.test.helper.d.ts.map +0 -1
  127. package/build/file/__tests__/file.operator.test.helper.js +0 -56
  128. package/build/file/__tests__/file.operator.test.helper.js.map +0 -1
  129. package/build/file/file.config.d.ts +0 -28
  130. package/build/file/file.config.d.ts.map +0 -1
  131. package/build/file/file.config.js +0 -11
  132. package/build/file/file.config.js.map +0 -1
  133. package/build/file/index.d.ts +0 -11
  134. package/build/file/index.d.ts.map +0 -1
  135. package/build/file/index.js +0 -56
  136. package/build/file/index.js.map +0 -1
  137. package/build/index.d.ts.map +0 -1
  138. package/build/log.d.ts.map +0 -1
  139. package/build/logger.fatal.error.d.ts.map +0 -1
  140. package/build/url.d.ts.map +0 -1
  141. package/build/util.d.ts.map +0 -1
  142. package/build/vdom.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/api.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/env.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"url.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/url.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/util.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"vdom.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/vdom.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,QAAsB,CAAC;AAW5C,wBAAgB,SAAS,IAAI,MAAM,CAelC;AAED,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,IAAI,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;CAC9C;AAED,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,YAAY,CAclE;AAED,8CAA8C;AAC9C,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAK7D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.tag.test.d.ts","sourceRoot":"","sources":["../../../src/cli/__tests__/git.tag.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/cli/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,gCAAgC,CAAC;AAKxC,8BAAsB,eAAgB,SAAQ,iBAAiB;IAC7D,OAAO,gEAIJ;IACH,YAAY,gEAIT;IAEH,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;gBAEZ,GAAG,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE;IAMlE,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAepC,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAI7B,GAAG,IAAI,IAAI;CAUnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.tag.d.ts","sourceRoot":"","sources":["../../src/cli/git.tag.ts"],"names":[],"mappings":"AAEA,wBAAgB,MAAM,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAK1D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/cli/info.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAC;AAIxC,uCAAuC;AACvC,eAAO,MAAM,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAMvF,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,KAAK,QAAc,CAAC"}
@@ -1,5 +0,0 @@
1
- /** Default Aligned levels between resolution zoom level and cog zoom level */
2
- export declare const AlignedLevel = 7;
3
- /** When a tile has at least this much covering merge it up to parent */
4
- export declare const CoveringFraction = 0.25;
5
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/cog/constants.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,OAAO,CAAC"}
@@ -1,5 +0,0 @@
1
- /** Default Aligned levels between resolution zoom level and cog zoom level */
2
- export const AlignedLevel = 7;
3
- /** When a tile has at least this much covering merge it up to parent */
4
- export const CoveringFraction = 0.25;
5
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/cog/constants.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAE9B,wEAAwE;AACxE,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC"}
@@ -1,51 +0,0 @@
1
- import { TileMatrixSet } from '@basemaps/geo';
2
- import { BBox } from '@linzjs/geojson';
3
- export type GdalCogBuilderOptionsResampling = 'nearest' | 'bilinear' | 'cubic' | 'cubicspline' | 'lanczos' | 'average' | 'mode';
4
- export interface GdalCogBuilderResampling {
5
- /**
6
- * Resampling for warping
7
- * @default 'bilinear'
8
- */
9
- warp: GdalCogBuilderOptionsResampling;
10
- /**
11
- * Resampling for overview
12
- * @default 'lanczos'
13
- */
14
- overview: GdalCogBuilderOptionsResampling;
15
- }
16
- export interface GdalCogBuilderOptions {
17
- /**
18
- * How to align levels
19
- */
20
- tileMatrix: TileMatrixSet;
21
- /**
22
- * Number of aligned tile levels
23
- * @default 1
24
- */
25
- alignmentLevels: number;
26
- /** Limit the output to a bounding box
27
- */
28
- bbox?: BBox;
29
- /**
30
- * Compression to use for the cog
31
- * @default 'webp'
32
- */
33
- compression: 'webp' | 'jpeg';
34
- /**
35
- * Resampling methods to use
36
- */
37
- resampling: GdalCogBuilderResampling;
38
- /**
39
- * Output tile size
40
- * @default 512
41
- */
42
- blockSize: number;
43
- targetRes: number;
44
- /**
45
- * Compression quality
46
- */
47
- quality: number;
48
- }
49
- export declare const GdalCogBuilderDefaults: GdalCogBuilderOptions;
50
- export declare const GdalResamplingOptions: Record<string, GdalCogBuilderOptionsResampling>;
51
- //# sourceMappingURL=gdal.config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gdal.config.d.ts","sourceRoot":"","sources":["../../src/cog/gdal.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,MAAM,MAAM,+BAA+B,GACvC,SAAS,GACT,UAAU,GACV,OAAO,GACP,aAAa,GACb,SAAS,GACT,SAAS,GACT,MAAM,CAAC;AAEX,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,IAAI,EAAE,+BAA+B,CAAC;IACtC;;;OAGG;IACH,QAAQ,EAAE,+BAA+B,CAAC;CAC3C;AAED,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,UAAU,EAAE,aAAa,CAAC;IAC1B;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;OACG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;;OAGG;IACH,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,wBAAwB,CAAC;IACrC;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,sBAAsB,EAAE,qBAWpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,+BAA+B,CAQjF,CAAC"}
@@ -1,23 +0,0 @@
1
- import { GoogleTms } from '@basemaps/geo';
2
- export const GdalCogBuilderDefaults = {
3
- resampling: {
4
- warp: 'bilinear',
5
- overview: 'lanczos',
6
- },
7
- compression: 'webp',
8
- tileMatrix: GoogleTms,
9
- alignmentLevels: 1,
10
- targetRes: 0,
11
- blockSize: 512,
12
- quality: 90,
13
- };
14
- export const GdalResamplingOptions = {
15
- nearest: 'nearest',
16
- bilinear: 'bilinear',
17
- cubic: 'cubic',
18
- cubicspline: 'cubicspline',
19
- lanczos: 'lanczos',
20
- average: 'average',
21
- mode: 'mode',
22
- };
23
- //# sourceMappingURL=gdal.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gdal.config.js","sourceRoot":"","sources":["../../src/cog/gdal.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAgEzD,MAAM,CAAC,MAAM,sBAAsB,GAA0B;IAC3D,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,SAAS;KACpB;IACD,WAAW,EAAE,MAAM;IACnB,UAAU,EAAE,SAAS;IACrB,eAAe,EAAE,CAAC;IAClB,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAoD;IACpF,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACb,CAAC"}
@@ -1,32 +0,0 @@
1
- import { EpsgCode, StacCollection, StacItem } from '@basemaps/geo';
2
- import { CogGdalSettings } from './types.js';
3
- export interface CogGenerated {
4
- /** ISO date string */
5
- datetime: string;
6
- /** Package name of the generator */
7
- package: string;
8
- version: string;
9
- /** Commit hash of the generator */
10
- hash: string | undefined;
11
- }
12
- export interface CogOutputSummery extends CogGdalSettings {
13
- cutlineBlend?: number;
14
- }
15
- export interface CogSummaries {
16
- 'proj:epsg': EpsgCode[];
17
- /** Ground Sampling Distance in meters per pixel of the generated imagery */
18
- gsd: number[];
19
- 'linz:output': CogOutputSummery[];
20
- 'linz:generated': CogGenerated[];
21
- }
22
- export declare const CogStacKeywords: string[];
23
- export declare const CogStacItemExtensions: string[];
24
- /** STAC compliant structure for storing Job instructions */
25
- export type CogStac = StacCollection<CogSummaries>;
26
- export interface CogStacItemProperties {
27
- datetime: string;
28
- gsd: number;
29
- 'proj:epsg': EpsgCode;
30
- }
31
- export type CogStacItem = StacItem<CogStacItemProperties>;
32
- //# sourceMappingURL=stac.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stac.d.ts","sourceRoot":"","sources":["../../src/cog/stac.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,YAAY;IAC3B,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,4EAA4E;IAC5E,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,gBAAgB,EAAE,YAAY,EAAE,CAAC;CAGlC;AAED,eAAO,MAAM,eAAe,UAA6B,CAAC;AAC1D,eAAO,MAAM,qBAAqB,UAAiB,CAAC;AAEpD,4DAA4D;AAC5D,MAAM,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;AAEnD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC"}
package/build/cog/stac.js DELETED
@@ -1,3 +0,0 @@
1
- export const CogStacKeywords = ['Imagery', 'New Zealand'];
2
- export const CogStacItemExtensions = ['projection'];
3
- //# sourceMappingURL=stac.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stac.js","sourceRoot":"","sources":["../../src/cog/stac.ts"],"names":[],"mappings":"AA4BA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAAY,CAAC,CAAC"}
@@ -1,83 +0,0 @@
1
- import { BoundingBox, EpsgCode, NamedBounds, TileMatrixSet } from '@basemaps/geo';
2
- import { GdalCogBuilderResampling } from './gdal.config.js';
3
- import { FileConfig } from '../file/file.config.js';
4
- export interface FeatureCollectionWithCrs extends GeoJSON.FeatureCollection {
5
- crs: {
6
- type: string;
7
- properties: {
8
- name: string;
9
- };
10
- };
11
- }
12
- export interface ImageryProperties {
13
- /** Ground Sampling Distance in meters per pixel */
14
- gsd: number;
15
- /** File access details */
16
- location: FileConfig;
17
- /** List of input files */
18
- files: NamedBounds[];
19
- }
20
- export interface CogSourceProperties extends ImageryProperties {
21
- epsg: EpsgCode;
22
- }
23
- export interface CogGdalSettings {
24
- resampling: GdalCogBuilderResampling;
25
- nodata?: number;
26
- /**
27
- * Quality level to use
28
- * @default 90
29
- */
30
- quality: number;
31
- /** Vrts will add a second alpha layer if one exists, so dont always add one */
32
- addAlpha: boolean;
33
- }
34
- export interface CogOutputProperties extends CogGdalSettings, ImageryProperties {
35
- /** The bounds of all the cogs */
36
- bounds: BoundingBox;
37
- /** Identifier of the tile matrix to use */
38
- tileMatrix?: string;
39
- epsg: EpsgCode;
40
- /** Cutline options */
41
- cutline?: {
42
- href: string;
43
- blend: number;
44
- };
45
- /** Should this job ignore source coverage and just produce one big COG for EPSG extent */
46
- oneCogCovering: boolean;
47
- }
48
- export interface CogJobJson {
49
- /** Unique processing Id */
50
- id: string;
51
- /** Imagery set name */
52
- name: string;
53
- title: string;
54
- description?: string;
55
- source: CogSourceProperties;
56
- output: CogOutputProperties;
57
- }
58
- export interface CogJob extends CogJobJson {
59
- tileMatrix: TileMatrixSet;
60
- targetZoom: number;
61
- getJobPath(key?: string): string;
62
- }
63
- export interface SourceMetadata {
64
- /** Number of imagery bands generally RGB (3) or RGBA (4) */
65
- bands: number;
66
- /** Bounding box for polygons */
67
- bounds: NamedBounds[];
68
- /** The number of pixels per meter for the best source image */
69
- pixelScale: number;
70
- /** Highest quality zoom level for the images */
71
- resZoom: number;
72
- /** EPSG projection number */
73
- projection: EpsgCode;
74
- /** GDAL_NODATA value */
75
- nodata?: number;
76
- }
77
- export interface CogBuilderMetadata extends SourceMetadata {
78
- /** the bounding box of all the COGs */
79
- targetBounds: BoundingBox;
80
- /** list of file basenames and their bounding box */
81
- files: NamedBounds[];
82
- }
83
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cog/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CAAC,iBAAiB;IACzE,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,CAAC;IAErB,0BAA0B;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,wBAAwB,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,+EAA+E;IAC/E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe,EAAE,iBAAiB;IAC7E,iCAAiC;IACjC,MAAM,EAAE,WAAW,CAAC;IAEpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,CAAC;IAEf,sBAAsB;IACtB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,0FAA0F;IAC1F,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,MAAM,EAAE,WAAW,EAAE,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IAEnB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAEhB,6BAA6B;IAC7B,UAAU,EAAE,QAAQ,CAAC;IAErB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,uCAAuC;IACvC,YAAY,EAAE,WAAW,CAAC;IAE1B,oDAAoD;IACpD,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cog/types.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export { CompositeError } from '@chunkd/core';
2
- //# sourceMappingURL=composite.error.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composite.error.d.ts","sourceRoot":"","sources":["../src/composite.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
@@ -1,2 +0,0 @@
1
- export { CompositeError } from '@chunkd/core';
2
- //# sourceMappingURL=composite.error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"composite.error.js","sourceRoot":"","sources":["../src/composite.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAM1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,GAAG,sBAAsB,CAGpF;AAED,wBAAgB,gBAAgB,IAAI,sBAAsB,CAEzD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,KAAK;;;;;;;;;;;;;CAajB,CAAC;AAEF,eAAO,MAAM,GAAG;IACd,iDAAiD;;IAGjD;;;OAGG;;IAGH,yCAAyC;;IAGzC,0DAA0D;;IAG1D,6DAA6D;;IAG7D,uDAAuD;;IAGvD,6BAA6B;;IAG7B,uBAAuB;;;QAIrB,gDAAgD;;QAEhD,2DAA2D;;;;;;;;;IAW7D,+EAA+E;iBAClE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIxC,gGAAgG;uBAC7E,MAAM,iBAAiB,MAAM,GAAG,MAAM;oBAazC,OAAO;CAGxB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.dynamo.test.d.ts","sourceRoot":"","sources":["../../../src/dynamo/__tests__/config.dynamo.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.imagery.test.d.ts","sourceRoot":"","sources":["../../../src/dynamo/__tests__/config.imagery.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.provider.test.d.ts","sourceRoot":"","sources":["../../../src/dynamo/__tests__/config.provider.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dynamo.config.base.d.ts","sourceRoot":"","sources":["../../src/dynamo/dynamo.config.base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE7G,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,MAAM,OAAO,GAAG;IAAE,EAAE,EAAE;QAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AAK5C,qBAAa,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAC9F,GAAG,EAAE,oBAAoB,CAAC;gBAEd,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,YAAY;IAK3D,gDAAgD;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAK5B,OAAO,KAAK,EAAE,GAEb;IAED,WAAW,IAAI,IAAI,IAAI,yBAAyB,CAAC,CAAC,CAAC;IAInD,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;IAIH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAUhD,kCAAkC;IACrB,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IA+BzD,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAKtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dynamo.config.cached.d.ts","sourceRoot":"","sources":["../../src/dynamo/dynamo.config.cached.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qBAAa,kBAAkB,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;IAC/E,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAa;IAErB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAYlC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAuB/D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dynamo.config.d.ts","sourceRoot":"","sources":["../../src/dynamo/dynamo.config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,qBAAa,oBAAqB,SAAQ,sBAAsB;IAC9D,MAAM,sBAAgB;IAEtB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,WAAqB;IAEzB,OAAO,oCAAqE;IAC5E,KAAK,wCAAuE;IAC5E,OAAO,kCAAmE;IAC1E,QAAQ,qCAAuE;IAC/E,YAAY,iCAAuE;gBAEvE,SAAS,EAAE,MAAM;IAM7B,MAAM,IAAI,UAAU;CAIrB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=file.local.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.local.test.d.ts","sourceRoot":"","sources":["../../../src/file/__tests__/file.local.test.ts"],"names":[],"mappings":""}
@@ -1,49 +0,0 @@
1
- import { promises as fs } from 'fs';
2
- import o from 'ospec';
3
- import path from 'path';
4
- import url from 'url';
5
- import { fsa } from '../index.js';
6
- const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
7
- async function rmF(path) {
8
- try {
9
- await fs.unlink(path);
10
- }
11
- catch (_err) { }
12
- }
13
- o.spec('file.local', () => {
14
- const jsonFilePath = __dirname + '/testing.json';
15
- const jsonFilePathGz = jsonFilePath + '.gz';
16
- o.afterEach(async () => {
17
- await Promise.all([rmF(jsonFilePathGz), rmF(jsonFilePath)]);
18
- });
19
- o('readJson writeJson gzip', async () => {
20
- try {
21
- await fsa.writeJson(jsonFilePathGz, { json: '1'.repeat(1000) });
22
- const ans = await fsa.readJson(jsonFilePathGz);
23
- const stat = await fs.stat(jsonFilePathGz);
24
- o(stat.size).equals(44);
25
- o(ans).deepEquals({ json: '1'.repeat(1000) });
26
- }
27
- catch (e) {
28
- console.log(e);
29
- }
30
- });
31
- o('readJson writeJson', async () => {
32
- await fsa.writeJson(jsonFilePath, { json: '1'.repeat(1000) });
33
- const ans = await fsa.readJson(jsonFilePath);
34
- const stat = await fs.stat(jsonFilePath);
35
- o(stat.size).equals(1016);
36
- o(ans).deepEquals({ json: '1'.repeat(1000) });
37
- });
38
- o('should support reading relative paths', async () => {
39
- try {
40
- await fs.writeFile('foo.tmp', Buffer.from('hello world'));
41
- const res = await fsa.read('foo.tmp');
42
- o(res.toString()).equals('hello world');
43
- }
44
- finally {
45
- await fs.unlink('foo.tmp');
46
- }
47
- });
48
- });
49
- //# sourceMappingURL=file.local.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.local.test.js","sourceRoot":"","sources":["../../../src/file/__tests__/file.local.test.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- /// <reference types="node" />
2
- export interface MockFs {
3
- /**
4
- * Storage for `FileOperator.readJson` and `writeJson`. If an Error is used as a value then
5
- * `readJson` will throw the error.
6
- */
7
- jsStore: Record<string, any>;
8
- /**
9
- * Storage for `FileOperator.read` and `write`. If an Error is used as a value then
10
- * `read` will throw the error.
11
- */
12
- rawStore: Record<string, Buffer | Error>;
13
- /** Use in `o.beforeEach(mockFs.setup)` */
14
- setup(): void;
15
- /** Use in `o.afterEach(mockFs.teardown)` */
16
- teardown(): void;
17
- }
18
- /**
19
- * Create an interface for stubbing `FileOperator.read,write,readJson,writeJson`
20
- */
21
- export declare function mockFileOperator(): MockFs;
22
- //# sourceMappingURL=file.operator.test.helper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.operator.test.helper.d.ts","sourceRoot":"","sources":["../../../src/file/__tests__/file.operator.test.helper.ts"],"names":[],"mappings":";AAGA,MAAM,WAAW,MAAM;IACrB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IACzC,0CAA0C;IAC1C,KAAK,IAAI,IAAI,CAAC;IACd,4CAA4C;IAC5C,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAgDzC"}
@@ -1,56 +0,0 @@
1
- import { CompositeError } from '../../composite.error.js';
2
- import { fsa } from '../index.js';
3
- /**
4
- * Create an interface for stubbing `FileOperator.read,write,readJson,writeJson`
5
- */
6
- export function mockFileOperator() {
7
- const origWrite = fsa.write;
8
- const origRead = fsa.read;
9
- const origReadJson = fsa.readJson;
10
- const origWriteJson = fsa.writeJson;
11
- let jsStore = {};
12
- const mockReadJson = async (path) => {
13
- var _a;
14
- const ans = (_a = jsStore[path]) !== null && _a !== void 0 ? _a : new CompositeError('Not Found', 404, new Error('Mock'));
15
- if (ans instanceof Error)
16
- throw ans;
17
- return ans;
18
- };
19
- const mockWriteJson = async (path, json) => {
20
- jsStore[path] = json;
21
- };
22
- let rawStore = {};
23
- const mockRead = async (path) => {
24
- var _a;
25
- const ans = (_a = rawStore[path]) !== null && _a !== void 0 ? _a : new CompositeError('Not Found', 404, new Error('Mock'));
26
- if (ans instanceof Error)
27
- throw ans;
28
- return ans;
29
- };
30
- const mockWrite = async (path, buffer) => {
31
- rawStore[path] = buffer;
32
- };
33
- return {
34
- get jsStore() {
35
- return jsStore;
36
- },
37
- get rawStore() {
38
- return rawStore;
39
- },
40
- setup() {
41
- fsa.read = mockRead;
42
- fsa.write = mockWrite;
43
- fsa.readJson = mockReadJson;
44
- fsa.writeJson = mockWriteJson;
45
- jsStore = {};
46
- rawStore = {};
47
- },
48
- teardown() {
49
- fsa.read = origRead;
50
- fsa.write = origWrite;
51
- fsa.readJson = origReadJson;
52
- fsa.writeJson = origWriteJson;
53
- },
54
- };
55
- }
56
- //# sourceMappingURL=file.operator.test.helper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.operator.test.helper.js","sourceRoot":"","sources":["../../../src/file/__tests__/file.operator.test.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAmBlC;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;IAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC;IAClC,MAAM,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC;IAEpC,IAAI,OAAO,GAAwB,EAAE,CAAC;IACtC,MAAM,YAAY,GAAG,KAAK,EAAE,IAAY,EAAgB,EAAE;;QACxD,MAAM,GAAG,GAAG,MAAA,OAAO,CAAC,IAAI,CAAC,mCAAI,IAAI,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,IAAI,GAAG,YAAY,KAAK;YAAE,MAAM,GAAG,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,KAAK,EAAE,IAAY,EAAE,IAAS,EAAiB,EAAE;QACrE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvB,CAAC,CAAC;IAEF,IAAI,QAAQ,GAAmC,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAY,EAAmB,EAAE;;QACvD,MAAM,GAAG,GAAG,MAAA,QAAQ,CAAC,IAAI,CAAC,mCAAI,IAAI,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACtF,IAAI,GAAG,YAAY,KAAK;YAAE,MAAM,GAAG,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAE,MAAc,EAAiB,EAAE;QACtE,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,OAAO;YACT,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,KAAK;YACH,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;YACtB,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC5B,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC;YAC9B,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;QACD,QAAQ;YACN,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC;YACpB,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;YACtB,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC5B,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,28 +0,0 @@
1
- export type FileConfigPath = FileConfig & FileConfigWithPaths;
2
- export interface FileConfigWithPaths {
3
- /** absolute path to all files referenced */
4
- files: string[];
5
- }
6
- export declare function isFileConfigPath(r: any): r is FileConfigPath;
7
- export type FileConfig = FileConfigLocal | FileConfigS3 | FileConfigS3Role;
8
- export interface FileConfigLocal {
9
- /** Absolute folder or file path */
10
- path: string;
11
- type: 'local';
12
- }
13
- export interface FileConfigS3 {
14
- /**
15
- * absolute s3 uri
16
- * @example s3://foo/bar
17
- */
18
- path: string;
19
- type: 's3';
20
- }
21
- export interface FileConfigS3Role extends FileConfigS3 {
22
- /** AWS Role ARN to use to access the related S3 Bucket */
23
- roleArn: string;
24
- /** Optional AWS externalId if needed */
25
- externalId?: string;
26
- }
27
- export declare function isConfigS3Role(r?: string | FileConfig): r is FileConfigS3Role;
28
- //# sourceMappingURL=file.config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.config.d.ts","sourceRoot":"","sources":["../../src/file/file.config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,mBAAmB,CAAC;AAE9D,MAAM,WAAW,mBAAmB;IAClC,4CAA4C;IAC5C,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,cAAc,CAE5D;AAED,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,YAAY,GAAG,gBAAgB,CAAC;AAE3E,MAAM,WAAW,eAAe;IAC9B,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,CAAC,IAAI,gBAAgB,CAI7E"}
@@ -1,11 +0,0 @@
1
- export function isFileConfigPath(r) {
2
- return Array.isArray(r['files']);
3
- }
4
- export function isConfigS3Role(r) {
5
- if (r == null)
6
- return false;
7
- if (typeof r === 'string')
8
- return false;
9
- return 'roleArn' in r && typeof r.roleArn === 'string';
10
- }
11
- //# sourceMappingURL=file.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.config.js","sourceRoot":"","sources":["../../src/file/file.config.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,gBAAgB,CAAC,CAAM;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AACnC,CAAC;AA0BD,MAAM,UAAU,cAAc,CAAC,CAAuB;IACpD,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IAC5B,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,SAAS,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC;AACzD,CAAC"}
@@ -1,11 +0,0 @@
1
- export * from './file.config.js';
2
- import { fsa as fsaSource } from '@chunkd/fs';
3
- import { FileConfig } from './file.config.js';
4
- export type FsaJson = typeof fsaSource & {
5
- readJson<T>(filePath: string): Promise<T>;
6
- writeJson<T>(filePath: string, obj: T): Promise<void>;
7
- /** Add a file system configuration */
8
- configure(fs: FileConfig): void;
9
- };
10
- export declare const fsa: FsaJson;
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,GAAG,IAAI,SAAS,EAAE,MAAM,YAAY,CAAC;AAQ9C,OAAO,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAI9D,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,GAAG;IACvC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,sCAAsC;IACtC,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,GAAG,SAA8B,CAAC"}
@@ -1,56 +0,0 @@
1
- export * from './file.config.js';
2
- import { parseUri } from '@chunkd/core';
3
- import { fsa as fsaSource } from '@chunkd/fs';
4
- import { FsAwsS3 } from '@chunkd/source-aws';
5
- import { AwsCredentials, FsAwsS3ProviderV2 } from '@chunkd/source-aws-v2';
6
- import S3 from 'aws-sdk/clients/s3.js';
7
- import { promisify } from 'util';
8
- import { createGzip, gunzip } from 'zlib';
9
- import { Env } from '../const.js';
10
- import { LogConfig } from '../log.js';
11
- import { isConfigS3Role } from './file.config.js';
12
- const pGunzip = promisify(gunzip);
13
- export const fsa = fsaSource;
14
- fsa.readJson = async function readJson(filePath) {
15
- const data = await this.read(filePath);
16
- if (filePath.endsWith('.gz')) {
17
- return JSON.parse((await pGunzip(data)).toString());
18
- }
19
- else {
20
- return JSON.parse(data.toString());
21
- }
22
- };
23
- fsa.writeJson = async function writeJson(filePath, obj) {
24
- const json = Buffer.from(JSON.stringify(obj, undefined, 2));
25
- if (filePath.endsWith('.gz')) {
26
- const gzip = createGzip();
27
- gzip.end(json);
28
- return this.write(filePath, gzip);
29
- }
30
- else {
31
- return this.write(filePath, json);
32
- }
33
- };
34
- fsa.configure = function configure(cfg) {
35
- if (cfg.type !== 's3')
36
- return; // ignore local configs
37
- if (!isConfigS3Role(cfg))
38
- return; // ignore configs which don't need role assumptions
39
- const res = parseUri(cfg.path);
40
- if (res == null)
41
- throw new Error('Failed to parse URI: ' + cfg.path);
42
- const bucketUri = `s3://${res.bucket}/`;
43
- this.register(bucketUri, AwsCredentials.fsFromRole(cfg.roleArn, cfg.externalId));
44
- };
45
- const s3Fs = new FsAwsS3(new S3());
46
- fsa.register('s3://', s3Fs);
47
- const bucketProviderConfig = Env.get(Env.AwsRoleConfigPath);
48
- if (bucketProviderConfig != null) {
49
- const provider = new FsAwsS3ProviderV2(bucketProviderConfig, fsa);
50
- provider.onFileSystemCreated = (ro, fs) => {
51
- LogConfig.get().debug({ roleArn: ro.roleArn, prefix: ro.prefix }, 'FileSystem:Registered');
52
- fsa.register(ro.prefix, fs);
53
- };
54
- s3Fs.credentials = provider;
55
- }
56
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/file/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC9C,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAClH,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEpE,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC"}