nsc-react-component 4.1.18 → 4.1.20
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/page/BasePage/index.js +8 -19
- package/lib/page/BasePage/index.js.map +1 -1
- package/lib/page/BasePage/utils.js +2 -1
- package/lib/page/BasePage/utils.js.map +1 -1
- package/lib/page/SettingTable/index.d.ts +1 -0
- package/lib/page/SettingTable/index.js +19 -6
- package/lib/page/SettingTable/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["React","Button","nscfile","lodash","convertColumns","columns","_ref","searchForms","editorForms","forEach","item","temp","_objectSpread","width","children","length","search","show","props","searchProps","onChange","push","name","field","dataIndex","label","undefined","title","type","omit","labelCol","wrapperCol","rules","searchRules","editor","span","dictName","required","getText","text","_props$data","newText","data","i","value","getNewColumns","cloneDeep","converData","map","obj","_tempProp$data","_temp","_temp2","filter","child","columnShow","columnSearch","filterProps","tempProp","ellipsis","showTitle","render","renderStr","_text","_record","_index","eventOption","record","index","funcs","func","Function","res","Utils","Array","isArray","files","_files$","createElement","onClick","download","fileId","fileName","fileIds","downloadZip","join","_files$2","className","column","filteredColumns"],"sources":["../../../src/components/page/BasePage/utils.tsx"],"sourcesContent":["import React from 'react';\r\nimport Button from '../../base/button';\r\nimport nscfile from 'nsc-file'\r\nimport lodash from 'lodash'\r\nexport const convertColumns = (columns: any, { searchForms = [], editorForms = [] }: any) => {\r\n columns.forEach((item: any) => {\r\n let temp = { width: 100, ...item };\r\n if (temp.children && temp.children.length > 0) {\r\n convertColumns(temp.children, { searchForms, editorForms });\r\n } else {\r\n // Handle search form conversion\r\n if (temp.search === true || (typeof temp.search === 'object' && temp.search.show === true)) {\r\n let props = { ...(temp.props || {}) };\r\n const searchProps = typeof temp.search === 'object' ? { ...temp.search } : {};\r\n delete props.onChange;\r\n searchForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,\r\n type: temp.type,\r\n props: { ...props, ...lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol']) },\r\n labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,\r\n wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,\r\n rules: temp.searchRules || [],\r\n });\r\n }\r\n // Handle editor form conversion\r\n if (temp.editor !== false) {\r\n editorForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: temp.title,\r\n rules: temp.rules || [],\r\n type: temp.type,\r\n span: temp.span,\r\n dictName: temp.dictName,\r\n required: temp.required,\r\n props: { ...temp.props },\r\n });\r\n }\r\n }\r\n });\r\n\r\n return {\r\n searchForms,\r\n editorForms,\r\n };\r\n};\r\n\r\n// export const convertColumns = (columns: any, { searchForms = [], editorForms = [] }: any = {}) => {\r\n// // 创建局部变量存储结果(保持原参数不变)\r\n// const result = {\r\n// searchForms: [...searchForms],\r\n// editorForms: [...editorForms]\r\n// };\r\n\r\n// columns.forEach((item: any) => {\r\n// const temp = { width: 100, ...item };\r\n\r\n// if (temp.children?.length) {\r\n// // 递归处理子节点并合并结果\r\n// const childResult = convertColumns(temp.children, {\r\n// searchForms: result.searchForms,\r\n// editorForms: result.editorForms\r\n// });\r\n \r\n// // 合并子节点返回的表单数据\r\n// result.searchForms = childResult.searchForms;\r\n// result.editorForms = childResult.editorForms;\r\n// } else {\r\n// // 处理搜索表单\r\n// if (temp.search === true || (typeof temp.search === 'object' && temp.search.show === true)) {\r\n// const props = { ...(temp.props || {}) };\r\n// const searchProps = typeof temp.search === 'object' ? { ...temp.search } : {};\r\n// delete props.onChange;\r\n\r\n// result.searchForms.push({\r\n// name: temp.field || temp.dataIndex,\r\n// label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,\r\n// type: temp.type,\r\n// props: { ...props, ...lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol']) },\r\n// labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,\r\n// wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,\r\n// rules: temp.searchRules || [],\r\n// });\r\n// }\r\n\r\n// // 处理编辑表单\r\n// if (temp.editor !== false) {\r\n// result.editorForms.push({\r\n// name: temp.field || temp.dataIndex,\r\n// label: temp.title,\r\n// rules: temp.rules || [],\r\n// type: temp.type,\r\n// span: temp.span,\r\n// dictName: temp.dictName,\r\n// required: temp.required,\r\n// props: { ...temp.props },\r\n// });\r\n// }\r\n// }\r\n// });\r\n\r\n// return result;\r\n// };\r\nconst getText = (props, text) => {\r\n let newText = text;\r\n if (props?.data && props?.data?.length > 0) {\r\n let data = props.data;\r\n for (let i = 0; i < data?.length; i++) {\r\n if (data[i].value == text) {\r\n newText = data[i].label;\r\n }\r\n }\r\n }\r\n return newText;\r\n}\r\nexport const getNewColumns = (columns: any, props: any) => {\r\n let data = lodash.cloneDeep(columns);\r\n\r\n function converData(data) {\r\n return data.map(obj => {\r\n let temp = { width: 150, ...obj }\r\n delete temp.search;\r\n delete temp.rules;\r\n delete temp.span;\r\n delete temp.required;\r\n if (temp.children) {\r\n temp.children = temp.children.filter(child => child.columnShow !== false);\r\n }\r\n if (temp.columnSearch) {\r\n temp.filterProps = {\r\n type: temp.type,\r\n props: temp.props,\r\n };\r\n }\r\n let tempProp = { ...temp.props };\r\n if (tempProp?.data && tempProp?.data?.length > 0) {\r\n temp = {\r\n ellipsis: { showTitle: false },\r\n render: (text: any) => {\r\n return getText(tempProp, text);\r\n },\r\n ...temp,\r\n };\r\n }\r\n delete temp.props;\r\n delete temp.props;\r\n if (temp.render && typeof temp.render == 'string') {\r\n let renderStr = temp.render\r\n temp = {\r\n ...temp,\r\n render: (_text, _record, _index) => {\r\n const eventOption = { text: _text, record: _record, index: _index, funcs: props.funcs }\r\n const func = new Function('eventOption,Utils', renderStr)\r\n const res = func(eventOption, props.Utils)\r\n return res\r\n }\r\n }\r\n }\r\n if (temp.type == \"Upload\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n nscfile.download(files[0].fileId);\r\n }}\r\n >\r\n {files[0]?.fileName}\r\n </Button>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n let fileIds = [] as any;\r\n files.map((item) => {\r\n fileIds.push(item.fileId);\r\n });\r\n nscfile.downloadZip(fileIds.join(\",\"));\r\n }}\r\n >\r\n {\"文件下载\"}\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n if (temp.type == \"Image\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <div className=\"nsc-basepage-table-img\">\r\n {files[0]?.fileName}\r\n </div>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button type={\"link\"} onClick={() => { }}>\r\n 图片查看\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n return temp.columnShow !== false ? temp : null;\r\n }).filter(column => column !== null);\r\n }\r\n\r\n const filteredColumns = converData(data);\r\n return filteredColumns\r\n // 使用map遍历树中的每个节点并应用修改函数\r\n\r\n // const newData = data.map(item=>)\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","names":["React","Button","nscfile","lodash","convertColumns","columns","_ref","searchForms","editorForms","forEach","item","temp","_objectSpread","width","children","length","search","show","props","searchProps","onChange","push","name","field","dataIndex","label","undefined","title","type","omit","labelCol","wrapperCol","rules","searchRules","editor","span","dictName","required","getText","text","_props$data","newText","data","i","value","getNewColumns","cloneDeep","converData","map","obj","_tempProp$data","_temp","_temp2","filter","child","columnShow","columnSearch","filterProps","tempProp","ellipsis","showTitle","render","renderStr","_text","_record","_index","eventOption","record","index","funcs","console","log","func","Function","res","Utils","Array","isArray","files","_files$","createElement","onClick","download","fileId","fileName","fileIds","downloadZip","join","_files$2","className","column","filteredColumns"],"sources":["../../../src/components/page/BasePage/utils.tsx"],"sourcesContent":["import React from 'react';\r\nimport Button from '../../base/button';\r\nimport nscfile from 'nsc-file'\r\nimport lodash from 'lodash'\r\nexport const convertColumns = (columns: any, { searchForms = [], editorForms = [] }: any) => {\r\n columns.forEach((item: any) => {\r\n let temp = { width: 100, ...item };\r\n if (temp.children && temp.children.length > 0) {\r\n convertColumns(temp.children, { searchForms, editorForms });\r\n } else {\r\n // Handle search form conversion\r\n if (temp.search === true || (typeof temp.search === 'object' && temp.search.show === true)) {\r\n let props = { ...(temp.props || {}) };\r\n const searchProps = typeof temp.search === 'object' ? { ...temp.search } : {};\r\n delete props.onChange;\r\n searchForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,\r\n type: temp.type,\r\n props: { ...props, ...lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol']) },\r\n labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,\r\n wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,\r\n rules: temp.searchRules || [],\r\n });\r\n }\r\n // Handle editor form conversion\r\n if (temp.editor !== false) {\r\n editorForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: temp.title,\r\n rules: temp.rules || [],\r\n type: temp.type,\r\n span: temp.span,\r\n dictName: temp.dictName,\r\n required: temp.required,\r\n props: { ...temp.props },\r\n });\r\n }\r\n }\r\n });\r\n\r\n return {\r\n searchForms,\r\n editorForms,\r\n };\r\n};\r\n\r\n// export const convertColumns = (columns: any, { searchForms = [], editorForms = [] }: any = {}) => {\r\n// // 创建局部变量存储结果(保持原参数不变)\r\n// const result = {\r\n// searchForms: [...searchForms],\r\n// editorForms: [...editorForms]\r\n// };\r\n\r\n// columns.forEach((item: any) => {\r\n// const temp = { width: 100, ...item };\r\n\r\n// if (temp.children?.length) {\r\n// // 递归处理子节点并合并结果\r\n// const childResult = convertColumns(temp.children, {\r\n// searchForms: result.searchForms,\r\n// editorForms: result.editorForms\r\n// });\r\n \r\n// // 合并子节点返回的表单数据\r\n// result.searchForms = childResult.searchForms;\r\n// result.editorForms = childResult.editorForms;\r\n// } else {\r\n// // 处理搜索表单\r\n// if (temp.search === true || (typeof temp.search === 'object' && temp.search.show === true)) {\r\n// const props = { ...(temp.props || {}) };\r\n// const searchProps = typeof temp.search === 'object' ? { ...temp.search } : {};\r\n// delete props.onChange;\r\n\r\n// result.searchForms.push({\r\n// name: temp.field || temp.dataIndex,\r\n// label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,\r\n// type: temp.type,\r\n// props: { ...props, ...lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol']) },\r\n// labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,\r\n// wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,\r\n// rules: temp.searchRules || [],\r\n// });\r\n// }\r\n\r\n// // 处理编辑表单\r\n// if (temp.editor !== false) {\r\n// result.editorForms.push({\r\n// name: temp.field || temp.dataIndex,\r\n// label: temp.title,\r\n// rules: temp.rules || [],\r\n// type: temp.type,\r\n// span: temp.span,\r\n// dictName: temp.dictName,\r\n// required: temp.required,\r\n// props: { ...temp.props },\r\n// });\r\n// }\r\n// }\r\n// });\r\n\r\n// return result;\r\n// };\r\nconst getText = (props, text) => {\r\n let newText = text;\r\n if (props?.data && props?.data?.length > 0) {\r\n let data = props.data;\r\n for (let i = 0; i < data?.length; i++) {\r\n if (data[i].value == text) {\r\n newText = data[i].label;\r\n }\r\n }\r\n }\r\n return newText;\r\n}\r\nexport const getNewColumns = (columns: any, props: any) => {\r\n let data = lodash.cloneDeep(columns);\r\n\r\n function converData(data) {\r\n return data.map(obj => {\r\n let temp = { width: 150, ...obj }\r\n delete temp.search;\r\n delete temp.rules;\r\n delete temp.span;\r\n delete temp.required;\r\n if (temp.children) {\r\n temp.children = temp.children.filter(child => child.columnShow !== false);\r\n }\r\n if (temp.columnSearch) {\r\n temp.filterProps = {\r\n type: temp.type,\r\n props: temp.props,\r\n };\r\n }\r\n let tempProp = { ...temp.props };\r\n if (tempProp?.data && tempProp?.data?.length > 0) {\r\n temp = {\r\n ellipsis: { showTitle: false },\r\n render: (text: any) => {\r\n return getText(tempProp, text);\r\n },\r\n ...temp,\r\n };\r\n }\r\n delete temp.props;\r\n delete temp.props;\r\n if (temp.render && typeof temp.render == 'string') {\r\n let renderStr = temp.render\r\n temp = {\r\n ...temp,\r\n render: (_text, _record, _index) => {\r\n const eventOption = { text: _text, record: _record, index: _index, funcs: props.funcs }\r\n console.log('aaaaaaaaaaa')\r\n const func = new Function('eventOption,Utils', renderStr)\r\n const res = func(eventOption, props.Utils)\r\n return res\r\n }\r\n }\r\n }\r\n if (temp.type == \"Upload\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n nscfile.download(files[0].fileId);\r\n }}\r\n >\r\n {files[0]?.fileName}\r\n </Button>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n let fileIds = [] as any;\r\n files.map((item) => {\r\n fileIds.push(item.fileId);\r\n });\r\n nscfile.downloadZip(fileIds.join(\",\"));\r\n }}\r\n >\r\n {\"文件下载\"}\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n if (temp.type == \"Image\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <div className=\"nsc-basepage-table-img\">\r\n {files[0]?.fileName}\r\n </div>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button type={\"link\"} onClick={() => { }}>\r\n 图片查看\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n return temp.columnShow !== false ? temp : null;\r\n }).filter(column => column !== null);\r\n }\r\n\r\n const filteredColumns = converData(data);\r\n return filteredColumns\r\n // 使用map遍历树中的每个节点并应用修改函数\r\n\r\n // const newData = data.map(item=>)\r\n}\r\n"],"mappings":"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"}
|
|
@@ -37,7 +37,8 @@ const renderSelfToolButton = _ref => {
|
|
|
37
37
|
let {
|
|
38
38
|
selfToolButton,
|
|
39
39
|
pageRef,
|
|
40
|
-
funcs
|
|
40
|
+
funcs,
|
|
41
|
+
loading
|
|
41
42
|
} = _ref;
|
|
42
43
|
if (selfToolButton.length == 0) {
|
|
43
44
|
return null;
|
|
@@ -55,7 +56,8 @@ const renderSelfToolButton = _ref => {
|
|
|
55
56
|
const func = new Function("Utils,eventOption", item.onClick);
|
|
56
57
|
func(defaulUtil, eventOption);
|
|
57
58
|
},
|
|
58
|
-
code: item.code
|
|
59
|
+
code: item.code,
|
|
60
|
+
loading: loading[item.code] === true ? true : false
|
|
59
61
|
}, item.name);
|
|
60
62
|
});
|
|
61
63
|
}
|
|
@@ -198,7 +200,8 @@ export default class SettingTable extends React.Component {
|
|
|
198
200
|
selfColumnButton: [],
|
|
199
201
|
pageLoading: true,
|
|
200
202
|
defaultColumns: [],
|
|
201
|
-
otherProps: {}
|
|
203
|
+
otherProps: {},
|
|
204
|
+
buttonLoading: {}
|
|
202
205
|
});
|
|
203
206
|
_defineProperty(this, "pageRef", /*#__PURE__*/React.createRef());
|
|
204
207
|
_defineProperty(this, "initData", res => {
|
|
@@ -373,13 +376,15 @@ export default class SettingTable extends React.Component {
|
|
|
373
376
|
selfToolButton,
|
|
374
377
|
selfColumnButton,
|
|
375
378
|
pageLoading,
|
|
376
|
-
defaultColumns
|
|
379
|
+
defaultColumns,
|
|
380
|
+
buttonLoading = {}
|
|
377
381
|
} = this.state;
|
|
378
382
|
const {
|
|
379
383
|
treeProps: settingTreeProps = {},
|
|
380
384
|
tableProps: settingTableProps = {}
|
|
381
385
|
} = baseProps,
|
|
382
386
|
otherProps = _objectWithoutProperties(baseProps, _excluded2);
|
|
387
|
+
let _this = this;
|
|
383
388
|
// const {store:tableStore}
|
|
384
389
|
// const { store: settingTableStore } = settingTableProps;
|
|
385
390
|
const deaultFuncs = {
|
|
@@ -410,6 +415,13 @@ export default class SettingTable extends React.Component {
|
|
|
410
415
|
history: (params, type) => {
|
|
411
416
|
jumpPage(params, type);
|
|
412
417
|
},
|
|
418
|
+
setButtonLoading(code, loading) {
|
|
419
|
+
_this.setState({
|
|
420
|
+
buttonLoading: _objectSpread(_objectSpread({}, buttonLoading), {}, {
|
|
421
|
+
[code]: loading
|
|
422
|
+
})
|
|
423
|
+
});
|
|
424
|
+
},
|
|
413
425
|
getCurrentProject: () => {
|
|
414
426
|
return getProject();
|
|
415
427
|
}
|
|
@@ -479,7 +491,8 @@ export default class SettingTable extends React.Component {
|
|
|
479
491
|
}, otherProps), renderSelfToolButton({
|
|
480
492
|
selfToolButton,
|
|
481
493
|
pageRef: this.pageRef,
|
|
482
|
-
funcs: _objectSpread(_objectSpread({}, deaultFuncs), funcs)
|
|
494
|
+
funcs: _objectSpread(_objectSpread({}, deaultFuncs), funcs),
|
|
495
|
+
loading: this.state.buttonLoading
|
|
483
496
|
}), codeSelfButtons.map(item => {
|
|
484
497
|
return item;
|
|
485
498
|
}), renderSelfColumnButton({
|
|
@@ -491,4 +504,4 @@ export default class SettingTable extends React.Component {
|
|
|
491
504
|
})));
|
|
492
505
|
}
|
|
493
506
|
}
|
|
494
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlUGFnZSIsIlNwaW4iLCJCdXR0b24iLCJSZWFjdCIsIk5zY0NvbSIsIk5zY0ZpbGUiLCJOc2NSZXF1ZXN0IiwiTnNjVXRpbHMiLCJjbHMiLCJxdWVyeVN0cmluZyIsImdldExvY2FsU3RvcmUiLCJkYXlqcyIsImRlZmF1bFV0aWwiLCJjcmVhdGVFbGVtZW50IiwicmVuZGVyU2VsZlRvb2xCdXR0b24iLCJfcmVmIiwic2VsZlRvb2xCdXR0b24iLCJwYWdlUmVmIiwiZnVuY3MiLCJsZW5ndGgiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJwYWdlVHlwZSIsImtleSIsInR5cGUiLCJvbkNsaWNrIiwiZXZlbnRPcHRpb24iLCJmdW5jIiwiRnVuY3Rpb24iLCJjb2RlIiwibmFtZSIsInJlbmRlclNlbGZDb2x1bW5CdXR0b24iLCJfcmVmMiIsInNlbGZDb2x1bW5CdXR0b24iLCJyZWNvcmQiLCJyZWNvcmRTaG93IiwiZ2V0UGFnZURhdGEiLCJwYXJhbXMiLCJnZXQiLCJ4c3NGaWx0ZXIiLCJhdXRvUHJlZml4Iiwic2V0RmllbGREaXNhYmxlZCIsImRhdGEiLCJkaXNhYmxlZCIsImNvbHVtbnMiLCJuZXdDb2x1bW5zIiwib2JqIiwiX29iamVjdFNwcmVhZCIsImRhdGFJbmRleCIsImluZGV4T2YiLCJwcm9wcyIsInB1c2giLCJzZXRGaWVsZFZpc2libGUiLCJ2aXNpYmxlIiwiZWRpdG9yIiwic2V0RmllbGRQcm9wc0RhdGEiLCJwcm9wc0RhdGEiLCJqdW1wUGFnZSIsInBhdGhuYW1lIiwicXVlcnkiLCJpZCIsInRpdGxlIiwic2VydmljZU5hbWUiLCJzZXJ2aWNlUGF0aCIsIm9wZW5UeXBlIiwibmV3UXVlcnkiLCJ1cmxQYXJhbXMiLCJzdHJpbmdpZnkiLCJwYXRoIiwiY29uY2F0Iiwid2luZG93IiwiX19QT1dFUkVEX0JZX1FJQU5LVU5fXyIsInBhcmVudCIsInBvc3RNZXNzYWdlIiwiZXZlbnRUeXBlIiwicGF5bG9hZCIsImxvY2F0aW9uIiwib3JpZ2luIiwiaGlzdG9yeSIsInB1c2hTdGF0ZSIsImdvIiwiZ2V0UHJvamVjdCIsInByb2plY3QiLCJTZXR0aW5nVGFibGUiLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsInBhZ2VQcm9wcyIsInRyZWVQcm9wcyIsInN0b3JlIiwidXJsIiwiYXV0b0xvYWQiLCJ0YWJsZVByb3BzIiwicGFnZUxvYWRpbmciLCJkZWZhdWx0Q29sdW1ucyIsIm90aGVyUHJvcHMiLCJjcmVhdGVSZWYiLCJyZXMiLCJzdGF0ZSIsInNob3dTZWFyY2giLCJkZWZhdWx0U2VhcmNoIiwidGFibGVEYXRhUmVzb3VyY2UiLCJzZXRUaW1lb3V0IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50IiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50MiIsImN1cnJlbnQiLCJ0YWJsZUxvYWQiLCJzZXRTZWFyY2hQYXJhbXMiLCJjb21wb25lbnREaWRNb3VudCIsImdldERhdGEiLCJjb21wb25lbnREaWRVcGRhdGUiLCJwcmV2UHJvcHMiLCJwcmV2U3RhdGUiLCJzbmFwc2hvdCIsInRhYmxlQ29kZSIsInNldFN0YXRlIiwicHVibGlzaGVkIiwibWVudUNvZGUiLCJ0YWJQYXJhbXMiLCJpc1B1Ymxpc2hlZCIsInRoZW4iLCJfcGFnZV9wcm9wcyRwZXJtaXNzaW8iLCJ0YWJsZV9wcm9wcyIsIkpTT04iLCJwYXJzZSIsInRyZWVfcHJvcHMiLCJwYWdlX3Byb3BzIiwib3RoZXJfcHJvcHMiLCJvdGhlclBhcmFtcyIsInBlcm1pc3Npb24iLCJoYXMiLCJVdGlscyIsInBhcmFtRnVuYyIsImNvbnZlclRhYlBhcmFtcyIsInJlcXVlc3RQYXJhbXMiLCJuZXdSZXF1ZXN0UGFyYW1zIiwicXVlcnlQYXJhbXMiLCJhZGRQYXJhbXMiLCJlZGl0b3JQYXJhbXMiLCJjb252ZXJQYXJhbXMiLCJvdGhlciIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsIm5ld1BhcmFtcyIsImNvbHVtbkJ1dHRvbnMiLCJ0b29sQnV0dG9ucyIsIl9tZXNzYWdlIiwiZXJyb3IiLCJnZXRTZWFyY2hWYWx1ZXMiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQzIiwidmFsdWUiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ0IiwicmVxdWVzdENvbmZpZyIsInVuZGVmaW5lZCIsInRhYmxlUmVsb2FkIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50NSIsInJlbmRlciIsImNsYXNzTmFtZSIsImJhc2VQcm9wcyIsInNldHRpbmdUcmVlUHJvcHMiLCJzZXR0aW5nVGFibGVQcm9wcyIsIl9leGNsdWRlZDIiLCJkZWF1bHRGdW5jcyIsIm5ld0RhdGEiLCJnZXRDdXJyZW50UHJvamVjdCIsImNoaWxkcmVuIiwiY29kZVNlbGZCdXR0b25zIiwiY29kZWNvbHVtbkJ1dHRvbnMiLCJBcnJheSIsImlzQXJyYXkiLCJjaGlsZCIsIl9jaGlsZCRwcm9wcyIsIl9jaGlsZCRwcm9wczIiLCJfaXRlbSRwcm9wcyIsIl9pdGVtJHByb3BzMiIsInN0eWxlIiwid2lkdGgiLCJoZWlnaHQiLCJzcGlubmluZyIsIl9leHRlbmRzIiwiZm9ybVByb3BzIiwicmVmIiwib25IaWRlRm9ybSIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDYiLCJoaWRlRm9ybSIsImluaXREYXRhIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFnZS9TZXR0aW5nVGFibGUvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlSW1wZXJhdGl2ZUhhbmRsZSwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEJhc2VQYWdlLCB7IE5TQ0Jhc2VCYWdlUHJvcHMgfSBmcm9tIFwiLi4vQmFzZVBhZ2VcIjtcclxuaW1wb3J0IFNwaW4gZnJvbSBcIi4uLy4uL2Jhc2Uvc3BpblwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgXCIuL2luZGV4Lmxlc3NcIjtcclxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgKiBhcyBOc2NDb20gZnJvbSBcIi4vY29tXCI7XHJcbmltcG9ydCBOc2NGaWxlIGZyb20gXCJuc2MtZmlsZVwiO1xyXG5pbXBvcnQgTnNjUmVxdWVzdCBmcm9tIFwibnNjLXJlcXVlc3RcIjtcclxuaW1wb3J0ICogYXMgTnNjVXRpbHMgZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuaW1wb3J0IHsgbWVzc2FnZSB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBxdWVyeVN0cmluZyBmcm9tIFwicXVlcnktc3RyaW5nXCI7XHJcbmltcG9ydCB7IGdldExvY2FsU3RvcmUgfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IGRheWpzIGZyb20gXCJkYXlqc1wiO1xyXG5pbXBvcnQgeyBjb252ZXJGdW5jdGlvbiB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG4vLyBpbXBvcnQgeyBoaXN0b3J5IH0gZnJvbSAndW1pJ1xyXG4vLyBpbXBvcnQgeyBnZXRDb25maWdEYXRhIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5cclxuY29uc3QgZGVmYXVsVXRpbCA9IHtcclxuICBOc2NDb20sXHJcbiAgTnNjRmlsZSxcclxuICBOc2NSZXF1ZXN0LFxyXG4gIE5zY1V0aWxzLFxyXG4gIGRheWpzLFxyXG4gIGNyZWF0ZUVsZW1lbnQ6IFJlYWN0LmNyZWF0ZUVsZW1lbnQsXHJcbn0gYXMgYW55O1xyXG5jb25zdCByZW5kZXJTZWxmVG9vbEJ1dHRvbiA9ICh7IHNlbGZUb29sQnV0dG9uLCBwYWdlUmVmLCBmdW5jcyB9KSA9PiB7XHJcbiAgaWYgKHNlbGZUb29sQnV0dG9uLmxlbmd0aCA9PSAwKSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIHNlbGZUb29sQnV0dG9uLm1hcCgoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgcGFnZVR5cGU9XCJ0b29sQnV0dG9uXCJcclxuICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICB0eXBlPXtpdGVtLnR5cGV9XHJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBldmVudE9wdGlvbiA9IHsgcGFnZVJlZjogcGFnZVJlZiwgZnVuY3M6IGZ1bmNzIH07XHJcbiAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSBuZXcgRnVuY3Rpb24oXCJVdGlscyxldmVudE9wdGlvblwiLCBpdGVtLm9uQ2xpY2spO1xyXG4gICAgICAgICAgICBmdW5jKGRlZmF1bFV0aWwsIGV2ZW50T3B0aW9uKTtcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBjb2RlPXtpdGVtLmNvZGV9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge2l0ZW0ubmFtZX1cclxuICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxufTtcclxuXHJcbmNvbnN0IHJlbmRlclNlbGZDb2x1bW5CdXR0b24gPSAoeyBzZWxmQ29sdW1uQnV0dG9uLCBwYWdlUmVmLCBmdW5jcyB9KSA9PiB7XHJcbiAgaWYgKHNlbGZDb2x1bW5CdXR0b24ubGVuZ3RoID09IDApIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gc2VsZkNvbHVtbkJ1dHRvbi5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIHBhZ2VUeXBlPVwiY29sdW1uQnV0dG9uXCJcclxuICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICB0eXBlPXtpdGVtLnR5cGV9XHJcbiAgICAgICAgICBvbkNsaWNrPXsocmVjb3JkKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBldmVudE9wdGlvbiA9IHtcclxuICAgICAgICAgICAgICBwYWdlUmVmOiBwYWdlUmVmLFxyXG4gICAgICAgICAgICAgIHJlY29yZDogcmVjb3JkLFxyXG4gICAgICAgICAgICAgIGZ1bmNzOiBmdW5jcyxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzLGV2ZW50T3B0aW9uXCIsIGl0ZW0ub25DbGljayk7XHJcbiAgICAgICAgICAgIGZ1bmMoZGVmYXVsVXRpbCwgZXZlbnRPcHRpb24pO1xyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGNvZGU9e2l0ZW0uY29kZX1cclxuICAgICAgICAgIHJlY29yZFNob3c9e2l0ZW0ucmVjb3JkU2hvd31cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7aXRlbS5uYW1lfVxyXG4gICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59O1xyXG5cclxuY29uc3QgZ2V0UGFnZURhdGEgPSAocGFyYW1zOiBhbnkpID0+IHtcclxuICByZXR1cm4gTnNjUmVxdWVzdC5nZXQoYC9qcXVpY2stc2V0dGluZy9zZXR0aW5nL3RhYmxlL2luZm8vYCwge1xyXG4gICAgcGFyYW1zLFxyXG4gICAgeHNzRmlsdGVyOiBmYWxzZSxcclxuICAgIGF1dG9QcmVmaXg6IHRydWUsXHJcbiAgfSk7XHJcbn07XHJcblxyXG4vL+iuvue9ruihqOWNleWtl+auteWPquivu1xyXG5jb25zdCBzZXRGaWVsZERpc2FibGVkID0gKGRhdGE6IEFycmF5PGFueT4sIGtleSwgZGlzYWJsZWQpID0+IHtcclxuICBjb25zdCBjb2x1bW5zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdDb2x1bW5zID0gW10gYXMgYW55O1xyXG4gIGNvbHVtbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5kYXRhSW5kZXggPT0ga2V5IHx8IGtleS5pbmRleE9mKGl0ZW0uZGF0YUluZGV4KSA+IC0xKSB7XHJcbiAgICAgIGxldCBwcm9wcyA9IG9iai5wcm9wcyA/IHsgLi4ub2JqLnByb3BzIH0gOiB7fTtcclxuICAgICAgcHJvcHMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcclxuICAgICAgb2JqLnByb3BzID0gcHJvcHM7XHJcbiAgICB9XHJcbiAgICBuZXdDb2x1bW5zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Q29sdW1ucztcclxufTtcclxuLy/orr7nva7ooajljZXlrZfmrrXpmpDol49cclxuY29uc3Qgc2V0RmllbGRWaXNpYmxlID0gKGRhdGE6IEFycmF5PGFueT4sIGtleSwgdmlzaWJsZSkgPT4ge1xyXG4gIGNvbnN0IGNvbHVtbnMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0NvbHVtbnMgPSBbXSBhcyBhbnk7XHJcbiAgY29sdW1ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkgfHwga2V5LmluZGV4T2YoaXRlbS5kYXRhSW5kZXgpID4gLTEpIHtcclxuICAgICAgb2JqLmVkaXRvciA9IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICBuZXdDb2x1bW5zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Q29sdW1ucztcclxufTtcclxuXHJcbmNvbnN0IHNldEZpZWxkUHJvcHNEYXRhID0gKGRhdGE6IEFycmF5PGFueT4sIGtleSwgcHJvcHNEYXRhKSA9PiB7XHJcbiAgY29uc3QgY29sdW1ucyA9IFsuLi5kYXRhXTtcclxuICBsZXQgbmV3Q29sdW1ucyA9IFtdIGFzIGFueTtcclxuICBjb2x1bW5zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0uZGF0YUluZGV4ID09IGtleSkge1xyXG4gICAgICBsZXQgcHJvcHMgPSBvYmoucHJvcHMgPyB7IC4uLm9iai5wcm9wcyB9IDoge307XHJcbiAgICAgIHByb3BzLmRhdGEgPSBwcm9wc0RhdGE7XHJcbiAgICAgIG9iai5wcm9wcyA9IHByb3BzO1xyXG4gICAgfVxyXG4gICAgbmV3Q29sdW1ucy5wdXNoKG9iaik7XHJcbiAgfSk7XHJcbiAgcmV0dXJuIG5ld0NvbHVtbnM7XHJcbn07XHJcbmludGVyZmFjZSBJUGFyYW1zIHtcclxuICBwYXRobmFtZT86IHN0cmluZztcclxuICBxdWVyeT86IGFueTtcclxuICBpZD86IHN0cmluZztcclxuICBzZXJ2aWNlTmFtZT86IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICBzZXJ2aWNlUGF0aD86IHN0cmluZztcclxuICBtZW51Q29kZT86IHN0cmluZztcclxuICBvcGVuVHlwZT86IG51bWJlcjtcclxufVxyXG5jb25zdCBqdW1wUGFnZSA9IChwYXJhbXM6IElQYXJhbXMsIHR5cGU/OiBcImFkZFRhYlwiIHwgXCJqdW1wTWVudVwiKSA9PiB7XHJcbiAgY29uc3Qge1xyXG4gICAgcGF0aG5hbWUsXHJcbiAgICBxdWVyeSA9IHt9LFxyXG4gICAgaWQsXHJcbiAgICB0aXRsZSxcclxuICAgIHNlcnZpY2VOYW1lLFxyXG4gICAgc2VydmljZVBhdGgsXHJcbiAgICBvcGVuVHlwZSxcclxuICB9ID0gcGFyYW1zO1xyXG4gIGNvbnN0IG5ld1F1ZXJ5ID0geyAuLi5xdWVyeSB9IGFzIGFueTtcclxuICBjb25zdCB1cmxQYXJhbXMgPSBxdWVyeVN0cmluZy5zdHJpbmdpZnkobmV3UXVlcnkpO1xyXG4gIGNvbnN0IHBhdGggPSB1cmxQYXJhbXMgPyBgJHtwYXRobmFtZX0/JHt1cmxQYXJhbXN9YCA6IHBhdGhuYW1lO1xyXG4gIC8vQHRzLWlnbm9yZVxyXG4gIGlmICh3aW5kb3cuX19QT1dFUkVEX0JZX1FJQU5LVU5fXykge1xyXG4gICAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgdGl0bGU6IHRpdGxlIHx8IFwi5paw5qCH562+XCIsXHJcbiAgICAgIHNlcnZpY2VOYW1lOiBzZXJ2aWNlTmFtZSwgLy/phY3nva7nmoTlvq7lupTnlKjlkI3np7BcclxuICAgICAgc2VydmljZVBhdGg6IHNlcnZpY2VQYXRoLCAvL+mFjee9rueahOW+ruW6lOeUqOWFpeWPo+WcsOWdgFxyXG4gICAgICBwYXRoOiBwYXRoLCAvL+aWsOagh+etvueahHVybCzmsqHphY3nva5zZXJ2aWNlTmFtZSBwYXRo5Li65a6M5pW06Lev5b6EXHJcbiAgICAgIGlkOiBpZCwgLy/oh6rlrprkuYnllK/kuIDlgLxcclxuICAgICAgb3BlblR5cGU6IG9wZW5UeXBlID8gb3BlblR5cGUgOiA0LCAvL+aJk+W8gOaWueW8jyA05L2N5b6u5YmN56uvLCAz5Li6aWZyYW1lICzpu5jorqQgM1xyXG4gICAgfTtcclxuICAgIHdpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoXHJcbiAgICAgIHtcclxuICAgICAgICBldmVudFR5cGU6IHR5cGUgPyB0eXBlIDogXCJhZGRUYWJcIixcclxuICAgICAgICBzZXJ2aWNlTmFtZTogc2VydmljZU5hbWUgPyBzZXJ2aWNlTmFtZSA6IFwic2V0dGluZy13ZWJcIixcclxuICAgICAgICBwYXlsb2FkOiB0eXBlID8gcGFyYW1zIDogZGF0YSxcclxuICAgICAgfSxcclxuICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpblxyXG4gICAgKTtcclxuICB9IGVsc2Uge1xyXG4gICAgd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKHt9LCBcIlwiLCBwYXRoKTtcclxuICAgIHdpbmRvdy5oaXN0b3J5LmdvKCk7XHJcbiAgfVxyXG59O1xyXG5jb25zdCBnZXRQcm9qZWN0ID0gKCkgPT4ge1xyXG4gIGNvbnN0IHByb2plY3QgPSBnZXRMb2NhbFN0b3JlKHsgbmFtZTogXCJuc2MtaG9tZS1wcm9qZWN0XCIgfSkgfHwge307XHJcbiAgcmV0dXJuIHByb2plY3Q7XHJcbn07XHJcbmludGVyZmFjZSBJUHJvcHMge1xyXG4gIHRhYmxlQ29kZTogc3RyaW5nO1xyXG4gIGNsYXNzTmFtZT86IGFueTtcclxuICBtZW51Q29kZT86IHN0cmluZztcclxuICBmdW5jcz86IGFueTtcclxuICBwdWJsaXNoZWQ/OiBib29sZWFuO1xyXG4gIGluc3RhbmNlUmVmPzogYW55O1xyXG4gIHRhYlBhcmFtcz86IGFueTtcclxuICBvbkNhbGxCYWNrcz86IHtcclxuICAgIHRyZWVTZWxlY3RDYWxsQmFjaz86IGFueTsgLy/moJHngrnlh7vmn6Xor6LlkI7lm57osINcclxuICAgIG9uUXVlcnlDYWxsQmFjaz86IGFueTsgLy/mn6Xor6Llm57osIPvvIzmn6Xor6LmlbDmja7lkI7lm57osINcclxuICAgIG9uU3VtYml0Q2FsbEJhY2s/OiBhbnk7IC8v5L+d5a2Y5Zue6LCD77yM5L+d5a2Y5pWw5o2u5oiQ5Yqf5ZCO5Zue6LCDXHJcbiAgICBvbkRlbGV0ZUNhbGxCYWNrPzogYW55OyAvL+WIoOmZpOaMiemSruWbnuiwg++8jOWIoOmZpOaVsOaNruWQjuaJp+ihjFxyXG4gICAgb25FZGl0b3JDYWxsQmFjaz86IGFueTsgLy/nvJbovpHmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICAgIG9uQWRkQ2FsbEJhY2s/OiBhbnk7IC8v5re75Yqg5oyJ6ZKu5Zue6LCD77yM5omT5byA5by55qGG5ZCO5omn6KGMXHJcbiAgICBvblNlYXJjaENhbGxCYWNrPzogYW55OyAvL+WIl+ihqOafpeivouaMiemSruWbnuiwg++8jOaJk+W8gOW8ueahhuWQjuaJp+ihjFxyXG4gIH07XHJcbiAgYmFzZVByb3BzPzogTlNDQmFzZUJhZ2VQcm9wcztcclxuICBhdXRvTG9hZD86Ym9vbGVhblxyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNldHRpbmdUYWJsZSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudDxJUHJvcHMsIGFueT4ge1xyXG4gIHN0YXRlID0ge1xyXG4gICAgcGFnZVByb3BzOiB7fSBhcyBhbnksXHJcbiAgICB0cmVlUHJvcHM6IHsgc3RvcmU6IHsgdXJsOiBcIlwiLCBhdXRvTG9hZDogZmFsc2UgfSB9IGFzIGFueSxcclxuICAgIHRhYmxlUHJvcHM6IHt9IGFzIGFueSxcclxuICAgIHNlbGZUb29sQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgICBzZWxmQ29sdW1uQnV0dG9uOiBbXSBhcyBhbnksXHJcbiAgICBwYWdlTG9hZGluZzogdHJ1ZSxcclxuICAgIGRlZmF1bHRDb2x1bW5zOiBbXSBhcyBhbnksXHJcbiAgICBvdGhlclByb3BzOiB7fSBhcyBhbnksXHJcbiAgfTtcclxuICBwYWdlUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29tcG9uZW50RGlkTW91bnQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICB9XHJcblxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShcclxuICAgIHByZXZQcm9wczogUmVhZG9ubHk8SVByb3BzPixcclxuICAgIHByZXZTdGF0ZTogUmVhZG9ubHk8YW55PixcclxuICAgIHNuYXBzaG90PzogYW55XHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAocHJldlByb3BzLnRhYmxlQ29kZSAhPSB0aGlzLnByb3BzLnRhYmxlQ29kZSkge1xyXG4gICAgICB0aGlzLmdldERhdGEoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGluaXREYXRhID0gKHJlczogYW55KSA9PiB7XHJcbiAgICBjb25zdCB7IG90aGVyUHJvcHMsIHBhZ2VQcm9wcyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChcclxuICAgICAgcGFnZVByb3BzLnNob3dTZWFyY2ggIT09IGZhbHNlICYmXHJcbiAgICAgIG90aGVyUHJvcHMuZGVmYXVsdFNlYXJjaCAmJlxyXG4gICAgICBvdGhlclByb3BzLnRhYmxlRGF0YVJlc291cmNlID09IFwidXJsXCJcclxuICAgICkge1xyXG4gICAgICBsZXQgZnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzLGV2ZW50T3B0aW9uXCIsIG90aGVyUHJvcHMuZGVmYXVsdFNlYXJjaCk7XHJcbiAgICAgIGNvbnN0IHBhcmFtcyA9IGZ1bmMoZGVmYXVsVXRpbCwgeyBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYgfSk7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py50YWJsZUxvYWQoeyAuLi5wYXJhbXMgfSk7XHJcbiAgICAgICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnNldFNlYXJjaFBhcmFtcyh7IC4uLnBhcmFtcyB9KTtcclxuICAgICAgfSwgNTApOyAvL+ebtOaOpeiuvue9ru+8jHBhZ2VSZWbmsqHnu5HlrprvvIzmmoLml7bpgJrov4flu7bov5/lh73mlbDov5vooYzop6PlhrNcclxuICAgIH1cclxuICB9O1xyXG4gIC8vIOiOt+WPluaVsOaNrlxyXG4gIGdldERhdGEoKSB7XHJcbiAgICAvLyDku45wcm9wc+S4reiOt+WPlnRhYmxlQ29kZeOAgXB1Ymxpc2hlZOOAgW1lbnVDb2RlXHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgcGFnZUxvYWRpbmc6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHsgdGFibGVDb2RlLCBwdWJsaXNoZWQgPSB0cnVlLCBtZW51Q29kZSwgdGFiUGFyYW1zIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgLy8g5aaC5p6cdGFibGVDb2Rl5a2Y5ZyoXHJcbiAgICBpZiAodGFibGVDb2RlKSB7XHJcbiAgICAgIC8vIOWumuS5ieWPguaVsFxyXG4gICAgICBsZXQgcGFyYW1zID0geyBjb2RlOiB0YWJsZUNvZGUgfSBhcyBhbnk7XHJcbiAgICAgIC8vIOWmguaenHB1Ymxpc2hlZOS4unRydWVcclxuICAgICAgaWYgKHB1Ymxpc2hlZCkge1xyXG4gICAgICAgIC8vIOiuvue9ruWPguaVsGlzUHVibGlzaGVk5Li6MVxyXG4gICAgICAgIHBhcmFtcy5pc1B1Ymxpc2hlZCA9IDE7XHJcbiAgICAgIH1cclxuICAgICAgLy8g6LCD55SoZ2V0UGFnZURhdGHmlrnms5Xojrflj5bmlbDmja5cclxuICAgICAgZ2V0UGFnZURhdGEoeyAuLi5wYXJhbXMgfSkudGhlbigocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhKSB7XHJcbiAgICAgICAgICBsZXQgdGFibGVfcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLnRhYmxlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCB0cmVlX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS50cmVlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCBwYWdlX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS5wYWdlUHJvcHMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGxldCBvdGhlcl9wcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEub3RoZXJQYXJhbXMgfHwgXCJ7fVwiKSB8fCB7fTtcclxuICAgICAgICAgIGlmIChwYWdlX3Byb3BzLnBlcm1pc3Npb24/LmhhcyA9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIHBhZ2VfcHJvcHMucGVybWlzc2lvbi5tZW51Q29kZSA9IG1lbnVDb2RlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHB1Ymxpc2hlZCA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICBwYWdlX3Byb3BzLnBlcm1pc3Npb24gPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgKHBhZ2VfcHJvcHMuc2hvd1NlYXJjaCAhPT0gZmFsc2UgJiZcclxuICAgICAgICAgICAgICBvdGhlcl9wcm9wcz8uZGVmYXVsdFNlYXJjaCAmJlxyXG4gICAgICAgICAgICAgIG90aGVyX3Byb3BzPy50YWJsZURhdGFSZXNvdXJjZSA9PSBcInVybFwiKSB8fFxyXG4gICAgICAgICAgICB0aGlzLnByb3BzLmF1dG9Mb2FkID09PSBmYWxzZVxyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRhYmxlX3Byb3BzLnN0b3JlLmF1dG9Mb2FkID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGFiUGFyYW1zKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IFV0aWxzID0gZGVmYXVsVXRpbCB8fCB7fTtcclxuICAgICAgICAgICAgbGV0IHBhcmFtRnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzXCIsIHRhYlBhcmFtcyk7XHJcbiAgICAgICAgICAgIGxldCBjb252ZXJUYWJQYXJhbXMgPSBwYXJhbUZ1bmMoVXRpbHMpO1xyXG4gICAgICAgICAgICBpZiAocGFnZV9wcm9wcy5yZXF1ZXN0UGFyYW1zKSB7XHJcbiAgICAgICAgICAgICAgbGV0IHsgcmVxdWVzdFBhcmFtcyA9IHt9IH0gPSBwYWdlX3Byb3BzO1xyXG4gICAgICAgICAgICAgIGxldCBuZXdSZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgICBhZGRQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgICBlZGl0b3JQYXJhbXM6IG51bGwsXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gbmV3UmVxdWVzdFBhcmFtcykge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlcXVlc3RQYXJhbXNba2V5XSkge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgZnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzXCIsIHJlcXVlc3RQYXJhbXNba2V5XSk7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBjb252ZXJQYXJhbXMgPSBmdW5jKFV0aWxzKTtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhLCAuLi5vdGhlciB9ID0gY29udmVyUGFyYW1zO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgbmV3UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zLCAuLi5kYXRhIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgLi4ub3RoZXIsXHJcbiAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgIG5ld1JlcXVlc3RQYXJhbXNba2V5XSA9IG5ld1BhcmFtcztcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIG5ld1JlcXVlc3RQYXJhbXNba2V5XSA9IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBwYWdlX3Byb3BzLnJlcXVlc3RQYXJhbXMgPSB7IC4uLm5ld1JlcXVlc3RQYXJhbXMgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBwYWdlX3Byb3BzLnJlcXVlc3RQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogeyBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcyB9IH0sXHJcbiAgICAgICAgICAgICAgICBhZGRQYXJhbXM6IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9LFxyXG4gICAgICAgICAgICAgICAgZWRpdG9yUGFyYW1zOiB7IGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zIH0gfSxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgcGFnZVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAuLi5wYWdlX3Byb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgdHJlZVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50cmVlX3Byb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgdGFibGVQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgLi4udGFibGVfcHJvcHMsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBvdGhlclByb3BzOiB7IC4uLm90aGVyX3Byb3BzIH0sXHJcbiAgICAgICAgICAgICAgc2VsZkNvbHVtbkJ1dHRvbjogSlNPTi5wYXJzZShyZXMuZGF0YS5jb2x1bW5CdXR0b25zKSB8fCBbXSxcclxuICAgICAgICAgICAgICBzZWxmVG9vbEJ1dHRvbjogSlNPTi5wYXJzZShyZXMuZGF0YS50b29sQnV0dG9ucykgfHwgW10sXHJcbiAgICAgICAgICAgICAgZGVmYXVsdENvbHVtbnM6IHBhZ2VfcHJvcHMuY29sdW1ucyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgcGFnZUxvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhID09IG51bGwpIHtcclxuICAgICAgICAgIG1lc3NhZ2UuZXJyb3IoXCLmnKrmib7liLDphY3nva7kv6Hmga/vvIFcIik7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgcGFnZUxvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICBwYWdlTG9hZGluZzogZmFsc2UsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgcGFnZUxvYWRpbmc6IGZhbHNlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gb25TZWFyY2goKSB7fVxyXG4gIGdldFNlYXJjaFZhbHVlcygpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LmdldFNlYXJjaFZhbHVlcygpO1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuICB0YWJsZUxvYWQocGFyYW1zOiBhbnksIHJlcXVlc3RDb25maWcgPSB7fSkge1xyXG4gICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnRhYmxlTG9hZChwYXJhbXMsIHJlcXVlc3RDb25maWcpO1xyXG4gIH1cclxuICB0YWJsZVJlbG9hZChwYXJhbXMgPSB7fSwgYXV0b0xvYWQgPSB0cnVlKSB7XHJcbiAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8udGFibGVSZWxvYWQocGFyYW1zLCBhdXRvTG9hZCk7XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICBmdW5jcyA9IHt9LFxyXG4gICAgICBiYXNlUHJvcHMgPSB7fSBhcyBOU0NCYXNlQmFnZVByb3BzLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHBhZ2VQcm9wcyxcclxuICAgICAgdHJlZVByb3BzLFxyXG4gICAgICB0YWJsZVByb3BzLFxyXG4gICAgICBzZWxmVG9vbEJ1dHRvbixcclxuICAgICAgc2VsZkNvbHVtbkJ1dHRvbixcclxuICAgICAgcGFnZUxvYWRpbmcsXHJcbiAgICAgIGRlZmF1bHRDb2x1bW5zLFxyXG4gICAgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHRyZWVQcm9wczogc2V0dGluZ1RyZWVQcm9wcyA9IHt9LFxyXG4gICAgICB0YWJsZVByb3BzOiBzZXR0aW5nVGFibGVQcm9wcyA9IHt9LFxyXG4gICAgICAuLi5vdGhlclByb3BzXHJcbiAgICB9ID0gYmFzZVByb3BzO1xyXG4gICAgLy8gY29uc3Qge3N0b3JlOnRhYmxlU3RvcmV9XHJcbiAgICAvLyBjb25zdCB7IHN0b3JlOiBzZXR0aW5nVGFibGVTdG9yZSB9ID0gc2V0dGluZ1RhYmxlUHJvcHM7XHJcbiAgICBjb25zdCBkZWF1bHRGdW5jcyA9IHtcclxuICAgICAgc2V0RmllbGREaXNhYmxlZDogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGREaXNhYmxlZChwYWdlUHJvcHMuY29sdW1ucywga2V5LCBkaXNhYmxlZCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkVmlzaWJsZTogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRWaXNpYmxlKHBhZ2VQcm9wcy5jb2x1bW5zLCBrZXksIGRpc2FibGVkKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIHBhZ2VQcm9wczogeyAuLi5wYWdlUHJvcHMsIGNvbHVtbnM6IG5ld0RhdGEgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgc2V0RmllbGRQcm9wc0RhdGE6IChrZXksIGRhdGEpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRQcm9wc0RhdGEocGFnZVByb3BzLmNvbHVtbnMsIGtleSwgZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGhpc3Rvcnk6IChwYXJhbXMsIHR5cGUpID0+IHtcclxuICAgICAgICBqdW1wUGFnZShwYXJhbXMsIHR5cGUpO1xyXG4gICAgICB9LFxyXG4gICAgICBnZXRDdXJyZW50UHJvamVjdDogKCkgPT4ge1xyXG4gICAgICAgIHJldHVybiBnZXRQcm9qZWN0KCk7XHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCBjb2RlU2VsZkJ1dHRvbnMgPSBbXTtcclxuICAgIGxldCBjb2RlY29sdW1uQnV0dG9ucyA9IFtdO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XHJcbiAgICAgIGNoaWxkcmVuLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbSkpIHtcclxuICAgICAgICAgIGl0ZW0ubWFwKChjaGlsZCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoY2hpbGQ/LnByb3BzPy5wYWdlVHlwZSA9PSBcInRvb2xCdXR0b25cIikge1xyXG4gICAgICAgICAgICAgIGNvZGVTZWxmQnV0dG9ucy5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChjaGlsZD8ucHJvcHM/LnBhZ2VUeXBlID09IFwiY29sdW1uQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgICBjb2RlY29sdW1uQnV0dG9ucy5wdXNoKGNoaWxkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgY29kZVNlbGZCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKGl0ZW0/LnByb3BzPy5wYWdlVHlwZSA9PSBcImNvbHVtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgIGNvZGVjb2x1bW5CdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgY29uc3QgeyBwcm9wcyB9OiBhbnkgPSBjaGlsZHJlbjtcclxuICAgICAgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcInRvb2xCdXR0b25cIikge1xyXG4gICAgICAgIGNvZGVTZWxmQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfSBlbHNlIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJjb2x1bW5CdXR0b25cIikge1xyXG4gICAgICAgIGNvZGVjb2x1bW5CdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xzKFwibnNjLWZyYW1ld29yay10YWJsZXBhZ2VcIiwgY2xhc3NOYW1lKX0+XHJcbiAgICAgICAge3BhZ2VMb2FkaW5nID8gKFxyXG4gICAgICAgICAgPGRpdiBzdHlsZT17eyB3aWR0aDogXCIxMDAlXCIsIGhlaWdodDogXCIxMDAlXCIgfX0+XHJcbiAgICAgICAgICAgIDxTcGluIHNwaW5uaW5nPXtwYWdlTG9hZGluZ30+PC9TcGluPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKSA6IChcclxuICAgICAgICAgIDxCYXNlUGFnZVxyXG4gICAgICAgICAgICB7Li4ucGFnZVByb3BzfVxyXG4gICAgICAgICAgICB0cmVlUHJvcHM9e3sgLi4udHJlZVByb3BzLCAuLi5zZXR0aW5nVHJlZVByb3BzIH19XHJcbiAgICAgICAgICAgIHRhYmxlUHJvcHM9e3sgLi4udGFibGVQcm9wcywgLi4uc2V0dGluZ1RhYmxlUHJvcHMgfX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXt7fX1cclxuICAgICAgICAgICAgVXRpbHM9e3sgLi4uZGVmYXVsVXRpbCB9fVxyXG4gICAgICAgICAgICByZWY9e3RoaXMucGFnZVJlZn1cclxuICAgICAgICAgICAgcGFnZVJlZj17dGhpcy5wYWdlUmVmfVxyXG4gICAgICAgICAgICBvbkhpZGVGb3JtPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBkZWZhdWx0Q29sdW1ucyB9LFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py5oaWRlRm9ybSgpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICBmdW5jcz17eyAuLi5kZWF1bHRGdW5jcywgLi4uZnVuY3MgfX1cclxuICAgICAgICAgICAgaW5pdERhdGE9e3RoaXMuaW5pdERhdGF9XHJcbiAgICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7cmVuZGVyU2VsZlRvb2xCdXR0b24oe1xyXG4gICAgICAgICAgICAgIHNlbGZUb29sQnV0dG9uLFxyXG4gICAgICAgICAgICAgIHBhZ2VSZWY6IHRoaXMucGFnZVJlZixcclxuICAgICAgICAgICAgICBmdW5jczogeyAuLi5kZWF1bHRGdW5jcywgLi4uZnVuY3MgfSxcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtjb2RlU2VsZkJ1dHRvbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7cmVuZGVyU2VsZkNvbHVtbkJ1dHRvbih7XHJcbiAgICAgICAgICAgICAgc2VsZkNvbHVtbkJ1dHRvbixcclxuICAgICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgICAgZnVuY3M6IHsgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH0sXHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICB7Y29kZWNvbHVtbkJ1dHRvbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgPC9CYXNlUGFnZT5cclxuICAgICAgICApfVxyXG4gICAgICA8L2Rpdj5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQSxPQUFPQSxRQUFRLE1BQTRCLGFBQWE7QUFDeEQsT0FBT0MsSUFBSSxNQUFNLGlCQUFpQjtBQUNsQyxPQUFPQyxNQUFNLE1BQU0sbUJBQW1CO0FBQ3RDLE9BQU8sY0FBYztBQUNyQixPQUFPQyxLQUFLLE1BQU0sT0FBTztBQUN6QixPQUFPLEtBQUtDLE1BQU0sTUFBTSxPQUFPO0FBQy9CLE9BQU9DLE9BQU8sTUFBTSxVQUFVO0FBQzlCLE9BQU9DLFVBQVUsTUFBTSxhQUFhO0FBQ3BDLE9BQU8sS0FBS0MsUUFBUSxNQUFNLG1CQUFtQjtBQUM3QyxPQUFPQyxHQUFHLE1BQU0sWUFBWTtBQUU1QixPQUFPQyxXQUFXLE1BQU0sY0FBYztBQUN0QyxTQUFTQyxhQUFhLFFBQVEsbUJBQW1CO0FBQ2pELE9BQU9DLEtBQUssTUFBTSxPQUFPO0FBRXpCO0FBQ0E7O0FBRUEsTUFBTUMsVUFBVSxHQUFHO0VBQ2pCUixNQUFNO0VBQ05DLE9BQU87RUFDUEMsVUFBVTtFQUNWQyxRQUFRO0VBQ1JJLEtBQUs7RUFDTEUsYUFBYSxFQUFFVixLQUFLLENBQUNVO0FBQ3ZCLENBQVE7QUFDUixNQUFNQyxvQkFBb0IsR0FBR0MsSUFBQSxJQUF3QztFQUFBLElBQXZDO0lBQUVDLGNBQWM7SUFBRUMsT0FBTztJQUFFQztFQUFNLENBQUMsR0FBQUgsSUFBQTtFQUM5RCxJQUFJQyxjQUFjLENBQUNHLE1BQU0sSUFBSSxDQUFDLEVBQUU7SUFDOUIsT0FBTyxJQUFJO0VBQ2IsQ0FBQyxNQUFNO0lBQ0wsT0FBT0gsY0FBYyxDQUFDSSxHQUFHLENBQUMsQ0FBQ0MsSUFBUyxFQUFFQyxLQUFhLEtBQUs7TUFDdEQsb0JBQ0VuQixLQUFBLENBQUFVLGFBQUEsQ0FBQ1gsTUFBTTtRQUNMcUIsUUFBUSxFQUFDLFlBQVk7UUFDckJDLEdBQUcsRUFBRUYs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
|
|
507
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlUGFnZSIsIlNwaW4iLCJCdXR0b24iLCJSZWFjdCIsIk5zY0NvbSIsIk5zY0ZpbGUiLCJOc2NSZXF1ZXN0IiwiTnNjVXRpbHMiLCJjbHMiLCJxdWVyeVN0cmluZyIsImdldExvY2FsU3RvcmUiLCJkYXlqcyIsImRlZmF1bFV0aWwiLCJjcmVhdGVFbGVtZW50IiwicmVuZGVyU2VsZlRvb2xCdXR0b24iLCJfcmVmIiwic2VsZlRvb2xCdXR0b24iLCJwYWdlUmVmIiwiZnVuY3MiLCJsb2FkaW5nIiwibGVuZ3RoIiwibWFwIiwiaXRlbSIsImluZGV4IiwicGFnZVR5cGUiLCJrZXkiLCJ0eXBlIiwib25DbGljayIsImV2ZW50T3B0aW9uIiwiZnVuYyIsIkZ1bmN0aW9uIiwiY29kZSIsIm5hbWUiLCJyZW5kZXJTZWxmQ29sdW1uQnV0dG9uIiwiX3JlZjIiLCJzZWxmQ29sdW1uQnV0dG9uIiwicmVjb3JkIiwicmVjb3JkU2hvdyIsImdldFBhZ2VEYXRhIiwicGFyYW1zIiwiZ2V0IiwieHNzRmlsdGVyIiwiYXV0b1ByZWZpeCIsInNldEZpZWxkRGlzYWJsZWQiLCJkYXRhIiwiZGlzYWJsZWQiLCJjb2x1bW5zIiwibmV3Q29sdW1ucyIsIm9iaiIsIl9vYmplY3RTcHJlYWQiLCJkYXRhSW5kZXgiLCJpbmRleE9mIiwicHJvcHMiLCJwdXNoIiwic2V0RmllbGRWaXNpYmxlIiwidmlzaWJsZSIsImVkaXRvciIsInNldEZpZWxkUHJvcHNEYXRhIiwicHJvcHNEYXRhIiwianVtcFBhZ2UiLCJwYXRobmFtZSIsInF1ZXJ5IiwiaWQiLCJ0aXRsZSIsInNlcnZpY2VOYW1lIiwic2VydmljZVBhdGgiLCJvcGVuVHlwZSIsIm5ld1F1ZXJ5IiwidXJsUGFyYW1zIiwic3RyaW5naWZ5IiwicGF0aCIsImNvbmNhdCIsIndpbmRvdyIsIl9fUE9XRVJFRF9CWV9RSUFOS1VOX18iLCJwYXJlbnQiLCJwb3N0TWVzc2FnZSIsImV2ZW50VHlwZSIsInBheWxvYWQiLCJsb2NhdGlvbiIsIm9yaWdpbiIsImhpc3RvcnkiLCJwdXNoU3RhdGUiLCJnbyIsImdldFByb2plY3QiLCJwcm9qZWN0IiwiU2V0dGluZ1RhYmxlIiwiQ29tcG9uZW50IiwiY29uc3RydWN0b3IiLCJhcmd1bWVudHMiLCJfZGVmaW5lUHJvcGVydHkiLCJwYWdlUHJvcHMiLCJ0cmVlUHJvcHMiLCJzdG9yZSIsInVybCIsImF1dG9Mb2FkIiwidGFibGVQcm9wcyIsInBhZ2VMb2FkaW5nIiwiZGVmYXVsdENvbHVtbnMiLCJvdGhlclByb3BzIiwiYnV0dG9uTG9hZGluZyIsImNyZWF0ZVJlZiIsInJlcyIsInN0YXRlIiwic2hvd1NlYXJjaCIsImRlZmF1bHRTZWFyY2giLCJ0YWJsZURhdGFSZXNvdXJjZSIsInNldFRpbWVvdXQiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQyIiwiY3VycmVudCIsInRhYmxlTG9hZCIsInNldFNlYXJjaFBhcmFtcyIsImNvbXBvbmVudERpZE1vdW50IiwiZ2V0RGF0YSIsImNvbXBvbmVudERpZFVwZGF0ZSIsInByZXZQcm9wcyIsInByZXZTdGF0ZSIsInNuYXBzaG90IiwidGFibGVDb2RlIiwic2V0U3RhdGUiLCJwdWJsaXNoZWQiLCJtZW51Q29kZSIsInRhYlBhcmFtcyIsImlzUHVibGlzaGVkIiwidGhlbiIsIl9wYWdlX3Byb3BzJHBlcm1pc3NpbyIsInRhYmxlX3Byb3BzIiwiSlNPTiIsInBhcnNlIiwidHJlZV9wcm9wcyIsInBhZ2VfcHJvcHMiLCJvdGhlcl9wcm9wcyIsIm90aGVyUGFyYW1zIiwicGVybWlzc2lvbiIsImhhcyIsIlV0aWxzIiwicGFyYW1GdW5jIiwiY29udmVyVGFiUGFyYW1zIiwicmVxdWVzdFBhcmFtcyIsIm5ld1JlcXVlc3RQYXJhbXMiLCJxdWVyeVBhcmFtcyIsImFkZFBhcmFtcyIsImVkaXRvclBhcmFtcyIsImNvbnZlclBhcmFtcyIsIm90aGVyIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwibmV3UGFyYW1zIiwiY29sdW1uQnV0dG9ucyIsInRvb2xCdXR0b25zIiwiX21lc3NhZ2UiLCJlcnJvciIsImdldFNlYXJjaFZhbHVlcyIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDMiLCJ2YWx1ZSIsIl90aGlzJHBhZ2VSZWYkY3VycmVudDQiLCJyZXF1ZXN0Q29uZmlnIiwidW5kZWZpbmVkIiwidGFibGVSZWxvYWQiLCJfdGhpcyRwYWdlUmVmJGN1cnJlbnQ1IiwicmVuZGVyIiwiY2xhc3NOYW1lIiwiYmFzZVByb3BzIiwic2V0dGluZ1RyZWVQcm9wcyIsInNldHRpbmdUYWJsZVByb3BzIiwiX2V4Y2x1ZGVkMiIsIl90aGlzIiwiZGVhdWx0RnVuY3MiLCJuZXdEYXRhIiwic2V0QnV0dG9uTG9hZGluZyIsImdldEN1cnJlbnRQcm9qZWN0IiwiY2hpbGRyZW4iLCJjb2RlU2VsZkJ1dHRvbnMiLCJjb2RlY29sdW1uQnV0dG9ucyIsIkFycmF5IiwiaXNBcnJheSIsImNoaWxkIiwiX2NoaWxkJHByb3BzIiwiX2NoaWxkJHByb3BzMiIsIl9pdGVtJHByb3BzIiwiX2l0ZW0kcHJvcHMyIiwic3R5bGUiLCJ3aWR0aCIsImhlaWdodCIsInNwaW5uaW5nIiwiX2V4dGVuZHMiLCJmb3JtUHJvcHMiLCJyZWYiLCJvbkhpZGVGb3JtIiwiX3RoaXMkcGFnZVJlZiRjdXJyZW50NiIsImhpZGVGb3JtIiwiaW5pdERhdGEiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL1NldHRpbmdUYWJsZS9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9yd2FyZFJlZiwgdXNlRWZmZWN0LCB1c2VJbXBlcmF0aXZlSGFuZGxlLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgQmFzZVBhZ2UsIHsgTlNDQmFzZUJhZ2VQcm9wcyB9IGZyb20gXCIuLi9CYXNlUGFnZVwiO1xyXG5pbXBvcnQgU3BpbiBmcm9tIFwiLi4vLi4vYmFzZS9zcGluXCI7XHJcbmltcG9ydCBCdXR0b24gZnJvbSBcIi4uLy4uL2Jhc2UvYnV0dG9uXCI7XHJcbmltcG9ydCBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCAqIGFzIE5zY0NvbSBmcm9tIFwiLi9jb21cIjtcclxuaW1wb3J0IE5zY0ZpbGUgZnJvbSBcIm5zYy1maWxlXCI7XHJcbmltcG9ydCBOc2NSZXF1ZXN0IGZyb20gXCJuc2MtcmVxdWVzdFwiO1xyXG5pbXBvcnQgKiBhcyBOc2NVdGlscyBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5pbXBvcnQgeyBtZXNzYWdlIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0IHF1ZXJ5U3RyaW5nIGZyb20gXCJxdWVyeS1zdHJpbmdcIjtcclxuaW1wb3J0IHsgZ2V0TG9jYWxTdG9yZSB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgZGF5anMgZnJvbSBcImRheWpzXCI7XHJcbmltcG9ydCB7IGNvbnZlckZ1bmN0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbi8vIGltcG9ydCB7IGhpc3RvcnkgfSBmcm9tICd1bWknXHJcbi8vIGltcG9ydCB7IGdldENvbmZpZ0RhdGEgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcblxyXG5jb25zdCBkZWZhdWxVdGlsID0ge1xyXG4gIE5zY0NvbSxcclxuICBOc2NGaWxlLFxyXG4gIE5zY1JlcXVlc3QsXHJcbiAgTnNjVXRpbHMsXHJcbiAgZGF5anMsXHJcbiAgY3JlYXRlRWxlbWVudDogUmVhY3QuY3JlYXRlRWxlbWVudCxcclxufSBhcyBhbnk7XHJcbmNvbnN0IHJlbmRlclNlbGZUb29sQnV0dG9uID0gKHsgc2VsZlRvb2xCdXR0b24sIHBhZ2VSZWYsIGZ1bmNzLCBsb2FkaW5nIH0pID0+IHtcclxuICBpZiAoc2VsZlRvb2xCdXR0b24ubGVuZ3RoID09IDApIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gc2VsZlRvb2xCdXR0b24ubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICBwYWdlVHlwZT1cInRvb2xCdXR0b25cIlxyXG4gICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgIHR5cGU9e2l0ZW0udHlwZX1cclxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgbGV0IGV2ZW50T3B0aW9uID0geyBwYWdlUmVmOiBwYWdlUmVmLCBmdW5jczogZnVuY3MgfTtcclxuICAgICAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBGdW5jdGlvbihcIlV0aWxzLGV2ZW50T3B0aW9uXCIsIGl0ZW0ub25DbGljayk7XHJcbiAgICAgICAgICAgIGZ1bmMoZGVmYXVsVXRpbCwgZXZlbnRPcHRpb24pO1xyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGNvZGU9e2l0ZW0uY29kZX1cclxuICAgICAgICAgIGxvYWRpbmc9e2xvYWRpbmdbaXRlbS5jb2RlXSA9PT0gdHJ1ZSA/IHRydWUgOiBmYWxzZX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7aXRlbS5uYW1lfVxyXG4gICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59O1xyXG5cclxuY29uc3QgcmVuZGVyU2VsZkNvbHVtbkJ1dHRvbiA9ICh7IHNlbGZDb2x1bW5CdXR0b24sIHBhZ2VSZWYsIGZ1bmNzIH0pID0+IHtcclxuICBpZiAoc2VsZkNvbHVtbkJ1dHRvbi5sZW5ndGggPT0gMCkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBzZWxmQ29sdW1uQnV0dG9uLm1hcCgoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgcGFnZVR5cGU9XCJjb2x1bW5CdXR0b25cIlxyXG4gICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgIHR5cGU9e2l0ZW0udHlwZX1cclxuICAgICAgICAgIG9uQ2xpY2s9eyhyZWNvcmQpID0+IHtcclxuICAgICAgICAgICAgbGV0IGV2ZW50T3B0aW9uID0ge1xyXG4gICAgICAgICAgICAgIHBhZ2VSZWY6IHBhZ2VSZWYsXHJcbiAgICAgICAgICAgICAgcmVjb3JkOiByZWNvcmQsXHJcbiAgICAgICAgICAgICAgZnVuY3M6IGZ1bmNzLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBjb25zdCBmdW5jID0gbmV3IEZ1bmN0aW9uKFwiVXRpbHMsZXZlbnRPcHRpb25cIiwgaXRlbS5vbkNsaWNrKTtcclxuICAgICAgICAgICAgZnVuYyhkZWZhdWxVdGlsLCBldmVudE9wdGlvbik7XHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgY29kZT17aXRlbS5jb2RlfVxyXG4gICAgICAgICAgcmVjb3JkU2hvdz17aXRlbS5yZWNvcmRTaG93fVxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtpdGVtLm5hbWV9XHJcbiAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcbn07XHJcblxyXG5jb25zdCBnZXRQYWdlRGF0YSA9IChwYXJhbXM6IGFueSkgPT4ge1xyXG4gIHJldHVybiBOc2NSZXF1ZXN0LmdldChgL2pxdWljay1zZXR0aW5nL3NldHRpbmcvdGFibGUvaW5mby9gLCB7XHJcbiAgICBwYXJhbXMsXHJcbiAgICB4c3NGaWx0ZXI6IGZhbHNlLFxyXG4gICAgYXV0b1ByZWZpeDogdHJ1ZSxcclxuICB9KTtcclxufTtcclxuXHJcbi8v6K6+572u6KGo5Y2V5a2X5q615Y+q6K+7XHJcbmNvbnN0IHNldEZpZWxkRGlzYWJsZWQgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBkaXNhYmxlZCkgPT4ge1xyXG4gIGNvbnN0IGNvbHVtbnMgPSBbLi4uZGF0YV07XHJcbiAgbGV0IG5ld0NvbHVtbnMgPSBbXSBhcyBhbnk7XHJcbiAgY29sdW1ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgIGxldCBvYmogPSB7IC4uLml0ZW0gfTtcclxuICAgIGlmIChpdGVtLmRhdGFJbmRleCA9PSBrZXkgfHwga2V5LmluZGV4T2YoaXRlbS5kYXRhSW5kZXgpID4gLTEpIHtcclxuICAgICAgbGV0IHByb3BzID0gb2JqLnByb3BzID8geyAuLi5vYmoucHJvcHMgfSA6IHt9O1xyXG4gICAgICBwcm9wcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xyXG4gICAgICBvYmoucHJvcHMgPSBwcm9wcztcclxuICAgIH1cclxuICAgIG5ld0NvbHVtbnMucHVzaChvYmopO1xyXG4gIH0pO1xyXG4gIHJldHVybiBuZXdDb2x1bW5zO1xyXG59O1xyXG4vL+iuvue9ruihqOWNleWtl+autemakOiXj1xyXG5jb25zdCBzZXRGaWVsZFZpc2libGUgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCB2aXNpYmxlKSA9PiB7XHJcbiAgY29uc3QgY29sdW1ucyA9IFsuLi5kYXRhXTtcclxuICBsZXQgbmV3Q29sdW1ucyA9IFtdIGFzIGFueTtcclxuICBjb2x1bW5zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgbGV0IG9iaiA9IHsgLi4uaXRlbSB9O1xyXG4gICAgaWYgKGl0ZW0uZGF0YUluZGV4ID09IGtleSB8fCBrZXkuaW5kZXhPZihpdGVtLmRhdGFJbmRleCkgPiAtMSkge1xyXG4gICAgICBvYmouZWRpdG9yID0gdmlzaWJsZTtcclxuICAgIH1cclxuICAgIG5ld0NvbHVtbnMucHVzaChvYmopO1xyXG4gIH0pO1xyXG4gIHJldHVybiBuZXdDb2x1bW5zO1xyXG59O1xyXG5cclxuY29uc3Qgc2V0RmllbGRQcm9wc0RhdGEgPSAoZGF0YTogQXJyYXk8YW55Piwga2V5LCBwcm9wc0RhdGEpID0+IHtcclxuICBjb25zdCBjb2x1bW5zID0gWy4uLmRhdGFdO1xyXG4gIGxldCBuZXdDb2x1bW5zID0gW10gYXMgYW55O1xyXG4gIGNvbHVtbnMubWFwKChpdGVtKSA9PiB7XHJcbiAgICBsZXQgb2JqID0geyAuLi5pdGVtIH07XHJcbiAgICBpZiAoaXRlbS5kYXRhSW5kZXggPT0ga2V5KSB7XHJcbiAgICAgIGxldCBwcm9wcyA9IG9iai5wcm9wcyA/IHsgLi4ub2JqLnByb3BzIH0gOiB7fTtcclxuICAgICAgcHJvcHMuZGF0YSA9IHByb3BzRGF0YTtcclxuICAgICAgb2JqLnByb3BzID0gcHJvcHM7XHJcbiAgICB9XHJcbiAgICBuZXdDb2x1bW5zLnB1c2gob2JqKTtcclxuICB9KTtcclxuICByZXR1cm4gbmV3Q29sdW1ucztcclxufTtcclxuaW50ZXJmYWNlIElQYXJhbXMge1xyXG4gIHBhdGhuYW1lPzogc3RyaW5nO1xyXG4gIHF1ZXJ5PzogYW55O1xyXG4gIGlkPzogc3RyaW5nO1xyXG4gIHNlcnZpY2VOYW1lPzogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHNlcnZpY2VQYXRoPzogc3RyaW5nO1xyXG4gIG1lbnVDb2RlPzogc3RyaW5nO1xyXG4gIG9wZW5UeXBlPzogbnVtYmVyO1xyXG59XHJcbmNvbnN0IGp1bXBQYWdlID0gKHBhcmFtczogSVBhcmFtcywgdHlwZT86IFwiYWRkVGFiXCIgfCBcImp1bXBNZW51XCIpID0+IHtcclxuICBjb25zdCB7XHJcbiAgICBwYXRobmFtZSxcclxuICAgIHF1ZXJ5ID0ge30sXHJcbiAgICBpZCxcclxuICAgIHRpdGxlLFxyXG4gICAgc2VydmljZU5hbWUsXHJcbiAgICBzZXJ2aWNlUGF0aCxcclxuICAgIG9wZW5UeXBlLFxyXG4gIH0gPSBwYXJhbXM7XHJcbiAgY29uc3QgbmV3UXVlcnkgPSB7IC4uLnF1ZXJ5IH0gYXMgYW55O1xyXG4gIGNvbnN0IHVybFBhcmFtcyA9IHF1ZXJ5U3RyaW5nLnN0cmluZ2lmeShuZXdRdWVyeSk7XHJcbiAgY29uc3QgcGF0aCA9IHVybFBhcmFtcyA/IGAke3BhdGhuYW1lfT8ke3VybFBhcmFtc31gIDogcGF0aG5hbWU7XHJcbiAgLy9AdHMtaWdub3JlXHJcbiAgaWYgKHdpbmRvdy5fX1BPV0VSRURfQllfUUlBTktVTl9fKSB7XHJcbiAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICB0aXRsZTogdGl0bGUgfHwgXCLmlrDmoIfnrb5cIixcclxuICAgICAgc2VydmljZU5hbWU6IHNlcnZpY2VOYW1lLCAvL+mFjee9rueahOW+ruW6lOeUqOWQjeensFxyXG4gICAgICBzZXJ2aWNlUGF0aDogc2VydmljZVBhdGgsIC8v6YWN572u55qE5b6u5bqU55So5YWl5Y+j5Zyw5Z2AXHJcbiAgICAgIHBhdGg6IHBhdGgsIC8v5paw5qCH562+55qEdXJsLOayoemFjee9rnNlcnZpY2VOYW1lIHBhdGjkuLrlrozmlbTot6/lvoRcclxuICAgICAgaWQ6IGlkLCAvL+iHquWumuS5ieWUr+S4gOWAvFxyXG4gICAgICBvcGVuVHlwZTogb3BlblR5cGUgPyBvcGVuVHlwZSA6IDQsIC8v5omT5byA5pa55byPIDTkvY3lvq7liY3nq68sIDPkuLppZnJhbWUgLOm7mOiupCAzXHJcbiAgICB9O1xyXG4gICAgd2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShcclxuICAgICAge1xyXG4gICAgICAgIGV2ZW50VHlwZTogdHlwZSA/IHR5cGUgOiBcImFkZFRhYlwiLFxyXG4gICAgICAgIHNlcnZpY2VOYW1lOiBzZXJ2aWNlTmFtZSA/IHNlcnZpY2VOYW1lIDogXCJzZXR0aW5nLXdlYlwiLFxyXG4gICAgICAgIHBheWxvYWQ6IHR5cGUgPyBwYXJhbXMgOiBkYXRhLFxyXG4gICAgICB9LFxyXG4gICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luXHJcbiAgICApO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUoe30sIFwiXCIsIHBhdGgpO1xyXG4gICAgd2luZG93Lmhpc3RvcnkuZ28oKTtcclxuICB9XHJcbn07XHJcbmNvbnN0IGdldFByb2plY3QgPSAoKSA9PiB7XHJcbiAgY29uc3QgcHJvamVjdCA9IGdldExvY2FsU3RvcmUoeyBuYW1lOiBcIm5zYy1ob21lLXByb2plY3RcIiB9KSB8fCB7fTtcclxuICByZXR1cm4gcHJvamVjdDtcclxufTtcclxuaW50ZXJmYWNlIElQcm9wcyB7XHJcbiAgdGFibGVDb2RlOiBzdHJpbmc7XHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIG1lbnVDb2RlPzogc3RyaW5nO1xyXG4gIGZ1bmNzPzogYW55O1xyXG4gIHB1Ymxpc2hlZD86IGJvb2xlYW47XHJcbiAgaW5zdGFuY2VSZWY/OiBhbnk7XHJcbiAgdGFiUGFyYW1zPzogYW55O1xyXG4gIG9uQ2FsbEJhY2tzPzoge1xyXG4gICAgdHJlZVNlbGVjdENhbGxCYWNrPzogYW55OyAvL+agkeeCueWHu+afpeivouWQjuWbnuiwg1xyXG4gICAgb25RdWVyeUNhbGxCYWNrPzogYW55OyAvL+afpeivouWbnuiwg++8jOafpeivouaVsOaNruWQjuWbnuiwg1xyXG4gICAgb25TdW1iaXRDYWxsQmFjaz86IGFueTsgLy/kv53lrZjlm57osIPvvIzkv53lrZjmlbDmja7miJDlip/lkI7lm57osINcclxuICAgIG9uRGVsZXRlQ2FsbEJhY2s/OiBhbnk7IC8v5Yig6Zmk5oyJ6ZKu5Zue6LCD77yM5Yig6Zmk5pWw5o2u5ZCO5omn6KGMXHJcbiAgICBvbkVkaXRvckNhbGxCYWNrPzogYW55OyAvL+e8lui+keaMiemSruWbnuiwg++8jOaJk+W8gOW8ueahhuWQjuaJp+ihjFxyXG4gICAgb25BZGRDYWxsQmFjaz86IGFueTsgLy/mt7vliqDmjInpkq7lm57osIPvvIzmiZPlvIDlvLnmoYblkI7miafooYxcclxuICAgIG9uU2VhcmNoQ2FsbEJhY2s/OiBhbnk7IC8v5YiX6KGo5p+l6K+i5oyJ6ZKu5Zue6LCD77yM5omT5byA5by55qGG5ZCO5omn6KGMXHJcbiAgfTtcclxuICBiYXNlUHJvcHM/OiBOU0NCYXNlQmFnZVByb3BzO1xyXG4gIGF1dG9Mb2FkPzogYm9vbGVhbjtcclxufVxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTZXR0aW5nVGFibGUgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8SVByb3BzLCBhbnk+IHtcclxuICBzdGF0ZSA9IHtcclxuICAgIHBhZ2VQcm9wczoge30gYXMgYW55LFxyXG4gICAgdHJlZVByb3BzOiB7IHN0b3JlOiB7IHVybDogXCJcIiwgYXV0b0xvYWQ6IGZhbHNlIH0gfSBhcyBhbnksXHJcbiAgICB0YWJsZVByb3BzOiB7fSBhcyBhbnksXHJcbiAgICBzZWxmVG9vbEJ1dHRvbjogW10gYXMgYW55LFxyXG4gICAgc2VsZkNvbHVtbkJ1dHRvbjogW10gYXMgYW55LFxyXG4gICAgcGFnZUxvYWRpbmc6IHRydWUsXHJcbiAgICBkZWZhdWx0Q29sdW1uczogW10gYXMgYW55LFxyXG4gICAgb3RoZXJQcm9wczoge30gYXMgYW55LFxyXG4gICAgYnV0dG9uTG9hZGluZzoge30gYXMgYW55LFxyXG4gIH07XHJcbiAgcGFnZVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcblxyXG4gIGNvbXBvbmVudERpZE1vdW50KCk6IHZvaWQge1xyXG4gICAgdGhpcy5nZXREYXRhKCk7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnREaWRVcGRhdGUoXHJcbiAgICBwcmV2UHJvcHM6IFJlYWRvbmx5PElQcm9wcz4sXHJcbiAgICBwcmV2U3RhdGU6IFJlYWRvbmx5PGFueT4sXHJcbiAgICBzbmFwc2hvdD86IGFueVxyXG4gICk6IHZvaWQge1xyXG4gICAgaWYgKHByZXZQcm9wcy50YWJsZUNvZGUgIT0gdGhpcy5wcm9wcy50YWJsZUNvZGUpIHtcclxuICAgICAgdGhpcy5nZXREYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbml0RGF0YSA9IChyZXM6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgeyBvdGhlclByb3BzLCBwYWdlUHJvcHMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoXHJcbiAgICAgIHBhZ2VQcm9wcy5zaG93U2VhcmNoICE9PSBmYWxzZSAmJlxyXG4gICAgICBvdGhlclByb3BzLmRlZmF1bHRTZWFyY2ggJiZcclxuICAgICAgb3RoZXJQcm9wcy50YWJsZURhdGFSZXNvdXJjZSA9PSBcInVybFwiXHJcbiAgICApIHtcclxuICAgICAgbGV0IGZ1bmMgPSBuZXcgRnVuY3Rpb24oXCJVdGlscyxldmVudE9wdGlvblwiLCBvdGhlclByb3BzLmRlZmF1bHRTZWFyY2gpO1xyXG4gICAgICBjb25zdCBwYXJhbXMgPSBmdW5jKGRlZmF1bFV0aWwsIHsgcGFnZVJlZjogdGhpcy5wYWdlUmVmIH0pO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8udGFibGVMb2FkKHsgLi4ucGFyYW1zIH0pO1xyXG4gICAgICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py5zZXRTZWFyY2hQYXJhbXMoeyAuLi5wYXJhbXMgfSk7XHJcbiAgICAgIH0sIDUwKTsgLy/nm7TmjqXorr7nva7vvIxwYWdlUmVm5rKh57uR5a6a77yM5pqC5pe26YCa6L+H5bu26L+f5Ye95pWw6L+b6KGM6Kej5YazXHJcbiAgICB9XHJcbiAgfTtcclxuICAvLyDojrflj5bmlbDmja5cclxuICBnZXREYXRhKCkge1xyXG4gICAgLy8g5LuOcHJvcHPkuK3ojrflj5Z0YWJsZUNvZGXjgIFwdWJsaXNoZWTjgIFtZW51Q29kZVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHBhZ2VMb2FkaW5nOiB0cnVlLFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCB7IHRhYmxlQ29kZSwgcHVibGlzaGVkID0gdHJ1ZSwgbWVudUNvZGUsIHRhYlBhcmFtcyB9ID0gdGhpcy5wcm9wcztcclxuICAgIC8vIOWmguaenHRhYmxlQ29kZeWtmOWcqFxyXG4gICAgaWYgKHRhYmxlQ29kZSkge1xyXG4gICAgICAvLyDlrprkuYnlj4LmlbBcclxuICAgICAgbGV0IHBhcmFtcyA9IHsgY29kZTogdGFibGVDb2RlIH0gYXMgYW55O1xyXG4gICAgICAvLyDlpoLmnpxwdWJsaXNoZWTkuLp0cnVlXHJcbiAgICAgIGlmIChwdWJsaXNoZWQpIHtcclxuICAgICAgICAvLyDorr7nva7lj4LmlbBpc1B1Ymxpc2hlZOS4ujFcclxuICAgICAgICBwYXJhbXMuaXNQdWJsaXNoZWQgPSAxO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIOiwg+eUqGdldFBhZ2VEYXRh5pa55rOV6I635Y+W5pWw5o2uXHJcbiAgICAgIGdldFBhZ2VEYXRhKHsgLi4ucGFyYW1zIH0pLnRoZW4oKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcy5jb2RlID09IDIwMCAmJiByZXMuZGF0YSkge1xyXG4gICAgICAgICAgbGV0IHRhYmxlX3Byb3BzID0gSlNPTi5wYXJzZShyZXMuZGF0YS50YWJsZVByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICBsZXQgdHJlZV9wcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEudHJlZVByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICBsZXQgcGFnZV9wcm9wcyA9IEpTT04ucGFyc2UocmVzLmRhdGEucGFnZVByb3BzIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICBsZXQgb3RoZXJfcHJvcHMgPSBKU09OLnBhcnNlKHJlcy5kYXRhLm90aGVyUGFyYW1zIHx8IFwie31cIikgfHwge307XHJcbiAgICAgICAgICBpZiAocGFnZV9wcm9wcy5wZXJtaXNzaW9uPy5oYXMgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICBwYWdlX3Byb3BzLnBlcm1pc3Npb24ubWVudUNvZGUgPSBtZW51Q29kZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChwdWJsaXNoZWQgPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgcGFnZV9wcm9wcy5wZXJtaXNzaW9uID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIChwYWdlX3Byb3BzLnNob3dTZWFyY2ggIT09IGZhbHNlICYmXHJcbiAgICAgICAgICAgICAgb3RoZXJfcHJvcHM/LmRlZmF1bHRTZWFyY2ggJiZcclxuICAgICAgICAgICAgICBvdGhlcl9wcm9wcz8udGFibGVEYXRhUmVzb3VyY2UgPT0gXCJ1cmxcIikgfHxcclxuICAgICAgICAgICAgdGhpcy5wcm9wcy5hdXRvTG9hZCA9PT0gZmFsc2VcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0YWJsZV9wcm9wcy5zdG9yZS5hdXRvTG9hZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRhYlBhcmFtcykge1xyXG4gICAgICAgICAgICBjb25zdCBVdGlscyA9IGRlZmF1bFV0aWwgfHwge307XHJcbiAgICAgICAgICAgIGxldCBwYXJhbUZ1bmMgPSBuZXcgRnVuY3Rpb24oXCJVdGlsc1wiLCB0YWJQYXJhbXMpO1xyXG4gICAgICAgICAgICBsZXQgY29udmVyVGFiUGFyYW1zID0gcGFyYW1GdW5jKFV0aWxzKTtcclxuICAgICAgICAgICAgaWYgKHBhZ2VfcHJvcHMucmVxdWVzdFBhcmFtcykge1xyXG4gICAgICAgICAgICAgIGxldCB7IHJlcXVlc3RQYXJhbXMgPSB7fSB9ID0gcGFnZV9wcm9wcztcclxuICAgICAgICAgICAgICBsZXQgbmV3UmVxdWVzdFBhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgYWRkUGFyYW1zOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgZWRpdG9yUGFyYW1zOiBudWxsLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIG5ld1JlcXVlc3RQYXJhbXMpIHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXF1ZXN0UGFyYW1zW2tleV0pIHtcclxuICAgICAgICAgICAgICAgICAgbGV0IGZ1bmMgPSBuZXcgRnVuY3Rpb24oXCJVdGlsc1wiLCByZXF1ZXN0UGFyYW1zW2tleV0pO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgY29udmVyUGFyYW1zID0gZnVuYyhVdGlscyk7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YSwgLi4ub3RoZXIgfSA9IGNvbnZlclBhcmFtcztcclxuICAgICAgICAgICAgICAgICAgbGV0IG5ld1BhcmFtcyA9IHtcclxuICAgICAgICAgICAgICAgICAgICBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcywgLi4uZGF0YSB9LFxyXG4gICAgICAgICAgICAgICAgICAgIC4uLm90aGVyLFxyXG4gICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICBuZXdSZXF1ZXN0UGFyYW1zW2tleV0gPSBuZXdQYXJhbXM7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICBuZXdSZXF1ZXN0UGFyYW1zW2tleV0gPSB7IGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zIH0gfTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgcGFnZV9wcm9wcy5yZXF1ZXN0UGFyYW1zID0geyAuLi5uZXdSZXF1ZXN0UGFyYW1zIH07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcGFnZV9wcm9wcy5yZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHsgZGF0YTogeyAuLi5jb252ZXJUYWJQYXJhbXMgfSB9LFxyXG4gICAgICAgICAgICAgICAgYWRkUGFyYW1zOiB7IGRhdGE6IHsgLi4uY29udmVyVGFiUGFyYW1zIH0gfSxcclxuICAgICAgICAgICAgICAgIGVkaXRvclBhcmFtczogeyBkYXRhOiB7IC4uLmNvbnZlclRhYlBhcmFtcyB9IH0sXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHBhZ2VQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgLi4ucGFnZV9wcm9wcyxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHRyZWVQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgLi4udHJlZV9wcm9wcyxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHRhYmxlUHJvcHM6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRhYmxlX3Byb3BzLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb3RoZXJQcm9wczogeyAuLi5vdGhlcl9wcm9wcyB9LFxyXG4gICAgICAgICAgICAgIHNlbGZDb2x1bW5CdXR0b246IEpTT04ucGFyc2UocmVzLmRhdGEuY29sdW1uQnV0dG9ucykgfHwgW10sXHJcbiAgICAgICAgICAgICAgc2VsZlRvb2xCdXR0b246IEpTT04ucGFyc2UocmVzLmRhdGEudG9vbEJ1dHRvbnMpIHx8IFtdLFxyXG4gICAgICAgICAgICAgIGRlZmF1bHRDb2x1bW5zOiBwYWdlX3Byb3BzLmNvbHVtbnMsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHJlcy5jb2RlID09IDIwMCAmJiByZXMuZGF0YSA9PSBudWxsKSB7XHJcbiAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5pyq5om+5Yiw6YWN572u5L+h5oGv77yBXCIpO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgcGFnZUxvYWRpbmc6IGZhbHNlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIHBhZ2VMb2FkaW5nOiBmYWxzZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIG9uU2VhcmNoKCkge31cclxuICBnZXRTZWFyY2hWYWx1ZXMoKSB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMucGFnZVJlZi5jdXJyZW50Py5nZXRTZWFyY2hWYWx1ZXMoKTtcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbiAgdGFibGVMb2FkKHBhcmFtczogYW55LCByZXF1ZXN0Q29uZmlnID0ge30pIHtcclxuICAgIHRoaXMucGFnZVJlZi5jdXJyZW50Py50YWJsZUxvYWQocGFyYW1zLCByZXF1ZXN0Q29uZmlnKTtcclxuICB9XHJcbiAgdGFibGVSZWxvYWQocGFyYW1zID0ge30sIGF1dG9Mb2FkID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5wYWdlUmVmLmN1cnJlbnQ/LnRhYmxlUmVsb2FkKHBhcmFtcywgYXV0b0xvYWQpO1xyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgZnVuY3MgPSB7fSxcclxuICAgICAgYmFzZVByb3BzID0ge30gYXMgTlNDQmFzZUJhZ2VQcm9wcyxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBwYWdlUHJvcHMsXHJcbiAgICAgIHRyZWVQcm9wcyxcclxuICAgICAgdGFibGVQcm9wcyxcclxuICAgICAgc2VsZlRvb2xCdXR0b24sXHJcbiAgICAgIHNlbGZDb2x1bW5CdXR0b24sXHJcbiAgICAgIHBhZ2VMb2FkaW5nLFxyXG4gICAgICBkZWZhdWx0Q29sdW1ucyxcclxuICAgICAgYnV0dG9uTG9hZGluZyA9IHt9LFxyXG4gICAgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHRyZWVQcm9wczogc2V0dGluZ1RyZWVQcm9wcyA9IHt9LFxyXG4gICAgICB0YWJsZVByb3BzOiBzZXR0aW5nVGFibGVQcm9wcyA9IHt9LFxyXG4gICAgICAuLi5vdGhlclByb3BzXHJcbiAgICB9ID0gYmFzZVByb3BzO1xyXG4gICAgbGV0IF90aGlzID0gdGhpc1xyXG4gICAgLy8gY29uc3Qge3N0b3JlOnRhYmxlU3RvcmV9XHJcbiAgICAvLyBjb25zdCB7IHN0b3JlOiBzZXR0aW5nVGFibGVTdG9yZSB9ID0gc2V0dGluZ1RhYmxlUHJvcHM7XHJcbiAgICBjb25zdCBkZWF1bHRGdW5jcyA9IHtcclxuICAgICAgc2V0RmllbGREaXNhYmxlZDogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGREaXNhYmxlZChwYWdlUHJvcHMuY29sdW1ucywga2V5LCBkaXNhYmxlZCk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHNldEZpZWxkVmlzaWJsZTogKGtleSwgZGlzYWJsZWQpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRWaXNpYmxlKHBhZ2VQcm9wcy5jb2x1bW5zLCBrZXksIGRpc2FibGVkKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIHBhZ2VQcm9wczogeyAuLi5wYWdlUHJvcHMsIGNvbHVtbnM6IG5ld0RhdGEgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgc2V0RmllbGRQcm9wc0RhdGE6IChrZXksIGRhdGEpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdEYXRhID0gc2V0RmllbGRQcm9wc0RhdGEocGFnZVByb3BzLmNvbHVtbnMsIGtleSwgZGF0YSk7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBwYWdlUHJvcHM6IHsgLi4ucGFnZVByb3BzLCBjb2x1bW5zOiBuZXdEYXRhIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGhpc3Rvcnk6IChwYXJhbXMsIHR5cGUpID0+IHtcclxuICAgICAgICBqdW1wUGFnZShwYXJhbXMsIHR5cGUpO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXRCdXR0b25Mb2FkaW5nKGNvZGUsIGxvYWRpbmcpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBidXR0b25Mb2FkaW5nOiB7IC4uLmJ1dHRvbkxvYWRpbmcsIFtjb2RlXTogbG9hZGluZyB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG5cclxuICAgICAgZ2V0Q3VycmVudFByb2plY3Q6ICgpID0+IHtcclxuICAgICAgICByZXR1cm4gZ2V0UHJvamVjdCgpO1xyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBsZXQgY29kZVNlbGZCdXR0b25zID0gW107XHJcbiAgICBsZXQgY29kZWNvbHVtbkJ1dHRvbnMgPSBbXTtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjaGlsZHJlbi5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGl0ZW0pKSB7XHJcbiAgICAgICAgICBpdGVtLm1hcCgoY2hpbGQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGNoaWxkPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgICAgICBjb2RlU2VsZkJ1dHRvbnMucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGQ/LnByb3BzPy5wYWdlVHlwZSA9PSBcImNvbHVtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgICAgY29kZWNvbHVtbkJ1dHRvbnMucHVzaChjaGlsZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAoaXRlbT8ucHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgICAgIGNvZGVTZWxmQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJjb2x1bW5CdXR0b25cIikge1xyXG4gICAgICAgICAgICBjb2RlY29sdW1uQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIGNvbnN0IHsgcHJvcHMgfTogYW55ID0gY2hpbGRyZW47XHJcbiAgICAgIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICBjb2RlU2VsZkJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICAgIH0gZWxzZSBpZiAocHJvcHM/LnBhZ2VUeXBlID09IFwiY29sdW1uQnV0dG9uXCIpIHtcclxuICAgICAgICBjb2RlY29sdW1uQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhcIm5zYy1mcmFtZXdvcmstdGFibGVwYWdlXCIsIGNsYXNzTmFtZSl9PlxyXG4gICAgICAgIHtwYWdlTG9hZGluZyA/IChcclxuICAgICAgICAgIDxkaXYgc3R5bGU9e3sgd2lkdGg6IFwiMTAwJVwiLCBoZWlnaHQ6IFwiMTAwJVwiIH19PlxyXG4gICAgICAgICAgICA8U3BpbiBzcGlubmluZz17cGFnZUxvYWRpbmd9PjwvU3Bpbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICkgOiAoXHJcbiAgICAgICAgICA8QmFzZVBhZ2VcclxuICAgICAgICAgICAgey4uLnBhZ2VQcm9wc31cclxuICAgICAgICAgICAgdHJlZVByb3BzPXt7IC4uLnRyZWVQcm9wcywgLi4uc2V0dGluZ1RyZWVQcm9wcyB9fVxyXG4gICAgICAgICAgICB0YWJsZVByb3BzPXt7IC4uLnRhYmxlUHJvcHMsIC4uLnNldHRpbmdUYWJsZVByb3BzIH19XHJcbiAgICAgICAgICAgIGZvcm1Qcm9wcz17e319XHJcbiAgICAgICAgICAgIFV0aWxzPXt7IC4uLmRlZmF1bFV0aWwgfX1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLnBhZ2VSZWZ9XHJcbiAgICAgICAgICAgIHBhZ2VSZWY9e3RoaXMucGFnZVJlZn1cclxuICAgICAgICAgICAgb25IaWRlRm9ybT17KCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgcGFnZVByb3BzOiB7IC4uLnBhZ2VQcm9wcywgY29sdW1uczogZGVmYXVsdENvbHVtbnMgfSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB0aGlzLnBhZ2VSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgZnVuY3M9e3sgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH19XHJcbiAgICAgICAgICAgIGluaXREYXRhPXt0aGlzLmluaXREYXRhfVxyXG4gICAgICAgICAgICB7Li4ub3RoZXJQcm9wc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3JlbmRlclNlbGZUb29sQnV0dG9uKHtcclxuICAgICAgICAgICAgICBzZWxmVG9vbEJ1dHRvbixcclxuICAgICAgICAgICAgICBwYWdlUmVmOiB0aGlzLnBhZ2VSZWYsXHJcbiAgICAgICAgICAgICAgZnVuY3M6IHsgLi4uZGVhdWx0RnVuY3MsIC4uLmZ1bmNzIH0sXHJcbiAgICAgICAgICAgICAgbG9hZGluZzogdGhpcy5zdGF0ZS5idXR0b25Mb2FkaW5nLFxyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAge2NvZGVTZWxmQnV0dG9ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtyZW5kZXJTZWxmQ29sdW1uQnV0dG9uKHtcclxuICAgICAgICAgICAgICBzZWxmQ29sdW1uQnV0dG9uLFxyXG4gICAgICAgICAgICAgIHBhZ2VSZWY6IHRoaXMucGFnZVJlZixcclxuICAgICAgICAgICAgICBmdW5jczogeyAuLi5kZWF1bHRGdW5jcywgLi4uZnVuY3MgfSxcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgIHtjb2RlY29sdW1uQnV0dG9ucy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4gaXRlbTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICA8L0Jhc2VQYWdlPlxyXG4gICAgICAgICl9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUNBLE9BQU9BLFFBQVEsTUFBNEIsYUFBYTtBQUN4RCxPQUFPQyxJQUFJLE1BQU0saUJBQWlCO0FBQ2xDLE9BQU9DLE1BQU0sTUFBTSxtQkFBbUI7QUFDdEMsT0FBTyxjQUFjO0FBQ3JCLE9BQU9DLEtBQUssTUFBTSxPQUFPO0FBQ3pCLE9BQU8sS0FBS0MsTUFBTSxNQUFNLE9BQU87QUFDL0IsT0FBT0MsT0FBTyxNQUFNLFVBQVU7QUFDOUIsT0FBT0MsVUFBVSxNQUFNLGFBQWE7QUFDcEMsT0FBTyxLQUFLQyxRQUFRLE1BQU0sbUJBQW1CO0FBQzdDLE9BQU9DLEdBQUcsTUFBTSxZQUFZO0FBRTVCLE9BQU9DLFdBQVcsTUFBTSxjQUFjO0FBQ3RDLFNBQVNDLGFBQWEsUUFBUSxtQkFBbUI7QUFDakQsT0FBT0MsS0FBSyxNQUFNLE9BQU87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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["BasePage","Spin","Button","React","NscCom","NscFile","NscRequest","NscUtils","cls","queryString","getLocalStore","dayjs","defaulUtil","createElement","renderSelfToolButton","_ref","selfToolButton","pageRef","funcs","length","map","item","index","pageType","key","type","onClick","eventOption","func","Function","code","name","renderSelfColumnButton","_ref2","selfColumnButton","record","recordShow","getPageData","params","get","xssFilter","autoPrefix","setFieldDisabled","data","disabled","columns","newColumns","obj","_objectSpread","dataIndex","indexOf","props","push","setFieldVisible","visible","editor","setFieldPropsData","propsData","jumpPage","pathname","query","id","title","serviceName","servicePath","openType","newQuery","urlParams","stringify","path","concat","window","__POWERED_BY_QIANKUN__","parent","postMessage","eventType","payload","location","origin","history","pushState","go","getProject","project","SettingTable","Component","constructor","arguments","_defineProperty","pageProps","treeProps","store","url","autoLoad","tableProps","pageLoading","defaultColumns","otherProps","createRef","res","state","showSearch","defaultSearch","tableDataResource","setTimeout","_this$pageRef$current","_this$pageRef$current2","current","tableLoad","setSearchParams","componentDidMount","getData","componentDidUpdate","prevProps","prevState","snapshot","tableCode","setState","published","menuCode","tabParams","isPublished","then","_page_props$permissio","table_props","JSON","parse","tree_props","page_props","other_props","otherParams","permission","has","Utils","paramFunc","converTabParams","requestParams","newRequestParams","queryParams","addParams","editorParams","converParams","other","_objectWithoutProperties","_excluded","newParams","columnButtons","toolButtons","_message","error","getSearchValues","_this$pageRef$current3","value","_this$pageRef$current4","requestConfig","undefined","tableReload","_this$pageRef$current5","render","className","baseProps","settingTreeProps","settingTableProps","_excluded2","deaultFuncs","newData","getCurrentProject","children","codeSelfButtons","codecolumnButtons","Array","isArray","child","_child$props","_child$props2","_item$props","_item$props2","style","width","height","spinning","_extends","formProps","ref","onHideForm","_this$pageRef$current6","hideForm","initData"],"sources":["../../../src/components/page/SettingTable/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport Button from \"../../base/button\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport * as NscCom from \"./com\";\r\nimport NscFile from \"nsc-file\";\r\nimport NscRequest from \"nsc-request\";\r\nimport * as NscUtils from \"@bj-nsc/functions\";\r\nimport cls from \"classnames\";\r\nimport { message } from \"antd\";\r\nimport queryString from \"query-string\";\r\nimport { getLocalStore } from \"@bj-nsc/functions\";\r\nimport dayjs from \"dayjs\";\r\nimport { converFunction } from \"../../utils\";\r\n// import { history } from 'umi'\r\n// import { getConfigData } from '../services';\r\n\r\nconst defaulUtil = {\r\n NscCom,\r\n NscFile,\r\n NscRequest,\r\n NscUtils,\r\n dayjs,\r\n createElement: React.createElement,\r\n} as any;\r\nconst renderSelfToolButton = ({ selfToolButton, pageRef, funcs }) => {\r\n if (selfToolButton.length == 0) {\r\n return null;\r\n } else {\r\n return selfToolButton.map((item: any, index: number) => {\r\n return (\r\n <Button\r\n pageType=\"toolButton\"\r\n key={index}\r\n type={item.type}\r\n onClick={() => {\r\n let eventOption = { pageRef: pageRef, funcs: funcs };\r\n const func = new Function(\"Utils,eventOption\", item.onClick);\r\n func(defaulUtil, eventOption);\r\n }}\r\n code={item.code}\r\n >\r\n {item.name}\r\n </Button>\r\n );\r\n });\r\n }\r\n};\r\n\r\nconst renderSelfColumnButton = ({ selfColumnButton, pageRef, funcs }) => {\r\n if (selfColumnButton.length == 0) {\r\n return null;\r\n } else {\r\n return selfColumnButton.map((item: any, index: number) => {\r\n return (\r\n <Button\r\n pageType=\"columnButton\"\r\n key={index}\r\n type={item.type}\r\n onClick={(record) => {\r\n let eventOption = {\r\n pageRef: pageRef,\r\n record: record,\r\n funcs: funcs,\r\n };\r\n const func = new Function(\"Utils,eventOption\", item.onClick);\r\n func(defaulUtil, eventOption);\r\n }}\r\n code={item.code}\r\n recordShow={item.recordShow}\r\n >\r\n {item.name}\r\n </Button>\r\n );\r\n });\r\n }\r\n};\r\n\r\nconst getPageData = (params: any) => {\r\n return NscRequest.get(`/jquick-setting/setting/table/info/`, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n obj.editor = visible;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\ninterface IParams {\r\n pathname?: string;\r\n query?: any;\r\n id?: string;\r\n serviceName?: string;\r\n title?: string;\r\n servicePath?: string;\r\n menuCode?: string;\r\n openType?: number;\r\n}\r\nconst jumpPage = (params: IParams, type?: \"addTab\" | \"jumpMenu\") => {\r\n const {\r\n pathname,\r\n query = {},\r\n id,\r\n title,\r\n serviceName,\r\n servicePath,\r\n openType,\r\n } = params;\r\n const newQuery = { ...query } as any;\r\n const urlParams = queryString.stringify(newQuery);\r\n const path = urlParams ? `${pathname}?${urlParams}` : pathname;\r\n //@ts-ignore\r\n if (window.__POWERED_BY_QIANKUN__) {\r\n const data = {\r\n title: title || \"新标签\",\r\n serviceName: serviceName, //配置的微应用名称\r\n servicePath: servicePath, //配置的微应用入口地址\r\n path: path, //新标签的url,没配置serviceName path为完整路径\r\n id: id, //自定义唯一值\r\n openType: openType ? openType : 4, //打开方式 4位微前端, 3为iframe ,默认 3\r\n };\r\n window.parent.postMessage(\r\n {\r\n eventType: type ? type : \"addTab\",\r\n serviceName: serviceName ? serviceName : \"setting-web\",\r\n payload: type ? params : data,\r\n },\r\n window.location.origin\r\n );\r\n } else {\r\n window.history.pushState({}, \"\", path);\r\n window.history.go();\r\n }\r\n};\r\nconst getProject = () => {\r\n const project = getLocalStore({ name: \"nsc-home-project\" }) || {};\r\n return project;\r\n};\r\ninterface IProps {\r\n tableCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n tabParams?: any;\r\n onCallBacks?: {\r\n treeSelectCallBack?: any; //树点击查询后回调\r\n onQueryCallBack?: any; //查询回调,查询数据后回调\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onDeleteCallBack?: any; //删除按钮回调,删除数据后执行\r\n onEditorCallBack?: any; //编辑按钮回调,打开弹框后执行\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n onSearchCallBack?: any; //列表查询按钮回调,打开弹框后执行\r\n };\r\n baseProps?: NSCBaseBageProps;\r\n autoLoad?:boolean\r\n}\r\nexport default class SettingTable extends React.Component<IProps, any> {\r\n state = {\r\n pageProps: {} as any,\r\n treeProps: { store: { url: \"\", autoLoad: false } } as any,\r\n tableProps: {} as any,\r\n selfToolButton: [] as any,\r\n selfColumnButton: [] as any,\r\n pageLoading: true,\r\n defaultColumns: [] as any,\r\n otherProps: {} as any,\r\n };\r\n pageRef = React.createRef<any>();\r\n\r\n componentDidMount(): void {\r\n this.getData();\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.tableCode != this.props.tableCode) {\r\n this.getData();\r\n }\r\n }\r\n\r\n initData = (res: any) => {\r\n const { otherProps, pageProps } = this.state;\r\n if (\r\n pageProps.showSearch !== false &&\r\n otherProps.defaultSearch &&\r\n otherProps.tableDataResource == \"url\"\r\n ) {\r\n let func = new Function(\"Utils,eventOption\", otherProps.defaultSearch);\r\n const params = func(defaulUtil, { pageRef: this.pageRef });\r\n setTimeout(() => {\r\n this.pageRef.current?.tableLoad({ ...params });\r\n this.pageRef.current?.setSearchParams({ ...params });\r\n }, 50); //直接设置,pageRef没绑定,暂时通过延迟函数进行解决\r\n }\r\n };\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const { tableCode, published = true, menuCode, tabParams } = this.props;\r\n // 如果tableCode存在\r\n if (tableCode) {\r\n // 定义参数\r\n let params = { code: tableCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n let table_props = JSON.parse(res.data.tableProps || \"{}\") || {};\r\n let tree_props = JSON.parse(res.data.treeProps || \"{}\") || {};\r\n let page_props = JSON.parse(res.data.pageProps || \"{}\") || {};\r\n let other_props = JSON.parse(res.data.otherParams || \"{}\") || {};\r\n if (page_props.permission?.has == true) {\r\n page_props.permission.menuCode = menuCode;\r\n }\r\n if (published == false) {\r\n page_props.permission = false;\r\n }\r\n if (\r\n (page_props.showSearch !== false &&\r\n other_props?.defaultSearch &&\r\n other_props?.tableDataResource == \"url\") ||\r\n this.props.autoLoad === false\r\n ) {\r\n table_props.store.autoLoad = false;\r\n }\r\n if (tabParams) {\r\n const Utils = defaulUtil || {};\r\n let paramFunc = new Function(\"Utils\", tabParams);\r\n let converTabParams = paramFunc(Utils);\r\n if (page_props.requestParams) {\r\n let { requestParams = {} } = page_props;\r\n let newRequestParams = {\r\n queryParams: null,\r\n addParams: null,\r\n editorParams: null,\r\n };\r\n for (let key in newRequestParams) {\r\n if (requestParams[key]) {\r\n let func = new Function(\"Utils\", requestParams[key]);\r\n let converParams = func(Utils);\r\n const { data, ...other } = converParams;\r\n let newParams = {\r\n data: { ...converTabParams, ...data },\r\n ...other,\r\n };\r\n newRequestParams[key] = newParams;\r\n } else {\r\n newRequestParams[key] = { data: { ...converTabParams } };\r\n }\r\n }\r\n page_props.requestParams = { ...newRequestParams };\r\n } else {\r\n page_props.requestParams = {\r\n queryParams: { data: { ...converTabParams } },\r\n addParams: { data: { ...converTabParams } },\r\n editorParams: { data: { ...converTabParams } },\r\n };\r\n }\r\n }\r\n this.setState(\r\n {\r\n pageProps: {\r\n ...page_props,\r\n },\r\n treeProps: {\r\n ...tree_props,\r\n },\r\n tableProps: {\r\n ...table_props,\r\n },\r\n otherProps: { ...other_props },\r\n selfColumnButton: JSON.parse(res.data.columnButtons) || [],\r\n selfToolButton: JSON.parse(res.data.toolButtons) || [],\r\n defaultColumns: page_props.columns,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n getSearchValues() {\r\n const value = this.pageRef.current?.getSearchValues();\r\n return value;\r\n }\r\n tableLoad(params: any, requestConfig = {}) {\r\n this.pageRef.current?.tableLoad(params, requestConfig);\r\n }\r\n tableReload(params = {}, autoLoad = true) {\r\n this.pageRef.current?.tableReload(params, autoLoad);\r\n }\r\n render() {\r\n const {\r\n className,\r\n funcs = {},\r\n baseProps = {} as NSCBaseBageProps,\r\n } = this.props;\r\n const {\r\n pageProps,\r\n treeProps,\r\n tableProps,\r\n selfToolButton,\r\n selfColumnButton,\r\n pageLoading,\r\n defaultColumns,\r\n } = this.state;\r\n const {\r\n treeProps: settingTreeProps = {},\r\n tableProps: settingTableProps = {},\r\n ...otherProps\r\n } = baseProps;\r\n // const {store:tableStore}\r\n // const { store: settingTableStore } = settingTableProps;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(pageProps.columns, key, data);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n history: (params, type) => {\r\n jumpPage(params, type);\r\n },\r\n getCurrentProject: () => {\r\n return getProject();\r\n },\r\n };\r\n const { children } = this.props;\r\n let codeSelfButtons = [];\r\n let codecolumnButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(child);\r\n } else if (child?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(child);\r\n }\r\n });\r\n } else {\r\n if (item?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(item);\r\n } else if (item?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(item);\r\n }\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(children);\r\n } else if (props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(children);\r\n }\r\n }\r\n return (\r\n <div className={cls(\"nsc-framework-tablepage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n <BasePage\r\n {...pageProps}\r\n treeProps={{ ...treeProps, ...settingTreeProps }}\r\n tableProps={{ ...tableProps, ...settingTableProps }}\r\n formProps={{}}\r\n Utils={{ ...defaulUtil }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n onHideForm={() => {\r\n this.setState({\r\n pageProps: { ...pageProps, columns: defaultColumns },\r\n });\r\n this.pageRef.current?.hideForm();\r\n }}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n initData={this.initData}\r\n {...otherProps}\r\n >\r\n {renderSelfToolButton({\r\n selfToolButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n })}\r\n {codeSelfButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfColumnButton({\r\n selfColumnButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n })}\r\n {codecolumnButtons.map((item) => {\r\n return item;\r\n })}\r\n </BasePage>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["BasePage","Spin","Button","React","NscCom","NscFile","NscRequest","NscUtils","cls","queryString","getLocalStore","dayjs","defaulUtil","createElement","renderSelfToolButton","_ref","selfToolButton","pageRef","funcs","loading","length","map","item","index","pageType","key","type","onClick","eventOption","func","Function","code","name","renderSelfColumnButton","_ref2","selfColumnButton","record","recordShow","getPageData","params","get","xssFilter","autoPrefix","setFieldDisabled","data","disabled","columns","newColumns","obj","_objectSpread","dataIndex","indexOf","props","push","setFieldVisible","visible","editor","setFieldPropsData","propsData","jumpPage","pathname","query","id","title","serviceName","servicePath","openType","newQuery","urlParams","stringify","path","concat","window","__POWERED_BY_QIANKUN__","parent","postMessage","eventType","payload","location","origin","history","pushState","go","getProject","project","SettingTable","Component","constructor","arguments","_defineProperty","pageProps","treeProps","store","url","autoLoad","tableProps","pageLoading","defaultColumns","otherProps","buttonLoading","createRef","res","state","showSearch","defaultSearch","tableDataResource","setTimeout","_this$pageRef$current","_this$pageRef$current2","current","tableLoad","setSearchParams","componentDidMount","getData","componentDidUpdate","prevProps","prevState","snapshot","tableCode","setState","published","menuCode","tabParams","isPublished","then","_page_props$permissio","table_props","JSON","parse","tree_props","page_props","other_props","otherParams","permission","has","Utils","paramFunc","converTabParams","requestParams","newRequestParams","queryParams","addParams","editorParams","converParams","other","_objectWithoutProperties","_excluded","newParams","columnButtons","toolButtons","_message","error","getSearchValues","_this$pageRef$current3","value","_this$pageRef$current4","requestConfig","undefined","tableReload","_this$pageRef$current5","render","className","baseProps","settingTreeProps","settingTableProps","_excluded2","_this","deaultFuncs","newData","setButtonLoading","getCurrentProject","children","codeSelfButtons","codecolumnButtons","Array","isArray","child","_child$props","_child$props2","_item$props","_item$props2","style","width","height","spinning","_extends","formProps","ref","onHideForm","_this$pageRef$current6","hideForm","initData"],"sources":["../../../src/components/page/SettingTable/index.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useState } from \"react\";\r\nimport BasePage, { NSCBaseBageProps } from \"../BasePage\";\r\nimport Spin from \"../../base/spin\";\r\nimport Button from \"../../base/button\";\r\nimport \"./index.less\";\r\nimport React from \"react\";\r\nimport * as NscCom from \"./com\";\r\nimport NscFile from \"nsc-file\";\r\nimport NscRequest from \"nsc-request\";\r\nimport * as NscUtils from \"@bj-nsc/functions\";\r\nimport cls from \"classnames\";\r\nimport { message } from \"antd\";\r\nimport queryString from \"query-string\";\r\nimport { getLocalStore } from \"@bj-nsc/functions\";\r\nimport dayjs from \"dayjs\";\r\nimport { converFunction } from \"../../utils\";\r\n// import { history } from 'umi'\r\n// import { getConfigData } from '../services';\r\n\r\nconst defaulUtil = {\r\n NscCom,\r\n NscFile,\r\n NscRequest,\r\n NscUtils,\r\n dayjs,\r\n createElement: React.createElement,\r\n} as any;\r\nconst renderSelfToolButton = ({ selfToolButton, pageRef, funcs, loading }) => {\r\n if (selfToolButton.length == 0) {\r\n return null;\r\n } else {\r\n return selfToolButton.map((item: any, index: number) => {\r\n return (\r\n <Button\r\n pageType=\"toolButton\"\r\n key={index}\r\n type={item.type}\r\n onClick={() => {\r\n let eventOption = { pageRef: pageRef, funcs: funcs };\r\n const func = new Function(\"Utils,eventOption\", item.onClick);\r\n func(defaulUtil, eventOption);\r\n }}\r\n code={item.code}\r\n loading={loading[item.code] === true ? true : false}\r\n >\r\n {item.name}\r\n </Button>\r\n );\r\n });\r\n }\r\n};\r\n\r\nconst renderSelfColumnButton = ({ selfColumnButton, pageRef, funcs }) => {\r\n if (selfColumnButton.length == 0) {\r\n return null;\r\n } else {\r\n return selfColumnButton.map((item: any, index: number) => {\r\n return (\r\n <Button\r\n pageType=\"columnButton\"\r\n key={index}\r\n type={item.type}\r\n onClick={(record) => {\r\n let eventOption = {\r\n pageRef: pageRef,\r\n record: record,\r\n funcs: funcs,\r\n };\r\n const func = new Function(\"Utils,eventOption\", item.onClick);\r\n func(defaulUtil, eventOption);\r\n }}\r\n code={item.code}\r\n recordShow={item.recordShow}\r\n >\r\n {item.name}\r\n </Button>\r\n );\r\n });\r\n }\r\n};\r\n\r\nconst getPageData = (params: any) => {\r\n return NscRequest.get(`/jquick-setting/setting/table/info/`, {\r\n params,\r\n xssFilter: false,\r\n autoPrefix: true,\r\n });\r\n};\r\n\r\n//设置表单字段只读\r\nconst setFieldDisabled = (data: Array<any>, key, disabled) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.disabled = disabled;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n//设置表单字段隐藏\r\nconst setFieldVisible = (data: Array<any>, key, visible) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key || key.indexOf(item.dataIndex) > -1) {\r\n obj.editor = visible;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\n\r\nconst setFieldPropsData = (data: Array<any>, key, propsData) => {\r\n const columns = [...data];\r\n let newColumns = [] as any;\r\n columns.map((item) => {\r\n let obj = { ...item };\r\n if (item.dataIndex == key) {\r\n let props = obj.props ? { ...obj.props } : {};\r\n props.data = propsData;\r\n obj.props = props;\r\n }\r\n newColumns.push(obj);\r\n });\r\n return newColumns;\r\n};\r\ninterface IParams {\r\n pathname?: string;\r\n query?: any;\r\n id?: string;\r\n serviceName?: string;\r\n title?: string;\r\n servicePath?: string;\r\n menuCode?: string;\r\n openType?: number;\r\n}\r\nconst jumpPage = (params: IParams, type?: \"addTab\" | \"jumpMenu\") => {\r\n const {\r\n pathname,\r\n query = {},\r\n id,\r\n title,\r\n serviceName,\r\n servicePath,\r\n openType,\r\n } = params;\r\n const newQuery = { ...query } as any;\r\n const urlParams = queryString.stringify(newQuery);\r\n const path = urlParams ? `${pathname}?${urlParams}` : pathname;\r\n //@ts-ignore\r\n if (window.__POWERED_BY_QIANKUN__) {\r\n const data = {\r\n title: title || \"新标签\",\r\n serviceName: serviceName, //配置的微应用名称\r\n servicePath: servicePath, //配置的微应用入口地址\r\n path: path, //新标签的url,没配置serviceName path为完整路径\r\n id: id, //自定义唯一值\r\n openType: openType ? openType : 4, //打开方式 4位微前端, 3为iframe ,默认 3\r\n };\r\n window.parent.postMessage(\r\n {\r\n eventType: type ? type : \"addTab\",\r\n serviceName: serviceName ? serviceName : \"setting-web\",\r\n payload: type ? params : data,\r\n },\r\n window.location.origin\r\n );\r\n } else {\r\n window.history.pushState({}, \"\", path);\r\n window.history.go();\r\n }\r\n};\r\nconst getProject = () => {\r\n const project = getLocalStore({ name: \"nsc-home-project\" }) || {};\r\n return project;\r\n};\r\ninterface IProps {\r\n tableCode: string;\r\n className?: any;\r\n menuCode?: string;\r\n funcs?: any;\r\n published?: boolean;\r\n instanceRef?: any;\r\n tabParams?: any;\r\n onCallBacks?: {\r\n treeSelectCallBack?: any; //树点击查询后回调\r\n onQueryCallBack?: any; //查询回调,查询数据后回调\r\n onSumbitCallBack?: any; //保存回调,保存数据成功后回调\r\n onDeleteCallBack?: any; //删除按钮回调,删除数据后执行\r\n onEditorCallBack?: any; //编辑按钮回调,打开弹框后执行\r\n onAddCallBack?: any; //添加按钮回调,打开弹框后执行\r\n onSearchCallBack?: any; //列表查询按钮回调,打开弹框后执行\r\n };\r\n baseProps?: NSCBaseBageProps;\r\n autoLoad?: boolean;\r\n}\r\nexport default class SettingTable extends React.Component<IProps, any> {\r\n state = {\r\n pageProps: {} as any,\r\n treeProps: { store: { url: \"\", autoLoad: false } } as any,\r\n tableProps: {} as any,\r\n selfToolButton: [] as any,\r\n selfColumnButton: [] as any,\r\n pageLoading: true,\r\n defaultColumns: [] as any,\r\n otherProps: {} as any,\r\n buttonLoading: {} as any,\r\n };\r\n pageRef = React.createRef<any>();\r\n\r\n componentDidMount(): void {\r\n this.getData();\r\n }\r\n\r\n componentDidUpdate(\r\n prevProps: Readonly<IProps>,\r\n prevState: Readonly<any>,\r\n snapshot?: any\r\n ): void {\r\n if (prevProps.tableCode != this.props.tableCode) {\r\n this.getData();\r\n }\r\n }\r\n\r\n initData = (res: any) => {\r\n const { otherProps, pageProps } = this.state;\r\n if (\r\n pageProps.showSearch !== false &&\r\n otherProps.defaultSearch &&\r\n otherProps.tableDataResource == \"url\"\r\n ) {\r\n let func = new Function(\"Utils,eventOption\", otherProps.defaultSearch);\r\n const params = func(defaulUtil, { pageRef: this.pageRef });\r\n setTimeout(() => {\r\n this.pageRef.current?.tableLoad({ ...params });\r\n this.pageRef.current?.setSearchParams({ ...params });\r\n }, 50); //直接设置,pageRef没绑定,暂时通过延迟函数进行解决\r\n }\r\n };\r\n // 获取数据\r\n getData() {\r\n // 从props中获取tableCode、published、menuCode\r\n this.setState({\r\n pageLoading: true,\r\n });\r\n const { tableCode, published = true, menuCode, tabParams } = this.props;\r\n // 如果tableCode存在\r\n if (tableCode) {\r\n // 定义参数\r\n let params = { code: tableCode } as any;\r\n // 如果published为true\r\n if (published) {\r\n // 设置参数isPublished为1\r\n params.isPublished = 1;\r\n }\r\n // 调用getPageData方法获取数据\r\n getPageData({ ...params }).then((res: any) => {\r\n if (res.code == 200 && res.data) {\r\n let table_props = JSON.parse(res.data.tableProps || \"{}\") || {};\r\n let tree_props = JSON.parse(res.data.treeProps || \"{}\") || {};\r\n let page_props = JSON.parse(res.data.pageProps || \"{}\") || {};\r\n let other_props = JSON.parse(res.data.otherParams || \"{}\") || {};\r\n if (page_props.permission?.has == true) {\r\n page_props.permission.menuCode = menuCode;\r\n }\r\n if (published == false) {\r\n page_props.permission = false;\r\n }\r\n if (\r\n (page_props.showSearch !== false &&\r\n other_props?.defaultSearch &&\r\n other_props?.tableDataResource == \"url\") ||\r\n this.props.autoLoad === false\r\n ) {\r\n table_props.store.autoLoad = false;\r\n }\r\n if (tabParams) {\r\n const Utils = defaulUtil || {};\r\n let paramFunc = new Function(\"Utils\", tabParams);\r\n let converTabParams = paramFunc(Utils);\r\n if (page_props.requestParams) {\r\n let { requestParams = {} } = page_props;\r\n let newRequestParams = {\r\n queryParams: null,\r\n addParams: null,\r\n editorParams: null,\r\n };\r\n for (let key in newRequestParams) {\r\n if (requestParams[key]) {\r\n let func = new Function(\"Utils\", requestParams[key]);\r\n let converParams = func(Utils);\r\n const { data, ...other } = converParams;\r\n let newParams = {\r\n data: { ...converTabParams, ...data },\r\n ...other,\r\n };\r\n newRequestParams[key] = newParams;\r\n } else {\r\n newRequestParams[key] = { data: { ...converTabParams } };\r\n }\r\n }\r\n page_props.requestParams = { ...newRequestParams };\r\n } else {\r\n page_props.requestParams = {\r\n queryParams: { data: { ...converTabParams } },\r\n addParams: { data: { ...converTabParams } },\r\n editorParams: { data: { ...converTabParams } },\r\n };\r\n }\r\n }\r\n this.setState(\r\n {\r\n pageProps: {\r\n ...page_props,\r\n },\r\n treeProps: {\r\n ...tree_props,\r\n },\r\n tableProps: {\r\n ...table_props,\r\n },\r\n otherProps: { ...other_props },\r\n selfColumnButton: JSON.parse(res.data.columnButtons) || [],\r\n selfToolButton: JSON.parse(res.data.toolButtons) || [],\r\n defaultColumns: page_props.columns,\r\n },\r\n () => {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n );\r\n } else if (res.code == 200 && res.data == null) {\r\n message.error(\"未找到配置信息!\");\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n });\r\n } else {\r\n this.setState({\r\n pageLoading: false,\r\n });\r\n }\r\n }\r\n // onSearch() {}\r\n getSearchValues() {\r\n const value = this.pageRef.current?.getSearchValues();\r\n return value;\r\n }\r\n tableLoad(params: any, requestConfig = {}) {\r\n this.pageRef.current?.tableLoad(params, requestConfig);\r\n }\r\n tableReload(params = {}, autoLoad = true) {\r\n this.pageRef.current?.tableReload(params, autoLoad);\r\n }\r\n render() {\r\n const {\r\n className,\r\n funcs = {},\r\n baseProps = {} as NSCBaseBageProps,\r\n } = this.props;\r\n const {\r\n pageProps,\r\n treeProps,\r\n tableProps,\r\n selfToolButton,\r\n selfColumnButton,\r\n pageLoading,\r\n defaultColumns,\r\n buttonLoading = {},\r\n } = this.state;\r\n const {\r\n treeProps: settingTreeProps = {},\r\n tableProps: settingTableProps = {},\r\n ...otherProps\r\n } = baseProps;\r\n let _this = this\r\n // const {store:tableStore}\r\n // const { store: settingTableStore } = settingTableProps;\r\n const deaultFuncs = {\r\n setFieldDisabled: (key, disabled) => {\r\n const newData = setFieldDisabled(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldVisible: (key, disabled) => {\r\n const newData = setFieldVisible(pageProps.columns, key, disabled);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n setFieldPropsData: (key, data) => {\r\n const newData = setFieldPropsData(pageProps.columns, key, data);\r\n this.setState({\r\n pageProps: { ...pageProps, columns: newData },\r\n });\r\n },\r\n history: (params, type) => {\r\n jumpPage(params, type);\r\n },\r\n setButtonLoading(code, loading) {\r\n _this.setState({\r\n buttonLoading: { ...buttonLoading, [code]: loading },\r\n });\r\n },\r\n\r\n getCurrentProject: () => {\r\n return getProject();\r\n },\r\n };\r\n const { children } = this.props;\r\n let codeSelfButtons = [];\r\n let codecolumnButtons = [];\r\n if (Array.isArray(children)) {\r\n children.map((item: any) => {\r\n if (Array.isArray(item)) {\r\n item.map((child) => {\r\n if (child?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(child);\r\n } else if (child?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(child);\r\n }\r\n });\r\n } else {\r\n if (item?.props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(item);\r\n } else if (item?.props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(item);\r\n }\r\n }\r\n });\r\n } else if (children) {\r\n const { props }: any = children;\r\n if (props?.pageType == \"toolButton\") {\r\n codeSelfButtons.push(children);\r\n } else if (props?.pageType == \"columnButton\") {\r\n codecolumnButtons.push(children);\r\n }\r\n }\r\n return (\r\n <div className={cls(\"nsc-framework-tablepage\", className)}>\r\n {pageLoading ? (\r\n <div style={{ width: \"100%\", height: \"100%\" }}>\r\n <Spin spinning={pageLoading}></Spin>\r\n </div>\r\n ) : (\r\n <BasePage\r\n {...pageProps}\r\n treeProps={{ ...treeProps, ...settingTreeProps }}\r\n tableProps={{ ...tableProps, ...settingTableProps }}\r\n formProps={{}}\r\n Utils={{ ...defaulUtil }}\r\n ref={this.pageRef}\r\n pageRef={this.pageRef}\r\n onHideForm={() => {\r\n this.setState({\r\n pageProps: { ...pageProps, columns: defaultColumns },\r\n });\r\n this.pageRef.current?.hideForm();\r\n }}\r\n funcs={{ ...deaultFuncs, ...funcs }}\r\n initData={this.initData}\r\n {...otherProps}\r\n >\r\n {renderSelfToolButton({\r\n selfToolButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n loading: this.state.buttonLoading,\r\n })}\r\n {codeSelfButtons.map((item) => {\r\n return item;\r\n })}\r\n {renderSelfColumnButton({\r\n selfColumnButton,\r\n pageRef: this.pageRef,\r\n funcs: { ...deaultFuncs, ...funcs },\r\n })}\r\n {codecolumnButtons.map((item) => {\r\n return item;\r\n })}\r\n </BasePage>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
|