@1money/component-ui 0.0.74 → 0.0.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/es/components/Dialog/Dialog.js +7 -39
  2. package/es/components/Dialog/constants.d.ts +0 -3
  3. package/es/components/Dialog/constants.js +1 -4
  4. package/es/components/Dialog/style/Dialog.css +0 -21
  5. package/es/components/ProForm/ProForm.js +46 -33
  6. package/es/components/ProForm/ProFormDependency.js +6 -16
  7. package/es/components/ProForm/ProFormItem.js +5 -7
  8. package/es/components/ProForm/ProFormList.js +112 -40
  9. package/es/components/ProForm/core/constants.d.ts +2 -0
  10. package/es/components/ProForm/core/constants.js +7 -1
  11. package/es/components/ProForm/core/devWarning.d.ts +3 -0
  12. package/es/components/ProForm/core/devWarning.js +22 -0
  13. package/es/components/ProForm/core/formStore.d.ts +10 -2
  14. package/es/components/ProForm/core/formStore.js +21 -2
  15. package/es/components/ProForm/core/hooks/useForm.js +246 -103
  16. package/es/components/ProForm/core/hooks/useFormCore.js +134 -28
  17. package/es/components/ProForm/core/interface.d.ts +124 -49
  18. package/es/components/ProForm/core/runRules.d.ts +44 -12
  19. package/es/components/ProForm/core/runRules.js +584 -133
  20. package/es/components/ProForm/core/useFormItem.d.ts +6 -7
  21. package/es/components/ProForm/core/useFormItem.js +44 -22
  22. package/es/components/ProForm/core/validationError.d.ts +13 -0
  23. package/es/components/ProForm/core/validationError.js +29 -0
  24. package/es/components/ProForm/fields/ProFormCheckboxGroup.js +19 -5
  25. package/es/components/ProForm/fields/ProFormFieldSet.js +51 -12
  26. package/es/components/ProForm/fields/ProFormRadioGroup.js +8 -3
  27. package/es/components/ProForm/fields/ProFormSelect.js +13 -7
  28. package/es/components/ProForm/fields/createProFormField.js +18 -25
  29. package/es/components/ProForm/hooks/useFieldRequest.js +10 -8
  30. package/es/components/ProForm/index.d.ts +2 -1
  31. package/es/components/ProForm/index.js +4 -1
  32. package/es/components/ProForm/interface.d.ts +31 -40
  33. package/es/components/ProForm/layouts/QueryFilter.js +24 -16
  34. package/es/components/ProForm/style/ProForm.css +0 -1
  35. package/es/components/ProForm/utils.d.ts +8 -0
  36. package/es/components/ProForm/utils.js +51 -3
  37. package/es/components/Table/core/useTableSetup.js +2 -2
  38. package/es/components/Table/interface.d.ts +1 -1
  39. package/es/index.css +1 -1
  40. package/lib/components/Dialog/Dialog.js +6 -38
  41. package/lib/components/Dialog/constants.d.ts +0 -3
  42. package/lib/components/Dialog/constants.js +1 -4
  43. package/lib/components/Dialog/style/Dialog.css +0 -21
  44. package/lib/components/ProForm/ProForm.js +45 -32
  45. package/lib/components/ProForm/ProFormDependency.js +5 -15
  46. package/lib/components/ProForm/ProFormItem.js +5 -7
  47. package/lib/components/ProForm/ProFormList.js +110 -38
  48. package/lib/components/ProForm/core/constants.d.ts +2 -0
  49. package/lib/components/ProForm/core/constants.js +8 -2
  50. package/lib/components/ProForm/core/devWarning.d.ts +3 -0
  51. package/lib/components/ProForm/core/devWarning.js +29 -0
  52. package/lib/components/ProForm/core/formStore.d.ts +10 -2
  53. package/lib/components/ProForm/core/formStore.js +23 -2
  54. package/lib/components/ProForm/core/hooks/useForm.js +242 -99
  55. package/lib/components/ProForm/core/hooks/useFormCore.js +133 -27
  56. package/lib/components/ProForm/core/interface.d.ts +124 -49
  57. package/lib/components/ProForm/core/runRules.d.ts +44 -12
  58. package/lib/components/ProForm/core/runRules.js +587 -133
  59. package/lib/components/ProForm/core/useFormItem.d.ts +6 -7
  60. package/lib/components/ProForm/core/useFormItem.js +43 -21
  61. package/lib/components/ProForm/core/validationError.d.ts +13 -0
  62. package/lib/components/ProForm/core/validationError.js +36 -0
  63. package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +18 -4
  64. package/lib/components/ProForm/fields/ProFormFieldSet.js +51 -12
  65. package/lib/components/ProForm/fields/ProFormRadioGroup.js +7 -2
  66. package/lib/components/ProForm/fields/ProFormSelect.js +13 -7
  67. package/lib/components/ProForm/fields/createProFormField.js +18 -25
  68. package/lib/components/ProForm/hooks/useFieldRequest.js +10 -8
  69. package/lib/components/ProForm/index.d.ts +2 -1
  70. package/lib/components/ProForm/index.js +10 -1
  71. package/lib/components/ProForm/interface.d.ts +31 -40
  72. package/lib/components/ProForm/layouts/QueryFilter.js +24 -16
  73. package/lib/components/ProForm/style/ProForm.css +0 -1
  74. package/lib/components/ProForm/utils.d.ts +8 -0
  75. package/lib/components/ProForm/utils.js +52 -3
  76. package/lib/components/Table/core/useTableSetup.js +2 -2
  77. package/lib/components/Table/interface.d.ts +1 -1
  78. package/lib/index.css +1 -1
  79. package/package.json +1 -1
  80. package/scripts/mcp-server/examples.generated.json +42 -36
  81. package/scripts/mcp-server/index.generated.json +23 -67
@@ -131,7 +131,7 @@ var useTableSetup = exports.useTableSetup = function useTableSetup(props) {
131
131
  });
132
132
  // Dev-only warning: mixing row-expansion with tree-data (childrenColumnName)
133
133
  // produces two chevrons per row (the leftmost __expand__ column from the wrapper
134
- // plus the kernel's per-indent nest expand). rc-table / antd have the same gap;
134
+ // plus the kernel's per-indent nest expand). rc-table has the same gap;
135
135
  // pick one mode at a time.
136
136
  // eslint-disable-next-line no-undef
137
137
  if (typeof process !== 'undefined' && ((_c = process.env) === null || _c === void 0 ? void 0 : _c.NODE_ENV) !== 'production') {
@@ -219,4 +219,4 @@ var useTableSetup = exports.useTableSetup = function useTableSetup(props) {
219
219
  paginationNode: paginationNode
220
220
  };
221
221
  };
222
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvY29yZS91c2VUYWJsZVNldHVwLmpzIiwiY29tcG9uZW50cy9UYWJsZS9zcmMvY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlU2V0dXAudHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9yZWFjdCIsIl91c2VNZW1vaXplZEZuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfUGFnaW5hdGlvbiIsIl9TcGlubmVyIiwiX0V4cGFuZGVkUm93Q29udGFpbmVyIiwiX0VtcHR5U3RhdGUiLCJfY29uc3RhbnRzIiwiX3VzZVRhYmxlRGF0YVBpcGVsaW5lIiwiX3VzZVRhYmxlU2VsZWN0aW9uIiwiX3VzZVRhYmxlRXhwYW5kIiwiX3VzZVRhYmxlQ29sdW1ucyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIl9fcmVzdCIsInMiLCJwIiwicHJvdG90eXBlIiwiaW5kZXhPZiIsImdldE93blByb3BlcnR5U3ltYm9scyIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwidXNlVGFibGVTZXR1cCIsImV4cG9ydHMiLCJwcm9wcyIsIl9hIiwiX2IiLCJfYyIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiVEFCTEVfREVGQVVMVF9QUkVGSVgiLCJfcHJvcHMkc2l6ZSIsInNpemUiLCJUQUJMRV9ERUZBVUxUX1NJWkUiLCJfcHJvcHMkdmFyaWFudCIsInZhcmlhbnQiLCJUQUJMRV9ERUZBVUxUX1ZBUklBTlQiLCJjb2x1bW5zIiwiZGF0YVNvdXJjZSIsInJvd0tleSIsImVtcHR5IiwiYm9yZGVyZWQiLCJfc2Nyb2xsIiwic2Nyb2xsIiwic3RpY2t5IiwicGFnaW5hdGlvbiIsInJvd1NlbGVjdGlvbiIsIl9wcm9wcyRsb2FkaW5nIiwibG9hZGluZyIsIm9uQ2hhbmdlIiwiY2hpbGRyZW5Db2x1bW5OYW1lIiwiaW5kZW50U2l6ZSIsImV4cGFuZGFibGUiLCJvblJvdyIsInJvd0NsYXNzTmFtZSIsInN1bW1hcnkiLCJmb290ZXIiLCJzaG93SGVhZGVyIiwidGFibGVMYXlvdXQiLCJjb21wb25lbnRzIiwiZGlyZWN0aW9uIiwicm93SG92ZXJhYmxlIiwicmVzdCIsImNscyIsImNsYXNzbmFtZXMiLCJUQUJMRV9CTE9DSyIsImxvYWRpbmdDb25maWciLCJzcGlubmluZyIsImlzTG9hZGluZyIsImxvYWRpbmdJbmRpY2F0b3IiLCJpbmRpY2F0b3IiLCJfanN4IiwiU3Bpbm5lciIsInR5cGUiLCJ0aXRsZSIsImdldFJvd0tleSIsInVzZU1lbW9pemVkRm4iLCJyZWNvcmQiLCJpbmRleCIsInBpcGVsaW5lIiwidXNlVGFibGVEYXRhUGlwZWxpbmUiLCJzZWxlY3Rpb24iLCJ1c2VUYWJsZVNlbGVjdGlvbiIsImN1cnJlbnREYXRhU291cmNlIiwiZXhwYW5kIiwidXNlVGFibGVFeHBhbmQiLCJyZW5kZXJlZENvbHVtbnMiLCJ1c2VUYWJsZUNvbHVtbnMiLCJtZXJnZWRFeHBhbmRlZFJvd0tleXMiLCJ0cmlnZ2VyRXhwYW5kIiwibWVyZ2VkU2VsZWN0ZWRSb3dLZXlzIiwiY2hlY2tib3hQcm9wc01hcCIsImlzQWxsU2VsZWN0ZWQiLCJpc0luZGV0ZXJtaW5hdGUiLCJ0cmlnZ2VyU2VsZWN0aW9uIiwidHJpZ2dlclNlbGVjdEFsbCIsInNvcnRlciIsInNldFNvcnRlciIsImZpbHRlcnMiLCJzZXRGaWx0ZXJzIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXhwYW5kZWRSb3dSZW5kZXIiLCJ1bmRlZmluZWQiLCJjb25zb2xlIiwid2FybiIsIndyYXBwZWRFeHBhbmRlZFJvd1JlbmRlciIsImluZGVudCIsImV4cGFuZGVkIiwicm93RXhwYW5kYWJsZSIsIkV4cGFuZGVkUm93Q29udGFpbmVyIiwiY2hpbGRyZW4iLCJrZXJuZWxPbkV4cGFuZCIsInJlY29yZEtleSIsIm9uS2VybmVsRXhwYW5kIiwibWVyZ2VkRXhwYW5kYWJsZSIsInVzZU1lbW8iLCJhc3NpZ24iLCJleHBhbmRlZFJvd0tleXMiLCJzaG93RXhwYW5kQ29sdW1uIiwib25FeHBhbmQiLCJyZXNvbHZlZFBhZ2luYXRpb24iLCJjdXJyZW50IiwicGFnZVNpemUiLCJwYWdpbmF0aW9uTm9kZSIsImNvbmNhdCIsIlBhZ2luYXRpb24iLCJ0b3RhbCIsIm5leHRQYWdlIiwibmV4dFBhZ2VTaXplIiwic2V0UGFnaW5hdGlvbiIsImN1cnJlbnRQYWdpbmF0aW9uIiwid3JhcHBlckNsYXNzTmFtZSIsImpvaW5DbHMiLCJ0YWJsZUNsYXNzTmFtZSIsImVtcHR5VGV4dCIsIlRhYmxlRW1wdHlTdGF0ZSIsIndyYXBwZXJIdG1sUHJvcHMiLCJmb3J3YXJkZWRLZXJuZWxQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxjQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFDLHVCQUFBLENBQUFMLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxxQkFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsV0FBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBTUEsSUFBQVcscUJBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLGtCQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxlQUFBLEdB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SUFBQ2pHLEtBQUssRUFBRUE7RUFBSyxDQUFBLENBQUk7RUFFaEYsT0FBTztJQUNMWCxTQUFTLEVBQVRBLFNBQVM7SUFDVHdHLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCRSxjQUFjLEVBQWRBLGNBQWM7SUFDZHZGLE9BQU8sRUFBRW9CLFNBQVM7SUFDbEJDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCaUIsZUFBZSxFQUFmQSxlQUFlO0lBQ2ZILGlCQUFpQixFQUFFSixRQUFRLENBQUNJLGlCQUFpQjtJQUM3Q2lDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCb0IsU0FBUyxFQUFUQSxTQUFTO0lBQ1RFLGdCQUFnQixFQUFFNUUsSUFBSTtJQUN0QjZFLG9CQUFvQixFQUFFO01BQ3BCcEcsTUFBTSxFQUFFQSxNQUF1QztNQUMvQ1csa0JBQWtCLEVBQWxCQSxrQkFBa0I7TUFDbEJDLFVBQVUsRUFBVkEsVUFBVTtNQUNWRSxLQUFLLEVBQUxBLEtBQUs7TUFDTEMsWUFBWSxFQUFaQSxZQUFZO01BQ1pDLE9BQU8sRUFBUEEsT0FBTztNQUNQQyxNQUFNLEVBQU5BLE1BQU07TUFDTkMsVUFBVSxFQUFWQSxVQUFVO01BQ1ZDLFdBQVcsRUFBWEEsV0FBVztNQUNYQyxVQUFVLEVBQVZBLFVBQVU7TUFDVkMsU0FBUyxFQUFUQSxTQUFTO01BQ1RDLFlBQVksRUFBWkEsWUFBWTtNQUNaakIsTUFBTSxFQUFOQTtJRHhJRSxDQ3lJSDtJQUNEaUYsY0FBYyxFQUFkQTtFRHhJQSxDQ3lJRDtBQUNILENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlU2V0dXAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VNZW1vaXplZEZuIGZyb20gJ0AxbW9uZXkvaG9va3MvdXNlTWVtb2l6ZWRGbic7XG5pbXBvcnQgY2xhc3NuYW1lcywgeyBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uIH0gZnJvbSAnLi4vLi4vUGFnaW5hdGlvbic7XG5pbXBvcnQgeyBTcGlubmVyIH0gZnJvbSAnLi4vLi4vU3Bpbm5lcic7XG5pbXBvcnQgeyBFeHBhbmRlZFJvd0NvbnRhaW5lciB9IGZyb20gJy4uL3JlbmRlcmVycy9FeHBhbmRlZFJvd0NvbnRhaW5lcic7XG5pbXBvcnQgeyBUYWJsZUVtcHR5U3RhdGUgfSBmcm9tICcuLi9yZW5kZXJlcnMvRW1wdHlTdGF0ZSc7XG5pbXBvcnQgeyBUQUJMRV9CTE9DSywgVEFCTEVfREVGQVVMVF9QUkVGSVgsIFRBQkxFX0RFRkFVTFRfU0laRSwgVEFCTEVfREVGQVVMVF9WQVJJQU5ULCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VUYWJsZURhdGFQaXBlbGluZSB9IGZyb20gJy4vdXNlVGFibGVEYXRhUGlwZWxpbmUnO1xuaW1wb3J0IHsgdXNlVGFibGVTZWxlY3Rpb24gfSBmcm9tICcuL3VzZVRhYmxlU2VsZWN0aW9uJztcbmltcG9ydCB7IHVzZVRhYmxlRXhwYW5kIH0gZnJvbSAnLi91c2VUYWJsZUV4cGFuZCc7XG5pbXBvcnQgeyB1c2VUYWJsZUNvbHVtbnMgfSBmcm9tICcuL3VzZVRhYmxlQ29sdW1ucyc7XG4vKipcbiAqIENlbnRyYWxpc2VzIHRoZSB3aXJpbmcgc2hhcmVkIGJ5IGBUYWJsZWAgYW5kIGBWaXJ0dWFsVGFibGVgOlxuICogIC0gZGVzdHJ1Y3R1cmUgcHJvcHNcbiAqICAtIHJlc29sdmUgcm93IGtleVxuICogIC0gcnVuIHBpcGVsaW5lIC8gc2VsZWN0aW9uIC8gZXhwYW5kIC8gY29sdW1uIHRyYW5zZm9ybXNcbiAqICAtIGJ1aWxkIGtlcm5lbC1yZWFkeSBwcm9wc1xuICogIC0gc3BsaXQgb2ZmIHBhc3MtdGhyb3VnaCBIVE1MIGF0dHJpYnV0ZXMgc28gdGhleSBjYW4gbGFuZCBvbiB0aGUgb3V0ZXIgd3JhcHBlclxuICogICAgZGl2IChpbnN0ZWFkIG9mIGJlaW5nIHNwcmVhZCB1bnR5cGVkIGludG8gdGhlIGtlcm5lbCB2aWEgYHJlc3QgYXMgb2JqZWN0YCkuXG4gKi9cbmV4cG9ydCBjb25zdCB1c2VUYWJsZVNldHVwID0gKHByb3BzKSA9PiB7XG4gICAgdmFyIF9hLCBfYiwgX2M7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gVEFCTEVfREVGQVVMVF9QUkVGSVgsIHNpemUgPSBUQUJMRV9ERUZBVUxUX1NJWkUsIHZhcmlhbnQgPSBUQUJMRV9ERUZBVUxUX1ZBUklBTlQsIGNvbHVtbnMsIGRhdGFTb3VyY2UsIHJvd0tleSwgZW1wdHksIGJvcmRlcmVkLCBzY3JvbGw6IF9zY3JvbGwsIHN0aWNreSwgcGFnaW5hdGlvbiwgcm93U2VsZWN0aW9uLCBsb2FkaW5nID0gZmFsc2UsIG9uQ2hhbmdlLCBjaGlsZHJlbkNvbHVtbk5hbWUsIGluZGVudFNpemUsIGV4cGFuZGFibGUsIG9uUm93LCByb3dDbGFzc05hbWUsIHN1bW1hcnksIGZvb3Rlciwgc2hvd0hlYWRlciwgdGFibGVMYXlvdXQsIGNvbXBvbmVudHMsIGRpcmVjdGlvbiwgcm93SG92ZXJhYmxlIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2xhc3NOYW1lXCIsIFwicHJlZml4Q2xzXCIsIFwic2l6ZVwiLCBcInZhcmlhbnRcIiwgXCJjb2x1bW5zXCIsIFwiZGF0YVNvdXJjZVwiLCBcInJvd0tleVwiLCBcImVtcHR5XCIsIFwiYm9yZGVyZWRcIiwgXCJzY3JvbGxcIiwgXCJzdGlja3lcIiwgXCJwYWdpbmF0aW9uXCIsIFwicm93U2VsZWN0aW9uXCIsIFwibG9hZGluZ1wiLCBcIm9uQ2hhbmdlXCIsIFwiY2hpbGRyZW5Db2x1bW5OYW1lXCIsIFwiaW5kZW50U2l6ZVwiLCBcImV4cGFuZGFibGVcIiwgXCJvblJvd1wiLCBcInJvd0NsYXNzTmFtZVwiLCBcInN1bW1hcnlcIiwgXCJmb290ZXJcIiwgXCJzaG93SGVhZGVyXCIsIFwidGFibGVMYXlvdXRcIiwgXCJjb21wb25lbnRzXCIsIFwiZGlyZWN0aW9uXCIsIFwicm93SG92ZXJhYmxlXCJdKTtcbiAgICAvLyBQdWxsZWQgb3V0IG9mIGByZXN0YCBzbyBpdCBkb2Vzbid0IGxhbmQgb24gdGhlIHdyYXBwZXIgZGl2OyBlYWNoIGVudHJ5IHBvaW50XG4gICAgLy8gZm9yd2FyZHMgaXRzIG93biBgc2Nyb2xsYCB0byB0aGUga2VybmVsIChzZWUgRm9yd2FyZGVkS2VybmVsUHJvcHMgbm90ZSkuXG4gICAgdm9pZCBfc2Nyb2xsO1xuICAgIGNvbnN0IGNscyA9IGNsYXNzbmFtZXMoVEFCTEVfQkxPQ0spO1xuICAgIC8vIGBsb2FkaW5nYCBhY2NlcHRzIGEgYm9vbGVhbiBvciBhbiBvYmplY3Qgb3ZlcnJpZGUuIFRoZSBvYmplY3QgZm9ybSBkZWZhdWx0c1xuICAgIC8vIGBzcGlubmluZ2AgdG8gdHJ1ZSAocGFzc2luZyBhIGNvbmZpZyBpbXBsaWVzIGludGVudCB0byBzaG93IHRoZSBvdmVybGF5KSBhbmRcbiAgICAvLyBmYWxscyBiYWNrIHRvIHRoZSBicmFuZCBTcGlubmVyIHdoZW4gbm8gY3VzdG9tIGBpbmRpY2F0b3JgIGlzIHN1cHBsaWVkLlxuICAgIGNvbnN0IGxvYWRpbmdDb25maWcgPSB0eXBlb2YgbG9hZGluZyA9PT0gJ2Jvb2xlYW4nID8geyBzcGlubmluZzogbG9hZGluZyB9IDogbG9hZGluZztcbiAgICBjb25zdCBpc0xvYWRpbmcgPSAoX2EgPSBsb2FkaW5nQ29uZmlnLnNwaW5uaW5nKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0cnVlO1xuICAgIGNvbnN0IGxvYWRpbmdJbmRpY2F0b3IgPSAoX2IgPSBsb2FkaW5nQ29uZmlnLmluZGljYXRvcikgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogX2pzeChTcGlubmVyLCB7IHR5cGU6IFwiYnJhbmRcIiwgdGl0bGU6IFwiTG9hZGluZ1wiIH0pO1xuICAgIGNvbnN0IGdldFJvd0tleSA9IHVzZU1lbW9pemVkRm4oKHJlY29yZCwgaW5kZXgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gdHlwZW9mIHJvd0tleSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyByb3dLZXkocmVjb3JkKVxuICAgICAgICAgICAgOiAoX2EgPSByZWNvcmRbcm93S2V5ICE9PSBudWxsICYmIHJvd0tleSAhPT0gdm9pZCAwID8gcm93S2V5IDogJ2tleSddKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBpbmRleDtcbiAgICB9KTtcbiAgICBjb25zdCBwaXBlbGluZSA9IHVzZVRhYmxlRGF0YVBpcGVsaW5lKHsgY29sdW1ucywgZGF0YVNvdXJjZSwgcGFnaW5hdGlvbiwgb25DaGFuZ2UgfSk7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gdXNlVGFibGVTZWxlY3Rpb24oe1xuICAgICAgICByb3dTZWxlY3Rpb24sXG4gICAgICAgIGRhdGFTb3VyY2UsXG4gICAgICAgIGN1cnJlbnREYXRhU291cmNlOiBwaXBlbGluZS5jdXJyZW50RGF0YVNvdXJjZSxcbiAgICAgICAgZ2V0Um93S2V5LFxuICAgIH0pO1xuICAgIGNvbnN0IGV4cGFuZCA9IHVzZVRhYmxlRXhwYW5kKHsgZXhwYW5kYWJsZSwgZGF0YVNvdXJjZSwgZ2V0Um93S2V5IH0pO1xuICAgIGNvbnN0IHJlbmRlcmVkQ29sdW1ucyA9IHVzZVRhYmxlQ29sdW1ucyh7XG4gICAgICAgIGNvbHVtbnMsXG4gICAgICAgIHNpemUsXG4gICAgICAgIHZhcmlhbnQsXG4gICAgICAgIGV4cGFuZGFibGUsXG4gICAgICAgIG1lcmdlZEV4cGFuZGVkUm93S2V5czogZXhwYW5kLm1lcmdlZEV4cGFuZGVkUm93S2V5cyxcbiAgICAgICAgdHJpZ2dlckV4cGFuZDogZXhwYW5kLnRyaWdnZXJFeHBhbmQsXG4gICAgICAgIHJvd1NlbGVjdGlvbixcbiAgICAgICAgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzOiBzZWxlY3Rpb24ubWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLFxuICAgICAgICBjaGVja2JveFByb3BzTWFwOiBzZWxlY3Rpb24uY2hlY2tib3hQcm9wc01hcCxcbiAgICAgICAgaXNBbGxTZWxlY3RlZDogc2VsZWN0aW9uLmlzQWxsU2VsZWN0ZWQsXG4gICAgICAgIGlzSW5kZXRlcm1pbmF0ZTogc2VsZWN0aW9uLmlzSW5kZXRlcm1pbmF0ZSxcbiAgICAgICAgdHJpZ2dlclNlbGVjdGlvbjogc2VsZWN0aW9uLnRyaWdnZXJTZWxlY3Rpb24sXG4gICAgICAgIHRyaWdnZXJTZWxlY3RBbGw6IHNlbGVjdGlvbi50cmlnZ2VyU2VsZWN0QWxsLFxuICAgICAgICBzb3J0ZXI6IHBpcGVsaW5lLnNvcnRlcixcbiAgICAgICAgc2V0U29ydGVyOiBwaXBlbGluZS5zZXRTb3J0ZXIsXG4gICAgICAgIGZpbHRlcnM6IHBpcGVsaW5lLmZpbHRlcnMsXG4gICAgICAgIHNldEZpbHRlcnM6IHBpcGVsaW5lLnNldEZpbHRlcnMsXG4gICAgICAgIGdldFJvd0tleSxcbiAgICB9KTtcbiAgICAvLyBEZXYtb25seSB3YXJuaW5nOiBtaXhpbmcgcm93LWV4cGFuc2lvbiB3aXRoIHRyZWUtZGF0YSAoY2hpbGRyZW5Db2x1bW5OYW1lKVxuICAgIC8vIHByb2R1Y2VzIHR3byBjaGV2cm9ucyBwZXIgcm93ICh0aGUgbGVmdG1vc3QgX19leHBhbmRfXyBjb2x1bW4gZnJvbSB0aGUgd3JhcHBlclxuICAgIC8vIHBsdXMgdGhlIGtlcm5lbCdzIHBlci1pbmRlbnQgbmVzdCBleHBhbmQpLiByYy10YWJsZSAvIGFudGQgaGF2ZSB0aGUgc2FtZSBnYXA7XG4gICAgLy8gcGljayBvbmUgbW9kZSBhdCBhIHRpbWUuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gICAgaWYgKHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJyAmJiAoKF9jID0gcHJvY2Vzcy5lbnYpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy5OT0RFX0VOVikgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBpZiAoKGV4cGFuZGFibGUgPT09IG51bGwgfHwgZXhwYW5kYWJsZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZXhwYW5kYWJsZS5leHBhbmRlZFJvd1JlbmRlcikgJiYgY2hpbGRyZW5Db2x1bW5OYW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignW2NvbXBvbmVudHMtdWkgVGFibGVdIENvbWJpbmluZyBgZXhwYW5kYWJsZS5leHBhbmRlZFJvd1JlbmRlcmAgd2l0aCBgY2hpbGRyZW5Db2x1bW5OYW1lYCBpcyBub3Qgc3VwcG9ydGVkIOKAlCB0aGUgbGVmdG1vc3QgZXhwYW5kIGNvbHVtbiB3aWxsIHJlbmRlciBhbG9uZ3NpZGUgdGhlIG5lc3RlZCB0cmVlIGV4cGFuZGVyLiBVc2Ugb25lIG1vZGUgYXQgYSB0aW1lLicpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IHdyYXBwZWRFeHBhbmRlZFJvd1JlbmRlciA9IHVzZU1lbW9pemVkRm4oKHJlY29yZCwgaW5kZXgsIGluZGVudCwgZXhwYW5kZWQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICAvLyBIb25vciBgcm93RXhwYW5kYWJsZWA6IGV2ZW4gaWYgYSBub24tZXhwYW5kYWJsZSByb3cncyBrZXkgc25lYWtzIGludG9cbiAgICAgICAgLy8gYGV4cGFuZGVkUm93S2V5c2AsIHJlZnVzZSB0byByZW5kZXIgaXRzIGV4cGFuc2lvbiBjb250ZW50LlxuICAgICAgICBpZiAoKGV4cGFuZGFibGUgPT09IG51bGwgfHwgZXhwYW5kYWJsZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZXhwYW5kYWJsZS5yb3dFeHBhbmRhYmxlKSAmJiAhZXhwYW5kYWJsZS5yb3dFeHBhbmRhYmxlKHJlY29yZCkpXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgcmV0dXJuIChfanN4KEV4cGFuZGVkUm93Q29udGFpbmVyLCB7IGNoaWxkcmVuOiAoX2EgPSBleHBhbmRhYmxlID09PSBudWxsIHx8IGV4cGFuZGFibGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV4cGFuZGFibGUuZXhwYW5kZWRSb3dSZW5kZXIpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jYWxsKGV4cGFuZGFibGUsIHJlY29yZCwgaW5kZXgsIGluZGVudCwgZXhwYW5kZWQpIH0pKTtcbiAgICB9KTtcbiAgICAvLyBXaXJlIGtlcm5lbCdzIG9uRXhwYW5kICh0cmlnZ2VyZWQgYnkgZXhwYW5kUm93QnlDbGljaykgdG8gb3VyIHN0YXRlLlxuICAgIGNvbnN0IGtlcm5lbE9uRXhwYW5kID0gdXNlTWVtb2l6ZWRGbigoZXhwYW5kZWQsIHJlY29yZCkgPT4ge1xuICAgICAgICAvLyBUaGUga2VybmVsIHBhc3NlcyBhIHJlY29yZCBmcm9tIGBjdXJyZW50RGF0YVNvdXJjZWAgKHBvc3Qgc29ydC9maWx0ZXIvcGFnaW5hdGUpLlxuICAgICAgICAvLyBMb29raW5nIGl0IHVwIGFnYWluc3QgdGhlIHJhdyBgZGF0YVNvdXJjZWAgcmV0dXJucyAtMSB3aGVuIHRoZSBjb25zdW1lclxuICAgICAgICAvLyByZWNyZWF0ZXMgdGhlIGFycmF5IGVhY2ggcmVuZGVyLCBvciBhIHBvc2l0aW9uYWxseSB3cm9uZyBpbmRleCBhZnRlciBzb3J0LlxuICAgICAgICAvLyBVc2UgYGN1cnJlbnREYXRhU291cmNlYCBzbyB0aGUgaW5kZXggbWF0Y2hlcyB3aGF0IHRoZSBrZXJuZWwgYWN0dWFsbHkgc2Vlcy5cbiAgICAgICAgY29uc3QgcmVjb3JkS2V5ID0gZ2V0Um93S2V5KHJlY29yZCwgcGlwZWxpbmUuY3VycmVudERhdGFTb3VyY2UuaW5kZXhPZihyZWNvcmQpKTtcbiAgICAgICAgZXhwYW5kLm9uS2VybmVsRXhwYW5kKGV4cGFuZGVkLCByZWNvcmQsIHJlY29yZEtleSk7XG4gICAgfSk7XG4gICAgY29uc3QgbWVyZ2VkRXhwYW5kYWJsZSA9IHVzZU1lbW8oKCkgPT4gZXhwYW5kYWJsZVxuICAgICAgICA/IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgZXhwYW5kYWJsZSksIHsgZXhwYW5kZWRSb3dLZXlzOiBleHBhbmQubWVyZ2VkRXhwYW5kZWRSb3dLZXlzLCBleHBhbmRlZFJvd1JlbmRlcjogZXhwYW5kYWJsZS5leHBhbmRlZFJvd1JlbmRlclxuICAgICAgICAgICAgICAgID8gd3JhcHBlZEV4cGFuZGVkUm93UmVuZGVyXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQsIHNob3dFeHBhbmRDb2x1bW46IGZhbHNlLCBvbkV4cGFuZDoga2VybmVsT25FeHBhbmQgfSlcbiAgICAgICAgOiB1bmRlZmluZWQsIFtleHBhbmRhYmxlLCBleHBhbmQubWVyZ2VkRXhwYW5kZWRSb3dLZXlzLCB3cmFwcGVkRXhwYW5kZWRSb3dSZW5kZXIsIGtlcm5lbE9uRXhwYW5kXSk7XG4gICAgY29uc3QgcmVzb2x2ZWRQYWdpbmF0aW9uID0gcGlwZWxpbmUucGFnaW5hdGlvbiA9PT0gZmFsc2VcbiAgICAgICAgPyB7IGN1cnJlbnQ6IDEsIHBhZ2VTaXplOiAxMCB9XG4gICAgICAgIDogcGlwZWxpbmUucGFnaW5hdGlvbjtcbiAgICBjb25zdCBwYWdpbmF0aW9uTm9kZSA9IHBhZ2luYXRpb24gIT09IGZhbHNlID8gKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGAke3ByZWZpeENsc30tcGFnaW5hdGlvbmAsIGNoaWxkcmVuOiBfanN4KFBhZ2luYXRpb24sIHsgdG90YWw6IHBpcGVsaW5lLnRvdGFsLCBwYWdlU2l6ZTogcmVzb2x2ZWRQYWdpbmF0aW9uLnBhZ2VTaXplLCBjdXJyZW50OiByZXNvbHZlZFBhZ2luYXRpb24uY3VycmVudCwgb25DaGFuZ2U6IChuZXh0UGFnZSwgbmV4dFBhZ2VTaXplKSA9PiBwaXBlbGluZS5zZXRQYWdpbmF0aW9uKChjdXJyZW50UGFnaW5hdGlvbikgPT4gKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgY3VycmVudFBhZ2luYXRpb24pLCB7IGN1cnJlbnQ6IG5leHRQYWdlLCBwYWdlU2l6ZTogbmV4dFBhZ2VTaXplIH0pKSkgfSkgfSkpIDogbnVsbDtcbiAgICBjb25zdCB3cmFwcGVyQ2xhc3NOYW1lID0gam9pbkNscyhgJHtwcmVmaXhDbHN9LXdyYXBwZXJgLCBpc0xvYWRpbmcgJiYgYCR7cHJlZml4Q2xzfS13cmFwcGVyLS1sb2FkaW5nYCwgYm9yZGVyZWQgJiYgYCR7cHJlZml4Q2xzfS13cmFwcGVyLS1ib3JkZXJlZGApO1xuICAgIGNvbnN0IHRhYmxlQ2xhc3NOYW1lID0gam9pbkNscyhjbHMoKSwgY2xzKHNpemUpLCBjbHModmFyaWFudCksIHJvd0hvdmVyYWJsZSA9PT0gZmFsc2UgJiYgY2xzKCduby1ob3ZlcicpLCBjbGFzc05hbWUpO1xuICAgIGNvbnN0IGVtcHR5VGV4dCA9IGlzTG9hZGluZyAmJiAhZGF0YVNvdXJjZS5sZW5ndGggPyBfanN4KFwic3BhblwiLCB7fSkgOiBfanN4KFRhYmxlRW1wdHlTdGF0ZSwgeyBlbXB0eTogZW1wdHkgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJlZml4Q2xzLFxuICAgICAgICB3cmFwcGVyQ2xhc3NOYW1lLFxuICAgICAgICB0YWJsZUNsYXNzTmFtZSxcbiAgICAgICAgbG9hZGluZzogaXNMb2FkaW5nLFxuICAgICAgICBsb2FkaW5nSW5kaWNhdG9yLFxuICAgICAgICByZW5kZXJlZENvbHVtbnMsXG4gICAgICAgIGN1cnJlbnREYXRhU291cmNlOiBwaXBlbGluZS5jdXJyZW50RGF0YVNvdXJjZSxcbiAgICAgICAgbWVyZ2VkRXhwYW5kYWJsZSxcbiAgICAgICAgZW1wdHlUZXh0LFxuICAgICAgICB3cmFwcGVySHRtbFByb3BzOiByZXN0LFxuICAgICAgICBmb3J3YXJkZWRLZXJuZWxQcm9wczoge1xuICAgICAgICAgICAgcm93S2V5OiByb3dLZXksXG4gICAgICAgICAgICBjaGlsZHJlbkNvbHVtbk5hbWUsXG4gICAgICAgICAgICBpbmRlbnRTaXplLFxuICAgICAgICAgICAgb25Sb3csXG4gICAgICAgICAgICByb3dDbGFzc05hbWUsXG4gICAgICAgICAgICBzdW1tYXJ5LFxuICAgICAgICAgICAgZm9vdGVyLFxuICAgICAgICAgICAgc2hvd0hlYWRlcixcbiAgICAgICAgICAgIHRhYmxlTGF5b3V0LFxuICAgICAgICAgICAgY29tcG9uZW50cyxcbiAgICAgICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgICAgIHJvd0hvdmVyYWJsZSxcbiAgICAgICAgICAgIHN0aWNreSxcbiAgICAgICAgfSxcbiAgICAgICAgcGFnaW5hdGlvbk5vZGUsXG4gICAgfTtcbn07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
222
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvY29yZS91c2VUYWJsZVNldHVwLmpzIiwiY29tcG9uZW50cy9UYWJsZS9zcmMvY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlU2V0dXAudHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9yZWFjdCIsIl91c2VNZW1vaXplZEZuIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfUGFnaW5hdGlvbiIsIl9TcGlubmVyIiwiX0V4cGFuZGVkUm93Q29udGFpbmVyIiwiX0VtcHR5U3RhdGUiLCJfY29uc3RhbnRzIiwiX3VzZVRhYmxlRGF0YVBpcGVsaW5lIiwiX3VzZVRhYmxlU2VsZWN0aW9uIiwiX3VzZVRhYmxlRXhwYW5kIiwiX3VzZVRhYmxlQ29sdW1ucyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIl9fcmVzdCIsInMiLCJwIiwicHJvdG90eXBlIiwiaW5kZXhPZiIsImdldE93blByb3BlcnR5U3ltYm9scyIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwidXNlVGFibGVTZXR1cCIsImV4cG9ydHMiLCJwcm9wcyIsIl9hIiwiX2IiLCJfYyIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiVEFCTEVfREVGQVVMVF9QUkVGSVgiLCJfcHJvcHMkc2l6ZSIsInNpemUiLCJUQUJMRV9ERUZBVUxUX1NJWkUiLCJfcHJvcHMkdmFyaWFudCIsInZhcmlhbnQiLCJUQUJMRV9ERUZBVUxUX1ZBUklBTlQiLCJjb2x1bW5zIiwiZGF0YVNvdXJjZSIsInJvd0tleSIsImVtcHR5IiwiYm9yZGVyZWQiLCJfc2Nyb2xsIiwic2Nyb2xsIiwic3RpY2t5IiwicGFnaW5hdGlvbiIsInJvd1NlbGVjdGlvbiIsIl9wcm9wcyRsb2FkaW5nIiwibG9hZGluZyIsIm9uQ2hhbmdlIiwiY2hpbGRyZW5Db2x1bW5OYW1lIiwiaW5kZW50U2l6ZSIsImV4cGFuZGFibGUiLCJvblJvdyIsInJvd0NsYXNzTmFtZSIsInN1bW1hcnkiLCJmb290ZXIiLCJzaG93SGVhZGVyIiwidGFibGVMYXlvdXQiLCJjb21wb25lbnRzIiwiZGlyZWN0aW9uIiwicm93SG92ZXJhYmxlIiwicmVzdCIsImNscyIsImNsYXNzbmFtZXMiLCJUQUJMRV9CTE9DSyIsImxvYWRpbmdDb25maWciLCJzcGlubmluZyIsImlzTG9hZGluZyIsImxvYWRpbmdJbmRpY2F0b3IiLCJpbmRpY2F0b3IiLCJfanN4IiwiU3Bpbm5lciIsInR5cGUiLCJ0aXRsZSIsImdldFJvd0tleSIsInVzZU1lbW9pemVkRm4iLCJyZWNvcmQiLCJpbmRleCIsInBpcGVsaW5lIiwidXNlVGFibGVEYXRhUGlwZWxpbmUiLCJzZWxlY3Rpb24iLCJ1c2VUYWJsZVNlbGVjdGlvbiIsImN1cnJlbnREYXRhU291cmNlIiwiZXhwYW5kIiwidXNlVGFibGVFeHBhbmQiLCJyZW5kZXJlZENvbHVtbnMiLCJ1c2VUYWJsZUNvbHVtbnMiLCJtZXJnZWRFeHBhbmRlZFJvd0tleXMiLCJ0cmlnZ2VyRXhwYW5kIiwibWVyZ2VkU2VsZWN0ZWRSb3dLZXlzIiwiY2hlY2tib3hQcm9wc01hcCIsImlzQWxsU2VsZWN0ZWQiLCJpc0luZGV0ZXJtaW5hdGUiLCJ0cmlnZ2VyU2VsZWN0aW9uIiwidHJpZ2dlclNlbGVjdEFsbCIsInNvcnRlciIsInNldFNvcnRlciIsImZpbHRlcnMiLCJzZXRGaWx0ZXJzIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXhwYW5kZWRSb3dSZW5kZXIiLCJ1bmRlZmluZWQiLCJjb25zb2xlIiwid2FybiIsIndyYXBwZWRFeHBhbmRlZFJvd1JlbmRlciIsImluZGVudCIsImV4cGFuZGVkIiwicm93RXhwYW5kYWJsZSIsIkV4cGFuZGVkUm93Q29udGFpbmVyIiwiY2hpbGRyZW4iLCJrZXJuZWxPbkV4cGFuZCIsInJlY29yZEtleSIsIm9uS2VybmVsRXhwYW5kIiwibWVyZ2VkRXhwYW5kYWJsZSIsInVzZU1lbW8iLCJhc3NpZ24iLCJleHBhbmRlZFJvd0tleXMiLCJzaG93RXhwYW5kQ29sdW1uIiwib25FeHBhbmQiLCJyZXNvbHZlZFBhZ2luYXRpb24iLCJjdXJyZW50IiwicGFnZVNpemUiLCJwYWdpbmF0aW9uTm9kZSIsImNvbmNhdCIsIlBhZ2luYXRpb24iLCJ0b3RhbCIsIm5leHRQYWdlIiwibmV4dFBhZ2VTaXplIiwic2V0UGFnaW5hdGlvbiIsImN1cnJlbnRQYWdpbmF0aW9uIiwid3JhcHBlckNsYXNzTmFtZSIsImpvaW5DbHMiLCJ0YWJsZUNsYXNzTmFtZSIsImVtcHR5VGV4dCIsIlRhYmxlRW1wdHlTdGF0ZSIsIndyYXBwZXJIdG1sUHJvcHMiLCJmb3J3YXJkZWRLZXJuZWxQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxjQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxXQUFBLEdBQUFDLHVCQUFBLENBQUFMLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxxQkFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsV0FBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBTUEsSUFBQVcscUJBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLGtCQUFBLEdBQUFaLE9BQUE7QUFDQSxJQUFBYSxlQUFBLEdB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SUFBQ2pHLEtBQUssRUFBRUE7RUFBSyxDQUFBLENBQUk7RUFFaEYsT0FBTztJQUNMWCxTQUFTLEVBQVRBLFNBQVM7SUFDVHdHLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCRSxjQUFjLEVBQWRBLGNBQWM7SUFDZHZGLE9BQU8sRUFBRW9CLFNBQVM7SUFDbEJDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCaUIsZUFBZSxFQUFmQSxlQUFlO0lBQ2ZILGlCQUFpQixFQUFFSixRQUFRLENBQUNJLGlCQUFpQjtJQUM3Q2lDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCb0IsU0FBUyxFQUFUQSxTQUFTO0lBQ1RFLGdCQUFnQixFQUFFNUUsSUFBSTtJQUN0QjZFLG9CQUFvQixFQUFFO01BQ3BCcEcsTUFBTSxFQUFFQSxNQUF1QztNQUMvQ1csa0JBQWtCLEVBQWxCQSxrQkFBa0I7TUFDbEJDLFVBQVUsRUFBVkEsVUFBVTtNQUNWRSxLQUFLLEVBQUxBLEtBQUs7TUFDTEMsWUFBWSxFQUFaQSxZQUFZO01BQ1pDLE9BQU8sRUFBUEEsT0FBTztNQUNQQyxNQUFNLEVBQU5BLE1BQU07TUFDTkMsVUFBVSxFQUFWQSxVQUFVO01BQ1ZDLFdBQVcsRUFBWEEsV0FBVztNQUNYQyxVQUFVLEVBQVZBLFVBQVU7TUFDVkMsU0FBUyxFQUFUQSxTQUFTO01BQ1RDLFlBQVksRUFBWkEsWUFBWTtNQUNaakIsTUFBTSxFQUFOQTtJRHhJRSxDQ3lJSDtJQUNEaUYsY0FBYyxFQUFkQTtFRHhJQSxDQ3lJRDtBQUNILENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9UYWJsZS9jb3JlL3VzZVRhYmxlU2V0dXAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VNZW1vaXplZEZuIGZyb20gJ0AxbW9uZXkvaG9va3MvdXNlTWVtb2l6ZWRGbic7XG5pbXBvcnQgY2xhc3NuYW1lcywgeyBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uIH0gZnJvbSAnLi4vLi4vUGFnaW5hdGlvbic7XG5pbXBvcnQgeyBTcGlubmVyIH0gZnJvbSAnLi4vLi4vU3Bpbm5lcic7XG5pbXBvcnQgeyBFeHBhbmRlZFJvd0NvbnRhaW5lciB9IGZyb20gJy4uL3JlbmRlcmVycy9FeHBhbmRlZFJvd0NvbnRhaW5lcic7XG5pbXBvcnQgeyBUYWJsZUVtcHR5U3RhdGUgfSBmcm9tICcuLi9yZW5kZXJlcnMvRW1wdHlTdGF0ZSc7XG5pbXBvcnQgeyBUQUJMRV9CTE9DSywgVEFCTEVfREVGQVVMVF9QUkVGSVgsIFRBQkxFX0RFRkFVTFRfU0laRSwgVEFCTEVfREVGQVVMVF9WQVJJQU5ULCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VUYWJsZURhdGFQaXBlbGluZSB9IGZyb20gJy4vdXNlVGFibGVEYXRhUGlwZWxpbmUnO1xuaW1wb3J0IHsgdXNlVGFibGVTZWxlY3Rpb24gfSBmcm9tICcuL3VzZVRhYmxlU2VsZWN0aW9uJztcbmltcG9ydCB7IHVzZVRhYmxlRXhwYW5kIH0gZnJvbSAnLi91c2VUYWJsZUV4cGFuZCc7XG5pbXBvcnQgeyB1c2VUYWJsZUNvbHVtbnMgfSBmcm9tICcuL3VzZVRhYmxlQ29sdW1ucyc7XG4vKipcbiAqIENlbnRyYWxpc2VzIHRoZSB3aXJpbmcgc2hhcmVkIGJ5IGBUYWJsZWAgYW5kIGBWaXJ0dWFsVGFibGVgOlxuICogIC0gZGVzdHJ1Y3R1cmUgcHJvcHNcbiAqICAtIHJlc29sdmUgcm93IGtleVxuICogIC0gcnVuIHBpcGVsaW5lIC8gc2VsZWN0aW9uIC8gZXhwYW5kIC8gY29sdW1uIHRyYW5zZm9ybXNcbiAqICAtIGJ1aWxkIGtlcm5lbC1yZWFkeSBwcm9wc1xuICogIC0gc3BsaXQgb2ZmIHBhc3MtdGhyb3VnaCBIVE1MIGF0dHJpYnV0ZXMgc28gdGhleSBjYW4gbGFuZCBvbiB0aGUgb3V0ZXIgd3JhcHBlclxuICogICAgZGl2IChpbnN0ZWFkIG9mIGJlaW5nIHNwcmVhZCB1bnR5cGVkIGludG8gdGhlIGtlcm5lbCB2aWEgYHJlc3QgYXMgb2JqZWN0YCkuXG4gKi9cbmV4cG9ydCBjb25zdCB1c2VUYWJsZVNldHVwID0gKHByb3BzKSA9PiB7XG4gICAgdmFyIF9hLCBfYiwgX2M7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gVEFCTEVfREVGQVVMVF9QUkVGSVgsIHNpemUgPSBUQUJMRV9ERUZBVUxUX1NJWkUsIHZhcmlhbnQgPSBUQUJMRV9ERUZBVUxUX1ZBUklBTlQsIGNvbHVtbnMsIGRhdGFTb3VyY2UsIHJvd0tleSwgZW1wdHksIGJvcmRlcmVkLCBzY3JvbGw6IF9zY3JvbGwsIHN0aWNreSwgcGFnaW5hdGlvbiwgcm93U2VsZWN0aW9uLCBsb2FkaW5nID0gZmFsc2UsIG9uQ2hhbmdlLCBjaGlsZHJlbkNvbHVtbk5hbWUsIGluZGVudFNpemUsIGV4cGFuZGFibGUsIG9uUm93LCByb3dDbGFzc05hbWUsIHN1bW1hcnksIGZvb3Rlciwgc2hvd0hlYWRlciwgdGFibGVMYXlvdXQsIGNvbXBvbmVudHMsIGRpcmVjdGlvbiwgcm93SG92ZXJhYmxlIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2xhc3NOYW1lXCIsIFwicHJlZml4Q2xzXCIsIFwic2l6ZVwiLCBcInZhcmlhbnRcIiwgXCJjb2x1bW5zXCIsIFwiZGF0YVNvdXJjZVwiLCBcInJvd0tleVwiLCBcImVtcHR5XCIsIFwiYm9yZGVyZWRcIiwgXCJzY3JvbGxcIiwgXCJzdGlja3lcIiwgXCJwYWdpbmF0aW9uXCIsIFwicm93U2VsZWN0aW9uXCIsIFwibG9hZGluZ1wiLCBcIm9uQ2hhbmdlXCIsIFwiY2hpbGRyZW5Db2x1bW5OYW1lXCIsIFwiaW5kZW50U2l6ZVwiLCBcImV4cGFuZGFibGVcIiwgXCJvblJvd1wiLCBcInJvd0NsYXNzTmFtZVwiLCBcInN1bW1hcnlcIiwgXCJmb290ZXJcIiwgXCJzaG93SGVhZGVyXCIsIFwidGFibGVMYXlvdXRcIiwgXCJjb21wb25lbnRzXCIsIFwiZGlyZWN0aW9uXCIsIFwicm93SG92ZXJhYmxlXCJdKTtcbiAgICAvLyBQdWxsZWQgb3V0IG9mIGByZXN0YCBzbyBpdCBkb2Vzbid0IGxhbmQgb24gdGhlIHdyYXBwZXIgZGl2OyBlYWNoIGVudHJ5IHBvaW50XG4gICAgLy8gZm9yd2FyZHMgaXRzIG93biBgc2Nyb2xsYCB0byB0aGUga2VybmVsIChzZWUgRm9yd2FyZGVkS2VybmVsUHJvcHMgbm90ZSkuXG4gICAgdm9pZCBfc2Nyb2xsO1xuICAgIGNvbnN0IGNscyA9IGNsYXNzbmFtZXMoVEFCTEVfQkxPQ0spO1xuICAgIC8vIGBsb2FkaW5nYCBhY2NlcHRzIGEgYm9vbGVhbiBvciBhbiBvYmplY3Qgb3ZlcnJpZGUuIFRoZSBvYmplY3QgZm9ybSBkZWZhdWx0c1xuICAgIC8vIGBzcGlubmluZ2AgdG8gdHJ1ZSAocGFzc2luZyBhIGNvbmZpZyBpbXBsaWVzIGludGVudCB0byBzaG93IHRoZSBvdmVybGF5KSBhbmRcbiAgICAvLyBmYWxscyBiYWNrIHRvIHRoZSBicmFuZCBTcGlubmVyIHdoZW4gbm8gY3VzdG9tIGBpbmRpY2F0b3JgIGlzIHN1cHBsaWVkLlxuICAgIGNvbnN0IGxvYWRpbmdDb25maWcgPSB0eXBlb2YgbG9hZGluZyA9PT0gJ2Jvb2xlYW4nID8geyBzcGlubmluZzogbG9hZGluZyB9IDogbG9hZGluZztcbiAgICBjb25zdCBpc0xvYWRpbmcgPSAoX2EgPSBsb2FkaW5nQ29uZmlnLnNwaW5uaW5nKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0cnVlO1xuICAgIGNvbnN0IGxvYWRpbmdJbmRpY2F0b3IgPSAoX2IgPSBsb2FkaW5nQ29uZmlnLmluZGljYXRvcikgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogX2pzeChTcGlubmVyLCB7IHR5cGU6IFwiYnJhbmRcIiwgdGl0bGU6IFwiTG9hZGluZ1wiIH0pO1xuICAgIGNvbnN0IGdldFJvd0tleSA9IHVzZU1lbW9pemVkRm4oKHJlY29yZCwgaW5kZXgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gdHlwZW9mIHJvd0tleSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyByb3dLZXkocmVjb3JkKVxuICAgICAgICAgICAgOiAoX2EgPSByZWNvcmRbcm93S2V5ICE9PSBudWxsICYmIHJvd0tleSAhPT0gdm9pZCAwID8gcm93S2V5IDogJ2tleSddKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBpbmRleDtcbiAgICB9KTtcbiAgICBjb25zdCBwaXBlbGluZSA9IHVzZVRhYmxlRGF0YVBpcGVsaW5lKHsgY29sdW1ucywgZGF0YVNvdXJjZSwgcGFnaW5hdGlvbiwgb25DaGFuZ2UgfSk7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gdXNlVGFibGVTZWxlY3Rpb24oe1xuICAgICAgICByb3dTZWxlY3Rpb24sXG4gICAgICAgIGRhdGFTb3VyY2UsXG4gICAgICAgIGN1cnJlbnREYXRhU291cmNlOiBwaXBlbGluZS5jdXJyZW50RGF0YVNvdXJjZSxcbiAgICAgICAgZ2V0Um93S2V5LFxuICAgIH0pO1xuICAgIGNvbnN0IGV4cGFuZCA9IHVzZVRhYmxlRXhwYW5kKHsgZXhwYW5kYWJsZSwgZGF0YVNvdXJjZSwgZ2V0Um93S2V5IH0pO1xuICAgIGNvbnN0IHJlbmRlcmVkQ29sdW1ucyA9IHVzZVRhYmxlQ29sdW1ucyh7XG4gICAgICAgIGNvbHVtbnMsXG4gICAgICAgIHNpemUsXG4gICAgICAgIHZhcmlhbnQsXG4gICAgICAgIGV4cGFuZGFibGUsXG4gICAgICAgIG1lcmdlZEV4cGFuZGVkUm93S2V5czogZXhwYW5kLm1lcmdlZEV4cGFuZGVkUm93S2V5cyxcbiAgICAgICAgdHJpZ2dlckV4cGFuZDogZXhwYW5kLnRyaWdnZXJFeHBhbmQsXG4gICAgICAgIHJvd1NlbGVjdGlvbixcbiAgICAgICAgbWVyZ2VkU2VsZWN0ZWRSb3dLZXlzOiBzZWxlY3Rpb24ubWVyZ2VkU2VsZWN0ZWRSb3dLZXlzLFxuICAgICAgICBjaGVja2JveFByb3BzTWFwOiBzZWxlY3Rpb24uY2hlY2tib3hQcm9wc01hcCxcbiAgICAgICAgaXNBbGxTZWxlY3RlZDogc2VsZWN0aW9uLmlzQWxsU2VsZWN0ZWQsXG4gICAgICAgIGlzSW5kZXRlcm1pbmF0ZTogc2VsZWN0aW9uLmlzSW5kZXRlcm1pbmF0ZSxcbiAgICAgICAgdHJpZ2dlclNlbGVjdGlvbjogc2VsZWN0aW9uLnRyaWdnZXJTZWxlY3Rpb24sXG4gICAgICAgIHRyaWdnZXJTZWxlY3RBbGw6IHNlbGVjdGlvbi50cmlnZ2VyU2VsZWN0QWxsLFxuICAgICAgICBzb3J0ZXI6IHBpcGVsaW5lLnNvcnRlcixcbiAgICAgICAgc2V0U29ydGVyOiBwaXBlbGluZS5zZXRTb3J0ZXIsXG4gICAgICAgIGZpbHRlcnM6IHBpcGVsaW5lLmZpbHRlcnMsXG4gICAgICAgIHNldEZpbHRlcnM6IHBpcGVsaW5lLnNldEZpbHRlcnMsXG4gICAgICAgIGdldFJvd0tleSxcbiAgICB9KTtcbiAgICAvLyBEZXYtb25seSB3YXJuaW5nOiBtaXhpbmcgcm93LWV4cGFuc2lvbiB3aXRoIHRyZWUtZGF0YSAoY2hpbGRyZW5Db2x1bW5OYW1lKVxuICAgIC8vIHByb2R1Y2VzIHR3byBjaGV2cm9ucyBwZXIgcm93ICh0aGUgbGVmdG1vc3QgX19leHBhbmRfXyBjb2x1bW4gZnJvbSB0aGUgd3JhcHBlclxuICAgIC8vIHBsdXMgdGhlIGtlcm5lbCdzIHBlci1pbmRlbnQgbmVzdCBleHBhbmQpLiByYy10YWJsZSBoYXMgdGhlIHNhbWUgZ2FwO1xuICAgIC8vIHBpY2sgb25lIG1vZGUgYXQgYSB0aW1lLlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZlxuICAgIGlmICh0eXBlb2YgcHJvY2VzcyAhPT0gJ3VuZGVmaW5lZCcgJiYgKChfYyA9IHByb2Nlc3MuZW52KSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MuTk9ERV9FTlYpICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgaWYgKChleHBhbmRhYmxlID09PSBudWxsIHx8IGV4cGFuZGFibGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV4cGFuZGFibGUuZXhwYW5kZWRSb3dSZW5kZXIpICYmIGNoaWxkcmVuQ29sdW1uTmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1tjb21wb25lbnRzLXVpIFRhYmxlXSBDb21iaW5pbmcgYGV4cGFuZGFibGUuZXhwYW5kZWRSb3dSZW5kZXJgIHdpdGggYGNoaWxkcmVuQ29sdW1uTmFtZWAgaXMgbm90IHN1cHBvcnRlZCDigJQgdGhlIGxlZnRtb3N0IGV4cGFuZCBjb2x1bW4gd2lsbCByZW5kZXIgYWxvbmdzaWRlIHRoZSBuZXN0ZWQgdHJlZSBleHBhbmRlci4gVXNlIG9uZSBtb2RlIGF0IGEgdGltZS4nKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB3cmFwcGVkRXhwYW5kZWRSb3dSZW5kZXIgPSB1c2VNZW1vaXplZEZuKChyZWNvcmQsIGluZGV4LCBpbmRlbnQsIGV4cGFuZGVkKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgLy8gSG9ub3IgYHJvd0V4cGFuZGFibGVgOiBldmVuIGlmIGEgbm9uLWV4cGFuZGFibGUgcm93J3Mga2V5IHNuZWFrcyBpbnRvXG4gICAgICAgIC8vIGBleHBhbmRlZFJvd0tleXNgLCByZWZ1c2UgdG8gcmVuZGVyIGl0cyBleHBhbnNpb24gY29udGVudC5cbiAgICAgICAgaWYgKChleHBhbmRhYmxlID09PSBudWxsIHx8IGV4cGFuZGFibGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGV4cGFuZGFibGUucm93RXhwYW5kYWJsZSkgJiYgIWV4cGFuZGFibGUucm93RXhwYW5kYWJsZShyZWNvcmQpKVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIHJldHVybiAoX2pzeChFeHBhbmRlZFJvd0NvbnRhaW5lciwgeyBjaGlsZHJlbjogKF9hID0gZXhwYW5kYWJsZSA9PT0gbnVsbCB8fCBleHBhbmRhYmxlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBleHBhbmRhYmxlLmV4cGFuZGVkUm93UmVuZGVyKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2FsbChleHBhbmRhYmxlLCByZWNvcmQsIGluZGV4LCBpbmRlbnQsIGV4cGFuZGVkKSB9KSk7XG4gICAgfSk7XG4gICAgLy8gV2lyZSBrZXJuZWwncyBvbkV4cGFuZCAodHJpZ2dlcmVkIGJ5IGV4cGFuZFJvd0J5Q2xpY2spIHRvIG91ciBzdGF0ZS5cbiAgICBjb25zdCBrZXJuZWxPbkV4cGFuZCA9IHVzZU1lbW9pemVkRm4oKGV4cGFuZGVkLCByZWNvcmQpID0+IHtcbiAgICAgICAgLy8gVGhlIGtlcm5lbCBwYXNzZXMgYSByZWNvcmQgZnJvbSBgY3VycmVudERhdGFTb3VyY2VgIChwb3N0IHNvcnQvZmlsdGVyL3BhZ2luYXRlKS5cbiAgICAgICAgLy8gTG9va2luZyBpdCB1cCBhZ2FpbnN0IHRoZSByYXcgYGRhdGFTb3VyY2VgIHJldHVybnMgLTEgd2hlbiB0aGUgY29uc3VtZXJcbiAgICAgICAgLy8gcmVjcmVhdGVzIHRoZSBhcnJheSBlYWNoIHJlbmRlciwgb3IgYSBwb3NpdGlvbmFsbHkgd3JvbmcgaW5kZXggYWZ0ZXIgc29ydC5cbiAgICAgICAgLy8gVXNlIGBjdXJyZW50RGF0YVNvdXJjZWAgc28gdGhlIGluZGV4IG1hdGNoZXMgd2hhdCB0aGUga2VybmVsIGFjdHVhbGx5IHNlZXMuXG4gICAgICAgIGNvbnN0IHJlY29yZEtleSA9IGdldFJvd0tleShyZWNvcmQsIHBpcGVsaW5lLmN1cnJlbnREYXRhU291cmNlLmluZGV4T2YocmVjb3JkKSk7XG4gICAgICAgIGV4cGFuZC5vbktlcm5lbEV4cGFuZChleHBhbmRlZCwgcmVjb3JkLCByZWNvcmRLZXkpO1xuICAgIH0pO1xuICAgIGNvbnN0IG1lcmdlZEV4cGFuZGFibGUgPSB1c2VNZW1vKCgpID0+IGV4cGFuZGFibGVcbiAgICAgICAgPyBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGV4cGFuZGFibGUpLCB7IGV4cGFuZGVkUm93S2V5czogZXhwYW5kLm1lcmdlZEV4cGFuZGVkUm93S2V5cywgZXhwYW5kZWRSb3dSZW5kZXI6IGV4cGFuZGFibGUuZXhwYW5kZWRSb3dSZW5kZXJcbiAgICAgICAgICAgICAgICA/IHdyYXBwZWRFeHBhbmRlZFJvd1JlbmRlclxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLCBzaG93RXhwYW5kQ29sdW1uOiBmYWxzZSwgb25FeHBhbmQ6IGtlcm5lbE9uRXhwYW5kIH0pXG4gICAgICAgIDogdW5kZWZpbmVkLCBbZXhwYW5kYWJsZSwgZXhwYW5kLm1lcmdlZEV4cGFuZGVkUm93S2V5cywgd3JhcHBlZEV4cGFuZGVkUm93UmVuZGVyLCBrZXJuZWxPbkV4cGFuZF0pO1xuICAgIGNvbnN0IHJlc29sdmVkUGFnaW5hdGlvbiA9IHBpcGVsaW5lLnBhZ2luYXRpb24gPT09IGZhbHNlXG4gICAgICAgID8geyBjdXJyZW50OiAxLCBwYWdlU2l6ZTogMTAgfVxuICAgICAgICA6IHBpcGVsaW5lLnBhZ2luYXRpb247XG4gICAgY29uc3QgcGFnaW5hdGlvbk5vZGUgPSBwYWdpbmF0aW9uICE9PSBmYWxzZSA/IChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBgJHtwcmVmaXhDbHN9LXBhZ2luYXRpb25gLCBjaGlsZHJlbjogX2pzeChQYWdpbmF0aW9uLCB7IHRvdGFsOiBwaXBlbGluZS50b3RhbCwgcGFnZVNpemU6IHJlc29sdmVkUGFnaW5hdGlvbi5wYWdlU2l6ZSwgY3VycmVudDogcmVzb2x2ZWRQYWdpbmF0aW9uLmN1cnJlbnQsIG9uQ2hhbmdlOiAobmV4dFBhZ2UsIG5leHRQYWdlU2l6ZSkgPT4gcGlwZWxpbmUuc2V0UGFnaW5hdGlvbigoY3VycmVudFBhZ2luYXRpb24pID0+IChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGN1cnJlbnRQYWdpbmF0aW9uKSwgeyBjdXJyZW50OiBuZXh0UGFnZSwgcGFnZVNpemU6IG5leHRQYWdlU2l6ZSB9KSkpIH0pIH0pKSA6IG51bGw7XG4gICAgY29uc3Qgd3JhcHBlckNsYXNzTmFtZSA9IGpvaW5DbHMoYCR7cHJlZml4Q2xzfS13cmFwcGVyYCwgaXNMb2FkaW5nICYmIGAke3ByZWZpeENsc30td3JhcHBlci0tbG9hZGluZ2AsIGJvcmRlcmVkICYmIGAke3ByZWZpeENsc30td3JhcHBlci0tYm9yZGVyZWRgKTtcbiAgICBjb25zdCB0YWJsZUNsYXNzTmFtZSA9IGpvaW5DbHMoY2xzKCksIGNscyhzaXplKSwgY2xzKHZhcmlhbnQpLCByb3dIb3ZlcmFibGUgPT09IGZhbHNlICYmIGNscygnbm8taG92ZXInKSwgY2xhc3NOYW1lKTtcbiAgICBjb25zdCBlbXB0eVRleHQgPSBpc0xvYWRpbmcgJiYgIWRhdGFTb3VyY2UubGVuZ3RoID8gX2pzeChcInNwYW5cIiwge30pIDogX2pzeChUYWJsZUVtcHR5U3RhdGUsIHsgZW1wdHk6IGVtcHR5IH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIHByZWZpeENscyxcbiAgICAgICAgd3JhcHBlckNsYXNzTmFtZSxcbiAgICAgICAgdGFibGVDbGFzc05hbWUsXG4gICAgICAgIGxvYWRpbmc6IGlzTG9hZGluZyxcbiAgICAgICAgbG9hZGluZ0luZGljYXRvcixcbiAgICAgICAgcmVuZGVyZWRDb2x1bW5zLFxuICAgICAgICBjdXJyZW50RGF0YVNvdXJjZTogcGlwZWxpbmUuY3VycmVudERhdGFTb3VyY2UsXG4gICAgICAgIG1lcmdlZEV4cGFuZGFibGUsXG4gICAgICAgIGVtcHR5VGV4dCxcbiAgICAgICAgd3JhcHBlckh0bWxQcm9wczogcmVzdCxcbiAgICAgICAgZm9yd2FyZGVkS2VybmVsUHJvcHM6IHtcbiAgICAgICAgICAgIHJvd0tleTogcm93S2V5LFxuICAgICAgICAgICAgY2hpbGRyZW5Db2x1bW5OYW1lLFxuICAgICAgICAgICAgaW5kZW50U2l6ZSxcbiAgICAgICAgICAgIG9uUm93LFxuICAgICAgICAgICAgcm93Q2xhc3NOYW1lLFxuICAgICAgICAgICAgc3VtbWFyeSxcbiAgICAgICAgICAgIGZvb3RlcixcbiAgICAgICAgICAgIHNob3dIZWFkZXIsXG4gICAgICAgICAgICB0YWJsZUxheW91dCxcbiAgICAgICAgICAgIGNvbXBvbmVudHMsXG4gICAgICAgICAgICBkaXJlY3Rpb24sXG4gICAgICAgICAgICByb3dIb3ZlcmFibGUsXG4gICAgICAgICAgICBzdGlja3ksXG4gICAgICAgIH0sXG4gICAgICAgIHBhZ2luYXRpb25Ob2RlLFxuICAgIH07XG59OyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -161,7 +161,7 @@ export interface TableChangeMeta<T extends TableRecord = TableRecord> {
161
161
  }
162
162
  export type TableRowSelectMethod = 'all' | 'none' | 'single';
163
163
  /**
164
- * Properties returned from `getCheckboxProps`. Mirrors antd: any prop accepted
164
+ * Properties returned from `getCheckboxProps`: any prop accepted
165
165
  * by the underlying Checkbox EXCEPT `checked` / `defaultChecked` (those are
166
166
  * controlled by the table) can be customized per-row.
167
167
  */