@adminide-stack/core 12.0.4-alpha.0 → 12.0.4-alpha.101

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 (45) hide show
  1. package/lib/constants/routes.d.ts +8 -0
  2. package/lib/constants/routes.js +16 -1
  3. package/lib/constants/routes.js.map +1 -1
  4. package/lib/core/BaseDisposable.d.ts +91 -0
  5. package/lib/core/BaseDisposable.js +97 -0
  6. package/lib/core/BaseDisposable.js.map +1 -0
  7. package/lib/core/configurations/configuration.d.ts +2 -1
  8. package/lib/core/configurations/configuration.js.map +1 -1
  9. package/lib/core/configurations/helpers/configuration.d.ts +1 -1
  10. package/lib/core/configurations/helpers/configuration.js.map +1 -1
  11. package/lib/core/disposable.js +4 -2
  12. package/lib/core/disposable.js.map +1 -1
  13. package/lib/core/index.d.ts +1 -0
  14. package/lib/core/organization/organization.d.ts +3 -1
  15. package/lib/core/organization/organization.js +8 -1
  16. package/lib/core/organization/organization.js.map +1 -1
  17. package/lib/index.js +1 -1
  18. package/lib/interfaces/configuration/configuraton-service.d.ts +10 -2
  19. package/lib/interfaces/epicDependencies.d.ts +14 -0
  20. package/lib/interfaces/index.d.ts +1 -0
  21. package/lib/interfaces/organization/organization-context-service.d.ts +1 -1
  22. package/lib/interfaces/organization/organization-context.js +4 -1
  23. package/lib/interfaces/organization/organization-context.js.map +1 -1
  24. package/lib/interfaces/organization/organizations-context.d.ts +1 -0
  25. package/lib/interfaces/organization-key-context.d.ts +1 -1
  26. package/lib/services/abstract-configuration.d.ts +9 -1
  27. package/lib/services/abstract-configuration.js +24 -1
  28. package/lib/services/abstract-configuration.js.map +1 -1
  29. package/lib/services/abstract-organization-context-service.js +2 -2
  30. package/lib/services/abstract-organization-context-service.js.map +1 -1
  31. package/lib/utils/cdecodeUri.d.ts +18 -1
  32. package/lib/utils/cdecodeUri.js +120 -22
  33. package/lib/utils/cdecodeUri.js.map +1 -1
  34. package/lib/utils/generated-settings-id.d.ts +1 -1
  35. package/lib/utils/generated-settings-id.js +3 -3
  36. package/lib/utils/generated-settings-id.js.map +1 -1
  37. package/lib/utils/nodeContext.d.ts +15 -2
  38. package/lib/utils/nodeContext.js +27 -6
  39. package/lib/utils/nodeContext.js.map +1 -1
  40. package/lib/utils/preferenceUri.d.ts +11 -5
  41. package/lib/utils/preferenceUri.js +76 -27
  42. package/lib/utils/preferenceUri.js.map +1 -1
  43. package/lib/utils/splitCdecodeUri.js +30 -12
  44. package/lib/utils/splitCdecodeUri.js.map +1 -1
  45. package/package.json +3 -3
@@ -1,20 +1,23 @@
1
- import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {ConfigurationContributionNames}from'common';const KNOWN_SETTINGS_FILES = new Set(['settings.json', 'organizationSettings.json', 'resourceSettings.json', 'machineSettings.json', 'applicationSettings.json', 'organizationsettings.json', 'resourcesettings.json', 'machinesettings.json', 'applicationsettings.json']);
2
- function getOpenSettings(target, resource, options) {
3
- const editableSettingsResource = getEditableSettingsURI(resource, options);
4
- const mergedOptions = {
5
- ...options,
6
- authority: editableSettingsResource.authority,
7
- query: editableSettingsResource.query,
8
- // Use editableSettingsResource.fragment if none was explicitly set.
9
- defaultFragment: options?.defaultFragment ?? editableSettingsResource.fragment,
10
- // Use the provided extensionName, or derive it from the resource's path
11
- extensionName: options?.extensionName ?? parseExtensionFromDefaultSettingsUri(editableSettingsResource)
12
- };
13
- const defaultPreferencesResource = getDefaultSettingsURI(target, mergedOptions);
14
- return {
15
- editableSettingsInput: editableSettingsResource,
16
- defaultPreferencesInput: defaultPreferencesResource
17
- };
1
+ import {URI}from'@vscode-alt/monaco-editor/esm/vs/base/common/uri.js';import {SystemContributionExtensionNames}from'common';import {isReservedCdecodeParam}from'./cdecodeUri.js';/* eslint-disable import/no-extraneous-dependencies */
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();
18
21
  }
19
22
  /**
20
23
  * Tries to parse the "extension name" from a URI path that might look like:
@@ -39,7 +42,7 @@ function parseExtensionFromDefaultSettingsUri(resource) {
39
42
  return pathSegments[pathSegments.length - 2];
40
43
  }
41
44
  // If there's only one segment overall, fallback
42
- return ConfigurationContributionNames.Settings;
45
+ return SystemContributionExtensionNames.Settings;
43
46
  }
44
47
  // 2) If it still ends with .json but not a standard settings file, just remove ".json"
45
48
  // and treat that as the extension name. (Optional logic)
@@ -48,20 +51,22 @@ function parseExtensionFromDefaultSettingsUri(resource) {
48
51
  // This snippet assumes you want "otherFile" from the last segment. If you instead want
49
52
  // the second-to-last segment as an "extensionName," just adjust accordingly.
50
53
  const trimmed = lastSegment.replace(/\.json$/, '');
51
- return trimmed || ConfigurationContributionNames.Settings;
54
+ return trimmed || SystemContributionExtensionNames.Settings;
52
55
  }
53
56
  // 3) If no recognized .json file, just fallback
54
- return ConfigurationContributionNames.Settings;
57
+ return SystemContributionExtensionNames.Settings;
55
58
  }
56
59
  function getDefaultSettingsURI(target, options) {
57
- const extension = options.extensionName || ConfigurationContributionNames.Settings;
60
+ const extension = options.extensionName || SystemContributionExtensionNames.Settings;
61
+ // Filter out meta parameters from the query since we don't want them in defaultPreferencesInput
62
+ const filteredQuery = filterMetaParametersFromQuery(options.query);
58
63
  switch (target) {
59
64
  case 4 /* ConfigurationTarget.ORGANIZATION */:
60
65
  return URI.from({
61
66
  scheme: 'cdecode',
62
67
  authority: options.authority,
63
68
  path: `/${extension}/organizationSettings.json`,
64
- query: options.query,
69
+ query: filteredQuery,
65
70
  fragment: options.defaultFragment
66
71
  });
67
72
  case 5 /* ConfigurationTarget.ORGANIZATION_RESOURCE */:
@@ -69,7 +74,7 @@ function getDefaultSettingsURI(target, options) {
69
74
  scheme: 'cdecode',
70
75
  authority: options.authority,
71
76
  path: `/${extension}/resourceSettings.json`,
72
- query: options.query,
77
+ query: filteredQuery,
73
78
  fragment: options.defaultFragment
74
79
  });
75
80
  default:
@@ -77,7 +82,7 @@ function getDefaultSettingsURI(target, options) {
77
82
  scheme: 'cdecode',
78
83
  authority: options.authority,
79
84
  path: `/${extension}/settings.json`,
80
- query: options.query,
85
+ query: filteredQuery,
81
86
  fragment: options.defaultFragment
82
87
  });
83
88
  }
@@ -93,18 +98,62 @@ function getEditableSettingsURI(resource, options = {
93
98
  // If there's a subFragment, stitch it into the main fragment
94
99
  fragment = fragment ? fragment.concat(`.${options.subFragment}`) : options.subFragment;
95
100
  }
96
- 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
+ }
97
129
  // Fall back to the resource's existing fragment if neither fragment nor subFragment is provided
98
130
  const finalFragment = fragment ?? resource.fragment;
99
- // 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.
100
132
  const newResource = URI.from({
101
133
  scheme: resource.scheme,
102
134
  authority: resource.authority,
103
135
  path: resource.path,
104
- query: resource.query,
136
+ query: queryString,
105
137
  fragment: finalFragment
106
138
  });
107
139
  // Always convert to resource-based URI
108
140
  // return convertToResourceUri(newResource);
109
141
  return newResource;
142
+ }
143
+ function getOpenSettings(target, resource, options) {
144
+ const editableSettingsResource = getEditableSettingsURI(resource, options);
145
+ const mergedOptions = {
146
+ ...options,
147
+ authority: editableSettingsResource.authority,
148
+ query: editableSettingsResource.query,
149
+ // Use editableSettingsResource.fragment if none was explicitly set.
150
+ defaultFragment: options?.defaultFragment ?? editableSettingsResource.fragment,
151
+ // Use the provided extensionName, or derive it from the resource's path
152
+ extensionName: options?.extensionName ?? parseExtensionFromDefaultSettingsUri(editableSettingsResource)
153
+ };
154
+ const defaultPreferencesResource = getDefaultSettingsURI(target, mergedOptions);
155
+ return {
156
+ editableSettingsInput: editableSettingsResource,
157
+ defaultPreferencesInput: defaultPreferencesResource
158
+ };
110
159
  }export{getDefaultSettingsURI,getEditableSettingsURI,getOpenSettings,parseExtensionFromDefaultSettingsUri};//# sourceMappingURL=preferenceUri.js.map
@@ -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.0",
3
+ "version": "12.0.4-alpha.101",
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.0"
33
+ "common": "12.0.4-alpha.101"
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": "faed6960aeceadb1d7dad6b2fbb9aaf31500d905"
45
+ "gitHead": "cd4920c8390598ebaecd0142f331adf5ea1189dd"
46
46
  }