@ai-table/grid 0.0.54 → 0.0.56

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 (79) hide show
  1. package/components/cell-editors/cell-editor.scss +1 -2
  2. package/components/drag/drag.component.d.ts +1 -0
  3. package/components/drag/drag.component.d.ts.map +1 -1
  4. package/components/index.d.ts +0 -1
  5. package/components/index.d.ts.map +1 -1
  6. package/constants/editor.d.ts.map +1 -1
  7. package/constants/grid.d.ts.map +1 -1
  8. package/constants/icon.d.ts +1 -0
  9. package/constants/icon.d.ts.map +1 -1
  10. package/constants/table.d.ts +4 -1
  11. package/constants/table.d.ts.map +1 -1
  12. package/core/types/core.d.ts +4 -0
  13. package/core/types/core.d.ts.map +1 -1
  14. package/esm2022/components/drag/drag.component.mjs +42 -2
  15. package/esm2022/components/index.mjs +1 -2
  16. package/esm2022/constants/editor.mjs +2 -3
  17. package/esm2022/constants/grid.mjs +2 -2
  18. package/esm2022/constants/icon.mjs +2 -1
  19. package/esm2022/constants/table.mjs +5 -2
  20. package/esm2022/core/types/core.mjs +1 -1
  21. package/esm2022/grid-base.component.mjs +6 -4
  22. package/esm2022/grid.component.mjs +40 -4
  23. package/esm2022/renderer/components/cells/index.mjs +2 -1
  24. package/esm2022/renderer/components/cells/rate.component.mjs +150 -0
  25. package/esm2022/renderer/components/frozen-heads.component.mjs +17 -5
  26. package/esm2022/renderer/components/hover-cell.component.mjs +6 -5
  27. package/esm2022/renderer/components/hover-row-heads.component.mjs +20 -3
  28. package/esm2022/renderer/components/icon.component.mjs +6 -2
  29. package/esm2022/renderer/creations/create-active-cell-border.mjs +3 -3
  30. package/esm2022/renderer/creations/create-cells.mjs +2 -2
  31. package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +5 -5
  32. package/esm2022/renderer/drawers/cell-drawer.mjs +30 -32
  33. package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +5 -5
  34. package/esm2022/renderer/interfaces/hover-cell.mjs +1 -1
  35. package/esm2022/renderer/renderer.component.mjs +6 -6
  36. package/esm2022/types/cell.mjs +1 -1
  37. package/esm2022/types/component-config.mjs +1 -1
  38. package/esm2022/types/grid.mjs +1 -1
  39. package/esm2022/utils/cell.mjs +5 -3
  40. package/esm2022/utils/style.mjs +9 -3
  41. package/fesm2022/ai-table-grid.mjs +2917 -2674
  42. package/fesm2022/ai-table-grid.mjs.map +1 -1
  43. package/grid-base.component.d.ts +5 -3
  44. package/grid-base.component.d.ts.map +1 -1
  45. package/grid.component.d.ts +1 -0
  46. package/grid.component.d.ts.map +1 -1
  47. package/package.json +1 -1
  48. package/renderer/components/cells/index.d.ts +1 -0
  49. package/renderer/components/cells/index.d.ts.map +1 -1
  50. package/renderer/components/cells/rate.component.d.ts +38 -0
  51. package/renderer/components/cells/rate.component.d.ts.map +1 -0
  52. package/renderer/components/frozen-heads.component.d.ts +1 -0
  53. package/renderer/components/frozen-heads.component.d.ts.map +1 -1
  54. package/renderer/components/hover-cell.component.d.ts +2 -2
  55. package/renderer/components/hover-cell.component.d.ts.map +1 -1
  56. package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
  57. package/renderer/components/icon.component.d.ts.map +1 -1
  58. package/renderer/creations/create-cells.d.ts +2 -1
  59. package/renderer/creations/create-cells.d.ts.map +1 -1
  60. package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
  61. package/renderer/drawers/cell-drawer.d.ts.map +1 -1
  62. package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -1
  63. package/renderer/interfaces/hover-cell.d.ts.map +1 -1
  64. package/renderer/renderer.component.d.ts +4 -12
  65. package/renderer/renderer.component.d.ts.map +1 -1
  66. package/types/cell.d.ts +5 -2
  67. package/types/cell.d.ts.map +1 -1
  68. package/types/component-config.d.ts +5 -2
  69. package/types/component-config.d.ts.map +1 -1
  70. package/types/grid.d.ts +4 -1
  71. package/types/grid.d.ts.map +1 -1
  72. package/utils/cell.d.ts +1 -1
  73. package/utils/cell.d.ts.map +1 -1
  74. package/utils/style.d.ts +1 -1
  75. package/utils/style.d.ts.map +1 -1
  76. package/components/cell-editors/rating/rating-editor.component.d.ts +0 -7
  77. package/components/cell-editors/rating/rating-editor.component.d.ts.map +0 -1
  78. package/components/cell-editors/rating/rating-editor.component.scss +0 -10
  79. package/esm2022/components/cell-editors/rating/rating-editor.component.mjs +0 -24
@@ -6,7 +6,8 @@ export const AI_TABLE_SCROLL_BAR_PADDING = 3; // 单元格滑动容器的滚动
6
6
  export const AI_TABLE_OFFSET = 0.5; // 边框线偏移值
7
7
  export const AI_TABLE_TEXT_GAP = 8; // 文本间距
8
8
  export const AI_TABLE_ROW_HEAD = 'AI_TABLE_ROW_HEAD'; // 行头
9
- export const AI_TABLE_ROW_HEAD_WIDTH = 44; // 表格行头 checkbox 列的宽度
9
+ export const AI_TABLE_ROW_DRAG_ICON_WIDTH = 18; // 行拖拽宽度
10
+ export const AI_TABLE_ROW_HEAD_WIDTH = 44 + AI_TABLE_ROW_DRAG_ICON_WIDTH; // 表格行头 checkbox 列的宽度
10
11
  export const AI_TABLE_ROW_HEAD_SIZE = 16; // 添加行按钮的尺寸
11
12
  export const AI_TABLE_ROW_ADD_BUTTON = 'AI_TABLE_ROW_ADD_BUTTON'; // 添加行名称
12
13
  export const AI_TABLE_BLANK = 'AI_TABLE_BLANK'; // 空白区域
@@ -26,6 +27,7 @@ export const AI_TABLE_FIELD_ADD_BUTTON_WIDTH = 100; // 添加列宽度
26
27
  export const AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE = 8; // 字段表列头图标的间距
27
28
  export const AI_TABLE_FIELD_HEAD_MORE = 'AI_TABLE_FIELD_HEAD_MORE'; // 更多图标名称
28
29
  export const AI_TABLE_FIELD_HEAD_OPACITY_LINE = 'AI_TABLE_FIELD_HEAD_OPACITY_LINE'; // 字段列头透明线
30
+ export const AI_TABLE_ROW_DRAG = 'AI_TABLE_ROW_DRAG'; // 行拖拽
29
31
  export const AI_TABLE_PREVENT_CLEAR_SELECTION_CLASS = '.ai-table-prevent-clear-selection';
30
32
  export const AI_TABLE_ICON_COMMON_SIZE = 16; // 表格图标的通用尺寸
31
33
  export const AI_TABLE_CELL = 'AI_TABLE_CELL'; // 单元格标识
@@ -70,4 +72,5 @@ export const AI_TABLE_PROGRESS_BAR_HEIGHT = 10;
70
72
  export const AI_TABLE_PROGRESS_BAR_RADIUS = 5;
71
73
  export const AI_TABLE_PROGRESS_TEXT_Width = 46;
72
74
  export const AI_TABLE_POPOVER_LEFT_OFFSET = 4;
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb25zdGFudHMvdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsRUFBRSxDQUFDLENBQUMsb0JBQW9CO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtBQUMxRSxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxDQUFDLENBQUMsQ0FBQyx3QkFBd0I7QUFDL0UsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTztBQUN6RCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0I7QUFDOUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQyxDQUFDLFNBQVM7QUFDN0MsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTztBQUUzQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQyxDQUFDLEtBQUs7QUFDM0QsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsRUFBRSxDQUFDLENBQUMscUJBQXFCO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEVBQUUsQ0FBQyxDQUFDLFdBQVc7QUFDckQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcseUJBQXlCLENBQUMsQ0FBQyxRQUFRO0FBQzFFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLE9BQU87QUFFdkQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxTQUFTO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQyxDQUFDLFlBQVk7QUFDMUQsTUFBTSxD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QUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLEVBQUUsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQUlfVEFCTEVfQUNUSU9OX0NPTU1PTl9TSVpFID0gMzI7IC8vIOihqOagvOWbvuagh2FjdGlvbuiDjOaZr+eahOmAmueUqOWwuuWvuFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0FDVElPTl9DT01NT05fUkFESVVTID0gNDsgLy8g6KGo5qC85Zu+5qCHYWN0aW9u6IOM5pmv55qEcmFkaXVz6YCa55So5bC65a+4XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQUNUSU9OX0NPTU1PTl9SSUdIVF9QQURESU5HID0gNjsgLy8g6KGo5qC85Zu+5qCHYWN0aW9u5Y+z5L6ncGFkZGluZ+WwuuWvuFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0RFRkFVTFRfQ09MVU1OX1dJRFRIID0gMjAwOyAvLyDpu5jorqTliJflrr1cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9TQ1JPTExfQkFSX1BBRERJTkcgPSAzOyAvLyDljZXlhYPmoLzmu5HliqjlrrnlmajnmoTmu5rliqjmnaHlrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9PRkZTRVQgPSAwLjU7IC8vIOi+ueahhue6v+WBj+enu+WAvFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1RFWFRfR0FQID0gODsgLy8g5paH5pys6Ze06LedXG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfSEVBRCA9ICdBSV9UQUJMRV9ST1dfSEVBRCc7IC8vIOihjOWktFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19IRUFEX1dJRFRIID0gNDQ7IC8vIOihqOagvOihjOWktCBjaGVja2JveCDliJfnmoTlrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfSEVBRF9TSVpFID0gMTY7IC8vIOa3u+WKoOihjOaMiemSrueahOWwuuWvuFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19BRERfQlVUVE9OID0gJ0FJX1RBQkxFX1JPV19BRERfQlVUVE9OJzsgLy8g5re75Yqg6KGM5ZCN56ewXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQkxBTksgPSAnQUlfVEFCTEVfQkxBTksnOyAvLyDnqbrnmb3ljLrln59cblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0hFQUQgPSAnQUlfVEFCTEVfRklFTERfSEVBRCc7IC8vIOWxnuaAp+WIl+WktOagh+ivhlxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0hFQURfSEVJR0hUID0gNDQ7IC8vIOihqOagvOWtl+auteWIl+WktOeahOmrmOW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19CTEFOS19IRUlHSFQgPSA0MzsgLy8g5YeP5Y676L655qGG5ZCO55yf5a6e55qE6KGM6auYXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUk9XX0hFSUdIVCA9IDQ0OyAvLyDpu5jorqTooYzpq5jln7rlh4ZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0FDVElWRV9CT1JERVJfV0lEVEggPSAyOyAvLyDpgInkuK3ljZXlhYPmoLznmoTovrnmoYblrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0FUVEFDSE1FTlRfQUREID0gJ0FJX1RBQkxFX0NFTExfQVRUQUNITUVOVF9BREQnOyAvLyDpmYTku7ZjZWxs5Lit5paw5aKe5Zu+5qCH5ZCN56ewXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9BVFRBQ0hNRU5UX0ZJTEUgPSAnQUlfVEFCTEVfQ0VMTF9BVFRBQ0hNRU5UX0ZJTEUnOyAvLyDpmYTku7ZjZWxs5Lit5paH5Lu2XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9FRElUID0gJ0FJX1RBQkxFX0NFTExfRURJVCc7IC8vIOmZhOS7tmNlbGzkuK3nvJbovpHlm77moIflkI3np7BcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX1RFWFRfTUlOX1dJRFRIID0gMzA7IC8vIOWtl+auteWIl+WktOaWh+acrOeahOacgOWwj+WuveW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19TRUxFQ1RfQ0hFQ0tCT1ggPSAnQUlfVEFCTEVfUk9XX1NFTEVDVF9DSEVDS0JPWCc7IC8vIOihjCBjaGVja2JveFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YID0gJ0FJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YJzsgLy8g6KGo5aS0IGNoZWNrYm94IOagh+ivhlxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT04gPSAnQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTic7IC8vIOa3u+WKoOWIl+WQjeensFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEggPSAxMDA7IC8vIOa3u+WKoOWIl+WuveW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0hFQURfSUNPTl9HQVBfU0laRSA9IDg7IC8vIOWtl+auteihqOWIl+WktOWbvuagh+eahOmXtOi3nVxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJRUxEX0hFQURfTU9SRSA9ICdBSV9UQUJMRV9GSUVMRF9IRUFEX01PUkUnOyAvLyDmm7TlpJrlm77moIflkI3np7BcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX09QQUNJVFlfTElORSA9ICdBSV9UQUJMRV9GSUVMRF9IRUFEX09QQUNJVFlfTElORSc7IC8vIOWtl+auteWIl+WktOmAj+aYjue6v1xuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUFJFVkVOVF9DTEVBUl9TRUxFQ1RJT05fQ0xBU1MgPSAnLmFpLXRhYmxlLXByZXZlbnQtY2xlYXItc2VsZWN0aW9uJztcblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUgPSAxNjsgLy8g6KGo5qC85Zu+5qCH55qE6YCa55So5bC65a+4XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTCA9ICdBSV9UQUJMRV9DRUxMJzsgLy8g5Y2V5YWD5qC85qCH6K+GXG4vLyDlm6DkuLogZG9tIOeahOi+uei3nSAxMiDmmK/kuI3ljIXlkKsg6L655qGG55qE77yM5omA5Lul5Yqg5LiK6L655qGGIDJweCAg5omN6IO96LefIOe8lui+kemHjOmdoueahOWGheWuueWvueWFtu+8m1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfUEFERElORyA9IDE0OyAvLyDljZXlhYPmoLzlhoXlrrnnmoTlhoXovrnot51cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0JPUkRFUiA9IDI7IC8vIOWNleWFg+agvOi+ueahhuWuveW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTVVMVElfUEFERElOR19UT1AgPSAxMDtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX01VTFRJX0lURU1fTUFSR0lOX1RPUCA9IDQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9QQURESU5HX0xFRlQgPSA0O1xuLy8g5pyA5bCR5pi+56S65paH5a2X5a695bqm77yM5LiA5Liq5paH5a2XKyDkuInkuKrngrlcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9NSU5fVEVYVF9XSURUSCA9IDI0O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTVVMVElfRE9UX1JBRElVUyA9IDQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9JVEVNX01BUkdJTl9MRUZUID0gODtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0RFTEVURV9JVEVNX0JVVFRPTl9TSVpFID0gODsgLy8g6YCJ6aG55Yig6Zmk5oyJ6ZKu55qE5a695bqmXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9ERUxFVEVfSVRFTV9CVVRUT05fU0laRV9PRkZTRVQgPSAxMjsgLy8g6YCJ6aG55a2X5q615Yig6Zmk5oyJ6ZKu5aSn5bCP55qE5YGP56e76YePXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9JVEVNX01JTl9XSURUSCA9IDM2OyAvLyDpgInpobnlrZfmrrXpobnnmoTmnIDlsI/lrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX01BWF9ST1dfQ09VTlQgPSAxOyAvLyDpu5jorqTljZXlhYPmoLzlsZXnpLrnmoTmnIDlpKfooYzmlbBcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0VNT0pJX1NJWkUgPSAxODtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0VNT0pJX1BBRERJTkcgPSA4O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX01BWF9IRUlHSFQgPSAxMzA7IC8vIOaIkOWRmOWtl+autemhueacgOWkp+mrmOW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX0lURU1fSEVJR0hUID0gMjQ7IC8vIOaIkOWRmOWtl+autemhuemrmOW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX0lURU1fUEFERElORyA9IDQ7IC8vIOWkmuS4quaIkOWRmOWktOWDj+mXtOi3nVxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfQUREX0lURU1fQlVUVE9OX1NJWkUgPSAyMjsgLy8g5oiQ5ZGYL+mAiemhuS/pk77mjqUv6ZmE5Lu25a2X5q6155qE5paw5oyJ6ZKu5aSn5bCPXG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9NRU1CRVJfQVZBVEFSX1NJWkUgPSAyNDsgLy8g5oiQ5ZGY5aS05YOP5aSn5bCPXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfTUVNQkVSX0lURU1fUEFERElOR19SSUdIVCA9IDg7IC8vIOaIkOWRmOWtl+autemhueWPs+i+uei3nVxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX01FTUJFUl9JVEVNX0FWQVRBUl9NQVJHSU5fUklHSFQgPSA4OyAvLyDmiJDlkZjlpLTlg4/kuI7miJDlkZjlkI3kuYvpl7TnmoTpl7Tot51cblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJTEVfSUNPTl9JVEVNX0hFSUdIVCA9IDIwOyAvLyDmlofku7blrZfmrrXpobnpq5jluqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUxFX0lDT05fU0laRSA9IDIwOyAvLyDmlofku7blm77moIflpKflsI9cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0ZJRUxEX0lURU1fSEVJR0hUID0gODsgLy8g5paH5Lu25a2X5q616aG55Y+z6L656LedXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfSVRFTV9NQVJHSU5fUklHSFQgPSA4OyAvLyDmlofku7blm77moIfkuYvpl7TnmoTpl7Tot51cblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX09QVElPTl9JVEVNX1BBRERJTkcgPSAxMDsgLy8g6YCJ6aG55oyJ6ZKu6Ze06LedXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fSEVJR0hUID0gMjQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fRk9OVF9TSVpFID0gMTQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fUkFESVVTID0gMTg7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfVEFHX1BBRERJTkcgPSAxMjtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9UQUdfRk9OVF9TSVpFID0gMTI7XG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9QSUVDRV9XSURUSCA9IDEwO1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BJRUNFX1JBRElVUyA9IDI7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ09NTU9OX0ZPTlRfU0laRSA9IDE0O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0RPVF9SQURJVVMgPSA1O1xuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUFJPR1JFU1NfQkFSX0hFSUdIVCA9IDEwO1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BST0dSRVNTX0JBUl9SQURJVVMgPSA1O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BST0dSRVNTX1RFWFRfV2lkdGggPSA0NjtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9QT1BPVkVSX0xFRlRfT0ZGU0VUID0gNDtcbiJdfQ==
75
+ export const AI_TABLE_RATE_MAX = 5;
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb25zdGFudHMvdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsRUFBRSxDQUFDLENBQUMsb0JBQW9CO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtBQUMxRSxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxDQUFDLENBQUMsQ0FBQyx3QkFBd0I7QUFDL0UsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTztBQUN6RCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0I7QUFDOUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQyxDQUFDLFNBQVM7QUFDN0MsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTztBQUUzQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQyxDQUFDLEtBQUs7QUFDM0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUTtBQUN4RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxFQUFFLEdBQUcsNEJBQTRCLENBQUMsQ0FBQyxxQkFBcUI7QUFDL0YsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsRUFBRSxDQUFDLENBQUMsV0FBVztBQUNyRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyx5QkFBeUIsQ0FBQyxDQUFDLFFBQVE7QUFDMUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLENBQUMsT0FBTztBQUV2RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLFNBQVM7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LE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUVyQyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxFQUFFLENBQUM7QUFDL0MsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLEVBQUUsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxDQUFDLENBQUM7QUFFOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0FDVElPTl9DT01NT05fU0laRSA9IDMyOyAvLyDooajmoLzlm77moIdhY3Rpb27og4zmma/nmoTpgJrnlKjlsLrlr7hcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9BQ1RJT05fQ09NTU9OX1JBRElVUyA9IDQ7IC8vIOihqOagvOWbvuagh2FjdGlvbuiDjOaZr+eahHJhZGl1c+mAmueUqOWwuuWvuFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0FDVElPTl9DT01NT05fUklHSFRfUEFERElORyA9IDY7IC8vIOihqOagvOWbvuagh2FjdGlvbuWPs+S+p3BhZGRpbmflsLrlr7hcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ERUZBVUxUX0NPTFVNTl9XSURUSCA9IDIwMDsgLy8g6buY6K6k5YiX5a69XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfU0NST0xMX0JBUl9QQURESU5HID0gMzsgLy8g5Y2V5YWD5qC85ruR5Yqo5a655Zmo55qE5rua5Yqo5p2h5a695bqmXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT0ZGU0VUID0gMC41OyAvLyDovrnmoYbnur/lgY/np7vlgLxcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9URVhUX0dBUCA9IDg7IC8vIOaWh+acrOmXtOi3nVxuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUk9XX0hFQUQgPSAnQUlfVEFCTEVfUk9XX0hFQUQnOyAvLyDooYzlpLRcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRIID0gMTg7IC8vIOihjOaLluaLveWuveW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19IRUFEX1dJRFRIID0gNDQgKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRIOyAvLyDooajmoLzooYzlpLQgY2hlY2tib3gg5YiX55qE5a695bqmXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUk9XX0hFQURfU0laRSA9IDE2OyAvLyDmt7vliqDooYzmjInpkq7nmoTlsLrlr7hcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfQUREX0JVVFRPTiA9ICdBSV9UQUJMRV9ST1dfQUREX0JVVFRPTic7IC8vIOa3u+WKoOihjOWQjeensFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0JMQU5LID0gJ0FJX1RBQkxFX0JMQU5LJzsgLy8g56m655m95Yy65Z+fXG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEID0gJ0FJX1RBQkxFX0ZJRUxEX0hFQUQnOyAvLyDlsZ7mgKfliJflpLTmoIfor4ZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX0hFSUdIVCA9IDQ0OyAvLyDooajmoLzlrZfmrrXliJflpLTnmoTpq5jluqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfQkxBTktfSEVJR0hUID0gNDM7IC8vIOWHj+WOu+i+ueahhuWQjuecn+WunueahOihjOmrmFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JPV19IRUlHSFQgPSA0NDsgLy8g6buY6K6k6KGM6auY5Z+65YeGXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9BQ1RJVkVfQk9SREVSX1dJRFRIID0gMjsgLy8g6YCJ5Lit5Y2V5YWD5qC855qE6L655qGG5a695bqmXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9BVFRBQ0hNRU5UX0FERCA9ICdBSV9UQUJMRV9DRUxMX0FUVEFDSE1FTlRfQUREJzsgLy8g6ZmE5Lu2Y2VsbOS4reaWsOWinuWbvuagh+WQjeensFxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfQVRUQUNITUVOVF9GSUxFID0gJ0FJX1RBQkxFX0NFTExfQVRUQUNITUVOVF9GSUxFJzsgLy8g6ZmE5Lu2Y2VsbOS4reaWh+S7tlxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfRURJVCA9ICdBSV9UQUJMRV9DRUxMX0VESVQnOyAvLyDpmYTku7ZjZWxs5Lit57yW6L6R5Zu+5qCH5ZCN56ewXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfSEVBRF9URVhUX01JTl9XSURUSCA9IDMwOyAvLyDlrZfmrrXliJflpLTmlofmnKznmoTmnIDlsI/lrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YID0gJ0FJX1RBQkxFX1JPV19TRUxFQ1RfQ0hFQ0tCT1gnOyAvLyDooYwgY2hlY2tib3hcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCA9ICdBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCc7IC8vIOihqOWktCBjaGVja2JveCDmoIfor4ZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OID0gJ0FJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT04nOyAvLyDmt7vliqDliJflkI3np7BcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRIID0gMTAwOyAvLyDmt7vliqDliJflrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX0lDT05fR0FQX1NJWkUgPSA4OyAvLyDlrZfmrrXooajliJflpLTlm77moIfnmoTpl7Tot51cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUVMRF9IRUFEX01PUkUgPSAnQUlfVEFCTEVfRklFTERfSEVBRF9NT1JFJzsgLy8g5pu05aSa5Zu+5qCH5ZCN56ewXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfSEVBRF9PUEFDSVRZX0xJTkUgPSAnQUlfVEFCTEVfRklFTERfSEVBRF9PUEFDSVRZX0xJTkUnOyAvLyDlrZfmrrXliJflpLTpgI/mmI7nur9cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9ST1dfRFJBRyA9ICdBSV9UQUJMRV9ST1dfRFJBRyc7IC8vIOihjOaLluaLvVxuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUFJFVkVOVF9DTEVBUl9TRUxFQ1RJT05fQ0xBU1MgPSAnLmFpLXRhYmxlLXByZXZlbnQtY2xlYXItc2VsZWN0aW9uJztcblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUgPSAxNjsgLy8g6KGo5qC85Zu+5qCH55qE6YCa55So5bC65a+4XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTCA9ICdBSV9UQUJMRV9DRUxMJzsgLy8g5Y2V5YWD5qC85qCH6K+GXG4vLyDlm6DkuLogZG9tIOeahOi+uei3nSAxMiDmmK/kuI3ljIXlkKsg6L655qGG55qE77yM5omA5Lul5Yqg5LiK6L655qGGIDJweCAg5omN6IO96LefIOe8lui+kemHjOmdoueahOWGheWuueWvueWFtu+8m1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfUEFERElORyA9IDE0OyAvLyDljZXlhYPmoLzlhoXlrrnnmoTlhoXovrnot51cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0JPUkRFUiA9IDI7IC8vIOWNleWFg+agvOi+ueahhuWuveW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTVVMVElfUEFERElOR19UT1AgPSAxMDtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX01VTFRJX0lURU1fTUFSR0lOX1RPUCA9IDQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9QQURESU5HX0xFRlQgPSA0O1xuLy8g5pyA5bCR5pi+56S65paH5a2X5a695bqm77yM5LiA5Liq5paH5a2XKyDkuInkuKrngrlcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9NSU5fVEVYVF9XSURUSCA9IDI0O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTVVMVElfRE9UX1JBRElVUyA9IDQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9JVEVNX01BUkdJTl9MRUZUID0gODtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0RFTEVURV9JVEVNX0JVVFRPTl9TSVpFID0gODsgLy8g6YCJ6aG55Yig6Zmk5oyJ6ZKu55qE5a695bqmXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9ERUxFVEVfSVRFTV9CVVRUT05fU0laRV9PRkZTRVQgPSAxMjsgLy8g6YCJ6aG55a2X5q615Yig6Zmk5oyJ6ZKu5aSn5bCP55qE5YGP56e76YePXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ0VMTF9NVUxUSV9JVEVNX01JTl9XSURUSCA9IDM2OyAvLyDpgInpobnlrZfmrrXpobnnmoTmnIDlsI/lrr3luqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX01BWF9ST1dfQ09VTlQgPSAxOyAvLyDpu5jorqTljZXlhYPmoLzlsZXnpLrnmoTmnIDlpKfooYzmlbBcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0VNT0pJX1NJWkUgPSAxODtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0VNT0pJX1BBRERJTkcgPSA4O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX01BWF9IRUlHSFQgPSAxMzA7IC8vIOaIkOWRmOWtl+autemhueacgOWkp+mrmOW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX0lURU1fSEVJR0hUID0gMjQ7IC8vIOaIkOWRmOWtl+autemhuemrmOW6plxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfTUVNQkVSX0lURU1fUEFERElORyA9IDQ7IC8vIOWkmuS4quaIkOWRmOWktOWDj+mXtOi3nVxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0NFTExfQUREX0lURU1fQlVUVE9OX1NJWkUgPSAyMjsgLy8g5oiQ5ZGYL+mAiemhuS/pk77mjqUv6ZmE5Lu25a2X5q6155qE5paw5oyJ6ZKu5aSn5bCPXG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9NRU1CRVJfQVZBVEFSX1NJWkUgPSAyNDsgLy8g5oiQ5ZGY5aS05YOP5aSn5bCPXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfTUVNQkVSX0lURU1fUEFERElOR19SSUdIVCA9IDg7IC8vIOaIkOWRmOWtl+autemhueWPs+i+uei3nVxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX01FTUJFUl9JVEVNX0FWQVRBUl9NQVJHSU5fUklHSFQgPSA4OyAvLyDmiJDlkZjlpLTlg4/kuI7miJDlkZjlkI3kuYvpl7TnmoTpl7Tot51cblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0ZJTEVfSUNPTl9JVEVNX0hFSUdIVCA9IDIwOyAvLyDmlofku7blrZfmrrXpobnpq5jluqZcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9GSUxFX0lDT05fU0laRSA9IDIwOyAvLyDmlofku7blm77moIflpKflsI9cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9DRUxMX0ZJRUxEX0lURU1fSEVJR0hUID0gODsgLy8g5paH5Lu25a2X5q616aG55Y+z6L656LedXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfRklFTERfSVRFTV9NQVJHSU5fUklHSFQgPSA4OyAvLyDmlofku7blm77moIfkuYvpl7TnmoTpl7Tot51cblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX09QVElPTl9JVEVNX1BBRERJTkcgPSAxMDsgLy8g6YCJ6aG55oyJ6ZKu6Ze06LedXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fSEVJR0hUID0gMjQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fRk9OVF9TSVpFID0gMTQ7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfT1BUSU9OX0lURU1fUkFESVVTID0gMTg7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfVEFHX1BBRERJTkcgPSAxMjtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9UQUdfRk9OVF9TSVpFID0gMTI7XG5cbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9QSUVDRV9XSURUSCA9IDEwO1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BJRUNFX1JBRElVUyA9IDI7XG5leHBvcnQgY29uc3QgQUlfVEFCTEVfQ09NTU9OX0ZPTlRfU0laRSA9IDE0O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX0RPVF9SQURJVVMgPSA1O1xuXG5leHBvcnQgY29uc3QgQUlfVEFCTEVfUFJPR1JFU1NfQkFSX0hFSUdIVCA9IDEwO1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BST0dSRVNTX0JBUl9SQURJVVMgPSA1O1xuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1BST0dSRVNTX1RFWFRfV2lkdGggPSA0NjtcbmV4cG9ydCBjb25zdCBBSV9UQUJMRV9QT1BPVkVSX0xFRlRfT0ZGU0VUID0gNDtcblxuZXhwb3J0IGNvbnN0IEFJX1RBQkxFX1JBVEVfTUFYID0gNTtcbiJdfQ==
@@ -55,4 +55,4 @@ export var DragType;
55
55
  DragType["columnWidth"] = "columnWidth";
56
56
  DragType["none"] = "none";
57
57
  })(DragType || (DragType = {}));
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2NvcmUvdHlwZXMvY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLENBQU4sSUFBWSxnQkFlWDtBQWZELFdBQVksZ0JBQWdCO0lBQ3hCLGlDQUFhLENBQUE7SUFDYiwwQ0FBc0IsQ0FBQTtJQUN0QixxQ0FBaUIsQ0FBQTtJQUNqQixxQ0FBaUIsQ0FBQTtJQUNqQixpQ0FBYSxDQUFBO0lBQ2IscUNBQWlCLENBQUE7SUFDakIseUNBQXFCLENBQUE7SUFDckIsaUNBQWEsQ0FBQTtJQUNiLGlDQUFhLENBQUE7SUFDYiw2Q0FBeUIsQ0FBQTtJQUN6Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtBQUM1QixDQUFDLEVBZlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQWUzQjtBQVFELE1BQU0sQ0FBTixJQUFZLGVBbUJYO0FBbkJELFdBQVksZUFBZTtJQUN2QixxREFBUSxDQUFBO0lBQ1IsNkRBQVksQ0FBQTtJQUNaLHVEQUFTLENBQUE7SUFDVCx5REFBVSxDQUFBO0lBQ1YseURBQVUsQ0FBQTtJQUNWLHFFQUFnQixDQUFBO0lBQ2hCLHVFQUFpQixDQUFBO0lBQ2pCLHVFQUFpQixDQUFBO0lBQ2pCLG1EQUFPLENBQUE7SUFDUCwyREFBVyxDQUFBO0lBQ1gsb0RBQVEsQ0FBQTtJQUNSLG9EQUFRLENBQUE7SUFDUiw0RUFBb0IsQ0FBQTtJQUNwQixnRkFBc0IsQ0FBQTtJQUN0Qiw0REFBWSxDQUFBO0lBQ1osZ0VBQWMsQ0FBQTtJQUNkLDBFQUFtQixDQUFBO0lBQ25CLDhFQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFuQlcsZUFBZSxLQUFmLGVBQWUsUUFtQjFCO0FBZ0RELE1BQU0sQ0FBTixJQUFZLHdCQUtYO0FBTEQsV0FBWSx3QkFBd0I7SUFDaEMsdUVBQVEsQ0FBQTtJQUNSLHFFQUFPLENBQUE7SUFDUCxxRUFBTyxDQUFBO0lBQ1AseUVBQVMsQ0FBQTtBQUNiLENBQUMsRUFMVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBS25DO0FBd0VELE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDakIsOEJBQWlCLENBQUE7SUFDakIsNEJBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUE4Q0QsTUFBTSxDQUFOLElBQVksUUFLWDtBQUxELFdBQVksUUFBUTtJQUNoQiw2QkFBaUIsQ0FBQTtJQUNqQiwyQkFBZSxDQUFBO0lBQ2YsdUNBQTJCLENBQUE7SUFDM0IseUJBQWEsQ0FBQTtBQUNqQixDQUFDLEVBTFcsUUFBUSxLQUFSLFFBQVEsUUFLbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWN0b3IyZCB9IGZyb20gJ2tvbnZhL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBJZCB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuaW1wb3J0IHsgQ29vcmRpbmF0ZSB9IGZyb20gJy4uL2Nvb3JkaW5hdGUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkc1NpemVNYXAgfSBmcm9tICcuLi8uLi90eXBlcy9ncmlkJztcblxuZXhwb3J0IGVudW0gQUlUYWJsZUZpZWxkVHlwZSB7XG4gICAgdGV4dCA9ICd0ZXh0JyxcbiAgICByaWNoVGV4dCA9ICdyaWNoX3RleHQnLFxuICAgIHNlbGVjdCA9ICdzZWxlY3QnLFxuICAgIG51bWJlciA9ICdudW1iZXInLFxuICAgIGRhdGUgPSAnZGF0ZScsXG4gICAgbWVtYmVyID0gJ21lbWJlcicsXG4gICAgcHJvZ3Jlc3MgPSAncHJvZ3Jlc3MnLFxuICAgIHJhdGUgPSAncmF0ZScsXG4gICAgbGluayA9ICdsaW5rJyxcbiAgICBhdHRhY2htZW50ID0gJ2F0dGFjaG1lbnQnLFxuICAgIGNyZWF0ZWRBdCA9ICdjcmVhdGVkX2F0JyxcbiAgICB1cGRhdGVkQXQgPSAndXBkYXRlZF9hdCcsXG4gICAgY3JlYXRlZEJ5ID0gJ2NyZWF0ZWRfYnknLFxuICAgIHVwZGF0ZWRCeSA9ICd1cGRhdGVkX2J5J1xufVxuXG5leHBvcnQgdHlwZSBTeXN0ZW1GaWVsZFR5cGVzID1cbiAgICB8IEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0XG4gICAgfCBBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeVxuICAgIHwgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQXRcbiAgICB8IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEJ5O1xuXG5leHBvcnQgZW51bSBBSVRhYmxlU3RhdFR5cGUge1xuICAgIE5vbmUgPSAwLFxuICAgIENvdW50QWxsID0gMSxcbiAgICBFbXB0eSA9IDIsXG4gICAgRmlsbGVkID0gMyxcbiAgICBVbmlxdWUgPSA0LFxuICAgIFBlcmNlbnRFbXB0eSA9IDUsXG4gICAgUGVyY2VudEZpbGxlZCA9IDYsXG4gICAgUGVyY2VudFVuaXF1ZSA9IDcsXG4gICAgU3VtID0gOCxcbiAgICBBdmVyYWdlID0gOSxcbiAgICBNYXggPSAxMCxcbiAgICBNaW4gPSAxMSxcbiAgICBEYXRlUmFuZ2VPZkRheXMgPSAxMixcbiAgICBEYXRlUmFuZ2VPZk1vbnRocyA9IDEzLFxuICAgIENoZWNrZWQgPSAxNCxcbiAgICBVbkNoZWNrZWQgPSAxNSxcbiAgICBQZXJjZW50Q2hlY2tlZCA9IDE2LFxuICAgIFBlcmNlbnRVbkNoZWNrZWQgPSAxN1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVGaWVsZE9wdGlvbiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGU7XG4gICAgaWNvbjogc3RyaW5nO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgc2V0dGluZ3M/OiBBSVRhYmxlRmllbGRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRmllbGQge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlO1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgICBmcm96ZW4/OiBib29sZWFuO1xuICAgIHN0YXRfdHlwZT86IEFJVGFibGVTdGF0VHlwZTtcbiAgICBzZXR0aW5ncz86IEFJVGFibGVGaWVsZFNldHRpbmdzO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlRmllbGRTZXR0aW5ncyA9IFRleHRTZXR0aW5ncyB8IFJpY2hUZXh0U2V0dGluZ3MgfCBTZWxlY3RTZXR0aW5ncyB8IE1lbWJlclNldHRpbmdzIHwgQXR0YWNobWVudFNldHRpbmdzO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRTZXR0aW5ncyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0U2V0dGluZ3Mge31cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RTZXR0aW5ncyBleHRlbmRzIElzTXVsdGlwbGUge1xuICAgIG9wdGlvbl9zdHlsZT86IEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZTtcbiAgICBvcHRpb25zOiBBSVRhYmxlU2VsZWN0T3B0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXR0YWNobWVudFNldHRpbmdzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVtYmVyU2V0dGluZ3MgZXh0ZW5kcyBJc011bHRpcGxlIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXNNdWx0aXBsZSB7XG4gICAgaXNfbXVsdGlwbGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTZWxlY3RPcHRpb24ge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHRleHQ6IHN0cmluZztcbiAgICBpY29uPzogc3RyaW5nO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJnX2NvbG9yPzogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlU2VsZWN0T3B0aW9uU3R5bGUge1xuICAgIHRleHQgPSAxLFxuICAgIHRhZyA9IDIsXG4gICAgZG90ID0gMyxcbiAgICBwaWVjZSA9IDRcbn1cblxuZXhwb3J0IHR5cGUgVGV4dEZpZWxkVmFsdWUgPSBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIFJpY2h0ZXh0RmllbGRWYWx1ZSA9IGFueVtdO1xuXG5leHBvcnQgdHlwZSBMaW5rRmllbGRWYWx1ZSA9IHsgdXJsOiBzdHJpbmc7IHRleHQ6IHN0cmluZyB9O1xuXG5leHBvcnQgdHlwZSBTZWxlY3RGaWVsZFZhbHVlID0gSWRbXTtcblxuZXhwb3J0IHR5cGUgTnVtYmVyRmllbGRWYWx1ZSA9IG51bWJlcjtcblxuZXhwb3J0IHR5cGUgRGF0ZUZpZWxkVmFsdWUgPSB7IHRpbWVzdGFtcDogbnVtYmVyIH07XG5cbmV4cG9ydCB0eXBlIE1lbWJlckZpZWxkVmFsdWUgPSBJZFtdO1xuXG5leHBvcnQgdHlwZSBBdHRhY2htZW50RmllbGRWYWx1ZSA9IHN0cmluZ1tdO1xuXG5leHBvcnQgdHlwZSBQcm9ncmVzc0ZpZWxkVmFsdWUgPSBudW1iZXI7IC8vIFswLDFdXG5cbmV4cG9ydCB0eXBlIFJhdGVGaWVsZFZhbHVlID0gMSB8IDIgfCAzIHwgNCB8IDU7XG5cbmV4cG9ydCB0eXBlIEZpZWxkVmFsdWUgPVxuICAgIHwgVGV4dEZpZWxkVmFsdWVcbiAgICB8IFJpY2h0ZXh0RmllbGRWYWx1ZVxuICAgIHwgTGlua0ZpZWxkVmFsdWVcbiAgICB8IFNlbGVjdEZpZWxkVmFsdWVcbiAgICB8IE51bWJlckZpZWxkVmFsdWVcbiAgICB8IERhdGVGaWVsZFZhbHVlXG4gICAgfCBNZW1iZXJGaWVsZFZhbHVlXG4gICAgfCBQcm9ncmVzc0ZpZWxkVmFsdWVcbiAgICB8IFJhdGVGaWVsZFZhbHVlXG4gICAgfCBBdHRhY2htZW50RmllbGRWYWx1ZVxuICAgIHwgYW55O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNrYWJsZUVudGl0eSB7XG4gICAgY3JlYXRlZF9hdDogTnVtYmVyRmllbGRWYWx1ZTtcbiAgICBjcmVhdGVkX2J5OiBzdHJpbmc7XG4gICAgdXBkYXRlZF9hdDogTnVtYmVyRmllbGRWYWx1ZTtcbiAgICB1cGRhdGVkX2J5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlVHJhY2thYmxlRW50aXR5IHtcbiAgICB1cGRhdGVkX2F0OiBOdW1iZXJGaWVsZFZhbHVlO1xuICAgIHVwZGF0ZWRfYnk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlUmVjb3JkIHtcbiAgICBfaWQ6IHN0cmluZztcbiAgICBzaG9ydF9pZDogc3RyaW5nO1xuICAgIGNyZWF0ZWRfYXQ6IE51bWJlckZpZWxkVmFsdWU7XG4gICAgY3JlYXRlZF9ieTogc3RyaW5nO1xuICAgIHVwZGF0ZWRfYXQ6IE51bWJlckZpZWxkVmFsdWU7XG4gICAgdXBkYXRlZF9ieTogc3RyaW5nO1xuICAgIHZhbHVlczogUmVjb3JkPHN0cmluZywgRmllbGRWYWx1ZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlY29yZFVwZGF0ZWRJbmZvIHtcbiAgICB1cGRhdGVkX2F0OiBudW1iZXI7XG4gICAgdXBkYXRlZF9ieTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlUmVjb3JkcyA9IEFJVGFibGVSZWNvcmRbXTtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZUZpZWxkcyA9IEFJVGFibGVGaWVsZFtdO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWYWx1ZSB7XG4gICAgcmVjb3JkczogQUlUYWJsZVJlY29yZHM7XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRzO1xuICAgIGZpZWxkc1NpemVNYXA6IEFJVGFibGVGaWVsZHNTaXplTWFwO1xufVxuXG5leHBvcnQgZW51bSBEaXJlY3Rpb24ge1xuICAgIGJlZm9yZSA9ICdiZWZvcmUnLFxuICAgIGFmdGVyID0gJ2FmdGVyJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZFJlY29yZE9wdGlvbnMge1xuICAgIG9yaWdpbklkOiBzdHJpbmc7XG4gICAgZGlyZWN0aW9uPzogRGlyZWN0aW9uO1xuICAgIGlzRHVwbGljYXRlPzogYm9vbGVhbjtcbiAgICBjb3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRGaWVsZE9wdGlvbnMge1xuICAgIG9yaWdpbklkOiBzdHJpbmc7XG4gICAgZGVmYXVsdFZhbHVlOiBQYXJ0aWFsPEFJVGFibGVGaWVsZD47XG4gICAgZGlyZWN0aW9uPzogRGlyZWN0aW9uO1xuICAgIGlzRHVwbGljYXRlPzogYm9vbGVhbjtcbiAgICBpc0NvcHk/OiBib29sZWFuO1xuICAgIGNvdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zPFQgPSB1bmtub3duPiB7XG4gICAgdmFsdWU6IFQ7XG4gICAgcGF0aDogQUlSZWNvcmRGaWVsZElkUGF0aDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRGaWVsZE9wdGlvbnM8VCA9IHVua25vd24+IHtcbiAgICBmaWVsZDogQUlUYWJsZUZpZWxkO1xuICAgIHBhdGg6IElkUGF0aDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb3ZlRmllbGRPcHRpb25zIHtcbiAgICBwYXRoOiBOdW1iZXJQYXRoO1xuICAgIG5ld1BhdGg6IE51bWJlclBhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0RmllbGRXaWR0aE9wdGlvbnMge1xuICAgIHBhdGg6IElkUGF0aDtcbiAgICB3aWR0aDogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBOdW1iZXJQYXRoID0gW251bWJlcl07XG5cbmV4cG9ydCB0eXBlIElkUGF0aCA9IFtzdHJpbmddO1xuXG5leHBvcnQgdHlwZSBBSVJlY29yZEZpZWxkSWRQYXRoID0gW3N0cmluZywgc3RyaW5nXTtcblxuZXhwb3J0IHR5cGUgUGF0aCA9IE51bWJlclBhdGggfCBJZFBhdGggfCBBSVJlY29yZEZpZWxkSWRQYXRoO1xuXG5leHBvcnQgZW51bSBEcmFnVHlwZSB7XG4gICAgcmVjb3JkID0gJ3JlY29yZCcsXG4gICAgZmllbGQgPSAnZmllbGQnLFxuICAgIGNvbHVtbldpZHRoID0gJ2NvbHVtbldpZHRoJyxcbiAgICBub25lID0gJ25vbmUnXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZURyYWdTdGF0ZSB7XG4gICAgdHlwZTogRHJhZ1R5cGU7XG4gICAgc291cmNlSWRzOiBTZXQ8c3RyaW5nPjtcbiAgICBzY3JvbGw/OiBWZWN0b3IyZDtcbiAgICBjb29yZGluYXRlPzogQ29vcmRpbmF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEcmFnRW5kRGF0YSB7XG4gICAgdHlwZTogRHJhZ1R5cGU7XG4gICAgdGFyZ2V0SW5kZXg/OiBudW1iZXI7XG4gICAgZmllbGRJZHM/OiBTZXQ8c3RyaW5nPjtcbiAgICBmaWVsZHNJbmRleD86IG51bWJlcltdO1xuICAgIHJlY29yZElkcz86IFNldDxzdHJpbmc+O1xuICAgIHJlY29yZHNJbmRleD86IG51bWJlcltdO1xuICAgIHdpZHRoPzogbnVtYmVyO1xufVxuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2NvcmUvdHlwZXMvY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLENBQU4sSUFBWSxnQkFlWDtBQWZELFdBQVksZ0JBQWdCO0lBQ3hCLGlDQUFhLENBQUE7SUFDYiwwQ0FBc0IsQ0FBQTtJQUN0QixxQ0FBaUIsQ0FBQTtJQUNqQixxQ0FBaUIsQ0FBQTtJQUNqQixpQ0FBYSxDQUFBO0lBQ2IscUNBQWlCLENBQUE7SUFDakIseUNBQXFCLENBQUE7SUFDckIsaUNBQWEsQ0FBQTtJQUNiLGlDQUFhLENBQUE7SUFDYiw2Q0FBeUIsQ0FBQTtJQUN6Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtJQUN4Qiw0Q0FBd0IsQ0FBQTtBQUM1QixDQUFDLEVBZlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQWUzQjtBQVFELE1BQU0sQ0FBTixJQUFZLGVBbUJYO0FBbkJELFdBQVksZUFBZTtJQUN2QixxREFBUSxDQUFBO0lBQ1IsNkRBQVksQ0FBQTtJQUNaLHVEQUFTLENBQUE7SUFDVCx5REFBVSxDQUFBO0lBQ1YseURBQVUsQ0FBQTtJQUNWLHFFQUFnQixDQUFBO0lBQ2hCLHVFQUFpQixDQUFBO0lBQ2pCLHVFQUFpQixDQUFBO0lBQ2pCLG1EQUFPLENBQUE7SUFDUCwyREFBVyxDQUFBO0lBQ1gsb0RBQVEsQ0FBQTtJQUNSLG9EQUFRLENBQUE7SUFDUiw0RUFBb0IsQ0FBQTtJQUNwQixnRkFBc0IsQ0FBQTtJQUN0Qiw0REFBWSxDQUFBO0lBQ1osZ0VBQWMsQ0FBQTtJQUNkLDBFQUFtQixDQUFBO0lBQ25CLDhFQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFuQlcsZUFBZSxLQUFmLGVBQWUsUUFtQjFCO0FBZ0RELE1BQU0sQ0FBTixJQUFZLHdCQUtYO0FBTEQsV0FBWSx3QkFBd0I7SUFDaEMsdUVBQVEsQ0FBQTtJQUNSLHFFQUFPLENBQUE7SUFDUCxxRUFBTyxDQUFBO0lBQ1AseUVBQVMsQ0FBQTtBQUNiLENBQUMsRUFMVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBS25DO0FBd0VELE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDakIsOEJBQWlCLENBQUE7SUFDakIsNEJBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFtREQsTUFBTSxDQUFOLElBQVksUUFLWDtBQUxELFdBQVksUUFBUTtJQUNoQiw2QkFBaUIsQ0FBQTtJQUNqQiwyQkFBZSxDQUFBO0lBQ2YsdUNBQTJCLENBQUE7SUFDM0IseUJBQWEsQ0FBQTtBQUNqQixDQUFDLEVBTFcsUUFBUSxLQUFSLFFBQVEsUUFLbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWN0b3IyZCB9IGZyb20gJ2tvbnZhL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBJZCB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuaW1wb3J0IHsgQ29vcmRpbmF0ZSB9IGZyb20gJy4uL2Nvb3JkaW5hdGUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkc1NpemVNYXAgfSBmcm9tICcuLi8uLi90eXBlcy9ncmlkJztcblxuZXhwb3J0IGVudW0gQUlUYWJsZUZpZWxkVHlwZSB7XG4gICAgdGV4dCA9ICd0ZXh0JyxcbiAgICByaWNoVGV4dCA9ICdyaWNoX3RleHQnLFxuICAgIHNlbGVjdCA9ICdzZWxlY3QnLFxuICAgIG51bWJlciA9ICdudW1iZXInLFxuICAgIGRhdGUgPSAnZGF0ZScsXG4gICAgbWVtYmVyID0gJ21lbWJlcicsXG4gICAgcHJvZ3Jlc3MgPSAncHJvZ3Jlc3MnLFxuICAgIHJhdGUgPSAncmF0ZScsXG4gICAgbGluayA9ICdsaW5rJyxcbiAgICBhdHRhY2htZW50ID0gJ2F0dGFjaG1lbnQnLFxuICAgIGNyZWF0ZWRBdCA9ICdjcmVhdGVkX2F0JyxcbiAgICB1cGRhdGVkQXQgPSAndXBkYXRlZF9hdCcsXG4gICAgY3JlYXRlZEJ5ID0gJ2NyZWF0ZWRfYnknLFxuICAgIHVwZGF0ZWRCeSA9ICd1cGRhdGVkX2J5J1xufVxuXG5leHBvcnQgdHlwZSBTeXN0ZW1GaWVsZFR5cGVzID1cbiAgICB8IEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0XG4gICAgfCBBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeVxuICAgIHwgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQXRcbiAgICB8IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEJ5O1xuXG5leHBvcnQgZW51bSBBSVRhYmxlU3RhdFR5cGUge1xuICAgIE5vbmUgPSAwLFxuICAgIENvdW50QWxsID0gMSxcbiAgICBFbXB0eSA9IDIsXG4gICAgRmlsbGVkID0gMyxcbiAgICBVbmlxdWUgPSA0LFxuICAgIFBlcmNlbnRFbXB0eSA9IDUsXG4gICAgUGVyY2VudEZpbGxlZCA9IDYsXG4gICAgUGVyY2VudFVuaXF1ZSA9IDcsXG4gICAgU3VtID0gOCxcbiAgICBBdmVyYWdlID0gOSxcbiAgICBNYXggPSAxMCxcbiAgICBNaW4gPSAxMSxcbiAgICBEYXRlUmFuZ2VPZkRheXMgPSAxMixcbiAgICBEYXRlUmFuZ2VPZk1vbnRocyA9IDEzLFxuICAgIENoZWNrZWQgPSAxNCxcbiAgICBVbkNoZWNrZWQgPSAxNSxcbiAgICBQZXJjZW50Q2hlY2tlZCA9IDE2LFxuICAgIFBlcmNlbnRVbkNoZWNrZWQgPSAxN1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVGaWVsZE9wdGlvbiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHR5cGU6IEFJVGFibGVGaWVsZFR5cGU7XG4gICAgaWNvbjogc3RyaW5nO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgc2V0dGluZ3M/OiBBSVRhYmxlRmllbGRTZXR0aW5ncztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRmllbGQge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0eXBlOiBBSVRhYmxlRmllbGRUeXBlO1xuICAgIGljb24/OiBzdHJpbmc7XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgICBmcm96ZW4/OiBib29sZWFuO1xuICAgIHN0YXRfdHlwZT86IEFJVGFibGVTdGF0VHlwZTtcbiAgICBzZXR0aW5ncz86IEFJVGFibGVGaWVsZFNldHRpbmdzO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlRmllbGRTZXR0aW5ncyA9IFRleHRTZXR0aW5ncyB8IFJpY2hUZXh0U2V0dGluZ3MgfCBTZWxlY3RTZXR0aW5ncyB8IE1lbWJlclNldHRpbmdzIHwgQXR0YWNobWVudFNldHRpbmdzO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRTZXR0aW5ncyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0U2V0dGluZ3Mge31cblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RTZXR0aW5ncyBleHRlbmRzIElzTXVsdGlwbGUge1xuICAgIG9wdGlvbl9zdHlsZT86IEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZTtcbiAgICBvcHRpb25zOiBBSVRhYmxlU2VsZWN0T3B0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXR0YWNobWVudFNldHRpbmdzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVtYmVyU2V0dGluZ3MgZXh0ZW5kcyBJc011bHRpcGxlIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXNNdWx0aXBsZSB7XG4gICAgaXNfbXVsdGlwbGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTZWxlY3RPcHRpb24ge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHRleHQ6IHN0cmluZztcbiAgICBpY29uPzogc3RyaW5nO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJnX2NvbG9yPzogc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlU2VsZWN0T3B0aW9uU3R5bGUge1xuICAgIHRleHQgPSAxLFxuICAgIHRhZyA9IDIsXG4gICAgZG90ID0gMyxcbiAgICBwaWVjZSA9IDRcbn1cblxuZXhwb3J0IHR5cGUgVGV4dEZpZWxkVmFsdWUgPSBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIFJpY2h0ZXh0RmllbGRWYWx1ZSA9IGFueVtdO1xuXG5leHBvcnQgdHlwZSBMaW5rRmllbGRWYWx1ZSA9IHsgdXJsOiBzdHJpbmc7IHRleHQ6IHN0cmluZyB9O1xuXG5leHBvcnQgdHlwZSBTZWxlY3RGaWVsZFZhbHVlID0gSWRbXTtcblxuZXhwb3J0IHR5cGUgTnVtYmVyRmllbGRWYWx1ZSA9IG51bWJlcjtcblxuZXhwb3J0IHR5cGUgRGF0ZUZpZWxkVmFsdWUgPSB7IHRpbWVzdGFtcDogbnVtYmVyIH07XG5cbmV4cG9ydCB0eXBlIE1lbWJlckZpZWxkVmFsdWUgPSBJZFtdO1xuXG5leHBvcnQgdHlwZSBBdHRhY2htZW50RmllbGRWYWx1ZSA9IHN0cmluZ1tdO1xuXG5leHBvcnQgdHlwZSBQcm9ncmVzc0ZpZWxkVmFsdWUgPSBudW1iZXI7IC8vIFswLDFdXG5cbmV4cG9ydCB0eXBlIFJhdGVGaWVsZFZhbHVlID0gMSB8IDIgfCAzIHwgNCB8IDU7XG5cbmV4cG9ydCB0eXBlIEZpZWxkVmFsdWUgPVxuICAgIHwgVGV4dEZpZWxkVmFsdWVcbiAgICB8IFJpY2h0ZXh0RmllbGRWYWx1ZVxuICAgIHwgTGlua0ZpZWxkVmFsdWVcbiAgICB8IFNlbGVjdEZpZWxkVmFsdWVcbiAgICB8IE51bWJlckZpZWxkVmFsdWVcbiAgICB8IERhdGVGaWVsZFZhbHVlXG4gICAgfCBNZW1iZXJGaWVsZFZhbHVlXG4gICAgfCBQcm9ncmVzc0ZpZWxkVmFsdWVcbiAgICB8IFJhdGVGaWVsZFZhbHVlXG4gICAgfCBBdHRhY2htZW50RmllbGRWYWx1ZVxuICAgIHwgYW55O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNrYWJsZUVudGl0eSB7XG4gICAgY3JlYXRlZF9hdDogTnVtYmVyRmllbGRWYWx1ZTtcbiAgICBjcmVhdGVkX2J5OiBzdHJpbmc7XG4gICAgdXBkYXRlZF9hdDogTnVtYmVyRmllbGRWYWx1ZTtcbiAgICB1cGRhdGVkX2J5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlVHJhY2thYmxlRW50aXR5IHtcbiAgICB1cGRhdGVkX2F0OiBOdW1iZXJGaWVsZFZhbHVlO1xuICAgIHVwZGF0ZWRfYnk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlUmVjb3JkIHtcbiAgICBfaWQ6IHN0cmluZztcbiAgICBzaG9ydF9pZDogc3RyaW5nO1xuICAgIGNyZWF0ZWRfYXQ6IE51bWJlckZpZWxkVmFsdWU7XG4gICAgY3JlYXRlZF9ieTogc3RyaW5nO1xuICAgIHVwZGF0ZWRfYXQ6IE51bWJlckZpZWxkVmFsdWU7XG4gICAgdXBkYXRlZF9ieTogc3RyaW5nO1xuICAgIHZhbHVlczogUmVjb3JkPHN0cmluZywgRmllbGRWYWx1ZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlY29yZFVwZGF0ZWRJbmZvIHtcbiAgICB1cGRhdGVkX2F0OiBudW1iZXI7XG4gICAgdXBkYXRlZF9ieTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlUmVjb3JkcyA9IEFJVGFibGVSZWNvcmRbXTtcblxuZXhwb3J0IHR5cGUgQUlUYWJsZUZpZWxkcyA9IEFJVGFibGVGaWVsZFtdO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVWYWx1ZSB7XG4gICAgcmVjb3JkczogQUlUYWJsZVJlY29yZHM7XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRzO1xuICAgIGZpZWxkc1NpemVNYXA6IEFJVGFibGVGaWVsZHNTaXplTWFwO1xufVxuXG5leHBvcnQgZW51bSBEaXJlY3Rpb24ge1xuICAgIGJlZm9yZSA9ICdiZWZvcmUnLFxuICAgIGFmdGVyID0gJ2FmdGVyJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZFJlY29yZE9wdGlvbnMge1xuICAgIG9yaWdpbklkOiBzdHJpbmc7XG4gICAgZGlyZWN0aW9uPzogRGlyZWN0aW9uO1xuICAgIGlzRHVwbGljYXRlPzogYm9vbGVhbjtcbiAgICBjb3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRGaWVsZE9wdGlvbnMge1xuICAgIG9yaWdpbklkOiBzdHJpbmc7XG4gICAgZGVmYXVsdFZhbHVlOiBQYXJ0aWFsPEFJVGFibGVGaWVsZD47XG4gICAgZGlyZWN0aW9uPzogRGlyZWN0aW9uO1xuICAgIGlzRHVwbGljYXRlPzogYm9vbGVhbjtcbiAgICBpc0NvcHk/OiBib29sZWFuO1xuICAgIGNvdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zPFQgPSB1bmtub3duPiB7XG4gICAgdmFsdWU6IFQ7XG4gICAgcGF0aDogQUlSZWNvcmRGaWVsZElkUGF0aDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRGaWVsZE9wdGlvbnM8VCA9IHVua25vd24+IHtcbiAgICBmaWVsZDogQUlUYWJsZUZpZWxkO1xuICAgIHBhdGg6IElkUGF0aDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb3ZlRmllbGRPcHRpb25zIHtcbiAgICBwYXRoOiBOdW1iZXJQYXRoO1xuICAgIG5ld1BhdGg6IE51bWJlclBhdGg7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0RmllbGRXaWR0aE9wdGlvbnMge1xuICAgIHBhdGg6IElkUGF0aDtcbiAgICB3aWR0aDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vdmVSZWNvcmRPcHRpb25zIHtcbiAgICByZWNvcmRJZHM6IElkUGF0aFtdO1xuICAgIG5ld1BhdGg6IE51bWJlclBhdGg7XG59XG5cbmV4cG9ydCB0eXBlIE51bWJlclBhdGggPSBbbnVtYmVyXTtcblxuZXhwb3J0IHR5cGUgSWRQYXRoID0gW3N0cmluZ107XG5cbmV4cG9ydCB0eXBlIEFJUmVjb3JkRmllbGRJZFBhdGggPSBbc3RyaW5nLCBzdHJpbmddO1xuXG5leHBvcnQgdHlwZSBQYXRoID0gTnVtYmVyUGF0aCB8IElkUGF0aCB8IEFJUmVjb3JkRmllbGRJZFBhdGg7XG5cbmV4cG9ydCBlbnVtIERyYWdUeXBlIHtcbiAgICByZWNvcmQgPSAncmVjb3JkJyxcbiAgICBmaWVsZCA9ICdmaWVsZCcsXG4gICAgY29sdW1uV2lkdGggPSAnY29sdW1uV2lkdGgnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlRHJhZ1N0YXRlIHtcbiAgICB0eXBlOiBEcmFnVHlwZTtcbiAgICBzb3VyY2VJZHM6IFNldDxzdHJpbmc+O1xuICAgIHNjcm9sbD86IFZlY3RvcjJkO1xuICAgIGNvb3JkaW5hdGU/OiBDb29yZGluYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERyYWdFbmREYXRhIHtcbiAgICB0eXBlOiBEcmFnVHlwZTtcbiAgICB0YXJnZXRJbmRleD86IG51bWJlcjtcbiAgICBmaWVsZElkcz86IFNldDxzdHJpbmc+O1xuICAgIGZpZWxkc0luZGV4PzogbnVtYmVyW107XG4gICAgcmVjb3JkSWRzPzogU2V0PHN0cmluZz47XG4gICAgcmVjb3Jkc0luZGV4PzogbnVtYmVyW107XG4gICAgd2lkdGg/OiBudW1iZXI7XG59XG4iXX0=
@@ -14,7 +14,8 @@ export class AITableGridBase {
14
14
  this.aiFieldsSizeMap = model.required();
15
15
  this.aiContextMenuItems = input();
16
16
  this.aiFieldConfig = input();
17
- this.aiReadonly = input();
17
+ this.aiReadonly = input(false);
18
+ this.aiRowDragDisabled = input(false);
18
19
  this.aiPlugins = input();
19
20
  this.aiReferences = input.required();
20
21
  this.aiBuildRenderDataFn = input();
@@ -32,6 +33,7 @@ export class AITableGridBase {
32
33
  this.aiUpdateFieldValue = output();
33
34
  this.aiSetField = output();
34
35
  this.aiSetFieldWidth = output();
36
+ this.aiMoveRecords = output();
35
37
  this.aiClick = output();
36
38
  this.aiDbClick = output();
37
39
  this.fieldMenus = computed(() => {
@@ -80,7 +82,7 @@ export class AITableGridBase {
80
82
  AI_TABLE_GRID_FIELD_SERVICE_MAP.set(this.aiTable, this.aiTableGridFieldService);
81
83
  }
82
84
  addRecord() {
83
- const records = this.aiRecords();
85
+ const records = this.aiTable.gridData().records;
84
86
  const recordCount = records.length;
85
87
  this.aiAddRecord.emit({
86
88
  originId: recordCount > 0 ? records[records.length - 1]._id : ''
@@ -156,7 +158,7 @@ export class AITableGridBase {
156
158
  }
157
159
  }
158
160
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableGridBase, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AITableGridBase, isStandalone: true, selector: "ai-table-grid-base", inputs: { aiRecords: { classPropertyName: "aiRecords", publicName: "aiRecords", isSignal: true, isRequired: true, transformFunction: null }, aiFields: { classPropertyName: "aiFields", publicName: "aiFields", isSignal: true, isRequired: true, transformFunction: null }, aiFieldsSizeMap: { classPropertyName: "aiFieldsSizeMap", publicName: "aiFieldsSizeMap", isSignal: true, isRequired: true, transformFunction: null }, aiContextMenuItems: { classPropertyName: "aiContextMenuItems", publicName: "aiContextMenuItems", isSignal: true, isRequired: false, transformFunction: null }, aiFieldConfig: { classPropertyName: "aiFieldConfig", publicName: "aiFieldConfig", isSignal: true, isRequired: false, transformFunction: null }, aiReadonly: { classPropertyName: "aiReadonly", publicName: "aiReadonly", isSignal: true, isRequired: false, transformFunction: null }, aiPlugins: { classPropertyName: "aiPlugins", publicName: "aiPlugins", isSignal: true, isRequired: false, transformFunction: null }, aiReferences: { classPropertyName: "aiReferences", publicName: "aiReferences", isSignal: true, isRequired: true, transformFunction: null }, aiBuildRenderDataFn: { classPropertyName: "aiBuildRenderDataFn", publicName: "aiBuildRenderDataFn", isSignal: true, isRequired: false, transformFunction: null }, aiGetI18nTextByKey: { classPropertyName: "aiGetI18nTextByKey", publicName: "aiGetI18nTextByKey", isSignal: true, isRequired: false, transformFunction: null }, aiKeywords: { classPropertyName: "aiKeywords", publicName: "aiKeywords", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { aiRecords: "aiRecordsChange", aiFields: "aiFieldsChange", aiFieldsSizeMap: "aiFieldsSizeMapChange", aiTableInitialized: "aiTableInitialized", aiAddRecord: "aiAddRecord", aiAddField: "aiAddField", aiMoveField: "aiMoveField", aiUpdateFieldValue: "aiUpdateFieldValue", aiSetField: "aiSetField", aiSetFieldWidth: "aiSetFieldWidth", aiClick: "aiClick", aiDbClick: "aiDbClick" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
161
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AITableGridBase, isStandalone: true, selector: "ai-table-grid-base", inputs: { aiRecords: { classPropertyName: "aiRecords", publicName: "aiRecords", isSignal: true, isRequired: true, transformFunction: null }, aiFields: { classPropertyName: "aiFields", publicName: "aiFields", isSignal: true, isRequired: true, transformFunction: null }, aiFieldsSizeMap: { classPropertyName: "aiFieldsSizeMap", publicName: "aiFieldsSizeMap", isSignal: true, isRequired: true, transformFunction: null }, aiContextMenuItems: { classPropertyName: "aiContextMenuItems", publicName: "aiContextMenuItems", isSignal: true, isRequired: false, transformFunction: null }, aiFieldConfig: { classPropertyName: "aiFieldConfig", publicName: "aiFieldConfig", isSignal: true, isRequired: false, transformFunction: null }, aiReadonly: { classPropertyName: "aiReadonly", publicName: "aiReadonly", isSignal: true, isRequired: false, transformFunction: null }, aiRowDragDisabled: { classPropertyName: "aiRowDragDisabled", publicName: "aiRowDragDisabled", isSignal: true, isRequired: false, transformFunction: null }, aiPlugins: { classPropertyName: "aiPlugins", publicName: "aiPlugins", isSignal: true, isRequired: false, transformFunction: null }, aiReferences: { classPropertyName: "aiReferences", publicName: "aiReferences", isSignal: true, isRequired: true, transformFunction: null }, aiBuildRenderDataFn: { classPropertyName: "aiBuildRenderDataFn", publicName: "aiBuildRenderDataFn", isSignal: true, isRequired: false, transformFunction: null }, aiGetI18nTextByKey: { classPropertyName: "aiGetI18nTextByKey", publicName: "aiGetI18nTextByKey", isSignal: true, isRequired: false, transformFunction: null }, aiKeywords: { classPropertyName: "aiKeywords", publicName: "aiKeywords", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { aiRecords: "aiRecordsChange", aiFields: "aiFieldsChange", aiFieldsSizeMap: "aiFieldsSizeMapChange", aiTableInitialized: "aiTableInitialized", aiAddRecord: "aiAddRecord", aiAddField: "aiAddField", aiMoveField: "aiMoveField", aiUpdateFieldValue: "aiUpdateFieldValue", aiSetField: "aiSetField", aiSetFieldWidth: "aiSetFieldWidth", aiMoveRecords: "aiMoveRecords", aiClick: "aiClick", aiDbClick: "aiDbClick" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
160
162
  }
161
163
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableGridBase, decorators: [{
162
164
  type: Component,
@@ -167,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
167
169
  changeDetection: ChangeDetectionStrategy.OnPush
168
170
  }]
169
171
  }] });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2dyaWQtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2RSxPQUFPLEVBT0gsZ0JBQWdCLEVBRWhCLHdCQUF3QixFQUV4QixhQUFhLEVBQ2Isa0JBQWtCLEVBSXJCLE1BQU0sUUFBUSxDQUFDO0FBQ2hCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQVkzRSxNQUFNLE9BQU8sZUFBZTtJQU41QjtRQU9JLGNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFrQixDQUFDO1FBRTdDLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFpQixDQUFDO1FBRTNDLG9CQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBd0IsQ0FBQztRQUV6RCx1QkFBa0IsR0FBRyxLQUFLLEVBQWtELENBQUM7UUFFN0Usa0JBQWEsR0FBRyxLQUFLLEVBQWlCLENBQUM7UUFFdkMsZUFBVSxHQUFHLEtBQUssRUFBVyxDQUFD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QyxNQUFzQixDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ3pGLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM5QixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7K0dBMUxRLGVBQWU7bUdBQWYsZUFBZSxpZ0VBSmQsRUFBRTs7NEZBSUgsZUFBZTtrQkFOM0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgY29tcHV0ZWQsXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBpbnB1dCxcbiAgICBtb2RlbCxcbiAgICBOZ1pvbmUsXG4gICAgT25Jbml0LFxuICAgIG91dHB1dCxcbiAgICBTaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IG1lcmdlV2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgREJMX0NMSUNLX0VESVRfVFlQRSwgTU9VU0VPVkVSX0VESVRfVFlQRSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gICAgQWRkRmllbGRPcHRpb25zLFxuICAgIEFkZFJlY29yZE9wdGlvbnMsXG4gICAgQUlQbHVnaW4sXG4gICAgQUlUYWJsZSxcbiAgICBBSVRhYmxlRmllbGQsXG4gICAgQUlUYWJsZUZpZWxkcyxcbiAgICBBSVRhYmxlRmllbGRUeXBlLFxuICAgIEFJVGFibGVSZWNvcmRzLFxuICAgIEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZSxcbiAgICBBSVRhYmxlVmFsdWUsXG4gICAgY3JlYXRlQUlUYWJsZSxcbiAgICBjcmVhdGVEZWZhdWx0RmllbGQsXG4gICAgTW92ZUZpZWxkT3B0aW9ucyxcbiAgICBTZXRGaWVsZFdpZHRoT3B0aW9ucyxcbiAgICBVcGRhdGVGaWVsZFZhbHVlT3B0aW9uc1xufSBmcm9tICcuL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUdyaWRFdmVudFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQUlfVEFCTEVfR1JJRF9GSUVMRF9TRVJWSUNFX01BUCwgQUlUYWJsZUdyaWRGaWVsZFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2ZpZWxkLnNlcnZpY2UnO1xuaW1wb3J0IHsgQUlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9zZWxlY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBBSUZpZWxkQ29uZmlnLCBBSVRhYmxlRmllbGRNZW51SXRlbSwgQUlUYWJsZUNvbnRleHRNZW51SXRlbSwgQUlUYWJsZVJlZmVyZW5jZXMsIEFJVGFibGVGaWVsZHNTaXplTWFwIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRTZXR0aW5nIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEtvRXZlbnRPYmplY3RPdXRwdXQgfSBmcm9tICcuL2FuZ3VsYXIta29udmEnO1xuaW1wb3J0IHsgQUlUYWJsZUdyaWRJMThuS2V5IH0gZnJvbSAnLi91dGlscy9pMThuJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhaS10YWJsZS1ncmlkLWJhc2UnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEFJVGFibGVHcmlkQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgYWlSZWNvcmRzID0gbW9kZWwucmVxdWlyZWQ8QUlUYWJsZVJlY29yZHM+KCk7XG5cbiAgICBhaUZpZWxkcyA9IG1vZGVsLnJlcXVpcmVkPEFJVGFibGVGaWVsZHM+KCk7XG5cbiAgICBhaUZpZWxkc1NpemVNYXAgPSBtb2RlbC5yZXF1aXJlZDxBSVRhYmxlRmllbGRzU2l6ZU1hcD4oKTtcblxuICAgIGFpQ29udGV4dE1lbnVJdGVtcyA9IGlucHV0PChhaVRhYmxlOiBBSVRhYmxlKSA9PiBBSVRhYmxlQ29udGV4dE1lbnVJdGVtW10+KCk7XG5cbiAgICBhaUZpZWxkQ29uZmlnID0gaW5wdXQ8QUlGaWVsZENvbmZpZz4oKTtcblxuICAgIGFpUmVhZG9ubHkgPSBpbnB1dDxib29sZWFuPigpO1xuXG4gICAgYWlQbHVnaW5zID0gaW5wdXQ8QUlQbHVnaW5bXT4oKTtcblxuICAgIGFpUmVmZXJlbmNlcyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVSZWZlcmVuY2VzPigpO1xuXG4gICAgYWlCdWlsZFJlbmRlckRhdGFGbiA9IGlucHV0PChhaVRhYmxlOiBBSVRhYmxlKSA9PiBBSVRhYmxlVmFsdWU+KCk7XG5cbiAgICBhaUdldEkxOG5UZXh0QnlLZXkgPSBpbnB1dDwoa2V5OiBBSVRhYmxlR3JpZEkxOG5LZXkgfCBzdHJpbmcpID0+IHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcblxuICAgIGFpS2V5d29yZHMgPSBpbnB1dDxzdHJpbmc+KCk7XG5cbiAgICBBSVRhYmxlRmllbGRUeXBlID0gQUlUYWJsZUZpZWxkVHlwZTtcblxuICAgIEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZSA9IEFJVGFibGVTZWxlY3RPcHRpb25TdHlsZTtcblxuICAgIGFpVGFibGUhOiBBSVRhYmxlO1xuXG4gICAgaXNTZWxlY3RlZEFsbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWlUYWJsZS5zZWxlY3Rpb24oKS5zZWxlY3RlZFJlY29yZHMuc2l6ZSA9PT0gdGhpcy5haVJlY29yZHMoKS5sZW5ndGg7XG4gICAgfSk7XG5cbiAgICBhaVRhYmxlSW5pdGlhbGl6ZWQgPSBvdXRwdXQ8QUlUYWJsZT4oKTtcblxuICAgIGFpQWRkUmVjb3JkID0gb3V0cHV0PEFkZFJlY29yZE9wdGlvbnM+KCk7XG5cbiAgICBhaUFkZEZpZWxkID0gb3V0cHV0PEFkZEZpZWxkT3B0aW9ucz4oKTtcblxuICAgIGFpTW92ZUZpZWxkID0gb3V0cHV0PE1vdmVGaWVsZE9wdGlvbnM+KCk7XG5cbiAgICBhaVVwZGF0ZUZpZWxkVmFsdWUgPSBvdXRwdXQ8VXBkYXRlRmllbGRWYWx1ZU9wdGlvbnM+KCk7XG5cbiAgICBhaVNldEZpZWxkID0gb3V0cHV0PEFJVGFibGVGaWVsZD4oKTtcblxuICAgIGFpU2V0RmllbGRXaWR0aCA9IG91dHB1dDxTZXRGaWVsZFdpZHRoT3B0aW9ucz4oKTtcblxuICAgIGFpQ2xpY2sgPSBvdXRwdXQ8S29FdmVudE9iamVjdE91dHB1dDxNb3VzZUV2ZW50Pj4oKTtcblxuICAgIGFpRGJDbGljayA9IG91dHB1dDxLb0V2ZW50T2JqZWN0T3V0cHV0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAgZmllbGRNZW51czogU2lnbmFsPEFJVGFibGVGaWVsZE1lbnVJdGVtW10+ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBmaWVsZE1lbnVzRm4gPSB0aGlzLmFpRmllbGRDb25maWcoKT8uZmllbGRNZW51cztcbiAgICAgICAgaWYgKGZpZWxkTWVudXNGbiAmJiB0aGlzLmFpVGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWVsZE1lbnVzRm4odGhpcy5haVRhYmxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW107XG4gICAgfSk7XG5cbiAgICBtb3VzZW92ZXJSZWYhOiBUaHlQb3BvdmVyUmVmPGFueT47XG5cbiAgICBncmlkRGF0YSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuYWlCdWlsZFJlbmRlckRhdGFGbiAmJiB0aGlzLmFpQnVpbGRSZW5kZXJEYXRhRm4oKSAmJiB0aGlzLmFpVGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFpQnVpbGRSZW5kZXJEYXRhRm4oKSEodGhpcy5haVRhYmxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcmVjb3JkczogdGhpcy5haVJlY29yZHMoKSxcbiAgICAgICAgICAgIGZpZWxkczogdGhpcy5haUZpZWxkcygpLFxuICAgICAgICAgICAgZmllbGRzU2l6ZU1hcDogdGhpcy5haUZpZWxkc1NpemVNYXAoKVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByb3RlY3RlZCBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAgIHByb3RlY3RlZCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByb3RlY3RlZCBhaVRhYmxlR3JpZEZpZWxkU2VydmljZSA9IGluamVjdChBSVRhYmxlR3JpZEZpZWxkU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIGFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFJVGFibGVHcmlkRXZlbnRTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlID0gaW5qZWN0KEFJVGFibGVHcmlkU2VsZWN0aW9uU2VydmljZSk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0QUlUYWJsZSgpO1xuICAgICAgICB0aGlzLmluaXRTZXJ2aWNlKCk7XG4gICAgfVxuXG4gICAgaW5pdEFJVGFibGUoKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZSA9IGNyZWF0ZUFJVGFibGUodGhpcy5haVJlY29yZHMsIHRoaXMuYWlGaWVsZHMsIHRoaXMuZ3JpZERhdGEpO1xuICAgICAgICBpZiAodGhpcy5haUdldEkxOG5UZXh0QnlLZXkoKSkge1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlLmdldEkxOG5UZXh0QnlLZXkgPSB0aGlzLmFpR2V0STE4blRleHRCeUtleSgpIGFzIChrZXk6IEFJVGFibGVHcmlkSTE4bktleSB8IHN0cmluZykgPT4gc3RyaW5nO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWlQbHVnaW5zKCk/LmZvckVhY2goKHBsdWdpbikgPT4ge1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlID0gcGx1Z2luKHRoaXMuYWlUYWJsZSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFpVGFibGVJbml0aWFsaXplZC5lbWl0KHRoaXMuYWlUYWJsZSk7XG4gICAgfVxuXG4gICAgaW5pdFNlcnZpY2UoKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRFdmVudFNlcnZpY2UuaW5pdGlhbGl6ZSh0aGlzLmFpVGFibGUsIHRoaXMuYWlGaWVsZENvbmZpZygpPy5maWVsZFJlbmRlcmVycyk7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlLmluaXRpYWxpemUodGhpcy5haVRhYmxlKTtcbiAgICAgICAgdGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5yZWdpc3RlckV2ZW50cyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRGaWVsZFNlcnZpY2UuaW5pdEFJRmllbGRDb25maWcodGhpcy5haUZpZWxkQ29uZmlnKCkpO1xuICAgICAgICBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQLnNldCh0aGlzLmFpVGFibGUsIHRoaXMuYWlUYWJsZUdyaWRGaWVsZFNlcnZpY2UpO1xuICAgIH1cblxuICAgIGFkZFJlY29yZCgpIHtcbiAgICAgICAgY29uc3QgcmVjb3JkcyA9IHRoaXMuYWlSZWNvcmRzKCk7XG4gICAgICAgIGNvbnN0IHJlY29yZENvdW50ID0gcmVjb3Jkcy5sZW5ndGg7XG4gICAgICAgIHRoaXMuYWlBZGRSZWNvcmQuZW1pdCh7XG4gICAgICAgICAgICBvcmlnaW5JZDogcmVjb3JkQ291bnQgPiAwID8gcmVjb3Jkc1tyZWNvcmRzLmxlbmd0aCAtIDFdLl9pZCA6ICcnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNlbGVjdFJlY29yZChyZWNvcmRJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlLnNlbGVjdFJlY29yZChyZWNvcmRJZCk7XG4gICAgfVxuXG4gICAgdG9nZ2xlU2VsZWN0QWxsKGNoZWNrZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5haVRhYmxlR3JpZFNlbGVjdGlvblNlcnZpY2UudG9nZ2xlU2VsZWN0QWxsKGNoZWNrZWQpO1xuICAgIH1cblxuICAgIGFkZEZpZWxkKGdyaWRDb2x1bW5CbGFuaz86IEhUTUxFbGVtZW50LCBwb3NpdGlvbj86IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSkge1xuICAgICAgICBjb25zdCBmaWVsZCA9IGNyZWF0ZURlZmF1bHRGaWVsZCh0aGlzLmFpVGFibGUsIEFJVGFibGVGaWVsZFR5cGUudGV4dCk7XG4gICAgICAgIGNvbnN0IHBvcG92ZXJSZWYgPSB0aGlzLmFpVGFibGVHcmlkRmllbGRTZXJ2aWNlLmVkaXRGaWVsZFByb3BlcnR5KHRoaXMuYWlUYWJsZSwge1xuICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICBpc1VwZGF0ZTogZmFsc2UsXG4gICAgICAgICAgICBvcmlnaW46IGdyaWRDb2x1bW5CbGFuayEsXG4gICAgICAgICAgICBwb3NpdGlvblxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHBvcG92ZXJSZWYgJiYgIXRoaXMuYWlGaWVsZENvbmZpZygpPy5maWVsZFNldHRpbmdDb21wb25lbnQpIHtcbiAgICAgICAgICAgIChwb3BvdmVyUmVmLmNvbXBvbmVudEluc3RhbmNlIGFzIEFJVGFibGVGaWVsZFNldHRpbmcpLmFkZEZpZWxkLnN1YnNjcmliZSgoZGVmYXVsdFZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5ncmlkRGF0YSgpLmZpZWxkcztcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZENvdW50ID0gZmllbGRzLmxlbmd0aDtcbiAgICAgICAgICAgICAgICB0aGlzLmFpQWRkRmllbGQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpbklkOiBmaWVsZENvdW50ID4gMCA/IGZpZWxkc1tmaWVsZHMubGVuZ3RoIC0gMV0uX2lkIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3Vic2NyaWJlRXZlbnRzKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLmRibENsaWNrRXZlbnQkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRibENsaWNrKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5tb3VzZWRvd25FdmVudCRcbiAgICAgICAgICAgICAgICAucGlwZShtZXJnZVdpdGgodGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5nbG9iYWxNb3VzZWRvd25FdmVudCQpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkU2VsZWN0aW9uU2VydmljZS51cGRhdGVTZWxlY3QoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLm1vdXNlb3ZlckV2ZW50JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb3VzZW92ZXJIYW5kbGUoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLmdsb2JhbE1vdXNlb3ZlckV2ZW50JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZUhvdmVyQ2VsbEVkaXRvcihldmVudCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkYmxDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCBjZWxsRG9tID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgnLmdyaWQtY2VsbCcpIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCB0eXBlID0gY2VsbERvbSAmJiAoY2VsbERvbS5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSEgYXMgQUlUYWJsZUZpZWxkVHlwZSk7XG4gICAgICAgIGlmICh0eXBlICYmIERCTF9DTElDS19FRElUX1RZUEUuaW5jbHVkZXModHlwZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYWlUYWJsZUdyaWRFdmVudFNlcnZpY2Uub3BlbkVkaXQoY2VsbERvbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdXNlb3ZlckhhbmRsZShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5tb3VzZW92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMubW91c2VvdmVyUmVmPy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNlbGxEb20gPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcuZ3JpZC1jZWxsJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBjZWxsRG9tICYmIChjZWxsRG9tLmdldEF0dHJpYnV0ZSgndHlwZScpISBhcyBBSVRhYmxlRmllbGRUeXBlKTtcbiAgICAgICAgaWYgKHR5cGUgJiYgTU9VU0VPVkVSX0VESVRfVFlQRS5pbmNsdWRlcyh0eXBlKSkge1xuICAgICAgICAgICAgdGhpcy5tb3VzZW92ZXJSZWYgPSB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLm9wZW5FZGl0KGNlbGxEb20pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZUhvdmVyQ2VsbEVkaXRvcihlOiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLm1vdXNlb3ZlclJlZikge1xuICAgICAgICAgICAgY29uc3QgaGFzR3JpZCA9IGUudGFyZ2V0ICYmIChlLnRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgnLmFpLXRhYmxlLWdyaWQnKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc0NlbGxFZGl0b3IgPSBlLnRhcmdldCAmJiAoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy5ncmlkLWNlbGwtZWRpdG9yJyk7XG4gICAgICAgICAgICBpZiAoIWhhc0dyaWQgJiYgIWhhc0NlbGxFZGl0b3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdXNlb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL2dyaWQtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2RSxPQUFPLEVBT0gsZ0JBQWdCLEVBRWhCLHdCQUF3QixFQUV4QixhQUFhLEVBQ2Isa0JBQWtCLEVBS3JCLE1BQU0sUUFBUSxDQUFDO0FBQ2hCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQVkzRSxNQUFNLE9BQU8sZUFBZTtJQU41QjtRQU9JLGNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFrQixDQUFDO1FBRTdDLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFpQixDQUFDO1FBRTNDLG9CQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBd0IsQ0FBQztRQUV6RCx1QkFBa0IsR0FBRyxLQUFLLEVBQWtELENBQUM7UUFFN0Usa0JBQWEsR0FBRyxLQUFLLEVBQWlCLENBQUM7UUFFdkMsZUFBVSxHQUFHLEtBQUssQ0FBVSxLQUFL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QUFNLElBQUssQ0FBQyxDQUFDLE1BQXNCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDaEYsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSyxDQUFDLENBQUMsTUFBc0IsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUN6RixJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDOUIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOytHQTlMUSxlQUFlO21HQUFmLGVBQWUsNnJFQUpkLEVBQUU7OzRGQUlILGVBQWU7a0JBTjNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBpbmplY3QsXG4gICAgaW5wdXQsXG4gICAgbW9kZWwsXG4gICAgTmdab25lLFxuICAgIE9uSW5pdCxcbiAgICBvdXRwdXQsXG4gICAgU2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBtZXJnZVdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERCTF9DTElDS19FRElUX1RZUEUsIE1PVVNFT1ZFUl9FRElUX1RZUEUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICAgIEFkZEZpZWxkT3B0aW9ucyxcbiAgICBBZGRSZWNvcmRPcHRpb25zLFxuICAgIEFJUGx1Z2luLFxuICAgIEFJVGFibGUsXG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVGaWVsZHMsXG4gICAgQUlUYWJsZUZpZWxkVHlwZSxcbiAgICBBSVRhYmxlUmVjb3JkcyxcbiAgICBBSVRhYmxlU2VsZWN0T3B0aW9uU3R5bGUsXG4gICAgQUlUYWJsZVZhbHVlLFxuICAgIGNyZWF0ZUFJVGFibGUsXG4gICAgY3JlYXRlRGVmYXVsdEZpZWxkLFxuICAgIE1vdmVGaWVsZE9wdGlvbnMsXG4gICAgTW92ZVJlY29yZE9wdGlvbnMsXG4gICAgU2V0RmllbGRXaWR0aE9wdGlvbnMsXG4gICAgVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnNcbn0gZnJvbSAnLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVHcmlkRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEFJX1RBQkxFX0dSSURfRklFTERfU0VSVklDRV9NQVAsIEFJVGFibGVHcmlkRmllbGRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9maWVsZC5zZXJ2aWNlJztcbmltcG9ydCB7IEFJVGFibGVHcmlkU2VsZWN0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvc2VsZWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQUlGaWVsZENvbmZpZywgQUlUYWJsZUZpZWxkTWVudUl0ZW0sIEFJVGFibGVDb250ZXh0TWVudUl0ZW0sIEFJVGFibGVSZWZlcmVuY2VzLCBBSVRhYmxlRmllbGRzU2l6ZU1hcCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkU2V0dGluZyB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBLb0V2ZW50T2JqZWN0T3V0cHV0IH0gZnJvbSAnLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGVHcmlkSTE4bktleSB9IGZyb20gJy4vdXRpbHMvaTE4bic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWktdGFibGUtZ3JpZC1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlR3JpZEJhc2UgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGFpUmVjb3JkcyA9IG1vZGVsLnJlcXVpcmVkPEFJVGFibGVSZWNvcmRzPigpO1xuXG4gICAgYWlGaWVsZHMgPSBtb2RlbC5yZXF1aXJlZDxBSVRhYmxlRmllbGRzPigpO1xuXG4gICAgYWlGaWVsZHNTaXplTWFwID0gbW9kZWwucmVxdWlyZWQ8QUlUYWJsZUZpZWxkc1NpemVNYXA+KCk7XG5cbiAgICBhaUNvbnRleHRNZW51SXRlbXMgPSBpbnB1dDwoYWlUYWJsZTogQUlUYWJsZSkgPT4gQUlUYWJsZUNvbnRleHRNZW51SXRlbVtdPigpO1xuXG4gICAgYWlGaWVsZENvbmZpZyA9IGlucHV0PEFJRmllbGRDb25maWc+KCk7XG5cbiAgICBhaVJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgYWlSb3dEcmFnRGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBhaVBsdWdpbnMgPSBpbnB1dDxBSVBsdWdpbltdPigpO1xuXG4gICAgYWlSZWZlcmVuY2VzID0gaW5wdXQucmVxdWlyZWQ8QUlUYWJsZVJlZmVyZW5jZXM+KCk7XG5cbiAgICBhaUJ1aWxkUmVuZGVyRGF0YUZuID0gaW5wdXQ8KGFpVGFibGU6IEFJVGFibGUpID0+IEFJVGFibGVWYWx1ZT4oKTtcblxuICAgIGFpR2V0STE4blRleHRCeUtleSA9IGlucHV0PChrZXk6IEFJVGFibGVHcmlkSTE4bktleSB8IHN0cmluZykgPT4gc3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgYWlLZXl3b3JkcyA9IGlucHV0PHN0cmluZz4oKTtcblxuICAgIEFJVGFibGVGaWVsZFR5cGUgPSBBSVRhYmxlRmllbGRUeXBlO1xuXG4gICAgQUlUYWJsZVNlbGVjdE9wdGlvblN0eWxlID0gQUlUYWJsZVNlbGVjdE9wdGlvblN0eWxlO1xuXG4gICAgYWlUYWJsZSE6IEFJVGFibGU7XG5cbiAgICBpc1NlbGVjdGVkQWxsID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5haVRhYmxlLnNlbGVjdGlvbigpLnNlbGVjdGVkUmVjb3Jkcy5zaXplID09PSB0aGlzLmFpUmVjb3JkcygpLmxlbmd0aDtcbiAgICB9KTtcblxuICAgIGFpVGFibGVJbml0aWFsaXplZCA9IG91dHB1dDxBSVRhYmxlPigpO1xuXG4gICAgYWlBZGRSZWNvcmQgPSBvdXRwdXQ8QWRkUmVjb3JkT3B0aW9ucz4oKTtcblxuICAgIGFpQWRkRmllbGQgPSBvdXRwdXQ8QWRkRmllbGRPcHRpb25zPigpO1xuXG4gICAgYWlNb3ZlRmllbGQgPSBvdXRwdXQ8TW92ZUZpZWxkT3B0aW9ucz4oKTtcblxuICAgIGFpVXBkYXRlRmllbGRWYWx1ZSA9IG91dHB1dDxVcGRhdGVGaWVsZFZhbHVlT3B0aW9ucz4oKTtcblxuICAgIGFpU2V0RmllbGQgPSBvdXRwdXQ8QUlUYWJsZUZpZWxkPigpO1xuXG4gICAgYWlTZXRGaWVsZFdpZHRoID0gb3V0cHV0PFNldEZpZWxkV2lkdGhPcHRpb25zPigpO1xuXG4gICAgYWlNb3ZlUmVjb3JkcyA9IG91dHB1dDxNb3ZlUmVjb3JkT3B0aW9ucz4oKTtcblxuICAgIGFpQ2xpY2sgPSBvdXRwdXQ8S29FdmVudE9iamVjdE91dHB1dDxNb3VzZUV2ZW50Pj4oKTtcblxuICAgIGFpRGJDbGljayA9IG91dHB1dDxLb0V2ZW50T2JqZWN0T3V0cHV0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAgZmllbGRNZW51czogU2lnbmFsPEFJVGFibGVGaWVsZE1lbnVJdGVtW10+ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBmaWVsZE1lbnVzRm4gPSB0aGlzLmFpRmllbGRDb25maWcoKT8uZmllbGRNZW51cztcbiAgICAgICAgaWYgKGZpZWxkTWVudXNGbiAmJiB0aGlzLmFpVGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWVsZE1lbnVzRm4odGhpcy5haVRhYmxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW107XG4gICAgfSk7XG5cbiAgICBtb3VzZW92ZXJSZWYhOiBUaHlQb3BvdmVyUmVmPGFueT47XG5cbiAgICBncmlkRGF0YSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuYWlCdWlsZFJlbmRlckRhdGFGbiAmJiB0aGlzLmFpQnVpbGRSZW5kZXJEYXRhRm4oKSAmJiB0aGlzLmFpVGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFpQnVpbGRSZW5kZXJEYXRhRm4oKSEodGhpcy5haVRhYmxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcmVjb3JkczogdGhpcy5haVJlY29yZHMoKSxcbiAgICAgICAgICAgIGZpZWxkczogdGhpcy5haUZpZWxkcygpLFxuICAgICAgICAgICAgZmllbGRzU2l6ZU1hcDogdGhpcy5haUZpZWxkc1NpemVNYXAoKVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuICAgIHByb3RlY3RlZCBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAgIHByb3RlY3RlZCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByb3RlY3RlZCBhaVRhYmxlR3JpZEZpZWxkU2VydmljZSA9IGluamVjdChBSVRhYmxlR3JpZEZpZWxkU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIGFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFJVGFibGVHcmlkRXZlbnRTZXJ2aWNlKTtcbiAgICBwcm90ZWN0ZWQgYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlID0gaW5qZWN0KEFJVGFibGVHcmlkU2VsZWN0aW9uU2VydmljZSk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0QUlUYWJsZSgpO1xuICAgICAgICB0aGlzLmluaXRTZXJ2aWNlKCk7XG4gICAgfVxuXG4gICAgaW5pdEFJVGFibGUoKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZSA9IGNyZWF0ZUFJVGFibGUodGhpcy5haVJlY29yZHMsIHRoaXMuYWlGaWVsZHMsIHRoaXMuZ3JpZERhdGEpO1xuICAgICAgICBpZiAodGhpcy5haUdldEkxOG5UZXh0QnlLZXkoKSkge1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlLmdldEkxOG5UZXh0QnlLZXkgPSB0aGlzLmFpR2V0STE4blRleHRCeUtleSgpIGFzIChrZXk6IEFJVGFibGVHcmlkSTE4bktleSB8IHN0cmluZykgPT4gc3RyaW5nO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWlQbHVnaW5zKCk/LmZvckVhY2goKHBsdWdpbikgPT4ge1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlID0gcGx1Z2luKHRoaXMuYWlUYWJsZSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFpVGFibGVJbml0aWFsaXplZC5lbWl0KHRoaXMuYWlUYWJsZSk7XG4gICAgfVxuXG4gICAgaW5pdFNlcnZpY2UoKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRFdmVudFNlcnZpY2UuaW5pdGlhbGl6ZSh0aGlzLmFpVGFibGUsIHRoaXMuYWlGaWVsZENvbmZpZygpPy5maWVsZFJlbmRlcmVycyk7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlLmluaXRpYWxpemUodGhpcy5haVRhYmxlKTtcbiAgICAgICAgdGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5yZWdpc3RlckV2ZW50cyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRGaWVsZFNlcnZpY2UuaW5pdEFJRmllbGRDb25maWcodGhpcy5haUZpZWxkQ29uZmlnKCkpO1xuICAgICAgICBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQLnNldCh0aGlzLmFpVGFibGUsIHRoaXMuYWlUYWJsZUdyaWRGaWVsZFNlcnZpY2UpO1xuICAgIH1cblxuICAgIGFkZFJlY29yZCgpIHtcbiAgICAgICAgY29uc3QgcmVjb3JkcyA9IHRoaXMuYWlUYWJsZS5ncmlkRGF0YSgpLnJlY29yZHM7XG4gICAgICAgIGNvbnN0IHJlY29yZENvdW50ID0gcmVjb3Jkcy5sZW5ndGg7XG4gICAgICAgIHRoaXMuYWlBZGRSZWNvcmQuZW1pdCh7XG4gICAgICAgICAgICBvcmlnaW5JZDogcmVjb3JkQ291bnQgPiAwID8gcmVjb3Jkc1tyZWNvcmRzLmxlbmd0aCAtIDFdLl9pZCA6ICcnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNlbGVjdFJlY29yZChyZWNvcmRJZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZUdyaWRTZWxlY3Rpb25TZXJ2aWNlLnNlbGVjdFJlY29yZChyZWNvcmRJZCk7XG4gICAgfVxuXG4gICAgdG9nZ2xlU2VsZWN0QWxsKGNoZWNrZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5haVRhYmxlR3JpZFNlbGVjdGlvblNlcnZpY2UudG9nZ2xlU2VsZWN0QWxsKGNoZWNrZWQpO1xuICAgIH1cblxuICAgIGFkZEZpZWxkKGdyaWRDb2x1bW5CbGFuaz86IEhUTUxFbGVtZW50LCBwb3NpdGlvbj86IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSkge1xuICAgICAgICBjb25zdCBmaWVsZCA9IGNyZWF0ZURlZmF1bHRGaWVsZCh0aGlzLmFpVGFibGUsIEFJVGFibGVGaWVsZFR5cGUudGV4dCk7XG4gICAgICAgIGNvbnN0IHBvcG92ZXJSZWYgPSB0aGlzLmFpVGFibGVHcmlkRmllbGRTZXJ2aWNlLmVkaXRGaWVsZFByb3BlcnR5KHRoaXMuYWlUYWJsZSwge1xuICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICBpc1VwZGF0ZTogZmFsc2UsXG4gICAgICAgICAgICBvcmlnaW46IGdyaWRDb2x1bW5CbGFuayEsXG4gICAgICAgICAgICBwb3NpdGlvblxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHBvcG92ZXJSZWYgJiYgIXRoaXMuYWlGaWVsZENvbmZpZygpPy5maWVsZFNldHRpbmdDb21wb25lbnQpIHtcbiAgICAgICAgICAgIChwb3BvdmVyUmVmLmNvbXBvbmVudEluc3RhbmNlIGFzIEFJVGFibGVGaWVsZFNldHRpbmcpLmFkZEZpZWxkLnN1YnNjcmliZSgoZGVmYXVsdFZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5ncmlkRGF0YSgpLmZpZWxkcztcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZENvdW50ID0gZmllbGRzLmxlbmd0aDtcbiAgICAgICAgICAgICAgICB0aGlzLmFpQWRkRmllbGQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpbklkOiBmaWVsZENvdW50ID4gMCA/IGZpZWxkc1tmaWVsZHMubGVuZ3RoIC0gMV0uX2lkIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3Vic2NyaWJlRXZlbnRzKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLmRibENsaWNrRXZlbnQkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRibENsaWNrKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5tb3VzZWRvd25FdmVudCRcbiAgICAgICAgICAgICAgICAucGlwZShtZXJnZVdpdGgodGhpcy5haVRhYmxlR3JpZEV2ZW50U2VydmljZS5nbG9iYWxNb3VzZWRvd25FdmVudCQpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkU2VsZWN0aW9uU2VydmljZS51cGRhdGVTZWxlY3QoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLm1vdXNlb3ZlckV2ZW50JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb3VzZW92ZXJIYW5kbGUoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLmdsb2JhbE1vdXNlb3ZlckV2ZW50JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZUhvdmVyQ2VsbEVkaXRvcihldmVudCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkYmxDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCBjZWxsRG9tID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgnLmdyaWQtY2VsbCcpIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCB0eXBlID0gY2VsbERvbSAmJiAoY2VsbERvbS5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSEgYXMgQUlUYWJsZUZpZWxkVHlwZSk7XG4gICAgICAgIGlmICh0eXBlICYmIERCTF9DTElDS19FRElUX1RZUEUuaW5jbHVkZXModHlwZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYWlUYWJsZUdyaWRFdmVudFNlcnZpY2Uub3BlbkVkaXQoY2VsbERvbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdXNlb3ZlckhhbmRsZShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5tb3VzZW92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMubW91c2VvdmVyUmVmPy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNlbGxEb20gPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcuZ3JpZC1jZWxsJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBjZWxsRG9tICYmIChjZWxsRG9tLmdldEF0dHJpYnV0ZSgndHlwZScpISBhcyBBSVRhYmxlRmllbGRUeXBlKTtcbiAgICAgICAgaWYgKHR5cGUgJiYgTU9VU0VPVkVSX0VESVRfVFlQRS5pbmNsdWRlcyh0eXBlKSkge1xuICAgICAgICAgICAgdGhpcy5tb3VzZW92ZXJSZWYgPSB0aGlzLmFpVGFibGVHcmlkRXZlbnRTZXJ2aWNlLm9wZW5FZGl0KGNlbGxEb20pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZUhvdmVyQ2VsbEVkaXRvcihlOiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLm1vdXNlb3ZlclJlZikge1xuICAgICAgICAgICAgY29uc3QgaGFzR3JpZCA9IGUudGFyZ2V0ICYmIChlLnRhcmdldCBhcyBIVE1MRWxlbWVudCkuY2xvc2VzdCgnLmFpLXRhYmxlLWdyaWQnKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc0NlbGxFZGl0b3IgPSBlLnRhcmdldCAmJiAoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy5ncmlkLWNlbGwtZWRpdG9yJyk7XG4gICAgICAgICAgICBpZiAoIWhhc0dyaWQgJiYgIWhhc0NlbGxFZGl0b3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1vdXNlb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19