@adminide-stack/core 12.0.4-alpha.6 → 12.0.4-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- export{NATS_HEMERA_ADMINIDE_WORKSPACE,NATS_HEMERA_ADMINIDE_WORKSPACE_UPDATER}from'./constants/constants.js';export{DEFAULT_CPU,DEFAULT_HDD,DEFAULT_RAM}from'./constants/default-workspace-config.js';export{DEFAULT_TENANT_ID,GLOBAL_CONFIGURATION_FILE,OVERRIDE_IDENTIFIER_PATTERN,OVERRIDE_PATTERN_WITH_SUBSTITUTION,OVERRIDE_PROPERTY,OVERRIDE_PROPERTY_PATTERN,SETTINGS_OVERRRIDE_NODE_ID,USER_CONFIGURATION_FILE}from'./constants/configuration.js';export{ASANA_WEBHOOK_ENDPOINT,ORG_BASE_PATH,ORG_STD_ROUTES}from'./constants/urls.js';export{IntegrationConfigurationRoute}from'./constants/routes.js';export{BillingPlan}from'./constants/billing-plan.js';export{LOCAL_MACHINE_SCOPES,ORGANIZATION_SCOPES,REMOTE_MACHINE_SCOPES,RESOURCE_SCOPES,USER_SCOPES}from'./interfaces/configuration/configuration.js';export{ApplicationState,IOrganizationContext,IOrganizationResource}from'./interfaces/organization/organization-context.js';export{Extensions}from'@workbench-stack/core/lib/constants/extensions.js';export{LifecyclePhase,ShutdownReason,StartupKind}from'@workbench-stack/core/lib/interfaces/lifecycle/lifecycle.js';export{PermissionBehavior}from'./interfaces/permissions.js';export*from'common/lib/generated/generated-models.js';export{getFilteredRoutes,getFilteredTabs,getTtl}from'./utils/utils.js';export{configureForCurrentBranch,configureForUpcomingBranch,convertToResourceUri,createDirectResourceUri,createStandardResourceUri,generateHashId,normalizeResourceUri,resourcePath,setupResourceUriConfiguration,strictConvertToResourceUri}from'./utils/resourceUriConversion.js';export{generateApplicationUri,generateMachineUri,generateOrgUri,generateOrgUriById,generateProxyUserUri,generateResourceUri,generateUri,generateUserUri}from'./utils/generate-uri.js';export{determineConfigurationTarget,generateCdecodeUri,parseCdecodeUri}from'./utils/cdecodeUri.js';export{generateApplicationRoleResource,generateRegisteredRoleURI}from'./utils/roles-utils.js';export{getScopes}from'./utils/configuration-utils.js';export{omitDeep}from'./utils/omit-deep.js';export{generateSettingsId}from'./utils/generated-settings-id.js';export{validateEmail}from'./utils/validations.js';export{toMilliSeconds}from'./utils/date-utils.js';export{expand,flatten,flattenObject}from'./utils/flatten-utils.js';export{generateUserAlias}from'./utils/generateUserAlias.js';export{getUserAlias}from'./utils/getUserAlias.js';export{getLogger}from'./utils/getLogger.js';export{getDefaultSettingsURI,getEditableSettingsURI,getOpenSettings,parseExtensionFromDefaultSettingsUri}from'./utils/preferenceUri.js';export{reviveUri}from'./utils/reviveUri.js';export{buildNodeContext,buildPermissionNodeContext,buildPolicyNodeContext,buildRoleNodeContext}from'./utils/nodeContext.js';export{splitCdecodeUri,splitOrgUri}from'./utils/splitCdecodeUri.js';export{generatePath}from'./utils/generatePath.js';export{Disposable,DisposableCollection}from'./core/disposable.js';export{Emitter,Event,WaitUntilEvent}from'./core/event.js';export{Path}from'./core/path.js';export{OrganizationContext,OrganizationResource,toOrganizationResource,toOrganizationResources,toUri}from'./core/organization/organization.js';export{OrganizationConfiguration}from'./core/organization/configuration.js';export{isOrganizationIdentifier,isRawFileOrganizationResource,isRawUriOrganizationResource,isSingleResourceOrganizationIdentifier,isSingleResourceOrganizationInitializationPayload}from'./core/organization/helpers/organization-helpers.js';export{ConfigurationTargetConfigurationMapper,ConfigurationTargetToString,SettingsTypeToConfiguraitonTarget,addToValueTree,getConfigurationValue,getMigratedSettingValue,isConfigurationOverrides,keyFromOverrideIdentifier,merge,overrideIdentifierFromKey,removeFromValueTree,toValuesTree}from'./core/configurations/helpers/configuration.js';export{ConfigurationModel}from'./core/configurations/models/ConfigurationModel.js';export{Configuration,OVERRIDE_PROPERTY_REGEX,compare,overrideIdentifiersFromKey}from'./core/configurations/configuration.js';export{ConfigurationChangeEvent}from'./core/configurations/events/ConfigurationChangeEvent.js';export{CdeCodeProvider}from'./core/in-memory-providers/cde-code-provider.js';export{AuthError}from'./errors/auth-error.js';export{AbstractOrganizationContextService}from'./services/abstract-organization-context-service.js';export{AbstractOrganizationConfigurationClientService}from'./services/abstract-configuration.js';export{PreDefineAccountPermissions}from'./modules/account-api/enums/index.js';export{BillingModules,PreDefineBillingPermissions}from'./modules/billing-api/enums/index.js';export{PreDefineInboxPermissions}from'./modules/inbox/enums/index.js';export{URI,uriToFsPath}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';export{ConfigurationScope}from'common';//# sourceMappingURL=index.js.map
1
+ export{NATS_HEMERA_ADMINIDE_WORKSPACE,NATS_HEMERA_ADMINIDE_WORKSPACE_UPDATER}from'./constants/constants.js';export{DEFAULT_CPU,DEFAULT_HDD,DEFAULT_RAM}from'./constants/default-workspace-config.js';export{DEFAULT_TENANT_ID,GLOBAL_CONFIGURATION_FILE,OVERRIDE_IDENTIFIER_PATTERN,OVERRIDE_PATTERN_WITH_SUBSTITUTION,OVERRIDE_PROPERTY,OVERRIDE_PROPERTY_PATTERN,SETTINGS_OVERRRIDE_NODE_ID,USER_CONFIGURATION_FILE}from'./constants/configuration.js';export{ASANA_WEBHOOK_ENDPOINT,ORG_BASE_PATH,ORG_STD_ROUTES}from'./constants/urls.js';export{IntegrationConfigurationRoute}from'./constants/routes.js';export{BillingPlan}from'./constants/billing-plan.js';export{LOCAL_MACHINE_SCOPES,ORGANIZATION_SCOPES,REMOTE_MACHINE_SCOPES,RESOURCE_SCOPES,USER_SCOPES}from'./interfaces/configuration/configuration.js';export{ApplicationState,IOrganizationContext,IOrganizationResource}from'./interfaces/organization/organization-context.js';export{Extensions}from'@workbench-stack/core/lib/constants/extensions.js';export{LifecyclePhase,ShutdownReason,StartupKind}from'@workbench-stack/core/lib/interfaces/lifecycle/lifecycle.js';export{PermissionBehavior}from'./interfaces/permissions.js';export*from'common/lib/generated/generated-models.js';export{getFilteredRoutes,getFilteredTabs,getTtl}from'./utils/utils.js';export{configureForCurrentBranch,configureForUpcomingBranch,convertToResourceUri,createDirectResourceUri,createStandardResourceUri,generateHashId,normalizeResourceUri,resourcePath,setupResourceUriConfiguration,strictConvertToResourceUri}from'./utils/resourceUriConversion.js';export{generateApplicationUri,generateMachineUri,generateOrgUri,generateOrgUriById,generateProxyUserUri,generateResourceUri,generateUri,generateUserUri}from'./utils/generate-uri.js';export{RESERVED_CDECODE_PARAMS,determineConfigurationTarget,generateCdecodeUri,isReservedCdecodeParam,parseCdecodeUri,validateUserQueryParams}from'./utils/cdecodeUri.js';export{generateApplicationRoleResource,generateRegisteredRoleURI}from'./utils/roles-utils.js';export{getScopes}from'./utils/configuration-utils.js';export{omitDeep}from'./utils/omit-deep.js';export{generateSettingsId}from'./utils/generated-settings-id.js';export{validateEmail}from'./utils/validations.js';export{toMilliSeconds}from'./utils/date-utils.js';export{expand,flatten,flattenObject}from'./utils/flatten-utils.js';export{generateUserAlias}from'./utils/generateUserAlias.js';export{getUserAlias}from'./utils/getUserAlias.js';export{getLogger}from'./utils/getLogger.js';export{getDefaultSettingsURI,getEditableSettingsURI,getOpenSettings,parseExtensionFromDefaultSettingsUri}from'./utils/preferenceUri.js';export{reviveUri}from'./utils/reviveUri.js';export{buildNodeContext,buildPermissionNodeContext,buildPolicyNodeContext,buildRoleNodeContext,buildUiLayoutNodeContext}from'./utils/nodeContext.js';export{splitCdecodeUri,splitOrgUri}from'./utils/splitCdecodeUri.js';export{generatePath}from'./utils/generatePath.js';export{Disposable,DisposableCollection}from'./core/disposable.js';export{Emitter,Event,WaitUntilEvent}from'./core/event.js';export{Path}from'./core/path.js';export{OrganizationContext,OrganizationResource,toOrganizationResource,toOrganizationResources,toUri}from'./core/organization/organization.js';export{OrganizationConfiguration}from'./core/organization/configuration.js';export{isOrganizationIdentifier,isRawFileOrganizationResource,isRawUriOrganizationResource,isSingleResourceOrganizationIdentifier,isSingleResourceOrganizationInitializationPayload}from'./core/organization/helpers/organization-helpers.js';export{ConfigurationTargetConfigurationMapper,ConfigurationTargetToString,SettingsTypeToConfiguraitonTarget,addToValueTree,getConfigurationValue,getMigratedSettingValue,isConfigurationOverrides,keyFromOverrideIdentifier,merge,overrideIdentifierFromKey,removeFromValueTree,toValuesTree}from'./core/configurations/helpers/configuration.js';export{ConfigurationModel}from'./core/configurations/models/ConfigurationModel.js';export{Configuration,OVERRIDE_PROPERTY_REGEX,compare,overrideIdentifiersFromKey}from'./core/configurations/configuration.js';export{ConfigurationChangeEvent}from'./core/configurations/events/ConfigurationChangeEvent.js';export{CdeCodeProvider}from'./core/in-memory-providers/cde-code-provider.js';export{AuthError}from'./errors/auth-error.js';export{AbstractOrganizationContextService}from'./services/abstract-organization-context-service.js';export{AbstractOrganizationConfigurationClientService}from'./services/abstract-configuration.js';export{PreDefineAccountPermissions}from'./modules/account-api/enums/index.js';export{BillingModules,PreDefineBillingPermissions}from'./modules/billing-api/enums/index.js';export{PreDefineInboxPermissions}from'./modules/inbox/enums/index.js';export{URI,uriToFsPath}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';export{ConfigurationScope}from'common';//# sourceMappingURL=index.js.map
@@ -1,7 +1,8 @@
1
1
  import { URI } from '@vscode-alt/monaco-editor/esm/vs/base/common/uri';
2
2
  import { ICdecodeUriPathSegment, IAuthorityComponent, ConfigurationTarget, ICdecodeParsedUri } from 'common';
3
+ export declare const RESERVED_CDECODE_PARAMS: readonly ["meta_schemaId", "meta_extensionNames"];
3
4
  export declare const generateCdecodeUri: (authority: string | IAuthorityComponent, params: ICdecodeUriPathSegment, query?: {
4
- [key: string]: string | number;
5
+ [key: string]: string | number | string[];
5
6
  }, fragment?: string) => URI;
6
7
  /**
7
8
  * valid
@@ -28,3 +29,19 @@ export declare function parseCdecodeUri(uriString: string | URI): ICdecodeParsed
28
29
  * includes an organization name, resourceGroup/resourceType, etc.
29
30
  */
30
31
  export declare function determineConfigurationTarget(parsedUri: ICdecodeParsedUri): ConfigurationTarget;
32
+ /**
33
+ * Utility function to check if a query parameter name is reserved for CDECODE URIs
34
+ * @param paramName The parameter name to check
35
+ * @returns true if the parameter name is reserved
36
+ */
37
+ export declare function isReservedCdecodeParam(paramName: string): boolean;
38
+ /**
39
+ * Utility function to validate user-provided query parameters against reserved names
40
+ * @param query The query object to validate
41
+ * @returns An object containing conflicts and validation result
42
+ */
43
+ export declare function validateUserQueryParams(query: Record<string, unknown>): {
44
+ isValid: boolean;
45
+ conflicts: string[];
46
+ message?: string;
47
+ };
@@ -1,6 +1,16 @@
1
1
  import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import sortKeys from'sort-keys';import queryString from'query-string';import {Scheme,ConfigCollectionName}from'common';/* eslint-disable import/no-extraneous-dependencies */
2
2
  /* eslint-disable prefer-destructuring */
3
3
  /* eslint-disable default-param-last */
4
+ // Reserved parameter names for CDECODE scheme
5
+ const RESERVED_CDECODE_PARAMS = ['meta_schemaId', 'meta_extensionNames'];
6
+ // Helper function to validate query parameters and warn about reserved parameter usage
7
+ const validateQueryParams = (query, scheme) => {
8
+ if (scheme !== Scheme.CDECODE || !query) return;
9
+ const conflicts = Object.keys(query).filter(key => RESERVED_CDECODE_PARAMS.includes(key) && typeof query[key] !== 'undefined');
10
+ if (conflicts.length > 0) {
11
+ console.warn(`CDECODE URI: The following query parameters are reserved and will be processed specially: ${conflicts.join(', ')}. meta_schemaId should be a string, meta_extensionNames should be an array of strings.`);
12
+ }
13
+ };
4
14
  const generateCdecodeUri = (authority, params, query = {}, fragment) => {
5
15
  let authorityString;
6
16
  // Determine if authority is a string or an object
@@ -18,16 +28,28 @@ const generateCdecodeUri = (authority, params, query = {}, fragment) => {
18
28
  // Construct the authority string
19
29
  authorityString = `${bucketOrAppName}.${region}.${domain}`.toLowerCase();
20
30
  }
31
+ // Validate query parameters for reserved names
32
+ validateQueryParams(query, Scheme.CDECODE);
33
+ // Handle empty arrays specially to ensure they survive round-trip
34
+ const processedQuery = {
35
+ ...query
36
+ };
37
+ if (query?.meta_extensionNames && Array.isArray(query.meta_extensionNames) && query.meta_extensionNames.length === 0) {
38
+ // Use special marker to represent empty array
39
+ processedQuery.meta_extensionNames = ['__EMPTY_ARRAY__'];
40
+ }
21
41
  // Sort query parameters for consistent ordering
22
- const orderedParams = sortKeys(query ?? {});
23
- const queryInString = queryString.stringify(orderedParams);
42
+ const orderedParams = sortKeys(processedQuery ?? {});
43
+ const queryInString = queryString.stringify(orderedParams, {
44
+ arrayFormat: 'comma'
45
+ });
24
46
  // Build the path from the provided parameters
25
47
  const pathSegments = [];
26
48
  // Organization is optional but reserved as the first path segment
27
49
  if (params.organization !== undefined && params.organization !== null && params.organization !== '') {
28
50
  pathSegments.push(params.organization);
29
51
  } else {
30
- const hasAdditionalSegments = params.resourceGroup && params.resourceGroup !== '' || params.resourceType && params.resourceType !== undefined && params.resourceType !== '' || params.resourceId && params.resourceId !== '';
52
+ const hasAdditionalSegments = params.resourceGroup && params.resourceGroup !== '' || params.resourceType && params.resourceType !== undefined || params.resourceId && params.resourceId !== '';
31
53
  if (hasAdditionalSegments) {
32
54
  // Add an empty string to represent the missing organization
33
55
  pathSegments.push('');
@@ -36,7 +58,7 @@ const generateCdecodeUri = (authority, params, query = {}, fragment) => {
36
58
  if (params.resourceGroup !== undefined && params.resourceGroup !== null && params.resourceGroup !== '') {
37
59
  pathSegments.push(params.resourceGroup);
38
60
  }
39
- if (params.resourceType !== undefined && params.resourceType !== null && params.resourceType !== '') {
61
+ if (params.resourceType !== undefined && params.resourceType !== null) {
40
62
  pathSegments.push(params.resourceType);
41
63
  }
42
64
  if (params.resourceId !== undefined && params.resourceId !== null && params.resourceId !== '') {
@@ -48,10 +70,54 @@ const generateCdecodeUri = (authority, params, query = {}, fragment) => {
48
70
  scheme: Scheme.CDECODE,
49
71
  authority: authorityString,
50
72
  path,
51
- query: queryInString,
73
+ query: queryInString || undefined,
52
74
  fragment
53
75
  });
54
76
  };
77
+ // Helper function to safely extract string values from query parameters
78
+ const getStringValue = value => {
79
+ if (Array.isArray(value)) {
80
+ return value[0] || '';
81
+ }
82
+ return value || '';
83
+ };
84
+ // Helper function to safely extract array values from query parameters
85
+ const getArrayValue = value => {
86
+ if (Array.isArray(value)) {
87
+ // If array contains the special empty array marker, return empty array
88
+ if (value.length === 1 && value[0] === '__EMPTY_ARRAY__') {
89
+ return [];
90
+ }
91
+ return value;
92
+ }
93
+ // If the single string is the empty array marker, return empty array
94
+ if (value === '__EMPTY_ARRAY__') {
95
+ return [];
96
+ }
97
+ // If the value is an empty string, return array with empty string
98
+ if (value === '') {
99
+ return [''];
100
+ }
101
+ return value ? [value] : [];
102
+ };
103
+ // Helper function to process queryData and extract array parameters for CDECODE scheme only
104
+ const processQueryData = (queryData, scheme) => {
105
+ const processedQuery = {};
106
+ for (const [key, value] of Object.entries(queryData)) {
107
+ if (scheme === Scheme.CDECODE && key === 'meta_extensionNames') {
108
+ // Ensure meta_extensionNames is always an array for CDECODE scheme only
109
+ const arrayValue = getArrayValue(value);
110
+ processedQuery[key] = arrayValue;
111
+ } else if (scheme === Scheme.CDECODE && key === 'meta_schemaId') {
112
+ // Ensure meta_schemaId is always a string for CDECODE scheme
113
+ processedQuery[key] = getStringValue(value);
114
+ } else {
115
+ // Keep other parameters as they are
116
+ processedQuery[key] = value;
117
+ }
118
+ }
119
+ return processedQuery;
120
+ };
55
121
  /**
56
122
  * valid
57
123
  * `cdecode://<tenantId>.us-west-2.clockbook.com/rranrn/${ConfigCollectionName.Teams}/JohnDoe`
@@ -81,34 +147,37 @@ function parseCdecodeUri(uriString) {
81
147
  if (pathSegmentsArray[0] === '') {
82
148
  pathSegmentsArray.shift(); // Remove the first empty segment from leading slash
83
149
  }
84
- const pathSegments = {
85
- organization: ''
86
- };
87
- // Parse query and fragment
88
- const queryData = queryString.parse(uri?.query || '');
150
+ const pathSegments = {};
151
+ // Parse query and fragment with different options based on scheme
152
+ const parseOptions = uri.scheme === Scheme.CDECODE ? {
153
+ arrayFormat: 'comma'
154
+ } : {};
155
+ const queryData = queryString.parse(uri?.query || '', parseOptions);
89
156
  let fragmentData = uri?.fragment || '';
90
157
  if (uri?.fragment?.includes('=')) {
91
- fragmentData = queryString.parse(uri.fragment);
158
+ fragmentData = queryString.parse(uri.fragment, {
159
+ arrayFormat: 'comma'
160
+ });
92
161
  }
93
162
  if (uri.scheme === Scheme.CDECODE_RESOURCE) {
94
163
  // Remove leading slash and get resource type
95
164
  const resourceType = path.substring(1);
96
165
  if (resourceType === ConfigCollectionName.Organizations) {
97
166
  // Organization URI format: /organizations?name=orgName
98
- pathSegments.organization = queryData.name || '';
167
+ pathSegments.organization = getStringValue(queryData.name);
99
168
  } else if (resourceType === ConfigCollectionName.Projects) {
100
169
  // Project URI format: /projects?orgName=org&resourceGroup=group
101
- pathSegments.organization = queryData.orgName || '';
170
+ pathSegments.organization = getStringValue(queryData.orgName);
102
171
  } else {
103
172
  // Resource URI format: /resourceType?_id=id&orgName=org
104
173
  // or: /resourceType?field=value&orgName=org
105
174
  pathSegments.resourceType = resourceType;
106
- pathSegments.organization = queryData.orgName || '';
175
+ pathSegments.organization = getStringValue(queryData.orgName);
107
176
  // Handle different ID fields (_id, name, email, etc)
108
177
  if (queryData._id) {
109
- pathSegments.resourceId = queryData._id;
178
+ pathSegments.resourceId = getStringValue(queryData._id);
110
179
  } else if (queryData.name) {
111
- pathSegments.resourceId = `name:${queryData.name}`;
180
+ pathSegments.resourceId = `name:${getStringValue(queryData.name)}`;
112
181
  }
113
182
  }
114
183
  return {
@@ -127,7 +196,7 @@ function parseCdecodeUri(uriString) {
127
196
  scheme: uri.scheme,
128
197
  authority: uri.authority,
129
198
  pathSegments,
130
- queryData,
199
+ queryData: processQueryData(queryData, uri.scheme),
131
200
  fragmentData
132
201
  };
133
202
  }
@@ -147,7 +216,7 @@ function parseCdecodeUri(uriString) {
147
216
  scheme: uri.scheme,
148
217
  authority: uri.authority,
149
218
  pathSegments,
150
- queryData,
219
+ queryData: processQueryData(queryData, uri.scheme),
151
220
  fragmentData
152
221
  };
153
222
  }
@@ -199,7 +268,7 @@ function parseCdecodeUri(uriString) {
199
268
  scheme: uri.scheme,
200
269
  authority: uri.authority,
201
270
  pathSegments,
202
- queryData,
271
+ queryData: processQueryData(queryData, uri.scheme),
203
272
  fragmentData
204
273
  };
205
274
  }
@@ -225,4 +294,31 @@ function determineConfigurationTarget(parsedUri) {
225
294
  // For example, if you have a special authority or naming convention for applications
226
295
  // For now, default to USER
227
296
  return 1 /* ConfigurationTarget.USER */;
228
- }export{determineConfigurationTarget,generateCdecodeUri,parseCdecodeUri};//# sourceMappingURL=cdecodeUri.js.map
297
+ }
298
+ /**
299
+ * Utility function to check if a query parameter name is reserved for CDECODE URIs
300
+ * @param paramName The parameter name to check
301
+ * @returns true if the parameter name is reserved
302
+ */
303
+ function isReservedCdecodeParam(paramName) {
304
+ return RESERVED_CDECODE_PARAMS.includes(paramName);
305
+ }
306
+ /**
307
+ * Utility function to validate user-provided query parameters against reserved names
308
+ * @param query The query object to validate
309
+ * @returns An object containing conflicts and validation result
310
+ */
311
+ function validateUserQueryParams(query) {
312
+ const conflicts = Object.keys(query).filter(key => isReservedCdecodeParam(key));
313
+ if (conflicts.length > 0) {
314
+ return {
315
+ isValid: false,
316
+ conflicts,
317
+ message: `The following parameter names are reserved for CDECODE URIs: ${conflicts.join(', ')}. Please use different names.`
318
+ };
319
+ }
320
+ return {
321
+ isValid: true,
322
+ conflicts: []
323
+ };
324
+ }export{RESERVED_CDECODE_PARAMS,determineConfigurationTarget,generateCdecodeUri,isReservedCdecodeParam,parseCdecodeUri,validateUserQueryParams};//# sourceMappingURL=cdecodeUri.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cdecodeUri.js","sources":["../../src/utils/cdecodeUri.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cdecodeUri.js","sources":["../../src/utils/cdecodeUri.ts"],"sourcesContent":[null],"names":[],"mappings":"6LAAA;AACA;AACA;AAaA;MACa,uBAAuB,GAAG,CAAC,eAAe,EAAE,qBAAqB;AAE9E;AACA,MAAM,mBAAmB,GAAG,CAAC,KAAoE,EAAE,MAAc,KAAI;AACjH,EAAA,IAAA,WAAe,MAAA,CAAA,OAAc,IAAA,CAAA,KAAU,EAAA;QAAE,SAAO,GAAA,MAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA,MAAA,CAAA,GAAA,IAAA,uBAAA,CAAA,QAAA,CAAA,GAAA,CAAA,IAAA,OAAA,KAAA,CAAA,GAAA,CAAA,KAAA,WAAA,CAAA;MAE1C,SAAA,CAAA,MAAY,GAAM,CAAA,EAAA;AAGhB,IAAA,OAAA,CAAA,gGACN,EAAA,SAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA,sFAAA,CAAA,CAAA;AAEF;AACI,CAAA;AAKH,MAAA,kBAAA,GAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,GAAA,EAAA,EAAA,QAAA,KAAA;AACL,EAAE,IAAA,eAAA;AAEF;AAMI,EAAA,IAAA,qBAA4B,QAAA,EAAA;IAE5B,eAAkD,GAAA,SAAA;AAClD,GAAA,MAAW;UACQ;MAClB,MAAA;YAAO;;QAGJ;AACI,IAAA,IAAA,CAAA,MAAA,IAAU,CAAA,MAAA,IAAM,CAAA,eAAA,EAAA;YACnB,IAAA,KAAA,CAAA,oEAAA,CAAA;;;IAIL,eAAC,GAAA,CAAA,EAAA,eAAA,CAAA,CAAA,EAAA,MAAA,CAAA,CAAA,EAAA,MAAA,CAAA,CAAA,CAAA,WAAA,EAAA;;AAGD;qBAEkE,CAAA,KAAA,EAAA,MAAA,CAAA,OAAA,CAAA;AAClE;QAEI,cAA0B,GAAA;AAC1B,IAAA,GAAA;AACA,GAAA;WAE8C,EAAA,mBAAA,IAAA,KAAA,CAAA,OAAA,CAAA,KAAA,CAAA,mBAAA,CAAA,IAAA,KAAA,CAAA,mBAAA,CAAA,MAAA,KAAA,CAAA,EAAA;AAC9C;IACJ,cAAC,CAAA,mBAAA,GAAA,CAAA,iBAAA,CAAA;;;AAID,EAAA,MAAA,aAAmB,GAAA,QAAc,CAAA,cAAU,IAAC,EAAA,CAAA;QAEE,aAAA,GAAA,WAAA,CAAA,SAAA,CAAA,aAAA,EAAA;IAC9C,WAAM,EAAA;IACN;AACA;AACI,EAAA,MAAA,YAAY,GAAK,EAAA;;YACb,CAAA,YAAA,KAAA,SAAA,IAAA,MAAA,CAAA,YAAA,KAAA,IAAA,IAAA,MAAA,CAAA,YAAA,KAAA,EAAA,EAAA;AACJ,IAAA,YAA2B,CAAA,IAAA,CAAA,MAAA,CAAA,YACtB,CAAA;;+BAEqB,GAAA,MAAM,CAAC,aAAU,IAAO,MAAE,CAAA,aAAA,KAAA,EAAA,IAAA,MAAA,CAAA,YAAA,IAAA,MAAA,CAAA,YAAA,KAAA,SAAA,IAAA,MAAA,CAAA,UAAA,IAAA,MAAA,CAAA,UAAA,KAAA,EAAA;QACpD,qBAAI,EAAA;;AAEA,MAAA,YAAA,CAAA,IAAA,CAAY,EAAC,CAAA;;;AAIrB,EAAA,IAAA,oBAAW,cAA2B,IAAA,oBAAW,KAAkB,IAAA,UAAc,CAAA,kBAAmB,EAAA,EAAE;AAClG,IAAA,YAAA,CAAA,IAAa,CAAI,oBAAQ,CAAA;;AAG7B,EAAA,IAAA,MAAU,CAAA,YAAa,KAAA,SAAc,IAAA,MAAU,CAAA,YAAa,KAAA,IAAS,EAAA;AACjE,IAAA,YAAA,CAAA,IAAa,CAAI,mBAAQ,CAAA;;AAG7B,EAAA,IAAA,iBAAW,cAAwB,IAAA,iBAAW,KAAe,IAAA,UAAc,CAAA,eAAgB,EAAA,EAAE;AACzF,IAAA,YAAA,CAAA,IAAa,CAAI,iBAAQ,CAAA;;;QAIvB,IAAA,eAAmB,CAAA,SAAU,CAAA,GAAE,CAAC,CAAC,EAAA,iBAAiB,CAAA,GAAQ,CAAA,CAAA,CAAC,GAAG,GAAE;SAE/D,GAAA,CAAA,IAAI,CAAA;UACD,EAAA,MAAQ,CAAA,OAAQ;AACtB,IAAA,SAAA,EAAA,eAA0B;QAC1B;SACK,EAAA,aAAe,IAAA,SAAa;;AAEpC,GAAA,CAAA;AACL;AAEA;AACA,MAAM,cAAc,GAAG,KAAC,IAAgD;AACpE,EAAA,IAAA,aAAU,CAAA,KAAa,CAAA,EAAC;AACpB,IAAA,OAAA,YAAe,EAAA;;SAEZ,KAAA,IAAS,EAAA;AACpB,CAAC;AAED;AACA,MAAM,aAAa,GAAG,KAAC,IAAkD;AACrE,EAAA,IAAA,aAAU,CAAA,KAAa,CAAA,EAAC;;AAEpB,IAAA,IAAA,KAAS,CAAA,MAAO,KAAA,CAAA,IAAM,KAAS,CAAA,CAAA,CAAA,KAAQ,iBAAA,EAAA;AACnC,MAAA,OAAA,EAAA;;AAEJ,IAAA,OAAA;;;AAGJ,EAAA,IAAA,KAAS,KAAA,iBAAsB,EAAA;AAC3B,IAAA,OAAA,EAAA;;;AAGJ,EAAA,IAAA,KAAS,KAAA,EAAK,EAAE;WACL,CAAA,EAAA,CAAA;;SAEJ,KAAA,GAAM,CAAC,KAAO,CAAA,GAAE,EAAE;AAC7B,CAAC;AAED;AACA,MAAM,gBAAgB,GAAG,CAAC,SAA4C,EAAE,MAAc,KAAI;QAChF,cAAA,GAAoD,EAAA;AAE1D,EAAA,KAAA,MAAW,CAAA,GAAI,EAAA,UAAQ,MAAU,CAAA,OAAQ,CAAA,SAAU,CAAA,EAAC;QAChD,MAAI,KAAW,MAAA,CAAA,OAAO,IAAO,QAAO,qBAA0B,EAAA;;AAE1D,MAAA,MAAA,0BAAmB,CAAA,KAAa,CAAC;AACjC,MAAA,cAAA,CAAA,GAAA,CAAA,GAAe;WAClB,IAAA,MAAA,KAAA,MAAA,CAAA,OAAA,IAAA,GAAA,KAAA,eAAA,EAAA;;oBACgE,CAAA,GAAA,CAAA,GAAA,cAAA,CAAA,KAAA,CAAA;;;oBAEzD,CAAA,GAAA,CAAA,GAAA,KAAA;;AAEJ;SACH,cAAA;;AAGL;AACJ;AAEA;;;;;;;;;;;;;;;;;;AAkBG,EAAA,MAAA,GAAA,GAAA,OAAA,SAAA,KAAA,QAAA,GAAA,GAAA,CAAA,KAAA,CAAA,SAAA,CAAA,GAAA,SAAA;AACH;AACI,EAAA,MAAA,OAAY,GAAA,CAAA,IAAO,YAAc,IAAA,GAAA,CAAA,IAAU,KAAK,YAAe,GAAA,GAAG,WAAW;;;QAKf,iBAAA,GAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA;MACK,iBAAA,CAAA,CAAA,CAAA,KAAA,EAAA,EAAA;IACnE,iBAAM,CAAA,KAAiB,GAAG;AAC1B;AACI,EAAA,MAAA,YAAA,GAAA,EAAiB;;QAGf,YAAA,GAAuC,GAAA,CAAE,MAAC,KAAA,MAAA,CAAA,OAAA,GAAA;IAEhD,WAAkE,EAAA;MAC5D,EAAA;AACN,EAAA,MAAA,SAAe,GAAA,WAAc,CAAA,SAAO,EAAG,KAAE,IAAS,EAAA,EAAE,YAAE,CAAA;AACtD,EAAA,IAAA,eAAiD,GAAA,EAAG,QAAU,IAAA,EAAI;MAC9D,GAAA,EAAG,QAAU,EAAA,YAAW,CAAA,EAAI;AAC5B,IAAA,YAAA,GAAA,WAAe,CAAA,KAAY,CAAA,GAAK,CAAC,QAAY,EAAA;MAChD,WAAA,EAAA;KAEG,CAAA;;SAEM,CAAA,MAAA,KAAA,uBAA8B,EAAE;AAEtC;sBAC2D,GAAA,IAAA,CAAA,SAAA,CAAA,CAAA,CAAA;oBAC3C,KAAC,oBAAe,CAAA,aAAwB,EAAA;;AACjD,MAAA,yBAAqB,GAAA,cAAA,CAAA,SAAqB,CAAA,IAAQ;eACW,YAAA,KAAA,oBAAA,CAAA,QAAA,EAAA;;kBAEnE,CAAA,YAAA,GAAA,cAAA,CAAA,SAAA,CAAA,OAAA,CAAA;;;;AAGG,MAAA,YAAA,CAAA,YAAa,GAAA,YAAe;kBAChB,CAAA,6BAAgB,CAAA,SAAwB,CAAA,OAAQ,CAAA;;AAG5D,MAAA,IAAA,SAAa,CAAA,GAAA,EAAA;oBACG,CAAA,2BAAc,CAAA,SAAwB,CAAA,GAAA,CAAA;aACrD,IAAA,SAAA,CAAA,IAAA,EAAA;AAAM,QAAA,YAAA,CAAI,UAAU,GAAI,CAAA,KAAG,EAAA,cAAA,CAAA,SAAA,CAAA,IAAA,CAAA,CAAA,CAAA;;;WAG/B;YACM,EAAA,GAAA,CAAA,MAAA;eACG,EAAA,GAAE,CAAG,SAAO;kBACT;eACG;;;;MAInB,GAAA,CAAA,MAAA,KAAA,MAAA,CAAA,OAAA,EAAA;;QAEG,iBAAwC,CAAA,MAAA,KAAA,CAAA,IAAA,iBAAA,CAAA,MAAA,KAAA,CAAA,KAAA,iBAAA,CAAA,CAAA,CAAA,KAAA,MAAA,IAAA,iBAAA,CAAA,CAAA,CAAA,KAAA,WAAA,CAAA,EAAA;AACxC;AAEI,MAAA,OAAC;AACG,QAAA,MAAA,EAAA;iBAE2D,EAAA,GAAA,CAAA,SAAA;oBACxD;iBACG,EAAA,gBAAY,CAAA,SAAA,EAAA,GAAA,CAAA,MAAA,CAAA;;;;;yBAKpB,CAAA,MAAA,IAAA,CAAA,IAAA,iBAAA,CAAA,CAAA,CAAA,KAAA,EAAA,EAAA;;UAGiD,iBAAA,CAAA,MAAA,IAAA,CAAA,IAAA,iBAAA,CAAA,CAAA,CAAA,KAAA,EAAA,EAAA;AACvD;cACiC,oBAAA,GAAA,iBAAA,CAAA,CAAA,CAAA;AAE7B,QAAA,MAAA,UAAqB,GAAA,iBAAW,CAAC,CAAA,CAAA;;AAE7B,QAAA,MAAA,8BAA6B,CAAA,oBAAoB,CAAC,CAAA,QAAA,CAAA,oBAAA,CAAA;AAClD,QAAA,IAAA,4BAAmB,EAAA;sBAEoC,CAAA,YAAA,GAAA,oBAAA;AACvD,UAAA,YAAM,CAAc,UAAA,GAAA,UAAU;AAI9B,UAAA,OAAA;AACI,YAAA,MAAA,EAAA,GAAA,CAAA,MAAA;AACA,YAAA,SAAA,EAAA,GAAA,CAAA,SAAa;wBAEN;uCACe,CAAA,SAAA,EAAA,GAAA,CAAA,MAAA,CAAA;;;;;;;yBAO7B,CAAA,CAAA,CAAA,KAAA,EAAA,EAAA;kBACJ,CAAA,YAAA,GAAA,iBAAA,CAAA,CAAA,CAAA;;AAGD,IAAA,IAAA,wBAAwB,KAAK,CAAA;AACzB;YACH,oBAAA,GAAA,iBAAA,CAAA,CAAA,CAAA;AAED,MAAA,MAAI,8BAA8B,EAAE,CAAC;;AAEjC,MAAA,MAAA,8BAA6B,CAAA,oBAAqB,CAAA,CAAA,QAAA,CAAA,oBAAA,CAAA;AAClD,MAAA,IAAA,CAAA;cAEyD,IAAA,KAAA,CAAA,CAAA,yCAAA,EAAA,oBAAA,CAAA,0CAAA,CAAA,CAAA;AACzD;;AAKI,MAAA,YAAA,CAAA,YAAe;kBAGlB,CAAA,UAAA,GAAA,UAAA;eAEoC,iBAAA,CAAA,MAAA,KAAA,CAAA,EAAA;AACrC;AACA,MAAA,MAAA,6BAA0B,GAAA,iBAAW,CAAA,CAAA,CAAA;;AAClC,MAAA,MAAA,uBAAsB,CAAA,MAAW,CAAA,oBAAI,CAAA,CAAA,QAAA,CAAA,6BAAA,CAAA;wBACkB,EAAA;AAC1D;cAEqC,IAAA,KAAA,CAAA,CAAA,yCAAA,EAAA,6BAAA,CAAA,4BAAA,CAAA,CAAA;AACrC;;kBAKqD,CAAA,aAAA,GAAA,6BAAA;AACjD,KAAA,MAAA,IAAA,iBACI;;kBAI2B,CAAA,aAAA,GAAA,iBAAA,CAAA,CAAA,CAAA;AACnC,MAAA,MAAA,oBAAa,GAAA,iBAAgB,CAAA,CAAA,CAAA;YAChC,UAAA,GAAA,iBAAA,CAAA,CAAA,CAAA;AAAM;YACH,cAAqD,GAAA,MAAA,CAAA,MAAA,CAAA,oBAAA,CAAA,CAAA,QAAA,CAAA,oBAAA,CAAA;AACrD,MAAA,IAAA,CAAA,cAAa,EAAa;AAC1B,QAAA,MAAA,IAAM,gDAA4C,EAAA,oBAAA,CAAA,0CAAA,CAAA,CAAA;AAClD;;AAGA,MAAA,YAAM,CAAc,YAAA,GAAA,oBAAqC;kBAItC,CAAA,UAAA,GAAA,UAAG;AAClB;;;AAMJ,IAAA,MAAA,EAAA,GAAA,CAAA,MAAA;AACA,IAAA,SAAA,EAAA,GAAA,CAAA,SAAa;gBAChB;IACL,SAAC,EAAA,gBAAA,CAAA,SAAA,EAAA,GAAA,CAAA,MAAA,CAAA;IAED;;;;;;;AAOH,SAAA,4BAAA,CAAA,SAAA,EAAA;AAED,EAAA,MAAA;;;AAGG,GAAA,GAAA,SAAA,CAAA,YAAA;AACH;MACU;IAEN,OAA+D,CAAA;;;MAG9D,YAAA,EAAA;IAED,OAA2E,CAAA;;;;;;SAOU,CAAA;;;AAGzF;AAEA;;;;AAIG,EAAA,OAAA,uBAAA,CAAA,QAAA,CAAA,SAAA,CAAA;AACH;AACI;AACJ;AAEA;;;;AAIG,EAAA,MAAA,SAAA,GAAA,MAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA,MAAA,CAAA,GAAA,IAAA,sBAAA,CAAA,GAAA,CAAA,CAAA;AACH,EAAM,IAAA,SAAA,CAAU,MAAuB,GAAA,CAAA,EAAA;IAKnC,OAAM;AAEN,MAAA,cAAc;eACH;AACH,MAAA,OAAA,EAAA,CAAA,6DAAc,EAAA,SAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA,6BAAA;;;SAKjB;IACL,OAAC,EAAA,IAAA;IAED,SAAO,EAAA;AACH,GAAA;AACA"}
@@ -4,4 +4,5 @@ export declare function buildNodeContext(userContext: UserContext, schemaId?: Co
4
4
  export declare function buildPermissionNodeContext(userContext: UserContext): IConfigurationNodeContextInput;
5
5
  export declare function buildPolicyNodeContext(userContext: UserContext): IConfigurationNodeContextInput;
6
6
  export declare function buildRoleNodeContext(userContext: UserContext): IConfigurationNodeContextInput;
7
+ export declare function buildUiLayoutNodeContext(userContext: UserContext): IConfigurationNodeContextInput;
7
8
  export {};
@@ -15,4 +15,7 @@ function buildPolicyNodeContext(userContext) {
15
15
  }
16
16
  function buildRoleNodeContext(userContext) {
17
17
  return buildNodeContext(userContext, ConfigurationSchemaId.UserRole, RegistryExtensions.DefaultConfiguration);
18
- }export{buildNodeContext,buildPermissionNodeContext,buildPolicyNodeContext,buildRoleNodeContext};//# sourceMappingURL=nodeContext.js.map
18
+ }
19
+ function buildUiLayoutNodeContext(userContext) {
20
+ return buildNodeContext(userContext, ConfigurationSchemaId.UiLayout, RegistryExtensions.DefaultConfiguration);
21
+ }export{buildNodeContext,buildPermissionNodeContext,buildPolicyNodeContext,buildRoleNodeContext,buildUiLayoutNodeContext};//# sourceMappingURL=nodeContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodeContext.js","sources":["../../src/utils/nodeContext.ts"],"sourcesContent":[null],"names":[],"mappings":"8DAGgB,SAAA,gBAAgB,CAC5B,WAAwB,EACxB,QAAQ,GAAG,qBAAqB,CAAC,aAAa,EAC9C,aAAoC,GAAA,kBAAkB,CAAC,oBAAoB,EAAA;SAEpE;AACH,IAAA,QAAA,EAAA,QAAkB;YACV,EAAA,WAAa,EAAA,QAAU;iBAClB;SACR,EAAA,WAAa,EAAA,KAAO;aAChB,EAAA,WAAa,EAAA;;AAE9B;AAEM,SAAU,0BAA0B,CAAC,WAAwB,EAAA;AAC/D,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,UAAW,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAClH;AACM,SAAU,sBAAsB,CAAC,WAAwB,EAAA;AAC3D,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,MAAO,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAC9G;AAEM,SAAU,oBAAoB,CAAC,WAAwB,EAAA;AACzD,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,QAAS,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAChH"}
1
+ {"version":3,"file":"nodeContext.js","sources":["../../src/utils/nodeContext.ts"],"sourcesContent":[null],"names":[],"mappings":"8DAGgB,SAAA,gBAAgB,CAC5B,WAAwB,EACxB,QAAQ,GAAG,qBAAqB,CAAC,aAAa,EAC9C,aAAoC,GAAA,kBAAkB,CAAC,oBAAoB,EAAA;SAEpE;AACH,IAAA,QAAA,EAAA,QAAkB;YACV,EAAA,WAAa,EAAA,QAAU;iBAClB;SACR,EAAA,WAAa,EAAA,KAAO;aAChB,EAAA,WAAa,EAAA;;AAE9B;AAEM,SAAU,0BAA0B,CAAC,WAAwB,EAAA;AAC/D,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,UAAW,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAClH;AACM,SAAU,sBAAsB,CAAC,WAAwB,EAAA;AAC3D,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,MAAO,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAC9G;AAEM,SAAU,oBAAoB,CAAC,WAAwB,EAAA;AACzD,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,QAAS,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAChH;AAEM,SAAU,wBAAwB,CAAC,WAAwB,EAAA;AAC7D,EAAA,OAAA,gBAAuB,CAAA,WAAY,EAAA,qBAAuB,CAAA,QAAS,EAAA,kBAAoB,CAAA,oBAAqB,CAAA;AAChH"}
@@ -1,5 +1,11 @@
1
1
  import { URI } from '@vscode-alt/monaco-editor/esm/vs/base/common/uri';
2
2
  import { IPreferencesOpenOptionsInput, ConfigurationTarget } from 'common';
3
+ export interface IExtendedPreferencesOpenOptionsInput extends IPreferencesOpenOptionsInput {
4
+ /** Schema ID for configuration schema validation */
5
+ schemaId?: string;
6
+ /** Array of extension names for multi-extension configurations */
7
+ extensionNames?: string[];
8
+ }
3
9
  /**
4
10
  * Tries to parse the "extension name" from a URI path that might look like:
5
11
  * /myExtension/settings.json
@@ -11,8 +17,8 @@ import { IPreferencesOpenOptionsInput, ConfigurationTarget } from 'common';
11
17
  */
12
18
  export declare function parseExtensionFromDefaultSettingsUri(resource: URI): string;
13
19
  export declare function getDefaultSettingsURI(target: ConfigurationTarget, options: IPreferencesOpenOptionsInput): URI;
14
- export declare function getEditableSettingsURI(resource: URI, options?: IPreferencesOpenOptionsInput): URI;
15
- export declare function getOpenSettings(target: ConfigurationTarget, resource: URI, options: IPreferencesOpenOptionsInput): {
20
+ export declare function getEditableSettingsURI(resource: URI, options?: IExtendedPreferencesOpenOptionsInput): URI;
21
+ export declare function getOpenSettings(target: ConfigurationTarget, resource: URI, options: IExtendedPreferencesOpenOptionsInput): {
16
22
  editableSettingsInput: URI;
17
23
  defaultPreferencesInput: URI;
18
24
  };
@@ -1,5 +1,24 @@
1
- import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {ConfigurationContributionNames}from'common';/* eslint-disable import/no-extraneous-dependencies */
1
+ import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {ConfigurationContributionNames}from'common';import {isReservedCdecodeParam}from'./cdecodeUri.js';/* eslint-disable import/no-extraneous-dependencies */
2
2
  const KNOWN_SETTINGS_FILES = new Set(['settings.json', 'organizationSettings.json', 'resourceSettings.json', 'machineSettings.json', 'applicationSettings.json', 'organizationsettings.json', 'resourcesettings.json', 'machinesettings.json', 'applicationsettings.json']);
3
+ /**
4
+ * Filter out meta-related parameters from a query string.
5
+ * Meta parameters should not appear in defaultPreferencesInput URIs.
6
+ */
7
+ function filterMetaParametersFromQuery(queryString) {
8
+ if (!queryString) {
9
+ return '';
10
+ }
11
+ // Parse the query string into parameters
12
+ const params = new URLSearchParams(queryString);
13
+ const filteredParams = new URLSearchParams();
14
+ // Keep only non-meta parameters
15
+ for (const [key, value] of params.entries()) {
16
+ if (!isReservedCdecodeParam(key)) {
17
+ filteredParams.append(key, value);
18
+ }
19
+ }
20
+ return filteredParams.toString();
21
+ }
3
22
  /**
4
23
  * Tries to parse the "extension name" from a URI path that might look like:
5
24
  * /myExtension/settings.json
@@ -39,13 +58,15 @@ function parseExtensionFromDefaultSettingsUri(resource) {
39
58
  }
40
59
  function getDefaultSettingsURI(target, options) {
41
60
  const extension = options.extensionName || ConfigurationContributionNames.Settings;
61
+ // Filter out meta parameters from the query since we don't want them in defaultPreferencesInput
62
+ const filteredQuery = filterMetaParametersFromQuery(options.query);
42
63
  switch (target) {
43
64
  case 4 /* ConfigurationTarget.ORGANIZATION */:
44
65
  return URI.from({
45
66
  scheme: 'cdecode',
46
67
  authority: options.authority,
47
68
  path: `/${extension}/organizationSettings.json`,
48
- query: options.query,
69
+ query: filteredQuery,
49
70
  fragment: options.defaultFragment
50
71
  });
51
72
  case 5 /* ConfigurationTarget.ORGANIZATION_RESOURCE */:
@@ -53,7 +74,7 @@ function getDefaultSettingsURI(target, options) {
53
74
  scheme: 'cdecode',
54
75
  authority: options.authority,
55
76
  path: `/${extension}/resourceSettings.json`,
56
- query: options.query,
77
+ query: filteredQuery,
57
78
  fragment: options.defaultFragment
58
79
  });
59
80
  default:
@@ -61,7 +82,7 @@ function getDefaultSettingsURI(target, options) {
61
82
  scheme: 'cdecode',
62
83
  authority: options.authority,
63
84
  path: `/${extension}/settings.json`,
64
- query: options.query,
85
+ query: filteredQuery,
65
86
  fragment: options.defaultFragment
66
87
  });
67
88
  }
@@ -77,15 +98,42 @@ function getEditableSettingsURI(resource, options = {
77
98
  // If there's a subFragment, stitch it into the main fragment
78
99
  fragment = fragment ? fragment.concat(`.${options.subFragment}`) : options.subFragment;
79
100
  }
80
- if (!options.query) ;
101
+ // Build query string with meta parameters if provided
102
+ let queryString = options.query || resource.query || '';
103
+ // Add meta parameters to query string if provided
104
+ const metaParams = [];
105
+ if (options.schemaId) {
106
+ metaParams.push(`meta_schemaId=${encodeURIComponent(options.schemaId)}`);
107
+ }
108
+ if (options.extensionNames && options.extensionNames.length > 0) {
109
+ // Join multiple extension names with commas and encode
110
+ const extensionNamesValue = options.extensionNames.join(',');
111
+ metaParams.push(`meta_extensionNames=${encodeURIComponent(extensionNamesValue)}`);
112
+ }
113
+ // Combine existing query with meta parameters
114
+ if (metaParams.length > 0) {
115
+ const metaQueryString = metaParams.join('&');
116
+ if (queryString) {
117
+ // If there's existing query, decode it first, add meta params, then re-encode
118
+ try {
119
+ const existingQuery = decodeURIComponent(queryString);
120
+ queryString = encodeURIComponent(`${existingQuery}&${metaQueryString}`);
121
+ } catch {
122
+ // If decoding fails, just append
123
+ queryString = encodeURIComponent(`${queryString}&${metaQueryString}`);
124
+ }
125
+ } else {
126
+ queryString = encodeURIComponent(metaQueryString);
127
+ }
128
+ }
81
129
  // Fall back to the resource's existing fragment if neither fragment nor subFragment is provided
82
130
  const finalFragment = fragment ?? resource.fragment;
83
- // Create a new URI with the possibly updated fragment, make sure to include authority.
131
+ // Create a new URI with the possibly updated fragment and query, make sure to include authority.
84
132
  const newResource = URI.from({
85
133
  scheme: resource.scheme,
86
134
  authority: resource.authority,
87
135
  path: resource.path,
88
- query: resource.query,
136
+ query: queryString,
89
137
  fragment: finalFragment
90
138
  });
91
139
  // Always convert to resource-based URI
@@ -1 +1 @@
1
- {"version":3,"file":"preferenceUri.js","sources":["../../src/utils/preferenceUri.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preferenceUri.js","sources":["../../src/utils/preferenceUri.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,4 +1,20 @@
1
- import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {ConfigCollectionName,Scheme}from'common';import {parseCdecodeUri,generateCdecodeUri}from'./cdecodeUri.js';import {strictConvertToResourceUri}from'./resourceUriConversion.js';/**
1
+ import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {ConfigCollectionName,Scheme}from'common';import {parseCdecodeUri,generateCdecodeUri,isReservedCdecodeParam}from'./cdecodeUri.js';import {strictConvertToResourceUri}from'./resourceUriConversion.js';/**
2
+ * Filter out meta-related parameters from query data.
3
+ * Meta parameters (like meta_schemaId, meta_extensionNames) should not appear in orgUri or resourceUri.
4
+ */
5
+ function filterMetaParameters(queryData) {
6
+ if (!queryData) {
7
+ return {};
8
+ }
9
+ const filtered = {};
10
+ for (const [key, value] of Object.entries(queryData)) {
11
+ if (!isReservedCdecodeParam(key)) {
12
+ filtered[key] = value;
13
+ }
14
+ }
15
+ return filtered;
16
+ }
17
+ /**
2
18
  * Splits a given cdecode URI ino an organization URI (orgUri) and, if available, a resource-specific URI (resourceUri).
3
19
  *
4
20
  * - If the incoming URI contains resource-specific segments (i.e. resourceType and resourceId), the organization URI
@@ -22,11 +38,15 @@ function splitCdecodeUri(cdecodeUri) {
22
38
  orgParams.resourceGroup = parsedUri.pathSegments.resourceGroup;
23
39
  }
24
40
  // Generate the base organization URI excluding resourceType and resourceId.
25
- const orgUri = generateCdecodeUri(cdecodeUri.authority, orgParams, {},
26
- // no additional query parameters
41
+ // Filter out meta parameters to avoid them appearing in orgUri
42
+ const filteredQueryData = filterMetaParameters(parsedUri.queryData);
43
+ const orgUri = generateCdecodeUri(cdecodeUri.authority, orgParams, filteredQueryData,
44
+ // use filtered query parameters (no meta params)
27
45
  parsedUri.fragmentData);
28
46
  // Extract the resource ID from resourceId segment which may include a prefix like name:value
29
- let resourceId = parsedUri.pathSegments.resourceId;
47
+ let {
48
+ resourceId
49
+ } = parsedUri.pathSegments;
30
50
  const colonIndex = resourceId.indexOf(':');
31
51
  if (colonIndex > 0) {
32
52
  resourceId = resourceId.substring(colonIndex + 1);
@@ -56,14 +76,12 @@ function splitOrgUri(orgUri) {
56
76
  organization,
57
77
  resourceGroup
58
78
  } = parsedUri.pathSegments;
59
- // Generate the base organization URI
60
- const baseOrgUri = URI.from({
61
- scheme: Scheme.CDECODE_RESOURCE,
62
- authority: orgUri.authority,
63
- path: `/${ConfigCollectionName.Organizations}`,
64
- fragment: parsedUri.fragmentData,
65
- query: `name=${organization}`
66
- });
79
+ // Generate the base organization URI - keep cdecode scheme and just the org path
80
+ // Filter out meta parameters to avoid them appearing in baseOrgUri
81
+ const filteredQueryData = filterMetaParameters(parsedUri.queryData);
82
+ const baseOrgUri = generateCdecodeUri(orgUri.authority, {
83
+ organization
84
+ }, filteredQueryData, parsedUri.fragmentData);
67
85
  // If there's no resource group, return just the base org URI
68
86
  if (!resourceGroup) {
69
87
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"splitCdecodeUri.js","sources":["../../src/utils/splitCdecodeUri.ts"],"sourcesContent":[null],"names":[],"mappings":"4PAwCA;;;;;;;;;;AAUG;AACG,SAAU,eAAe,CAAC,UAAe,EAAA;AAC3C,EAAA,MAAA,YAAkB,eAAA,CAAA,UAAgB,CAAA;;AAGlC,EAAA,IAAA,SAAa,CAAA,YAAa,CAAA,YAAa,IAAA,SAAa,CAAA,YAAa,CAAA,UAAW,EAAA;;AAExE,IAAA,MAAA;AACI,MAAA,YAAA,EAAA,SAAc,CAAA,YAAU,CAAA;;;AAI5B,IAAA,IAAA,sBAAc,CAAA,aAAa,EAAA;eACd,CAAA,yBAAiB,CAAA,YAAsB,CAAA;;;AAIpD,IAAA,MAAA,MAAY,GAAA,kBAAqB,CAAA,UACnB,CAAA,SAAU,EAAA,SACX,EAAA,EAAA;;aAKgF,CAAA,YAAA,CAAA;AAC7F;QACA,UAAM,GAAA,SAAuB,CAAA,uBAAc;AAC3C,IAAA,MAAA,UAAc,GAAA,UAAO,CAAA,OAAA,CAAA,GAAA,CAAA;kBACP,GAAA,CAAA,EAAA;gBACb,GAAA,UAAA,CAAA,SAAA,CAAA,UAAA,GAAA,CAAA,CAAA;;;AAID;AAEA,IAAA,MAAA,WAAS,GAAQ,0BAAc,CAAA,UAAA,CAAA;IACnC,OAAC;MAE4F,MAAA;AAC7F,MAAA;AACJ,KAAC;AAED;;;;;AAKG;AACH;AACI;;;AAIA;;SAEa,WAAkB,CAAA,MAAA,EAAA;AAC3B,EAAA,MAAA,SAAM,GAAwB,eAAA,CAAA;QAC9B;gBACe;AAClB,IAAA;MAE4D,SAAA,CAAA,YAAA;;QAEzD,UAAmB,GAAA,GAAA,CAAA,IAAE,CAAC;IAC1B,MAAC,EAAA,MAAA,CAAA,gBAAA;IAED,SAA4C,EAAA,MAAA,CAAA,SAAA;IAC5C,IAAM,EAAA,CAAA,CAAA,EAAA,oBAA0B,CAAA,aAAY,CAAC,CAAC;IAC9C,gCAA0B;AAElB,IAAA,KAAC,EAAE,CAAA,KAAA,EAAA,YAAuB,CAAA;;;AAIlC,EAAA,IAAA,CAAA,aAAsB,EAAA;WACZ;;;AAGN;;AAEH,EAAA,MAAE,UAAA,GAAA,aAAA,CAAA,OAAA,CAAA,GAAA,CAAA;QAEI,CAAA,iBAAA,EAAA,eAAA,CAAA,GAAA,UAAA,KAAA,EAAA,GAAA,CAAA,aAAA,CAAA,SAAA,CAAA,CAAA,EAAA,UAAA,CAAA,EAAA,aAAA,CAAA,SAAA,CAAA,UAAA,GAAA,CAAA,CAAA,CAAA,GAAA,CAAA,oBAAA,CAAA,QAAA,EAAA,aAAA,CAAA;;QAEH,gBAAgB,GAAA,GAAA,CAAA,IAAA,CAAA;UACC,EAAA,MAAA,CAAA,gBAAA;aACF,EAAA,MAAA,CAAA,SAAA;QACjB,EAAA,CAAA,CAAA,EAAA,iBAAA,CAAA,CAAA;AACN,IAAC,KAAA,EAAA,CAAA,QAAA,EAAA,YAAA,CAAA,KAAA,EAAA,eAAA,CAAA,CAAA;;;;;;;;;"}
1
+ {"version":3,"file":"splitCdecodeUri.js","sources":["../../src/utils/splitCdecodeUri.ts"],"sourcesContent":[null],"names":[],"mappings":"mRAwCA;;;AAGG;AACH,SAAS,oBAAoB,CACzB,SAAwD,EAAA;MAEpD,CAAA,SAAU,EAAA;AACV,IAAA,OAAA,EAAA;;QAGE,QAAA,GAA8C,EAAA;AACpD,EAAA,KAAA,MAAW,CAAA,GAAI,EAAA,UAAQ,MAAU,CAAA,OAAQ,CAAA,SAAU,CAAA,EAAC;AAChD,IAAA,IAAA,CAAA,sBAA2B,CAAA,GAAA,CAAC,EAAG;AAC3B,MAAA,QAAA,CAAA,GAAA,CAAA,GAAS,KAAI;;;AAGrB,EAAA,OAAA;AACJ;AAEA;;;;;;;;;;AAUG;AACG,SAAU,eAAe,CAAC,UAAe,EAAA;AAC3C,EAAA,MAAA,YAAkB,eAAA,CAAA,UAAgB,CAAA;;AAGlC,EAAA,IAAA,SAAa,CAAA,YAAa,CAAA,YAAa,IAAA,SAAa,CAAA,YAAa,CAAA,UAAW,EAAA;;AAExE,IAAA,MAAA;AACI,MAAA,YAAA,EAAA,SAAc,CAAA,YAAU,CAAA;;;AAI5B,IAAA,IAAA,sBAAc,CAAA,aAAa,EAAA;eACd,CAAA,yBAAiB,CAAA,YAAsB,CAAA;;;;UAK9C,iBAAA,GAAA,oBAAwC,CAAA,mBAAW,CAAA;AACzD,IAAA,MAAA,MAAY,GAAA,kBAAqB,CAAA,UACnB,CAAA,SAAU,EAAA,SACX,EAAA,iBACQ;;aAIwE,CAAA,YAAA,CAAA;AAC7F;QACA;AACA,MAAA;iBACc,CAAA;UACb,UAAA,GAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA;QAED,UAAmE,GAAA,CAAA,EAAA;gBACgB,GAAA,UAAA,CAAA,SAAA,CAAA,UAAA,GAAA,CAAA,CAAA;AACnF;AAEA;;IAGJ,MAA6F,WAAA,GAAA,0BAAA,CAAA,UAAA,CAAA;AAC7F,IAAA,OAAO;AACX,MAAC,MAAA;AAED,MAAA;;;;;AAKG,IAAA,MAAA,EAAA;AACH,GAAM;AACF;;;;;AAMA;;AAQI,SAAc,WAAG,CAAA,MAAA,EAAA;QACjB,SAAS,GAAU,eAAG,CAAA,MAAA,CAAA;QACzB;IAED,YAA4C;IAC5C;MACM,sBAAkB;AAEhB;;QAG6D,iBAAA,GAAA,oBAAA,CAAA,SAAA,CAAA,SAAA,CAAA;AACrE,EAAA,MAAA,UAAsB,GAAA,kBAAY,CAAA,MAAA,CAAA,SAAA,EAAA;;sBAEb,EAAA,SAAU,CAAA,YAAA,CAAA;;AAE3B,EAAA,IAAA,CAAA,aAAO,EAAA;WACC;AACX,MAAC;KAEK;;;QAGH,UAAiB,GAAA,aAAA,CAAA,OAAA,CAAA,GAAA,CAAA;QACjB,CAAe,iBAAA,EAAA,eAAA,CAAA,GAAA,UAAA,KAAA,EAAA,GAAA,CAAA,aAAA,CAAA,SAAA,CAAA,CAAA,EAAA,UAAA,CAAA,EAAA,aAAA,CAAA,SAAA,CAAA,UAAA,GAAA,CAAA,CAAA,CAAA,GAAA,CAAA,oBAAA,CAAA,QAAA,EAAA,aAAA,CAAA;;AAEvB,EAAC,MAAA,gBAAA,GAAA,GAAA,CAAA,IAAA,CAAA;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adminide-stack/core",
3
- "version": "12.0.4-alpha.6",
3
+ "version": "12.0.4-alpha.8",
4
4
  "description": "AdminIDE core for higher packages to depend on",
5
5
  "license": "UNLICENSED",
6
6
  "author": "CDMBase LLC",
@@ -30,7 +30,7 @@
30
30
  "vscode-uri": "^3.0.8"
31
31
  },
32
32
  "devDependencies": {
33
- "common": "12.0.4-alpha.6"
33
+ "common": "12.0.4-alpha.8"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "@common-stack/server-core": ">=0.5.21",
@@ -42,5 +42,5 @@
42
42
  "typescript": {
43
43
  "definition": "lib/index.d.ts"
44
44
  },
45
- "gitHead": "06bf1f43d4f39fb3194835da633127a54ae756b2"
45
+ "gitHead": "8d67ec7fe9e9bfa54742c7f373c52163bf387841"
46
46
  }