@basemaps/cli 6.29.0 → 6.32.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 (127) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +16 -0
  3. package/build/cli/aws/__tests__/action.aws.test.d.ts +2 -0
  4. package/build/cli/aws/__tests__/action.aws.test.d.ts.map +1 -0
  5. package/build/cli/aws/__tests__/action.aws.test.js +59 -0
  6. package/build/cli/aws/__tests__/action.aws.test.js.map +1 -0
  7. package/build/cli/aws/action.aws.list.d.ts +14 -0
  8. package/build/cli/aws/action.aws.list.d.ts.map +1 -0
  9. package/build/cli/aws/action.aws.list.js +106 -0
  10. package/build/cli/aws/action.aws.list.js.map +1 -0
  11. package/build/cli/base.cli.js +1 -0
  12. package/build/cli/base.cli.js.map +1 -0
  13. package/build/cli/bin.js +1 -0
  14. package/build/cli/bin.js.map +1 -0
  15. package/build/cli/cogify/__tests__/batch.job.test.js +1 -0
  16. package/build/cli/cogify/__tests__/batch.job.test.js.map +1 -0
  17. package/build/cli/cogify/__tests__/semver.test.js +1 -0
  18. package/build/cli/cogify/__tests__/semver.test.js.map +1 -0
  19. package/build/cli/cogify/action.cog.js +1 -0
  20. package/build/cli/cogify/action.cog.js.map +1 -0
  21. package/build/cli/cogify/action.job.js +1 -0
  22. package/build/cli/cogify/action.job.js.map +1 -0
  23. package/build/cli/cogify/batch.job.js +1 -0
  24. package/build/cli/cogify/batch.job.js.map +1 -0
  25. package/build/cli/cogify/imagery.config.js +3 -2
  26. package/build/cli/cogify/imagery.config.js.map +1 -0
  27. package/build/cli/cogify/semver.util.js +1 -0
  28. package/build/cli/cogify/semver.util.js.map +1 -0
  29. package/build/cli/config/action.bundle.assets.d.ts +17 -0
  30. package/build/cli/config/action.bundle.assets.d.ts.map +1 -0
  31. package/build/cli/config/action.bundle.assets.js +98 -0
  32. package/build/cli/config/action.bundle.assets.js.map +1 -0
  33. package/build/cli/config/action.bundle.d.ts +1 -0
  34. package/build/cli/config/action.bundle.d.ts.map +1 -1
  35. package/build/cli/config/action.bundle.js +11 -1
  36. package/build/cli/config/action.bundle.js.map +1 -0
  37. package/build/cli/config/action.import.d.ts +4 -1
  38. package/build/cli/config/action.import.d.ts.map +1 -1
  39. package/build/cli/config/action.import.js +42 -3
  40. package/build/cli/config/action.import.js.map +1 -0
  41. package/build/cli/config/config.diff.d.ts +1 -1
  42. package/build/cli/config/config.diff.d.ts.map +1 -1
  43. package/build/cli/config/config.diff.js +7 -4
  44. package/build/cli/config/config.diff.js.map +1 -0
  45. package/build/cli/config/config.update.d.ts +2 -0
  46. package/build/cli/config/config.update.d.ts.map +1 -1
  47. package/build/cli/config/config.update.js +9 -2
  48. package/build/cli/config/config.update.js.map +1 -0
  49. package/build/cli/folder.js +1 -0
  50. package/build/cli/folder.js.map +1 -0
  51. package/build/cli/index.d.ts.map +1 -1
  52. package/build/cli/index.js +9 -0
  53. package/build/cli/index.js.map +1 -0
  54. package/build/cli/screenshot/action.screenshot.d.ts +7 -49
  55. package/build/cli/screenshot/action.screenshot.d.ts.map +1 -1
  56. package/build/cli/screenshot/action.screenshot.js +61 -67
  57. package/build/cli/screenshot/action.screenshot.js.map +1 -0
  58. package/build/cli/screenshot/test.tiles.d.ts +48 -0
  59. package/build/cli/screenshot/test.tiles.d.ts.map +1 -0
  60. package/build/cli/screenshot/test.tiles.js +75 -0
  61. package/build/cli/screenshot/test.tiles.js.map +1 -0
  62. package/build/cli/server/action.serve.d.ts +10 -0
  63. package/build/cli/server/action.serve.d.ts.map +1 -0
  64. package/build/cli/server/action.serve.js +46 -0
  65. package/build/cli/server/action.serve.js.map +1 -0
  66. package/build/cli/sprites/action.sprites.d.ts +11 -0
  67. package/build/cli/sprites/action.sprites.d.ts.map +1 -0
  68. package/build/cli/sprites/action.sprites.js +42 -0
  69. package/build/cli/sprites/action.sprites.js.map +1 -0
  70. package/build/cli/util.js +1 -0
  71. package/build/cli/util.js.map +1 -0
  72. package/build/cog/__tests__/builder.test.js +1 -0
  73. package/build/cog/__tests__/builder.test.js.map +1 -0
  74. package/build/cog/__tests__/cog.stac.job.test.js +107 -149
  75. package/build/cog/__tests__/cog.stac.job.test.js.map +1 -0
  76. package/build/cog/__tests__/cog.test.js +1 -0
  77. package/build/cog/__tests__/cog.test.js.map +1 -0
  78. package/build/cog/__tests__/cog.vrt.test.js +1 -0
  79. package/build/cog/__tests__/cog.vrt.test.js.map +1 -0
  80. package/build/cog/__tests__/cutline.test.js +1 -0
  81. package/build/cog/__tests__/cutline.test.js.map +1 -0
  82. package/build/cog/__tests__/projection.loader.test.js +1 -0
  83. package/build/cog/__tests__/projection.loader.test.js.map +1 -0
  84. package/build/cog/__tests__/source.tiff.testhelper.js +1 -0
  85. package/build/cog/__tests__/source.tiff.testhelper.js.map +1 -0
  86. package/build/cog/builder.d.ts.map +1 -1
  87. package/build/cog/builder.js +5 -2
  88. package/build/cog/builder.js.map +1 -0
  89. package/build/cog/cog.js +1 -0
  90. package/build/cog/cog.js.map +1 -0
  91. package/build/cog/cog.stac.job.js +1 -0
  92. package/build/cog/cog.stac.job.js.map +1 -0
  93. package/build/cog/cog.vrt.js +1 -0
  94. package/build/cog/cog.vrt.js.map +1 -0
  95. package/build/cog/constants.js +1 -0
  96. package/build/cog/constants.js.map +1 -0
  97. package/build/cog/cutline.js +1 -0
  98. package/build/cog/cutline.js.map +1 -0
  99. package/build/cog/job.factory.js +1 -0
  100. package/build/cog/job.factory.js.map +1 -0
  101. package/build/cog/projection.loader.js +1 -0
  102. package/build/cog/projection.loader.js.map +1 -0
  103. package/build/cog/stac.js +1 -0
  104. package/build/cog/stac.js.map +1 -0
  105. package/build/cog/types.js +1 -0
  106. package/build/cog/types.js.map +1 -0
  107. package/build/gdal/__tests__/gdal.progress.test.js +1 -0
  108. package/build/gdal/__tests__/gdal.progress.test.js.map +1 -0
  109. package/build/gdal/__tests__/gdal.test.js +1 -0
  110. package/build/gdal/__tests__/gdal.test.js.map +1 -0
  111. package/build/gdal/gdal.cog.js +1 -0
  112. package/build/gdal/gdal.cog.js.map +1 -0
  113. package/build/gdal/gdal.command.js +1 -0
  114. package/build/gdal/gdal.command.js.map +1 -0
  115. package/build/gdal/gdal.config.js +1 -0
  116. package/build/gdal/gdal.config.js.map +1 -0
  117. package/build/gdal/gdal.docker.js +1 -0
  118. package/build/gdal/gdal.docker.js.map +1 -0
  119. package/build/gdal/gdal.js +1 -0
  120. package/build/gdal/gdal.js.map +1 -0
  121. package/build/gdal/gdal.local.js +1 -0
  122. package/build/gdal/gdal.local.js.map +1 -0
  123. package/build/gdal/gdal.progress.js +1 -0
  124. package/build/gdal/gdal.progress.js.map +1 -0
  125. package/build/index.js +1 -0
  126. package/build/index.js.map +1 -0
  127. package/package.json +10 -7
@@ -22,6 +22,11 @@ export class CommandBundle extends CommandLineAction {
22
22
  parameterLongName: '--output',
23
23
  description: 'Output of the bundle file',
24
24
  });
25
+ this.assets = this.defineStringParameter({
26
+ argumentName: 'ASSETS',
27
+ parameterLongName: '--assets',
28
+ description: 'Add assets location into the config bundle file',
29
+ });
25
30
  }
26
31
  async onExecute() {
27
32
  var _a, _b;
@@ -29,8 +34,13 @@ export class CommandBundle extends CommandLineAction {
29
34
  const config = (_a = this.config.value) !== null && _a !== void 0 ? _a : DefaultConfig;
30
35
  const bundle = (_b = this.output.value) !== null && _b !== void 0 ? _b : DefaultOutput;
31
36
  const mem = await ConfigJson.fromPath(config, logger);
32
- await fsa.writeJson(bundle, mem.toJson());
37
+ const configJson = mem.toJson();
38
+ const assets = this.assets.value;
39
+ if (assets)
40
+ configJson.assets = assets;
41
+ await fsa.writeJson(bundle, configJson);
33
42
  logger.info({ path: bundle }, 'ConfigBundled');
34
43
  return;
35
44
  }
36
45
  }
46
+ //# sourceMappingURL=action.bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.bundle.js","sourceRoot":"","sources":["../../../src/cli/config/action.bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAA8B,MAAM,4BAA4B,CAAC;AAE3F,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AACvC,MAAM,CAAC,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAElD,MAAM,OAAO,aAAc,SAAQ,iBAAiB;IAKlD;QACE,KAAK,CAAC;YACJ,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,wCAAwC;YACjD,aAAa,EAAE,mEAAmE;SACnF,CAAC,CAAC;IACL,CAAC;IAES,kBAAkB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACvC,YAAY,EAAE,QAAQ;YACtB,iBAAiB,EAAE,UAAU;YAC7B,WAAW,EAAE,sBAAsB;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACvC,YAAY,EAAE,QAAQ;YACtB,iBAAiB,EAAE,UAAU;YAC7B,WAAW,EAAE,2BAA2B;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACvC,YAAY,EAAE,QAAQ;YACtB,iBAAiB,EAAE,UAAU;YAC7B,WAAW,EAAE,iDAAiD;SAC/D,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS;;QACb,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,KAAK,mCAAI,aAAa,CAAC;QAClD,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,KAAK,mCAAI,aAAa,CAAC;QAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,IAAI,MAAM;YAAE,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;QACvC,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;CACF"}
@@ -1,11 +1,14 @@
1
- import { BaseConfig } from '@basemaps/config';
1
+ import { BaseConfig, ConfigProviderMemory } from '@basemaps/config';
2
2
  import { CommandLineAction } from '@rushstack/ts-command-line';
3
3
  export declare class CommandImport extends CommandLineAction {
4
4
  private config;
5
+ private backup;
5
6
  private commit;
6
7
  promises: Promise<boolean>[];
7
8
  /** List of paths to invalidate at the end of the request */
8
9
  invalidations: string[];
10
+ /** List of paths to invalidate at the end of the request */
11
+ backupConfig: ConfigProviderMemory;
9
12
  constructor();
10
13
  protected onDefineParameters(): void;
11
14
  onExecute(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"action.import.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.import.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAuC,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAwD,MAAM,4BAA4B,CAAC;AAIrH,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA2B;IAEzC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAM;IAClC,4DAA4D;IAC5D,aAAa,EAAE,MAAM,EAAE,CAAM;;IAU7B,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAc9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA0ChC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;CASlD"}
1
+ {"version":3,"file":"action.import.d.ts","sourceRoot":"","sources":["../../../src/cli/config/action.import.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAuC,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,EAAE,iBAAiB,EAAwD,MAAM,4BAA4B,CAAC;AAKrH,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA2B;IAEzC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAM;IAClC,4DAA4D;IAC5D,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,4DAA4D;IAC5D,YAAY,EAAE,oBAAoB,CAA8B;;IAUhE,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAmB9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAoEhC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;CAiBlD"}
@@ -1,8 +1,9 @@
1
1
  import { Env, fsa, LogConfig } from '@basemaps/shared';
2
- import { ConfigProviderMemory } from '@basemaps/config';
2
+ import { Config, ConfigProviderMemory } from '@basemaps/config';
3
3
  import { CommandLineAction } from '@rushstack/ts-command-line';
4
4
  import { Q, Updater } from './config.update.js';
5
5
  import { invalidateCache } from '../util.js';
6
+ import fetch from 'node-fetch';
6
7
  export class CommandImport extends CommandLineAction {
7
8
  constructor() {
8
9
  super({
@@ -13,14 +14,21 @@ export class CommandImport extends CommandLineAction {
13
14
  this.promises = [];
14
15
  /** List of paths to invalidate at the end of the request */
15
16
  this.invalidations = [];
17
+ /** List of paths to invalidate at the end of the request */
18
+ this.backupConfig = new ConfigProviderMemory();
16
19
  }
17
20
  onDefineParameters() {
18
21
  this.config = this.defineStringParameter({
19
22
  argumentName: 'CONFIG',
20
23
  parameterLongName: '--config',
21
- description: 'Path of config json',
24
+ description: 'Path of config json, this can be both a local path or s3 location',
22
25
  required: true,
23
26
  });
27
+ this.backup = this.defineStringParameter({
28
+ argumentName: 'BACKUP',
29
+ parameterLongName: '--backup',
30
+ description: 'Backup the old config into a config bundle json',
31
+ });
24
32
  this.commit = this.defineFlagParameter({
25
33
  parameterLongName: '--commit',
26
34
  description: 'Actually start the import',
@@ -33,8 +41,12 @@ export class CommandImport extends CommandLineAction {
33
41
  logger.level = 'trace';
34
42
  const commit = (_a = this.commit.value) !== null && _a !== void 0 ? _a : false;
35
43
  const config = this.config.value;
44
+ const backup = this.backup.value;
36
45
  if (config == null)
37
46
  throw new Error('Please provide a config json');
47
+ if (commit && !config.startsWith('s3://')) {
48
+ throw new Error('To actually import into dynamo has to use the config file from s3.');
49
+ }
38
50
  const HostPrefix = Env.isProduction() ? '' : 'dev.';
39
51
  const healthEndpoint = `https://${HostPrefix}basemaps.linz.govt.nz/v1/health`;
40
52
  logger.info({ url: healthEndpoint }, 'Import:ValidateHealth');
@@ -51,6 +63,22 @@ export class CommandImport extends CommandLineAction {
51
63
  for (const config of mem.objects.values())
52
64
  this.update(config, commit);
53
65
  await Promise.all(this.promises);
66
+ if (commit) {
67
+ const configBundle = {
68
+ id: Config.ConfigBundle.id(configJson.hash),
69
+ name: Config.ConfigBundle.id(`config-${configJson.hash}.json`),
70
+ path: config,
71
+ hash: configJson.hash,
72
+ };
73
+ logger.info({ config }, 'Import:ConfigBundle');
74
+ if (Config.ConfigBundle.isWriteable()) {
75
+ // Insert a cb_hash record for reference
76
+ await Config.ConfigBundle.put(configBundle);
77
+ // Update the cb_latest record
78
+ configBundle.id = Config.ConfigBundle.id('latest');
79
+ await Config.ConfigBundle.put(configBundle);
80
+ }
81
+ }
54
82
  if (commit && this.invalidations.length > 0) {
55
83
  // Lots of invalidations just invalidate everything
56
84
  if (this.invalidations.length > 10) {
@@ -64,6 +92,9 @@ export class CommandImport extends CommandLineAction {
64
92
  if (!res.ok)
65
93
  throw new Error('Basemaps is unhealthy');
66
94
  }
95
+ if (backup) {
96
+ await fsa.writeJson(backup, this.backupConfig.toJson());
97
+ }
67
98
  if (commit !== true)
68
99
  logger.info('DryRun:Done');
69
100
  }
@@ -71,10 +102,18 @@ export class CommandImport extends CommandLineAction {
71
102
  const promise = Q(async () => {
72
103
  const updater = new Updater(config, commit);
73
104
  const hasChanges = await updater.reconcile();
74
- if (hasChanges)
105
+ if (hasChanges) {
75
106
  this.invalidations.push(updater.invalidatePath());
107
+ const oldData = await updater.getOldData();
108
+ if (oldData != null)
109
+ this.backupConfig.put(oldData); // No need to backup anything if there is new insert
110
+ }
111
+ else {
112
+ this.backupConfig.put(config);
113
+ }
76
114
  return true;
77
115
  });
78
116
  this.promises.push(promise);
79
117
  }
80
118
  }
119
+ //# sourceMappingURL=action.import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.import.js","sourceRoot":"","sources":["../../../src/cli/config/action.import.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { LogType } from '@basemaps/shared';
2
2
  import diff from 'deep-diff';
3
3
  export declare const IgnoredProperties: string[];
4
4
  export declare class ConfigDiff {
5
- static printDiff<T>(changes: diff.Diff<T, T>[]): string;
5
+ static getDiff<T>(changes: diff.Diff<T, T>[]): string;
6
6
  static showDiff<T extends {
7
7
  id: string;
8
8
  }>(type: string, oldData: T, newData: T, logger: LogType): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"config.diff.d.ts","sourceRoot":"","sources":["../../../src/cli/config/config.diff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,eAAO,MAAM,iBAAiB,UAAyD,CAAC;AAExF,qBAAa,UAAU;IACrB,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM;IA0BvD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO;CAS1G"}
1
+ {"version":3,"file":"config.diff.d.ts","sourceRoot":"","sources":["../../../src/cli/config/config.diff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,eAAO,MAAM,iBAAiB,UAAyD,CAAC;AAExF,qBAAa,UAAU;IACrB,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM;IA0BrD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO;CAW1G"}
@@ -2,14 +2,14 @@ import c from 'ansi-colors';
2
2
  import diff from 'deep-diff';
3
3
  export const IgnoredProperties = ['id', 'createdAt', 'updatedAt', 'year', 'resolution'];
4
4
  export class ConfigDiff {
5
- static printDiff(changes) {
5
+ static getDiff(changes) {
6
6
  let output = '';
7
7
  let isArray = false;
8
8
  for (const change of changes) {
9
9
  if (change.kind === 'A') {
10
10
  if (change.path)
11
11
  output += change.path.join();
12
- output += this.printDiff([change.item]);
12
+ output += this.getDiff([change.item]);
13
13
  isArray = true; // Stop displaying the array changes for each line.
14
14
  }
15
15
  else {
@@ -33,15 +33,18 @@ export class ConfigDiff {
33
33
  }
34
34
  }
35
35
  }
36
- return output;
36
+ return output.trim();
37
37
  }
38
38
  static showDiff(type, oldData, newData, logger) {
39
39
  const changes = diff.diff(oldData, newData, (_path, key) => IgnoredProperties.indexOf(key) >= 0);
40
40
  if (changes) {
41
+ const changeDif = ConfigDiff.getDiff(changes);
41
42
  logger.info({ type, record: newData.id }, 'Changes');
42
- ConfigDiff.printDiff(changes);
43
+ // eslint-disable-next-line no-console
44
+ console.log(changeDif);
43
45
  return true;
44
46
  }
45
47
  return false;
46
48
  }
47
49
  }
50
+ //# sourceMappingURL=config.diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.diff.js","sourceRoot":"","sources":["../../../src/cli/config/config.diff.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,aAAa,CAAC;AAC5B,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAExF,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,OAAO,CAAI,OAA0B;QAC1C,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;gBACvB,IAAI,MAAM,CAAC,IAAI;oBAAE,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC9C,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtC,OAAO,GAAG,IAAI,CAAC,CAAC,mDAAmD;aACpE;iBAAM;gBACL,IAAI,OAAO;oBAAE,SAAS;gBACtB,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;oBACvB,IAAI,MAAM,CAAC,IAAI;wBAAE,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC9C,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBACtD,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;iBAC5D;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC9B,IAAI,MAAM,CAAC,IAAI;wBAAE,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC9C,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;iBAC9D;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC9B,IAAI,MAAM,CAAC,IAAI;wBAAE,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC9C,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;iBAC5D;aACF;SACF;QACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,QAAQ,CAA2B,IAAY,EAAE,OAAU,EAAE,OAAU,EAAE,MAAe;QAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAe,EAAE,GAAW,EAAE,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACnH,IAAI,OAAO,EAAE;YACX,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YACrD,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -4,6 +4,7 @@ import { LogType } from '@basemaps/shared';
4
4
  export declare const Q: import("p-limit").LimitFunction;
5
5
  export declare class Updater<S extends BaseConfig = BaseConfig> {
6
6
  config: S;
7
+ _oldData: Promise<ConfigImagery | ConfigTileSet | ConfigProvider | ConfigVectorStyle | null>;
7
8
  prefix: string;
8
9
  isCommit: boolean;
9
10
  logger: LogType;
@@ -15,6 +16,7 @@ export declare class Updater<S extends BaseConfig = BaseConfig> {
15
16
  getDB(): BasemapsConfigObject<ConfigTileSet | ConfigImagery | ConfigProvider | ConfigVectorStyle>;
16
17
  getConfig(): ConfigTileSet | ConfigImagery | ConfigProvider | ConfigVectorStyle;
17
18
  invalidatePath(): string;
19
+ getOldData(): Promise<ConfigImagery | ConfigTileSet | ConfigProvider | ConfigVectorStyle | null>;
18
20
  /**
19
21
  * Reconcile the differences between the config and the tile metadata DB and update if changed.
20
22
  */
@@ -1 +1 @@
1
- {"version":3,"file":"config.update.d.ts","sourceRoot":"","sources":["../../../src/cli/config/config.update.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGV,aAAa,EACb,aAAa,EACb,cAAc,EACd,iBAAiB,EAElB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAa,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAItD,eAAO,MAAM,CAAC,iCAAa,CAAC;AAE5B,qBAAa,OAAO,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IACpD,MAAM,EAAE,CAAC,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAEhB;;;OAGG;gBACS,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO;IASxC,KAAK,IAAI,oBAAoB,CAAC,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,CAAC;IAQjG,SAAS,IAAI,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB;IAQ/E,cAAc,IAAI,MAAM;IAMxB;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;CAkBpC"}
1
+ {"version":3,"file":"config.update.d.ts","sourceRoot":"","sources":["../../../src/cli/config/config.update.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGV,aAAa,EACb,aAAa,EACb,cAAc,EACd,iBAAiB,EAElB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAa,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAItD,eAAO,MAAM,CAAC,iCAAa,CAAC;AAE5B,qBAAa,OAAO,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IACpD,MAAM,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAC7F,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAEhB;;;OAGG;gBACS,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO;IASxC,KAAK,IAAI,oBAAoB,CAAC,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,CAAC;IAQjG,SAAS,IAAI,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB;IAQ/E,cAAc,IAAI,MAAM;IAMxB,UAAU,IAAI,OAAO,CAAC,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAMhG;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;CAgBpC"}
@@ -47,13 +47,19 @@ export class Updater {
47
47
  else
48
48
  return `/v1/tiles/${this.config.id.slice(3)}/*`;
49
49
  }
50
+ getOldData() {
51
+ if (this._oldData)
52
+ return this._oldData;
53
+ this._oldData = this.getDB().get(this.config.id);
54
+ return this._oldData;
55
+ }
50
56
  /**
51
57
  * Reconcile the differences between the config and the tile metadata DB and update if changed.
52
58
  */
53
59
  async reconcile() {
54
- const db = this.getDB();
55
- const oldData = await db.get(this.config.id);
56
60
  const newData = this.getConfig();
61
+ const db = this.getDB();
62
+ const oldData = await this.getOldData();
57
63
  if (oldData == null || ConfigDiff.showDiff(db.prefix, oldData, newData, this.logger)) {
58
64
  const operation = oldData == null ? 'Insert' : 'Update';
59
65
  this.logger.info({ type: db.prefix, record: newData.id, commit: this.isCommit }, `Change:${operation}`);
@@ -69,3 +75,4 @@ export class Updater {
69
75
  return false;
70
76
  }
71
77
  }
78
+ //# sourceMappingURL=config.update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.update.js","sourceRoot":"","sources":["../../../src/cli/config/config.update.ts"],"names":[],"mappings":"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"}
@@ -15,3 +15,4 @@ export async function makeTiffFolder(tmpFolder, name) {
15
15
  await fs.mkdir(folderPath, { recursive: true });
16
16
  return folderPath;
17
17
  }
18
+ //# sourceMappingURL=folder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folder.js","sourceRoot":"","sources":["../../src/cli/folder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,mDAAmD;AACnD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;;IACjD,MAAM,QAAQ,GAAG,MAAA,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,MAAM,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAE/C,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,IAAY;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAE9C,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,gCAAgC,CAAC;AAOxC,qBAAa,yBAA0B,SAAQ,eAAe;;CAe7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,gCAAgC,CAAC;AAWxC,qBAAa,yBAA0B,SAAQ,eAAe;;CAqB7D"}
@@ -1,11 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { BaseCommandLine } from '@basemaps/shared/build/cli/base.js';
3
3
  import 'source-map-support/register.js';
4
+ import { CommandList } from './aws/action.aws.list.js';
4
5
  import { CommandCogCreate } from './cogify/action.cog.js';
5
6
  import { CommandJobCreate } from './cogify/action.job.js';
7
+ import { CommandBundleAssets } from './config/action.bundle.assets.js';
6
8
  import { CommandBundle } from './config/action.bundle.js';
7
9
  import { CommandImport } from './config/action.import.js';
8
10
  import { CommandScreenShot } from './screenshot/action.screenshot.js';
11
+ import { CommandServe } from './server/action.serve.js';
12
+ import { CommandSprites } from './sprites/action.sprites.js';
9
13
  export class BasemapsConfigCommandLine extends BaseCommandLine {
10
14
  constructor() {
11
15
  super({
@@ -15,7 +19,12 @@ export class BasemapsConfigCommandLine extends BaseCommandLine {
15
19
  this.addAction(new CommandCogCreate());
16
20
  this.addAction(new CommandJobCreate());
17
21
  this.addAction(new CommandBundle());
22
+ this.addAction(new CommandBundleAssets());
18
23
  this.addAction(new CommandImport());
19
24
  this.addAction(new CommandScreenShot());
25
+ this.addAction(new CommandSprites());
26
+ this.addAction(new CommandServe());
27
+ this.addAction(new CommandList());
20
28
  }
21
29
  }
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,OAAO,yBAA0B,SAAQ,eAAe;IAC5D;QACE,KAAK,CAAC;YACJ,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,+BAA+B;SACjD,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;QAEpC,IAAI,CAAC,SAAS,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAExC,IAAI,CAAC,SAAS,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAEnC,IAAI,CAAC,SAAS,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IACpC,CAAC;CACF"}
@@ -1,61 +1,19 @@
1
1
  import { LogType } from '@basemaps/shared';
2
- import { Browser } from 'playwright';
3
2
  import { CommandLineAction } from '@rushstack/ts-command-line';
4
- import { z } from 'zod';
5
- export declare const DefaultTestTiles = "./test-tiles/default.test.tiles.json";
3
+ import { FastifyInstance } from 'fastify/types/instance';
4
+ import { Browser } from 'playwright';
6
5
  export declare const DefaultHost = "basemaps.linz.govt.nz";
7
- declare enum TileMatrixIdentifier {
8
- Nztm2000Quad = "NZTM2000Quad",
9
- Google = "WebMercatorQuad"
10
- }
11
- declare const zTileTest: z.ZodObject<{
12
- name: z.ZodString;
13
- tileMatrix: z.ZodNativeEnum<typeof TileMatrixIdentifier>;
14
- location: z.ZodObject<{
15
- lat: z.ZodNumber;
16
- lng: z.ZodNumber;
17
- z: z.ZodNumber;
18
- }, "strip", z.ZodTypeAny, {
19
- z: number;
20
- lat: number;
21
- lng: number;
22
- }, {
23
- z: number;
24
- lat: number;
25
- lng: number;
26
- }>;
27
- tileSet: z.ZodString;
28
- style: z.ZodOptional<z.ZodString>;
29
- }, "strip", z.ZodTypeAny, {
30
- style?: string | undefined;
31
- name: string;
32
- location: {
33
- z: number;
34
- lat: number;
35
- lng: number;
36
- };
37
- tileMatrix: TileMatrixIdentifier;
38
- tileSet: string;
39
- }, {
40
- style?: string | undefined;
41
- name: string;
42
- location: {
43
- z: number;
44
- lat: number;
45
- lng: number;
46
- };
47
- tileMatrix: TileMatrixIdentifier;
48
- tileSet: string;
49
- }>;
50
- export declare type TileTestSchema = z.infer<typeof zTileTest>;
6
+ export declare const DefaultOutput = ".artifacts/visual-snapshots/";
51
7
  export declare class CommandScreenShot extends CommandLineAction {
52
8
  private config;
53
9
  private host;
54
10
  private tiles;
11
+ private assets;
12
+ private output;
55
13
  constructor();
56
14
  protected onDefineParameters(): void;
57
15
  onExecute(): Promise<void>;
16
+ startServer(port: number, config: string, logger: LogType): Promise<FastifyInstance>;
17
+ takeScreenshots(host: string, chrome: Browser, logger: LogType): Promise<void>;
58
18
  }
59
- export declare function takeScreenshots(host: string, tiles: string, chrome: Browser, logger: LogType): Promise<void>;
60
- export {};
61
19
  //# sourceMappingURL=action.screenshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"action.screenshot.d.ts","sourceRoot":"","sources":["../../../src/cli/screenshot/action.screenshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAExE,OAAO,EAAE,OAAO,EAAY,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAA8B,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,gBAAgB,yCAAyC,CAAC;AACvE,eAAO,MAAM,WAAW,0BAA0B,CAAC;AAEnD,aAAK,oBAAoB;IACvB,YAAY,iBAAiB;IAC7B,MAAM,oBAAoB;CAC3B;AAQD,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMb,CAAC;AAEH,oBAAY,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAEvD,qBAAa,iBAAkB,SAAQ,iBAAiB;IACtD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,KAAK,CAA6B;;IAU1C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAsB9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAyBjC;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkClH"}
1
+ {"version":3,"file":"action.screenshot.d.ts","sourceRoot":"","sources":["../../../src/cli/screenshot/action.screenshot.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAA8B,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,OAAO,EAAY,MAAM,YAAY,CAAC;AAG/C,eAAO,MAAM,WAAW,0BAA0B,CAAC;AACnD,eAAO,MAAM,aAAa,iCAAiC,CAAC;AAE5D,qBAAa,iBAAkB,SAAQ,iBAAiB;IACtD,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAA6B;;IAU3C,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAiC9B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAMpF,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CA0CrF"}
@@ -1,30 +1,12 @@
1
- import { Config, Env, fsa, LogConfig } from '@basemaps/shared';
2
- import { mkdir } from 'fs/promises';
3
- import { chromium } from 'playwright';
1
+ import { createServer } from '@basemaps/server';
2
+ import { Env, fsa, LogConfig } from '@basemaps/shared';
4
3
  import { CommandLineAction } from '@rushstack/ts-command-line';
5
- import { z } from 'zod';
4
+ import { mkdir } from 'fs/promises';
6
5
  import getPort from 'get-port';
7
- import { createServer } from '@basemaps/server';
8
- import { ConfigProviderMemory } from '@basemaps/config';
9
- export const DefaultTestTiles = './test-tiles/default.test.tiles.json';
6
+ import { chromium } from 'playwright';
7
+ import { DefaultTestTiles } from './test.tiles.js';
10
8
  export const DefaultHost = 'basemaps.linz.govt.nz';
11
- var TileMatrixIdentifier;
12
- (function (TileMatrixIdentifier) {
13
- TileMatrixIdentifier["Nztm2000Quad"] = "NZTM2000Quad";
14
- TileMatrixIdentifier["Google"] = "WebMercatorQuad";
15
- })(TileMatrixIdentifier || (TileMatrixIdentifier = {}));
16
- const zLocation = z.object({
17
- lat: z.number().gte(-90).lte(90),
18
- lng: z.number().gte(-180).lte(180),
19
- z: z.number().gte(0).lte(32),
20
- });
21
- const zTileTest = z.object({
22
- name: z.string(),
23
- tileMatrix: z.nativeEnum(TileMatrixIdentifier),
24
- location: zLocation,
25
- tileSet: z.string(),
26
- style: z.string().optional(),
27
- });
9
+ export const DefaultOutput = '.artifacts/visual-snapshots/';
28
10
  export class CommandScreenShot extends CommandLineAction {
29
11
  constructor() {
30
12
  super({
@@ -49,28 +31,36 @@ export class CommandScreenShot extends CommandLineAction {
49
31
  argumentName: 'TILES',
50
32
  parameterLongName: '--tiles',
51
33
  description: 'JSON file path for the test tiles',
52
- defaultValue: DefaultTestTiles,
34
+ });
35
+ this.assets = this.defineStringParameter({
36
+ argumentName: 'ASSETS',
37
+ parameterLongName: '--assets',
38
+ description: 'Where the assets (sprites, fonts) are located',
39
+ });
40
+ this.output = this.defineStringParameter({
41
+ argumentName: 'OUTPUT',
42
+ parameterLongName: '--output',
43
+ description: 'Output of the bundle file',
53
44
  });
54
45
  }
55
46
  async onExecute() {
56
- var _a, _b, _c;
47
+ var _a, _b;
57
48
  const logger = LogConfig.get();
58
49
  const config = this.config.value;
59
50
  let host = (_a = this.host.value) !== null && _a !== void 0 ? _a : DefaultHost;
60
- const tiles = (_b = this.tiles.value) !== null && _b !== void 0 ? _b : DefaultTestTiles;
61
51
  let BasemapsServer = undefined;
62
52
  if (config != null) {
63
53
  const port = await getPort();
64
- host = (_c = Env.get(Env.PublicUrlBase)) !== null && _c !== void 0 ? _c : `http://localhost:${port}`;
54
+ host = (_b = Env.get(Env.PublicUrlBase)) !== null && _b !== void 0 ? _b : `http://localhost:${port}`;
65
55
  // Force a default url base so WMTS requests know their relative url
66
56
  process.env[Env.PublicUrlBase] = host;
67
- BasemapsServer = await startServer(port, config, logger);
57
+ BasemapsServer = await this.startServer(port, config, logger);
68
58
  logger.info({ url: host }, 'Server:Started');
69
59
  }
70
60
  logger.info('Page:Launch');
71
61
  const chrome = await chromium.launch();
72
62
  try {
73
- await takeScreenshots(host, tiles, chrome, logger);
63
+ await this.takeScreenshots(host, chrome, logger);
74
64
  }
75
65
  finally {
76
66
  await chrome.close();
@@ -78,44 +68,48 @@ export class CommandScreenShot extends CommandLineAction {
78
68
  await BasemapsServer.close();
79
69
  }
80
70
  }
81
- }
82
- export async function takeScreenshots(host, tiles, chrome, logger) {
83
- const TestTiles = await fsa.readJson(tiles);
84
- for (const test of TestTiles) {
85
- const page = await chrome.newPage();
86
- const searchParam = new URLSearchParams();
87
- searchParam.set('p', test.tileMatrix);
88
- searchParam.set('i', test.tileSet);
89
- if (test.style)
90
- searchParam.set('s', test.style);
91
- const loc = `@${test.location.lat},${test.location.lng},z${test.location.z}`;
92
- const fileName = '.artifacts/visual-snapshots/' + test.name + '.png';
93
- await mkdir(`.artifacts/visual-snapshots/`, { recursive: true });
94
- let url = `${host}/?${searchParam.toString()}&debug=true&debug.screenshot=true#${loc}`;
95
- if (!url.startsWith('http'))
96
- url = `https://${url}`;
97
- logger.info({ url, expected: fileName }, 'Page:Load');
98
- await page.goto(url);
99
- try {
100
- await page.waitForSelector('div#map-loaded', { state: 'attached' });
101
- await page.waitForTimeout(1000);
102
- await page.waitForLoadState('networkidle');
103
- await page.screenshot({ path: fileName });
71
+ async startServer(port, config, logger) {
72
+ // Start server
73
+ const server = await createServer({ config, assets: this.assets.value }, logger);
74
+ return await new Promise((resolve) => server.listen(port, '0.0.0.0', () => resolve(server)));
75
+ }
76
+ async takeScreenshots(host, chrome, logger) {
77
+ var _a;
78
+ const tiles = this.tiles.value;
79
+ const outputPath = (_a = this.output.value) !== null && _a !== void 0 ? _a : DefaultOutput;
80
+ let testTiles = DefaultTestTiles;
81
+ if (tiles) {
82
+ testTiles = await fsa.readJson(tiles);
104
83
  }
105
- catch (e) {
106
- await page.screenshot({ path: fileName });
107
- throw e;
84
+ for (const test of testTiles) {
85
+ const page = await chrome.newPage();
86
+ const searchParam = new URLSearchParams();
87
+ searchParam.set('p', test.tileMatrix);
88
+ searchParam.set('i', test.tileSet);
89
+ if (test.style)
90
+ searchParam.set('s', test.style);
91
+ const loc = `@${test.location.lat},${test.location.lng},z${test.location.z}`;
92
+ const fileName = test.name + '.png';
93
+ const output = fsa.join(outputPath, fileName);
94
+ await mkdir(`.artifacts/visual-snapshots/`, { recursive: true });
95
+ let url = `${host}/?${searchParam.toString()}&debug=true&debug.screenshot=true#${loc}`;
96
+ if (!url.startsWith('http'))
97
+ url = `https://${url}`;
98
+ logger.info({ url, expected: output }, 'Page:Load');
99
+ await page.goto(url);
100
+ try {
101
+ await page.waitForSelector('div#map-loaded', { state: 'attached' });
102
+ await page.waitForTimeout(1000);
103
+ await page.waitForLoadState('networkidle');
104
+ await page.screenshot({ path: output });
105
+ }
106
+ catch (e) {
107
+ await page.screenshot({ path: output });
108
+ throw e;
109
+ }
110
+ logger.info({ url, expected: output }, 'Page:Load:Done');
111
+ await page.close();
108
112
  }
109
- logger.info({ url, expected: fileName }, 'Page:Load:Done');
110
- await page.close();
111
113
  }
112
114
  }
113
- async function startServer(port, config, logger) {
114
- // Bundle Config
115
- const configJson = await fsa.readJson(config);
116
- const mem = ConfigProviderMemory.fromJson(configJson);
117
- Config.setConfigProvider(mem);
118
- // Start server
119
- const server = createServer(logger);
120
- return await new Promise((resolve) => server.listen(port, '0.0.0.0', () => resolve(server)));
121
- }
115
+ //# sourceMappingURL=action.screenshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.screenshot.js","sourceRoot":"","sources":["../../../src/cli/screenshot/action.screenshot.ts"],"names":[],"mappings":"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"}