@memberjunction/storage 6.2.0-edge.4 → 6.2.0-edge.5

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 (38) hide show
  1. package/dist/FileStorageEngine.d.ts +45 -1
  2. package/dist/FileStorageEngine.d.ts.map +1 -1
  3. package/dist/FileStorageEngine.js +72 -4
  4. package/dist/FileStorageEngine.js.map +1 -1
  5. package/dist/StorageAccessEvaluator.d.ts +196 -0
  6. package/dist/StorageAccessEvaluator.d.ts.map +1 -0
  7. package/dist/StorageAccessEvaluator.js +435 -0
  8. package/dist/StorageAccessEvaluator.js.map +1 -0
  9. package/dist/config.d.ts +22 -10
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +3 -0
  12. package/dist/config.js.map +1 -1
  13. package/dist/drivers/AWSFileStorage.d.ts +8 -0
  14. package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
  15. package/dist/drivers/AWSFileStorage.js +11 -0
  16. package/dist/drivers/AWSFileStorage.js.map +1 -1
  17. package/dist/drivers/AzureFileStorage.d.ts +9 -0
  18. package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
  19. package/dist/drivers/AzureFileStorage.js +22 -24
  20. package/dist/drivers/AzureFileStorage.js.map +1 -1
  21. package/dist/drivers/GoogleDriveFileStorage.d.ts +49 -2
  22. package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -1
  23. package/dist/drivers/GoogleDriveFileStorage.js +80 -16
  24. package/dist/drivers/GoogleDriveFileStorage.js.map +1 -1
  25. package/dist/generic/FileStorageBase.d.ts +17 -1
  26. package/dist/generic/FileStorageBase.d.ts.map +1 -1
  27. package/dist/generic/FileStorageBase.js +18 -0
  28. package/dist/generic/FileStorageBase.js.map +1 -1
  29. package/dist/generic/ObjectKeys.d.ts +61 -0
  30. package/dist/generic/ObjectKeys.d.ts.map +1 -0
  31. package/dist/generic/ObjectKeys.js +82 -0
  32. package/dist/generic/ObjectKeys.js.map +1 -0
  33. package/dist/index.d.ts +2 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +2 -0
  36. package/dist/index.js.map +1 -1
  37. package/package.json +6 -6
  38. package/readme.md +74 -0
@@ -78,11 +78,14 @@ export function describeGoogleApiError(error) {
78
78
  * folders and files with hierarchical paths, which makes some operations more natural
79
79
  * while others (like pre-authenticated upload URLs) are not directly supported.
80
80
  *
81
- * It requires one of the following environment variables to be set:
81
+ * It authenticates with one of the following, from environment variables or a credential record:
82
82
  * - STORAGE_GDRIVE_KEY_FILE: Path to a service account key file with Drive permissions
83
83
  * - STORAGE_GDRIVE_CREDENTIALS_JSON: A JSON object containing service account credentials
84
+ * - STORAGE_GOOGLE_DRIVE_CLIENT_ID, _CLIENT_SECRET and _REFRESH_TOKEN: OAuth2
84
85
  *
85
86
  * Optionally, you can set:
87
+ * - STORAGE_GDRIVE_DRIVE_ID: Shared Drive ID. Required for a service account to upload, since a
88
+ * service account has no storage quota of its own; also becomes the default root.
86
89
  * - STORAGE_GDRIVE_ROOT_FOLDER_ID: ID of a folder to use as the root (for isolation)
87
90
  *
88
91
  * @example
@@ -109,6 +112,21 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
109
112
  * key file or credentials provided directly in environment variables.
110
113
  * Throws an error if neither authentication method is properly configured.
111
114
  */
115
+ /**
116
+ * Builds the Drive client with `supportsAllDrives` / `includeItemsFromAllDrives` as DEFAULT
117
+ * request params (#3847). googleapis applies client-level params to every request, which is what
118
+ * makes Shared Drive support hold across all 25 call sites in this driver instead of being a
119
+ * per-call flag somebody forgets on the next one; endpoints that ignore a param ignore it.
120
+ * Without these, a service account cannot touch a Shared Drive — and Google's quota model means
121
+ * a Shared Drive is the only place a service account CAN write.
122
+ */
123
+ buildDrive(auth) {
124
+ return google.drive({
125
+ version: 'v3',
126
+ auth,
127
+ params: { supportsAllDrives: true, includeItemsFromAllDrives: true },
128
+ });
129
+ }
112
130
  constructor() {
113
131
  super();
114
132
  /** The name of this storage provider, used in error messages */
@@ -130,7 +148,7 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
130
148
  keyFile,
131
149
  scopes: ['https://www.googleapis.com/auth/drive'],
132
150
  });
133
- this._drive = google.drive({ version: 'v3', auth });
151
+ this._drive = this.buildDrive(auth);
134
152
  }
135
153
  else if (credentials) {
136
154
  // Method 2: Using credentials directly (service account)
@@ -140,28 +158,32 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
140
158
  key: creds.private_key,
141
159
  scopes: ['https://www.googleapis.com/auth/drive'],
142
160
  });
143
- this._drive = google.drive({ version: 'v3', auth });
161
+ this._drive = this.buildDrive(auth);
144
162
  }
145
163
  else if (this._clientID && this._clientSecret && this._refreshToken) {
146
164
  // Method 3: Using OAuth2 with refresh token
147
165
  const auth = new google.auth.OAuth2(this._clientID, this._clientSecret, redirectURI);
148
166
  auth.setCredentials({ refresh_token: this._refreshToken });
149
- this._drive = google.drive({ version: 'v3', auth });
167
+ this._drive = this.buildDrive(auth);
150
168
  }
151
169
  // If no credentials found, _drive will be undefined and initialize() must be called
152
- // Optionally set a root folder ID to restrict operations
153
- this._rootFolderId = config?.rootFolderID || env.get('STORAGE_GDRIVE_ROOT_FOLDER_ID').asString();
170
+ // Optionally set a root folder ID to restrict operations. A configured Shared Drive id is the
171
+ // default root — a Shared Drive's id doubles as its root folder id (#3847).
172
+ this._driveId = config?.driveID || env.get('STORAGE_GDRIVE_DRIVE_ID').asString();
173
+ this._rootFolderId = config?.rootFolderID || env.get('STORAGE_GDRIVE_ROOT_FOLDER_ID').asString() || this._driveId;
154
174
  }
155
175
  /**
156
176
  * Checks if Google Drive provider is properly configured.
157
- * Returns true if all required OAuth credentials are present.
177
+ * Returns true when a Drive client exists (service account via key file or credentials JSON, or
178
+ * OAuth2) or all OAuth2 credentials are present. Search indexing and content autotagging skip an
179
+ * account that reports false, so a working service-account client must count (#3847).
158
180
  * Logs detailed error messages if configuration is incomplete.
159
181
  */
160
182
  get IsConfigured() {
161
183
  const hasClientID = !!this._clientID;
162
184
  const hasClientSecret = !!this._clientSecret;
163
185
  const hasRefreshToken = !!this._refreshToken;
164
- const isConfigured = hasClientID && hasClientSecret && hasRefreshToken;
186
+ const isConfigured = !!this._drive || (hasClientID && hasClientSecret && hasRefreshToken);
165
187
  if (!isConfigured) {
166
188
  const missing = [];
167
189
  if (!hasClientID)
@@ -172,7 +194,9 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
172
194
  missing.push('Refresh Token');
173
195
  console.error(`❌ Google Drive provider not configured. Missing: ${missing.join(', ')}\n\n` +
174
196
  `Configuration Options:\n\n` +
175
- `Option 1: Environment Variables\n` +
197
+ `Service account: set STORAGE_GDRIVE_KEY_FILE or STORAGE_GDRIVE_CREDENTIALS_JSON, plus\n` +
198
+ `STORAGE_GDRIVE_DRIVE_ID for a Shared Drive (a service account has no storage of its own).\n\n` +
199
+ `Option 1: Environment Variables (OAuth2)\n` +
176
200
  ` export STORAGE_GDRIVE_CLIENT_ID="..."\n` +
177
201
  ` export STORAGE_GDRIVE_CLIENT_SECRET="..."\n` +
178
202
  ` export STORAGE_GDRIVE_REFRESH_TOKEN="..."\n` +
@@ -222,20 +246,57 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
222
246
  this._clientID = config.clientID || this._clientID;
223
247
  this._clientSecret = config.clientSecret || this._clientSecret;
224
248
  this._refreshToken = config.refreshToken || this._refreshToken;
225
- // Update root folder ID if provided
249
+ // Update root folder ID / Shared Drive if provided. A credential record's location replaces the
250
+ // server-wide one from env: a record naming Shared Drive B must navigate B even when
251
+ // STORAGE_GDRIVE_DRIVE_ID or STORAGE_GDRIVE_ROOT_FOLDER_ID points somewhere else, since a root
252
+ // folder in drive A means nothing in drive B. An explicit rootFolderID in the record still wins.
253
+ if (config.driveID) {
254
+ this._driveId = config.driveID;
255
+ }
226
256
  if (config.rootFolderID) {
227
257
  this._rootFolderId = config.rootFolderID;
228
258
  }
229
- // Reinitialize the Google Drive client with new OAuth2 credentials
259
+ else if (config.driveID) {
260
+ this._rootFolderId = config.driveID;
261
+ }
262
+ // Reinitialize the client, mirroring the constructor's THREE auth methods (#3847). Before
263
+ // this, only OAuth2 fields were read here, so a database credential carrying service-account
264
+ // material threw — and it threw even when the constructor had already built a working client
265
+ // from env, meaning attaching a credential record BROKE a working driver.
266
+ if (config.keyFile) {
267
+ const auth = new google.auth.GoogleAuth({
268
+ keyFile: config.keyFile,
269
+ scopes: ['https://www.googleapis.com/auth/drive'],
270
+ });
271
+ this._drive = this.buildDrive(auth);
272
+ return;
273
+ }
274
+ if (config.credentialsJSON) {
275
+ const creds = typeof config.credentialsJSON === 'string' ? JSON.parse(config.credentialsJSON) : config.credentialsJSON;
276
+ const auth = new google.auth.JWT({
277
+ email: creds.client_email,
278
+ key: creds.private_key,
279
+ scopes: ['https://www.googleapis.com/auth/drive'],
280
+ });
281
+ this._drive = this.buildDrive(auth);
282
+ return;
283
+ }
230
284
  if (this._clientID && this._clientSecret && this._refreshToken) {
231
285
  const redirectURI = 'urn:ietf:wg:oauth:2.0:oob';
232
286
  const auth = new google.auth.OAuth2(this._clientID, this._clientSecret, redirectURI);
233
287
  auth.setCredentials({ refresh_token: this._refreshToken });
234
- this._drive = google.drive({ version: 'v3', auth });
288
+ this._drive = this.buildDrive(auth);
289
+ return;
235
290
  }
236
- else {
237
- throw new Error('Google Drive storage requires clientID, clientSecret, and refreshToken to be set');
291
+ // No usable credential in the record. If the constructor already built a client (env
292
+ // key-file / credentials-JSON), KEEP IT — a credential record that adds only a root folder or
293
+ // account name must not un-configure a working driver. Throw only when there is nothing at all.
294
+ if (!this._drive) {
295
+ throw new Error('Google Drive storage requires one of: keyFile, credentialsJSON, or clientID+clientSecret+refreshToken.');
238
296
  }
297
+ console.warn(`Google Drive account "${config.accountName ?? config.accountId ?? 'unnamed'}": the credential carries no keyFile, ` +
298
+ `credentialsJSON or clientID+clientSecret+refreshToken, so it uses the server's Google Drive client from ` +
299
+ `environment configuration. If the record was meant to authenticate on its own, check its key names.`);
239
300
  }
240
301
  /**
241
302
  * Finds a file or folder by path.
@@ -1079,12 +1140,15 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
1079
1140
  catch (error) {
1080
1141
  // File doesn't exist, will create new
1081
1142
  }
1143
+ // googleapis requires media.body to be a STREAM — handed the raw Buffer it dies inside
1144
+ // files.create with `part.body.pipe is not a function`, AFTER auth and folder creation
1145
+ // succeeded, which is why every symptom read as bad storage configuration (#3847).
1082
1146
  if (existingFileId) {
1083
1147
  // Update existing file
1084
1148
  await this._drive.files.update({
1085
1149
  fileId: existingFileId,
1086
1150
  media: {
1087
- body: data,
1151
+ body: Readable.from(data),
1088
1152
  mimeType: effectiveContentType,
1089
1153
  },
1090
1154
  });
@@ -1097,7 +1161,7 @@ let GoogleDriveFileStorage = class GoogleDriveFileStorage extends FileStorageBas
1097
1161
  parents: [parentId],
1098
1162
  },
1099
1163
  media: {
1100
- body: data,
1164
+ body: Readable.from(data),
1101
1165
  mimeType: effectiveContentType,
1102
1166
  },
1103
1167
  fields: 'id',
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleDriveFileStorage.js","sourceRoot":"","sources":["../../src/drivers/GoogleDriveFileStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleDriveFileStorage.js","sourceRoot":"","sources":["../../src/drivers/GoogleDriveFileStorage.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EACL,oBAAoB,EAEpB,eAAe,GAUhB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AA4E9C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,GAAG,KAA4B,CAAC;IACvC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC;IACzC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,CAAC,IAAwB,EAAQ,EAAE;QAC7C,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,CAAC;IACtC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACxC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IACtB,CAAC;IACD,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACf,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEvB,mGAAmG;IACnG,oGAAoG;IACpG,KAAK,MAAM,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAChC,MAAM,gBAAgB,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtF,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,eAAe;;IAkBzD;;;;;;OAMG;IACH;;;;;;;OAOG;IACK,UAAU,CAAC,IAAkI;QACnJ,OAAO,MAAM,CAAC,KAAK,CAAC;YAClB,OAAO,EAAE,IAAI;YACb,IAAI;YACJ,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE;SACrE,CAAC,CAAC;IACL,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QAzCV,gEAAgE;QAC7C,iBAAY,GAAG,cAAc,CAAC;QA0C/C,mDAAmD;QACnD,MAAM,MAAM,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QAEhD,6CAA6C;QAC7C,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjF,MAAM,WAAW,GAAG,MAAM,EAAE,eAAe,IAAI,GAAG,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,YAAY,EAAE,CAAC;QACzG,IAAI,CAAC,SAAS,GAAG,MAAM,EAAE,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpF,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,YAAY,IAAI,GAAG,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChG,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,YAAY,IAAI,GAAG,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChG,MAAM,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,QAAQ,EAAE,CAAC;QAE7F,kEAAkE;QAClE,iGAAiG;QACjG,IAAI,OAAO,EAAE,CAAC;YACZ,6CAA6C;YAC7C,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;gBACtC,OAAO;gBACP,MAAM,EAAE,CAAC,uCAAuC,CAAC;aAClD,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,yDAAyD;YACzD,MAAM,KAAK,GAA8B,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;YACjH,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC/B,KAAK,EAAE,KAAK,CAAC,YAAY;gBACzB,GAAG,EAAE,KAAK,CAAC,WAAW;gBACtB,MAAM,EAAE,CAAC,uCAAuC,CAAC;aAClD,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACtE,4CAA4C;YAC5C,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YACrF,IAAI,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,oFAAoF;QAEpF,8FAA8F;QAC9F,4EAA4E;QAC5E,IAAI,CAAC,QAAQ,GAAG,MAAM,EAAE,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjF,IAAI,CAAC,aAAa,GAAG,MAAM,EAAE,YAAY,IAAI,GAAG,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC;IACpH,CAAC;IAED;;;;;;OAMG;IACH,IAAW,YAAY;QACrB,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACrC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QAC7C,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;QAE7C,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,IAAI,eAAe,IAAI,eAAe,CAAC,CAAC;QAE1F,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,IAAI,CAAC,WAAW;gBAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC5C,IAAI,CAAC,eAAe;gBAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpD,IAAI,CAAC,eAAe;gBAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAEpD,OAAO,CAAC,KAAK,CACX,oDAAoD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAC5E,4BAA4B;gBAC5B,yFAAyF;gBACzF,+FAA+F;gBAC/F,4CAA4C;gBAC5C,2CAA2C;gBAC3C,+CAA+C;gBAC/C,+CAA+C;gBAC/C,mDAAmD;gBACnD,uDAAuD;gBACvD,iDAAiD;gBACjD,mDAAmD;gBACnD,gCAAgC;gBAChC,yBAAyB;gBACzB,wBAAwB;gBACxB,4BAA4B;gBAC5B,2BAA2B;gBAC3B,SAAS,CACV,CAAC;QACJ,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,KAAK,CAAC,UAAU,CAAC,MAA0B;QAChD,uDAAuD;QACvD,MAAM,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,kEAAkE;QAC5E,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;QAC/D,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;QAE/D,gGAAgG;QAChG,qFAAqF;QACrF,+FAA+F;QAC/F,iGAAiG;QACjG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;QAC3C,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;QACtC,CAAC;QAED,0FAA0F;QAC1F,6FAA6F;QAC7F,6FAA6F;QAC7F,0EAA0E;QAC1E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;gBACtC,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,CAAC,uCAAuC,CAAC;aAClD,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,MAAM,KAAK,GACT,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;YAC3G,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC/B,KAAK,EAAE,KAAK,CAAC,YAAY;gBACzB,GAAG,EAAE,KAAK,CAAC,WAAW;gBACtB,MAAM,EAAE,CAAC,uCAAuC,CAAC;aAClD,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/D,MAAM,WAAW,GAAG,2BAA2B,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YACrF,IAAI,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,qFAAqF;QACrF,8FAA8F;QAC9F,gGAAgG;QAChG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,wGAAwG,CACzG,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CACV,yBAAyB,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,SAAS,IAAI,SAAS,wCAAwC;YACpH,0GAA0G;YAC1G,qGAAqG,CACtG,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,cAAc,CAAC,IAAY;QACvC,OAAO,CAAC,GAAG,CAAC,sDAAsD,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1F,gFAAgF;QAChF,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;QAEzF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,sDAAsD;YACtD,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM;gBAChC,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,oCAAoC;aAC/C,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,SAAS,CAAC,CAAC;QAE/D,sDAAsD;QACtD,IAAI,eAAe,GAAG,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC;QACnD,IAAI,WAAW,GAAgC,IAAI,CAAC;QAEpD,8BAA8B;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,UAAU,GAAG,CAAC,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;YAE9C,sEAAsE;YACtE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAE9C,qBAAqB;YACrB,MAAM,KAAK,GAAG,UAAU;gBACtB,CAAC,CAAC,WAAW,WAAW,UAAU,eAAe,kCAAkC;gBACnF,CAAC,CAAC,WAAW,WAAW,UAAU,eAAe,sFAAsF,CAAC;YAE1I,OAAO,CAAC,GAAG,CAAC,6CAA6C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YAElF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC5C,CAAC,EAAE,KAAK;gBACR,MAAM,EAAE,wDAAwD;gBAChE,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE;gBACpD,IAAI;gBACJ,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;gBAC5C,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;aACrE,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7D,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,cAAc,IAAI,GAAG,CAAC,CAAC;YAChE,CAAC;YAED,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrC,eAAe,GAAG,WAAW,CAAC,EAAG,CAAC;QACpC,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACpG,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,wBAAwB,CAAC,IAAY;QACjD,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC;QACtC,CAAC;QAED,wBAAwB;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAEnD,sDAAsD;QACtD,IAAI,eAAe,GAAG,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC;QAEnD,0DAA0D;QAC1D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,yBAAyB;YACzB,MAAM,KAAK,GAAG,WAAW,IAAI,UAAU,eAAe,sFAAsF,CAAC;YAE7I,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC5C,CAAC,EAAE,KAAK;gBACR,MAAM,EAAE,WAAW;gBACnB,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,wBAAwB;gBACxB,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,oBAAoB;gBACpB,MAAM,cAAc,GAAG;oBACrB,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,oCAAoC;oBAC9C,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC5C,WAAW,EAAE,cAAc;oBAC3B,MAAM,EAAE,IAAI;iBACb,CAAC,CAAC;gBAEH,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,EAAG,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;OAWG;IACK,eAAe,CAAC,IAA0B,EAAE,aAAqB,EAAE;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,KAAK,oCAAoC,CAAC;QAC3E,6FAA6F;QAC7F,MAAM,gBAAgB,GAAG,UAAU,IAAI,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,gBAAgB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC;QAEpF,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAK;YAChB,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YAChC,WAAW,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAK,CAAC,IAAI,0BAA0B;YACnF,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACvD,WAAW;YACX,IAAI,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;YACnC,cAAc,EAAE;gBACd,MAAM,EAAE,IAAI,CAAC,EAAG;aACjB;SACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,sBAAsB,CAAC,UAAkB;QACpD,4EAA4E;QAC5E,4CAA4C;QAC5C,IAAI,CAAC,8BAA8B,CAAC,wBAAwB,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH;;;OAGG;aACqB,gCAA2B,GAA0E;QAC3H,sCAAsC,EAAE;YACtC,QAAQ,EAAE,yEAAyE;YACnF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,oCAAoC;SAC9C;QACD,yCAAyC,EAAE;YACzC,QAAQ,EAAE,mEAAmE;YAC7E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,wCAAwC;SAClD;QACD,0CAA0C,EAAE;YAC1C,QAAQ,EAAE,2EAA2E;YACrF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,wCAAwC;SAClD;QACD,qCAAqC,EAAE;YACrC,QAAQ,EAAE,WAAW;YACrB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,oCAAoC;SAC9C;KACF,AArBkD,CAqBjD;IAEK,KAAK,CAAC,wBAAwB,CAAC,UAAkB;QACtD,IAAI,CAAC;YACH,uBAAuB;YACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAEnD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,+CAA+C,UAAU,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAErG,6DAA6D;YAC7D,MAAM,UAAU,GAAG,wBAAsB,CAAC,2BAA2B,CAAC,IAAI,CAAC,QAAS,CAAC,CAAC;YAEtF,IAAI,UAAU,EAAE,CAAC;gBACf,4CAA4C;gBAC5C,+DAA+D;gBAC/D,MAAM,SAAS,GAAG,GAAG,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,kBAAkB,UAAU,CAAC,MAAM,EAAE,CAAC;gBACxF,OAAO,CAAC,GAAG,CAAC,0DAA0D,SAAS,EAAE,CAAC,CAAC;gBACnF,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,gEAAgE;YAChE,IAAI,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBAC9D,6EAA6E;gBAC7E,OAAO,CAAC,GAAG,CAAC,oDAAoD,IAAI,CAAC,QAAQ,yBAAyB,CAAC,CAAC;gBACxG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;oBAC3C,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,MAAM,EAAE,aAAa;iBACtB,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBAC9B,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;gBACnC,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YACrF,CAAC;YAED,iDAAiD;YACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC3C,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,MAAM,EAAE,6BAA6B;aACtC,CAAC,CAAC;YAEH,mFAAmF;YACnF,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;gBACtE,OAAO,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC;YACtC,CAAC;YAED,+DAA+D;YAC/D,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;oBACnC,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,QAAQ;qBACf;iBACF,CAAC,CAAC;gBAEH,0BAA0B;gBAC1B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;oBAClD,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,MAAM,EAAE,gBAAgB;iBACzB,CAAC,CAAC;gBAEH,IAAI,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxC,OAAO,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC7C,CAAC;YACH,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,mDAAmD,EAAE,SAAS,CAAC,CAAC;YAC/E,CAAC;YAED,4BAA4B;YAC5B,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;gBACzD,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YACnC,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,mCAAmC,UAAU,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YAC3F,MAAM,IAAI,KAAK,CAAC,sCAAsC,UAAU,KAAK,YAAY,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACI,KAAK,CAAC,UAAU,CAAC,aAAqB,EAAE,aAAqB;QAClE,IAAI,CAAC;YACH,uBAAuB;YACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YAEtD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC;YACtD,CAAC;YAED,mDAAmD;YACnD,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE7C,uCAAuC;YACvC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;YAEvE,4CAA4C;YAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,WAAW,EAAE;oBACX,IAAI,EAAE,OAAO;iBACd;aACF,CAAC,CAAC;YAEH,yDAAyD;YACzD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC;gBACtC,UAAU,EAAE,WAAW;gBACvB,MAAM,EAAE,aAAa;aACtB,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,8CAA8C,aAAa,SAAS,aAAa,OAAO,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClI,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACI,KAAK,CAAC,YAAY,CAAC,UAAkB;QAC1C,IAAI,CAAC;YACH,yBAAyB;YACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAEnD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACb,6DAA6D;gBAC7D,OAAO,IAAI,CAAC;YACd,CAAC;YAED,kCAAkC;YAClC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,IAAI,CAAC,EAAE;aAChB,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yCAAyC;YACzC,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,QAAQ,CAAC,mDAAmD,UAAU,MAAM,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7G,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACI,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,SAAS,GAAG,GAAG;QACtD,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,0DAA0D,EAAE,MAAM,CAAC,CAAC;YAEhF,uCAAuC;YACvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;gBACxE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;YACnF,CAAC;YAED,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAE1F,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,2BAA2B;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC5C,CAAC,EAAE,IAAI,MAAM,CAAC,EAAE,kCAAkC;gBAClD,MAAM,EAAE,wDAAwD;gBAChE,MAAM,EAAE,OAAO;aAChB,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE;gBAC1D,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;gBAC3C,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;aACjF,CAAC,CAAC;YAEH,MAAM,OAAO,GAA4B,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAa,EAAE,CAAC;YAE9B,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACvC,sBAAsB;oBACtB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;oBAEjD,oCAAoC;oBACpC,IAAI,IAAI,CAAC,QAAQ,KAAK,oCAAoC,EAAE,CAAC;wBAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC;wBAErH,QAAQ,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAClH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,yDAAyD,MAAM,MAAM,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/G,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,KAAK,CAAC,eAAe,CAAC,aAAqB;QAChD,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAE1H,aAAa;YACb,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEvC,oBAAoB;YACpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;YAEjE,oBAAoB;YACpB,MAAM,cAAc,GAAG;gBACrB,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,oCAAoC;gBAC9C,OAAO,EAAE,CAAC,QAAQ,CAAC;aACpB,CAAC;YAEF,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,WAAW,EAAE,cAAc;gBAC3B,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,sDAAsD,aAAa,MAAM,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnH,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACI,KAAK,CAAC,eAAe,CAAC,aAAqB,EAAE,SAAS,GAAG,KAAK;QACnE,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAE1H,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAEzD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,+CAA+C;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,2BAA2B;gBAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC5C,CAAC,EAAE,IAAI,MAAM,CAAC,EAAE,kCAAkC;oBAClD,MAAM,EAAE,WAAW;oBACnB,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAC;gBAEH,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1D,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;YAED,oBAAoB;YACpB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,MAAM,CAAC,EAAE;aAClB,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,sDAAsD,aAAa,iBAAiB,SAAS,MAAM,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7I,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,KAAK,CAAC,iBAAiB,CAAC,MAA+B;QAC5D,IAAI,CAAC;YACH,kBAAkB;YAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,IAA0B,CAAC;YAC/B,IAAI,UAAU,GAAG,EAAE,CAAC;YAEpB,sCAAsC;YACtC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,0CAA0C,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;oBAC3C,MAAM,EAAE,MAAM,CAAC,QAAQ;oBACvB,MAAM,EAAE,8DAA8D;iBACvE,CAAC,CAAC;gBACH,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,kCAAkC;gBAClC,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,CAAC,QAAQ,SAAS,CAAC,CAAC;gBACvE,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC;gBAEnD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxD,CAAC;gBAED,gCAAgC;gBAChC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC9C,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,kBAAkB;gBACnC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;YAED,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC5C,QAAQ,CAAC,wDAAwD,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;YAClH,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACI,KAAK,CAAC,SAAS,CAAC,MAAuB;QAC5C,IAAI,CAAC;YACH,kBAAkB;YAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,MAAc,CAAC;YACnB,IAAI,QAA4B,CAAC;YAEjC,sCAAsC;YACtC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,0CAA0C,MAAM,EAAE,CAAC,CAAC;gBAChE,oEAAoE;gBACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;oBAC3C,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAC;gBACH,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,CAAC,QAAQ,SAAS,CAAC,CAAC;gBACvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC;gBAEzD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxD,CAAC;gBAED,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;YACxC,CAAC;YAED,6DAA6D;YAC7D,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,wBAAsB,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEvG,IAAI,UAAU,EAAE,CAAC;gBACf,gEAAgE;gBAChE,OAAO,CAAC,GAAG,CAAC,kDAAkD,QAAQ,QAAQ,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAC7C;oBACE,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,UAAU,CAAC,QAAQ;iBAC9B,EACD;oBACE,YAAY,EAAE,aAAa;iBAC5B,CACF,CAAC;gBAEF,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAmB,CAAC,CAAC;YACnD,CAAC;YAED,gEAAgE;YAChE,IAAI,QAAQ,EAAE,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CAAC,kDAAkD,QAAQ,2CAA2C,CAAC,CAAC;YACzH,CAAC;YAED,mCAAmC;YACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAC1C;gBACE,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,OAAO;aACb,EACD;gBACE,YAAY,EAAE,aAAa;aAC5B,CACF,CAAC;YAEF,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAmB,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC5C,QAAQ,CAAC,gDAAgD,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;YAC1G,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,IAAoB,iBAAiB;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACa,KAAK,CAAC,eAAe,CAAC,MAA6B;QACjE,IAAI,CAAC;YACH,kBAAkB;YAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YAED,oFAAoF;YACpF,IAAI,MAAc,CAAC;YACnB,IAAI,QAA4B,CAAC;YACjC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC7E,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAS,CAAC,CAAC;gBACzD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxD,CAAC;gBACD,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC;YACxC,CAAC;YAED,8FAA8F;YAC9F,IAAI,QAAQ,EAAE,UAAU,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CAAC,gDAAgD,QAAQ,6CAA6C,CAAC,CAAC;YACzH,CAAC;YAED,oFAAoF;YACpF,uDAAuD;YACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;YAE5B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACzF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAC1C,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EACxB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,CACpC,CAAC;YAEF,uEAAuE;YACvE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAe,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,YAAY,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAA6B,CAAC,CAAC;YAE9F,MAAM,MAAM,GAAuB;gBACjC,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,QAAQ,CAAC,WAAW;aAClC,CAAC;YAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,gDAAgD;gBAChD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACnE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;gBACzF,MAAM,CAAC,YAAY,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;gBAC/D,MAAM,CAAC,aAAa,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;YAC/B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC5C,QAAQ,CAAC,sDAAsD,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;YAChH,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,IAAY,EAAE,WAAoB,EAAE,QAAiC;QAC9G,IAAI,CAAC;YACH,aAAa;YACb,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEvC,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;YAEjE,yBAAyB;YACzB,MAAM,oBAAoB,GAAG,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,0BAA0B,CAAC;YAElG,qEAAqE;YACrE,IAAI,cAAc,GAAkB,IAAI,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC3D,cAAc,GAAG,YAAY,CAAC,EAAE,IAAI,IAAI,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,sCAAsC;YACxC,CAAC;YAED,uFAAuF;YACvF,uFAAuF;YACvF,mFAAmF;YACnF,IAAI,cAAc,EAAE,CAAC;gBACnB,uBAAuB;gBACvB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC7B,MAAM,EAAE,cAAc;oBACtB,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBACzB,QAAQ,EAAE,oBAAoB;qBAC/B;iBACF,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,kBAAkB;gBAClB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC7B,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,CAAC,QAAQ,CAAC;qBACpB;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBACzB,QAAQ,EAAE,oBAAoB;qBAC/B;oBACD,MAAM,EAAE,IAAI;iBACb,CAAC,CAAC;YACL,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,gDAAgD,UAAU,MAAM,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1G,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACI,KAAK,CAAC,UAAU,CAAC,gBAAwB,EAAE,qBAA6B;QAC7E,IAAI,CAAC;YACH,kBAAkB;YAClB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YAE/D,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,gBAAgB,EAAE,CAAC,CAAC;YAChE,CAAC;YAED,yBAAyB;YACzB,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvD,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YAC/C,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE/C,0CAA0C;YAC1C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;YAEzE,gBAAgB;YAChB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC3B,MAAM,EAAE,UAAU,CAAC,EAAE;gBACrB,WAAW,EAAE;oBACX,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,CAAC,YAAY,CAAC;iBACxB;aACF,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CACN,8CAA8C,gBAAgB,SAAS,qBAAqB,OAAO,sBAAsB,CAAC,KAAK,CAAC,EAAE,CACnI,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,KAAK,CAAC,YAAY,CAAC,UAAkB;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACI,KAAK,CAAC,eAAe,CAAC,aAAqB;QAChD,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;YAE1H,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC,QAAQ,KAAK,oCAAoC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACI,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,OAA2B;QACjE,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,GAAG,CAAC;QAE9C,sCAAsC;QACtC,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,6DAA6D;QAC7D,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjE,CAAC;QAED,uBAAuB;QACvB,IAAI,OAAO,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC7C,6CAA6C;gBAC7C,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzE,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,GAAG,CAAC,CAAC;QACpC,CAAC;QAED,mBAAmB;QACnB,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;YAC5B,UAAU,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC9E,CAAC;QAED,yCAAyC;QACzC,IAAI,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,OAAO,EAAE,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC7D,cAAc,GAAG,MAAM,CAAC,EAAE,IAAI,SAAS,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,mEAAmE;gBACnE,MAAM,IAAI,KAAK,CAAC,oDAAoD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChI,CAAC;QACH,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,IAAI,cAAc,cAAc,CAAC,CAAC;QACpD,CAAC;QAED,wBAAwB;QACxB,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEjC,gCAAgC;QAChC,IAAI,OAAO,EAAE,gBAAgB,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACpE,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC/B,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;gBACrC,CAAC;qBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC5C,CAAC,EAAE,UAAU;gBACb,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,6IAA6I;gBACrJ,OAAO,EAAE,mBAAmB;aAC7B,CAAC,CAAC;YAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACxC,MAAM,OAAO,GAAuB,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;YAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,IAAK,CAAC;gBAE/C,wEAAwE;gBACxE,MAAM,SAAS,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;gBAE3E,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;oBAChC,WAAW,EAAE,IAAI,CAAC,QAAS;oBAC3B,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,YAAa,CAAC;oBAC1C,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,yCAAyC;oBAClE,SAAS;oBACT,eAAe,EAAE,IAAI,CAAC,IAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;oBACvE,cAAc,EAAE,IAAI,CAAC,UAAgD;oBACrE,YAAY,EAAE;wBACZ,WAAW,EAAE,IAAI,CAAC,EAAE;wBACpB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;wBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;wBAC/F,OAAO,EAAE,IAAI,CAAC,OAAO;qBACtB;iBACF,CAAC,CAAC;YACL,CAAC;YAED,OAAO;gBACL,OAAO;gBACP,YAAY,EAAE,SAAS,EAAE,wCAAwC;gBACjE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa;gBACtC,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS;aACxD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC5C,QAAQ,CAAC,wDAAwD,KAAK,MAAM,KAAK,EAAE,CAAC,CAAC;YACrF,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,KAAa;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAc;QAC7C,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,IAAI,SAAS,GAAuB,MAAM,CAAC;QAE3C,OAAO,SAAS,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;gBACvC,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,mBAAmB;aAC5B,CAAC,CAAC;YAEH,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,iBAAiB;YACjB,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAEnC,2DAA2D;YAC3D,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC7D,MAAM;YACR,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;;AA/+CU,sBAAsB;IADlC,aAAa,CAAC,eAAe,EAAE,sBAAsB,CAAC;;GAC1C,sBAAsB,CAg/ClC"}
@@ -1,4 +1,5 @@
1
1
  import { Readable } from 'stream';
2
+ import { StorageObjectKeyNormalizer } from './ObjectKeys.js';
2
3
  /**
3
4
  * Represents the payload returned by the CreatePreAuthUploadUrl method.
4
5
  * This type contains the necessary information for uploading a file to a storage provider.
@@ -369,7 +370,7 @@ export interface StorageProviderConfig {
369
370
  * `driver.GetObject is not a function`. The marker turns an unresolved driver key into an
370
371
  * immediate, named failure at the point of resolution.
371
372
  */
372
- export declare abstract class FileStorageBase {
373
+ export declare abstract class FileStorageBase implements StorageObjectKeyNormalizer {
373
374
  /**
374
375
  * The name of this storage provider, used in error messages and logging.
375
376
  * Each implementation must define this property with a descriptive name.
@@ -860,6 +861,21 @@ export declare abstract class FileStorageBase {
860
861
  * @returns A Promise that resolves to a boolean indicating if the directory exists.
861
862
  */
862
863
  abstract DirectoryExists(directoryPath: string): Promise<boolean>;
864
+ /**
865
+ * The canonical form of an object key for this storage — what the storage access checks compare when they ask whether
866
+ * an object backs an `MJ: Files` row (see `StorageAccessEvaluator.UnreadableTrackedObjectKeys`). Both the key a client
867
+ * sends and the key a row stores go through this one method, so two spellings this driver resolves to the same object
868
+ * must canonicalize alike.
869
+ *
870
+ * The default ({@link NormalizeStorageObjectKey}) trims the key, collapses runs of `/` and strips leading and
871
+ * trailing `/` — right for every driver whose spellings differ only in slashes. A driver that adds its own root or
872
+ * prefix to SOME keys and not others (S3's key prefix) overrides this to return the key relative to that root.
873
+ * Case is preserved; callers compare case-insensitively.
874
+ *
875
+ * @param objectKey - An object key as a client or an `MJ: Files` row spells it
876
+ * @returns The canonical key: relative to this driver's root, no leading/trailing `/`, no repeated `/`
877
+ */
878
+ NormalizeObjectKey(objectKey: string): string;
863
879
  /**
864
880
  * Initialize storage provider with optional configuration.
865
881
  *
@@ -1 +1 @@
1
- {"version":3,"file":"FileStorageBase.d.ts","sourceRoot":"","sources":["../../src/generic/FileStorageBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileStorageBase.d.ts","sourceRoot":"","sources":["../../src/generic/FileStorageBase.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { RequiresSubclass } from '@memberjunction/global';
8
+ import { NormalizeStorageObjectKey } from './ObjectKeys.js';
8
9
  /**
9
10
  * Builds an HTTP `Range` header value (`bytes=Start-End` or `bytes=Start-`) from a
10
11
  * {@link ByteRange}. Shared by streaming-capable drivers so the inclusive-range
@@ -218,6 +219,23 @@ let FileStorageBase = class FileStorageBase {
218
219
  GetObjectStream(params) {
219
220
  throw new StreamingNotSupportedError(this.providerName);
220
221
  }
222
+ /**
223
+ * The canonical form of an object key for this storage — what the storage access checks compare when they ask whether
224
+ * an object backs an `MJ: Files` row (see `StorageAccessEvaluator.UnreadableTrackedObjectKeys`). Both the key a client
225
+ * sends and the key a row stores go through this one method, so two spellings this driver resolves to the same object
226
+ * must canonicalize alike.
227
+ *
228
+ * The default ({@link NormalizeStorageObjectKey}) trims the key, collapses runs of `/` and strips leading and
229
+ * trailing `/` — right for every driver whose spellings differ only in slashes. A driver that adds its own root or
230
+ * prefix to SOME keys and not others (S3's key prefix) overrides this to return the key relative to that root.
231
+ * Case is preserved; callers compare case-insensitively.
232
+ *
233
+ * @param objectKey - An object key as a client or an `MJ: Files` row spells it
234
+ * @returns The canonical key: relative to this driver's root, no leading/trailing `/`, no repeated `/`
235
+ */
236
+ NormalizeObjectKey(objectKey) {
237
+ return NormalizeStorageObjectKey(objectKey);
238
+ }
221
239
  /**
222
240
  * Initialize storage provider with optional configuration.
223
241
  *
@@ -1 +1 @@
1
- {"version":3,"file":"FileStorageBase.js","sourceRoot":"","sources":["../../src/generic/FileStorageBase.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AA8H1D;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAgB;IACnD,OAAO,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;AAC3F,CAAC;AAiKD;;;;GAIG;AACH,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD;;;;;OAKG;IACH,YAAY,UAAkB,EAAE,YAAoB;QAClD,KAAK,CAAC,cAAc,UAAU,6BAA6B,YAAY,WAAW,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACnD;;;;OAIG;IACH,YAAY,YAAoB;QAC9B,KAAK,CAAC,uDAAuD,YAAY,WAAW,CAAC,CAAC;QACtF,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AA+CD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEI,IAAe,eAAe,GAA9B,MAAe,eAAe;IAkBnC;;;OAGG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACO,8BAA8B,CAAC,UAAkB;QACzD,MAAM,IAAI,yBAAyB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;OAUG;IACI,OAAO;QACZ,0CAA0C;IAC5C,CAAC;IA4QD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAW,iBAAiB;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACH,IAAW,qBAAqB;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,IAAW,uBAAuB;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACI,eAAe,CAAC,MAA6B;QAClD,MAAM,IAAI,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IA4GD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiEG;IACI,KAAK,CAAC,UAAU,CAAC,MAA8B;QACpD,oEAAoE;QACpE,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;YACnC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACzC,CAAC;IACH,CAAC;CA8GF,CAAA;AAzsBqB,eAAe;IADpC,gBAAgB,EAAE;GACG,eAAe,CAysBpC"}
1
+ {"version":3,"file":"FileStorageBase.js","sourceRoot":"","sources":["../../src/generic/FileStorageBase.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAA8B,MAAM,cAAc,CAAC;AA8HrF;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAgB;IACnD,OAAO,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;AAC3F,CAAC;AAiKD;;;;GAIG;AACH,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD;;;;;OAKG;IACH,YAAY,UAAkB,EAAE,YAAoB;QAClD,KAAK,CAAC,cAAc,UAAU,6BAA6B,YAAY,WAAW,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACnD;;;;OAIG;IACH,YAAY,YAAoB;QAC9B,KAAK,CAAC,uDAAuD,YAAY,WAAW,CAAC,CAAC;QACtF,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AA+CD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEI,IAAe,eAAe,GAA9B,MAAe,eAAe;IAkBnC;;;OAGG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACO,8BAA8B,CAAC,UAAkB;QACzD,MAAM,IAAI,yBAAyB,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;OAUG;IACI,OAAO;QACZ,0CAA0C;IAC5C,CAAC;IA4QD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,IAAW,iBAAiB;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACH,IAAW,qBAAqB;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,IAAW,uBAAuB;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACI,eAAe,CAAC,MAA6B;QAClD,MAAM,IAAI,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IA4GD;;;;;;;;;;;;;OAaG;IACI,kBAAkB,CAAC,SAAiB;QACzC,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiEG;IACI,KAAK,CAAC,UAAU,CAAC,MAA8B;QACpD,oEAAoE;QACpE,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;YACnC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACzC,CAAC;IACH,CAAC;CA8GF,CAAA;AA3tBqB,eAAe;IADpC,gBAAgB,EAAE;GACG,eAAe,CA2tBpC"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * @fileoverview Object-key canonicalization and the key-safety rule the storage access checks use.
3
+ *
4
+ * The tracked-file rule ("an object backing an `MJ: Files` row the caller cannot read is refused") compares the key a
5
+ * client sends with the key an `MJ: Files` row stores. Drivers accept several spellings of the same object — S3 adds or
6
+ * keeps its key prefix, Box strips leading and trailing `/`, Dropbox adds a leading `/` — so a raw string comparison would
7
+ * let `/hr/secret.pdf` or `hr/secret.pdf/` through as "untracked" while the driver serves `hr/secret.pdf`. Both sides are
8
+ * therefore put through ONE canonicalizer ({@link StorageObjectKeyNormalizer}, implemented by every driver as
9
+ * `FileStorageBase.NormalizeObjectKey`) and compared case-insensitively.
10
+ *
11
+ * The canonical form is deliberately coarse: when two spellings might name the same object they canonicalize alike. A
12
+ * coarse form can only make the rule refuse more, never less.
13
+ *
14
+ * @module @memberjunction/storage
15
+ */
16
+ /**
17
+ * The object key an `MJ: Files` row resolves to: its `ProviderKey`, or its `Name` when `ProviderKey` is null or empty.
18
+ * The one rule every route from a row to its bytes and the tracked-file lookup use, so a row cannot be served under one
19
+ * key and checked under another.
20
+ */
21
+ export declare function StorageObjectKeyOf(file: {
22
+ ProviderKey?: string | null;
23
+ Name?: string | null;
24
+ }): string;
25
+ /** Turns an object key into the canonical form the storage access checks compare. */
26
+ export interface StorageObjectKeyNormalizer {
27
+ /**
28
+ * The canonical form of `objectKey` for this storage: the object the driver would address, relative to the driver's
29
+ * own root or prefix, with no leading or trailing `/` and no repeated `/`. Case is preserved; callers compare
30
+ * case-insensitively.
31
+ */
32
+ NormalizeObjectKey(objectKey: string): string;
33
+ }
34
+ /**
35
+ * The default canonical form of an object key: trimmed, with runs of `/` collapsed to one and leading and trailing `/`
36
+ * removed. Case is preserved (callers compare case-insensitively).
37
+ *
38
+ * Nothing else is rewritten. A key whose meaning depends on the provider (a backslash, a `.`/`..` segment, a
39
+ * meaning-changing percent encoding) is refused by {@link IsSafeStorageObjectKey} before it is ever compared, so the
40
+ * canonical form never has to guess what a driver would make of it.
41
+ */
42
+ export declare function NormalizeStorageObjectKey(objectKey: string): string;
43
+ /** The default {@link StorageObjectKeyNormalizer}: {@link NormalizeStorageObjectKey}. */
44
+ export declare const DEFAULT_OBJECT_KEY_NORMALIZER: StorageObjectKeyNormalizer;
45
+ /**
46
+ * Whether an object key is one the storage access checks will compare at all. A key that fails is refused (treated as
47
+ * an object the caller may not read) rather than canonicalized, because its meaning depends on the provider:
48
+ *
49
+ * - a `.` or `..` path segment, including one padded with whitespace or zero-width characters — a hierarchical
50
+ * provider (Box, Dropbox, Google Drive, SharePoint) may resolve it as traversal, so the object served need not be
51
+ * the one compared;
52
+ * - a backslash — some providers and URL layers treat it as a path separator;
53
+ * - a percent-encoded `/`, `\`, `.` or control character (`%2F`, `%5C`, `%2E`, `%00`–`%1F`, `%7F`) — a pre-signed URL
54
+ * carries the key in its path, where the provider decodes it, so `hr%2Fsecret.pdf` would be compared as one segment and
55
+ * served as `hr/secret.pdf`. A literal `%` followed by anything else (`50% off.pdf`, `%20`) is allowed;
56
+ * - a raw control character (including NUL).
57
+ *
58
+ * An empty or whitespace-only key is not unsafe — it names the root, which no `MJ: Files` row tracks.
59
+ */
60
+ export declare function IsSafeStorageObjectKey(objectKey: string): boolean;
61
+ //# sourceMappingURL=ObjectKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectKeys.d.ts","sourceRoot":"","sources":["../../src/generic/ObjectKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,MAAM,CAEtG;AAED,qFAAqF;AACrF,MAAM,WAAW,0BAA0B;IACvC;;;;OAIG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;CACjD;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CASnE;AAED,yFAAyF;AACzF,eAAO,MAAM,6BAA6B,EAAE,0BAE3C,CAAC;AAQF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAQjE"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * @fileoverview Object-key canonicalization and the key-safety rule the storage access checks use.
3
+ *
4
+ * The tracked-file rule ("an object backing an `MJ: Files` row the caller cannot read is refused") compares the key a
5
+ * client sends with the key an `MJ: Files` row stores. Drivers accept several spellings of the same object — S3 adds or
6
+ * keeps its key prefix, Box strips leading and trailing `/`, Dropbox adds a leading `/` — so a raw string comparison would
7
+ * let `/hr/secret.pdf` or `hr/secret.pdf/` through as "untracked" while the driver serves `hr/secret.pdf`. Both sides are
8
+ * therefore put through ONE canonicalizer ({@link StorageObjectKeyNormalizer}, implemented by every driver as
9
+ * `FileStorageBase.NormalizeObjectKey`) and compared case-insensitively.
10
+ *
11
+ * The canonical form is deliberately coarse: when two spellings might name the same object they canonicalize alike. A
12
+ * coarse form can only make the rule refuse more, never less.
13
+ *
14
+ * @module @memberjunction/storage
15
+ */
16
+ /**
17
+ * The object key an `MJ: Files` row resolves to: its `ProviderKey`, or its `Name` when `ProviderKey` is null or empty.
18
+ * The one rule every route from a row to its bytes and the tracked-file lookup use, so a row cannot be served under one
19
+ * key and checked under another.
20
+ */
21
+ export function StorageObjectKeyOf(file) {
22
+ return file.ProviderKey || file.Name || '';
23
+ }
24
+ /**
25
+ * The default canonical form of an object key: trimmed, with runs of `/` collapsed to one and leading and trailing `/`
26
+ * removed. Case is preserved (callers compare case-insensitively).
27
+ *
28
+ * Nothing else is rewritten. A key whose meaning depends on the provider (a backslash, a `.`/`..` segment, a
29
+ * meaning-changing percent encoding) is refused by {@link IsSafeStorageObjectKey} before it is ever compared, so the
30
+ * canonical form never has to guess what a driver would make of it.
31
+ */
32
+ export function NormalizeStorageObjectKey(objectKey) {
33
+ // Split and join rather than regex trimming: dropping empty segments collapses runs of `/` and strips leading and
34
+ // trailing `/` in one linear pass with no backtracking. CodeQL flags a trailing-anchor pattern such as `/\/+$/` on
35
+ // caller input as polynomial (js/polynomial-redos), so this form keeps every pattern out of the path.
36
+ return (objectKey ?? '')
37
+ .trim()
38
+ .split('/')
39
+ .filter(segment => segment.length > 0)
40
+ .join('/');
41
+ }
42
+ /** The default {@link StorageObjectKeyNormalizer}: {@link NormalizeStorageObjectKey}. */
43
+ export const DEFAULT_OBJECT_KEY_NORMALIZER = {
44
+ NormalizeObjectKey: NormalizeStorageObjectKey
45
+ };
46
+ /** Characters whose percent-encoded form a provider or URL layer could decode into a path-changing character. */
47
+ const MEANING_CHANGING_ENCODED = /%(2f|5c|2e|[01][0-9a-f]|7f)/i;
48
+ /** ASCII control characters, including NUL. */
49
+ const CONTROL_CHARACTERS = /[\x00-\x1f\x7f]/;
50
+ /**
51
+ * Whether an object key is one the storage access checks will compare at all. A key that fails is refused (treated as
52
+ * an object the caller may not read) rather than canonicalized, because its meaning depends on the provider:
53
+ *
54
+ * - a `.` or `..` path segment, including one padded with whitespace or zero-width characters — a hierarchical
55
+ * provider (Box, Dropbox, Google Drive, SharePoint) may resolve it as traversal, so the object served need not be
56
+ * the one compared;
57
+ * - a backslash — some providers and URL layers treat it as a path separator;
58
+ * - a percent-encoded `/`, `\`, `.` or control character (`%2F`, `%5C`, `%2E`, `%00`–`%1F`, `%7F`) — a pre-signed URL
59
+ * carries the key in its path, where the provider decodes it, so `hr%2Fsecret.pdf` would be compared as one segment and
60
+ * served as `hr/secret.pdf`. A literal `%` followed by anything else (`50% off.pdf`, `%20`) is allowed;
61
+ * - a raw control character (including NUL).
62
+ *
63
+ * An empty or whitespace-only key is not unsafe — it names the root, which no `MJ: Files` row tracks.
64
+ */
65
+ export function IsSafeStorageObjectKey(objectKey) {
66
+ if (typeof objectKey !== 'string') {
67
+ return false;
68
+ }
69
+ if (objectKey.includes('\\') || CONTROL_CHARACTERS.test(objectKey) || MEANING_CHANGING_ENCODED.test(objectKey)) {
70
+ return false;
71
+ }
72
+ return !objectKey.split('/').map(visibleSegment).some(segment => segment === '.' || segment === '..');
73
+ }
74
+ /**
75
+ * A path segment as a filesystem would read it: Unicode format characters (`\p{Cf}`: zero-width space, joiners,
76
+ * word joiner, BOM, soft hyphen) removed, then trimmed. Without this, `\u200B..\u200B` would not compare equal to
77
+ * `..` though a driver that drops such characters would resolve it as traversal.
78
+ */
79
+ function visibleSegment(segment) {
80
+ return segment.replace(/\p{Cf}/gu, '').trim();
81
+ }
82
+ //# sourceMappingURL=ObjectKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectKeys.js","sourceRoot":"","sources":["../../src/generic/ObjectKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAA2D;IAC1F,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;AAC/C,CAAC;AAYD;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IACvD,kHAAkH;IAClH,mHAAmH;IACnH,sGAAsG;IACtG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;SACnB,IAAI,EAAE;SACN,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;SACrC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,MAAM,6BAA6B,GAA+B;IACrE,kBAAkB,EAAE,yBAAyB;CAChD,CAAC;AAEF,iHAAiH;AACjH,MAAM,wBAAwB,GAAG,8BAA8B,CAAC;AAEhE,+CAA+C;AAC/C,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAE7C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACpD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC;AAC1G,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAAe;IACnC,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAClD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -6,7 +6,9 @@ export * from './drivers/SharePointFileStorage.js';
6
6
  export * from './drivers/DropboxFileStorage.js';
7
7
  export * from './drivers/BoxFileStorage.js';
8
8
  export * from './generic/FileStorageBase.js';
9
+ export * from './generic/ObjectKeys.js';
9
10
  export * from './util.js';
10
11
  export * from './config.js';
11
12
  export * from './FileStorageEngine.js';
13
+ export * from './StorageAccessEvaluator.js';
12
14
  //# sourceMappingURL=index.d.ts.map