@zapier/zapier-sdk 0.40.3 → 0.40.4

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/dist/index.mjs CHANGED
@@ -2,8 +2,6 @@ import { z } from 'zod';
2
2
  import { ListAppsQuerySchema, AppItemSchema as AppItemSchema$1 } from '@zapier/zapier-sdk-core/v0/schemas/apps';
3
3
  import { ListConnectionsQuerySchema as ListConnectionsQuerySchema$1, ConnectionItemSchema as ConnectionItemSchema$1 } from '@zapier/zapier-sdk-core/v0/schemas/connections';
4
4
  import { ListClientCredentialsQuerySchema as ListClientCredentialsQuerySchema$1, CreateClientCredentialsRequestSchema, ClientCredentialsItemSchema as ClientCredentialsItemSchema$1, ClientCredentialsCreatedItemSchema as ClientCredentialsCreatedItemSchema$1 } from '@zapier/zapier-sdk-core/v0/schemas/client-credentials';
5
- import { setTimeout as setTimeout$1 } from 'timers/promises';
6
- import * as os from 'os';
7
5
 
8
6
  var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
9
7
  get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
@@ -40,12 +38,12 @@ function isPositional(schema) {
40
38
  }
41
39
 
42
40
  // src/constants.ts
43
- var ZAPIER_BASE_URL = process.env.ZAPIER_BASE_URL || "https://zapier.com";
41
+ var ZAPIER_BASE_URL = globalThis.process?.env?.ZAPIER_BASE_URL || "https://zapier.com";
44
42
  var MAX_PAGE_LIMIT = 1e4;
45
43
  var DEFAULT_PAGE_SIZE = 100;
46
44
  var DEFAULT_ACTION_TIMEOUT_MS = 18e4;
47
45
  function parseIntEnvVar(name) {
48
- const value = process.env[name];
46
+ const value = globalThis.process?.env?.[name];
49
47
  if (value === void 0) return void 0;
50
48
  const parsed = parseInt(value, 10);
51
49
  if (isNaN(parsed)) {
@@ -4986,7 +4984,7 @@ async function pollUntilComplete(options) {
4986
4984
  let attempts = 0;
4987
4985
  let errorCount = 0;
4988
4986
  if (initialDelay > 0) {
4989
- await setTimeout$1(initialDelay);
4987
+ await sleep(initialDelay);
4990
4988
  }
4991
4989
  while (true) {
4992
4990
  const elapsedTime = Date.now() - startTime;
@@ -5001,7 +4999,7 @@ async function pollUntilComplete(options) {
5001
4999
  if (attempts > 0) {
5002
5000
  const interval = getPollingInterval(elapsedTime);
5003
5001
  const waitTime = calculateErrorBackoffMs(interval, errorCount);
5004
- await setTimeout$1(waitTime);
5002
+ await sleep(waitTime);
5005
5003
  }
5006
5004
  attempts++;
5007
5005
  try {
@@ -5113,8 +5111,8 @@ function getTrackingBaseUrl({
5113
5111
  if (trackingBaseUrl) {
5114
5112
  return trackingBaseUrl;
5115
5113
  }
5116
- if (process.env.ZAPIER_TRACKING_BASE_URL) {
5117
- return process.env.ZAPIER_TRACKING_BASE_URL;
5114
+ if (globalThis.process?.env?.ZAPIER_TRACKING_BASE_URL) {
5115
+ return globalThis.process?.env?.ZAPIER_TRACKING_BASE_URL;
5118
5116
  }
5119
5117
  if (baseUrl) {
5120
5118
  const zapierBaseUrl = getZapierBaseUrl(baseUrl);
@@ -5135,9 +5133,9 @@ function deriveAuthBaseUrl(sdkBaseUrl) {
5135
5133
  }
5136
5134
  function normalizeCredentialsObject(obj, sdkBaseUrl) {
5137
5135
  const merged = {
5138
- clientSecret: process.env.ZAPIER_CREDENTIALS_CLIENT_SECRET,
5139
- baseUrl: process.env.ZAPIER_CREDENTIALS_BASE_URL,
5140
- scope: process.env.ZAPIER_CREDENTIALS_SCOPE,
5136
+ clientSecret: globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_SECRET,
5137
+ baseUrl: globalThis.process?.env?.ZAPIER_CREDENTIALS_BASE_URL,
5138
+ scope: globalThis.process?.env?.ZAPIER_CREDENTIALS_SCOPE,
5141
5139
  ...obj
5142
5140
  };
5143
5141
  const resolvedBaseUrl = merged.baseUrl || deriveAuthBaseUrl(sdkBaseUrl);
@@ -5158,47 +5156,47 @@ function normalizeCredentialsObject(obj, sdkBaseUrl) {
5158
5156
  };
5159
5157
  }
5160
5158
  function resolveCredentialsFromEnv(sdkBaseUrl) {
5161
- if (process.env.ZAPIER_CREDENTIALS) {
5162
- return process.env.ZAPIER_CREDENTIALS;
5159
+ if (globalThis.process?.env?.ZAPIER_CREDENTIALS) {
5160
+ return globalThis.process?.env?.ZAPIER_CREDENTIALS;
5163
5161
  }
5164
- if (process.env.ZAPIER_CREDENTIALS_CLIENT_ID) {
5165
- const resolvedBaseUrl = process.env.ZAPIER_CREDENTIALS_BASE_URL || deriveAuthBaseUrl(sdkBaseUrl);
5166
- if (process.env.ZAPIER_CREDENTIALS_CLIENT_SECRET) {
5162
+ if (globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_ID) {
5163
+ const resolvedBaseUrl = globalThis.process?.env?.ZAPIER_CREDENTIALS_BASE_URL || deriveAuthBaseUrl(sdkBaseUrl);
5164
+ if (globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_SECRET) {
5167
5165
  return {
5168
5166
  type: "client_credentials",
5169
- clientId: process.env.ZAPIER_CREDENTIALS_CLIENT_ID,
5170
- clientSecret: process.env.ZAPIER_CREDENTIALS_CLIENT_SECRET,
5167
+ clientId: globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_ID,
5168
+ clientSecret: globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_SECRET,
5171
5169
  baseUrl: resolvedBaseUrl,
5172
- scope: process.env.ZAPIER_CREDENTIALS_SCOPE
5170
+ scope: globalThis.process?.env?.ZAPIER_CREDENTIALS_SCOPE
5173
5171
  };
5174
5172
  } else {
5175
5173
  return {
5176
5174
  type: "pkce",
5177
- clientId: process.env.ZAPIER_CREDENTIALS_CLIENT_ID,
5175
+ clientId: globalThis.process?.env?.ZAPIER_CREDENTIALS_CLIENT_ID,
5178
5176
  baseUrl: resolvedBaseUrl,
5179
- scope: process.env.ZAPIER_CREDENTIALS_SCOPE
5177
+ scope: globalThis.process?.env?.ZAPIER_CREDENTIALS_SCOPE
5180
5178
  };
5181
5179
  }
5182
5180
  }
5183
- if (process.env.ZAPIER_TOKEN) {
5181
+ if (globalThis.process?.env?.ZAPIER_TOKEN) {
5184
5182
  logDeprecation(
5185
5183
  "ZAPIER_TOKEN is deprecated. Use ZAPIER_CREDENTIALS instead."
5186
5184
  );
5187
- return process.env.ZAPIER_TOKEN;
5185
+ return globalThis.process?.env?.ZAPIER_TOKEN;
5188
5186
  }
5189
- if (process.env.ZAPIER_AUTH_CLIENT_ID) {
5187
+ if (globalThis.process?.env?.ZAPIER_AUTH_CLIENT_ID) {
5190
5188
  logDeprecation(
5191
5189
  "ZAPIER_AUTH_CLIENT_ID is deprecated. Use ZAPIER_CREDENTIALS_CLIENT_ID instead."
5192
5190
  );
5193
- if (process.env.ZAPIER_AUTH_BASE_URL) {
5191
+ if (globalThis.process?.env?.ZAPIER_AUTH_BASE_URL) {
5194
5192
  logDeprecation(
5195
5193
  "ZAPIER_AUTH_BASE_URL is deprecated. Use ZAPIER_CREDENTIALS_BASE_URL instead."
5196
5194
  );
5197
5195
  }
5198
- const resolvedBaseUrl = process.env.ZAPIER_AUTH_BASE_URL || deriveAuthBaseUrl(sdkBaseUrl);
5196
+ const resolvedBaseUrl = globalThis.process?.env?.ZAPIER_AUTH_BASE_URL || deriveAuthBaseUrl(sdkBaseUrl);
5199
5197
  return {
5200
5198
  type: "pkce",
5201
- clientId: process.env.ZAPIER_AUTH_CLIENT_ID,
5199
+ clientId: globalThis.process?.env?.ZAPIER_AUTH_CLIENT_ID,
5202
5200
  baseUrl: resolvedBaseUrl
5203
5201
  };
5204
5202
  }
@@ -5370,17 +5368,23 @@ async function getCliLogin() {
5370
5368
  return cachedCliLogin || void 0;
5371
5369
  }
5372
5370
  try {
5373
- cachedCliLogin = await import('@zapier/zapier-sdk-cli/login');
5374
- return cachedCliLogin;
5371
+ const mod = await import('@zapier/zapier-sdk-cli/login');
5372
+ if (typeof mod.getToken === "function") {
5373
+ cachedCliLogin = mod;
5374
+ return cachedCliLogin;
5375
+ }
5375
5376
  } catch {
5376
5377
  }
5377
5378
  try {
5378
- cachedCliLogin = await import('@zapier/zapier-sdk-cli-login');
5379
- return cachedCliLogin;
5379
+ const mod = await import('@zapier/zapier-sdk-cli-login');
5380
+ if (typeof mod.getToken === "function") {
5381
+ cachedCliLogin = mod;
5382
+ return cachedCliLogin;
5383
+ }
5380
5384
  } catch {
5381
- cachedCliLogin = false;
5382
- return void 0;
5383
5385
  }
5386
+ cachedCliLogin = false;
5387
+ return void 0;
5384
5388
  }
5385
5389
  function injectCliLogin(module) {
5386
5390
  cachedCliLogin = module;
@@ -5908,6 +5912,8 @@ var apiPlugin = (params) => {
5908
5912
  }
5909
5913
  };
5910
5914
  };
5915
+
5916
+ // src/utils/batch-utils.ts
5911
5917
  var DEFAULT_CONCURRENCY = 10;
5912
5918
  var BATCH_START_DELAY_MS = 25;
5913
5919
  var DEFAULT_BATCH_TIMEOUT_MS = 18e4;
@@ -5943,7 +5949,7 @@ async function batch(tasks, options = {}) {
5943
5949
  try {
5944
5950
  let result;
5945
5951
  if (taskTimeoutMs !== void 0) {
5946
- const timeoutPromise = setTimeout$1(taskTimeoutMs).then(() => {
5952
+ const timeoutPromise = sleep(taskTimeoutMs).then(() => {
5947
5953
  throw new ZapierTimeoutError(
5948
5954
  `Task timed out after ${taskTimeoutMs}ms`
5949
5955
  );
@@ -5958,7 +5964,7 @@ async function batch(tasks, options = {}) {
5958
5964
  const isTimeout = error instanceof ZapierTimeoutError;
5959
5965
  if (retry && !isTimeout && newErrorCount < MAX_CONSECUTIVE_ERRORS) {
5960
5966
  const waitTime = calculateErrorBackoffMs(1e3, newErrorCount);
5961
- await setTimeout$1(waitTime);
5967
+ await sleep(waitTime);
5962
5968
  taskQueue.push({
5963
5969
  index,
5964
5970
  task,
@@ -5981,7 +5987,7 @@ async function batch(tasks, options = {}) {
5981
5987
  if (!taskState) break;
5982
5988
  await executeTask(taskState);
5983
5989
  if (taskQueue.length > 0 && batchDelay > 0) {
5984
- await setTimeout$1(batchDelay);
5990
+ await sleep(batchDelay);
5985
5991
  }
5986
5992
  }
5987
5993
  }
@@ -5990,7 +5996,7 @@ async function batch(tasks, options = {}) {
5990
5996
  for (let i = 0; i < workerCount; i++) {
5991
5997
  workers.push(worker());
5992
5998
  if (i < workerCount - 1 && batchDelay > 0) {
5993
- await setTimeout$1(batchDelay / 10);
5999
+ await sleep(batchDelay / 10);
5994
6000
  }
5995
6001
  }
5996
6002
  await Promise.all(workers);
@@ -6044,8 +6050,7 @@ var GATED_FLAGS = [
6044
6050
  "canDeleteTables"
6045
6051
  ];
6046
6052
  function isEnabledByEnv(key) {
6047
- if (typeof process === "undefined") return void 0;
6048
- const value = process.env[toEnvVar(key)];
6053
+ const value = globalThis.process?.env?.[toEnvVar(key)];
6049
6054
  if (value === void 0) return void 0;
6050
6055
  if (value === "true" || value === "1") return true;
6051
6056
  if (value === "false" || value === "0") return false;
@@ -7843,6 +7848,14 @@ function createTransport(config) {
7843
7848
  return createNoopTransport();
7844
7849
  }
7845
7850
  }
7851
+
7852
+ // src/plugins/eventEmission/utils.ts
7853
+ var osModule = null;
7854
+ try {
7855
+ osModule = __require("os");
7856
+ } catch {
7857
+ osModule = null;
7858
+ }
7846
7859
  function generateEventId() {
7847
7860
  return crypto.randomUUID();
7848
7861
  }
@@ -7850,65 +7863,65 @@ function getCurrentTimestamp() {
7850
7863
  return Date.now();
7851
7864
  }
7852
7865
  function getReleaseId() {
7853
- return process?.env?.SDK_RELEASE_ID || "development";
7866
+ return globalThis.process?.env?.SDK_RELEASE_ID || "development";
7854
7867
  }
7855
7868
  function getOsInfo() {
7869
+ if (!osModule) {
7870
+ return { platform: null, release: null, architecture: null };
7871
+ }
7856
7872
  try {
7857
7873
  return {
7858
- platform: os.platform() || null,
7859
- release: os.release() || null,
7860
- architecture: os.arch() || null
7874
+ platform: osModule.platform() || null,
7875
+ release: osModule.release() || null,
7876
+ architecture: osModule.arch() || null
7861
7877
  };
7862
7878
  } catch {
7863
- return {
7864
- platform: null,
7865
- release: null,
7866
- architecture: null
7867
- };
7879
+ return { platform: null, release: null, architecture: null };
7868
7880
  }
7869
7881
  }
7870
7882
  function getPlatformVersions() {
7871
7883
  const versions = {};
7872
- if (typeof process?.versions === "object") {
7873
- for (const [key, value] of Object.entries(process.versions)) {
7884
+ if (typeof globalThis.process?.versions === "object") {
7885
+ for (const [key, value] of Object.entries(globalThis.process.versions)) {
7874
7886
  versions[key] = value || null;
7875
7887
  }
7876
7888
  }
7877
7889
  return versions;
7878
7890
  }
7879
7891
  function isCi() {
7880
- return !!(process?.env?.CI || process?.env?.CONTINUOUS_INTEGRATION || process?.env?.GITHUB_ACTIONS || process?.env?.JENKINS_URL || process?.env?.GITLAB_CI || process?.env?.CIRCLECI || process?.env?.TRAVIS || process?.env?.BUILDKITE || process?.env?.DRONE || process?.env?.BITBUCKET_PIPELINES_UUID);
7892
+ return !!(globalThis.process?.env?.CI || globalThis.process?.env?.CONTINUOUS_INTEGRATION || globalThis.process?.env?.GITHUB_ACTIONS || globalThis.process?.env?.JENKINS_URL || globalThis.process?.env?.GITLAB_CI || globalThis.process?.env?.CIRCLECI || globalThis.process?.env?.TRAVIS || globalThis.process?.env?.BUILDKITE || globalThis.process?.env?.DRONE || globalThis.process?.env?.BITBUCKET_PIPELINES_UUID);
7881
7893
  }
7882
7894
  function getCiPlatform() {
7883
- if (process?.env?.GITHUB_ACTIONS) return "github-actions";
7884
- if (process?.env?.JENKINS_URL) return "jenkins";
7885
- if (process?.env?.GITLAB_CI) return "gitlab-ci";
7886
- if (process?.env?.CIRCLECI) return "circleci";
7887
- if (process?.env?.TRAVIS) return "travis";
7888
- if (process?.env?.BUILDKITE) return "buildkite";
7889
- if (process?.env?.DRONE) return "drone";
7890
- if (process?.env?.BITBUCKET_PIPELINES_UUID) return "bitbucket-pipelines";
7891
- if (process?.env?.CI || process?.env?.CONTINUOUS_INTEGRATION)
7895
+ if (globalThis.process?.env?.GITHUB_ACTIONS) return "github-actions";
7896
+ if (globalThis.process?.env?.JENKINS_URL) return "jenkins";
7897
+ if (globalThis.process?.env?.GITLAB_CI) return "gitlab-ci";
7898
+ if (globalThis.process?.env?.CIRCLECI) return "circleci";
7899
+ if (globalThis.process?.env?.TRAVIS) return "travis";
7900
+ if (globalThis.process?.env?.BUILDKITE) return "buildkite";
7901
+ if (globalThis.process?.env?.DRONE) return "drone";
7902
+ if (globalThis.process?.env?.BITBUCKET_PIPELINES_UUID)
7903
+ return "bitbucket-pipelines";
7904
+ if (globalThis.process?.env?.CI || globalThis.process?.env?.CONTINUOUS_INTEGRATION)
7892
7905
  return "unknown-ci";
7893
7906
  return null;
7894
7907
  }
7895
7908
  function getMemoryUsage() {
7896
- if (process?.memoryUsage) {
7897
- const usage = process.memoryUsage();
7909
+ if (globalThis.process?.memoryUsage) {
7910
+ const usage = globalThis.process.memoryUsage();
7898
7911
  return usage.rss || null;
7899
7912
  }
7900
7913
  return null;
7901
7914
  }
7902
7915
  function getCpuTime() {
7903
- if (process?.cpuUsage) {
7904
- const usage = process.cpuUsage();
7916
+ if (globalThis.process?.cpuUsage) {
7917
+ const usage = globalThis.process.cpuUsage();
7905
7918
  return Math.round((usage.user + usage.system) / 1e3);
7906
7919
  }
7907
7920
  return null;
7908
7921
  }
7909
7922
 
7910
7923
  // src/plugins/eventEmission/builders.ts
7911
- var SDK_VERSION = "0.40.3";
7924
+ var SDK_VERSION = globalThis.process?.env?.SDK_VERSION || "unknown";
7912
7925
  function createBaseEvent(context = {}) {
7913
7926
  return {
7914
7927
  event_id: generateEventId(),
@@ -7949,12 +7962,12 @@ function buildApplicationLifecycleEvent(data, context = {}) {
7949
7962
  os_release: osInfo.release,
7950
7963
  os_architecture: osInfo.architecture,
7951
7964
  platform_versions: platformVersions,
7952
- environment: context.environment ?? (process.env.NODE_ENV || null),
7965
+ environment: context.environment ?? (globalThis.process?.env?.NODE_ENV || null),
7953
7966
  is_ci_environment: isCi(),
7954
7967
  ci_platform: getCiPlatform(),
7955
7968
  session_id: null,
7956
7969
  metadata: null,
7957
- process_argv: process.argv || null,
7970
+ process_argv: globalThis.process?.argv || null,
7958
7971
  ...data,
7959
7972
  sdk_version: SDK_VERSION
7960
7973
  };
@@ -7968,7 +7981,7 @@ function buildErrorEventWithContext(data, context = {}) {
7968
7981
  selected_api: context.selected_api,
7969
7982
  app_id: context.app_id,
7970
7983
  app_version_id: context.app_version_id,
7971
- environment: context.environment ?? (process.env.NODE_ENV || null),
7984
+ environment: context.environment ?? (globalThis.process?.env?.NODE_ENV || null),
7972
7985
  execution_time_before_error_ms: executionTime,
7973
7986
  ...data,
7974
7987
  sdk_version: SDK_VERSION
@@ -8021,7 +8034,10 @@ function removeExistingListeners() {
8021
8034
  for (const event of events) {
8022
8035
  const listener = registeredListeners[event];
8023
8036
  if (listener) {
8024
- process.removeListener(event, listener);
8037
+ globalThis.process?.removeListener(
8038
+ event,
8039
+ listener
8040
+ );
8025
8041
  }
8026
8042
  }
8027
8043
  registeredListeners = {};
@@ -8067,14 +8083,14 @@ async function silentEmit(transport, subject, event, userContextPromise) {
8067
8083
  }
8068
8084
  }
8069
8085
  function getTransportConfig(options) {
8070
- const envTransport = process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT;
8086
+ const envTransport = globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT;
8071
8087
  if (envTransport === "noop" || envTransport === "disabled") {
8072
8088
  return { type: "noop" };
8073
8089
  }
8074
8090
  if (envTransport === "console") {
8075
8091
  return { type: "console" };
8076
8092
  }
8077
- const endpoint = process?.env?.ZAPIER_SDK_TELEMETRY_ENDPOINT || `${getTrackingBaseUrl({
8093
+ const endpoint = globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_ENDPOINT || `${getTrackingBaseUrl({
8078
8094
  trackingBaseUrl: options?.trackingBaseUrl,
8079
8095
  baseUrl: options?.baseUrl
8080
8096
  })}/api/v4/tracking/event/`;
@@ -8093,7 +8109,7 @@ var eventEmissionPlugin = ({ context }) => {
8093
8109
  callContext: context.options.eventEmission?.callContext,
8094
8110
  transport: (
8095
8111
  // If env var is set, use it (defaultTransport will be from env)
8096
- process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT ? defaultTransport : (
8112
+ globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT ? defaultTransport : (
8097
8113
  // Otherwise, use option transport or default
8098
8114
  context.options.eventEmission?.transport ?? defaultTransport
8099
8115
  )
@@ -8192,7 +8208,7 @@ var eventEmissionPlugin = ({ context }) => {
8192
8208
  getUserContext
8193
8209
  )
8194
8210
  );
8195
- if (typeof process?.on === "function") {
8211
+ if (typeof globalThis.process?.on === "function") {
8196
8212
  removeExistingListeners();
8197
8213
  const exitHandler = (code) => {
8198
8214
  if (closed) return;
@@ -8215,7 +8231,7 @@ var eventEmissionPlugin = ({ context }) => {
8215
8231
  );
8216
8232
  };
8217
8233
  registeredListeners.exit = exitHandler;
8218
- process.on("exit", exitHandler);
8234
+ globalThis.process.on("exit", exitHandler);
8219
8235
  const uncaughtExceptionHandler = async (error) => {
8220
8236
  let errorEvent = buildErrorEventWithContext({
8221
8237
  error_message: error.message || "Unknown error",
@@ -8238,7 +8254,7 @@ var eventEmissionPlugin = ({ context }) => {
8238
8254
  );
8239
8255
  };
8240
8256
  registeredListeners.uncaughtException = uncaughtExceptionHandler;
8241
- process.on("uncaughtException", uncaughtExceptionHandler);
8257
+ globalThis.process.on("uncaughtException", uncaughtExceptionHandler);
8242
8258
  const unhandledRejectionHandler = async (reason, promise) => {
8243
8259
  const errorMessage = reason instanceof Error ? reason.message : typeof reason === "string" ? reason : "Unhandled promise rejection";
8244
8260
  const errorStack = reason instanceof Error ? reason.stack : null;
@@ -8266,7 +8282,7 @@ var eventEmissionPlugin = ({ context }) => {
8266
8282
  );
8267
8283
  };
8268
8284
  registeredListeners.unhandledRejection = unhandledRejectionHandler;
8269
- process.on("unhandledRejection", unhandledRejectionHandler);
8285
+ globalThis.process.on("unhandledRejection", unhandledRejectionHandler);
8270
8286
  const handleSignal = async (signal) => {
8271
8287
  shutdownStartTime = Date.now();
8272
8288
  const uptime = Date.now() - startupTime;
@@ -8287,14 +8303,14 @@ var eventEmissionPlugin = ({ context }) => {
8287
8303
  signalEvent
8288
8304
  );
8289
8305
  const exitCode = signal === "SIGINT" ? 130 : 143;
8290
- process.exit(exitCode);
8306
+ globalThis.process.exit(exitCode);
8291
8307
  };
8292
8308
  const sigintHandler = () => handleSignal("SIGINT");
8293
8309
  const sigtermHandler = () => handleSignal("SIGTERM");
8294
8310
  registeredListeners.SIGINT = sigintHandler;
8295
8311
  registeredListeners.SIGTERM = sigtermHandler;
8296
- process.on("SIGINT", sigintHandler);
8297
- process.on("SIGTERM", sigtermHandler);
8312
+ globalThis.process.on("SIGINT", sigintHandler);
8313
+ globalThis.process.on("SIGTERM", sigtermHandler);
8298
8314
  }
8299
8315
  }
8300
8316
  const close = async (exitCode) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/capabilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAqBpD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,QAAA,MAAM,WAAW,uFAIP,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAWrD,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,aAAa,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CACrC,EAAE,EACF;IACE,OAAO,CAAC,EAAE;QACR,2BAA2B,CAAC,EAAE,OAAO,CAAC;QACtC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,mBAAmB,EAAE,MAAM,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;CACrD,EACD,0BAA0B,CA8C3B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/capabilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAqBpD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,QAAA,MAAM,WAAW,uFAIP,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAUrD,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,aAAa,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CACrC,EAAE,EACF;IACE,OAAO,CAAC,EAAE;QACR,2BAA2B,CAAC,EAAE,OAAO,CAAC;QACtC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,mBAAmB,EAAE,MAAM,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;CACrD,EACD,0BAA0B,CA8C3B,CAAC"}
@@ -27,9 +27,7 @@ const GATED_FLAGS = [
27
27
  "canDeleteTables",
28
28
  ];
29
29
  function isEnabledByEnv(key) {
30
- if (typeof process === "undefined")
31
- return undefined;
32
- const value = process.env[toEnvVar(key)];
30
+ const value = globalThis.process?.env?.[toEnvVar(key)];
33
31
  if (value === undefined)
34
32
  return undefined;
35
33
  if (value === "true" || value === "1")
@@ -1 +1 @@
1
- {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/builders.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACT,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,6BAA6B,EAC7B,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAgBjB,wBAAgB,eAAe,CAAC,OAAO,GAAE,YAAiB,GAAG,SAAS,CAWrE;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,cAAc,EACpB,OAAO,GAAE,YAAiB,GACzB,kBAAkB,CAYpB;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,6BAA6B,EACnC,OAAO,GAAE,YAAiB,GACzB,yBAAyB,CAyB3B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,GAAE,YAAiB,GACzB,kBAAkB,CAiBpB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,GAAE,YAAiB,GACzB,iBAAiB,CA+BnB"}
1
+ {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/builders.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACT,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,6BAA6B,EAC7B,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAgBjB,wBAAgB,eAAe,CAAC,OAAO,GAAE,YAAiB,GAAG,SAAS,CAWrE;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,cAAc,EACpB,OAAO,GAAE,YAAiB,GACzB,kBAAkB,CAYpB;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,6BAA6B,EACnC,OAAO,GAAE,YAAiB,GACzB,yBAAyB,CA0B3B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,GAAE,YAAiB,GACzB,kBAAkB,CAkBpB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,GAAE,YAAiB,GACzB,iBAAiB,CA+BnB"}
@@ -5,7 +5,7 @@
5
5
  * schema compliance for all event types.
6
6
  */
7
7
  import { generateEventId, getCurrentTimestamp, getReleaseId, getOsInfo, getPlatformVersions, getMemoryUsage, getCpuTime, isCi, getCiPlatform, } from "./utils";
8
- const SDK_VERSION = process.env.SDK_VERSION || "unknown";
8
+ const SDK_VERSION = globalThis.process?.env?.SDK_VERSION || "unknown";
9
9
  // Create base event with auto-populated common fields
10
10
  // Kept for backward compatibility but can be replaced with direct construction
11
11
  export function createBaseEvent(context = {}) {
@@ -48,12 +48,12 @@ export function buildApplicationLifecycleEvent(data, context = {}) {
48
48
  os_release: osInfo.release,
49
49
  os_architecture: osInfo.architecture,
50
50
  platform_versions: platformVersions,
51
- environment: context.environment ?? (process.env.NODE_ENV || null),
51
+ environment: context.environment ?? (globalThis.process?.env?.NODE_ENV || null),
52
52
  is_ci_environment: isCi(),
53
53
  ci_platform: getCiPlatform(),
54
54
  session_id: null,
55
55
  metadata: null,
56
- process_argv: process.argv || null,
56
+ process_argv: globalThis.process?.argv || null,
57
57
  ...data,
58
58
  sdk_version: SDK_VERSION,
59
59
  };
@@ -69,7 +69,7 @@ export function buildErrorEventWithContext(data, context = {}) {
69
69
  selected_api: context.selected_api,
70
70
  app_id: context.app_id,
71
71
  app_version_id: context.app_version_id,
72
- environment: context.environment ?? (process.env.NODE_ENV || null),
72
+ environment: context.environment ?? (globalThis.process?.env?.NODE_ENV || null),
73
73
  execution_time_before_error_ms: executionTime,
74
74
  ...data,
75
75
  sdk_version: SDK_VERSION,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAWnE,OAAO,KAAK,EAAgB,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAsCnE;;;GAGG;AACH,wBAAgB,qBAAqB,SAEpC;AAGD,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;CACrC;AAGD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE;QACb,SAAS,EAAE,cAAc,CAAC;QAC1B,MAAM,EAAE,mBAAmB,CAAC;QAE5B,IAAI,CAAC,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;QAErD,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;QAEtC,gBAAgB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAC;QAEpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAIvB,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACzC,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,oBAAoB,CAAC;CAC/B;AAyFD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,EAAE,EACF;IACE,OAAO,EAAE;QACP,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,EACD,qBAAqB,CAmVtB,CAAC;AAGF,YAAY,EACV,YAAY,EACZ,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAC1B,eAAe,EACf,eAAe,EACf,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAWnE,OAAO,KAAK,EAAgB,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAyCnE;;;GAGG;AACH,wBAAgB,qBAAqB,SAEpC;AAGD,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,WAAW,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;CACrC;AAGD,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE;QACb,SAAS,EAAE,cAAc,CAAC;QAC1B,MAAM,EAAE,mBAAmB,CAAC;QAE5B,IAAI,CAAC,CAAC,SAAS,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;QAErD,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;QAEtC,gBAAgB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAC;QAEpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAIvB,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACzC,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,oBAAoB,CAAC;CAC/B;AAyFD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,EAAE,EACF;IACE,OAAO,EAAE;QACP,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,EACD,qBAAqB,CAmVtB,CAAC;AAGF,YAAY,EACV,YAAY,EACZ,6BAA6B,EAC7B,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAC1B,eAAe,EACf,eAAe,EACf,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,cAAc,SAAS,CAAC"}
@@ -24,7 +24,7 @@ function removeExistingListeners() {
24
24
  for (const event of events) {
25
25
  const listener = registeredListeners[event];
26
26
  if (listener) {
27
- process.removeListener(event, listener);
27
+ globalThis.process?.removeListener(event, listener);
28
28
  }
29
29
  }
30
30
  registeredListeners = {};
@@ -84,7 +84,7 @@ async function silentEmit(transport, subject, event, userContextPromise) {
84
84
  }
85
85
  // Helper to get transport config from environment or options
86
86
  function getTransportConfig(options) {
87
- const envTransport = process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT;
87
+ const envTransport = globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT;
88
88
  if (envTransport === "noop" || envTransport === "disabled") {
89
89
  return { type: "noop" };
90
90
  }
@@ -92,7 +92,7 @@ function getTransportConfig(options) {
92
92
  return { type: "console" };
93
93
  }
94
94
  // Default to HTTP transport with resolved tracking URL
95
- const endpoint = process?.env?.ZAPIER_SDK_TELEMETRY_ENDPOINT ||
95
+ const endpoint = globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_ENDPOINT ||
96
96
  `${getTrackingBaseUrl({
97
97
  trackingBaseUrl: options?.trackingBaseUrl,
98
98
  baseUrl: options?.baseUrl,
@@ -113,7 +113,7 @@ export const eventEmissionPlugin = ({ context }) => {
113
113
  callContext: context.options.eventEmission?.callContext,
114
114
  transport:
115
115
  // If env var is set, use it (defaultTransport will be from env)
116
- process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT
116
+ globalThis.process?.env?.ZAPIER_SDK_TELEMETRY_TRANSPORT
117
117
  ? defaultTransport
118
118
  : // Otherwise, use option transport or default
119
119
  (context.options.eventEmission?.transport ?? defaultTransport),
@@ -213,7 +213,7 @@ export const eventEmissionPlugin = ({ context }) => {
213
213
  });
214
214
  trackEmission(silentEmit(transport, APPLICATION_LIFECYCLE_EVENT_SUBJECT, startupEvent, getUserContext));
215
215
  // Register process event handlers (Node.js only)
216
- if (typeof process?.on === "function") {
216
+ if (typeof globalThis.process?.on === "function") {
217
217
  // Remove any existing listeners from previous SDK instances to prevent memory leaks
218
218
  removeExistingListeners();
219
219
  // Handle normal process exit
@@ -234,7 +234,7 @@ export const eventEmissionPlugin = ({ context }) => {
234
234
  trackEmission(silentEmit(transport, APPLICATION_LIFECYCLE_EVENT_SUBJECT, exitEvent, getUserContext));
235
235
  };
236
236
  registeredListeners.exit = exitHandler;
237
- process.on("exit", exitHandler);
237
+ globalThis.process.on("exit", exitHandler);
238
238
  // Handle uncaught exceptions
239
239
  const uncaughtExceptionHandler = async (error) => {
240
240
  let errorEvent = buildErrorEventWithContext({
@@ -257,7 +257,7 @@ export const eventEmissionPlugin = ({ context }) => {
257
257
  await emitWithTimeout(transport, ERROR_OCCURRED_EVENT_SUBJECT, errorEvent);
258
258
  };
259
259
  registeredListeners.uncaughtException = uncaughtExceptionHandler;
260
- process.on("uncaughtException", uncaughtExceptionHandler);
260
+ globalThis.process.on("uncaughtException", uncaughtExceptionHandler);
261
261
  // Handle unhandled promise rejections
262
262
  const unhandledRejectionHandler = async (reason, promise) => {
263
263
  const errorMessage = reason instanceof Error
@@ -289,7 +289,7 @@ export const eventEmissionPlugin = ({ context }) => {
289
289
  await emitWithTimeout(transport, ERROR_OCCURRED_EVENT_SUBJECT, errorEvent);
290
290
  };
291
291
  registeredListeners.unhandledRejection = unhandledRejectionHandler;
292
- process.on("unhandledRejection", unhandledRejectionHandler);
292
+ globalThis.process.on("unhandledRejection", unhandledRejectionHandler);
293
293
  // Handle termination signals
294
294
  const handleSignal = async (signal) => {
295
295
  shutdownStartTime = Date.now();
@@ -311,15 +311,15 @@ export const eventEmissionPlugin = ({ context }) => {
311
311
  await emitWithTimeout(transport, APPLICATION_LIFECYCLE_EVENT_SUBJECT, signalEvent);
312
312
  // Exit with appropriate code (128 + signal number)
313
313
  const exitCode = signal === "SIGINT" ? 130 : 143;
314
- process.exit(exitCode);
314
+ globalThis.process.exit(exitCode);
315
315
  };
316
316
  // Register signal handlers
317
317
  const sigintHandler = () => handleSignal("SIGINT");
318
318
  const sigtermHandler = () => handleSignal("SIGTERM");
319
319
  registeredListeners.SIGINT = sigintHandler;
320
320
  registeredListeners.SIGTERM = sigtermHandler;
321
- process.on("SIGINT", sigintHandler);
322
- process.on("SIGTERM", sigtermHandler);
321
+ globalThis.process.on("SIGINT", sigintHandler);
322
+ globalThis.process.on("SIGTERM", sigtermHandler);
323
323
  }
324
324
  }
325
325
  const close = async (exitCode) => {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAeA;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAQnE;AAED;;GAEG;AACH,wBAAgB,IAAI,IAAI,OAAO,CAa9B;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAY7C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAM9C;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAM1C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/plugins/eventEmission/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAiBH;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAaA;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAQnE;AAED;;GAEG;AACH,wBAAgB,IAAI,IAAI,OAAO,CAa9B;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAgB7C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAM9C;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAM1C"}