@basemaps/cli 6.46.0 → 7.1.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 (233) hide show
  1. package/README.md +10 -108
  2. package/build/cli/__tests__/util.test.d.ts +0 -1
  3. package/build/cli/__tests__/util.test.js +11 -10
  4. package/build/cli/__tests__/util.test.js.map +1 -1
  5. package/build/cli/bin.d.ts +0 -1
  6. package/build/cli/config/action.bundle.assets.d.ts +5 -7
  7. package/build/cli/config/action.bundle.assets.js +34 -21
  8. package/build/cli/config/action.bundle.assets.js.map +1 -1
  9. package/build/cli/config/action.bundle.d.ts +1 -1
  10. package/build/cli/config/action.bundle.js +40 -12
  11. package/build/cli/config/action.bundle.js.map +1 -1
  12. package/build/cli/config/action.import.d.ts +4 -9
  13. package/build/cli/config/action.import.js +131 -110
  14. package/build/cli/config/action.import.js.map +1 -1
  15. package/build/cli/config/config.diff.d.ts +2 -2
  16. package/build/cli/config/config.diff.js +6 -4
  17. package/build/cli/config/config.diff.js.map +1 -1
  18. package/build/cli/config/config.update.d.ts +3 -5
  19. package/build/cli/config/config.update.js +42 -7
  20. package/build/cli/config/config.update.js.map +1 -1
  21. package/build/cli/folder.d.ts +0 -1
  22. package/build/cli/folder.js +1 -2
  23. package/build/cli/folder.js.map +1 -1
  24. package/build/cli/index.d.ts +0 -2
  25. package/build/cli/index.js +2 -17
  26. package/build/cli/index.js.map +1 -1
  27. package/build/cli/server/action.serve.d.ts +0 -1
  28. package/build/cli/server/action.serve.js +27 -4
  29. package/build/cli/server/action.serve.js.map +1 -1
  30. package/build/cli/util.d.ts +3 -8
  31. package/build/cli/util.js +48 -55
  32. package/build/cli/util.js.map +1 -1
  33. package/package.json +20 -24
  34. package/CHANGELOG.md +0 -1589
  35. package/build/cli/__tests__/util.test.d.ts.map +0 -1
  36. package/build/cli/base.cli.d.ts +0 -1
  37. package/build/cli/base.cli.d.ts.map +0 -1
  38. package/build/cli/base.cli.js +0 -2
  39. package/build/cli/base.cli.js.map +0 -1
  40. package/build/cli/bin.d.ts.map +0 -1
  41. package/build/cli/cogify/__tests__/batch.job.test.d.ts +0 -2
  42. package/build/cli/cogify/__tests__/batch.job.test.d.ts.map +0 -1
  43. package/build/cli/cogify/__tests__/batch.job.test.js +0 -92
  44. package/build/cli/cogify/__tests__/batch.job.test.js.map +0 -1
  45. package/build/cli/cogify/__tests__/semver.test.d.ts +0 -2
  46. package/build/cli/cogify/__tests__/semver.test.d.ts.map +0 -1
  47. package/build/cli/cogify/__tests__/semver.test.js +0 -62
  48. package/build/cli/cogify/__tests__/semver.test.js.map +0 -1
  49. package/build/cli/cogify/action.cog.d.ts +0 -20
  50. package/build/cli/cogify/action.cog.d.ts.map +0 -1
  51. package/build/cli/cogify/action.cog.js +0 -198
  52. package/build/cli/cogify/action.cog.js.map +0 -1
  53. package/build/cli/cogify/action.job.d.ts +0 -28
  54. package/build/cli/cogify/action.job.d.ts.map +0 -1
  55. package/build/cli/cogify/action.job.js +0 -176
  56. package/build/cli/cogify/action.job.js.map +0 -1
  57. package/build/cli/cogify/action.make.cog.d.ts +0 -23
  58. package/build/cli/cogify/action.make.cog.d.ts.map +0 -1
  59. package/build/cli/cogify/action.make.cog.js +0 -218
  60. package/build/cli/cogify/action.make.cog.js.map +0 -1
  61. package/build/cli/cogify/action.make.cog.pr.d.ts +0 -25
  62. package/build/cli/cogify/action.make.cog.pr.d.ts.map +0 -1
  63. package/build/cli/cogify/action.make.cog.pr.js +0 -96
  64. package/build/cli/cogify/action.make.cog.pr.js.map +0 -1
  65. package/build/cli/cogify/batch.job.d.ts +0 -40
  66. package/build/cli/cogify/batch.job.d.ts.map +0 -1
  67. package/build/cli/cogify/batch.job.js +0 -205
  68. package/build/cli/cogify/batch.job.js.map +0 -1
  69. package/build/cli/cogify/cutline.d.ts +0 -5
  70. package/build/cli/cogify/cutline.d.ts.map +0 -1
  71. package/build/cli/cogify/cutline.js +0 -33
  72. package/build/cli/cogify/cutline.js.map +0 -1
  73. package/build/cli/cogify/semver.util.d.ts +0 -24
  74. package/build/cli/cogify/semver.util.d.ts.map +0 -1
  75. package/build/cli/cogify/semver.util.js +0 -56
  76. package/build/cli/cogify/semver.util.js.map +0 -1
  77. package/build/cli/config/action.bundle.assets.d.ts.map +0 -1
  78. package/build/cli/config/action.bundle.d.ts.map +0 -1
  79. package/build/cli/config/action.cog.mapsheet.d.ts +0 -12
  80. package/build/cli/config/action.cog.mapsheet.d.ts.map +0 -1
  81. package/build/cli/config/action.cog.mapsheet.js +0 -107
  82. package/build/cli/config/action.cog.mapsheet.js.map +0 -1
  83. package/build/cli/config/action.imagery.config.d.ts +0 -11
  84. package/build/cli/config/action.imagery.config.d.ts.map +0 -1
  85. package/build/cli/config/action.imagery.config.js +0 -142
  86. package/build/cli/config/action.imagery.config.js.map +0 -1
  87. package/build/cli/config/action.import.d.ts.map +0 -1
  88. package/build/cli/config/config.diff.d.ts.map +0 -1
  89. package/build/cli/config/config.update.d.ts.map +0 -1
  90. package/build/cli/folder.d.ts.map +0 -1
  91. package/build/cli/github/github.d.ts +0 -49
  92. package/build/cli/github/github.d.ts.map +0 -1
  93. package/build/cli/github/github.js +0 -107
  94. package/build/cli/github/github.js.map +0 -1
  95. package/build/cli/github/make.cog.pr.d.ts +0 -42
  96. package/build/cli/github/make.cog.pr.d.ts.map +0 -1
  97. package/build/cli/github/make.cog.pr.js +0 -173
  98. package/build/cli/github/make.cog.pr.js.map +0 -1
  99. package/build/cli/index.d.ts.map +0 -1
  100. package/build/cli/overview/__test__/wmts.overview.test.d.ts +0 -2
  101. package/build/cli/overview/__test__/wmts.overview.test.d.ts.map +0 -1
  102. package/build/cli/overview/__test__/wmts.overview.test.js +0 -24
  103. package/build/cli/overview/__test__/wmts.overview.test.js.map +0 -1
  104. package/build/cli/overview/action.create.overview.d.ts +0 -17
  105. package/build/cli/overview/action.create.overview.d.ts.map +0 -1
  106. package/build/cli/overview/action.create.overview.js +0 -174
  107. package/build/cli/overview/action.create.overview.js.map +0 -1
  108. package/build/cli/overview/overview.wmts.d.ts +0 -3
  109. package/build/cli/overview/overview.wmts.d.ts.map +0 -1
  110. package/build/cli/overview/overview.wmts.js +0 -29
  111. package/build/cli/overview/overview.wmts.js.map +0 -1
  112. package/build/cli/overview/tile.generator.d.ts +0 -13
  113. package/build/cli/overview/tile.generator.d.ts.map +0 -1
  114. package/build/cli/overview/tile.generator.js +0 -86
  115. package/build/cli/overview/tile.generator.js.map +0 -1
  116. package/build/cli/overview/timer.d.ts +0 -14
  117. package/build/cli/overview/timer.d.ts.map +0 -1
  118. package/build/cli/overview/timer.js +0 -21
  119. package/build/cli/overview/timer.js.map +0 -1
  120. package/build/cli/server/action.serve.d.ts.map +0 -1
  121. package/build/cli/sprites/action.sprites.d.ts +0 -11
  122. package/build/cli/sprites/action.sprites.d.ts.map +0 -1
  123. package/build/cli/sprites/action.sprites.js +0 -42
  124. package/build/cli/sprites/action.sprites.js.map +0 -1
  125. package/build/cli/util.d.ts.map +0 -1
  126. package/build/cog/__tests__/builder.test.d.ts +0 -2
  127. package/build/cog/__tests__/builder.test.d.ts.map +0 -1
  128. package/build/cog/__tests__/builder.test.js +0 -81
  129. package/build/cog/__tests__/builder.test.js.map +0 -1
  130. package/build/cog/__tests__/cog.stac.job.test.d.ts +0 -2
  131. package/build/cog/__tests__/cog.stac.job.test.d.ts.map +0 -1
  132. package/build/cog/__tests__/cog.stac.job.test.js +0 -319
  133. package/build/cog/__tests__/cog.stac.job.test.js.map +0 -1
  134. package/build/cog/__tests__/cog.test.d.ts +0 -2
  135. package/build/cog/__tests__/cog.test.d.ts.map +0 -1
  136. package/build/cog/__tests__/cog.test.js +0 -91
  137. package/build/cog/__tests__/cog.test.js.map +0 -1
  138. package/build/cog/__tests__/cog.vrt.test.d.ts +0 -2
  139. package/build/cog/__tests__/cog.vrt.test.d.ts.map +0 -1
  140. package/build/cog/__tests__/cog.vrt.test.js +0 -229
  141. package/build/cog/__tests__/cog.vrt.test.js.map +0 -1
  142. package/build/cog/__tests__/cutline.test.d.ts +0 -2
  143. package/build/cog/__tests__/cutline.test.d.ts.map +0 -1
  144. package/build/cog/__tests__/cutline.test.js +0 -300
  145. package/build/cog/__tests__/cutline.test.js.map +0 -1
  146. package/build/cog/__tests__/projection.loader.test.d.ts +0 -2
  147. package/build/cog/__tests__/projection.loader.test.d.ts.map +0 -1
  148. package/build/cog/__tests__/projection.loader.test.js +0 -27
  149. package/build/cog/__tests__/projection.loader.test.js.map +0 -1
  150. package/build/cog/__tests__/source.tiff.testhelper.d.ts +0 -8
  151. package/build/cog/__tests__/source.tiff.testhelper.d.ts.map +0 -1
  152. package/build/cog/__tests__/source.tiff.testhelper.js +0 -41
  153. package/build/cog/__tests__/source.tiff.testhelper.js.map +0 -1
  154. package/build/cog/builder.d.ts +0 -49
  155. package/build/cog/builder.d.ts.map +0 -1
  156. package/build/cog/builder.js +0 -177
  157. package/build/cog/builder.js.map +0 -1
  158. package/build/cog/cog.d.ts +0 -22
  159. package/build/cog/cog.d.ts.map +0 -1
  160. package/build/cog/cog.js +0 -72
  161. package/build/cog/cog.js.map +0 -1
  162. package/build/cog/cog.stac.job.d.ts +0 -106
  163. package/build/cog/cog.stac.job.d.ts.map +0 -1
  164. package/build/cog/cog.stac.job.js +0 -257
  165. package/build/cog/cog.stac.job.js.map +0 -1
  166. package/build/cog/cog.vrt.d.ts +0 -18
  167. package/build/cog/cog.vrt.d.ts.map +0 -1
  168. package/build/cog/cog.vrt.js +0 -102
  169. package/build/cog/cog.vrt.js.map +0 -1
  170. package/build/cog/constants.d.ts +0 -5
  171. package/build/cog/constants.d.ts.map +0 -1
  172. package/build/cog/constants.js +0 -5
  173. package/build/cog/constants.js.map +0 -1
  174. package/build/cog/cutline.d.ts +0 -75
  175. package/build/cog/cutline.d.ts.map +0 -1
  176. package/build/cog/cutline.js +0 -250
  177. package/build/cog/cutline.js.map +0 -1
  178. package/build/cog/job.factory.d.ts +0 -10
  179. package/build/cog/job.factory.d.ts.map +0 -1
  180. package/build/cog/job.factory.js +0 -92
  181. package/build/cog/job.factory.js.map +0 -1
  182. package/build/cog/projection.loader.d.ts +0 -13
  183. package/build/cog/projection.loader.d.ts.map +0 -1
  184. package/build/cog/projection.loader.js +0 -27
  185. package/build/cog/projection.loader.js.map +0 -1
  186. package/build/cog/stac.d.ts +0 -32
  187. package/build/cog/stac.d.ts.map +0 -1
  188. package/build/cog/stac.js +0 -3
  189. package/build/cog/stac.js.map +0 -1
  190. package/build/cog/types.d.ts +0 -83
  191. package/build/cog/types.d.ts.map +0 -1
  192. package/build/cog/types.js +0 -2
  193. package/build/cog/types.js.map +0 -1
  194. package/build/gdal/__tests__/gdal.progress.test.d.ts +0 -2
  195. package/build/gdal/__tests__/gdal.progress.test.d.ts.map +0 -1
  196. package/build/gdal/__tests__/gdal.progress.test.js +0 -22
  197. package/build/gdal/__tests__/gdal.progress.test.js.map +0 -1
  198. package/build/gdal/__tests__/gdal.test.d.ts +0 -2
  199. package/build/gdal/__tests__/gdal.test.d.ts.map +0 -1
  200. package/build/gdal/__tests__/gdal.test.js +0 -52
  201. package/build/gdal/__tests__/gdal.test.js.map +0 -1
  202. package/build/gdal/gdal.cog.d.ts +0 -42
  203. package/build/gdal/gdal.cog.d.ts.map +0 -1
  204. package/build/gdal/gdal.cog.js +0 -108
  205. package/build/gdal/gdal.cog.js.map +0 -1
  206. package/build/gdal/gdal.command.d.ts +0 -44
  207. package/build/gdal/gdal.command.d.ts.map +0 -1
  208. package/build/gdal/gdal.command.js +0 -87
  209. package/build/gdal/gdal.command.js.map +0 -1
  210. package/build/gdal/gdal.config.d.ts +0 -51
  211. package/build/gdal/gdal.config.d.ts.map +0 -1
  212. package/build/gdal/gdal.config.js +0 -23
  213. package/build/gdal/gdal.config.js.map +0 -1
  214. package/build/gdal/gdal.d.ts +0 -19
  215. package/build/gdal/gdal.d.ts.map +0 -1
  216. package/build/gdal/gdal.docker.d.ts +0 -18
  217. package/build/gdal/gdal.docker.d.ts.map +0 -1
  218. package/build/gdal/gdal.docker.js +0 -82
  219. package/build/gdal/gdal.docker.js.map +0 -1
  220. package/build/gdal/gdal.js +0 -28
  221. package/build/gdal/gdal.js.map +0 -1
  222. package/build/gdal/gdal.local.d.ts +0 -10
  223. package/build/gdal/gdal.local.d.ts.map +0 -1
  224. package/build/gdal/gdal.local.js +0 -22
  225. package/build/gdal/gdal.local.js.map +0 -1
  226. package/build/gdal/gdal.progress.d.ts +0 -16
  227. package/build/gdal/gdal.progress.d.ts.map +0 -1
  228. package/build/gdal/gdal.progress.js +0 -50
  229. package/build/gdal/gdal.progress.js.map +0 -1
  230. package/build/index.d.ts +0 -6
  231. package/build/index.d.ts.map +0 -1
  232. package/build/index.js +0 -6
  233. package/build/index.js.map +0 -1
@@ -1,205 +0,0 @@
1
- import { Projection, TileMatrixSet } from '@basemaps/geo';
2
- import { Env, fsa, LogConfig } from '@basemaps/shared';
3
- import Batch from 'aws-sdk/clients/batch.js';
4
- import { createHash } from 'crypto';
5
- import { basename } from 'path';
6
- const JobQueue = 'CogBatchJobQueue';
7
- const JobDefinition = 'CogBatchJob';
8
- const ChunkJobMax = 2000;
9
- const ChunkLargeUnit = 200; // Up to 10 large files in one job
10
- const ChunkMiddleUnit = 50; // Up to 40 middle files in one job
11
- const ChunkSmallUnit = 20; // Up to 100 small files in one job
12
- /** The base alignment level used by GDAL, Tiffs that are bigger or smaller than this should scale the compute resources */
13
- const MagicAlignmentLevel = 7;
14
- const ResolutionRegex = /((?:\d[\.\-])?\d+)m/;
15
- /**
16
- * Attempt to parse a resolution from a imagery name
17
- * @example `wellington_urban_2017_0.10m` -> 100
18
- * @param name Imagery name to parse
19
- * @returns resolution (millimeters), -1 for failure to parse
20
- */
21
- export function extractResolutionFromName(name) {
22
- const matches = name.match(ResolutionRegex);
23
- if (matches == null)
24
- return -1;
25
- return parseFloat(matches[1].replace('-', '.')) * 1000;
26
- }
27
- export class BatchJob {
28
- static get batch() {
29
- var _a, _b;
30
- if (this._batch)
31
- return this._batch;
32
- const region = (_b = (_a = Env.get('AWS_REGION')) !== null && _a !== void 0 ? _a : Env.get('AWS_DEFAULT_REGION')) !== null && _b !== void 0 ? _b : 'ap-southeast-2';
33
- this._batch = new Batch({ region });
34
- return this._batch;
35
- }
36
- /**
37
- * Create a id for a job
38
- *
39
- * This needs to be within `[a-Z_-]` upto 128 characters log
40
- * @param job job to process
41
- * @param fileNames output filename
42
- * @returns job id
43
- */
44
- static id(job, fileNames) {
45
- // Job names are uncontrolled so hash the name and grab a small slice to use as a identifier
46
- const jobName = createHash('sha256').update(job.name).digest('hex').slice(0, 16);
47
- if (fileNames == null)
48
- return `${job.id}-${jobName}-`;
49
- fileNames.sort((a, b) => a.localeCompare(b));
50
- return `${job.id}-${jobName}-${fileNames.length}x-${fileNames.join('_')}`.slice(0, 128);
51
- }
52
- static async batchOne(jobPath, job, names, isCommit) {
53
- const jobName = BatchJob.id(job, names);
54
- let memory = 3900;
55
- if (names.length === 1) {
56
- // Calculate the larger file to provision memory if there is only one imagery in job.
57
- const tile = TileMatrixSet.nameToTile(names[0]);
58
- const alignmentLevels = Projection.findAlignmentLevels(job.tileMatrix, tile, job.source.gsd);
59
- // Give 25% more memory to larger jobs
60
- const resDiff = 1 + Math.max(alignmentLevels - MagicAlignmentLevel, 0) * 0.25;
61
- memory *= resDiff;
62
- }
63
- if (!isCommit) {
64
- return { jobName, jobId: '', memory };
65
- }
66
- let commandStr = ['-V', 'cog', '--job', jobPath, '--commit'];
67
- for (const name of names)
68
- commandStr = commandStr.concat(['--name', name]);
69
- const batchJob = await this.batch
70
- .submitJob({
71
- jobName,
72
- jobQueue: JobQueue,
73
- jobDefinition: JobDefinition,
74
- containerOverrides: {
75
- memory,
76
- command: commandStr,
77
- },
78
- retryStrategy: { attempts: 3 },
79
- })
80
- .promise();
81
- return { jobName, jobId: batchJob.jobId, memory };
82
- }
83
- /**
84
- * List all the current jobs in batch and their statuses
85
- * @returns a map of JobName to if their status is "ok" (not failed)
86
- */
87
- static async getCurrentJobList(job, logger) {
88
- var _a;
89
- const jobPrefix = BatchJob.id(job);
90
- // For some reason AWS only lets us query one status at a time.
91
- const allStatuses = ['SUBMITTED', 'PENDING', 'RUNNABLE', 'STARTING', 'RUNNING' /* 'SUCCEEDED' */];
92
- // Succeeded is not needed as we check to see if the output file exists, if it succeeds and the output file doesn't exist then something has gone wrong
93
- const allJobs = await Promise.all(allStatuses.map((jobStatus) => this.batch.listJobs({ jobQueue: JobQueue, jobStatus }).promise()));
94
- const jobIds = new Set();
95
- // Find all the relevant jobs that start with our job prefix
96
- for (const status of allJobs) {
97
- for (const job of status.jobSummaryList) {
98
- if (!job.jobName.startsWith(jobPrefix))
99
- continue;
100
- jobIds.add(job.jobId);
101
- }
102
- }
103
- // Inspect all the jobs for what files are being "processed"
104
- const tiffs = new Set();
105
- let allJobIds = [...jobIds];
106
- while (allJobIds.length > 0) {
107
- logger.info({ jobCount: allJobIds.length }, 'JobFetch');
108
- const jobList = allJobIds.slice(0, 100);
109
- allJobIds = allJobIds.slice(100);
110
- const describedJobs = await this.batch.describeJobs({ jobs: jobList }).promise();
111
- if (describedJobs.jobs == null)
112
- continue;
113
- for (const job of describedJobs.jobs) {
114
- const jobCommand = (_a = job.container) === null || _a === void 0 ? void 0 : _a.command;
115
- if (jobCommand == null)
116
- continue;
117
- // Extract the tiff names from the job command
118
- for (let i = 0; i < jobCommand.length; i++) {
119
- if (jobCommand[i] === '--name')
120
- tiffs.add(jobCommand[i + 1]);
121
- }
122
- }
123
- }
124
- return tiffs;
125
- }
126
- static async batchJob(job, commit = false, logger) {
127
- const jobPath = job.getJobPath('job.json');
128
- if (!jobPath.startsWith('s3://')) {
129
- throw new Error(`AWS Batch collection.json have to be in S3, jobPath:${jobPath}`);
130
- }
131
- LogConfig.set(logger.child({ correlationId: job.id, imageryName: job.name }));
132
- fsa.configure(job.output.location);
133
- // Get all the existing output tiffs
134
- const existTiffs = new Set();
135
- for await (const fileName of fsa.list(job.getJobPath())) {
136
- if (fileName.endsWith('.tiff'))
137
- existTiffs.add(basename(fileName));
138
- }
139
- const runningJobs = await this.getCurrentJobList(job, logger);
140
- for (const tiffName of runningJobs)
141
- existTiffs.add(`${tiffName}.tiff`);
142
- // Prepare chunk job and individual jobs based on imagery size.
143
- const jobs = await this.getJobs(job, existTiffs, logger);
144
- if (jobs.length === 0) {
145
- logger.info('NoJobs');
146
- return;
147
- }
148
- logger.info({
149
- jobTotal: job.output.files.length,
150
- jobLeft: jobs.length,
151
- jobQueue: JobQueue,
152
- jobDefinition: JobDefinition,
153
- }, 'JobSubmit');
154
- for (const names of jobs) {
155
- const jobStatus = await BatchJob.batchOne(jobPath, job, names, commit);
156
- logger.info(jobStatus, 'JobSubmitted');
157
- }
158
- if (!commit) {
159
- logger.warn('DryRun:Done');
160
- return;
161
- }
162
- }
163
- /**
164
- * Prepare the jobs from job files, and chunk the small images into single
165
- * @returns List of jobs including single job and chunk jobs.
166
- */
167
- static getJobs(job, existing, log, maxChunkUnit = ChunkJobMax) {
168
- const jobs = [];
169
- let chunkJob = [];
170
- let chunkUnit = 0; // Calculate the chunkUnit based on the size
171
- for (const file of job.output.files) {
172
- const outputFile = `${file.name}.tiff`;
173
- if (existing.has(outputFile)) {
174
- log.debug({ fileName: outputFile }, 'Skip:Exists');
175
- continue;
176
- }
177
- const imageSize = file.width / job.output.gsd;
178
- if (imageSize > 16385) {
179
- chunkJob.push(file.name);
180
- chunkUnit += ChunkJobMax;
181
- }
182
- else if (imageSize > 8193) {
183
- chunkJob.push(file.name);
184
- chunkUnit += ChunkLargeUnit;
185
- }
186
- else if (imageSize > 4097) {
187
- chunkJob.push(file.name);
188
- chunkUnit += ChunkMiddleUnit;
189
- }
190
- else {
191
- chunkJob.push(file.name);
192
- chunkUnit += ChunkSmallUnit;
193
- }
194
- if (chunkUnit >= maxChunkUnit) {
195
- jobs.push(chunkJob);
196
- chunkJob = [];
197
- chunkUnit = 0;
198
- }
199
- }
200
- if (chunkJob.length > 0)
201
- jobs.push(chunkJob);
202
- return jobs;
203
- }
204
- }
205
- //# sourceMappingURL=batch.job.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"batch.job.js","sourceRoot":"","sources":["../../../src/cli/cogify/batch.job.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAW,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,MAAM,0BAA0B,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,MAAM,QAAQ,GAAG,kBAAkB,CAAC;AACpC,MAAM,aAAa,GAAG,aAAa,CAAC;AACpC,MAAM,WAAW,GAAG,IAAI,CAAC;AACzB,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,kCAAkC;AAC9D,MAAM,eAAe,GAAG,EAAE,CAAC,CAAC,mCAAmC;AAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC,mCAAmC;AAE9D,2HAA2H;AAC3H,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAC9C;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC5C,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,CAAC,CAAC,CAAC;IAC/B,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;AACzD,CAAC;AAED,MAAM,OAAO,QAAQ;IAEnB,MAAM,KAAK,KAAK;;QACd,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QACpC,MAAM,MAAM,GAAG,MAAA,MAAA,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,mCAAI,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,mCAAI,gBAAgB,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IACD;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,CAAC,GAAW,EAAE,SAAoB;QACzC,4FAA4F;QAC5F,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjF,IAAI,SAAS,IAAI,IAAI;YAAE,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,OAAO,GAAG,CAAC;QACtD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,OAAO,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CACnB,OAAe,EACf,GAAW,EACX,KAAe,EACf,QAAiB;QAEjB,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAExC,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,qFAAqF;YACrF,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,MAAM,eAAe,GAAG,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7F,sCAAsC;YACtC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,mBAAmB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;YAC9E,MAAM,IAAI,OAAO,CAAC;SACnB;QAED,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;SACvC;QAED,IAAI,UAAU,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAE3E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK;aAC9B,SAAS,CAAC;YACT,OAAO;YACP,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,aAAa;YAC5B,kBAAkB,EAAE;gBAClB,MAAM;gBACN,OAAO,EAAE,UAAU;aACpB;YACD,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;SAC/B,CAAC;aACD,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAW,EAAE,MAAe;;QACzD,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACnC,+DAA+D;QAC/D,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAClG,uJAAuJ;QACvJ,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CACjG,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;QAEjC,4DAA4D;QAC5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,cAAc,EAAE;gBACvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;oBAAE,SAAS;gBACjD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aACvB;SACF;QAED,4DAA4D;QAC5D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,IAAI,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QAC5B,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;YACxD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACxC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YACjF,IAAI,aAAa,CAAC,IAAI,IAAI,IAAI;gBAAE,SAAS;YACzC,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE;gBACpC,MAAM,UAAU,GAAG,MAAA,GAAG,CAAC,SAAS,0CAAE,OAAO,CAAC;gBAC1C,IAAI,UAAU,IAAI,IAAI;oBAAE,SAAS;gBAEjC,8CAA8C;gBAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC1C,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ;wBAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAC9D;aACF;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,MAAM,GAAG,KAAK,EAAE,MAAe;QAChE,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,uDAAuD,OAAO,EAAE,CAAC,CAAC;SACnF;QACD,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAE9E,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEnC,oCAAoC;QACpC,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC1C,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE;YACvD,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;SACpE;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC9D,KAAK,MAAM,QAAQ,IAAI,WAAW;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,OAAO,CAAC,CAAC;QAEvE,+DAA+D;QAC/D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAEzD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtB,OAAO;SACR;QAED,MAAM,CAAC,IAAI,CACT;YACE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;YACjC,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,aAAa;SAC7B,EACD,WAAW,CACZ,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;YACxB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACvE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC3B,OAAO;SACR;IACH,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,GAAW,EAAE,QAAqB,EAAE,GAAY,EAAE,YAAY,GAAG,WAAW;QACzF,MAAM,IAAI,GAAe,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAa,EAAE,CAAC;QAC5B,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC,4CAA4C;QAC/D,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE;YACnC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,OAAO,CAAC;YACvC,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;gBAC5B,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;gBACnD,SAAS;aACV;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;YAC9C,IAAI,SAAS,GAAG,KAAK,EAAE;gBACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS,IAAI,WAAW,CAAC;aAC1B;iBAAM,IAAI,SAAS,GAAG,IAAI,EAAE;gBAC3B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS,IAAI,cAAc,CAAC;aAC7B;iBAAM,IAAI,SAAS,GAAG,IAAI,EAAE;gBAC3B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS,IAAI,eAAe,CAAC;aAC9B;iBAAM;gBACL,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS,IAAI,cAAc,CAAC;aAC7B;YACD,IAAI,SAAS,IAAI,YAAY,EAAE;gBAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpB,QAAQ,GAAG,EAAE,CAAC;gBACd,SAAS,GAAG,CAAC,CAAC;aACf;SACF;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE7C,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,5 +0,0 @@
1
- export declare function getCutline(imageryName?: string): {
2
- href: string;
3
- blend: number;
4
- } | undefined;
5
- //# sourceMappingURL=cutline.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cutline.d.ts","sourceRoot":"","sources":["../../../src/cli/cogify/cutline.ts"],"names":[],"mappings":"AA+BA,wBAAgB,UAAU,CAAC,WAAW,SAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAExF"}
@@ -1,33 +0,0 @@
1
- const UrbanRuralCutLine = {
2
- href: 's3://linz-basemaps-source/cutline/2020-05-07-cutline-nz-coasts-rural-and-urban.geojson',
3
- blend: 20,
4
- };
5
- const DefaultCutlines = [
6
- {
7
- filter: 'sentinel',
8
- cutline: { href: 's3://linz-basemaps-source/cutline/2020-05-12-cutline-nz-ci.geojson.gz', blend: 5 },
9
- },
10
- {
11
- filter: 'chatham',
12
- cutline: { href: 's3://linz-basemaps-source/cutline/2020-05-12-cutline-nz-ci.geojson.gz', blend: 5 },
13
- },
14
- {
15
- filter: 'geographx',
16
- cutline: {
17
- href: 's3://linz-basemaps-source/cutline/2021-11-10-cutline-51153-nz-coastlines-and-islands-polygons-topo-150k.geojson.gz',
18
- blend: 0,
19
- },
20
- },
21
- {
22
- filter: 'topo50',
23
- cutline: { href: 's3://linz-basemaps-source/cutline/2020-08-10-cutline-topo50.geojson.gz', blend: 0 },
24
- },
25
- { filter: 'satellite', cutline: UrbanRuralCutLine },
26
- { filter: 'urban', cutline: UrbanRuralCutLine },
27
- { filter: 'rural', cutline: UrbanRuralCutLine },
28
- ];
29
- export function getCutline(imageryName = '') {
30
- var _a;
31
- return (_a = DefaultCutlines.find((f) => imageryName.toLowerCase().includes(f.filter))) === null || _a === void 0 ? void 0 : _a.cutline;
32
- }
33
- //# sourceMappingURL=cutline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cutline.js","sourceRoot":"","sources":["../../../src/cli/cogify/cutline.ts"],"names":[],"mappings":"AAAA,MAAM,iBAAiB,GAAG;IACxB,IAAI,EAAE,wFAAwF;IAC9F,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,MAAM,eAAe,GAAG;IACtB;QACE,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,EAAE,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,CAAC,EAAE;KACrG;IACD;QACE,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,EAAE,IAAI,EAAE,uEAAuE,EAAE,KAAK,EAAE,CAAC,EAAE;KACrG;IACD;QACE,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE;YACP,IAAI,EAAE,oHAAoH;YAC1H,KAAK,EAAE,CAAC;SACT;KACF;IACD;QACE,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,EAAE,IAAI,EAAE,wEAAwE,EAAE,KAAK,EAAE,CAAC,EAAE;KACtG;IAED,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE;IACnD,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE;IAC/C,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE;CAChD,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,WAAW,GAAG,EAAE;;IACzC,OAAO,MAAA,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,0CAAE,OAAO,CAAC;AAC5F,CAAC"}
@@ -1,24 +0,0 @@
1
- export declare const SemVer: {
2
- /**
3
- * Encode a semver string into a number
4
- * @example
5
- * '0.0.1' => 1
6
- * 'v0.1.0' => 1024
7
- * @param v version to encode
8
- */
9
- toNumber(v: string): number;
10
- /**
11
- * Decoded a number encoded semver
12
- * @example 1 => '0.0.1'
13
- * @param v version to decode
14
- */
15
- fromNumber(v: number): string;
16
- /**
17
- * Compare two semver's
18
- * @param vA version A
19
- * @param vB version B
20
- * @returns 0 if equal, >0 if vA > vB, <0 otherwise
21
- */
22
- compare(vA: string, vB: string): number;
23
- };
24
- //# sourceMappingURL=semver.util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"semver.util.d.ts","sourceRoot":"","sources":["../../../src/cli/cogify/semver.util.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;gBACS,MAAM,GAAG,MAAM;IAmB3B;;;;OAIG;kBACW,MAAM,GAAG,MAAM;IAO7B;;;;;OAKG;gBACS,MAAM,MAAM,MAAM,GAAG,MAAM;CAGxC,CAAC"}
@@ -1,56 +0,0 @@
1
- /** major.minor.patch */
2
- const MaxLength = 3;
3
- /** fits into a int32 with out forcing a uint conversion */
4
- const EncodeBits = 10;
5
- /** Max size for a single semver number (1024) */
6
- const MaxEncode = 2 ** EncodeBits - 1;
7
- export const SemVer = {
8
- /**
9
- * Encode a semver string into a number
10
- * @example
11
- * '0.0.1' => 1
12
- * 'v0.1.0' => 1024
13
- * @param v version to encode
14
- */
15
- toNumber(v) {
16
- if (v.startsWith('v'))
17
- v = v.slice(1);
18
- const chunks = v.split('.');
19
- if (chunks.length > MaxLength)
20
- throw new Error(`Failed to parse semver "${v}" too long`);
21
- let output = 0;
22
- for (let i = 0; i < chunks.length; i++) {
23
- const chunk = chunks[i];
24
- if (chunk === '')
25
- break;
26
- const num = parseInt(chunk);
27
- if (isNaN(num))
28
- throw new Error(`Failed to parse semver "${v}"`);
29
- if (num > MaxEncode)
30
- throw new Error(`Failed to parse semver "${v}" ${chunk} is too large`);
31
- output |= num << ((MaxLength - i - 1) * EncodeBits);
32
- }
33
- return output;
34
- },
35
- /**
36
- * Decoded a number encoded semver
37
- * @example 1 => '0.0.1'
38
- * @param v version to decode
39
- */
40
- fromNumber(v) {
41
- const major = (v >> 20) & MaxEncode;
42
- const minor = (v >> 10) & MaxEncode;
43
- const patch = v & MaxEncode;
44
- return `${major}.${minor}.${patch}`;
45
- },
46
- /**
47
- * Compare two semver's
48
- * @param vA version A
49
- * @param vB version B
50
- * @returns 0 if equal, >0 if vA > vB, <0 otherwise
51
- */
52
- compare(vA, vB) {
53
- return SemVer.toNumber(vA) - SemVer.toNumber(vB);
54
- },
55
- };
56
- //# sourceMappingURL=semver.util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"semver.util.js","sourceRoot":"","sources":["../../../src/cli/cogify/semver.util.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,2DAA2D;AAC3D,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,iDAAiD;AACjD,MAAM,SAAS,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB;;;;;;OAMG;IACH,QAAQ,CAAC,CAAS;QAChB,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAEzF,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM;YAExB,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;YACjE,IAAI,GAAG,GAAG,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,KAAK,KAAK,eAAe,CAAC,CAAC;YAE5F,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;SACrD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,CAAS;QAClB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;QACpC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;QACpC,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC;QAC5B,OAAO,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,EAAU,EAAE,EAAU;QAC5B,OAAO,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;CACF,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.bundle.assets.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.bundle.assets.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAE3F,OAAO,EAAuC,iBAAiB,EAAa,MAAM,aAAa,CAAC;AAChG,OAAO,EAAa,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAKtD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAOlC,wBAAsB,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhE;AAED,qBAAa,mBAAoB,SAAQ,iBAAiB;IACxD,MAAM,EAAE,0BAA0B,CAAC;IACnC,MAAM,EAAE,0BAA0B,CAAC;;IAUnC,SAAS,CAAC,kBAAkB,IAAI,IAAI;cAcpB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBpC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBzE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB3E,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAarH"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.bundle.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.bundle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAA8B,MAAM,4BAA4B,CAAC;AAE3F,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,uBAAuB,CAAC;AAElD,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA6B;;IAU3C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAmB9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAajC"}
@@ -1,12 +0,0 @@
1
- import { CommandLineAction } from '@rushstack/ts-command-line';
2
- export declare class CommandCogMapSheet extends CommandLineAction {
3
- private path;
4
- private config;
5
- private output;
6
- private include;
7
- private exclude;
8
- constructor();
9
- protected onDefineParameters(): void;
10
- onExecute(): Promise<void>;
11
- }
12
- //# sourceMappingURL=action.cog.mapsheet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.cog.mapsheet.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.cog.mapsheet.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAA8B,MAAM,4BAA4B,CAAC;AAS3F,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,OAAO,CAA6B;;IAU5C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAiC9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CA2DjC"}
@@ -1,107 +0,0 @@
1
- import { ConfigProviderMemory } from '@basemaps/config';
2
- import { Bounds } from '@basemaps/geo';
3
- import { fsa, LogConfig } from '@basemaps/shared';
4
- import { CommandLineAction } from '@rushstack/ts-command-line';
5
- import * as fgb from 'flatgeobuf/lib/mjs/geojson.js';
6
- export class CommandCogMapSheet extends CommandLineAction {
7
- constructor() {
8
- super({
9
- actionName: 'create-mapsheet',
10
- summary: 'Create a cog mapsheet from provided flatgeobuf',
11
- documentation: 'Given a valid path of raw imagery and create a config bundle file',
12
- });
13
- }
14
- onDefineParameters() {
15
- this.path = this.defineStringParameter({
16
- argumentName: 'PATH',
17
- parameterLongName: '--path',
18
- description: 'Path of flatgeobuf, this can be both a local path or s3 location',
19
- required: true,
20
- });
21
- this.config = this.defineStringParameter({
22
- argumentName: 'CONFIG',
23
- parameterLongName: '--config',
24
- description: 'Path of basemaps config json, this can be both a local path or s3 location',
25
- required: true,
26
- });
27
- this.output = this.defineStringParameter({
28
- argumentName: 'OUTPUT',
29
- parameterLongName: '--output',
30
- description: 'Output of the mapsheet file',
31
- required: true,
32
- });
33
- this.include = this.defineStringParameter({
34
- argumentName: 'INCLUDE',
35
- parameterLongName: '--include',
36
- description: 'Include the layers with the pattern in the layer name.',
37
- required: false,
38
- });
39
- this.exclude = this.defineStringParameter({
40
- argumentName: 'EXCLUDE',
41
- parameterLongName: '--exclude',
42
- description: 'Exclude the layers with the pattern in the layer name.',
43
- required: false,
44
- });
45
- }
46
- async onExecute() {
47
- const logger = LogConfig.get();
48
- const path = this.path.value;
49
- if (path == null)
50
- throw new Error('Please provide valid a fgb path.');
51
- const config = this.config.value;
52
- if (config == null)
53
- throw new Error('Please provide valid a config path.');
54
- const include = this.include.value ? new RegExp(this.include.value.toLowerCase(), 'i') : undefined;
55
- const exclude = this.exclude.value ? new RegExp(this.exclude.value.toLowerCase(), 'i') : undefined;
56
- const outputPath = this.output.value;
57
- if (outputPath == null)
58
- throw new Error('Please provide valid a output path.');
59
- logger.info({ path }, 'MapSheet:LoadFgb');
60
- const buf = await fsa.read(path);
61
- logger.info({ config }, 'MapSheet:LoadConfig');
62
- const configJson = await fsa.readJson(config);
63
- const men = ConfigProviderMemory.fromJson(configJson);
64
- const rest = fgb.deserialize(buf);
65
- const aerial = await men.TileSet.get('ts_aerial');
66
- if (aerial == null)
67
- throw new Error('Invalid config file.');
68
- const layers = aerial.layers.filter((c) => c[2193] != null && (c.maxZoom == null || c.maxZoom > 19) && (c.minZoom == null || c.minZoom < 32));
69
- const imageryIds = new Set();
70
- for (const layer of layers) {
71
- if (exclude && exclude.test(layer.name))
72
- continue;
73
- if (include && !include.test(layer.name))
74
- continue;
75
- if (layer[2193] != null)
76
- imageryIds.add(layer[2193]);
77
- }
78
- const imagery = await men.Imagery.getAll(imageryIds);
79
- const output = [];
80
- logger.info({ path, config }, 'MapSheet:CreateMapSheet');
81
- for (const feature of rest.features) {
82
- if (feature.properties == null)
83
- continue;
84
- const sheetCode = feature.properties.sheet_code_id;
85
- const current = { sheetCode, files: [] };
86
- output.push(current);
87
- const bounds = Bounds.fromMultiPolygon(feature.geometry.coordinates);
88
- for (const layer of layers) {
89
- if (layer[2193] == null)
90
- continue;
91
- const img = imagery.get(layer[2193]);
92
- if (img == null)
93
- continue;
94
- if (img.bounds == null || Bounds.fromJson(img.bounds).intersects(bounds)) {
95
- for (const file of img.files) {
96
- if (bounds.intersects(Bounds.fromJson(file))) {
97
- current.files.push(`${img.uri}/${file.name}.tiff`);
98
- }
99
- }
100
- }
101
- }
102
- }
103
- logger.info({ outputPath }, 'MapSheet:WriteOutput');
104
- fsa.write(outputPath, JSON.stringify(output, null, 2));
105
- }
106
- }
107
- //# sourceMappingURL=action.cog.mapsheet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.cog.mapsheet.js","sourceRoot":"","sources":["../../../src/cli/config/action.cog.mapsheet.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { CommandLineAction } from '@rushstack/ts-command-line';
2
- export declare class CommandImageryConfig extends CommandLineAction {
3
- private path;
4
- private output;
5
- private commit;
6
- private title;
7
- constructor();
8
- protected onDefineParameters(): void;
9
- onExecute(): Promise<void>;
10
- }
11
- //# sourceMappingURL=action.imagery.config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.imagery.config.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.imagery.config.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,iBAAiB,EAAwD,MAAM,4BAA4B,CAAC;AAIrH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAA6B;;IAU1C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAyB9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAuGjC"}