@crvouga/mockingbird-service-brevo 1.12.0 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog — @crvouga/mockingbird-service-brevo
2
2
 
3
+ ## 1.12.1 (2026-11-12)
4
+
5
+ ### Fixes and improvements
6
+
7
+ - serve vendor brand data from each emulator instead of the docs site ([0c72a69](https://github.com/crvouga/mockingbird/commit/0c72a693fc76e612936150598faef9787ad1c824))
8
+ - take SIGINT/SIGTERM before readiness is published ([d5a98a0](https://github.com/crvouga/mockingbird/commit/d5a98a09a344e12818c5c94cbea03621b528f841))
9
+
3
10
  ## 1.12.0 (2026-11-11)
4
11
 
5
12
  ### Features
@@ -9,7 +9,7 @@ import {
9
9
  parseFaultHeader,
10
10
  resolveAdminPrefix,
11
11
  restoreClock
12
- } from "./chunk-PQYSL5E4.js";
12
+ } from "./chunk-Q6GYOKH5.js";
13
13
 
14
14
  // ../../adapters/node/dist/cli.js
15
15
  import { readFile as readFile5 } from "node:fs/promises";
@@ -3079,7 +3079,7 @@ async function preflightFleet(config, options) {
3079
3079
  break;
3080
3080
  }
3081
3081
  }
3082
- targets.set(name, { ...target, packageVersion: packageVersion ?? "1.12.0" });
3082
+ targets.set(name, { ...target, packageVersion: packageVersion ?? "1.12.1" });
3083
3083
  } catch (error) {
3084
3084
  throw new Error(`service ${name}: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
3085
3085
  }
@@ -4937,20 +4937,35 @@ var start = async (target, values, config) => {
4937
4937
  console.log(`${target.name} ${line.replaceAll("/__admin", adminPrefix)}`);
4938
4938
  return listening;
4939
4939
  };
4940
- var untilSignal = async (servers) => new Promise((resolve4) => {
4941
- const stop = async () => {
4940
+ var watchSignals = () => {
4941
+ let received = false;
4942
+ let wake = () => {
4943
+ };
4944
+ const on = () => {
4945
+ received = true;
4946
+ wake();
4947
+ };
4948
+ const dispose = () => {
4942
4949
  ;
4943
- process.removeListener("SIGINT", stop);
4944
- process.removeListener("SIGTERM", stop);
4945
- const results = await Promise.allSettled(servers.map((s) => s.close()));
4946
- for (const result of results)
4947
- if (result.status === "rejected")
4948
- console.error(result.reason instanceof Error ? result.reason.message : String(result.reason));
4949
- resolve4(results.some((r) => r.status === "rejected") ? 1 : 0);
4950
+ process.removeListener("SIGINT", on);
4951
+ process.removeListener("SIGTERM", on);
4950
4952
  };
4951
- process.once("SIGINT", stop);
4952
- process.once("SIGTERM", stop);
4953
- });
4953
+ process.once("SIGINT", on);
4954
+ process.once("SIGTERM", on);
4955
+ return {
4956
+ dispose,
4957
+ async untilSignal(servers) {
4958
+ if (!received)
4959
+ await new Promise((resolve4) => wake = resolve4);
4960
+ dispose();
4961
+ const results = await Promise.allSettled(servers.map((s) => s.close()));
4962
+ for (const result of results)
4963
+ if (result.status === "rejected")
4964
+ console.error(result.reason instanceof Error ? result.reason.message : String(result.reason));
4965
+ return results.some((r) => r.status === "rejected") ? 1 : 0;
4966
+ }
4967
+ };
4968
+ };
4954
4969
  var serveCommand = (target) => ({
4955
4970
  fleetTarget: target,
4956
4971
  summary: `Serve the ${target.name} emulator or a configured fleet`,
@@ -4963,6 +4978,7 @@ var serveCommand = (target) => ({
4963
4978
  }
4964
4979
  const configPath = asString(values.config);
4965
4980
  if (configPath !== void 0) {
4981
+ const signals2 = watchSignals();
4966
4982
  try {
4967
4983
  const config = JSON.parse(await readFile5(configPath, "utf8"));
4968
4984
  config.adminPrefix = resolveAdminPrefix(config.adminPrefix ?? asString(values["admin-prefix"]) ?? process.env.MOCKINGBIRD_ADMIN_PREFIX);
@@ -4992,8 +5008,9 @@ var serveCommand = (target) => ({
4992
5008
  console.log(`${name} emulator listening on ${endpoint.url}`);
4993
5009
  }
4994
5010
  });
4995
- return untilSignal([fleet]);
5011
+ return signals2.untilSignal([fleet]);
4996
5012
  } catch (error) {
5013
+ signals2.dispose();
4997
5014
  console.error(error instanceof Error ? error.message : String(error));
4998
5015
  return 1;
4999
5016
  }
@@ -5006,6 +5023,7 @@ var serveCommand = (target) => ({
5006
5023
  const adminKey = asString(values["admin-key"]) ?? process.env.MOCKINGBIRD_ADMIN_KEY;
5007
5024
  const seed = asString(values.seed) ?? process.env.MOCKINGBIRD_SEED;
5008
5025
  let listening;
5026
+ const signals = watchSignals();
5009
5027
  try {
5010
5028
  const adminControls = await resolveServeControls(values);
5011
5029
  const idBase = resolveServeIdBase(values);
@@ -5022,10 +5040,11 @@ var serveCommand = (target) => ({
5022
5040
  log
5023
5041
  });
5024
5042
  } catch (error) {
5043
+ signals.dispose();
5025
5044
  console.error(error instanceof Error ? error.message : String(error));
5026
5045
  return 1;
5027
5046
  }
5028
- return untilSignal([listening]);
5047
+ return signals.untilSignal([listening]);
5029
5048
  }
5030
5049
  });
5031
5050
 
@@ -5058,4 +5077,4 @@ export {
5058
5077
  createServer2 as createServer,
5059
5078
  serveTarget
5060
5079
  };
5061
- //# sourceMappingURL=chunk-STOJM4UF.js.map
5080
+ //# sourceMappingURL=chunk-7KBQAZQ2.js.map