@microsoft/managed-apps-cli 0.7.0 → 0.9.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 (152) hide show
  1. package/README.md +42 -6
  2. package/dist/ArgumentProvider.d.ts +11 -0
  3. package/dist/ArgumentProvider.d.ts.map +1 -1
  4. package/dist/ArgumentProvider.js +61 -19
  5. package/dist/ArgumentProvider.js.map +1 -1
  6. package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts +16 -0
  7. package/dist/Authentication/NodeMsalAuthenticationProvider.d.ts.map +1 -1
  8. package/dist/Authentication/NodeMsalAuthenticationProvider.js +58 -6
  9. package/dist/Authentication/NodeMsalAuthenticationProvider.js.map +1 -1
  10. package/dist/Cli.d.ts.map +1 -1
  11. package/dist/Cli.js +23 -7
  12. package/dist/Cli.js.map +1 -1
  13. package/dist/CliSettings.d.ts +2 -2
  14. package/dist/CliSettings.d.ts.map +1 -1
  15. package/dist/CliSettings.js +3 -4
  16. package/dist/CliSettings.js.map +1 -1
  17. package/dist/CliUtils.d.ts +25 -8
  18. package/dist/CliUtils.d.ts.map +1 -1
  19. package/dist/CliUtils.js +19 -23
  20. package/dist/CliUtils.js.map +1 -1
  21. package/dist/Constants/CommandRegistry.d.ts.map +1 -1
  22. package/dist/Constants/CommandRegistry.js +28 -1
  23. package/dist/Constants/CommandRegistry.js.map +1 -1
  24. package/dist/Constants/HelpStrings.d.ts +55 -5
  25. package/dist/Constants/HelpStrings.d.ts.map +1 -1
  26. package/dist/Constants/HelpStrings.js +113 -42
  27. package/dist/Constants/HelpStrings.js.map +1 -1
  28. package/dist/Constants.d.ts +1 -1
  29. package/dist/Constants.d.ts.map +1 -1
  30. package/dist/Constants.js +5 -2
  31. package/dist/Constants.js.map +1 -1
  32. package/dist/Errors/GitHubErrorMap.d.ts.map +1 -1
  33. package/dist/Errors/GitHubErrorMap.js +18 -11
  34. package/dist/Errors/GitHubErrorMap.js.map +1 -1
  35. package/dist/FS/CliFs.d.ts.map +1 -1
  36. package/dist/FS/CliFs.js.map +1 -1
  37. package/dist/HttpClient/CliHttpClient.d.ts +30 -0
  38. package/dist/HttpClient/CliHttpClient.d.ts.map +1 -1
  39. package/dist/HttpClient/CliHttpClient.js +136 -1
  40. package/dist/HttpClient/CliHttpClient.js.map +1 -1
  41. package/dist/Logger/CliLogger.d.ts +50 -8
  42. package/dist/Logger/CliLogger.d.ts.map +1 -1
  43. package/dist/Logger/CliLogger.js +92 -37
  44. package/dist/Logger/CliLogger.js.map +1 -1
  45. package/dist/Logger/ConsoleWriter.d.ts +5 -0
  46. package/dist/Logger/ConsoleWriter.d.ts.map +1 -1
  47. package/dist/Logger/ConsoleWriter.js +22 -14
  48. package/dist/Logger/ConsoleWriter.js.map +1 -1
  49. package/dist/Middletier/FunctionsBundler.js +5 -1
  50. package/dist/Middletier/FunctionsBundler.js.map +1 -1
  51. package/dist/Middletier/PackFunctions.d.ts +5 -4
  52. package/dist/Middletier/PackFunctions.d.ts.map +1 -1
  53. package/dist/Middletier/PackFunctions.js +8 -7
  54. package/dist/Middletier/PackFunctions.js.map +1 -1
  55. package/dist/Types/Cli.types.d.ts +1 -1
  56. package/dist/Types/Cli.types.d.ts.map +1 -1
  57. package/dist/Types/Command.types.d.ts +14 -3
  58. package/dist/Types/Command.types.d.ts.map +1 -1
  59. package/dist/Types/Command.types.js +4 -0
  60. package/dist/Types/Command.types.js.map +1 -1
  61. package/dist/Utils/BuildPolling.d.ts +18 -0
  62. package/dist/Utils/BuildPolling.d.ts.map +1 -0
  63. package/dist/Utils/BuildPolling.js +63 -0
  64. package/dist/Utils/BuildPolling.js.map +1 -0
  65. package/dist/Utils/BuildVerbDescriptionTable.d.ts +11 -1
  66. package/dist/Utils/BuildVerbDescriptionTable.d.ts.map +1 -1
  67. package/dist/Utils/BuildVerbDescriptionTable.js +73 -17
  68. package/dist/Utils/BuildVerbDescriptionTable.js.map +1 -1
  69. package/dist/Utils/DcfRecovery.d.ts +84 -0
  70. package/dist/Utils/DcfRecovery.d.ts.map +1 -0
  71. package/dist/Utils/DcfRecovery.js +266 -0
  72. package/dist/Utils/DcfRecovery.js.map +1 -0
  73. package/dist/Utils/EnhanceNetworkError.d.ts.map +1 -1
  74. package/dist/Utils/EnhanceNetworkError.js +2 -0
  75. package/dist/Utils/EnhanceNetworkError.js.map +1 -1
  76. package/dist/Utils/EnvVars.d.ts +1 -1
  77. package/dist/Utils/EnvVars.d.ts.map +1 -1
  78. package/dist/Utils/EnvVars.js.map +1 -1
  79. package/dist/Utils/RepoUrl.d.ts +11 -6
  80. package/dist/Utils/RepoUrl.d.ts.map +1 -1
  81. package/dist/Utils/RepoUrl.js +1 -1
  82. package/dist/Utils/RepoUrl.js.map +1 -1
  83. package/dist/Utils/ResolveCommand.d.ts +37 -1
  84. package/dist/Utils/ResolveCommand.d.ts.map +1 -1
  85. package/dist/Utils/ResolveCommand.js +97 -20
  86. package/dist/Utils/ResolveCommand.js.map +1 -1
  87. package/dist/Verbs/AddConnector.d.ts.map +1 -1
  88. package/dist/Verbs/AddConnector.js.map +1 -1
  89. package/dist/Verbs/AddConnectorFlows.d.ts.map +1 -1
  90. package/dist/Verbs/AddConnectorFlows.js +2 -2
  91. package/dist/Verbs/AddConnectorFlows.js.map +1 -1
  92. package/dist/Verbs/BuildMaafApp.d.ts.map +1 -1
  93. package/dist/Verbs/BuildMaafApp.js +98 -22
  94. package/dist/Verbs/BuildMaafApp.js.map +1 -1
  95. package/dist/Verbs/ConnectorHelpers.d.ts.map +1 -1
  96. package/dist/Verbs/ConnectorHelpers.js.map +1 -1
  97. package/dist/Verbs/CreateMaafApp.d.ts +54 -5
  98. package/dist/Verbs/CreateMaafApp.d.ts.map +1 -1
  99. package/dist/Verbs/CreateMaafApp.js +238 -238
  100. package/dist/Verbs/CreateMaafApp.js.map +1 -1
  101. package/dist/Verbs/DeployMaafApp.d.ts.map +1 -1
  102. package/dist/Verbs/DeployMaafApp.js +48 -20
  103. package/dist/Verbs/DeployMaafApp.js.map +1 -1
  104. package/dist/Verbs/GetMaafBuildStatus.d.ts.map +1 -1
  105. package/dist/Verbs/GetMaafBuildStatus.js +66 -17
  106. package/dist/Verbs/GetMaafBuildStatus.js.map +1 -1
  107. package/dist/Verbs/GetSettings.d.ts.map +1 -1
  108. package/dist/Verbs/GetSettings.js +9 -18
  109. package/dist/Verbs/GetSettings.js.map +1 -1
  110. package/dist/Verbs/Init.d.ts.map +1 -1
  111. package/dist/Verbs/Init.js +63 -46
  112. package/dist/Verbs/Init.js.map +1 -1
  113. package/dist/Verbs/ListFlows.d.ts.map +1 -1
  114. package/dist/Verbs/ListFlows.js +1 -2
  115. package/dist/Verbs/ListFlows.js.map +1 -1
  116. package/dist/Verbs/MaafAppPermissions.d.ts +12 -6
  117. package/dist/Verbs/MaafAppPermissions.d.ts.map +1 -1
  118. package/dist/Verbs/MaafAppPermissions.js +208 -66
  119. package/dist/Verbs/MaafAppPermissions.js.map +1 -1
  120. package/dist/Verbs/PlayMaafApp.d.ts +22 -0
  121. package/dist/Verbs/PlayMaafApp.d.ts.map +1 -0
  122. package/dist/Verbs/PlayMaafApp.js +147 -0
  123. package/dist/Verbs/PlayMaafApp.js.map +1 -0
  124. package/dist/Verbs/RefreshDataSource.d.ts.map +1 -1
  125. package/dist/Verbs/RefreshDataSource.js.map +1 -1
  126. package/dist/Verbs/RefreshGitAuth.d.ts.map +1 -1
  127. package/dist/Verbs/RefreshGitAuth.js +31 -16
  128. package/dist/Verbs/RefreshGitAuth.js.map +1 -1
  129. package/dist/Verbs/SetSetting.d.ts.map +1 -1
  130. package/dist/Verbs/SetSetting.js +39 -49
  131. package/dist/Verbs/SetSetting.js.map +1 -1
  132. package/dist/Verbs/ShareLinkCreate.d.ts +23 -0
  133. package/dist/Verbs/ShareLinkCreate.d.ts.map +1 -0
  134. package/dist/Verbs/ShareLinkCreate.js +73 -0
  135. package/dist/Verbs/ShareLinkCreate.js.map +1 -0
  136. package/dist/Verbs/ShareLinkList.d.ts +16 -0
  137. package/dist/Verbs/ShareLinkList.d.ts.map +1 -0
  138. package/dist/Verbs/ShareLinkList.js +84 -0
  139. package/dist/Verbs/ShareLinkList.js.map +1 -0
  140. package/dist/Verbs/ShareLinkRevoke.d.ts +22 -0
  141. package/dist/Verbs/ShareLinkRevoke.d.ts.map +1 -0
  142. package/dist/Verbs/ShareLinkRevoke.js +137 -0
  143. package/dist/Verbs/ShareLinkRevoke.js.map +1 -0
  144. package/dist/Verbs/VerbConstants.d.ts +113 -16
  145. package/dist/Verbs/VerbConstants.d.ts.map +1 -1
  146. package/dist/Verbs/VerbConstants.js +102 -24
  147. package/dist/Verbs/VerbConstants.js.map +1 -1
  148. package/dist/Verbs/index.d.ts +4 -0
  149. package/dist/Verbs/index.d.ts.map +1 -1
  150. package/dist/Verbs/index.js +4 -0
  151. package/dist/Verbs/index.js.map +1 -1
  152. package/package.json +5 -5
@@ -12,6 +12,9 @@ export class CliHttpClient {
12
12
  _forwardUrl;
13
13
  _inflight = 0;
14
14
  _spinner = new CliSpinner();
15
+ _firstAuthCallback;
16
+ _firstAuthFired = false;
17
+ _logger;
15
18
  /**
16
19
  * @param _authenticationProvider — provides bearer tokens for `authResource`-tagged requests.
17
20
  * @param _forwardUrl — when set, every request is forwarded to this URL with the original
@@ -22,6 +25,22 @@ export class CliHttpClient {
22
25
  this._authenticationProvider = _authenticationProvider;
23
26
  this._forwardUrl = _forwardUrl;
24
27
  }
28
+ /**
29
+ * Register a one-shot callback that fires (fire-and-forget) after the first successful
30
+ * token acquisition through an authed request. Used by `CliLogger` to lazily upgrade
31
+ * its OneDS writer from the unauthenticated default to the EU-aware authed configuration
32
+ * once we know auth is working. The callback runs in the background — it does NOT block
33
+ * the request that triggered it.
34
+ *
35
+ * Calling this more than once replaces the previous callback. Calling it after the first
36
+ * authed request has already happened is a no-op (the one-shot has already passed).
37
+ */
38
+ onFirstAuth(callback) {
39
+ this._firstAuthCallback = callback;
40
+ }
41
+ setLogger(logger) {
42
+ this._logger = logger;
43
+ }
25
44
  async get(url, config) {
26
45
  return this._sendRequestAsync(url, 'GET', config);
27
46
  }
@@ -39,6 +58,24 @@ export class CliHttpClient {
39
58
  }
40
59
  async _sendRequestAsync(url, method, config) {
41
60
  this._startSpinner();
61
+ const start = performance.now();
62
+ // Core fields mirror the shape emitted by
63
+ // `packages/managed-apps-common/src/http/middleware/telemetryMiddleware.ts`
64
+ // so a single Kusto query over `HttpClient.Request` covers CLI + runtime.
65
+ // CLI-specific attribution (forwardUrl, authResource, header allowlist) is
66
+ // appended alongside.
67
+ let scenarioData = {
68
+ url,
69
+ method,
70
+ status: 0,
71
+ succeeded: false,
72
+ duration: 0,
73
+ retried: false,
74
+ retryCount: 0,
75
+ forwardUrl: this._forwardUrl || '',
76
+ authResource: config?.authResource || '',
77
+ allowErrorResponse: config?.allowErrorResponse ? 'true' : 'false',
78
+ };
42
79
  try {
43
80
  const headers = config?.headers || {};
44
81
  if (config?.authResource) {
@@ -47,6 +84,15 @@ export class CliHttpClient {
47
84
  if (token) {
48
85
  headers.Authorization = `Bearer ${token}`;
49
86
  }
87
+ // Successful token acquisition is the lazy-auth signal — fire the registered
88
+ // callback once, in the background, so it doesn't block this request.
89
+ if (token && this._firstAuthCallback && !this._firstAuthFired) {
90
+ this._firstAuthFired = true;
91
+ this._firstAuthCallback().catch(() => {
92
+ // Callback owns its own error handling; we don't want a background failure to
93
+ // pollute the current request's outcome.
94
+ });
95
+ }
50
96
  }
51
97
  if (config?.contentType) {
52
98
  headers['Content-Type'] = config.contentType;
@@ -69,7 +115,19 @@ export class CliHttpClient {
69
115
  headers,
70
116
  body: bodyContent,
71
117
  };
118
+ scenarioData = {
119
+ ...scenarioData,
120
+ ...CliHttpClient._selectHeadersForLogging(headers, 'request'),
121
+ };
72
122
  const response = await fetch(targetUrl, requestOptions);
123
+ scenarioData.status = response.status;
124
+ scenarioData.succeeded = response.ok;
125
+ scenarioData.duration = performance.now() - start;
126
+ scenarioData.correlationRequestId =
127
+ response.headers.get('x-ms-correlation-request-id') ?? undefined;
128
+ scenarioData.serverRequestId = response.headers.get('x-ms-request-id') ?? undefined;
129
+ scenarioData.contentType = response.headers.get('content-type') ?? undefined;
130
+ scenarioData.contentLength = response.headers.get('content-length') ?? undefined;
73
131
  if (!response.ok && !config?.allowErrorResponse) {
74
132
  const correlationId = response.headers.get('x-ms-correlation-id');
75
133
  const correlationSuffix = correlationId ? ` (correlation ID: ${correlationId})` : '';
@@ -77,12 +135,30 @@ export class CliHttpClient {
77
135
  // In forward mode the response came from the forwarder, not the
78
136
  // original target — surface both so it's clear which hop failed.
79
137
  const urlSuffix = this._forwardUrl ? `${url} via ${this._forwardUrl}` : url;
138
+ scenarioData.code = parseServerErrorCode(errorBody);
139
+ scenarioData = {
140
+ ...scenarioData,
141
+ ...CliHttpClient._selectHeadersForLogging(response.headers, 'response'),
142
+ };
80
143
  throw new HttpClientError(`HTTP error status: ${response.status} for ${method} ${urlSuffix}${correlationSuffix}: ${errorBody}`, {
81
144
  status: response.status,
82
145
  code: parseServerErrorCode(errorBody),
83
146
  body: errorBody,
84
147
  });
85
148
  }
149
+ try {
150
+ // Falls through for both successful responses and error responses when
151
+ // allowErrorResponse is true. Always emit `HttpClient.Request` to keep
152
+ // the telemetry vocabulary aligned with telemetryMiddleware.ts.
153
+ scenarioData = {
154
+ ...CliHttpClient._selectHeadersForLogging(response.headers, 'response'),
155
+ ...scenarioData,
156
+ };
157
+ this._logger?.trackActivityEvent('HttpClient.Request', scenarioData);
158
+ }
159
+ catch {
160
+ // No-op. Telemetry failures should not block CLI operations
161
+ }
86
162
  // When allowErrorResponse is true and we got a non-2xx, fall through to parse the body
87
163
  // so callers can inspect the structured error envelope (e.g. { error: { code, message } }).
88
164
  const data = await this._parseResponse(response);
@@ -94,7 +170,21 @@ export class CliHttpClient {
94
170
  }
95
171
  catch (error) {
96
172
  const errorUrl = this._forwardUrl ? `${url} via ${this._forwardUrl}` : url;
97
- throw enhanceNetworkError(error, method, errorUrl);
173
+ const enhancedError = enhanceNetworkError(error, method, errorUrl);
174
+ scenarioData.duration = performance.now() - start;
175
+ scenarioData.networkErrorCode = enhancedError.name;
176
+ scenarioData.name = enhancedError.name;
177
+ try {
178
+ // Mirror telemetryMiddleware: emit the same `HttpClient.Request` event
179
+ // for failures so success/failure share a single query surface.
180
+ // `succeeded`/`status` already default to false/0 from the initializer
181
+ // and remain unchanged unless we got an HTTP response above.
182
+ this._logger?.trackActivityEvent('HttpClient.Request', scenarioData);
183
+ }
184
+ catch {
185
+ // No-op. Telemetry failures should not block CLI operations
186
+ }
187
+ throw enhancedError;
98
188
  }
99
189
  finally {
100
190
  this._stopSpinner();
@@ -131,6 +221,51 @@ export class CliHttpClient {
131
221
  return responseText;
132
222
  }
133
223
  }
224
+ /**
225
+ * Allowlist of headers that are safe to emit to telemetry. Anything not in this
226
+ * list is dropped to avoid leaking bearer tokens, cookies, or other secrets.
227
+ * Keys are matched case-insensitively.
228
+ */
229
+ static _LOGGABLE_REQUEST_HEADERS = new Set([
230
+ 'content-type',
231
+ MS_CLIENT_REQUESTID.toLowerCase(),
232
+ MS_TARGET_URL.toLowerCase(),
233
+ MS_AUTH_RESOURCE.toLowerCase(),
234
+ ]);
235
+ static _LOGGABLE_RESPONSE_HEADERS = new Set([
236
+ 'content-type',
237
+ 'x-ms-correlation-id',
238
+ 'x-ms-request-id',
239
+ 'retry-after',
240
+ ]);
241
+ /**
242
+ * Filter headers to only those that are allowlisted or start with 'x-ms-' (Microsoft-specific
243
+ * headers), and prefix keys with 'reqHeader.' or 'resHeader.' for disambiguation in telemetry.
244
+ *
245
+ * motivation: The CLI may be used to call arbitrary endpoints (including via the forwarding feature).
246
+ */
247
+ static _selectHeadersForLogging(headers, kind) {
248
+ const allowlist = kind === 'request'
249
+ ? CliHttpClient._LOGGABLE_REQUEST_HEADERS
250
+ : CliHttpClient._LOGGABLE_RESPONSE_HEADERS;
251
+ const result = {};
252
+ const prefix = kind === 'request' ? 'reqHeader.' : 'resHeader.';
253
+ const visit = (name, value) => {
254
+ const lower = name.toLowerCase();
255
+ if (allowlist.has(lower) || lower.startsWith('x-ms-')) {
256
+ result[`${prefix}${lower}`] = value;
257
+ }
258
+ };
259
+ if (headers instanceof Headers) {
260
+ headers.forEach((value, name) => visit(name, value));
261
+ }
262
+ else {
263
+ for (const [name, value] of Object.entries(headers)) {
264
+ visit(name, value);
265
+ }
266
+ }
267
+ return result;
268
+ }
134
269
  async _transformHeaders(headers) {
135
270
  const result = {};
136
271
  headers.forEach((value, key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"CliHttpClient.js","sourceRoot":"","sources":["../../src/HttpClient/CliHttpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CliHttpClient.js","sourceRoot":"","sources":["../../src/HttpClient/CliHttpClient.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,65 @@
1
1
  /*!
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
- import type { IHttpClient } from '@microsoft/managed-apps-actions';
5
4
  import type { ILogger, ScenarioTracker } from '@microsoft/managed-apps-common/telemetry';
5
+ import type { CliHttpClient } from '../HttpClient/CliHttpClient.js';
6
6
  import type { CliSettings, IAuthenticationProvider } from '../Types/Cli.types.js';
7
7
  /**
8
- * Logger implementation for the CLI
9
- * The logger depends on the CLISettings, HttpClient and authenticationProvider to initialize the OneDS writer
8
+ * Logger implementation for the CLI.
9
+ *
10
+ * Telemetry is **unauthenticated by default**: the OneDS writer is constructed at
11
+ * `create()` time with `telemetryLocation: 'global'` and no `geoLocation`, so events
12
+ * start flowing immediately without any auth dependency. The writer is then upgraded to
13
+ * the EU-aware authed version via one of two paths:
14
+ *
15
+ * - `tryEagerUpgradeAsync` — called from `runVerb` after MSAL is initialized. If a
16
+ * cached account already exists, the upgrade runs synchronously before the first event
17
+ * so signed-in users get authed telemetry for the entire session.
18
+ * - `CliHttpClient.onFirstAuth` callback — registered in `create()`, fires (background)
19
+ * after the verb's first successful authed HTTP call. Handles users who sign in
20
+ * mid-session via MSAL.
21
+ *
22
+ * Verbs that never make an authed HTTP call and have no cached account stay on the
23
+ * unauthenticated writer for their whole lifetime — events still reach 1DS, just on
24
+ * the global endpoint with no `geoLocation` or `tenantId`.
25
+ *
26
+ * 1DS event submission uses its own ingestion credentials (not the Entra bearer token),
27
+ * so events can be sent regardless of sign-in state.
10
28
  */
11
29
  export declare class CliLogger implements ILogger {
12
30
  private _telemetryWriters;
13
- private _oneDSConfig?;
31
+ private _unauthWriter?;
32
+ private _upgradeFired;
33
+ private _upgradeConfig?;
14
34
  private constructor();
15
- static create(cliSettings: CliSettings, httpClient: IHttpClient): Promise<CliLogger>;
35
+ static create(cliSettings: CliSettings, httpClient: CliHttpClient, authenticationProvider: IAuthenticationProvider): Promise<CliLogger>;
16
36
  /**
17
- * Initialize OneDS telemetry after authentication is ready.
18
- * Must be called after authenticationProvider.initAsync() completes.
37
+ * Eagerly run the upgrade when a cached account already exists at verb-start time,
38
+ * so even the first telemetry event of the session lands on the authenticated writer.
39
+ * Called from `ArgumentProvider.runVerb` after `authProvider.initAsync(region)` but
40
+ * before any event is emitted.
41
+ *
42
+ * No-op if no cached account is present (we don't want to block CLI startup on a
43
+ * network call when the user isn't even signed in), or if the upgrade has already
44
+ * fired. For not-signed-in users the lazy `onFirstAuth` path still handles things
45
+ * later if the verb itself triggers a sign-in.
46
+ *
47
+ * Cost: ~100-500ms for signed-in users — the time `getEnvironmentByName` takes.
48
+ * Signed-in-but-offline users will block on the default fetch timeout before
49
+ * falling through; events still flow to the unauthenticated writer in that case.
19
50
  */
20
- initializeTelemetry(authenticationProvider: IAuthenticationProvider): Promise<void>;
51
+ tryEagerUpgradeAsync(authenticationProvider: IAuthenticationProvider): Promise<void>;
52
+ /**
53
+ * Replaces the unauthenticated OneDS writer with an EU-aware authed one. Called from
54
+ * two paths:
55
+ * - `tryEagerUpgradeAsync` (blocking, before the first event) when a cached account
56
+ * is already present at verb-start time.
57
+ * - `CliHttpClient.onFirstAuth` (fire-and-forget) after the verb's first successful
58
+ * authed HTTP call, when the user signed in mid-session.
59
+ * Best-effort — on any failure the unauthenticated writer stays in place and events
60
+ * keep flowing to the global endpoint.
61
+ */
62
+ private _upgradeToAuthedWriterAsync;
21
63
  setCustomDimension(_key: string, _value: string): void;
22
64
  trackActivityEvent(eventName: string, eventData?: object): void;
23
65
  trackErrorEvent(eventName: string, eventData?: object): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CliLogger.d.ts","sourceRoot":"","sources":["../../src/Logger/CliLogger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAGnE,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAIzF,OAAO,KAAK,EACV,WAAW,EACX,uBAAuB,EAExB,MAAM,oBAAoB,CAAC;AA2F5B;;;GAGG;AACH,qBAAa,SAAU,YAAW,OAAO;IACvC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,YAAY,CAAC,CAOnB;IAEF,OAAO;WAIa,MAAM,CACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC,SAAS,CAAC;IA6BrB;;;OAGG;IACU,mBAAmB,CAAC,sBAAsB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CzF,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAatD,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAW/D,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAW5D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,eAAe;IAqBrE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5D,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvD,YAAY,CAAC,SAAS,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAI5E,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED,IAAW,SAAS,CAAC,MAAM,EAAE,MAAM,EAElC;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;CAMjF"}
1
+ {"version":3,"file":"CliLogger.d.ts","sourceRoot":"","sources":["../../src/Logger/CliLogger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EACX,uBAAuB,EAExB,MAAM,oBAAoB,CAAC;AA0F5B;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,SAAU,YAAW,OAAO;IACvC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,aAAa,CAAC,CAAc;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAC,CAMrB;IAEF,OAAO;WAIa,MAAM,CACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,aAAa,EACzB,sBAAsB,EAAE,uBAAuB,GAC9C,OAAO,CAAC,SAAS,CAAC;IA0CrB;;;;;;;;;;;;;;OAcG;IACU,oBAAoB,CAC/B,sBAAsB,EAAE,uBAAuB,GAC9C,OAAO,CAAC,IAAI,CAAC;IAShB;;;;;;;;;OASG;YACW,2BAA2B;IAkDlC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAatD,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAW/D,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAW5D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,eAAe;IAqBrE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5D,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIvD,YAAY,CAAC,SAAS,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAI5E,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED,IAAW,SAAS,CAAC,MAAM,EAAE,MAAM,EAElC;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO;CAMjF"}
@@ -1,11 +1,10 @@
1
1
  /*!
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
- import { getEnvironmentByName, initializePlayerServices } from '@microsoft/managed-apps-actions';
5
- import { cloudToRegion, cloudToRegionSafe } from '@microsoft/managed-apps-common/services';
4
+ import { getEnvironmentByName } from '@microsoft/managed-apps-actions';
5
+ import { cloudToRegionSafe } from '@microsoft/managed-apps-common/services';
6
6
  import { randomUUID } from 'crypto';
7
7
  import packageJson from '../../package.json' with { type: 'json' };
8
- import { printError } from '../Utils/ConsoleOutput.js';
9
8
  import { ConsoleWriter } from './ConsoleWriter.js';
10
9
  import { EUGeoRegions } from './Constants.js';
11
10
  import { resolveUserTelemetrySettings } from './LoggerSettings.js';
@@ -85,16 +84,36 @@ function createScenarioLogger(telemetryWriters, name, data) {
85
84
  return base;
86
85
  }
87
86
  /**
88
- * Logger implementation for the CLI
89
- * The logger depends on the CLISettings, HttpClient and authenticationProvider to initialize the OneDS writer
87
+ * Logger implementation for the CLI.
88
+ *
89
+ * Telemetry is **unauthenticated by default**: the OneDS writer is constructed at
90
+ * `create()` time with `telemetryLocation: 'global'` and no `geoLocation`, so events
91
+ * start flowing immediately without any auth dependency. The writer is then upgraded to
92
+ * the EU-aware authed version via one of two paths:
93
+ *
94
+ * - `tryEagerUpgradeAsync` — called from `runVerb` after MSAL is initialized. If a
95
+ * cached account already exists, the upgrade runs synchronously before the first event
96
+ * so signed-in users get authed telemetry for the entire session.
97
+ * - `CliHttpClient.onFirstAuth` callback — registered in `create()`, fires (background)
98
+ * after the verb's first successful authed HTTP call. Handles users who sign in
99
+ * mid-session via MSAL.
100
+ *
101
+ * Verbs that never make an authed HTTP call and have no cached account stay on the
102
+ * unauthenticated writer for their whole lifetime — events still reach 1DS, just on
103
+ * the global endpoint with no `geoLocation` or `tenantId`.
104
+ *
105
+ * 1DS event submission uses its own ingestion credentials (not the Entra bearer token),
106
+ * so events can be sent regardless of sign-in state.
90
107
  */
91
108
  export class CliLogger {
92
109
  _telemetryWriters = [];
93
- _oneDSConfig;
110
+ _unauthWriter;
111
+ _upgradeFired = false;
112
+ _upgradeConfig;
94
113
  constructor(telemetryWriters) {
95
114
  this._telemetryWriters = telemetryWriters;
96
115
  }
97
- static async create(cliSettings, httpClient) {
116
+ static async create(cliSettings, httpClient, authenticationProvider) {
98
117
  const environmentId = cliSettings.appConfig?.environmentId;
99
118
  const region = cloudToRegionSafe(cliSettings.appConfig?.cloud);
100
119
  const appId = cliSettings.appConfig?.appId;
@@ -102,53 +121,89 @@ export class CliLogger {
102
121
  const telemetryWriters = [];
103
122
  const userTelemetrySettings = resolveUserTelemetrySettings();
104
123
  if (userTelemetrySettings.console) {
105
- telemetryWriters.push(new ConsoleWriter());
124
+ telemetryWriters.push(new ConsoleWriter(sessionId, cliSettings.origin));
106
125
  }
107
126
  const instance = new CliLogger(telemetryWriters);
108
127
  if (userTelemetrySettings.remote && region && environmentId) {
109
- // Store config for deferred initialization via initializeTelemetry()
110
- instance._oneDSConfig = {
111
- sessionId,
112
- region,
113
- environmentId,
114
- appId,
115
- httpClient,
116
- cliSettings,
117
- };
128
+ // Push the unauthenticated writer immediately. Defaults to the global 1DS endpoint
129
+ // and omits `geoLocation`; if/when auth succeeds, the upgrade swaps in the EU-aware
130
+ // writer below.
131
+ const unauth = new OneDSWriter(sessionId, region, 'global', environmentId, appId ?? '', undefined, packageJson.version, cliSettings.origin);
132
+ instance._unauthWriter = unauth;
133
+ instance._telemetryWriters.push(unauth);
134
+ instance._upgradeConfig = { sessionId, region, environmentId, appId, cliSettings };
135
+ // Register the lazy upgrade: fires once when the verb makes its first successful
136
+ // authed HTTP call. By that point we know auth works, so the metadata fetch can't
137
+ // pop a browser.
138
+ httpClient.onFirstAuth(() => instance._upgradeToAuthedWriterAsync(authenticationProvider));
118
139
  }
119
140
  return instance;
120
141
  }
121
142
  /**
122
- * Initialize OneDS telemetry after authentication is ready.
123
- * Must be called after authenticationProvider.initAsync() completes.
143
+ * Eagerly run the upgrade when a cached account already exists at verb-start time,
144
+ * so even the first telemetry event of the session lands on the authenticated writer.
145
+ * Called from `ArgumentProvider.runVerb` after `authProvider.initAsync(region)` but
146
+ * before any event is emitted.
147
+ *
148
+ * No-op if no cached account is present (we don't want to block CLI startup on a
149
+ * network call when the user isn't even signed in), or if the upgrade has already
150
+ * fired. For not-signed-in users the lazy `onFirstAuth` path still handles things
151
+ * later if the verb itself triggers a sign-in.
152
+ *
153
+ * Cost: ~100-500ms for signed-in users — the time `getEnvironmentByName` takes.
154
+ * Signed-in-but-offline users will block on the default fetch timeout before
155
+ * falling through; events still flow to the unauthenticated writer in that case.
124
156
  */
125
- async initializeTelemetry(authenticationProvider) {
126
- if (!this._oneDSConfig) {
157
+ async tryEagerUpgradeAsync(authenticationProvider) {
158
+ if (this._upgradeFired || !this._upgradeConfig) {
127
159
  return;
128
160
  }
129
- const { sessionId, region, environmentId, appId, httpClient, cliSettings } = this._oneDSConfig;
130
- this._oneDSConfig = undefined;
161
+ if (await authenticationProvider.getCachedAccountAsync()) {
162
+ await this._upgradeToAuthedWriterAsync(authenticationProvider);
163
+ }
164
+ }
165
+ /**
166
+ * Replaces the unauthenticated OneDS writer with an EU-aware authed one. Called from
167
+ * two paths:
168
+ * - `tryEagerUpgradeAsync` (blocking, before the first event) when a cached account
169
+ * is already present at verb-start time.
170
+ * - `CliHttpClient.onFirstAuth` (fire-and-forget) after the verb's first successful
171
+ * authed HTTP call, when the user signed in mid-session.
172
+ * Best-effort — on any failure the unauthenticated writer stays in place and events
173
+ * keep flowing to the global endpoint.
174
+ */
175
+ async _upgradeToAuthedWriterAsync(authenticationProvider) {
176
+ if (this._upgradeFired || !this._upgradeConfig || !this._unauthWriter) {
177
+ return;
178
+ }
179
+ this._upgradeFired = true;
180
+ const { sessionId, region, environmentId, appId, cliSettings } = this._upgradeConfig;
131
181
  try {
132
- // Initialize player services to get environment metadata
133
- initializePlayerServices({
134
- httpClient,
135
- environmentName: cliSettings.appConfig?.environmentId || 'default',
136
- region: cloudToRegionSafe(cliSettings.appConfig?.cloud) ?? cloudToRegion('public'),
137
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
138
- });
139
182
  const metadata = await getEnvironmentByName(environmentId);
140
183
  let telemetryLocation = 'global';
141
184
  if (metadata?.properties?.location && EUGeoRegions.has(metadata.properties.location)) {
142
185
  telemetryLocation = 'eu';
143
186
  }
144
- this._telemetryWriters.push(new OneDSWriter(sessionId, region, telemetryLocation, environmentId, appId ?? '', metadata?.properties?.cluster?.geoShortName, packageJson.version, cliSettings.source));
145
- }
146
- catch (error) {
147
- printError(`CliLogger: failed to initialize OneDS telemetry writer: ${String(error)}`);
187
+ const authed = new OneDSWriter(sessionId, region, telemetryLocation, environmentId, appId ?? '', metadata?.properties?.cluster?.geoShortName, packageJson.version, cliSettings.origin);
188
+ // Replace the unauth writer in place. Pre-upgrade events have already been
189
+ // dispatched to the unauth writer's channel; we don't re-send them.
190
+ const idx = this._telemetryWriters.indexOf(this._unauthWriter);
191
+ if (idx >= 0) {
192
+ this._telemetryWriters[idx] = authed;
193
+ }
194
+ else {
195
+ this._telemetryWriters.push(authed);
196
+ }
197
+ this._unauthWriter = authed;
198
+ // Set the tenantId dimension AFTER the swap so it lands on the authed writer
199
+ // (and any ConsoleWriter that's still in the list), not the discarded unauth one.
200
+ const tenantId = authenticationProvider.getUserTenantId();
201
+ if (tenantId) {
202
+ this.setCustomDimension('tenantId', tenantId);
203
+ }
148
204
  }
149
- if (authenticationProvider.getUserTenantId()) {
150
- // At this point if the auth provider has fetched a token, we can set the tenantId dimension
151
- this.setCustomDimension('tenantId', authenticationProvider.getUserTenantId());
205
+ catch {
206
+ // Best-effort. Unauth writer stays in place; subsequent events keep going to global.
152
207
  }
153
208
  }
154
209
  setCustomDimension(_key, _value) {
@@ -1 +1 @@
1
- {"version":3,"file":"CliLogger.js","sourceRoot":"","sources":["../../src/Logger/CliLogger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CliLogger.js","sourceRoot":"","sources":["../../src/Logger/CliLogger.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,11 @@
3
3
  */
4
4
  import type { ITelemetryWriter } from '../Types/LoggerTypes.types.js';
5
5
  export declare class ConsoleWriter implements ITelemetryWriter {
6
+ private readonly _activity;
7
+ private readonly _scenario;
8
+ private readonly _error;
9
+ private readonly _warn;
10
+ constructor(sessionId: string, origin: string);
6
11
  trackActivityEvent(eventName: string, eventData?: object): void;
7
12
  trackErrorEvent(eventName: string, eventData?: object): void;
8
13
  startScenario(scenarioName: string, startData?: object): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleWriter.d.ts","sourceRoot":"","sources":["../../src/Logger/ConsoleWriter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAsBnE,qBAAa,aAAc,YAAW,gBAAgB;IAC7C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/D,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5D,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7D,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhE,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI;IAItF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAG9D"}
1
+ {"version":3,"file":"ConsoleWriter.d.ts","sourceRoot":"","sources":["../../src/Logger/ConsoleWriter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAwBnE,qBAAa,aAAc,YAAW,gBAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;gBAEd,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO7C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/D,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5D,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7D,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhE,0BAA0B,CAAC,YAAY,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI;IAItF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;CAG9D"}
@@ -2,37 +2,45 @@
2
2
  * Copyright (C) Microsoft Corporation. All rights reserved.
3
3
  */
4
4
  import { styleText } from 'node:util';
5
- /* eslint-disable @typescript-eslint/no-explicit-any */
6
- // Logger function factory
7
- function loggerFn(format, log = console.log.bind(console)) {
5
+ // Build a per-style logger that captures sessionId/origin in a closure so the
6
+ // per-method bodies stay one-liners and don't have to thread context strings
7
+ // through every call site.
8
+ function makeLoggerFn(sessionId, origin, format, log = console.log.bind(console)) {
9
+ const context = styleText('gray', `[sessionId=${sessionId} origin=${origin}]`);
8
10
  return (scenarioName, ...data) => {
9
11
  const time = new Date().toISOString().split('T')[1];
10
- const prefix = `${styleText('gray', time)}: [${styleText(format, scenarioName)}]: `;
12
+ const prefix = `${styleText('gray', time)} ${context}: [${styleText(format, scenarioName)}]: `;
11
13
  log(prefix, ...data);
12
14
  };
13
15
  }
14
- const activity = loggerFn(['white', 'bold']);
15
- const scenario = loggerFn(['cyan', 'bold']);
16
- const error = loggerFn(['red', 'bold'], console.error.bind(console));
17
- const warn = loggerFn(['yellow', 'bold']);
18
16
  export class ConsoleWriter {
17
+ _activity;
18
+ _scenario;
19
+ _error;
20
+ _warn;
21
+ constructor(sessionId, origin) {
22
+ this._activity = makeLoggerFn(sessionId, origin, ['white', 'bold']);
23
+ this._scenario = makeLoggerFn(sessionId, origin, ['cyan', 'bold']);
24
+ this._error = makeLoggerFn(sessionId, origin, ['red', 'bold'], console.error.bind(console));
25
+ this._warn = makeLoggerFn(sessionId, origin, ['yellow', 'bold']);
26
+ }
19
27
  trackActivityEvent(eventName, eventData) {
20
- activity(eventName, eventData || {});
28
+ this._activity(eventName, eventData || {});
21
29
  }
22
30
  trackErrorEvent(eventName, eventData) {
23
- error(eventName, eventData || {});
31
+ this._error(eventName, eventData || {});
24
32
  }
25
33
  startScenario(scenarioName, startData) {
26
- scenario(`[scenario:start] ${scenarioName}`, startData || {});
34
+ this._scenario(`[scenario:start] ${scenarioName}`, startData || {});
27
35
  }
28
36
  completeScenario(scenarioName, completeData) {
29
- scenario(`[scenario:complete] ${scenarioName}`, completeData || {});
37
+ this._scenario(`[scenario:complete] ${scenarioName}`, completeData || {});
30
38
  }
31
39
  scenarioFailed(scenarioName, failureData) {
32
- error(`[scenario:failure] ${scenarioName}`, failureData || {});
40
+ this._error(`[scenario:failure] ${scenarioName}`, failureData || {});
33
41
  }
34
42
  scenarioCompletedWithError(scenarioName, completeWithErrorData) {
35
- warn(`[scenario:completeWithError] ${scenarioName}`, completeWithErrorData || {});
43
+ this._warn(`[scenario:completeWithError] ${scenarioName}`, completeWithErrorData || {});
36
44
  }
37
45
  flush() {
38
46
  return Promise.resolve();
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleWriter.js","sourceRoot":"","sources":["../../src/Logger/ConsoleWriter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAMtC,uDAAuD;AACvD,0BAA0B;AAC1B,SAAS,QAAQ,CACf,MAAmB,EACnB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAE/B,OAAO,CAAC,YAAoB,EAAE,GAAG,IAAW,EAAE,EAAE;QAC9C,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC;QACpF,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACrE,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAE1C,MAAM,OAAO,aAAa;IACjB,kBAAkB,CAAC,SAAiB,EAAE,SAAkB;QAC7D,QAAQ,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAEM,eAAe,CAAC,SAAiB,EAAE,SAAkB;QAC1D,KAAK,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;IAEM,aAAa,CAAC,YAAoB,EAAE,SAAkB;QAC3D,QAAQ,CAAC,oBAAoB,YAAY,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAEM,gBAAgB,CAAC,YAAoB,EAAE,YAAqB;QACjE,QAAQ,CAAC,uBAAuB,YAAY,EAAE,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAEM,cAAc,CAAC,YAAoB,EAAE,WAAoB;QAC9D,KAAK,CAAC,sBAAsB,YAAY,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAEM,0BAA0B,CAAC,YAAoB,EAAE,qBAA8B;QACpF,IAAI,CAAC,gCAAgC,YAAY,EAAE,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;IAEM,KAAK;QACV,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEM,kBAAkB,CAAC,IAAY,EAAE,MAAc;QACpD,2BAA2B;IAC7B,CAAC;CACF;AACD,sDAAsD"}
1
+ {"version":3,"file":"ConsoleWriter.js","sourceRoot":"","sources":["../../src/Logger/ConsoleWriter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAStC,8EAA8E;AAC9E,6EAA6E;AAC7E,2BAA2B;AAC3B,SAAS,YAAY,CACnB,SAAiB,EACjB,MAAc,EACd,MAAmB,EACnB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAE/B,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,EAAE,cAAc,SAAS,WAAW,MAAM,GAAG,CAAC,CAAC;IAC/E,OAAO,CAAC,YAAoB,EAAE,GAAG,IAAW,EAAE,EAAE;QAC9C,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,MAAM,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC;QAC/F,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,aAAa;IACP,SAAS,CAAW;IACpB,SAAS,CAAW;IACpB,MAAM,CAAW;IACjB,KAAK,CAAW;IAEjC,YAAmB,SAAiB,EAAE,MAAc;QAClD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5F,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACnE,CAAC;IAEM,kBAAkB,CAAC,SAAiB,EAAE,SAAkB;QAC7D,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAEM,eAAe,CAAC,SAAiB,EAAE,SAAkB;QAC1D,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAEM,aAAa,CAAC,YAAoB,EAAE,SAAkB;QAC3D,IAAI,CAAC,SAAS,CAAC,oBAAoB,YAAY,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAEM,gBAAgB,CAAC,YAAoB,EAAE,YAAqB;QACjE,IAAI,CAAC,SAAS,CAAC,uBAAuB,YAAY,EAAE,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IAEM,cAAc,CAAC,YAAoB,EAAE,WAAoB;QAC9D,IAAI,CAAC,MAAM,CAAC,sBAAsB,YAAY,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;IAEM,0BAA0B,CAAC,YAAoB,EAAE,qBAA8B;QACpF,IAAI,CAAC,KAAK,CAAC,gCAAgC,YAAY,EAAE,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC1F,CAAC;IAEM,KAAK;QACV,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEM,kBAAkB,CAAC,IAAY,EAAE,MAAc;QACpD,2BAA2B;IAC7B,CAAC;CACF;AACD,sDAAsD"}
@@ -126,7 +126,11 @@ function allowlistPlugin(projectRoot) {
126
126
  return null;
127
127
  if (args.path.startsWith('.')) {
128
128
  const resolved = path.resolve(path.dirname(args.importer), args.path);
129
- if (resolved.startsWith(generatedDir + path.sep)) {
129
+ // Allow the `generated/` folder itself (resolves via its
130
+ // `index.ts` barrel) and anything beneath it. Without the
131
+ // exact-match check, `import '../generated'` would be rejected
132
+ // because the resolved path lacks the trailing separator.
133
+ if (resolved === generatedDir || resolved.startsWith(generatedDir + path.sep)) {
130
134
  return null;
131
135
  }
132
136
  return {