@cloudbase/ai 3.0.0 → 3.0.2
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/dist/cjs/AI.d.ts +1 -0
- package/dist/cjs/AI.js +4 -1
- package/dist/cjs/bot/index.js +1 -1
- package/dist/cjs/index.d.ts +5 -3
- package/dist/cjs/index.js +10 -4
- package/dist/cjs/models/Ark/index.js +1 -1
- package/dist/cjs/models/DashScope/index.js +1 -1
- package/dist/cjs/models/DeepSeek/index.js +1 -1
- package/dist/cjs/models/Default/index.js +1 -1
- package/dist/cjs/models/HunYuan/index.js +1 -1
- package/dist/cjs/models/HunYuan/util.js +1 -1
- package/dist/cjs/models/HunYuanBeta/index.js +1 -1
- package/dist/cjs/models/HunYuanExp/index.js +1 -1
- package/dist/cjs/models/HunYuanOpen/index.js +1 -1
- package/dist/cjs/models/Moonshot/index.js +1 -1
- package/dist/cjs/models/Yi/index.js +1 -1
- package/dist/cjs/models/ZhiPu/index.js +1 -1
- package/dist/cjs/models/image-model.d.ts +18 -0
- package/dist/cjs/models/image-model.js +85 -0
- package/dist/cjs/models/index.d.ts +2 -1
- package/dist/cjs/models/index.js +4 -2
- package/dist/cjs/models/model.js +1 -1
- package/dist/cjs/type.d.ts +79 -0
- package/dist/cjs/type.js +1 -1
- package/dist/cjs/utils.js +1 -1
- package/dist/esm/AI.d.ts +1 -0
- package/dist/esm/AI.js +4 -1
- package/dist/esm/bot/index.js +1 -1
- package/dist/esm/index.d.ts +5 -3
- package/dist/esm/index.js +9 -4
- package/dist/esm/models/Ark/index.js +1 -1
- package/dist/esm/models/DashScope/index.js +1 -1
- package/dist/esm/models/DeepSeek/index.js +1 -1
- package/dist/esm/models/Default/index.js +1 -1
- package/dist/esm/models/HunYuan/index.js +1 -1
- package/dist/esm/models/HunYuan/util.js +1 -1
- package/dist/esm/models/HunYuanBeta/index.js +1 -1
- package/dist/esm/models/HunYuanExp/index.js +1 -1
- package/dist/esm/models/HunYuanOpen/index.js +1 -1
- package/dist/esm/models/Moonshot/index.js +1 -1
- package/dist/esm/models/Yi/index.js +1 -1
- package/dist/esm/models/ZhiPu/index.js +1 -1
- package/dist/esm/models/image-model.d.ts +18 -0
- package/dist/esm/models/image-model.js +82 -0
- package/dist/esm/models/index.d.ts +2 -1
- package/dist/esm/models/index.js +3 -2
- package/dist/esm/models/model.js +1 -1
- package/dist/esm/type.d.ts +79 -0
- package/dist/esm/type.js +1 -1
- package/dist/esm/utils.js +1 -1
- package/dist/miniprogram/index.js +1 -1
- package/package.json +4 -4
- package/src/AI.ts +11 -1
- package/src/bot/index.ts +2 -0
- package/src/index.ts +16 -5
- package/src/models/Ark/index.ts +2 -0
- package/src/models/DashScope/index.ts +2 -0
- package/src/models/DeepSeek/index.ts +2 -0
- package/src/models/Default/index.ts +2 -0
- package/src/models/HunYuan/index.ts +2 -0
- package/src/models/HunYuan/util.ts +2 -0
- package/src/models/HunYuanBeta/index.ts +2 -0
- package/src/models/HunYuanExp/index.ts +2 -0
- package/src/models/HunYuanOpen/index.ts +2 -0
- package/src/models/Moonshot/index.ts +3 -0
- package/src/models/Yi/index.ts +2 -0
- package/src/models/ZhiPu/index.ts +2 -0
- package/src/models/image-model.ts +59 -0
- package/src/models/index.ts +2 -0
- package/src/models/model.ts +2 -0
- package/src/type.ts +203 -1
- package/src/utils.ts +3 -1
- package/tsconfig.json +1 -1
package/dist/esm/type.d.ts
CHANGED
|
@@ -108,4 +108,83 @@ export interface BaseDoStreamOutputChunk {
|
|
|
108
108
|
}>;
|
|
109
109
|
usage?: Usage;
|
|
110
110
|
}
|
|
111
|
+
export interface ImageGenerateInput {
|
|
112
|
+
model: string;
|
|
113
|
+
prompt: string;
|
|
114
|
+
size?: string;
|
|
115
|
+
n?: number;
|
|
116
|
+
[key: string]: unknown;
|
|
117
|
+
}
|
|
118
|
+
export interface ImageEditInput {
|
|
119
|
+
model: string;
|
|
120
|
+
prompt: string;
|
|
121
|
+
size?: string;
|
|
122
|
+
n?: number;
|
|
123
|
+
[key: string]: unknown;
|
|
124
|
+
}
|
|
125
|
+
export interface HunyuanGenerateImageInput {
|
|
126
|
+
model: 'hunyuan-image';
|
|
127
|
+
prompt: string;
|
|
128
|
+
version?: 'v1.8.1' | 'v1.9' | (string & {});
|
|
129
|
+
size?: string;
|
|
130
|
+
negative_prompt?: string;
|
|
131
|
+
style?: '古风二次元风格' | '都市二次元风格' | '悬疑风格' | '校园风格' | '都市异能风格' | (string & {});
|
|
132
|
+
revise?: boolean;
|
|
133
|
+
n?: number;
|
|
134
|
+
footnote?: string;
|
|
135
|
+
seed?: number;
|
|
136
|
+
}
|
|
137
|
+
export interface HunyuanARGenerateImageInput {
|
|
138
|
+
model: 'hunyuan-image-v3.0-v1.0.4' | 'hunyuan-image-v3.0-v1.0.1';
|
|
139
|
+
prompt: string;
|
|
140
|
+
size?: string;
|
|
141
|
+
seed?: number;
|
|
142
|
+
footnote?: string;
|
|
143
|
+
revise?: {
|
|
144
|
+
value: boolean;
|
|
145
|
+
};
|
|
146
|
+
enable_thinking?: {
|
|
147
|
+
value: boolean;
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
export interface HunyuanARGenerateImageOutput {
|
|
151
|
+
id: string;
|
|
152
|
+
created: number;
|
|
153
|
+
data: Array<{
|
|
154
|
+
url: string;
|
|
155
|
+
revised_prompt?: string;
|
|
156
|
+
}>;
|
|
157
|
+
}
|
|
158
|
+
export type HunyuanEditImageInput = {
|
|
159
|
+
model: 'hunyuan-image' | (string & {});
|
|
160
|
+
prompt: string;
|
|
161
|
+
version?: string;
|
|
162
|
+
size?: string;
|
|
163
|
+
n?: number;
|
|
164
|
+
seed?: number;
|
|
165
|
+
footnote?: string;
|
|
166
|
+
image?: string;
|
|
167
|
+
image_url?: string;
|
|
168
|
+
} & ({
|
|
169
|
+
mask: string;
|
|
170
|
+
mask_url?: never;
|
|
171
|
+
} | {
|
|
172
|
+
mask?: never;
|
|
173
|
+
mask_url: string;
|
|
174
|
+
});
|
|
175
|
+
export interface HunyuanGenerateImageOutput {
|
|
176
|
+
id: string;
|
|
177
|
+
created: number;
|
|
178
|
+
data: Array<{
|
|
179
|
+
url: string;
|
|
180
|
+
revised_prompt?: string;
|
|
181
|
+
}>;
|
|
182
|
+
}
|
|
183
|
+
export interface HunyuanEditImageOutput {
|
|
184
|
+
id: string;
|
|
185
|
+
created: number;
|
|
186
|
+
data: Array<{
|
|
187
|
+
url: string;
|
|
188
|
+
}>;
|
|
189
|
+
}
|
|
111
190
|
export {};
|
package/dist/esm/type.js
CHANGED
|
@@ -4,4 +4,4 @@ var SimpleChatModel = (function () {
|
|
|
4
4
|
return SimpleChatModel;
|
|
5
5
|
}());
|
|
6
6
|
export { SimpleChatModel };
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQUE7SUFJQSxDQUFDO0lBQUQsc0JBQUM7QUFBRCxDQUFDLEFBSkQsSUFJQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTaW1wbGVDaGF0TW9kZWwge1xuICBwdWJsaWMgYWJzdHJhY3QgZG9HZW5lcmF0ZShkYXRhOiBCYXNlQ2hhdE1vZGVsSW5wdXQsIG9wdGlvbnM/OiBSZXFPcHRpb25zKTogUHJvbWlzZTxEb0dlbmVyYXRlT3V0cHV0PlxuXG4gIHB1YmxpYyBhYnN0cmFjdCBkb1N0cmVhbShkYXRhOiBCYXNlQ2hhdE1vZGVsSW5wdXQsIG9wdGlvbnM/OiBSZXFPcHRpb25zKTogUHJvbWlzZTxEb1N0cmVhbU91dHB1dD5cbn1cblxudHlwZSBSYXdSZXNwb25zZSA9IHsgcmF3UmVzcG9uc2U/OiBhbnkgfVxuXG5leHBvcnQgdHlwZSBEb0dlbmVyYXRlT3V0cHV0ID0gQmFzZURvR2VuZXJhdGVPdXRwdXQgJiBSYXdSZXNwb25zZVxuXG5leHBvcnQgdHlwZSBEb1N0cmVhbU91dHB1dCA9IEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxCYXNlRG9TdHJlYW1PdXRwdXRDaHVuayAmIFJhd1Jlc3BvbnNlPlxuXG5leHBvcnQgdHlwZSBDaGF0TW9kZWxDb25zdHJ1Y3RvciA9IHR5cGVvZiBTaW1wbGVDaGF0TW9kZWxcblxuZXhwb3J0IHR5cGUgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPFQ+ID0gUmVhZGFibGVTdHJlYW08VD4gJiB7XG4gIFtTeW1ib2wuYXN5bmNJdGVyYXRvcl06ICgpID0+IHsgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1vZGVsUmVxSW5wdXQge1xuICB1cmw6IHN0cmluZ1xuICBoZWFkZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICBkYXRhPzogT2JqZWN0XG4gIHN0cmVhbT86IGJvb2xlYW4sXG4gIHRpbWVvdXQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgTW9kZWxSZXEgPSA8VCBleHRlbmRzIElNb2RlbFJlcUlucHV0PihcbiAgcHJvcHM6IFQsXG4pID0+IFRbJ3N0cmVhbSddIGV4dGVuZHMgdHJ1ZSA/IFByb21pc2U8UmVhZGFibGVTdHJlYW08VWludDhBcnJheT4+IDogUHJvbWlzZTxPYmplY3Q+XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJvdFJlcUlucHV0IHtcbiAgdXJsOiBzdHJpbmdcbiAgbWV0aG9kOiBzdHJpbmdcbiAgaGVhZGVycz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgZGF0YT86IE9iamVjdFxuICBzdHJlYW0/OiBib29sZWFuXG4gIHRpbWVvdXQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXFPcHRpb25zIHtcbiAgdGltZW91dD86IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBCb3RSZXEgPSA8VCBleHRlbmRzIElCb3RSZXFJbnB1dD4oXG4gIHByb3BzOiBULFxuKSA9PiBUWydzdHJlYW0nXSBleHRlbmRzIHRydWUgPyBQcm9taXNlPFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+PiA6IFByb21pc2U8T2JqZWN0PlxuXG5leHBvcnQgdHlwZSBVc2VyTWVzc2FnZSA9IHtcbiAgcm9sZTogJ3VzZXInXG4gIGNvbnRlbnQ6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTeXN0ZW1NZXNzYWdlID0ge1xuICByb2xlOiAnc3lzdGVtJ1xuICBjb250ZW50OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQXNzaXN0YW50TWVzc2FnZSA9IFBsYWluQXNzaXN0YW50TWVzc2FnZSB8IFRvb2xDYWxsQXNzaXN0YW50TWVzc2FnZVxuXG5leHBvcnQgdHlwZSBQbGFpbkFzc2lzdGFudE1lc3NhZ2UgPSB7XG4gIHJvbGU6ICdhc3Npc3RhbnQnXG4gIGNvbnRlbnQ6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UgPSB7XG4gIHJvbGU6ICdhc3Npc3RhbnQnXG4gIHRvb2xfY2FsbHM6IEFycmF5PFRvb2xDYWxsPlxuICBjb250ZW50Pzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIFRvb2xNZXNzYWdlID0ge1xuICByb2xlOiAndG9vbCdcbiAgdG9vbF9jYWxsX2lkOiBzdHJpbmdcbiAgY29udGVudDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIENoYXRNb2RlbE1lc3NhZ2UgPSBVc2VyTWVzc2FnZSB8IFN5c3RlbU1lc3NhZ2UgfCBBc3Npc3RhbnRNZXNzYWdlIHwgVG9vbE1lc3NhZ2VcblxuZXhwb3J0IHR5cGUgRnVuY3Rpb25Ub29sID0ge1xuICBuYW1lOiBzdHJpbmdcbiAgZGVzY3JpcHRpb246IHN0cmluZ1xuICBmbjogQ2FsbGFibGVGdW5jdGlvblxuICBwYXJhbWV0ZXJzOiBvYmplY3Rcbn1cblxuLy8gI3JlZ2lvbiDlpKfmqKHlnovmoIflh4bovpPlhaXnsbvlnotcbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUNoYXRNb2RlbElucHV0IHtcbiAgbW9kZWw6IHN0cmluZ1xuICBtZXNzYWdlczogQXJyYXk8Q2hhdE1vZGVsTWVzc2FnZT5cbiAgdGVtcGVyYXR1cmU/OiBudW1iZXJcbiAgdG9wX3A/OiBudW1iZXJcbiAgdG9vbHM/OiBBcnJheTxNb2RlbFRvb2w+XG4gIHRvb2xfY2hvaWNlPzogJ25vbmUnIHwgJ2F1dG8nIHwgJ2N1c3RvbSdcbn1cblxuLyoqXG4gKiDnu5kgTExNIOWPkeivt+axguaXtuimgeS8oOeahOW3peWFt1xuICovXG5leHBvcnQgdHlwZSBNb2RlbFRvb2wgPSB7XG4gIHR5cGU6IHN0cmluZ1xuICBmdW5jdGlvbjogTW9kZWxUb29sRnVuY3Rpb25cbn1cblxuLyoqXG4gKiDnu5kgTExNIOWPkeivt+axguaXtuimgeS8oOeahOW3peWFt+WHveaVsFxuICovXG5leHBvcnQgdHlwZSBNb2RlbFRvb2xGdW5jdGlvbiA9IHtcbiAgbmFtZTogc3RyaW5nXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgLyoqXG4gICAqIOaPj+i/sOWHveaVsOWPguaVsOeahCBKU09OIFNjaGVtYVxuICAgKi9cbiAgcGFyYW1ldGVyczogb2JqZWN0XG59XG4vLyAjZW5kcmVnaW9uXG5cbi8vICNyZWdpb24g5aSn5qih5Z6L5qCH5YeG5ZON5bqU57G75Z6LXG5leHBvcnQgdHlwZSBUb29sQ2FsbCA9IHtcbiAgaWQ6IHN0cmluZ1xuICB0eXBlOiBzdHJpbmdcbiAgZnVuY3Rpb246IHsgbmFtZTogc3RyaW5nOyBhcmd1bWVudHM6IHN0cmluZyB9XG59XG5cbnR5cGUgRmluaXNoUmVhc29uID0gJ3Rvb2xfY2FsbHMnIHwgKHN0cmluZyAmIHt9KVxuXG5leHBvcnQgdHlwZSBVc2FnZSA9IHtcbiAgY29tcGxldGlvbl90b2tlbnM6IG51bWJlclxuICBwcm9tcHRfdG9rZW5zOiBudW1iZXJcbiAgdG90YWxfdG9rZW5zOiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlRG9HZW5lcmF0ZU91dHB1dCB7XG4gIGNob2ljZXM/OiBBcnJheTx7XG4gICAgZmluaXNoX3JlYXNvbj86IEZpbmlzaFJlYXNvblxuICAgIG1lc3NhZ2U/OiBDaGF0TW9kZWxNZXNzYWdlXG4gIH0+XG4gIHVzYWdlPzogVXNhZ2Vcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNlRG9TdHJlYW1PdXRwdXRDaHVuayB7XG4gIGNob2ljZXM/OiBBcnJheTx7XG4gICAgZmluaXNoX3JlYXNvbj86IEZpbmlzaFJlYXNvblxuICAgIGRlbHRhPzogQ2hhdE1vZGVsTWVzc2FnZVxuICB9PlxuICB1c2FnZT86IFVzYWdlXG59XG4vLyAjZW5kcmVnaW9uXG4iXX0=
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQUE7SUFJQSxDQUFDO0lBQUQsc0JBQUM7QUFBRCxDQUFDLEFBSkQsSUFJQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTaW1wbGVDaGF0TW9kZWwge1xuICBwdWJsaWMgYWJzdHJhY3QgZG9HZW5lcmF0ZShkYXRhOiBCYXNlQ2hhdE1vZGVsSW5wdXQsIG9wdGlvbnM/OiBSZXFPcHRpb25zKTogUHJvbWlzZTxEb0dlbmVyYXRlT3V0cHV0PlxuXG4gIHB1YmxpYyBhYnN0cmFjdCBkb1N0cmVhbShkYXRhOiBCYXNlQ2hhdE1vZGVsSW5wdXQsIG9wdGlvbnM/OiBSZXFPcHRpb25zKTogUHJvbWlzZTxEb1N0cmVhbU91dHB1dD5cbn1cblxudHlwZSBSYXdSZXNwb25zZSA9IHsgcmF3UmVzcG9uc2U/OiBhbnkgfVxuXG5leHBvcnQgdHlwZSBEb0dlbmVyYXRlT3V0cHV0ID0gQmFzZURvR2VuZXJhdGVPdXRwdXQgJiBSYXdSZXNwb25zZVxuXG5leHBvcnQgdHlwZSBEb1N0cmVhbU91dHB1dCA9IEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxCYXNlRG9TdHJlYW1PdXRwdXRDaHVuayAmIFJhd1Jlc3BvbnNlPlxuXG5leHBvcnQgdHlwZSBDaGF0TW9kZWxDb25zdHJ1Y3RvciA9IHR5cGVvZiBTaW1wbGVDaGF0TW9kZWxcblxuZXhwb3J0IHR5cGUgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPFQ+ID0gUmVhZGFibGVTdHJlYW08VD4gJiB7XG4gIFtTeW1ib2wuYXN5bmNJdGVyYXRvcl06ICgpID0+IHsgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1vZGVsUmVxSW5wdXQge1xuICB1cmw6IHN0cmluZ1xuICBoZWFkZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICBkYXRhPzogT2JqZWN0XG4gIHN0cmVhbT86IGJvb2xlYW5cbiAgdGltZW91dD86IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBNb2RlbFJlcSA9IDxUIGV4dGVuZHMgSU1vZGVsUmVxSW5wdXQ+KFxuICBwcm9wczogVCxcbikgPT4gVFsnc3RyZWFtJ10gZXh0ZW5kcyB0cnVlID8gUHJvbWlzZTxSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5Pj4gOiBQcm9taXNlPE9iamVjdD5cblxuZXhwb3J0IGludGVyZmFjZSBJQm90UmVxSW5wdXQge1xuICB1cmw6IHN0cmluZ1xuICBtZXRob2Q6IHN0cmluZ1xuICBoZWFkZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICBkYXRhPzogT2JqZWN0XG4gIHN0cmVhbT86IGJvb2xlYW5cbiAgdGltZW91dD86IG51bWJlclxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcU9wdGlvbnMge1xuICB0aW1lb3V0PzogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEJvdFJlcSA9IDxUIGV4dGVuZHMgSUJvdFJlcUlucHV0PihcbiAgcHJvcHM6IFQsXG4pID0+IFRbJ3N0cmVhbSddIGV4dGVuZHMgdHJ1ZSA/IFByb21pc2U8UmVhZGFibGVTdHJlYW08VWludDhBcnJheT4+IDogUHJvbWlzZTxPYmplY3Q+XG5cbmV4cG9ydCB0eXBlIFVzZXJNZXNzYWdlID0ge1xuICByb2xlOiAndXNlcidcbiAgY29udGVudDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIFN5c3RlbU1lc3NhZ2UgPSB7XG4gIHJvbGU6ICdzeXN0ZW0nXG4gIGNvbnRlbnQ6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBBc3Npc3RhbnRNZXNzYWdlID0gUGxhaW5Bc3Npc3RhbnRNZXNzYWdlIHwgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlXG5cbmV4cG9ydCB0eXBlIFBsYWluQXNzaXN0YW50TWVzc2FnZSA9IHtcbiAgcm9sZTogJ2Fzc2lzdGFudCdcbiAgY29udGVudDogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIFRvb2xDYWxsQXNzaXN0YW50TWVzc2FnZSA9IHtcbiAgcm9sZTogJ2Fzc2lzdGFudCdcbiAgdG9vbF9jYWxsczogQXJyYXk8VG9vbENhbGw+XG4gIGNvbnRlbnQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgVG9vbE1lc3NhZ2UgPSB7XG4gIHJvbGU6ICd0b29sJ1xuICB0b29sX2NhbGxfaWQ6IHN0cmluZ1xuICBjb250ZW50OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgQ2hhdE1vZGVsTWVzc2FnZSA9IFVzZXJNZXNzYWdlIHwgU3lzdGVtTWVzc2FnZSB8IEFzc2lzdGFudE1lc3NhZ2UgfCBUb29sTWVzc2FnZVxuXG5leHBvcnQgdHlwZSBGdW5jdGlvblRvb2wgPSB7XG4gIG5hbWU6IHN0cmluZ1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIGZuOiBDYWxsYWJsZUZ1bmN0aW9uXG4gIHBhcmFtZXRlcnM6IG9iamVjdFxufVxuXG4vLyAjcmVnaW9uIOWkp+aooeWei+agh+WHhui+k+WFpeexu+Wei1xuZXhwb3J0IGludGVyZmFjZSBCYXNlQ2hhdE1vZGVsSW5wdXQge1xuICBtb2RlbDogc3RyaW5nXG4gIG1lc3NhZ2VzOiBBcnJheTxDaGF0TW9kZWxNZXNzYWdlPlxuICB0ZW1wZXJhdHVyZT86IG51bWJlclxuICB0b3BfcD86IG51bWJlclxuICB0b29scz86IEFycmF5PE1vZGVsVG9vbD5cbiAgdG9vbF9jaG9pY2U/OiAnbm9uZScgfCAnYXV0bycgfCAnY3VzdG9tJ1xufVxuXG4vKipcbiAqIOe7mSBMTE0g5Y+R6K+35rGC5pe26KaB5Lyg55qE5bel5YW3XG4gKi9cbmV4cG9ydCB0eXBlIE1vZGVsVG9vbCA9IHtcbiAgdHlwZTogc3RyaW5nXG4gIGZ1bmN0aW9uOiBNb2RlbFRvb2xGdW5jdGlvblxufVxuXG4vKipcbiAqIOe7mSBMTE0g5Y+R6K+35rGC5pe26KaB5Lyg55qE5bel5YW35Ye95pWwXG4gKi9cbmV4cG9ydCB0eXBlIE1vZGVsVG9vbEZ1bmN0aW9uID0ge1xuICBuYW1lOiBzdHJpbmdcbiAgZGVzY3JpcHRpb246IHN0cmluZ1xuICAvKipcbiAgICog5o+P6L+w5Ye95pWw5Y+C5pWw55qEIEpTT04gU2NoZW1hXG4gICAqL1xuICBwYXJhbWV0ZXJzOiBvYmplY3Rcbn1cbi8vICNlbmRyZWdpb25cblxuLy8gI3JlZ2lvbiDlpKfmqKHlnovmoIflh4blk43lupTnsbvlnotcbmV4cG9ydCB0eXBlIFRvb2xDYWxsID0ge1xuICBpZDogc3RyaW5nXG4gIHR5cGU6IHN0cmluZ1xuICBmdW5jdGlvbjogeyBuYW1lOiBzdHJpbmc7IGFyZ3VtZW50czogc3RyaW5nIH1cbn1cblxudHlwZSBGaW5pc2hSZWFzb24gPSAndG9vbF9jYWxscycgfCAoc3RyaW5nICYge30pXG5cbmV4cG9ydCB0eXBlIFVzYWdlID0ge1xuICBjb21wbGV0aW9uX3Rva2VuczogbnVtYmVyXG4gIHByb21wdF90b2tlbnM6IG51bWJlclxuICB0b3RhbF90b2tlbnM6IG51bWJlclxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VEb0dlbmVyYXRlT3V0cHV0IHtcbiAgY2hvaWNlcz86IEFycmF5PHtcbiAgICBmaW5pc2hfcmVhc29uPzogRmluaXNoUmVhc29uXG4gICAgbWVzc2FnZT86IENoYXRNb2RlbE1lc3NhZ2VcbiAgfT5cbiAgdXNhZ2U/OiBVc2FnZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VEb1N0cmVhbU91dHB1dENodW5rIHtcbiAgY2hvaWNlcz86IEFycmF5PHtcbiAgICBmaW5pc2hfcmVhc29uPzogRmluaXNoUmVhc29uXG4gICAgZGVsdGE/OiBDaGF0TW9kZWxNZXNzYWdlXG4gIH0+XG4gIHVzYWdlPzogVXNhZ2Vcbn1cbi8vICNlbmRyZWdpb25cblxuLy8gI3JlZ2lvbiBJbWFnZSBNb2RlbCBUeXBlc1xuLyoqXG4gKiDlm77niYfnlJ/miJDovpPlhaXlj4LmlbBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbWFnZUdlbmVyYXRlSW5wdXQge1xuICBtb2RlbDogc3RyaW5nIC8vIOaooeWei+WQjeensO+8jOS+i+WmgiAnaHVueXVhbi1pbWFnZSfjgIEnZGFsbC1lLTMnXG4gIHByb21wdDogc3RyaW5nIC8vIOeUqOS6juaPj+i/sOimgeeUn+aIkOeahOWbvueJh+WGheWuuVxuICBzaXplPzogc3RyaW5nIC8vIOWwuuWvuFxuICBuPzogbnVtYmVyIC8vIOW8oOaVsFxuICBba2V5OiBzdHJpbmddOiB1bmtub3duIC8vIOWFgeiuuOmineWklueahOWOguWVhueJueWumuWPguaVsFxufVxuXG4vKipcbiAqIOWbvueJh+e8lui+kei+k+WFpeWPguaVsFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEltYWdlRWRpdElucHV0IHtcbiAgbW9kZWw6IHN0cmluZ1xuICBwcm9tcHQ6IHN0cmluZ1xuICBzaXplPzogc3RyaW5nIC8vIOWwuuWvuFxuICBuPzogbnVtYmVyIC8vIOW8oOaVsFxuICBba2V5OiBzdHJpbmddOiB1bmtub3duIC8vIOWFgeiuuOmineWklueahOWOguWVhueJueWumuWPguaVsFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEh1bnl1YW5HZW5lcmF0ZUltYWdlSW5wdXQge1xuICBtb2RlbDogJ2h1bnl1YW4taW1hZ2UnXG4gIC8qKiDnlKjmnaXnlJ/miJDlm77lg4/nmoTmlofmnKzmj4/ov7AgKi9cbiAgcHJvbXB0OiBzdHJpbmdcbiAgLyoqXG4gICAqIOaooeWei+eJiOacrO+8jOaUr+aMgSB2MS44LjEg5ZKMIHYxLjnvvIzpu5jorqTniYjmnKwgdjEuOC4xXG4gICAqIC0gdjEuOC4xOiDph4fnlKjkuozpmLbmrrXmqKHlnovmlK/mjIHmlofnlJ/lm77ku7vliqHvvIzpkojlr7nlm77lg4/nu4boioLjgIHnqLPlrprmgKfnrYnopoHmsYLpq5jnmoTku7vliqHovoPkuLrlkIjpgIJcbiAgICogLSB2MS45OiDph4fnlKjmqKHlnovnn6npmLXog73lipvmlK/mjIHmlofnlJ/lm77ku7vliqHvvIzlkI7nq6/nlLHkurrlg4/jgIHmuLjmiI/jgIHpgJrnlKjmqKHlnovvvIzku6Xlj4rlkITnsbvlip/og73mj5Lku7bnu4TmiJDvvIzngbXmtLvpgILphY3lpJrnp43mlofnlJ/lm77ku7vliqFcbiAgICovXG4gIHZlcnNpb24/OiAndjEuOC4xJyB8ICd2MS45JyB8IChzdHJpbmcgJiB7fSlcbiAgLyoqXG4gICAqIOWbvueJh+WwuuWvuO+8jOm7mOiupCBcIjEwMjR4MTAyNFwiXG4gICAqIHYxLjkg5LuF5pSv5oyB5Lul5LiL5Yeg5Liq5bC65a+477yaXG4gICAqIC0gMTAyNHgxMDI0XG4gICAqIC0gMTAyNHg3NjgsIDExNTJ4ODY0XG4gICAqIC0gNzY4eDEwMjQsIDg2NHgxMTUyXG4gICAqIC0gMTI4MHg3NjggKDE2OjkpXG4gICAqIC0gNzY4eDEyODAgKDk6MTYpXG4gICAqIC0gMTI4MHg3MjAgKDE2OjkpXG4gICAqIC0gNzIweDEyODAgKDk6MTYpXG4gICAqXG4gICAqIOaUr+aMgeeUqOaIt+iHquWumuS5ieWwuuWvuO+8jOS9hui+k+WFpeWwuuWvuOWPquaUr+aMgSA3NjgtMTI4MCDkuYvpl7TkuJTkuLogNjQg55qE5YCN5pWw55qE5pWw5a2XXG4gICAqL1xuICBzaXplPzogc3RyaW5nXG4gIC8qKlxuICAgKiDku4UgdjEuOSDmlK/mjIHvvIzotJ/lkJHor41cbiAgICog5aaC5p6c5LiN5Lyg5YiZ5L2/55So5ZCE5Liq5qih5Z6L5YaF6YOo55qE6buY6K6k6LSf5ZCR6K+NXG4gICAqL1xuICBuZWdhdGl2ZV9wcm9tcHQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIOS7hSB2MS45IOaUr+aMge+8jOWPr+aMh+WumumjjuagvO+8mlxuICAgKiAtIOWPpOmjjuS6jOasoeWFg+mjjuagvFxuICAgKiAtIOmDveW4guS6jOasoeWFg+mjjuagvFxuICAgKiAtIOaCrOeWkemjjuagvFxuICAgKiAtIOagoeWbremjjuagvFxuICAgKiAtIOmDveW4guW8guiDvemjjuagvFxuICAgKi9cbiAgc3R5bGU/OiAn5Y+k6aOO5LqM5qyh5YWD6aOO5qC8JyB8ICfpg73luILkuozmrKHlhYPpo47moLwnIHwgJ+aCrOeWkemjjuagvCcgfCAn5qCh5Zut6aOO5qC8JyB8ICfpg73luILlvILog73po47moLwnIHwgKHN0cmluZyAmIHt9KVxuICAvKipcbiAgICog5Li6IHRydWUg5pe25a+5IHByb21wdCDov5vooYzmlLnlhpnvvIzlrp7pmYXnlJ/miJDnmoTlm77niYfkvJrkvb/nlKjmlLnlhpnlkI7nmoQgcHJvbXB0IOi/m+ihjOeUn+aIkFxuICAgKiDlpJrmlbDlnLrmma/lj6/mj5DljYfnlJ/miJDnmoTlm77niYfmlYjmnpzvvIzpu5jorqTkuLogdHJ1ZVxuICAgKi9cbiAgcmV2aXNlPzogYm9vbGVhblxuICAvKipcbiAgICog55Sf5oiQ5Zu+54mH5Liq5pWw77yM6buY6K6k5Li6IDFcbiAgICog55uu5YmN5Y+q5pSv5oyB55Sf5oiQ5LiA5byg77yM5Zu65a6a5Li6IDHvvIzkvKDlhbbku5bnmoTlgLzkvJrmiqXplJlcbiAgICovXG4gIG4/OiBudW1iZXJcbiAgLyoqXG4gICAqIOS4muWKoeiHquWumuS5ieawtOWNsOWGheWuuVxuICAgKiDpmZDliLYgMTYg5Liq5a2X56ym6ZW/5bqm77yI5LiN5Yy65YiG5Lit6Iux5paH77yJ77yM55Sf5oiQ5Zyo5Zu+54mH5Y+z5LiL6KeSXG4gICAqL1xuICBmb290bm90ZT86IHN0cmluZ1xuICAvKipcbiAgICog55Sf5oiQ56eN5a2Q77yM5LuF5b2T55Sf5oiQ5Zu+54mH5pWw5Li6IDEg5pe255Sf5pWIXG4gICAqIOiMg+WbtCBbMSwgNDI5NDk2NzI5NV3vvIzkuI3kvKDml7bpu5jorqTpmo/mnLpcbiAgICovXG4gIHNlZWQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIdW55dWFuQVJHZW5lcmF0ZUltYWdlSW5wdXQge1xuICAvKiog5qih5Z6L5ZCN56ew77yaaHVueXVhbi1pbWFnZS12My4wLXYxLjAuNO+8iOaOqOiNkO+8ieaIliBodW55dWFuLWltYWdlLXYzLjAtdjEuMC4xICovXG4gIG1vZGVsOiAnaHVueXVhbi1pbWFnZS12My4wLXYxLjAuNCcgfCAnaHVueXVhbi1pbWFnZS12My4wLXYxLjAuMSdcbiAgLyoqIOeUn+aIkOWbvueJh+S9v+eUqOeahOaWh+acrO+8jOS4jei2hei/hyA4MTkyIOWtl+espiAqL1xuICBwcm9tcHQ6IHN0cmluZ1xuICAvKipcbiAgICog5Zu+54mH5bC65a+477yM5qC85byPIFwiJHvlrr19eCR76auYfVwi77yM6buY6K6kIFwiMTAyNHgxMDI0XCJcbiAgICogaHVueXVhbi1pbWFnZS12My4wLXYxLjAuNO+8muWuvemrmCBbNTEyLCAyMDQ4Xe+8jOmdouenr+S4jei2hei/hyAxMDI0eDEwMjRcbiAgICogaHVueXVhbi1pbWFnZS12My4wLXYxLjAuMe+8muaUr+aMgeWbuuWumuWwuuWvuOWIl+ihqFxuICAgKi9cbiAgc2l6ZT86IHN0cmluZ1xuICAvKiog55Sf5oiQ56eN5a2Q77yM5LuF5b2T55Sf5oiQ5Zu+54mH5pWw5Li6IDEg5pe255Sf5pWI77yM6IyD5Zu0IFsxLCA0Mjk0OTY3Mjk1XSAqL1xuICBzZWVkPzogbnVtYmVyXG4gIC8qKiDkuJrliqHoh6rlrprkuYnmsLTljbDlhoXlrrnvvIzpmZDliLYgMTYg5a2X56ym77yM55Sf5oiQ5Zyo5Zu+54mH5Y+z5LiL6KeSICovXG4gIGZvb3Rub3RlPzogc3RyaW5nXG4gIC8qKiDmmK/lkKblr7kgcHJvbXB0IOaUueWGme+8jOm7mOiupOW8gOWQr+OAguaUueWGmeS8muWinuWKoOe6piAzMHMg6ICX5pe2ICovXG4gIHJldmlzZT86IHsgdmFsdWU6IGJvb2xlYW4gfVxuICAvKiog5pS55YaZ5piv5ZCm5byA5ZCvIHRoaW5raW5nIOaooeW8j++8jOm7mOiupOW8gOWQr+OAguW8gOWQr+WQjuaViOaenOaPkOWNh+S9huiAl+aXtuWinuWKoO+8iOacgOWkpyA2MHPvvIkgKi9cbiAgZW5hYmxlX3RoaW5raW5nPzogeyB2YWx1ZTogYm9vbGVhbiB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHVueXVhbkFSR2VuZXJhdGVJbWFnZU91dHB1dCB7XG4gIC8qKiDmraTmrKHor7fmsYLnmoQgaWQgKi9cbiAgaWQ6IHN0cmluZ1xuICAvKiogdW5peCDml7bpl7TmiLMgKi9cbiAgY3JlYXRlZDogbnVtYmVyXG4gIC8qKiDov5Tlm57nmoTlm77niYfnlJ/miJDlhoXlrrkgKi9cbiAgZGF0YTogQXJyYXk8e1xuICAgIC8qKiDnlJ/miJDnmoTlm77niYcgdXJs77yM5pyJ5pWI5pyfIDI0IOWwj+aXtiAqL1xuICAgIHVybDogc3RyaW5nXG4gICAgLyoqIOaUueWGmeWQjueahCBwcm9tcHQgKi9cbiAgICByZXZpc2VkX3Byb21wdD86IHN0cmluZ1xuICB9PlxufVxuXG5leHBvcnQgdHlwZSBIdW55dWFuRWRpdEltYWdlSW5wdXQgPSB7XG4gIC8qKiDmqKHlnovlkI3np7DvvIzmnKzmnJ/kuLogaHVueXVhbi1pbWFnZe+8jOWNs+S4uuWVhuWTgeWbvue8lui+keWcuuaZryAqL1xuICBtb2RlbDogJ2h1bnl1YW4taW1hZ2UnIHwgKHN0cmluZyAmIHt9KVxuICAvKiog57yW6L6R55qE5paH5pys5o+P6L+wICovXG4gIHByb21wdDogc3RyaW5nXG4gIC8qKiDmqKHlnovniYjmnKwgKi9cbiAgdmVyc2lvbj86IHN0cmluZ1xuICAvKipcbiAgICog5Zu+54mH5bC65a+477yM6buY6K6kIFwiODAweDgwMFwiXG4gICAqIOaUr+aMgeeUqOaIt+iHquWumuS5ieWwuuWvuO+8jOS9hui+k+WFpeWwuuWvuOWPquaUr+aMgSA1MTItMTI4MCDkuYvpl7RcbiAgICog55uu5YmN5Y+q5pSv5oyBIDE6MeOAgTE2OjnjgIE5OjE2IOS4ieS4quWwuuWvuFxuICAgKi9cbiAgc2l6ZT86IHN0cmluZ1xuICAvKipcbiAgICog55Sf5oiQ5Zu+54mH5Liq5pWw77yM6buY6K6k5Li6IDFcbiAgICog55uu5YmN5Y+q5pSv5oyB55Sf5oiQ5LiA5byg77yM5Zu65a6a5Li6IDHvvIzkvKDlhbbku5bnmoTlgLzkvJrmiqXplJlcbiAgICovXG4gIG4/OiBudW1iZXJcbiAgLyoqXG4gICAqIGJldGEg5Y+C5pWw77yM6ZqP5py656eN5a2QXG4gICAqIOiMg+WbtCBbMSwgNDI5NDk2NzI5NV3vvIzkuI3kvKDml7bpu5jorqTpmo/mnLpcbiAgICovXG4gIHNlZWQ/OiBudW1iZXJcbiAgLyoqXG4gICAqIOS4muWKoeiHquWumuS5ieinkuagh+WGheWuuVxuICAgKiDpmZDliLYgMTYg5Liq5a2X56ym6ZW/5bqm77yI5LiN5Yy65YiG5Lit6Iux5paH77yJXG4gICAqL1xuICBmb290bm90ZT86IHN0cmluZ1xuICAvKipcbiAgICog5Zu+IGJhc2U2NCDnvJbnoIHvvIzlpKflsI/kuI3otoXov4cgNk1cbiAgICog5pSv5oyBIGpwZy9qcGVnIOagvOW8j++8jOWSjCBpbWFnZV91cmwg5LqM6YCJ5LiAXG4gICAqIOmVv+efrei+ueavlOS+i+imgeaxgiAyOjEg5YaFXG4gICAqL1xuICBpbWFnZT86IHN0cmluZ1xuICAvKipcbiAgICog5Zu+54mHIHVybFxuICAgKiDplb/nn63ovrnmr5TkvovopoHmsYIgMjoxIOWGhe+8jOWSjCBpbWFnZSDkuozpgInkuIBcbiAgICovXG4gIGltYWdlX3VybD86IHN0cmluZ1xufSAmIChcbiAgfCB7XG4gICAgbWFzazogc3RyaW5nXG4gICAgbWFza191cmw/OiBuZXZlclxuICB9XG4gIHwge1xuICAgIG1hc2s/OiBuZXZlclxuICAgIG1hc2tfdXJsOiBzdHJpbmdcbiAgfVxuKVxuXG4vKipcbiAqIOa3t+WFg+WbvueJh+eUn+aIkOi+k+WHulxuICovXG5leHBvcnQgaW50ZXJmYWNlIEh1bnl1YW5HZW5lcmF0ZUltYWdlT3V0cHV0IHtcbiAgLyoqIOatpOasoeivt+axgueahCBpZCAqL1xuICBpZDogc3RyaW5nXG4gIC8qKiB1bml4IOaXtumXtOaIsyAqL1xuICBjcmVhdGVkOiBudW1iZXJcbiAgLyoqIOi/lOWbnueahOWbvueJh+eUn+aIkOWGheWuuSAqL1xuICBkYXRhOiBBcnJheTx7XG4gICAgLyoqIOeUn+aIkOeahOWbvueJhyB1cmzvvIzmnInmlYjmnJ/kuLogMjQg5bCP5pe2ICovXG4gICAgdXJsOiBzdHJpbmdcbiAgICAvKiog5Y6fIHByb21wdCDmlLnlhpnlkI7nmoTmlofmnKzjgILoi6UgcmV2aXNlIOS4uiBmYWxzZe+8jOWImeS4uuWOnyBwcm9tcHQgKi9cbiAgICByZXZpc2VkX3Byb21wdD86IHN0cmluZ1xuICB9PlxufVxuXG4vKipcbiAqIOa3t+WFg+WbvueJh+e8lui+kei+k+WHulxuICovXG5leHBvcnQgaW50ZXJmYWNlIEh1bnl1YW5FZGl0SW1hZ2VPdXRwdXQge1xuICAvKiog5q2k5qyh6K+35rGC55qEIGlkICovXG4gIGlkOiBzdHJpbmdcbiAgLyoqIHVuaXgg5pe26Ze05oizICovXG4gIGNyZWF0ZWQ6IG51bWJlclxuICAvKiog6L+U5Zue55qE5Zu+54mH55Sf5oiQ5YaF5a65ICovXG4gIGRhdGE6IEFycmF5PHtcbiAgICAvKiog55Sf5oiQ55qE5Zu+54mHIHVybO+8jOacieaViOacn+S4uiAyNCDlsI/ml7YgKi9cbiAgICB1cmw6IHN0cmluZ1xuICB9PlxufVxuXG4vLyAjZW5kcmVnaW9uXG4iXX0=
|
package/dist/esm/utils.js
CHANGED
|
@@ -249,4 +249,4 @@ export function functionToolToModelTool(tool) {
|
|
|
249
249
|
},
|
|
250
250
|
};
|
|
251
251
|
}
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQTRDLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRyxlQVc3QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sZUFBZSxHQUFHLGdCQVE5QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sc0NBQXNDLEdBQUc7SUFDcEQsSUFBSSxNQUEwQixDQUFBO0lBRTlCLE9BQU8sSUFBSSxlQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLFlBQVksQ0FBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUU3RTtJQXFCRSwyQkFBWSxRQUFrQixFQUFFLE9BQWdDO1FBQXBELHlCQUFB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R0FBRyxHQUFHLE1BQU0sQ0FBQTtJQUNkLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxFQUFFLE9BQU8sU0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLENBQUE7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxPQUF5Qjs7SUFDbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLENBQUEsTUFBQSxPQUFPLENBQUMsVUFBVSwwQ0FBRyxDQUFDLENBQUMsS0FBSSxJQUFJLENBQUE7QUFDbkcsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtU3RyZWFtIGFzIF9UcmFuc2Zvcm1TdHJlYW0sIFJlYWRhYmxlU3RyZWFtIGFzIF9SZWFkYWJsZVN0cmVhbSB9IGZyb20gJ3dlYi1zdHJlYW1zLXBvbHlmaWxsJ1xuaW1wb3J0IHsgY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyIH0gZnJvbSAnQG1hdHRpYXNidWVsZW5zL3dlYi1zdHJlYW1zLWFkYXB0ZXInXG5pbXBvcnQgeyBjcmVhdGVQYXJzZXIsIHR5cGUgRXZlbnRTb3VyY2VQYXJzZXIsIHR5cGUgUGFyc2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50c291cmNlX3BhcnNlcidcbmltcG9ydCB0eXBlIHtcbiAgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtLFxuICBDaGF0TW9kZWxNZXNzYWdlLFxuICBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UsXG4gIE1vZGVsVG9vbCxcbiAgRnVuY3Rpb25Ub29sLFxufSBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyBUZXh0RGVjb2RlciB9IGZyb20gJ3RleHQtZW5jb2Rpbmctc2hpbSdcblxuZXhwb3J0IGNvbnN0IFJlYWRhYmxlU3RyZWFtID0gX1JlYWRhYmxlU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBSZWFkYWJsZVN0cmVhbVxuXG4gIG5ldyAoXG4gICAgdW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0J5dGVTb3VyY2UsXG4gICAgc3RyYXRlZ3k/OiB7XG4gICAgICBoaWdoV2F0ZXJNYXJrPzogbnVtYmVyXG4gICAgfSxcbiAgKTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nRGVmYXVsdFNvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U/OiBVbmRlcmx5aW5nU291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG59XG5cbmV4cG9ydCBjb25zdCBUcmFuc2Zvcm1TdHJlYW0gPSBfVHJhbnNmb3JtU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBUcmFuc2Zvcm1TdHJlYW1cblxuICBuZXcgPEkgPSBhbnksIE8gPSBhbnk+KFxuICAgIHRyYW5zZm9ybWVyPzogVHJhbnNmb3JtZXI8SSwgTz4sXG4gICAgd3JpdGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxJPixcbiAgICByZWFkYWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PE8+LFxuICApOiBUcmFuc2Zvcm1TdHJlYW08SSwgTz5cbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtID0gKCkgPT4ge1xuICBsZXQgcGFyc2VyITogRXZlbnRTb3VyY2VQYXJzZXJcblxuICByZXR1cm4gbmV3IFRyYW5zZm9ybVN0cmVhbTxzdHJpbmcsIFBhcnNlZEV2ZW50Pih7XG4gICAgc3RhcnQoY29udHJvbGxlcikge1xuICAgICAgcGFyc2VyID0gY3JlYXRlUGFyc2VyKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2V2ZW50Jykge1xuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShldmVudClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHRyYW5zZm9ybShjaHVuaykge1xuICAgICAgcGFyc2VyLmZlZWQoY2h1bmspXG4gICAgfSxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IHRvUG9seWZpbGxSZWFkYWJsZSA9IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlcihSZWFkYWJsZVN0cmVhbSlcblxuZXhwb3J0IGNsYXNzIFRleHREZWNvZGVyU3RyZWFtIHtcbiAgcHJpdmF0ZSBoYW5kbGU6IFRleHREZWNvZGVyXG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm0gPSBuZXcgVHJhbnNmb3JtU3RyZWFtKHtcbiAgICB0cmFuc2Zvcm06IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoY2h1bmspLCB7IHN0cmVhbTogdHJ1ZSB9KVxuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuICAgIH0sXG4gICAgZmx1c2g6IChjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZSgpXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuXG4gICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgfSxcbiAgfSlcblxuICBjb25zdHJ1Y3RvcihlbmNvZGluZyA9ICd1dGYtOCcsIG9wdGlvbnM6IFRleHREZWNvZGVyT3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5oYW5kbGUgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpXG4gIH1cblxuICBnZXQgZW5jb2RpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmVuY29kaW5nXG4gIH1cblxuICBnZXQgZmF0YWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmZhdGFsXG4gIH1cblxuICBnZXQgaWdub3JlQk9NKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5pZ25vcmVCT01cbiAgfVxuXG4gIGdldCByZWFkYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ucmVhZGFibGVcbiAgfVxuXG4gIGdldCB3cml0YWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ud3JpdGFibGVcbiAgfVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1RleHREZWNvZGVyU3RyZWFtJ1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBc3luY0l0ZXJhYmxlPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VD4pIHtcbiAgY29uc3QgX3N0cmVhbSA9IHN0cmVhbSBhcyBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW08VD5cbiAgX3N0cmVhbVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSAoKSA9PiB7XG4gICAgY29uc3QgcmVhZGVyID0gc3RyZWFtLmdldFJlYWRlcigpXG4gICAgcmV0dXJuIHtcbiAgICAgIGFzeW5jIG5leHQoKTogUHJvbWlzZTxJdGVyYXRvclJlc3VsdDxUPj4ge1xuICAgICAgICBjb25zdCB7IGRvbmUsIHZhbHVlIH0gPSBhd2FpdCByZWFkZXIucmVhZCgpXG4gICAgICAgIHJldHVybiBkb25lID8geyBkb25lOiB0cnVlLCB2YWx1ZTogdW5kZWZpbmVkIH0gOiB7IGRvbmU6IGZhbHNlLCB2YWx1ZSB9XG4gICAgICB9LFxuICAgIH1cbiAgfVxuICByZXR1cm4gX3N0cmVhbVxufVxuXG4vKipcbiAqIOWwhiBTU0Ug5LqM6L+b5Yi25rWB6L2s5o2i5Li6IFQg57G75Z6L55qE5rWBXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRvU3RhbmRhcmRTdHJlYW08VD4oc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5Pik6IFJlYWRhYmxlU3RyZWFtPFQ+IHtcbiAgcmV0dXJuIGNyZWF0ZUFzeW5jSXRlcmFibGUoc3RyZWFtXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgIC5waXBlVGhyb3VnaChjcmVhdGVFdmVudFNvdXJjZVBhcnNlclRyYW5zZm9ybVN0cmVhbSgpKVxuICAgIC5waXBlVGhyb3VnaChuZXcgVHJhbnNmb3JtU3RyZWFtPFBhcnNlZEV2ZW50LCBUPih7XG4gICAgICB0cmFuc2Zvcm0oY2h1bmssIGNvbnRyb2xsZXIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShjaHVuay5kYXRhKSBhcyBUXG4gICAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGRhdGEpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBpZiAoY2h1bmsuZGF0YSAhPT0gJ1tET05FXScpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignRXJyb3Igd2hlbiB0cmFuc2Zvcm1pbmcgZXZlbnQgc291cmNlIGRhdGEgdG8ganNvbicsIGUsIGNodW5rKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pLCksKVxufVxuXG4vKipcbiAqIOWwhiBTU0Ug5LqM6L+b5Yi25rWB6L2s5o2i5Li65a2X56ym5Liy5rWBXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRvVGV4dFN0cmVhbShzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPHN0cmluZz4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSgodG9Qb2x5ZmlsbFJlYWRhYmxlKHN0cmVhbSkgYXMgdHlwZW9mIHN0cmVhbSkucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW0ySnNvbk9iamVjdChzdHJlYW06IFJlYWRhYmxlU3RyZWFtKSB7XG4gIGNvbnN0IHMgPSBpbnRvVGV4dFN0cmVhbShzdHJlYW0pXG4gIGxldCB0b3RhbCA9ICcnXG4gIGZvciBhd2FpdCAoY29uc3QgY2h1bmsgb2Ygcykge1xuICAgIHRvdGFsICs9IGNodW5rXG4gIH1cbiAgcmV0dXJuIEpTT04ucGFyc2UodG90YWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlPFQgPSB1bmtub3duPigpIHtcbiAgbGV0IHJlczogKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pID0+IHZvaWRcbiAgbGV0IHJlajogKHJlYXNvbj86IGFueSkgPT4gdm9pZFxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcbiAgcmV0dXJuIHsgcHJvbWlzZSwgcmVzLCByZWogfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UobWVzc2FnZTogQ2hhdE1vZGVsTWVzc2FnZSk6IG1lc3NhZ2UgaXMgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlIHtcbiAgcmV0dXJuIG1lc3NhZ2Uucm9sZSA9PT0gJ2Fzc2lzdGFudCcgJiYgJ3Rvb2xfY2FsbHMnIGluIG1lc3NhZ2UgJiYgbWVzc2FnZS50b29sX2NhbGxzPy5bMF0gIT0gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnVuY3Rpb25Ub29sVG9Nb2RlbFRvb2wodG9vbDogRnVuY3Rpb25Ub29sKTogTW9kZWxUb29sIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIGZ1bmN0aW9uOiB7XG4gICAgICBkZXNjcmlwdGlvbjogdG9vbC5kZXNjcmlwdGlvbixcbiAgICAgIG5hbWU6IHRvb2wubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHRvb2wucGFyYW1ldGVycyxcbiAgICB9LFxuICB9XG59XG4iXX0=
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQTRDLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRyxlQVc3QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sZUFBZSxHQUFHLGdCQVE5QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sc0NBQXNDLEdBQUc7SUFDcEQsSUFBSSxNQUEwQixDQUFBO0lBRTlCLE9BQU8sSUFBSSxlQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLFlBQVksQ0FBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUU3RTtJQXFCRSwyQkFBWSxRQUFrQixFQUFFLE9BQWdDO1FBQXBELHlCQUFB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R0FBRyxHQUFHLE1BQU0sQ0FBQTtJQUNkLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxFQUFFLE9BQU8sU0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLENBQUE7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxPQUF5Qjs7SUFFbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLENBQUEsTUFBQSxPQUFPLENBQUMsVUFBVSwwQ0FBRyxDQUFDLENBQUMsS0FBSSxJQUFJLENBQUE7QUFDbkcsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtU3RyZWFtIGFzIF9UcmFuc2Zvcm1TdHJlYW0sIFJlYWRhYmxlU3RyZWFtIGFzIF9SZWFkYWJsZVN0cmVhbSB9IGZyb20gJ3dlYi1zdHJlYW1zLXBvbHlmaWxsJ1xuaW1wb3J0IHsgY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyIH0gZnJvbSAnQG1hdHRpYXNidWVsZW5zL3dlYi1zdHJlYW1zLWFkYXB0ZXInXG5pbXBvcnQgeyBjcmVhdGVQYXJzZXIsIHR5cGUgRXZlbnRTb3VyY2VQYXJzZXIsIHR5cGUgUGFyc2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50c291cmNlX3BhcnNlcidcbmltcG9ydCB0eXBlIHtcbiAgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtLFxuICBDaGF0TW9kZWxNZXNzYWdlLFxuICBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UsXG4gIE1vZGVsVG9vbCxcbiAgRnVuY3Rpb25Ub29sLFxufSBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyBUZXh0RGVjb2RlciB9IGZyb20gJ3RleHQtZW5jb2Rpbmctc2hpbSdcblxuZXhwb3J0IGNvbnN0IFJlYWRhYmxlU3RyZWFtID0gX1JlYWRhYmxlU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBSZWFkYWJsZVN0cmVhbVxuXG4gIG5ldyAoXG4gICAgdW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0J5dGVTb3VyY2UsXG4gICAgc3RyYXRlZ3k/OiB7XG4gICAgICBoaWdoV2F0ZXJNYXJrPzogbnVtYmVyXG4gICAgfSxcbiAgKTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nRGVmYXVsdFNvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U/OiBVbmRlcmx5aW5nU291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG59XG5cbmV4cG9ydCBjb25zdCBUcmFuc2Zvcm1TdHJlYW0gPSBfVHJhbnNmb3JtU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBUcmFuc2Zvcm1TdHJlYW1cblxuICBuZXcgPEkgPSBhbnksIE8gPSBhbnk+KFxuICAgIHRyYW5zZm9ybWVyPzogVHJhbnNmb3JtZXI8SSwgTz4sXG4gICAgd3JpdGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxJPixcbiAgICByZWFkYWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PE8+LFxuICApOiBUcmFuc2Zvcm1TdHJlYW08SSwgTz5cbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtID0gKCkgPT4ge1xuICBsZXQgcGFyc2VyITogRXZlbnRTb3VyY2VQYXJzZXJcblxuICByZXR1cm4gbmV3IFRyYW5zZm9ybVN0cmVhbTxzdHJpbmcsIFBhcnNlZEV2ZW50Pih7XG4gICAgc3RhcnQoY29udHJvbGxlcikge1xuICAgICAgcGFyc2VyID0gY3JlYXRlUGFyc2VyKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2V2ZW50Jykge1xuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShldmVudClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHRyYW5zZm9ybShjaHVuaykge1xuICAgICAgcGFyc2VyLmZlZWQoY2h1bmspXG4gICAgfSxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IHRvUG9seWZpbGxSZWFkYWJsZSA9IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlcihSZWFkYWJsZVN0cmVhbSlcblxuZXhwb3J0IGNsYXNzIFRleHREZWNvZGVyU3RyZWFtIHtcbiAgcHJpdmF0ZSBoYW5kbGU6IFRleHREZWNvZGVyXG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm0gPSBuZXcgVHJhbnNmb3JtU3RyZWFtKHtcbiAgICB0cmFuc2Zvcm06IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoY2h1bmspLCB7IHN0cmVhbTogdHJ1ZSB9KVxuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuICAgIH0sXG4gICAgZmx1c2g6IChjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZSgpXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuXG4gICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgfSxcbiAgfSlcblxuICBjb25zdHJ1Y3RvcihlbmNvZGluZyA9ICd1dGYtOCcsIG9wdGlvbnM6IFRleHREZWNvZGVyT3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5oYW5kbGUgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpXG4gIH1cblxuICBnZXQgZW5jb2RpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmVuY29kaW5nXG4gIH1cblxuICBnZXQgZmF0YWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmZhdGFsXG4gIH1cblxuICBnZXQgaWdub3JlQk9NKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5pZ25vcmVCT01cbiAgfVxuXG4gIGdldCByZWFkYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ucmVhZGFibGVcbiAgfVxuXG4gIGdldCB3cml0YWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ud3JpdGFibGVcbiAgfVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1RleHREZWNvZGVyU3RyZWFtJ1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBc3luY0l0ZXJhYmxlPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VD4pIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBjb25zdCBfc3RyZWFtID0gc3RyZWFtIGFzIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxUPlxuICAoX3N0cmVhbSBhcyBhbnkpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9ICgpID0+IHtcbiAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcbiAgICByZXR1cm4ge1xuICAgICAgYXN5bmMgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB7XG4gICAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcbiAgICAgICAgcmV0dXJuIGRvbmUgPyB7IGRvbmU6IHRydWUsIHZhbHVlOiB1bmRlZmluZWQgfSA6IHsgZG9uZTogZmFsc2UsIHZhbHVlIH1cbiAgICAgIH0sXG4gICAgfVxuICB9XG4gIHJldHVybiBfc3RyZWFtXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLogVCDnsbvlnovnmoTmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9TdGFuZGFyZFN0cmVhbTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogUmVhZGFibGVTdHJlYW08VD4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZShzdHJlYW1cbiAgICAucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIFQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIFRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSwgY2h1bmspXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLrlrZfnrKbkuLLmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9UZXh0U3RyZWFtKHN0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pOiBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW08c3RyaW5nPiB7XG4gIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKCh0b1BvbHlmaWxsUmVhZGFibGUoc3RyZWFtKSBhcyB0eXBlb2Ygc3RyZWFtKS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0oKSkpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbTJKc29uT2JqZWN0KHN0cmVhbTogUmVhZGFibGVTdHJlYW0pIHtcbiAgY29uc3QgcyA9IGludG9UZXh0U3RyZWFtKHN0cmVhbSlcbiAgbGV0IHRvdGFsID0gJydcbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBzKSB7XG4gICAgdG90YWwgKz0gY2h1bmtcbiAgfVxuICByZXR1cm4gSlNPTi5wYXJzZSh0b3RhbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVByb21pc2U8VCA9IHVua25vd24+KCkge1xuICBsZXQgcmVzOiAodmFsdWU6IFQgfCBQcm9taXNlTGlrZTxUPikgPT4gdm9pZFxuICBsZXQgcmVqOiAocmVhc29uPzogYW55KSA9PiB2b2lkXG4gIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgcmVzID0gcmVzb2x2ZVxuICAgIHJlaiA9IHJlamVjdFxuICB9KVxuICByZXR1cm4geyBwcm9taXNlLCByZXMsIHJlaiB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Rvb2xDYWxsQXNzaXN0YW50TWVzc2FnZShtZXNzYWdlOiBDaGF0TW9kZWxNZXNzYWdlKTogbWVzc2FnZSBpcyBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2Uge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXG4gIHJldHVybiBtZXNzYWdlLnJvbGUgPT09ICdhc3Npc3RhbnQnICYmICd0b29sX2NhbGxzJyBpbiBtZXNzYWdlICYmIG1lc3NhZ2UudG9vbF9jYWxscz8uWzBdICE9IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1bmN0aW9uVG9vbFRvTW9kZWxUb29sKHRvb2w6IEZ1bmN0aW9uVG9vbCk6IE1vZGVsVG9vbCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBmdW5jdGlvbjoge1xuICAgICAgZGVzY3JpcHRpb246IHRvb2wuZGVzY3JpcHRpb24sXG4gICAgICBuYW1lOiB0b29sLm5hbWUsXG4gICAgICBwYXJhbWV0ZXJzOiB0b29sLnBhcmFtZXRlcnMsXG4gICAgfSxcbiAgfVxufVxuIl19
|