@ai-table/grid 0.0.55 → 0.0.57

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 (119) hide show
  1. package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
  2. package/components/cell-editors/cell-editor.scss +0 -1
  3. package/components/drag/drag.component.d.ts +1 -0
  4. package/components/drag/drag.component.d.ts.map +1 -1
  5. package/components/index.d.ts +0 -1
  6. package/components/index.d.ts.map +1 -1
  7. package/constants/editor.d.ts.map +1 -1
  8. package/constants/grid.d.ts +0 -1
  9. package/constants/grid.d.ts.map +1 -1
  10. package/constants/icon.d.ts +1 -0
  11. package/constants/icon.d.ts.map +1 -1
  12. package/constants/table.d.ts +6 -2
  13. package/constants/table.d.ts.map +1 -1
  14. package/core/types/core.d.ts +17 -13
  15. package/core/types/core.d.ts.map +1 -1
  16. package/dom-grid.component.d.ts.map +1 -1
  17. package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +2 -4
  18. package/esm2022/components/cell-editors/date/date-editor.component.mjs +5 -5
  19. package/esm2022/components/drag/drag.component.mjs +42 -2
  20. package/esm2022/components/index.mjs +1 -2
  21. package/esm2022/constants/editor.mjs +3 -4
  22. package/esm2022/constants/grid.mjs +1 -2
  23. package/esm2022/constants/icon.mjs +2 -1
  24. package/esm2022/constants/table.mjs +7 -3
  25. package/esm2022/core/constants/field.mjs +2 -2
  26. package/esm2022/core/types/core.mjs +1 -1
  27. package/esm2022/dom-grid.component.mjs +2 -4
  28. package/esm2022/grid-base.component.mjs +9 -30
  29. package/esm2022/grid.component.mjs +49 -53
  30. package/esm2022/renderer/components/cells/attachment.component.mjs +9 -19
  31. package/esm2022/renderer/components/cells/index.mjs +3 -2
  32. package/esm2022/renderer/components/cells/link.component.mjs +3 -5
  33. package/esm2022/renderer/components/cells/progress.component.mjs +268 -0
  34. package/esm2022/renderer/components/cells/rich-text.component.mjs +90 -0
  35. package/esm2022/renderer/components/frozen-heads.component.mjs +17 -5
  36. package/esm2022/renderer/components/hover-row-heads.component.mjs +20 -3
  37. package/esm2022/renderer/components/icon.component.mjs +6 -2
  38. package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +5 -5
  39. package/esm2022/renderer/drawers/cell-drawer.mjs +28 -29
  40. package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +5 -5
  41. package/esm2022/utils/cell.mjs +5 -3
  42. package/esm2022/utils/clipboard/copy.mjs +11 -5
  43. package/esm2022/utils/clipboard/paste.mjs +1 -4
  44. package/esm2022/utils/field/model/attachment.mjs +8 -1
  45. package/esm2022/utils/field/model/date.mjs +13 -3
  46. package/esm2022/utils/field/model/field.mjs +1 -2
  47. package/esm2022/utils/field/model/link.mjs +16 -4
  48. package/esm2022/utils/field/model/member.mjs +1 -1
  49. package/esm2022/utils/field/model/number.mjs +11 -8
  50. package/esm2022/utils/field/model/progress.mjs +7 -7
  51. package/esm2022/utils/field/model/rate.mjs +3 -2
  52. package/esm2022/utils/field/model/rich-text.mjs +1 -1
  53. package/esm2022/utils/field/model/select.mjs +1 -1
  54. package/esm2022/utils/field/model/text.mjs +3 -2
  55. package/esm2022/utils/field/operate.mjs +4 -2
  56. package/esm2022/utils/i18n.mjs +3 -3
  57. package/esm2022/utils/index.mjs +2 -1
  58. package/esm2022/utils/match-keywords.mjs +9 -4
  59. package/esm2022/utils/style.mjs +9 -3
  60. package/fesm2022/ai-table-grid.mjs +2065 -1792
  61. package/fesm2022/ai-table-grid.mjs.map +1 -1
  62. package/grid-base.component.d.ts +6 -5
  63. package/grid-base.component.d.ts.map +1 -1
  64. package/grid.component.d.ts +2 -1
  65. package/grid.component.d.ts.map +1 -1
  66. package/package.json +1 -1
  67. package/renderer/components/cells/attachment.component.d.ts +0 -3
  68. package/renderer/components/cells/attachment.component.d.ts.map +1 -1
  69. package/renderer/components/cells/index.d.ts +2 -1
  70. package/renderer/components/cells/index.d.ts.map +1 -1
  71. package/renderer/components/cells/link.component.d.ts.map +1 -1
  72. package/renderer/components/cells/progress.component.d.ts +82 -0
  73. package/renderer/components/cells/progress.component.d.ts.map +1 -0
  74. package/renderer/components/cells/{richtext.component.d.ts → rich-text.component.d.ts} +4 -4
  75. package/renderer/components/cells/rich-text.component.d.ts.map +1 -0
  76. package/renderer/components/frozen-heads.component.d.ts +1 -0
  77. package/renderer/components/frozen-heads.component.d.ts.map +1 -1
  78. package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
  79. package/renderer/components/icon.component.d.ts.map +1 -1
  80. package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
  81. package/renderer/drawers/cell-drawer.d.ts.map +1 -1
  82. package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -1
  83. package/utils/cell.d.ts +1 -1
  84. package/utils/cell.d.ts.map +1 -1
  85. package/utils/clipboard/paste.d.ts.map +1 -1
  86. package/utils/field/model/attachment.d.ts.map +1 -1
  87. package/utils/field/model/date.d.ts +1 -0
  88. package/utils/field/model/date.d.ts.map +1 -1
  89. package/utils/field/model/field.d.ts.map +1 -1
  90. package/utils/field/model/link.d.ts +3 -2
  91. package/utils/field/model/link.d.ts.map +1 -1
  92. package/utils/field/model/member.d.ts +1 -1
  93. package/utils/field/model/member.d.ts.map +1 -1
  94. package/utils/field/model/number.d.ts +5 -4
  95. package/utils/field/model/number.d.ts.map +1 -1
  96. package/utils/field/model/progress.d.ts +4 -4
  97. package/utils/field/model/progress.d.ts.map +1 -1
  98. package/utils/field/model/rate.d.ts +2 -2
  99. package/utils/field/model/rate.d.ts.map +1 -1
  100. package/utils/field/model/rich-text.d.ts +3 -3
  101. package/utils/field/model/rich-text.d.ts.map +1 -1
  102. package/utils/field/model/select.d.ts +1 -1
  103. package/utils/field/model/select.d.ts.map +1 -1
  104. package/utils/field/model/text.d.ts +3 -3
  105. package/utils/field/model/text.d.ts.map +1 -1
  106. package/utils/field/operate.d.ts +1 -1
  107. package/utils/field/operate.d.ts.map +1 -1
  108. package/utils/i18n.d.ts +1 -1
  109. package/utils/index.d.ts +1 -0
  110. package/utils/index.d.ts.map +1 -1
  111. package/utils/match-keywords.d.ts.map +1 -1
  112. package/utils/style.d.ts +1 -1
  113. package/utils/style.d.ts.map +1 -1
  114. package/components/cell-editors/progress/progress-editor.component.d.ts +0 -19
  115. package/components/cell-editors/progress/progress-editor.component.d.ts.map +0 -1
  116. package/components/cell-editors/progress/progress-editor.component.scss +0 -29
  117. package/esm2022/components/cell-editors/progress/progress-editor.component.mjs +0 -72
  118. package/esm2022/renderer/components/cells/richtext.component.mjs +0 -90
  119. package/renderer/components/cells/richtext.component.d.ts.map +0 -1
@@ -1,7 +1,7 @@
1
- import { AI_TABLE_FIELD_ADD_BUTTON, AI_TABLE_FIELD_HEAD_MORE, AI_TABLE_FIELD_HEAD_OPACITY_LINE, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_ROW_ADD_BUTTON, AI_TABLE_ROW_SELECT_CHECKBOX } from '../constants';
1
+ import { AI_TABLE_FIELD_ADD_BUTTON, AI_TABLE_FIELD_HEAD_MORE, AI_TABLE_FIELD_HEAD_OPACITY_LINE, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_ROW_ADD_BUTTON, AI_TABLE_ROW_DRAG, AI_TABLE_ROW_SELECT_CHECKBOX } from '../constants';
2
2
  import { AITableAreaType } from '../types';
3
3
  import { getDetailByTargetName } from './common';
4
- export const handleMouseStyle = (realTargetName, areaType = AITableAreaType.grid, container, isReadOnly) => {
4
+ export const handleMouseStyle = (realTargetName, areaType = AITableAreaType.grid, container, isReadOnly, isRowDragDisabled) => {
5
5
  const { targetName, mouseStyle } = getDetailByTargetName(realTargetName);
6
6
  if (mouseStyle)
7
7
  return setMouseStyle(mouseStyle, container);
@@ -21,6 +21,12 @@ export const handleMouseStyle = (realTargetName, areaType = AITableAreaType.grid
21
21
  }
22
22
  return setMouseStyle('col-resize', container);
23
23
  }
24
+ case AI_TABLE_ROW_DRAG: {
25
+ if (isReadOnly || isRowDragDisabled) {
26
+ return setMouseStyle('default', container);
27
+ }
28
+ return setMouseStyle('pointer', container);
29
+ }
24
30
  default:
25
31
  return setMouseStyle('default', container);
26
32
  }
@@ -28,4 +34,4 @@ export const handleMouseStyle = (realTargetName, areaType = AITableAreaType.grid
28
34
  export const setMouseStyle = (mouseStyle, container) => {
29
35
  container.style.cursor = mouseStyle;
30
36
  };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9zdHlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gseUJBQXlCLEVBQ3pCLHdCQUF3QixFQUN4QixnQ0FBZ0MsRUFDaEMsbUNBQW1DLEVBQ25DLHVCQUF1QixFQUN2Qiw0QkFBNEIsRUFDL0IsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDNUIsY0FBc0IsRUFDdEIsV0FBNEIsZUFBZSxDQUFDLElBQUksRUFDaEQsU0FBeUIsRUFDekIsVUFBb0IsRUFDdEIsRUFBRTtJQUNBLE1BQU0sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEdBQUcscUJBQXFCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekUsSUFBSSxVQUFVO1FBQUUsT0FBTyxhQUFhLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVELElBQUksUUFBUSxLQUFLLGVBQWUsQ0FBQyxJQUFJO1FBQUUsT0FBTyxhQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2xGLFFBQVEsVUFBVSxFQUFFLENBQUM7UUFDakIsS0FBSyxtQ0FBbUMsQ0FBQztRQUN6QyxLQUFLLHdCQUF3QixDQUFDO1FBQzlCLEtBQUssNEJBQTRCLENBQUM7UUFDbEMsS0FBSyx1QkFBdUIsQ0FBQztRQUM3QixLQUFLLHlCQUF5QixDQUFDLENBQUMsQ0FBQztZQUM3QixPQUFPLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELEtBQUssZ0NBQWdDLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2IsT0FBTyxhQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQy9DLENBQUM7WUFDRCxPQUFPLGFBQWEsQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUVEO1lBQ0ksT0FBTyxhQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFNBQXlCLEVBQUUsRUFBRTtJQUMzRSxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUM7QUFDeEMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQURfTU9SRSxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX09QQUNJVFlfTElORSxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCxcbiAgICBBSV9UQUJMRV9ST1dfQUREX0JVVFRPTixcbiAgICBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YXG59IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlQXJlYVR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXREZXRhaWxCeVRhcmdldE5hbWUgfSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVNb3VzZVN0eWxlID0gKFxuICAgIHJlYWxUYXJnZXROYW1lOiBzdHJpbmcsXG4gICAgYXJlYVR5cGU6IEFJVGFibGVBcmVhVHlwZSA9IEFJVGFibGVBcmVhVHlwZS5ncmlkLFxuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQsXG4gICAgaXNSZWFkT25seT86IGJvb2xlYW5cbikgPT4ge1xuICAgIGNvbnN0IHsgdGFyZ2V0TmFtZSwgbW91c2VTdHlsZSB9ID0gZ2V0RGV0YWlsQnlUYXJnZXROYW1lKHJlYWxUYXJnZXROYW1lKTtcbiAgICBpZiAobW91c2VTdHlsZSkgcmV0dXJuIHNldE1vdXNlU3R5bGUobW91c2VTdHlsZSwgY29udGFpbmVyKTtcbiAgICBpZiAoYXJlYVR5cGUgPT09IEFJVGFibGVBcmVhVHlwZS5ub25lKSByZXR1cm4gc2V0TW91c2VTdHlsZSgnZGVmYXVsdCcsIGNvbnRhaW5lcik7XG4gICAgc3dpdGNoICh0YXJnZXROYW1lKSB7XG4gICAgICAgIGNhc2UgQUlfVEFCTEVfRklFTERfSEVBRF9TRUxFQ1RfQ0hFQ0tCT1g6XG4gICAgICAgIGNhc2UgQUlfVEFCTEVfRklFTERfSEVBRF9NT1JFOlxuICAgICAgICBjYXNlIEFJX1RBQkxFX1JPV19TRUxFQ1RfQ0hFQ0tCT1g6XG4gICAgICAgIGNhc2UgQUlfVEFCTEVfUk9XX0FERF9CVVRUT046XG4gICAgICAgIGNhc2UgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTjoge1xuICAgICAgICAgICAgcmV0dXJuIHNldE1vdXNlU3R5bGUoJ3BvaW50ZXInLCBjb250YWluZXIpO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgQUlfVEFCTEVfRklFTERfSEVBRF9PUEFDSVRZX0xJTkU6IHtcbiAgICAgICAgICAgIGlmIChpc1JlYWRPbmx5KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNldE1vdXNlU3R5bGUoJ2RlZmF1bHQnLCBjb250YWluZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHNldE1vdXNlU3R5bGUoJ2NvbC1yZXNpemUnLCBjb250YWluZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdkZWZhdWx0JywgY29udGFpbmVyKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0TW91c2VTdHlsZSA9IChtb3VzZVN0eWxlOiBzdHJpbmcsIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQpID0+IHtcbiAgICBjb250YWluZXIuc3R5bGUuY3Vyc29yID0gbW91c2VTdHlsZTtcbn07XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9zdHlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gseUJBQXlCLEVBQ3pCLHdCQUF3QixFQUN4QixnQ0FBZ0MsRUFDaEMsbUNBQW1DLEVBQ25DLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsNEJBQTRCLEVBQy9CLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQzVCLGNBQXNCLEVBQ3RCLFdBQTRCLGVBQWUsQ0FBQyxJQUFJLEVBQ2hELFNBQXlCLEVBQ3pCLFVBQW9CLEVBQ3BCLGlCQUEyQixFQUM3QixFQUFFO0lBQ0EsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RSxJQUFJLFVBQVU7UUFBRSxPQUFPLGFBQWEsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDNUQsSUFBSSxRQUFRLEtBQUssZUFBZSxDQUFDLElBQUk7UUFBRSxPQUFPLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDbEYsUUFBUSxVQUFVLEVBQUUsQ0FBQztRQUNqQixLQUFLLG1DQUFtQyxDQUFDO1FBQ3pDLEtBQUssd0JBQXdCLENBQUM7UUFDOUIsS0FBSyw0QkFBNEIsQ0FBQztRQUNsQyxLQUFLLHVCQUF1QixDQUFDO1FBQzdCLEtBQUsseUJBQXlCLENBQUMsQ0FBQyxDQUFDO1lBQzdCLE9BQU8sYUFBYSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQ0QsS0FBSyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUM7WUFDcEMsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDYixPQUFPLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDL0MsQ0FBQztZQUNELE9BQU8sYUFBYSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsS0FBSyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7WUFDckIsSUFBSSxVQUFVLElBQUksaUJBQWlCLEVBQUUsQ0FBQztnQkFDbEMsT0FBTyxhQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQy9DLENBQUM7WUFDRCxPQUFPLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUVEO1lBQ0ksT0FBTyxhQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxVQUFrQixFQUFFLFNBQXlCLEVBQUUsRUFBRTtJQUMzRSxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUM7QUFDeEMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQURfTU9SRSxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX09QQUNJVFlfTElORSxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCxcbiAgICBBSV9UQUJMRV9ST1dfQUREX0JVVFRPTixcbiAgICBBSV9UQUJMRV9ST1dfRFJBRyxcbiAgICBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YXG59IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlQXJlYVR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXREZXRhaWxCeVRhcmdldE5hbWUgfSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVNb3VzZVN0eWxlID0gKFxuICAgIHJlYWxUYXJnZXROYW1lOiBzdHJpbmcsXG4gICAgYXJlYVR5cGU6IEFJVGFibGVBcmVhVHlwZSA9IEFJVGFibGVBcmVhVHlwZS5ncmlkLFxuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQsXG4gICAgaXNSZWFkT25seT86IGJvb2xlYW4sXG4gICAgaXNSb3dEcmFnRGlzYWJsZWQ/OiBib29sZWFuXG4pID0+IHtcbiAgICBjb25zdCB7IHRhcmdldE5hbWUsIG1vdXNlU3R5bGUgfSA9IGdldERldGFpbEJ5VGFyZ2V0TmFtZShyZWFsVGFyZ2V0TmFtZSk7XG4gICAgaWYgKG1vdXNlU3R5bGUpIHJldHVybiBzZXRNb3VzZVN0eWxlKG1vdXNlU3R5bGUsIGNvbnRhaW5lcik7XG4gICAgaWYgKGFyZWFUeXBlID09PSBBSVRhYmxlQXJlYVR5cGUubm9uZSkgcmV0dXJuIHNldE1vdXNlU3R5bGUoJ2RlZmF1bHQnLCBjb250YWluZXIpO1xuICAgIHN3aXRjaCAodGFyZ2V0TmFtZSkge1xuICAgICAgICBjYXNlIEFJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YOlxuICAgICAgICBjYXNlIEFJX1RBQkxFX0ZJRUxEX0hFQURfTU9SRTpcbiAgICAgICAgY2FzZSBBSV9UQUJMRV9ST1dfU0VMRUNUX0NIRUNLQk9YOlxuICAgICAgICBjYXNlIEFJX1RBQkxFX1JPV19BRERfQlVUVE9OOlxuICAgICAgICBjYXNlIEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT046IHtcbiAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdwb2ludGVyJywgY29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlIEFJX1RBQkxFX0ZJRUxEX0hFQURfT1BBQ0lUWV9MSU5FOiB7XG4gICAgICAgICAgICBpZiAoaXNSZWFkT25seSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdkZWZhdWx0JywgY29udGFpbmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdjb2wtcmVzaXplJywgY29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlIEFJX1RBQkxFX1JPV19EUkFHOiB7XG4gICAgICAgICAgICBpZiAoaXNSZWFkT25seSB8fCBpc1Jvd0RyYWdEaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdkZWZhdWx0JywgY29udGFpbmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzZXRNb3VzZVN0eWxlKCdwb2ludGVyJywgY29udGFpbmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gc2V0TW91c2VTdHlsZSgnZGVmYXVsdCcsIGNvbnRhaW5lcik7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHNldE1vdXNlU3R5bGUgPSAobW91c2VTdHlsZTogc3RyaW5nLCBjb250YWluZXI6IEhUTUxEaXZFbGVtZW50KSA9PiB7XG4gICAgY29udGFpbmVyLnN0eWxlLmN1cnNvciA9IG1vdXNlU3R5bGU7XG59O1xuIl19