@handsontable/angular-wrapper 0.0.0-next-d9b3885-20250415 → 0.0.0-next-12aa113-20250602
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/esm2022/lib/editor/base-editor-adapter.mjs +2 -2
- package/esm2022/lib/hot-table.component.mjs +6 -6
- package/esm2022/lib/hot-table.module.mjs +6 -2
- package/esm2022/lib/renderer/hot-dynamic-renderer-component.service.mjs +2 -3
- package/esm2022/lib/services/hot-global-config.service.mjs +108 -0
- package/esm2022/lib/services/hot-settings-resolver.service.mjs +3 -3
- package/esm2022/public-api.mjs +2 -2
- package/fesm2022/handsontable-angular-wrapper.mjs +24 -22
- package/fesm2022/handsontable-angular-wrapper.mjs.map +1 -1
- package/lib/hot-table.component.d.ts +3 -3
- package/lib/hot-table.module.d.ts +4 -0
- package/lib/services/{hot-config.service.d.ts → hot-global-config.service.d.ts} +13 -13
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
- package/esm2022/lib/services/hot-config.service.mjs +0 -110
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { Injectable, InjectionToken, Inject } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* A constant representing the non-commercial and evaluation license.
|
|
6
|
-
* */
|
|
7
|
-
export const NON_COMMERCIAL_LICENSE = 'non-commercial-and-evaluation';
|
|
8
|
-
/**
|
|
9
|
-
* Type representing a theme name.
|
|
10
|
-
* Possible values include predefined themes and any custom string.
|
|
11
|
-
*/
|
|
12
|
-
export var PredefinedTheme;
|
|
13
|
-
(function (PredefinedTheme) {
|
|
14
|
-
PredefinedTheme["Main"] = "ht-theme-main";
|
|
15
|
-
PredefinedTheme["MainDark"] = "ht-theme-main-dark";
|
|
16
|
-
PredefinedTheme["MainDarkAuto"] = "ht-theme-main-dark-auto";
|
|
17
|
-
PredefinedTheme["Horizon"] = "ht-theme-horizon";
|
|
18
|
-
PredefinedTheme["HorizonDark"] = "ht-theme-horizon-dark";
|
|
19
|
-
PredefinedTheme["HorizonDarkAuto"] = "ht-theme-horizon-dark-auto";
|
|
20
|
-
})(PredefinedTheme || (PredefinedTheme = {}));
|
|
21
|
-
/**
|
|
22
|
-
* Injection token for providing a global default configuration.
|
|
23
|
-
*/
|
|
24
|
-
export const HOT_GLOBAL_CONFIG = new InjectionToken('HOT_GLOBAL_CONFIG', {
|
|
25
|
-
providedIn: 'root',
|
|
26
|
-
factory: () => ({})
|
|
27
|
-
});
|
|
28
|
-
/**
|
|
29
|
-
* Service for configuring Handsontable settings.
|
|
30
|
-
* This service allows setting and retrieving global configuration.
|
|
31
|
-
*/
|
|
32
|
-
export class HotConfigService {
|
|
33
|
-
/**
|
|
34
|
-
* The default configuration object for Handsontable.
|
|
35
|
-
*
|
|
36
|
-
* This object is used as the initial value for the configuration BehaviorSubject.
|
|
37
|
-
* It can be overridden by a global configuration provided through the
|
|
38
|
-
* {@link HOT_GLOBAL_CONFIG} injection token.
|
|
39
|
-
*
|
|
40
|
-
* @private
|
|
41
|
-
* @type {HotConfig}
|
|
42
|
-
*/
|
|
43
|
-
defaultConfig = {
|
|
44
|
-
license: undefined,
|
|
45
|
-
themeName: ''
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* A BehaviorSubject that holds the current Handsontable configuration.
|
|
49
|
-
*
|
|
50
|
-
* New configuration values can be emitted by calling next() on this subject.
|
|
51
|
-
* This allows subscribers to react to configuration changes dynamically.
|
|
52
|
-
*
|
|
53
|
-
* @private
|
|
54
|
-
* @type {BehaviorSubject<HotConfig>}
|
|
55
|
-
*/
|
|
56
|
-
configSubject = new BehaviorSubject(this.defaultConfig);
|
|
57
|
-
/**
|
|
58
|
-
* An Observable stream of the current Handsontable configuration.
|
|
59
|
-
*
|
|
60
|
-
* Components can subscribe to this observable to receive updates whenever the configuration changes.
|
|
61
|
-
*
|
|
62
|
-
* @returns The configuration as an observable stream.
|
|
63
|
-
*/
|
|
64
|
-
get config$() {
|
|
65
|
-
return this.configSubject.asObservable();
|
|
66
|
-
}
|
|
67
|
-
constructor(globalConfig) {
|
|
68
|
-
// Merge global configuration (if provided) into defaultConfig immutably.
|
|
69
|
-
this.defaultConfig = { ...this.defaultConfig, ...globalConfig };
|
|
70
|
-
this.configSubject.next(this.defaultConfig);
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Sets the configuration for Handsontable.
|
|
74
|
-
*
|
|
75
|
-
* @param config - An object containing configuration options.
|
|
76
|
-
* If a some parameter is provided, it will override the current settings.
|
|
77
|
-
*/
|
|
78
|
-
setConfig(config) {
|
|
79
|
-
const currentConfig = this.configSubject.value;
|
|
80
|
-
const newConfig = { ...currentConfig, ...config };
|
|
81
|
-
this.configSubject.next(newConfig);
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Retrieves the current Handsontable configuration.
|
|
85
|
-
*
|
|
86
|
-
* @returns An object with the current settings.
|
|
87
|
-
*/
|
|
88
|
-
getConfig() {
|
|
89
|
-
return this.configSubject.value;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Resets the configuration to the default settings.
|
|
93
|
-
* This method updates the configuration BehaviorSubject with the default configuration.
|
|
94
|
-
*/
|
|
95
|
-
resetConfig() {
|
|
96
|
-
this.configSubject.next({ ...this.defaultConfig });
|
|
97
|
-
}
|
|
98
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HotConfigService, deps: [{ token: HOT_GLOBAL_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
99
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HotConfigService, providedIn: 'root' });
|
|
100
|
-
}
|
|
101
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HotConfigService, decorators: [{
|
|
102
|
-
type: Injectable,
|
|
103
|
-
args: [{
|
|
104
|
-
providedIn: 'root',
|
|
105
|
-
}]
|
|
106
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
107
|
-
type: Inject,
|
|
108
|
-
args: [HOT_GLOBAL_CONFIG]
|
|
109
|
-
}] }]; } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90LWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaG90LXRhYmxlL3NyYy9saWIvc2VydmljZXMvaG90LWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUMsZUFBZSxFQUFhLE1BQU0sTUFBTSxDQUFDOztBQUVqRDs7S0FFSztBQUNMLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLCtCQUErQixDQUFDO0FBRXRFOzs7R0FHRztBQUNILE1BQU0sQ0FBTixJQUFZLGVBT1g7QUFQRCxXQUFZLGVBQWU7SUFDekIseUNBQXNCLENBQUE7SUFDdEIsa0RBQStCLENBQUE7SUFDL0IsMkRBQXdDLENBQUE7SUFDeEMsK0NBQTRCLENBQUE7SUFDNUIsd0RBQXFDLENBQUE7SUFDckMsaUVBQThDLENBQUE7QUFDaEQsQ0FBQyxFQVBXLGVBQWUsS0FBZixlQUFlLFFBTzFCO0FBaUNEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQVksbUJBQW1CLEVBQUU7SUFDbEYsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0NBQ3BCLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUlILE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0I7Ozs7Ozs7OztPQVNHO0lBQ0ssYUFBYSxHQUFjO1FBQ2pDLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLFNBQVMsRUFBRSxFQUFFO0tBQ2QsQ0FBQztJQUVGOzs7Ozs7OztPQVFHO0lBQ0ssYUFBYSxHQUFHLElBQUksZUFBZSxDQUFZLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUUzRTs7Ozs7O09BTUc7SUFDSCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELFlBQzZCLFlBQXVCO1FBRWxELHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsWUFBWSxFQUFFLENBQUM7UUFDaEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxNQUFpQjtRQUN6QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztRQUMvQyxNQUFNLFNBQVMsR0FBRyxFQUFFLEdBQUcsYUFBYSxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFFbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO3dHQTNFVSxnQkFBZ0Isa0JBd0NqQixpQkFBaUI7NEdBeENoQixnQkFBZ0IsY0FGZixNQUFNOzs0RkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkF5Q0ksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdGlvblRva2VuLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIEEgY29uc3RhbnQgcmVwcmVzZW50aW5nIHRoZSBub24tY29tbWVyY2lhbCBhbmQgZXZhbHVhdGlvbiBsaWNlbnNlLlxuICogKi9cbmV4cG9ydCBjb25zdCBOT05fQ09NTUVSQ0lBTF9MSUNFTlNFID0gJ25vbi1jb21tZXJjaWFsLWFuZC1ldmFsdWF0aW9uJztcblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyBhIHRoZW1lIG5hbWUuXG4gKiBQb3NzaWJsZSB2YWx1ZXMgaW5jbHVkZSBwcmVkZWZpbmVkIHRoZW1lcyBhbmQgYW55IGN1c3RvbSBzdHJpbmcuXG4gKi9cbmV4cG9ydCBlbnVtIFByZWRlZmluZWRUaGVtZSB7XG4gIE1haW4gPSAnaHQtdGhlbWUtbWFpbicsXG4gIE1haW5EYXJrID0gJ2h0LXRoZW1lLW1haW4tZGFyaycsXG4gIE1haW5EYXJrQXV0byA9ICdodC10aGVtZS1tYWluLWRhcmstYXV0bycsXG4gIEhvcml6b24gPSAnaHQtdGhlbWUtaG9yaXpvbicsXG4gIEhvcml6b25EYXJrID0gJ2h0LXRoZW1lLWhvcml6b24tZGFyaycsXG4gIEhvcml6b25EYXJrQXV0byA9ICdodC10aGVtZS1ob3Jpem9uLWRhcmstYXV0bydcbn1cblxuZXhwb3J0IHR5cGUgVGhlbWVOYW1lID0gUHJlZGVmaW5lZFRoZW1lIHwgc3RyaW5nO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgdGhlIEhhbmRzb250YWJsZSBnbG9iYWwgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIb3RDb25maWcge1xuICAvKipcbiAgICogVGhlIGxpY2Vuc2Uga2V5IGZvciBIYW5kc29udGFibGUuXG4gICAqL1xuICBsaWNlbnNlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgdGhlbWUgdG8gYmUgdXNlZC5cbiAgICovXG4gIHRoZW1lTmFtZT86IFRoZW1lTmFtZTtcblxuICAvKipcbiAgICogVGhlIGxhbmd1YWdlIGNvZGUgdG8gYmUgdXNlZCBmb3IgbG9jYWxpemF0aW9uLlxuICAgKiBGb3IgZXhhbXBsZSwgJ2VuLVVTJywgJ3BsLVBMJywgZXRjLlxuICAgKiAqKk5vdGU6KiogVGhlIGxhbmd1YWdlIG11c3QgYmUgY2hvc2VuIGZyb20gdGhlIGxhbmd1YWdlcyBzdXBwb3J0ZWQgYnkgSGFuZHNvbnRhYmxlIGFuZCByZWdpc3RlcmVkIGluIHRoZSBhcHBsaWNhdGlvbi5cbiAgICovXG4gIGxhbmd1YWdlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbGF5b3V0IGRpcmVjdGlvbiBmb3IgdGhlIEhhbmRzb250YWJsZSBpbnN0YW5jZS5cbiAgICogVGhpcyBwcm9wZXJ0eSBkZWZpbmVzIHdoZXRoZXIgdGhlIGxheW91dCBzaG91bGQgYmUgbGVmdC10by1yaWdodCAoJ2x0cicpLCByaWdodC10by1sZWZ0ICgncnRsJyksXG4gICAqIG9yIGluaGVyaXQgdGhlIGRpcmVjdGlvbiBmcm9tIHRoZSBwYXJlbnQgZWxlbWVudCAoJ2luaGVyaXQnKS5cbiAgICovXG4gIGxheW91dERpcmVjdGlvbj86ICdsdHInIHwgJ3J0bCcgfCAnaW5oZXJpdCc7XG59XG5cbi8qKlxuICogSW5qZWN0aW9uIHRva2VuIGZvciBwcm92aWRpbmcgYSBnbG9iYWwgZGVmYXVsdCBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgY29uc3QgSE9UX0dMT0JBTF9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48SG90Q29uZmlnPignSE9UX0dMT0JBTF9DT05GSUcnLCB7XG4gIHByb3ZpZGVkSW46ICdyb290JyxcbiAgZmFjdG9yeTogKCkgPT4gKHt9KVxufSk7XG5cbi8qKlxuICogU2VydmljZSBmb3IgY29uZmlndXJpbmcgSGFuZHNvbnRhYmxlIHNldHRpbmdzLlxuICogVGhpcyBzZXJ2aWNlIGFsbG93cyBzZXR0aW5nIGFuZCByZXRyaWV2aW5nIGdsb2JhbCBjb25maWd1cmF0aW9uLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgSG90Q29uZmlnU2VydmljZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gb2JqZWN0IGZvciBIYW5kc29udGFibGUuXG4gICAqXG4gICAqIFRoaXMgb2JqZWN0IGlzIHVzZWQgYXMgdGhlIGluaXRpYWwgdmFsdWUgZm9yIHRoZSBjb25maWd1cmF0aW9uIEJlaGF2aW9yU3ViamVjdC5cbiAgICogSXQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgYSBnbG9iYWwgY29uZmlndXJhdGlvbiBwcm92aWRlZCB0aHJvdWdoIHRoZVxuICAgKiB7QGxpbmsgSE9UX0dMT0JBTF9DT05GSUd9IGluamVjdGlvbiB0b2tlbi5cbiAgICpcbiAgICogQHByaXZhdGVcbiAgICogQHR5cGUge0hvdENvbmZpZ31cbiAgICovXG4gIHByaXZhdGUgZGVmYXVsdENvbmZpZzogSG90Q29uZmlnID0ge1xuICAgIGxpY2Vuc2U6IHVuZGVmaW5lZCxcbiAgICB0aGVtZU5hbWU6ICcnXG4gIH07XG5cbiAgLyoqXG4gICAqIEEgQmVoYXZpb3JTdWJqZWN0IHRoYXQgaG9sZHMgdGhlIGN1cnJlbnQgSGFuZHNvbnRhYmxlIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIE5ldyBjb25maWd1cmF0aW9uIHZhbHVlcyBjYW4gYmUgZW1pdHRlZCBieSBjYWxsaW5nIG5leHQoKSBvbiB0aGlzIHN1YmplY3QuXG4gICAqIFRoaXMgYWxsb3dzIHN1YnNjcmliZXJzIHRvIHJlYWN0IHRvIGNvbmZpZ3VyYXRpb24gY2hhbmdlcyBkeW5hbWljYWxseS5cbiAgICpcbiAgICogQHByaXZhdGVcbiAgICogQHR5cGUge0JlaGF2aW9yU3ViamVjdDxIb3RDb25maWc+fVxuICAgKi9cbiAgcHJpdmF0ZSBjb25maWdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxIb3RDb25maWc+KHRoaXMuZGVmYXVsdENvbmZpZyk7XG5cbiAgLyoqXG4gICAqIEFuIE9ic2VydmFibGUgc3RyZWFtIG9mIHRoZSBjdXJyZW50IEhhbmRzb250YWJsZSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBDb21wb25lbnRzIGNhbiBzdWJzY3JpYmUgdG8gdGhpcyBvYnNlcnZhYmxlIHRvIHJlY2VpdmUgdXBkYXRlcyB3aGVuZXZlciB0aGUgY29uZmlndXJhdGlvbiBjaGFuZ2VzLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgY29uZmlndXJhdGlvbiBhcyBhbiBvYnNlcnZhYmxlIHN0cmVhbS5cbiAgICovXG4gIGdldCBjb25maWckKCk6IE9ic2VydmFibGU8SG90Q29uZmlnPiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoSE9UX0dMT0JBTF9DT05GSUcpIGdsb2JhbENvbmZpZzogSG90Q29uZmlnXG4gICkge1xuICAgIC8vIE1lcmdlIGdsb2JhbCBjb25maWd1cmF0aW9uIChpZiBwcm92aWRlZCkgaW50byBkZWZhdWx0Q29uZmlnIGltbXV0YWJseS5cbiAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7IC4uLnRoaXMuZGVmYXVsdENvbmZpZywgLi4uZ2xvYmFsQ29uZmlnIH07XG4gICAgdGhpcy5jb25maWdTdWJqZWN0Lm5leHQodGhpcy5kZWZhdWx0Q29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb25maWd1cmF0aW9uIGZvciBIYW5kc29udGFibGUuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWcgLSBBbiBvYmplY3QgY29udGFpbmluZyBjb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gICAqICAgICAgICAgICAgICAgICBJZiBhIHNvbWUgcGFyYW1ldGVyIGlzIHByb3ZpZGVkLCBpdCB3aWxsIG92ZXJyaWRlIHRoZSBjdXJyZW50IHNldHRpbmdzLlxuICAgKi9cbiAgc2V0Q29uZmlnKGNvbmZpZzogSG90Q29uZmlnKSB7XG4gICAgY29uc3QgY3VycmVudENvbmZpZyA9IHRoaXMuY29uZmlnU3ViamVjdC52YWx1ZTtcbiAgICBjb25zdCBuZXdDb25maWcgPSB7IC4uLmN1cnJlbnRDb25maWcsIC4uLmNvbmZpZyB9O1xuXG4gICAgdGhpcy5jb25maWdTdWJqZWN0Lm5leHQobmV3Q29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgSGFuZHNvbnRhYmxlIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIHRoZSBjdXJyZW50IHNldHRpbmdzLlxuICAgKi9cbiAgZ2V0Q29uZmlnKCk6IEhvdENvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU3ViamVjdC52YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIGNvbmZpZ3VyYXRpb24gdG8gdGhlIGRlZmF1bHQgc2V0dGluZ3MuXG4gICAqIFRoaXMgbWV0aG9kIHVwZGF0ZXMgdGhlIGNvbmZpZ3VyYXRpb24gQmVoYXZpb3JTdWJqZWN0IHdpdGggdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlc2V0Q29uZmlnKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnU3ViamVjdC5uZXh0KHsgLi4udGhpcy5kZWZhdWx0Q29uZmlnIH0pO1xuICB9XG59XG4iXX0=
|