@ai-table/grid 0.0.66 → 0.0.68

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 (223) hide show
  1. package/components/cell-editors/abstract-cell-editor.component.d.ts +3 -3
  2. package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
  3. package/components/cell-editors/date/date-editor.component.d.ts +1 -1
  4. package/components/cell-editors/date/date-editor.component.d.ts.map +1 -1
  5. package/components/cell-editors/link/link-editor.component.d.ts.map +1 -1
  6. package/components/cell-editors/select/select-editor.component.d.ts +1 -1
  7. package/components/cell-editors/select/select-editor.component.d.ts.map +1 -1
  8. package/components/cell-views/select/option.component.d.ts +1 -1
  9. package/components/cell-views/select/option.component.d.ts.map +1 -1
  10. package/components/drag/drag.component.d.ts +1 -1
  11. package/components/drag/drag.component.d.ts.map +1 -1
  12. package/components/field-menu/field-menu.component.d.ts +2 -1
  13. package/components/field-menu/field-menu.component.d.ts.map +1 -1
  14. package/components/field-setting/field-setting.component.d.ts +2 -1
  15. package/components/field-setting/field-setting.component.d.ts.map +1 -1
  16. package/constants/editor.d.ts +1 -1
  17. package/constants/editor.d.ts.map +1 -1
  18. package/constants/grid.d.ts +1 -1
  19. package/constants/grid.d.ts.map +1 -1
  20. package/core/constants/field.d.ts +2 -1
  21. package/core/constants/field.d.ts.map +1 -1
  22. package/core/context.d.ts +3 -1
  23. package/core/context.d.ts.map +1 -1
  24. package/core/coordinate.d.ts +2 -1
  25. package/core/coordinate.d.ts.map +1 -1
  26. package/core/types/ai-table.d.ts +2 -1
  27. package/core/types/ai-table.d.ts.map +1 -1
  28. package/core/types/core.d.ts +1 -188
  29. package/core/types/core.d.ts.map +1 -1
  30. package/core/utils/common.d.ts +2 -1
  31. package/core/utils/common.d.ts.map +1 -1
  32. package/core/utils/field.d.ts +2 -1
  33. package/core/utils/field.d.ts.map +1 -1
  34. package/core/utils/index.d.ts.map +1 -1
  35. package/core/utils/queries.d.ts +2 -1
  36. package/core/utils/queries.d.ts.map +1 -1
  37. package/dom-grid.component.d.ts +1 -1
  38. package/dom-grid.component.d.ts.map +1 -1
  39. package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +1 -1
  40. package/esm2022/components/cell-editors/date/date-editor.component.mjs +1 -1
  41. package/esm2022/components/cell-editors/link/link-editor.component.mjs +2 -1
  42. package/esm2022/components/cell-editors/select/select-editor.component.mjs +3 -2
  43. package/esm2022/components/cell-views/select/option.component.mjs +2 -2
  44. package/esm2022/components/drag/drag.component.mjs +4 -4
  45. package/esm2022/components/field-menu/field-menu.component.mjs +1 -1
  46. package/esm2022/components/field-setting/field-setting.component.mjs +3 -2
  47. package/esm2022/constants/editor.mjs +2 -2
  48. package/esm2022/constants/grid.mjs +2 -2
  49. package/esm2022/core/constants/field.mjs +2 -2
  50. package/esm2022/core/context.mjs +3 -2
  51. package/esm2022/core/coordinate.mjs +2 -2
  52. package/esm2022/core/types/ai-table.mjs +1 -1
  53. package/esm2022/core/types/core.mjs +2 -58
  54. package/esm2022/core/utils/common.mjs +1 -1
  55. package/esm2022/core/utils/field.mjs +2 -2
  56. package/esm2022/core/utils/index.mjs +1 -1
  57. package/esm2022/core/utils/queries.mjs +2 -2
  58. package/esm2022/dom-grid.component.mjs +1 -1
  59. package/esm2022/grid-base.component.mjs +3 -2
  60. package/esm2022/grid.component.mjs +5 -3
  61. package/esm2022/pipes/grid.pipe.mjs +1 -1
  62. package/esm2022/renderer/components/cells/attachment.component.mjs +2 -2
  63. package/esm2022/renderer/components/cells/cells.mjs +1 -1
  64. package/esm2022/renderer/components/cells/link.component.mjs +3 -3
  65. package/esm2022/renderer/components/cells/progress.component.mjs +2 -2
  66. package/esm2022/renderer/components/cells/rate.component.mjs +2 -2
  67. package/esm2022/renderer/components/cells/rich-text.component.mjs +2 -2
  68. package/esm2022/renderer/components/field-icon.component.mjs +2 -2
  69. package/esm2022/renderer/components/frozen-heads.component.mjs +123 -38
  70. package/esm2022/renderer/components/hover-cell.component.mjs +2 -3
  71. package/esm2022/renderer/components/hover-row-heads.component.mjs +4 -4
  72. package/esm2022/renderer/components/icon.component.mjs +2 -2
  73. package/esm2022/renderer/creations/create-cells.mjs +7 -3
  74. package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +7 -7
  75. package/esm2022/renderer/drawers/cell-drawer.mjs +3 -2
  76. package/esm2022/renderer/drawers/layout-drawer.mjs +7 -3
  77. package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +46 -30
  78. package/esm2022/renderer/interfaces/hover-cell.mjs +1 -1
  79. package/esm2022/renderer/renderer.component.mjs +7 -5
  80. package/esm2022/services/event.service.mjs +6 -4
  81. package/esm2022/services/selection.service.mjs +3 -2
  82. package/esm2022/types/canvas.mjs +1 -1
  83. package/esm2022/types/cell.mjs +1 -1
  84. package/esm2022/types/component-config.mjs +1 -1
  85. package/esm2022/types/field.mjs +1 -1
  86. package/esm2022/types/grid.mjs +1 -6
  87. package/esm2022/types/index.mjs +1 -2
  88. package/esm2022/types/layout.mjs +1 -1
  89. package/esm2022/utils/build.mjs +1 -1
  90. package/esm2022/utils/cell.mjs +2 -2
  91. package/esm2022/utils/clipboard/copy.mjs +4 -3
  92. package/esm2022/utils/clipboard/paste.mjs +4 -3
  93. package/esm2022/utils/common.mjs +1 -11
  94. package/esm2022/utils/field/field-operable.mjs +2 -0
  95. package/esm2022/utils/field/field.mjs +20 -0
  96. package/esm2022/utils/field/index.mjs +4 -0
  97. package/esm2022/utils/field/model/attachment.mjs +7 -26
  98. package/esm2022/utils/field/model/date.mjs +8 -17
  99. package/esm2022/utils/field/model/index.mjs +12 -28
  100. package/esm2022/utils/field/model/link.mjs +6 -22
  101. package/esm2022/utils/field/model/member.mjs +6 -26
  102. package/esm2022/utils/field/model/number.mjs +7 -14
  103. package/esm2022/utils/field/model/progress.mjs +7 -18
  104. package/esm2022/utils/field/model/rate.mjs +7 -12
  105. package/esm2022/utils/field/model/rich-text.mjs +7 -11
  106. package/esm2022/utils/field/model/select.mjs +7 -21
  107. package/esm2022/utils/field/model/text.mjs +6 -11
  108. package/esm2022/utils/field/operate.mjs +27 -2
  109. package/esm2022/utils/index.mjs +2 -3
  110. package/esm2022/utils/match-keywords.mjs +2 -2
  111. package/esm2022/utils/position.mjs +6 -6
  112. package/esm2022/utils/visible-range.mjs +3 -3
  113. package/fesm2022/ai-table-grid.mjs +430 -507
  114. package/fesm2022/ai-table-grid.mjs.map +1 -1
  115. package/grid-base.component.d.ts +3 -2
  116. package/grid-base.component.d.ts.map +1 -1
  117. package/grid.component.d.ts +2 -1
  118. package/grid.component.d.ts.map +1 -1
  119. package/package.json +1 -1
  120. package/pipes/grid.pipe.d.ts +4 -3
  121. package/pipes/grid.pipe.d.ts.map +1 -1
  122. package/renderer/components/cells/attachment.component.d.ts +1 -1
  123. package/renderer/components/cells/attachment.component.d.ts.map +1 -1
  124. package/renderer/components/cells/cells.d.ts +1 -1
  125. package/renderer/components/cells/cells.d.ts.map +1 -1
  126. package/renderer/components/cells/link.component.d.ts +1 -1
  127. package/renderer/components/cells/link.component.d.ts.map +1 -1
  128. package/renderer/components/cells/progress.component.d.ts +1 -1
  129. package/renderer/components/cells/progress.component.d.ts.map +1 -1
  130. package/renderer/components/cells/rate.component.d.ts +1 -1
  131. package/renderer/components/cells/rate.component.d.ts.map +1 -1
  132. package/renderer/components/cells/rich-text.component.d.ts +1 -1
  133. package/renderer/components/cells/rich-text.component.d.ts.map +1 -1
  134. package/renderer/components/field-head.component.d.ts +1 -1
  135. package/renderer/components/frozen-heads.component.d.ts +39 -3
  136. package/renderer/components/frozen-heads.component.d.ts.map +1 -1
  137. package/renderer/components/hover-cell.component.d.ts +2 -2
  138. package/renderer/components/hover-cell.component.d.ts.map +1 -1
  139. package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
  140. package/renderer/creations/create-cells.d.ts +2 -1
  141. package/renderer/creations/create-cells.d.ts.map +1 -1
  142. package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
  143. package/renderer/drawers/cell-drawer.d.ts +1 -1
  144. package/renderer/drawers/cell-drawer.d.ts.map +1 -1
  145. package/renderer/drawers/layout-drawer.d.ts +3 -1
  146. package/renderer/drawers/layout-drawer.d.ts.map +1 -1
  147. package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -1
  148. package/renderer/interfaces/hover-cell.d.ts +1 -1
  149. package/renderer/interfaces/hover-cell.d.ts.map +1 -1
  150. package/renderer/renderer.component.d.ts +3 -2
  151. package/renderer/renderer.component.d.ts.map +1 -1
  152. package/services/event.service.d.ts +3 -2
  153. package/services/event.service.d.ts.map +1 -1
  154. package/services/selection.service.d.ts +2 -1
  155. package/services/selection.service.d.ts.map +1 -1
  156. package/types/canvas.d.ts +1 -1
  157. package/types/canvas.d.ts.map +1 -1
  158. package/types/cell.d.ts +3 -2
  159. package/types/cell.d.ts.map +1 -1
  160. package/types/component-config.d.ts +4 -2
  161. package/types/component-config.d.ts.map +1 -1
  162. package/types/field.d.ts +2 -1
  163. package/types/field.d.ts.map +1 -1
  164. package/types/grid.d.ts +4 -42
  165. package/types/grid.d.ts.map +1 -1
  166. package/types/index.d.ts +0 -1
  167. package/types/index.d.ts.map +1 -1
  168. package/types/layout.d.ts +2 -0
  169. package/types/layout.d.ts.map +1 -1
  170. package/utils/build.d.ts +2 -1
  171. package/utils/build.d.ts.map +1 -1
  172. package/utils/cell.d.ts +2 -2
  173. package/utils/cell.d.ts.map +1 -1
  174. package/utils/clipboard/copy.d.ts.map +1 -1
  175. package/utils/clipboard/paste.d.ts +2 -2
  176. package/utils/clipboard/paste.d.ts.map +1 -1
  177. package/utils/common.d.ts +0 -1
  178. package/utils/common.d.ts.map +1 -1
  179. package/utils/field/field-operable.d.ts +17 -0
  180. package/utils/field/field-operable.d.ts.map +1 -0
  181. package/utils/field/field.d.ts +4 -0
  182. package/utils/field/field.d.ts.map +1 -0
  183. package/utils/field/index.d.ts +4 -0
  184. package/utils/field/index.d.ts.map +1 -0
  185. package/utils/field/model/attachment.d.ts +5 -6
  186. package/utils/field/model/attachment.d.ts.map +1 -1
  187. package/utils/field/model/date.d.ts +4 -6
  188. package/utils/field/model/date.d.ts.map +1 -1
  189. package/utils/field/model/index.d.ts +11 -3
  190. package/utils/field/model/index.d.ts.map +1 -1
  191. package/utils/field/model/link.d.ts +3 -7
  192. package/utils/field/model/link.d.ts.map +1 -1
  193. package/utils/field/model/member.d.ts +4 -6
  194. package/utils/field/model/member.d.ts.map +1 -1
  195. package/utils/field/model/number.d.ts +4 -6
  196. package/utils/field/model/number.d.ts.map +1 -1
  197. package/utils/field/model/progress.d.ts +4 -6
  198. package/utils/field/model/progress.d.ts.map +1 -1
  199. package/utils/field/model/rate.d.ts +4 -5
  200. package/utils/field/model/rate.d.ts.map +1 -1
  201. package/utils/field/model/rich-text.d.ts +5 -5
  202. package/utils/field/model/rich-text.d.ts.map +1 -1
  203. package/utils/field/model/select.d.ts +5 -5
  204. package/utils/field/model/select.d.ts.map +1 -1
  205. package/utils/field/model/text.d.ts +3 -5
  206. package/utils/field/model/text.d.ts.map +1 -1
  207. package/utils/field/operate.d.ts +7 -0
  208. package/utils/field/operate.d.ts.map +1 -1
  209. package/utils/hover-cell.d.ts +1 -1
  210. package/utils/index.d.ts +1 -2
  211. package/utils/index.d.ts.map +1 -1
  212. package/utils/match-keywords.d.ts +2 -2
  213. package/utils/match-keywords.d.ts.map +1 -1
  214. package/utils/position.d.ts +3 -2
  215. package/utils/position.d.ts.map +1 -1
  216. package/utils/visible-range.d.ts +2 -1
  217. package/utils/visible-range.d.ts.map +1 -1
  218. package/esm2022/types/view.mjs +0 -18
  219. package/esm2022/utils/field/model/field.mjs +0 -37
  220. package/types/view.d.ts +0 -23
  221. package/types/view.d.ts.map +0 -1
  222. package/utils/field/model/field.d.ts +0 -21
  223. package/utils/field/model/field.d.ts.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { getFieldOptionByField } from '../core';
2
2
  import { AI_TABLE_GRID_FIELD_SERVICE_MAP } from '../services';
3
- import { FieldModelMap } from './field/model';
3
+ import { FieldModelMap } from './field';
4
4
  export function getColumnIndicesSizeMap(aiTable, fields) {
5
5
  const fieldSizeMap = aiTable.gridData().fieldsSizeMap;
6
6
  const columnIndicesSizeMap = {};
@@ -74,4 +74,4 @@ export function getAvatarBgColor(name) {
74
74
  : 0;
75
75
  return colors[code % 9];
76
76
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF5RCxxQkFBcUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5QyxNQUFNLFVBQVUsdUJBQXVCLENBQUMsT0FBZ0IsRUFBRSxNQUFzQjtJQUM1RSxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3RELE1BQU0sb0JBQW9CLEdBQW1CLEVBQUUsQ0FBQztJQUNoRCxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQzdCLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUsscUJBQXFCLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBd0IsQ0FBQyxLQUFLLENBQUM7SUFDakksQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLG9CQUFvQixDQUFDO0FBQ2hDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUseUJBQXlCLENBQUMsT0FBMEU7SUFDaEgsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUNoQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDN0MsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBVSxPQUFnQixFQUFFLEtBQW1CLEVBQUUsU0FBcUI7SUFDcEcsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxJQUFJLENBQUMs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RUFBRSxJQUFJO1lBQ2xCLE1BQU0sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuQyxPQUFPLE1BQU0sQ0FBQztRQUNsQixDQUFDLEVBQ0QsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQ2YsQ0FBQyxLQUFLO1FBQ1QsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNaLE9BQU8sTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkLCBBSVRhYmxlRmllbGRPcHRpb24sIEZpZWxkVmFsdWUsIGdldEZpZWxkT3B0aW9uQnlGaWVsZCB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlfVEFCTEVfR1JJRF9GSUVMRF9TRVJWSUNFX01BUCB9IGZyb20gJy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEFJVGFibGVTaXplTWFwIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4vZmllbGQvbW9kZWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29sdW1uSW5kaWNlc1NpemVNYXAoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRzOiBBSVRhYmxlRmllbGRbXSkge1xuICAgIGNvbnN0IGZpZWxkU2l6ZU1hcCA9IGFpVGFibGUuZ3JpZERhdGEoKS5maWVsZHNTaXplTWFwO1xuICAgIGNvbnN0IGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcCA9IHt9O1xuICAgIGZpZWxkcz8uZm9yRWFjaCgoZmllbGQsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbHVtbkluZGljZXNTaXplTWFwW2luZGV4XSA9IGZpZWxkU2l6ZU1hcFtmaWVsZC5faWRdID8/IChnZXRGaWVsZE9wdGlvbkJ5RmllbGQoYWlUYWJsZSwgZmllbGQpIGFzIEFJVGFibGVGaWVsZE9wdGlvbikud2lkdGg7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbHVtbkluZGljZXNTaXplTWFwO1xufVxuXG4vKipcbiAqIOiOt+WPluWNleWFg+agvOS9jee9rlxuICog5qC55o2u5Y2V5YWD5qC85piv5ZCm5piv56ys5LiA5YiXL+acgOWQjuS4gOWIl+ehruWumuWNleWFg+agvOaJgOWcqOeahOS9jee9rlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbihvcHRpb25zOiB7IGNvbHVtbldpZHRoOiBudW1iZXI7IGNvbHVtbkluZGV4OiBudW1iZXI7IGNvbHVtbkNvdW50OiBudW1iZXIgfSkge1xuICAgIGNvbnN0IHsgY29sdW1uV2lkdGggfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIHsgd2lkdGg6IGNvbHVtbldpZHRoLCBvZmZzZXQ6IDAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNlbGxWYWx1ZTxUID0gYW55PihhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkLCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpOiBUIHwgbnVsbCB7XG4gICAgY29uc3QgZmllbGRNb2RlbCA9IEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV07XG4gICAgaWYgKCFmaWVsZE1vZGVsLmlzVmFsaWQoY2VsbFZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZFNlcnZpY2UgPSBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQLmdldChhaVRhYmxlKTtcblxuICAgIGlmICghZmllbGRTZXJ2aWNlKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRSZW5kZXJlcnMgPSBmaWVsZFNlcnZpY2UuYWlGaWVsZENvbmZpZz8uZmllbGRSZW5kZXJlcnM7XG4gICAgaWYgKCFmaWVsZFJlbmRlcmVycykge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUcmFuc2Zvcm0gPSBmaWVsZFJlbmRlcmVyc1tmaWVsZC50eXBlXT8udHJhbnNmb3JtO1xuICAgIGlmICghY2VsbFRyYW5zZm9ybSkge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUZXh0ID0gY2VsbFRyYW5zZm9ybShmaWVsZCwgY2VsbFZhbHVlKTtcblxuICAgIGlmIChjZWxsVGV4dCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNlbGxUZXh0O1xufVxuXG4vKipcbiAqIGBcXHU0ZTAwYDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzRFMDBcbiAqIGBcXHU5ZmE1YDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzlGQTVcbiAqL1xuY29uc3QgVU5JRklFRF9JREVPR1JBUEhTX1JFR0VYID0gL15bXFx1NGUwMC1cXHU5ZmE1XSskLztcblxuY29uc3QgU0VUX09GX0xFVFRFUlNfUkVHRVggPSAvXlthLXpBLVpcXC8gXSskLztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhclNob3J0TmFtZShuYW1lOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIG5hbWUgPSBuYW1lLnRyaW0oKTtcblxuICAgIGlmIChVTklGSUVEX0lERU9HUkFQSFNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmxlbmd0aCA+IDIpIHtcbiAgICAgICAgcmV0dXJuIG5hbWUuc2xpY2UobmFtZS5sZW5ndGggLSAyKTtcbiAgICB9XG5cbiAgICBpZiAoU0VUX09GX0xFVFRFUlNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmluZGV4T2YoJyAnKSA+IDApIHtcbiAgICAgICAgY29uc3Qgd29yZHM6IHN0cmluZ1tdID0gbmFtZS5zcGxpdCgnICcpO1xuICAgICAgICByZXR1cm4gKHdvcmRzWzBdLnNsaWNlKDAsIDEpICsgd29yZHNbMV0uc2xpY2UoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5hbWUubGVuZ3RoID4gMiA/IG5hbWUuc2xpY2UoMCwgMikudG9VcHBlckNhc2UoKSA6IG5hbWUudG9VcHBlckNhc2UoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhckJnQ29sb3IobmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY29sb3JzID0gWycjNTZhYmZiJywgJyM1ZGNmZmYnLCAnIzg0ZTE3ZScsICcjNzNkODk3JywgJyNmZjlmNzMnLCAnI2ZhODg4OCcsICcjZmI3ZmI3JywgJyM5YTdlZjQnLCAnIzg2OGFmNiddO1xuICAgIGNvbnN0IG5hbWVBcnJheTogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcnKTtcbiAgICBjb25zdCBjb2RlOiBudW1iZXIgPVxuICAgICAgICBuYW1lICYmIG5hbWUubGVuZ3RoID4gMFxuICAgICAgICAgICAgPyBuYW1lQXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKHJlc3VsdCwgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC52YWx1ZSArPSBpdGVtLmNoYXJDb2RlQXQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7IHZhbHVlOiAwIH1cbiAgICAgICAgICAgICAgKS52YWx1ZVxuICAgICAgICAgICAgOiAwO1xuICAgIHJldHVybiBjb2xvcnNbY29kZSAlIDldO1xufVxuIl19
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFXLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXhDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUFnQixFQUFFLE1BQXNCO0lBQzVFLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDdEQsTUFBTSxvQkFBb0IsR0FBbUIsRUFBRSxDQUFDO0lBQ2hELE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDN0Isb0JBQW9CLENBQUMsS0FBSyxDQUFDLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUF3QixDQUFDLEtBQUssQ0FBQztJQUNqSSxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sb0JBQW9CLENBQUM7QUFDaEMsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxPQUEwRTtJQUNoSCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFVLE9BQWdCLEVBQUUsS0FBbUIsRUFBRSxTQUFxQjtJQUNwRyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLElBQUksQ0FBQyxV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QUFFLElBQUk7WUFDbEIsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUMsRUFDRCxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FDZixDQUFDLEtBQUs7UUFDVCxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1osT0FBTyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZE9wdGlvbiwgQUlUYWJsZVNpemVNYXAsIEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgZ2V0RmllbGRPcHRpb25CeUZpZWxkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4vZmllbGQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29sdW1uSW5kaWNlc1NpemVNYXAoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRzOiBBSVRhYmxlRmllbGRbXSkge1xuICAgIGNvbnN0IGZpZWxkU2l6ZU1hcCA9IGFpVGFibGUuZ3JpZERhdGEoKS5maWVsZHNTaXplTWFwO1xuICAgIGNvbnN0IGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcCA9IHt9O1xuICAgIGZpZWxkcz8uZm9yRWFjaCgoZmllbGQsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbHVtbkluZGljZXNTaXplTWFwW2luZGV4XSA9IGZpZWxkU2l6ZU1hcFtmaWVsZC5faWRdID8/IChnZXRGaWVsZE9wdGlvbkJ5RmllbGQoYWlUYWJsZSwgZmllbGQpIGFzIEFJVGFibGVGaWVsZE9wdGlvbikud2lkdGg7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbHVtbkluZGljZXNTaXplTWFwO1xufVxuXG4vKipcbiAqIOiOt+WPluWNleWFg+agvOS9jee9rlxuICog5qC55o2u5Y2V5YWD5qC85piv5ZCm5piv56ys5LiA5YiXL+acgOWQjuS4gOWIl+ehruWumuWNleWFg+agvOaJgOWcqOeahOS9jee9rlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbihvcHRpb25zOiB7IGNvbHVtbldpZHRoOiBudW1iZXI7IGNvbHVtbkluZGV4OiBudW1iZXI7IGNvbHVtbkNvdW50OiBudW1iZXIgfSkge1xuICAgIGNvbnN0IHsgY29sdW1uV2lkdGggfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIHsgd2lkdGg6IGNvbHVtbldpZHRoLCBvZmZzZXQ6IDAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNlbGxWYWx1ZTxUID0gYW55PihhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkLCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpOiBUIHwgbnVsbCB7XG4gICAgY29uc3QgZmllbGRNb2RlbCA9IEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV07XG4gICAgaWYgKCFmaWVsZE1vZGVsLmlzVmFsaWQoY2VsbFZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZFNlcnZpY2UgPSBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQLmdldChhaVRhYmxlKTtcblxuICAgIGlmICghZmllbGRTZXJ2aWNlKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRSZW5kZXJlcnMgPSBmaWVsZFNlcnZpY2UuYWlGaWVsZENvbmZpZz8uZmllbGRSZW5kZXJlcnM7XG4gICAgaWYgKCFmaWVsZFJlbmRlcmVycykge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUcmFuc2Zvcm0gPSBmaWVsZFJlbmRlcmVyc1tmaWVsZC50eXBlXT8udHJhbnNmb3JtO1xuICAgIGlmICghY2VsbFRyYW5zZm9ybSkge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUZXh0ID0gY2VsbFRyYW5zZm9ybShmaWVsZCwgY2VsbFZhbHVlKTtcblxuICAgIGlmIChjZWxsVGV4dCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNlbGxUZXh0O1xufVxuXG4vKipcbiAqIGBcXHU0ZTAwYDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzRFMDBcbiAqIGBcXHU5ZmE1YDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzlGQTVcbiAqL1xuY29uc3QgVU5JRklFRF9JREVPR1JBUEhTX1JFR0VYID0gL15bXFx1NGUwMC1cXHU5ZmE1XSskLztcblxuY29uc3QgU0VUX09GX0xFVFRFUlNfUkVHRVggPSAvXlthLXpBLVpcXC8gXSskLztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhclNob3J0TmFtZShuYW1lOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIG5hbWUgPSBuYW1lLnRyaW0oKTtcblxuICAgIGlmIChVTklGSUVEX0lERU9HUkFQSFNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmxlbmd0aCA+IDIpIHtcbiAgICAgICAgcmV0dXJuIG5hbWUuc2xpY2UobmFtZS5sZW5ndGggLSAyKTtcbiAgICB9XG5cbiAgICBpZiAoU0VUX09GX0xFVFRFUlNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmluZGV4T2YoJyAnKSA+IDApIHtcbiAgICAgICAgY29uc3Qgd29yZHM6IHN0cmluZ1tdID0gbmFtZS5zcGxpdCgnICcpO1xuICAgICAgICByZXR1cm4gKHdvcmRzWzBdLnNsaWNlKDAsIDEpICsgd29yZHNbMV0uc2xpY2UoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5hbWUubGVuZ3RoID4gMiA/IG5hbWUuc2xpY2UoMCwgMikudG9VcHBlckNhc2UoKSA6IG5hbWUudG9VcHBlckNhc2UoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhckJnQ29sb3IobmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY29sb3JzID0gWycjNTZhYmZiJywgJyM1ZGNmZmYnLCAnIzg0ZTE3ZScsICcjNzNkODk3JywgJyNmZjlmNzMnLCAnI2ZhODg4OCcsICcjZmI3ZmI3JywgJyM5YTdlZjQnLCAnIzg2OGFmNiddO1xuICAgIGNvbnN0IG5hbWVBcnJheTogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcnKTtcbiAgICBjb25zdCBjb2RlOiBudW1iZXIgPVxuICAgICAgICBuYW1lICYmIG5hbWUubGVuZ3RoID4gMFxuICAgICAgICAgICAgPyBuYW1lQXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKHJlc3VsdCwgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC52YWx1ZSArPSBpdGVtLmNoYXJDb2RlQXQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7IHZhbHVlOiAwIH1cbiAgICAgICAgICAgICAgKS52YWx1ZVxuICAgICAgICAgICAgOiAwO1xuICAgIHJldHVybiBjb2xvcnNbY29kZSAlIDldO1xufVxuIl19
@@ -1,6 +1,7 @@
1
- import { AITableFieldType, getFieldValue, getSystemFieldValue, isSystemField } from '../../core';
2
- import { FieldModelMap } from '../field/model';
1
+ import { getFieldValue, getSystemFieldValue, isSystemField } from '../../core';
2
+ import { FieldModelMap } from '../field';
3
3
  import { transformCellValue } from '../cell';
4
+ import { AITableFieldType } from '@ai-table/utils';
4
5
  export const aiTableFragmentAttribute = 'ai-table-fragment';
5
6
  export const buildClipboardData = (aiTable) => {
6
7
  const copiedCells = Array.from(aiTable.selection().selectedCells);
@@ -95,4 +96,4 @@ function buildClipboardContent(aiTable, fieldIds, recordIds) {
95
96
  });
96
97
  return clipboardContent;
97
98
  }
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NsaXBib2FyZC9jb3B5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxnQkFBZ0IsRUFBaUIsYUFBYSxFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBb0IsTUFBTSxZQUFZLENBQUM7QUFDM0ksT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUc3QyxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxtQkFBbUIsQ0FBQztBQUU1RCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE9BQWdCLEVBQTJCLEVBQUU7SUFDNUUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxjQUFjLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUN2QyxJQUFJLGVBQWUsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBQ3hDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFnQixFQUFFLEVBQUU7UUFDckMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hELGNBQWMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENB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QUFDLGNBQWMsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3RHLFdBQVcsR0FBRztvQkFDVixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7b0JBQ3pCLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztpQkFDNUIsQ0FBQztZQUNOLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3JFLFdBQVcsQ0FBQyxJQUFJLEdBQUcsWUFBWSxTQUFTLENBQUMsR0FBRyxxQkFBcUIsU0FBUyxDQUFDLElBQUksTUFBTSxDQUFDO1lBQzFGLENBQUM7WUFDRCxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxnQkFBZ0IsQ0FBQztBQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZVJlY29yZCwgZ2V0RmllbGRWYWx1ZSwgZ2V0U3lzdGVtRmllbGRWYWx1ZSwgaXNTeXN0ZW1GaWVsZCwgU3lzdGVtRmllbGRUeXBlcyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4uL2ZpZWxkL21vZGVsJztcbmltcG9ydCB7IHRyYW5zZm9ybUNlbGxWYWx1ZSB9IGZyb20gJy4uL2NlbGwnO1xuaW1wb3J0IHsgQUlUYWJsZUNvbnRlbnQsIENsaXBib2FyZENvbnRlbnQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBhaVRhYmxlRnJhZ21lbnRBdHRyaWJ1dGUgPSAnYWktdGFibGUtZnJhZ21lbnQnO1xuXG5leHBvcnQgY29uc3QgYnVpbGRDbGlwYm9hcmREYXRhID0gKGFpVGFibGU6IEFJVGFibGUpOiBDbGlwYm9hcmRDb250ZW50IHwgbnVsbCA9PiB7XG4gICAgY29uc3QgY29waWVkQ2VsbHMgPSBBcnJheS5mcm9tKGFpVGFibGUuc2VsZWN0aW9uKCkuc2VsZWN0ZWRDZWxscyk7XG4gICAgaWYgKCFjb3BpZWRDZWxscy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IGNvcGllZEZpZWxkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgbGV0IGNvcGllZFJlY29yZElkcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIGNvcGllZENlbGxzLmZvckVhY2goKGNlbGxQYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgW3JlY29yZElkLCBmaWVsZElkXSA9IGNlbGxQYXRoLnNwbGl0KCc6Jyk7XG4gICAgICAgIGNvcGllZEZpZWxkSWRzLmFkZChmaWVsZElkKTtcbiAgICAgICAgY29waWVkUmVjb3JkSWRzLmFkZChyZWNvcmRJZCk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBmaWVsZElkcyA9IEFycmF5LmZyb20oY29waWVkRmllbGRJZHMpO1xuICAgIGNvbnN0IHJlY29yZElkcyA9IEFycmF5LmZyb20oY29waWVkUmVjb3JkSWRzKTtcbiAgICBjb25zdCBhaVRhYmxlQ29udGVudCA9IGJ1aWxkQUlUYWJsZUNvbnRlbnQoYWlUYWJsZSwgZmllbGRJZHMsIHJlY29yZElkcyk7XG4gICAgY29uc3QgY2xpcGJvYXJkQ29udGVudCA9IGJ1aWxkQ2xpcGJvYXJkQ29udGVudChhaVRhYmxlLCBmaWVsZElkcywgcmVjb3JkSWRzKTtcblxuICAgIHJldHVybiBtZXJnZUNsaXBib2FyZENvbnRlbnQoY2xpcGJvYXJkQ29udGVudCwgYWlUYWJsZUNvbnRlbnQpO1xufTtcblxuY29uc3QgZW5jb2RlQUlUYWJsZUNvbnRlbnQgPSAoYWlUYWJsZUNvbnRlbnQ6IEFJVGFibGVDb250ZW50KSA9PiB7XG4gICAgY29uc3Qgc3RyaW5naWZpZWREYXRhID0gSlNPTi5zdHJpbmdpZnkoYWlUYWJsZUNvbnRlbnQpO1xuICAgIHJldHVybiB3aW5kb3cuYnRvYShlbmNvZGVVUklDb21wb25lbnQoc3RyaW5naWZpZWREYXRhKSk7XG59O1xuXG5mdW5jdGlvbiBtZXJnZUNsaXBib2FyZENvbnRlbnQoY2xpcGJvYXJkQ29udGVudDogQ2xpcGJvYXJkQ29udGVudFtdW10sIGFpVGFibGVDb250ZW50OiBBSVRhYmxlQ29udGVudCk6IENsaXBib2FyZENvbnRlbnQge1xuICAgIGNvbnN0IGVuY29kZWRBSVRhYmxlQ29udGVudCA9IGVuY29kZUFJVGFibGVDb250ZW50KGFpVGFibGVDb250ZW50KTtcbiAgICBjb25zdCBmb3JtYXR0ZWRDb250ZW50OiBDbGlwYm9hcmRDb250ZW50ID0ge1xuICAgICAgICB0ZXh0OiBjbGlwYm9hcmRDb250ZW50Lm1hcCgocm93KSA9PiByb3cubWFwKChjb2x1bW4pID0+IGNvbHVtbi50ZXh0KS5qb2luKCdcXHQnKSkuam9pbignXFxuJyksXG4gICAgICAgIGh0bWw6IGA8dGFibGUgJHthaVRhYmxlRnJhZ21lbnRBdHRyaWJ1dGV9PVwiJHtlbmNvZGVkQUlUYWJsZUNvbnRlbnR9XCI+JHtjbGlwYm9hcmRDb250ZW50Lm1hcCgocm93KSA9PiBgPHRyPiR7cm93Lm1hcCgoY29sdW1uKSA9PiBgPHRkPiR7Y29sdW1uLmh0bWx9PC90ZD5gKS5qb2luKCcnKX08L3RyPmApLmpvaW4oJycpfTwvdGFibGU+YFxuICAgIH07XG4gICAgcmV0dXJuIGZvcm1hdHRlZENvbnRlbnQ7XG59XG5cbmZ1bmN0aW9uIGJ1aWxkQUlUYWJsZUNvbnRlbnQoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRJZHM6IHN0cmluZ1tdLCByZWNvcmRJZHM6IHN0cmluZ1tdKTogQUlUYWJsZUNvbnRlbnQge1xuICAgIGNvbnN0IGZpZWxkcyA9IGZpZWxkSWRzLm1hcCgoZmllbGRJZCkgPT4ge1xuICAgICAgICByZXR1cm4gYWlUYWJsZS5maWVsZHNNYXAoKVtmaWVsZElkXTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlY29yZHMgPSByZWNvcmRJZHMubWFwKChyZWNvcmRJZCkgPT4ge1xuICAgICAgICBjb25zdCByZWNvcmQgPSBhaVRhYmxlLnJlY29yZHNNYXAoKVtyZWNvcmRJZF07XG4gICAgICAgIGxldCBuZXdSZWNvcmQ6IFBhcnRpYWw8QUlUYWJsZVJlY29yZD4gPSB7XG4gICAgICAgICAgICBfaWQ6IHJlY29yZC5faWQsXG4gICAgICAgICAgICB2YWx1ZXM6IHt9XG4gICAgICAgIH07XG4gICAgICAgIGZpZWxkSWRzLmZvckVhY2goKGZpZWxkSWQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkID0gYWlUYWJsZS5maWVsZHNNYXAoKVtmaWVsZElkXTtcbiAgICAgICAgICAgIGlmIChpc1N5c3RlbUZpZWxkKGZpZWxkKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkVHlwZTogU3lzdGVtRmllbGRUeXBlcyA9IGZpZWxkLnR5cGUgYXMgU3lzdGVtRmllbGRUeXBlcztcbiAgICAgICAgICAgICAgICBuZXdSZWNvcmQgPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLm5ld1JlY29yZCxcbiAgICAgICAgICAgICAgICAgICAgW2ZpZWxkVHlwZV06IGdldFN5c3RlbUZpZWxkVmFsdWUocmVjb3JkLCBmaWVsZFR5cGUpXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbmV3UmVjb3JkLnZhbHVlcyA9IHtcbiAgICAgICAgICAgICAgICAgICAgLi4ubmV3UmVjb3JkLnZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgW2ZpZWxkSWRdOiBnZXRGaWVsZFZhbHVlKHJlY29yZCwgZmllbGQpXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBuZXdSZWNvcmQ7XG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBmaWVsZHMsXG4gICAgICAgIHJlY29yZHNcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBidWlsZENsaXBib2FyZENvbnRlbnQoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRJZHM6IHN0cmluZ1tdLCByZWNvcmRJZHM6IHN0cmluZ1tdKTogQ2xpcGJvYXJkQ29udGVudFtdW10ge1xuICAgIGNvbnN0IGNsaXBib2FyZENvbnRlbnQ6IENsaXBib2FyZENvbnRlbnRbXVtdID0gW107XG4gICAgY29uc3QgcmVmZXJlbmNlcyA9IGFpVGFibGUuY29udGV4dCEucmVmZXJlbmNlcygpO1xuICAgIHJlY29yZElkcy5mb3JFYWNoKChyZWNvcmRJZCkgPT4ge1xuICAgICAgICBjb25zdCByZWNvcmQgPSBhaVRhYmxlLnJlY29yZHNNYXAoKVtyZWNvcmRJZF07XG4gICAgICAgIGNvbnN0IHJvdzogeyB0ZXh0OiBzdHJpbmc7IGh0bWw6IHN0cmluZyB9W10gPSBbXTtcbiAgICAgICAgZmllbGRJZHMuZm9yRWFjaCgoZmllbGRJZCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmllbGQgPSBhaVRhYmxlLmZpZWxkc01hcCgpW2ZpZWxkSWRdO1xuICAgICAgICAgICAgY29uc3QgY2VsbFZhbHVlID0gZ2V0RmllbGRWYWx1ZShyZWNvcmQsIGZpZWxkKTtcbiAgICAgICAgICAgIGxldCBjZWxsQ29udGVudCA9IHtcbiAgICAgICAgICAgICAgICB0ZXh0OiAnJyxcbiAgICAgICAgICAgICAgICBodG1sOiAnJ1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChGaWVsZE1vZGVsTWFwW2ZpZWxkLnR5cGVdLmlzVmFsaWQoY2VsbFZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybVZhbHVlID0gdHJhbnNmb3JtQ2VsbFZhbHVlKGFpVGFibGUsIGZpZWxkLCBjZWxsVmFsdWUpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNlbGxUZXh0czogc3RyaW5nW10gPSBGaWVsZE1vZGVsTWFwW2ZpZWxkLnR5cGVdLmNlbGxGdWxsVGV4dCh0cmFuc2Zvcm1WYWx1ZSwgZmllbGQsIHJlZmVyZW5jZXMpO1xuICAgICAgICAgICAgICAgIGNlbGxDb250ZW50ID0ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBjZWxsVGV4dHMuam9pbignLCcpLFxuICAgICAgICAgICAgICAgICAgICBodG1sOiBjZWxsVGV4dHMuam9pbignLCcpXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChmaWVsZC50eXBlID09PSBBSVRhYmxlRmllbGRUeXBlLmxpbmsgJiYgY2VsbFZhbHVlICYmIGNlbGxWYWx1ZS51cmwpIHtcbiAgICAgICAgICAgICAgICBjZWxsQ29udGVudC5odG1sID0gYDxhIGhyZWY9XCIke2NlbGxWYWx1ZS51cmx9XCIgdGFyZ2V0PVwiX2JsYW5rXCI+JHtjZWxsVmFsdWUudGV4dH08L2E+YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJvdy5wdXNoKGNlbGxDb250ZW50KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNsaXBib2FyZENvbnRlbnQucHVzaChyb3cpO1xuICAgIH0pO1xuICAgIHJldHVybiBjbGlwYm9hcmRDb250ZW50O1xufVxuIl19
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NsaXBib2FyZC9jb3B5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBbUMsTUFBTSxpQkFBaUIsQ0FBQztBQUdwRixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxtQkFBbUIsQ0FBQztBQUU1RCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE9BQWdCLEVBQTJCLEVBQUU7SUFDNUUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxjQUFjLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUN2QyxJQUFJLGVBQWUsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBQ3hDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFnQixFQUFFLEVBQUU7UUFDckMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hELGNBQWMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUMsQ0FBQztJQUVILE1B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QUFLLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3RHLFdBQVcsR0FBRztvQkFDVixJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7b0JBQ3pCLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztpQkFDNUIsQ0FBQztZQUNOLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3JFLFdBQVcsQ0FBQyxJQUFJLEdBQUcsWUFBWSxTQUFTLENBQUMsR0FBRyxxQkFBcUIsU0FBUyxDQUFDLElBQUksTUFBTSxDQUFDO1lBQzFGLENBQUM7WUFDRCxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxnQkFBZ0IsQ0FBQztBQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgZ2V0RmllbGRWYWx1ZSwgZ2V0U3lzdGVtRmllbGRWYWx1ZSwgaXNTeXN0ZW1GaWVsZCB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4uL2ZpZWxkJztcbmltcG9ydCB7IHRyYW5zZm9ybUNlbGxWYWx1ZSB9IGZyb20gJy4uL2NlbGwnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZVJlY29yZCwgU3lzdGVtRmllbGRUeXBlcyB9IGZyb20gJ0BhaS10YWJsZS91dGlscyc7XG5pbXBvcnQgeyBBSVRhYmxlQ29udGVudCwgQ2xpcGJvYXJkQ29udGVudCB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGFpVGFibGVGcmFnbWVudEF0dHJpYnV0ZSA9ICdhaS10YWJsZS1mcmFnbWVudCc7XG5cbmV4cG9ydCBjb25zdCBidWlsZENsaXBib2FyZERhdGEgPSAoYWlUYWJsZTogQUlUYWJsZSk6IENsaXBib2FyZENvbnRlbnQgfCBudWxsID0+IHtcbiAgICBjb25zdCBjb3BpZWRDZWxscyA9IEFycmF5LmZyb20oYWlUYWJsZS5zZWxlY3Rpb24oKS5zZWxlY3RlZENlbGxzKTtcbiAgICBpZiAoIWNvcGllZENlbGxzLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgY29waWVkRmllbGRJZHMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICBsZXQgY29waWVkUmVjb3JkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgY29waWVkQ2VsbHMuZm9yRWFjaCgoY2VsbFBhdGg6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBbcmVjb3JkSWQsIGZpZWxkSWRdID0gY2VsbFBhdGguc3BsaXQoJzonKTtcbiAgICAgICAgY29waWVkRmllbGRJZHMuYWRkKGZpZWxkSWQpO1xuICAgICAgICBjb3BpZWRSZWNvcmRJZHMuYWRkKHJlY29yZElkKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGZpZWxkSWRzID0gQXJyYXkuZnJvbShjb3BpZWRGaWVsZElkcyk7XG4gICAgY29uc3QgcmVjb3JkSWRzID0gQXJyYXkuZnJvbShjb3BpZWRSZWNvcmRJZHMpO1xuICAgIGNvbnN0IGFpVGFibGVDb250ZW50ID0gYnVpbGRBSVRhYmxlQ29udGVudChhaVRhYmxlLCBmaWVsZElkcywgcmVjb3JkSWRzKTtcbiAgICBjb25zdCBjbGlwYm9hcmRDb250ZW50ID0gYnVpbGRDbGlwYm9hcmRDb250ZW50KGFpVGFibGUsIGZpZWxkSWRzLCByZWNvcmRJZHMpO1xuXG4gICAgcmV0dXJuIG1lcmdlQ2xpcGJvYXJkQ29udGVudChjbGlwYm9hcmRDb250ZW50LCBhaVRhYmxlQ29udGVudCk7XG59O1xuXG5jb25zdCBlbmNvZGVBSVRhYmxlQ29udGVudCA9IChhaVRhYmxlQ29udGVudDogQUlUYWJsZUNvbnRlbnQpID0+IHtcbiAgICBjb25zdCBzdHJpbmdpZmllZERhdGEgPSBKU09OLnN0cmluZ2lmeShhaVRhYmxlQ29udGVudCk7XG4gICAgcmV0dXJuIHdpbmRvdy5idG9hKGVuY29kZVVSSUNvbXBvbmVudChzdHJpbmdpZmllZERhdGEpKTtcbn07XG5cbmZ1bmN0aW9uIG1lcmdlQ2xpcGJvYXJkQ29udGVudChjbGlwYm9hcmRDb250ZW50OiBDbGlwYm9hcmRDb250ZW50W11bXSwgYWlUYWJsZUNvbnRlbnQ6IEFJVGFibGVDb250ZW50KTogQ2xpcGJvYXJkQ29udGVudCB7XG4gICAgY29uc3QgZW5jb2RlZEFJVGFibGVDb250ZW50ID0gZW5jb2RlQUlUYWJsZUNvbnRlbnQoYWlUYWJsZUNvbnRlbnQpO1xuICAgIGNvbnN0IGZvcm1hdHRlZENvbnRlbnQ6IENsaXBib2FyZENvbnRlbnQgPSB7XG4gICAgICAgIHRleHQ6IGNsaXBib2FyZENvbnRlbnQubWFwKChyb3cpID0+IHJvdy5tYXAoKGNvbHVtbikgPT4gY29sdW1uLnRleHQpLmpvaW4oJ1xcdCcpKS5qb2luKCdcXG4nKSxcbiAgICAgICAgaHRtbDogYDx0YWJsZSAke2FpVGFibGVGcmFnbWVudEF0dHJpYnV0ZX09XCIke2VuY29kZWRBSVRhYmxlQ29udGVudH1cIj4ke2NsaXBib2FyZENvbnRlbnQubWFwKChyb3cpID0+IGA8dHI+JHtyb3cubWFwKChjb2x1bW4pID0+IGA8dGQ+JHtjb2x1bW4uaHRtbH08L3RkPmApLmpvaW4oJycpfTwvdHI+YCkuam9pbignJyl9PC90YWJsZT5gXG4gICAgfTtcbiAgICByZXR1cm4gZm9ybWF0dGVkQ29udGVudDtcbn1cblxuZnVuY3Rpb24gYnVpbGRBSVRhYmxlQ29udGVudChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZElkczogc3RyaW5nW10sIHJlY29yZElkczogc3RyaW5nW10pOiBBSVRhYmxlQ29udGVudCB7XG4gICAgY29uc3QgZmllbGRzID0gZmllbGRJZHMubWFwKChmaWVsZElkKSA9PiB7XG4gICAgICAgIHJldHVybiBhaVRhYmxlLmZpZWxkc01hcCgpW2ZpZWxkSWRdO1xuICAgIH0pO1xuXG4gICAgY29uc3QgcmVjb3JkcyA9IHJlY29yZElkcy5tYXAoKHJlY29yZElkKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlY29yZCA9IGFpVGFibGUucmVjb3Jkc01hcCgpW3JlY29yZElkXTtcbiAgICAgICAgbGV0IG5ld1JlY29yZDogUGFydGlhbDxBSVRhYmxlUmVjb3JkPiA9IHtcbiAgICAgICAgICAgIF9pZDogcmVjb3JkLl9pZCxcbiAgICAgICAgICAgIHZhbHVlczoge31cbiAgICAgICAgfTtcbiAgICAgICAgZmllbGRJZHMuZm9yRWFjaCgoZmllbGRJZCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmllbGQgPSBhaVRhYmxlLmZpZWxkc01hcCgpW2ZpZWxkSWRdO1xuICAgICAgICAgICAgaWYgKGlzU3lzdGVtRmllbGQoZmllbGQpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRUeXBlOiBTeXN0ZW1GaWVsZFR5cGVzID0gZmllbGQudHlwZSBhcyBTeXN0ZW1GaWVsZFR5cGVzO1xuICAgICAgICAgICAgICAgIG5ld1JlY29yZCA9IHtcbiAgICAgICAgICAgICAgICAgICAgLi4ubmV3UmVjb3JkLFxuICAgICAgICAgICAgICAgICAgICBbZmllbGRUeXBlXTogZ2V0U3lzdGVtRmllbGRWYWx1ZShyZWNvcmQsIGZpZWxkVHlwZSlcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdSZWNvcmQudmFsdWVzID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi5uZXdSZWNvcmQudmFsdWVzLFxuICAgICAgICAgICAgICAgICAgICBbZmllbGRJZF06IGdldEZpZWxkVmFsdWUocmVjb3JkLCBmaWVsZClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG5ld1JlY29yZDtcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIGZpZWxkcyxcbiAgICAgICAgcmVjb3Jkc1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIGJ1aWxkQ2xpcGJvYXJkQ29udGVudChhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZElkczogc3RyaW5nW10sIHJlY29yZElkczogc3RyaW5nW10pOiBDbGlwYm9hcmRDb250ZW50W11bXSB7XG4gICAgY29uc3QgY2xpcGJvYXJkQ29udGVudDogQ2xpcGJvYXJkQ29udGVudFtdW10gPSBbXTtcbiAgICBjb25zdCByZWZlcmVuY2VzID0gYWlUYWJsZS5jb250ZXh0IS5yZWZlcmVuY2VzKCk7XG4gICAgcmVjb3JkSWRzLmZvckVhY2goKHJlY29yZElkKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlY29yZCA9IGFpVGFibGUucmVjb3Jkc01hcCgpW3JlY29yZElkXTtcbiAgICAgICAgY29uc3Qgcm93OiB7IHRleHQ6IHN0cmluZzsgaHRtbDogc3RyaW5nIH1bXSA9IFtdO1xuICAgICAgICBmaWVsZElkcy5mb3JFYWNoKChmaWVsZElkKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWVsZCA9IGFpVGFibGUuZmllbGRzTWFwKClbZmllbGRJZF07XG4gICAgICAgICAgICBjb25zdCBjZWxsVmFsdWUgPSBnZXRGaWVsZFZhbHVlKHJlY29yZCwgZmllbGQpO1xuICAgICAgICAgICAgbGV0IGNlbGxDb250ZW50ID0ge1xuICAgICAgICAgICAgICAgIHRleHQ6ICcnLFxuICAgICAgICAgICAgICAgIGh0bWw6ICcnXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaWYgKEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV0uaXNWYWxpZChjZWxsVmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtVmFsdWUgPSB0cmFuc2Zvcm1DZWxsVmFsdWUoYWlUYWJsZSwgZmllbGQsIGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgY2VsbFRleHRzOiBzdHJpbmdbXSA9IEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV0uY2VsbEZ1bGxUZXh0KHRyYW5zZm9ybVZhbHVlLCBmaWVsZCwgcmVmZXJlbmNlcyk7XG4gICAgICAgICAgICAgICAgY2VsbENvbnRlbnQgPSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGNlbGxUZXh0cy5qb2luKCcsJyksXG4gICAgICAgICAgICAgICAgICAgIGh0bWw6IGNlbGxUZXh0cy5qb2luKCcsJylcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUubGluayAmJiBjZWxsVmFsdWUgJiYgY2VsbFZhbHVlLnVybCkge1xuICAgICAgICAgICAgICAgIGNlbGxDb250ZW50Lmh0bWwgPSBgPGEgaHJlZj1cIiR7Y2VsbFZhbHVlLnVybH1cIiB0YXJnZXQ9XCJfYmxhbmtcIj4ke2NlbGxWYWx1ZS50ZXh0fTwvYT5gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcm93LnB1c2goY2VsbENvbnRlbnQpO1xuICAgICAgICB9KTtcbiAgICAgICAgY2xpcGJvYXJkQ29udGVudC5wdXNoKHJvdyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNsaXBib2FyZENvbnRlbnQ7XG59XG4iXX0=
@@ -1,7 +1,8 @@
1
- import { AITable, AITableFieldType, createDefaultField, createDefaultFieldName, getFieldOptions, getFieldValue, idCreator } from '../../core';
1
+ import { AITable, createDefaultField, createDefaultFieldName, getFieldOptions, getFieldValue, idCreator } from '../../core';
2
2
  import { readFromClipboard, aiTableFragmentAttribute, extractText } from '../clipboard';
3
- import { FieldModelMap } from '../field/model';
4
3
  import { processPastedValueForSelect } from '../field/model/select';
4
+ import { FieldModelMap } from '../field';
5
+ import { AITableFieldType } from '@ai-table/utils';
5
6
  const aiTableAttributePattern = new RegExp(`${aiTableFragmentAttribute}="(.+?)"`, 'm');
6
7
  const decodeClipboardJsonData = (encoded) => {
7
8
  const decoded = decodeURIComponent(window.atob(encoded));
@@ -186,4 +187,4 @@ export const writeToAITable = async (aiTable, actions) => {
186
187
  });
187
188
  return isPasteSuccess;
188
189
  };
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9jbGlwYm9hcmQvcGFzdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNILE9BQU8sRUFFUCxnQkFBZ0IsRUFFaEIsa0JBQWtCLEVBQ2xCLHNCQUFzQixFQUV0QixlQUFlLEVBQ2YsYUFBYSxFQUNiLFNBQVMsRUFHWixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdwRSxNQUFNLHVCQUF1QixHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsd0JBQXdCLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUV2RixNQUFNLHVCQUF1QixHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7SUFDaEQsTUFBTSxPQUFPLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUMvQixDQUFDLENBQUM7QUFFRixTQUFTLCtCQUErQixDQUFDLGFBQXFCO0lBQzFELE1BQU0sUUFBUSxHQUFHLGFBQWE7U0FDekIsS0FBSyxDQUFDLElBQUksQ0FBQztTQUNYLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QixNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENB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QUFVLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNuRSxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDdEUsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3RCLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQztZQUNyQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLGFBQWEsQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRXZILElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQ1gsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvQixDQUFDO1lBRUQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQztvQkFDRCxPQUFPLENBQUMsZ0JBQWdCLENBQUM7d0JBQ3JCLEtBQUs7d0JBQ0wsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDO3FCQUM1QyxDQUFDLENBQUM7b0JBQ0gsY0FBYyxHQUFHLElBQUksQ0FBQztnQkFDMUIsQ0FBQztnQkFBQyxPQUFPLEtBQUssRUFBRSxDQUFDLENBQUEsQ0FBQztZQUN0QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sY0FBYyxDQUFDO0FBQzFCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVDb250ZW50LCBBSVRhYmxlUmVmZXJlbmNlcyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7XG4gICAgQUlUYWJsZSxcbiAgICBBSVRhYmxlRmllbGQsXG4gICAgQUlUYWJsZUZpZWxkVHlwZSxcbiAgICBBSVRhYmxlUmVjb3JkLFxuICAgIGNyZWF0ZURlZmF1bHRGaWVsZCxcbiAgICBjcmVhdGVEZWZhdWx0RmllbGROYW1lLFxuICAgIEZpZWxkVmFsdWUsXG4gICAgZ2V0RmllbGRPcHRpb25zLFxuICAgIGdldEZpZWxkVmFsdWUsXG4gICAgaWRDcmVhdG9yLFxuICAgIFNlbGVjdFNldHRpbmdzLFxuICAgIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zXG59IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgcmVhZEZyb21DbGlwYm9hcmQsIGFpVGFibGVGcmFnbWVudEF0dHJpYnV0ZSwgZXh0cmFjdFRleHQgfSBmcm9tICcuLi9jbGlwYm9hcmQnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4uL2ZpZWxkL21vZGVsJztcbmltcG9ydCB7IHByb2Nlc3NQYXN0ZWRWYWx1ZUZvclNlbGVjdCB9IGZyb20gJy4uL2ZpZWxkL21vZGVsL3NlbGVjdCc7XG5pbXBvcnQgeyBBZGRSZWNvcmRPcHRpb25zLCBBZGRGaWVsZE9wdGlvbnMgfSBmcm9tICcuLi8uLi9jb3JlJztcblxuY29uc3QgYWlUYWJsZUF0dHJpYnV0ZVBhdHRlcm4gPSBuZXcgUmVnRXhwKGAke2FpVGFibGVGcmFnbWVudEF0dHJpYnV0ZX09XCIoLis/KVwiYCwgJ20nKTtcblxuY29uc3QgZGVjb2RlQ2xpcGJvYXJkSnNvbkRhdGEgPSAoZW5jb2RlZDogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgZGVjb2RlZCA9IGRlY29kZVVSSUNvbXBvbmVudCh3aW5kb3cuYXRvYihlbmNvZGVkKSk7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UoZGVjb2RlZCk7XG59O1xuXG5mdW5jdGlvbiBleHRyYWN0Q29udGVudEZyb21DbGlwYm9hcmRUZXh0KGNsaXBib2FyZFRleHQ6IHN0cmluZyk6IHN0cmluZ1tdW10ge1xuICAgIGNvbnN0IGNvbnRlbnRzID0gY2xpcGJvYXJkVGV4dFxuICAgICAgICAuc3BsaXQoJ1xcbicpXG4gICAgICAgIC5tYXAoKHJvdykgPT4gcm93LnNwbGl0KCdcXHQnKSlcbiAgICAgICAgLmZpbHRlcigocm93KSA9PiByb3cubGVuZ3RoID4gMCAmJiByb3cuc29tZSgoY2VsbCkgPT4gY2VsbC50cmltKCkubGVuZ3RoID4gMCkpO1xuXG4gICAgcmV0dXJuIGNvbnRlbnRzO1xufVxuXG5mdW5jdGlvbiBwcm9jZXNzVGFibGVDZWxsKGNlbGxIdG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGxpbmtQYXR0ZXJuID0gLzxhW14+XSo/aHJlZj1bXCInXShbXlwiJ10rKVtcIiddW14+XSo/PihbXjxdKj8pPFxcL2E+L2k7XG4gICAgY29uc3QgbWF0Y2ggPSBjZWxsSHRtbC5tYXRjaChsaW5rUGF0dGVybik7XG4gICAgY29uc3QgbGluayA9IG1hdGNoID8geyBocmVmOiBtYXRjaFsxXSwgdGV4dDogbWF0Y2hbMl0gfSA6IG51bGw7XG4gICAgY29uc3QgY29udGVudCA9IGxpbmsgPyBjZWxsSHRtbC5yZXBsYWNlKGxpbmtQYXR0ZXJuLCBgW0xJTks6JHtsaW5rLnRleHR9XSgke2xpbmsuaHJlZn0pYCkgOiBjZWxsSHRtbDtcblxuICAgIGNvbnN0IGNsZWFuQ29udGVudCA9IGNvbnRlbnRcbiAgICAgICAgLnJlcGxhY2UoLzxbXj5dKz4vZywgJycpXG4gICAgICAgIC5yZXBsYWNlKC8mbmJzcDsvZywgJyAnKVxuICAgICAgICAucmVwbGFjZSgvXFxzKy9nLCAnICcpXG4gICAgICAgIC50cmltKCk7XG5cbiAgICByZXR1cm4gbGluayA/IGNsZWFuQ29udGVudC5yZXBsYWNlKGBbTElOSzoke2xpbmsudGV4dH1dKCR7bGluay5ocmVmfSlgLCBgPGEgaHJlZj1cIiR7bGluay5ocmVmfVwiPiR7bGluay50ZXh0fTwvYT5gKSA6IGNsZWFuQ29udGVudDtcbn1cblxuZnVuY3Rpb24gZXh0cmFjdENvbnRlbnRGcm9tQ2xpcGJvYXJkSHRtbChjbGlwYm9hcmRIdG1sOiBzdHJpbmcpOiBzdHJpbmdbXVtdIHtcbiAgICBjb25zdCB0YWJsZVBhdHRlcm4gPSAvPHRhYmxlW14+XSo+KFtcXHNcXFNdKj8pPFxcL3RhYmxlPi9pO1xuICAgIGNvbnN0IHRyUGF0dGVybiA9IC88dHJbXj5dKj4oW1xcc1xcU10qPyk8XFwvdHI+L2dpO1xuICAgIGNvbnN0IHRkUGF0dGVybiA9IC88dGRbXj5dKj8+KFtcXHNcXFNdKj8pPFxcL3RkPi9naTtcblxuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHRhYmxlTWF0Y2ggPSBjbGlwYm9hcmRIdG1sLm1hdGNoKHRhYmxlUGF0dGVybik7XG4gICAgICAgIGNvbnN0IHRhYmxlQ29udGVudCA9IHRhYmxlTWF0Y2ggPyB0YWJsZU1hdGNoWzFdIDogY2xpcGJvYXJkSHRtbDtcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlQ29udGVudC5tYXRjaCh0clBhdHRlcm4pIHx8IFtdO1xuXG4gICAgICAgIHJldHVybiByb3dzXG4gICAgICAgICAgICAubWFwKChyb3cpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50czogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgICAgICAgICBsZXQgdGRNYXRjaDtcblxuICAgICAgICAgICAgICAgIHdoaWxlICgodGRNYXRjaCA9IHRkUGF0dGVybi5leGVjKHJvdykpICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzLnB1c2gocHJvY2Vzc1RhYmxlQ2VsbCh0ZE1hdGNoWzFdKSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnRzO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHJvdykgPT4gcm93Lmxlbmd0aCA+IDApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignRmFpbGVkIHRvIGV4dHJhY3QgY29udGVudCBmcm9tIEhUTUw6JywgZXJyb3IpO1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuXG5mdW5jdGlvbiBleHRyYWN0QUlUYWJsZUNvbnRlbnRGcm9tQ2xpcGJvYXJkSHRtbChjbGlwYm9hcmRIdG1sOiBzdHJpbmcpOiBBSVRhYmxlQ29udGVudCB8IG51bGwge1xuICAgIGNvbnN0IGFpVGFibGVGcmFnbWVudCA9IGNsaXBib2FyZEh0bWwubWF0Y2goYWlUYWJsZUF0dHJpYnV0ZVBhdHRlcm4pO1xuICAgIGlmIChhaVRhYmxlRnJhZ21lbnQgJiYgISFhaVRhYmxlRnJhZ21lbnQubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiBkZWNvZGVDbGlwYm9hcmRKc29uRGF0YShhaVRhYmxlRnJhZ21lbnRbMV0pO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuY29uc3QgcmVhZENsaXBib2FyZERhdGEgPSBhc3luYyAoKTogUHJvbWlzZTx7IGNsaXBib2FyZENvbnRlbnQ6IHN0cmluZ1tdW107IGFpVGFibGVDb250ZW50OiBBSVRhYmxlQ29udGVudCB8IG51bGwgfT4gPT4ge1xuICAgIGNvbnN0IGNsaXBib2FyZERhdGEgPSBhd2FpdCByZWFkRnJvbUNsaXBib2FyZCgpO1xuICAgIGxldCBjbGlwYm9hcmRDb250ZW50OiBzdHJpbmdbXVtdID0gW107XG4gICAgbGV0IGFpVGFibGVDb250ZW50OiBBSVRhYmxlQ29udGVudCB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKGNsaXBib2FyZERhdGEpIHtcbiAgICAgICAgY29uc3QgY2xpcGJvYXJkSHRtbCA9IGNsaXBib2FyZERhdGEuaHRtbDtcbiAgICAgICAgY29uc3QgY2xpcGJvYXJkVGV4dCA9IGNsaXBib2FyZERhdGEudGV4dDtcblxuICAgICAgICBpZiAoY2xpcGJvYXJkSHRtbCkge1xuICAgICAgICAgICAgYWlUYWJsZUNvbnRlbnQgPSBleHRyYWN0QUlUYWJsZUNvbnRlbnRGcm9tQ2xpcGJvYXJkSHRtbChjbGlwYm9hcmRIdG1sKTtcbiAgICAgICAgICAgIGNsaXBib2FyZENvbnRlbnQgPSBleHRyYWN0Q29udGVudEZyb21DbGlwYm9hcmRIdG1sKGNsaXBib2FyZEh0bWwpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFjbGlwYm9hcmRDb250ZW50Lmxlbmd0aCAmJiBjbGlwYm9hcmRUZXh0KSB7XG4gICAgICAgICAgICBjbGlwYm9hcmRDb250ZW50ID0gZXh0cmFjdENvbnRlbnRGcm9tQ2xpcGJvYXJkVGV4dChjbGlwYm9hcmRUZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIGNsaXBib2FyZENvbnRlbnQsXG4gICAgICAgIGFpVGFibGVDb250ZW50XG4gICAgfTtcbn07XG5cbmZ1bmN0aW9uIGdldFBhc3RlVmFsdWUoXG4gICAgcGxhaW5UZXh0OiBzdHJpbmcsXG4gICAgYWlUYWJsZUNvbnRlbnQ6IEFJVGFibGVDb250ZW50IHwgbnVsbCxcbiAgICByZWNvcmRJbmRleDogbnVtYmVyLFxuICAgIGZpZWxkSW5kZXg6IG51bWJlcixcbiAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzXG4pOiB7XG4gICAgdmFsdWU6IEZpZWxkVmFsdWUgfCBudWxsO1xuICAgIG5ld0ZpZWxkOiBBSVRhYmxlRmllbGQgfCBudWxsO1xufSB7XG4gICAgbGV0IGZpZWxkOiBBSVRhYmxlRmllbGQgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgcmVjb3JkOiBQYXJ0aWFsPEFJVGFibGVSZWNvcmQ+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBpZiAoYWlUYWJsZUNvbnRlbnQpIHtcbiAgICAgICAgY29uc3QgeyBmaWVsZHMsIHJlY29yZHMgfSA9IGFpVGFibGVDb250ZW50O1xuICAgICAgICBmaWVsZCA9IGZpZWxkc1tmaWVsZEluZGV4XTtcbiAgICAgICAgcmVjb3JkID0gcmVjb3Jkc1tyZWNvcmRJbmRleF07XG4gICAgfVxuXG4gICAgaWYgKHRhcmdldEZpZWxkLnR5cGUgIT09IEFJVGFibGVGaWVsZFR5cGUubGluaykge1xuICAgICAgICBwbGFpblRleHQgPSBleHRyYWN0VGV4dChwbGFpblRleHQpO1xuICAgIH1cblxuICAgIGxldCBvcmlnaW5EYXRhID0gZmllbGQgJiYgcmVjb3JkID8geyBmaWVsZCwgY2VsbFZhbHVlOiBnZXRGaWVsZFZhbHVlKHJlY29yZCwgZmllbGQpIH0gOiBudWxsO1xuICAgIGlmICh0YXJnZXRGaWVsZC50eXBlID09PSBBSVRhYmxlRmllbGRUeXBlLnNlbGVjdCkge1xuICAgICAgICBsZXQgeyBleGlzdE9wdGlvbklkcywgbmV3T3B0aW9ucyB9ID0gcHJvY2Vzc1Bhc3RlZFZhbHVlRm9yU2VsZWN0KHBsYWluVGV4dCwgdGFyZ2V0RmllbGQsIG9yaWdpbkRhdGEpO1xuICAgICAgICBsZXQgbmV3RmllbGQ6IEFJVGFibGVGaWVsZCB8IG51bGwgPSBudWxsO1xuICAgICAgICBsZXQgbmV3T3B0aW9uSWRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGlmIChuZXdPcHRpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgbmV3RmllbGQgPSB7XG4gICAgICAgICAgICAgICAgLi4udGFyZ2V0RmllbGQsXG4gICAgICAgICAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4udGFyZ2V0RmllbGQuc2V0dGluZ3MsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IFsuLi4oKHRhcmdldEZpZWxkLnNldHRpbmdzIGFzIFNlbGVjdFNldHRpbmdzKT8ub3B0aW9ucyB8fCBbXSksIC4uLm5ld09wdGlvbnNdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIG5ld09wdGlvbklkcyA9IG5ld09wdGlvbnMubWFwKChvcHRpb24pID0+IG9wdGlvbi5faWQpLmZpbHRlcigoaWQpID0+ICEhaWQpIGFzIHN0cmluZ1tdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc2VsZWN0RmllbGRWYWx1ZSA9IG5ld09wdGlvbklkcz8ubGVuZ3RoID8gWy4uLmV4aXN0T3B0aW9uSWRzLCAuLi5uZXdPcHRpb25JZHNdIDogZXhpc3RPcHRpb25JZHM7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YWx1ZTogc2VsZWN0RmllbGRWYWx1ZSxcbiAgICAgICAgICAgIG5ld0ZpZWxkXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgdmFsdWU6IEZpZWxkTW9kZWxNYXBbdGFyZ2V0RmllbGQudHlwZV0udG9GaWVsZFZhbHVlKHBsYWluVGV4dCwgdGFyZ2V0RmllbGQsIG9yaWdpbkRhdGEsIHJlZmVyZW5jZXMpLCBuZXdGaWVsZDogbnVsbCB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVBY3Rpb25zIHtcbiAgICB1cGRhdGVGaWVsZFZhbHVlOiAoZGF0YTogVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnMpID0+IHZvaWQ7XG4gICAgc2V0RmllbGQ6IChmaWVsZDogQUlUYWJsZUZpZWxkKSA9PiB2b2lkO1xuICAgIGFkZFJlY29yZDogKGRhdGE6IEFkZFJlY29yZE9wdGlvbnMpID0+IHZvaWQ7XG4gICAgYWRkRmllbGQ6IChkYXRhOiBBZGRGaWVsZE9wdGlvbnMpID0+IHZvaWQ7XG59XG5cbmZ1bmN0aW9uIGFwcGVuZFJlY29yZChhaVRhYmxlOiBBSVRhYmxlLCBhY3Rpb25zOiBBSVRhYmxlQWN0aW9ucykge1xuICAgIGNvbnN0IGFsbFJlY29yZHMgPSBhaVRhYmxlLnJlY29yZHMoKTtcbiAgICBjb25zdCBsYXN0UmVjb3JkSWQgPSBhbGxSZWNvcmRzLmxlbmd0aCA+IDAgPyBhbGxSZWNvcmRzW2FsbFJlY29yZHMubGVuZ3RoIC0gMV0uX2lkIDogJyc7XG4gICAgYWN0aW9ucy5hZGRSZWNvcmQoe1xuICAgICAgICBvcmlnaW5JZDogbGFzdFJlY29yZElkXG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIGFwcGVuZEZpZWxkKGFpVGFibGU6IEFJVGFibGUsIG9yaWdpbkZpZWxkOiBBSVRhYmxlRmllbGQgfCBudWxsLCBhY3Rpb25zOiBBSVRhYmxlQWN0aW9ucykge1xuICAgIGNvbnN0IGZpZWxkcyA9IGFpVGFibGUuZ3JpZERhdGEoKS5maWVsZHM7XG4gICAgY29uc3QgbGFzdEZpZWxkSWQgPSBmaWVsZHMubGVuZ3RoID4gMCA/IGZpZWxkc1tmaWVsZHMubGVuZ3RoIC0gMV0uX2lkIDogJyc7XG4gICAgbGV0IGRlZmF1bHRGaWVsZFZhbHVlOiBQYXJ0aWFsPEFJVGFibGVGaWVsZD47XG4gICAgaWYgKG9yaWdpbkZpZWxkKSB7XG4gICAgICAgIGNvbnN0IGZpZWxkT3B0aW9ucyA9IGdldEZpZWxkT3B0aW9ucyhhaVRhYmxlKTtcbiAgICAgICAgZGVmYXVsdEZpZWxkVmFsdWUgPSB7XG4gICAgICAgICAgICAuLi5vcmlnaW5GaWVsZCxcbiAgICAgICAgICAgIG5hbWU6IGNyZWF0ZURlZmF1bHRGaWVsZE5hbWUoYWlUYWJsZSwgZmllbGRPcHRpb25zLmZpbmQoKGl0ZW0pID0+IGl0ZW0udHlwZSA9PT0gb3JpZ2luRmllbGQudHlwZSkhKSxcbiAgICAgICAgICAgIF9pZDogaWRDcmVhdG9yKClcbiAgICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBkZWZhdWx0RmllbGRWYWx1ZSA9IGNyZWF0ZURlZmF1bHRGaWVsZChhaVRhYmxlLCBBSVRhYmxlRmllbGRUeXBlLnRleHQpO1xuICAgIH1cblxuICAgIGFjdGlvbnMuYWRkRmllbGQoe1xuICAgICAgICBvcmlnaW5JZDogbGFzdEZpZWxkSWQsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZGVmYXVsdEZpZWxkVmFsdWVcbiAgICB9KTtcbn1cblxuZXhwb3J0IGNvbnN0IHdyaXRlVG9BSVRhYmxlID0gYXN5bmMgKGFpVGFibGU6IEFJVGFibGUsIGFjdGlvbnM6IEFJVGFibGVBY3Rpb25zKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRDZWxscyA9IEFycmF5LmZyb20oYWlUYWJsZS5zZWxlY3Rpb24oKS5zZWxlY3RlZENlbGxzKTtcbiAgICBpZiAoIXNlbGVjdGVkQ2VsbHMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgeyBjbGlwYm9hcmRDb250ZW50LCBhaVRhYmxlQ29udGVudCB9ID0gYXdhaXQgcmVhZENsaXBib2FyZERhdGEoKTtcbiAgICBpZiAoIWNsaXBib2FyZENvbnRlbnQubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBbZmlyc3RDZWxsXSA9IHNlbGVjdGVkQ2VsbHM7XG4gICAgY29uc3QgW3N0YXJ0UmVjb3JkSWQsIHN0YXJ0RmllbGRJZF0gPSBmaXJzdENlbGwuc3BsaXQoJzonKTtcbiAgICBjb25zdCBzdGFydFJvd0luZGV4ID0gYWlUYWJsZS5jb250ZXh0IS52aXNpYmxlUm93c0luZGV4TWFwKCkuZ2V0KHN0YXJ0UmVjb3JkSWQpID8/IDA7XG4gICAgY29uc3Qgc3RhcnRDb2xJbmRleCA9IGFpVGFibGUuY29udGV4dCEudmlzaWJsZUNvbHVtbnNJbmRleE1hcCgpLmdldChzdGFydEZpZWxkSWQpID8/IDA7XG4gICAgY29uc3QgcmVmZXJlbmNlcyA9IGFpVGFibGUuY29udGV4dCEucmVmZXJlbmNlcygpO1xuICAgIGxldCBpc1Bhc3RlU3VjY2VzcyA9IGZhbHNlO1xuXG4gICAgY2xpcGJvYXJkQ29udGVudC5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0Um93SW5kZXggPSBzdGFydFJvd0luZGV4ICsgaTtcbiAgICAgICAgaWYgKHRhcmdldFJvd0luZGV4ID49IGFpVGFibGUuY29udGV4dCEubGluZWFyUm93cygpLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIGFwcGVuZFJlY29yZChhaVRhYmxlLCBhY3Rpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJvdy5mb3JFYWNoKChwbGFpblRleHQsIGopID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldENvbEluZGV4ID0gc3RhcnRDb2xJbmRleCArIGo7XG4gICAgICAgICAgICBpZiAodGFyZ2V0Q29sSW5kZXggPj0gQUlUYWJsZS5nZXRWaXNpYmxlRmllbGRzKGFpVGFibGUpLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdpbkZpZWxkID0gYWlUYWJsZUNvbnRlbnQ/LmZpZWxkc1tqXSB8fCBudWxsO1xuICAgICAgICAgICAgICAgIGFwcGVuZEZpZWxkKGFpVGFibGUsIG9yaWdpbkZpZWxkLCBhY3Rpb25zKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0UmVjb3JkID0gYWlUYWJsZS5jb250ZXh0IS5saW5lYXJSb3dzKClbdGFyZ2V0Um93SW5kZXhdO1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0RmllbGQgPSBBSVRhYmxlLmdldFZpc2libGVGaWVsZHMoYWlUYWJsZSlbdGFyZ2V0Q29sSW5kZXhdO1xuICAgICAgICAgICAgY29uc3QgcmVjb3JkSW5kZXggPSBpO1xuICAgICAgICAgICAgY29uc3QgZmllbGRJbmRleCA9IGo7XG4gICAgICAgICAgICBjb25zdCB7IHZhbHVlLCBuZXdGaWVsZCB9ID0gZ2V0UGFzdGVWYWx1ZShwbGFpblRleHQsIGFpVGFibGVDb250ZW50LCByZWNvcmRJbmRleCwgZmllbGRJbmRleCwgdGFyZ2V0RmllbGQsIHJlZmVyZW5jZXMpO1xuXG4gICAgICAgICAgICBpZiAobmV3RmllbGQpIHtcbiAgICAgICAgICAgICAgICBhY3Rpb25zLnNldEZpZWxkKG5ld0ZpZWxkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9ucy51cGRhdGVGaWVsZFZhbHVlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogW3RhcmdldFJlY29yZC5faWQsIHRhcmdldEZpZWxkLl9pZF1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlzUGFzdGVTdWNjZXNzID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge31cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gaXNQYXN0ZVN1Y2Nlc3M7XG59O1xuIl19
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9jbGlwYm9hcmQvcGFzdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUVILGdCQUFnQixFQVFuQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyx3QkFBd0IsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRXZGLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxPQUFlLEVBQUUsRUFBRTtJQUNoRCxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDekQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQy9CLENBQUMsQ0FBQztBQUVGLFNBQVMsK0JBQStCLENBQUMsYUFBcUI7SUFDMUQsTUFBTSxRQUFRLEdBQUcsYUFBYTtTQUN6QixLQUFLLENBQUMsSUFBSSxDQUFDO1NBQ1gsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FB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QVksR0FBRyxPQUFPLENBQUMsT0FBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25FLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUN0RSxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUM7WUFDdEIsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsYUFBYSxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFFdkgsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDWCxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQy9CLENBQUM7WUFFRCxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDO29CQUNELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQzt3QkFDckIsS0FBSzt3QkFDTCxJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUM7cUJBQzVDLENBQUMsQ0FBQztvQkFDSCxjQUFjLEdBQUcsSUFBSSxDQUFDO2dCQUMxQixDQUFDO2dCQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQSxDQUFDO1lBQ3RCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxjQUFjLENBQUM7QUFDMUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUNvbnRlbnQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBSVRhYmxlLCBjcmVhdGVEZWZhdWx0RmllbGQsIGNyZWF0ZURlZmF1bHRGaWVsZE5hbWUsIGdldEZpZWxkT3B0aW9ucywgZ2V0RmllbGRWYWx1ZSwgaWRDcmVhdG9yIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyByZWFkRnJvbUNsaXBib2FyZCwgYWlUYWJsZUZyYWdtZW50QXR0cmlidXRlLCBleHRyYWN0VGV4dCB9IGZyb20gJy4uL2NsaXBib2FyZCc7XG5pbXBvcnQgeyBwcm9jZXNzUGFzdGVkVmFsdWVGb3JTZWxlY3QgfSBmcm9tICcuLi9maWVsZC9tb2RlbC9zZWxlY3QnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4uL2ZpZWxkJztcbmltcG9ydCB7XG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVGaWVsZFR5cGUsXG4gICAgRmllbGRWYWx1ZSxcbiAgICBTZWxlY3RTZXR0aW5ncyxcbiAgICBBSVRhYmxlUmVjb3JkLFxuICAgIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zLFxuICAgIEFkZFJlY29yZE9wdGlvbnMsXG4gICAgQWRkRmllbGRPcHRpb25zLFxuICAgIEFJVGFibGVSZWZlcmVuY2VzXG59IGZyb20gJ0BhaS10YWJsZS91dGlscyc7XG5cbmNvbnN0IGFpVGFibGVBdHRyaWJ1dGVQYXR0ZXJuID0gbmV3IFJlZ0V4cChgJHthaVRhYmxlRnJhZ21lbnRBdHRyaWJ1dGV9PVwiKC4rPylcImAsICdtJyk7XG5cbmNvbnN0IGRlY29kZUNsaXBib2FyZEpzb25EYXRhID0gKGVuY29kZWQ6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IGRlY29kZWQgPSBkZWNvZGVVUklDb21wb25lbnQod2luZG93LmF0b2IoZW5jb2RlZCkpO1xuICAgIHJldHVybiBKU09OLnBhcnNlKGRlY29kZWQpO1xufTtcblxuZnVuY3Rpb24gZXh0cmFjdENvbnRlbnRGcm9tQ2xpcGJvYXJkVGV4dChjbGlwYm9hcmRUZXh0OiBzdHJpbmcpOiBzdHJpbmdbXVtdIHtcbiAgICBjb25zdCBjb250ZW50cyA9IGNsaXBib2FyZFRleHRcbiAgICAgICAgLnNwbGl0KCdcXG4nKVxuICAgICAgICAubWFwKChyb3cpID0+IHJvdy5zcGxpdCgnXFx0JykpXG4gICAgICAgIC5maWx0ZXIoKHJvdykgPT4gcm93Lmxlbmd0aCA+IDAgJiYgcm93LnNvbWUoKGNlbGwpID0+IGNlbGwudHJpbSgpLmxlbmd0aCA+IDApKTtcblxuICAgIHJldHVybiBjb250ZW50cztcbn1cblxuZnVuY3Rpb24gcHJvY2Vzc1RhYmxlQ2VsbChjZWxsSHRtbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBsaW5rUGF0dGVybiA9IC88YVtePl0qP2hyZWY9W1wiJ10oW15cIiddKylbXCInXVtePl0qPz4oW148XSo/KTxcXC9hPi9pO1xuICAgIGNvbnN0IG1hdGNoID0gY2VsbEh0bWwubWF0Y2gobGlua1BhdHRlcm4pO1xuICAgIGNvbnN0IGxpbmsgPSBtYXRjaCA/IHsgaHJlZjogbWF0Y2hbMV0sIHRleHQ6IG1hdGNoWzJdIH0gOiBudWxsO1xuICAgIGNvbnN0IGNvbnRlbnQgPSBsaW5rID8gY2VsbEh0bWwucmVwbGFjZShsaW5rUGF0dGVybiwgYFtMSU5LOiR7bGluay50ZXh0fV0oJHtsaW5rLmhyZWZ9KWApIDogY2VsbEh0bWw7XG5cbiAgICBjb25zdCBjbGVhbkNvbnRlbnQgPSBjb250ZW50XG4gICAgICAgIC5yZXBsYWNlKC88W14+XSs+L2csICcnKVxuICAgICAgICAucmVwbGFjZSgvJm5ic3A7L2csICcgJylcbiAgICAgICAgLnJlcGxhY2UoL1xccysvZywgJyAnKVxuICAgICAgICAudHJpbSgpO1xuXG4gICAgcmV0dXJuIGxpbmsgPyBjbGVhbkNvbnRlbnQucmVwbGFjZShgW0xJTks6JHtsaW5rLnRleHR9XSgke2xpbmsuaHJlZn0pYCwgYDxhIGhyZWY9XCIke2xpbmsuaHJlZn1cIj4ke2xpbmsudGV4dH08L2E+YCkgOiBjbGVhbkNvbnRlbnQ7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RDb250ZW50RnJvbUNsaXBib2FyZEh0bWwoY2xpcGJvYXJkSHRtbDogc3RyaW5nKTogc3RyaW5nW11bXSB7XG4gICAgY29uc3QgdGFibGVQYXR0ZXJuID0gLzx0YWJsZVtePl0qPihbXFxzXFxTXSo/KTxcXC90YWJsZT4vaTtcbiAgICBjb25zdCB0clBhdHRlcm4gPSAvPHRyW14+XSo+KFtcXHNcXFNdKj8pPFxcL3RyPi9naTtcbiAgICBjb25zdCB0ZFBhdHRlcm4gPSAvPHRkW14+XSo/PihbXFxzXFxTXSo/KTxcXC90ZD4vZ2k7XG5cbiAgICB0cnkge1xuICAgICAgICBjb25zdCB0YWJsZU1hdGNoID0gY2xpcGJvYXJkSHRtbC5tYXRjaCh0YWJsZVBhdHRlcm4pO1xuICAgICAgICBjb25zdCB0YWJsZUNvbnRlbnQgPSB0YWJsZU1hdGNoID8gdGFibGVNYXRjaFsxXSA6IGNsaXBib2FyZEh0bWw7XG4gICAgICAgIGNvbnN0IHJvd3MgPSB0YWJsZUNvbnRlbnQubWF0Y2godHJQYXR0ZXJuKSB8fCBbXTtcblxuICAgICAgICByZXR1cm4gcm93c1xuICAgICAgICAgICAgLm1hcCgocm93KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udGVudHM6IHN0cmluZ1tdID0gW107XG4gICAgICAgICAgICAgICAgbGV0IHRkTWF0Y2g7XG5cbiAgICAgICAgICAgICAgICB3aGlsZSAoKHRkTWF0Y2ggPSB0ZFBhdHRlcm4uZXhlYyhyb3cpKSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50cy5wdXNoKHByb2Nlc3NUYWJsZUNlbGwodGRNYXRjaFsxXSkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBjb250ZW50cztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuZmlsdGVyKChyb3cpID0+IHJvdy5sZW5ndGggPiAwKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ0ZhaWxlZCB0byBleHRyYWN0IGNvbnRlbnQgZnJvbSBIVE1MOicsIGVycm9yKTtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZXh0cmFjdEFJVGFibGVDb250ZW50RnJvbUNsaXBib2FyZEh0bWwoY2xpcGJvYXJkSHRtbDogc3RyaW5nKTogQUlUYWJsZUNvbnRlbnQgfCBudWxsIHtcbiAgICBjb25zdCBhaVRhYmxlRnJhZ21lbnQgPSBjbGlwYm9hcmRIdG1sLm1hdGNoKGFpVGFibGVBdHRyaWJ1dGVQYXR0ZXJuKTtcbiAgICBpZiAoYWlUYWJsZUZyYWdtZW50ICYmICEhYWlUYWJsZUZyYWdtZW50Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gZGVjb2RlQ2xpcGJvYXJkSnNvbkRhdGEoYWlUYWJsZUZyYWdtZW50WzFdKTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG5cbmNvbnN0IHJlYWRDbGlwYm9hcmREYXRhID0gYXN5bmMgKCk6IFByb21pc2U8eyBjbGlwYm9hcmRDb250ZW50OiBzdHJpbmdbXVtdOyBhaVRhYmxlQ29udGVudDogQUlUYWJsZUNvbnRlbnQgfCBudWxsIH0+ID0+IHtcbiAgICBjb25zdCBjbGlwYm9hcmREYXRhID0gYXdhaXQgcmVhZEZyb21DbGlwYm9hcmQoKTtcbiAgICBsZXQgY2xpcGJvYXJkQ29udGVudDogc3RyaW5nW11bXSA9IFtdO1xuICAgIGxldCBhaVRhYmxlQ29udGVudDogQUlUYWJsZUNvbnRlbnQgfCBudWxsID0gbnVsbDtcblxuICAgIGlmIChjbGlwYm9hcmREYXRhKSB7XG4gICAgICAgIGNvbnN0IGNsaXBib2FyZEh0bWwgPSBjbGlwYm9hcmREYXRhLmh0bWw7XG4gICAgICAgIGNvbnN0IGNsaXBib2FyZFRleHQgPSBjbGlwYm9hcmREYXRhLnRleHQ7XG5cbiAgICAgICAgaWYgKGNsaXBib2FyZEh0bWwpIHtcbiAgICAgICAgICAgIGFpVGFibGVDb250ZW50ID0gZXh0cmFjdEFJVGFibGVDb250ZW50RnJvbUNsaXBib2FyZEh0bWwoY2xpcGJvYXJkSHRtbCk7XG4gICAgICAgICAgICBjbGlwYm9hcmRDb250ZW50ID0gZXh0cmFjdENvbnRlbnRGcm9tQ2xpcGJvYXJkSHRtbChjbGlwYm9hcmRIdG1sKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghY2xpcGJvYXJkQ29udGVudC5sZW5ndGggJiYgY2xpcGJvYXJkVGV4dCkge1xuICAgICAgICAgICAgY2xpcGJvYXJkQ29udGVudCA9IGV4dHJhY3RDb250ZW50RnJvbUNsaXBib2FyZFRleHQoY2xpcGJvYXJkVGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBjbGlwYm9hcmRDb250ZW50LFxuICAgICAgICBhaVRhYmxlQ29udGVudFxuICAgIH07XG59O1xuXG5mdW5jdGlvbiBnZXRQYXN0ZVZhbHVlKFxuICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgIGFpVGFibGVDb250ZW50OiBBSVRhYmxlQ29udGVudCB8IG51bGwsXG4gICAgcmVjb3JkSW5kZXg6IG51bWJlcixcbiAgICBmaWVsZEluZGV4OiBudW1iZXIsXG4gICAgdGFyZ2V0RmllbGQ6IEFJVGFibGVGaWVsZCxcbiAgICByZWZlcmVuY2VzOiBBSVRhYmxlUmVmZXJlbmNlc1xuKToge1xuICAgIHZhbHVlOiBGaWVsZFZhbHVlIHwgbnVsbDtcbiAgICBuZXdGaWVsZDogQUlUYWJsZUZpZWxkIHwgbnVsbDtcbn0ge1xuICAgIGxldCBmaWVsZDogQUlUYWJsZUZpZWxkIHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IHJlY29yZDogUGFydGlhbDxBSVRhYmxlUmVjb3JkPiB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKGFpVGFibGVDb250ZW50KSB7XG4gICAgICAgIGNvbnN0IHsgZmllbGRzLCByZWNvcmRzIH0gPSBhaVRhYmxlQ29udGVudDtcbiAgICAgICAgZmllbGQgPSBmaWVsZHNbZmllbGRJbmRleF07XG4gICAgICAgIHJlY29yZCA9IHJlY29yZHNbcmVjb3JkSW5kZXhdO1xuICAgIH1cblxuICAgIGlmICh0YXJnZXRGaWVsZC50eXBlICE9PSBBSVRhYmxlRmllbGRUeXBlLmxpbmspIHtcbiAgICAgICAgcGxhaW5UZXh0ID0gZXh0cmFjdFRleHQocGxhaW5UZXh0KTtcbiAgICB9XG5cbiAgICBsZXQgb3JpZ2luRGF0YSA9IGZpZWxkICYmIHJlY29yZCA/IHsgZmllbGQsIGNlbGxWYWx1ZTogZ2V0RmllbGRWYWx1ZShyZWNvcmQsIGZpZWxkKSB9IDogbnVsbDtcbiAgICBpZiAodGFyZ2V0RmllbGQudHlwZSA9PT0gQUlUYWJsZUZpZWxkVHlwZS5zZWxlY3QpIHtcbiAgICAgICAgbGV0IHsgZXhpc3RPcHRpb25JZHMsIG5ld09wdGlvbnMgfSA9IHByb2Nlc3NQYXN0ZWRWYWx1ZUZvclNlbGVjdChwbGFpblRleHQsIHRhcmdldEZpZWxkLCBvcmlnaW5EYXRhKTtcbiAgICAgICAgbGV0IG5ld0ZpZWxkOiBBSVRhYmxlRmllbGQgfCBudWxsID0gbnVsbDtcbiAgICAgICAgbGV0IG5ld09wdGlvbklkczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBpZiAobmV3T3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgIG5ld0ZpZWxkID0ge1xuICAgICAgICAgICAgICAgIC4uLnRhcmdldEZpZWxkLFxuICAgICAgICAgICAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnRhcmdldEZpZWxkLnNldHRpbmdzLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBbLi4uKCh0YXJnZXRGaWVsZC5zZXR0aW5ncyBhcyBTZWxlY3RTZXR0aW5ncyk/Lm9wdGlvbnMgfHwgW10pLCAuLi5uZXdPcHRpb25zXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBuZXdPcHRpb25JZHMgPSBuZXdPcHRpb25zLm1hcCgob3B0aW9uKSA9PiBvcHRpb24uX2lkKS5maWx0ZXIoKGlkKSA9PiAhIWlkKSBhcyBzdHJpbmdbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNlbGVjdEZpZWxkVmFsdWUgPSBuZXdPcHRpb25JZHM/Lmxlbmd0aCA/IFsuLi5leGlzdE9wdGlvbklkcywgLi4ubmV3T3B0aW9uSWRzXSA6IGV4aXN0T3B0aW9uSWRzO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWU6IHNlbGVjdEZpZWxkVmFsdWUsXG4gICAgICAgICAgICBuZXdGaWVsZFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7IHZhbHVlOiBGaWVsZE1vZGVsTWFwW3RhcmdldEZpZWxkLnR5cGVdLnRvRmllbGRWYWx1ZShwbGFpblRleHQsIHRhcmdldEZpZWxkLCBvcmlnaW5EYXRhLCByZWZlcmVuY2VzKSwgbmV3RmllbGQ6IG51bGwgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQWN0aW9ucyB7XG4gICAgdXBkYXRlRmllbGRWYWx1ZTogKGRhdGE6IFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zKSA9PiB2b2lkO1xuICAgIHNldEZpZWxkOiAoZmllbGQ6IEFJVGFibGVGaWVsZCkgPT4gdm9pZDtcbiAgICBhZGRSZWNvcmQ6IChkYXRhOiBBZGRSZWNvcmRPcHRpb25zKSA9PiB2b2lkO1xuICAgIGFkZEZpZWxkOiAoZGF0YTogQWRkRmllbGRPcHRpb25zKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBhcHBlbmRSZWNvcmQoYWlUYWJsZTogQUlUYWJsZSwgYWN0aW9uczogQUlUYWJsZUFjdGlvbnMpIHtcbiAgICBjb25zdCBhbGxSZWNvcmRzID0gYWlUYWJsZS5yZWNvcmRzKCk7XG4gICAgY29uc3QgbGFzdFJlY29yZElkID0gYWxsUmVjb3Jkcy5sZW5ndGggPiAwID8gYWxsUmVjb3Jkc1thbGxSZWNvcmRzLmxlbmd0aCAtIDFdLl9pZCA6ICcnO1xuICAgIGFjdGlvbnMuYWRkUmVjb3JkKHtcbiAgICAgICAgb3JpZ2luSWQ6IGxhc3RSZWNvcmRJZFxuICAgIH0pO1xufVxuXG5mdW5jdGlvbiBhcHBlbmRGaWVsZChhaVRhYmxlOiBBSVRhYmxlLCBvcmlnaW5GaWVsZDogQUlUYWJsZUZpZWxkIHwgbnVsbCwgYWN0aW9uczogQUlUYWJsZUFjdGlvbnMpIHtcbiAgICBjb25zdCBmaWVsZHMgPSBhaVRhYmxlLmdyaWREYXRhKCkuZmllbGRzO1xuICAgIGNvbnN0IGxhc3RGaWVsZElkID0gZmllbGRzLmxlbmd0aCA+IDAgPyBmaWVsZHNbZmllbGRzLmxlbmd0aCAtIDFdLl9pZCA6ICcnO1xuICAgIGxldCBkZWZhdWx0RmllbGRWYWx1ZTogUGFydGlhbDxBSVRhYmxlRmllbGQ+O1xuICAgIGlmIChvcmlnaW5GaWVsZCkge1xuICAgICAgICBjb25zdCBmaWVsZE9wdGlvbnMgPSBnZXRGaWVsZE9wdGlvbnMoYWlUYWJsZSk7XG4gICAgICAgIGRlZmF1bHRGaWVsZFZhbHVlID0ge1xuICAgICAgICAgICAgLi4ub3JpZ2luRmllbGQsXG4gICAgICAgICAgICBuYW1lOiBjcmVhdGVEZWZhdWx0RmllbGROYW1lKGFpVGFibGUsIGZpZWxkT3B0aW9ucy5maW5kKChpdGVtKSA9PiBpdGVtLnR5cGUgPT09IG9yaWdpbkZpZWxkLnR5cGUpISksXG4gICAgICAgICAgICBfaWQ6IGlkQ3JlYXRvcigpXG4gICAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZGVmYXVsdEZpZWxkVmFsdWUgPSBjcmVhdGVEZWZhdWx0RmllbGQoYWlUYWJsZSwgQUlUYWJsZUZpZWxkVHlwZS50ZXh0KTtcbiAgICB9XG5cbiAgICBhY3Rpb25zLmFkZEZpZWxkKHtcbiAgICAgICAgb3JpZ2luSWQ6IGxhc3RGaWVsZElkLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IGRlZmF1bHRGaWVsZFZhbHVlXG4gICAgfSk7XG59XG5cbmV4cG9ydCBjb25zdCB3cml0ZVRvQUlUYWJsZSA9IGFzeW5jIChhaVRhYmxlOiBBSVRhYmxlLCBhY3Rpb25zOiBBSVRhYmxlQWN0aW9ucykgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkQ2VsbHMgPSBBcnJheS5mcm9tKGFpVGFibGUuc2VsZWN0aW9uKCkuc2VsZWN0ZWRDZWxscyk7XG4gICAgaWYgKCFzZWxlY3RlZENlbGxzLmxlbmd0aCkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHsgY2xpcGJvYXJkQ29udGVudCwgYWlUYWJsZUNvbnRlbnQgfSA9IGF3YWl0IHJlYWRDbGlwYm9hcmREYXRhKCk7XG4gICAgaWYgKCFjbGlwYm9hcmRDb250ZW50Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgW2ZpcnN0Q2VsbF0gPSBzZWxlY3RlZENlbGxzO1xuICAgIGNvbnN0IFtzdGFydFJlY29yZElkLCBzdGFydEZpZWxkSWRdID0gZmlyc3RDZWxsLnNwbGl0KCc6Jyk7XG4gICAgY29uc3Qgc3RhcnRSb3dJbmRleCA9IGFpVGFibGUuY29udGV4dCEudmlzaWJsZVJvd3NJbmRleE1hcCgpLmdldChzdGFydFJlY29yZElkKSA/PyAwO1xuICAgIGNvbnN0IHN0YXJ0Q29sSW5kZXggPSBhaVRhYmxlLmNvbnRleHQhLnZpc2libGVDb2x1bW5zSW5kZXhNYXAoKS5nZXQoc3RhcnRGaWVsZElkKSA/PyAwO1xuICAgIGNvbnN0IHJlZmVyZW5jZXMgPSBhaVRhYmxlLmNvbnRleHQhLnJlZmVyZW5jZXMoKTtcbiAgICBsZXQgaXNQYXN0ZVN1Y2Nlc3MgPSBmYWxzZTtcblxuICAgIGNsaXBib2FyZENvbnRlbnQuZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldFJvd0luZGV4ID0gc3RhcnRSb3dJbmRleCArIGk7XG4gICAgICAgIGlmICh0YXJnZXRSb3dJbmRleCA+PSBhaVRhYmxlLmNvbnRleHQhLmxpbmVhclJvd3MoKS5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICBhcHBlbmRSZWNvcmQoYWlUYWJsZSwgYWN0aW9ucyk7XG4gICAgICAgIH1cblxuICAgICAgICByb3cuZm9yRWFjaCgocGxhaW5UZXh0LCBqKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0YXJnZXRDb2xJbmRleCA9IHN0YXJ0Q29sSW5kZXggKyBqO1xuICAgICAgICAgICAgaWYgKHRhcmdldENvbEluZGV4ID49IEFJVGFibGUuZ2V0VmlzaWJsZUZpZWxkcyhhaVRhYmxlKS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBvcmlnaW5GaWVsZCA9IGFpVGFibGVDb250ZW50Py5maWVsZHNbal0gfHwgbnVsbDtcbiAgICAgICAgICAgICAgICBhcHBlbmRGaWVsZChhaVRhYmxlLCBvcmlnaW5GaWVsZCwgYWN0aW9ucyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHRhcmdldFJlY29yZCA9IGFpVGFibGUuY29udGV4dCEubGluZWFyUm93cygpW3RhcmdldFJvd0luZGV4XTtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldEZpZWxkID0gQUlUYWJsZS5nZXRWaXNpYmxlRmllbGRzKGFpVGFibGUpW3RhcmdldENvbEluZGV4XTtcbiAgICAgICAgICAgIGNvbnN0IHJlY29yZEluZGV4ID0gaTtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkSW5kZXggPSBqO1xuICAgICAgICAgICAgY29uc3QgeyB2YWx1ZSwgbmV3RmllbGQgfSA9IGdldFBhc3RlVmFsdWUocGxhaW5UZXh0LCBhaVRhYmxlQ29udGVudCwgcmVjb3JkSW5kZXgsIGZpZWxkSW5kZXgsIHRhcmdldEZpZWxkLCByZWZlcmVuY2VzKTtcblxuICAgICAgICAgICAgaWYgKG5ld0ZpZWxkKSB7XG4gICAgICAgICAgICAgICAgYWN0aW9ucy5zZXRGaWVsZChuZXdGaWVsZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbnMudXBkYXRlRmllbGRWYWx1ZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg6IFt0YXJnZXRSZWNvcmQuX2lkLCB0YXJnZXRGaWVsZC5faWRdXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBpc1Bhc3RlU3VjY2VzcyA9IHRydWU7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHt9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGlzUGFzdGVTdWNjZXNzO1xufTtcbiJdfQ==
@@ -1,4 +1,3 @@
1
- import { isArray, isEmpty as isArrayEmpty, isObject, isUndefinedOrNull } from 'ngx-tethys/util';
2
1
  import { AI_TABLE_BLANK } from '../constants';
3
2
  /**
4
3
  * 生成目标名称
@@ -48,13 +47,4 @@ export const castToString = (value) => {
48
47
  }
49
48
  return typeof value !== 'string' ? String(value) : value;
50
49
  };
51
- export function isEmpty(value) {
52
- if (isArray(value)) {
53
- return isArrayEmpty(value);
54
- }
55
- if (isObject(value)) {
56
- return Reflect.ownKeys(value).length === 0;
57
- }
58
- return isUndefinedOrNull(value) || value === '';
59
- }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzlDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQTRCLEVBQUUsRUFBRTtJQUNsSCxNQUFNLElBQUksR0FBRyxHQUFHLENBQUM7SUFDakIsT0FBTyxHQUFHLFVBQVUsSUFBSSxPQUFPLElBQUksSUFBSSxJQUFJLFFBQVEsSUFBSSxJQUFJLElBQUksVUFBVSxJQUFJLElBQUksSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7QUFDMUcsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxVQUEwQixFQUFFLEVBQUU7SUFDeEQsSUFBSSxVQUFVLElBQUksSUFBSSxJQUFJLFVBQVUsS0FBSyxFQUFFO1FBQUUsT0FBTyxjQUFjLENBQUM7SUFDbkUsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BDLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxXQUEwQixFQUEyQixFQUFFO0lBQ3pGLElBQUksV0FBVyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3RCLE9BQU87WUFDSCxVQUFVLEVBQUUsSUFBSTtZQUNoQixPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLElBQUk7U0FDbkIsQ0FBQztJQUNOLENBQUM7SUFFRCxNQUFNLElBQUksR0FBRyxHQUFHLENBQUM7SUFDakIsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25GLE9BQU87UUFDSCxVQUFVO1FBQ1YsT0FBTyxFQUFFLE9BQU8sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTztRQUMxQyxRQUFRLEVBQUUsUUFBUSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRO1FBQzdDLFVBQVUsRUFBRSxVQUFVLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVU7UUFDbkQsTUFBTSxFQUFFLE1BQU0sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTTtLQUMxQyxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQWEsRUFBaUIsRUFBRTtJQUN6RCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzdELENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxPQUFPLENBQUMsS0FBVTtJQUM5QixJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2pCLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2xCLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxPQUFPLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7QUFDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQXJyYXksIGlzRW1wdHkgYXMgaXNBcnJheUVtcHR5LCBpc09iamVjdCwgaXNVbmRlZmluZWRPck51bGwgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgQUlfVEFCTEVfQkxBTksgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQUlUYWJsZVRhcmdldE5hbWVEZXRhaWwsIEFJVGFibGVUYXJnZXROYW1lT3B0aW9ucyB9IGZyb20gJy4uL3R5cGVzJztcblxuLyoqXG4gKiDnlJ/miJDnm67moIflkI3np7BcbiAqL1xuZXhwb3J0IGNvbnN0IGdlbmVyYXRlVGFyZ2V0TmFtZSA9ICh7IHRhcmdldE5hbWUsIGZpZWxkSWQsIHJlY29yZElkLCBtb3VzZVN0eWxlLCBzb3VyY2UgfTogQUlUYWJsZVRhcmdldE5hbWVPcHRpb25zKSA9PiB7XG4gICAgY29uc3QgZmxhZyA9ICckJztcbiAgICByZXR1cm4gYCR7dGFyZ2V0TmFtZX0uJHtmaWVsZElkIHx8IGZsYWd9LiR7cmVjb3JkSWQgfHwgZmxhZ30uJHttb3VzZVN0eWxlIHx8IGZsYWd9LiR7c291cmNlIHx8IGZsYWd9YDtcbn07XG5cbi8qKlxuICogIOWPluebruagh+WQjeensFxuICovXG5leHBvcnQgY29uc3QgZ2V0VGFyZ2V0TmFtZSA9ICh0YXJnZXROYW1lPzogc3RyaW5nIHwgbnVsbCkgPT4ge1xuICAgIGlmICh0YXJnZXROYW1lID09IG51bGwgfHwgdGFyZ2V0TmFtZSA9PT0gJycpIHJldHVybiBBSV9UQUJMRV9CTEFOSztcbiAgICByZXR1cm4gdGFyZ2V0TmFtZS5zcGxpdCgnLicpWzBdO1xufTtcblxuLyoqXG4gKiBQYXJzZSB0YXJnZXROYW1lIGZvciBidWlsdC1pbiBpbmZvcm1hdGlvblxuICovXG5leHBvcnQgY29uc3QgZ2V0RGV0YWlsQnlUYXJnZXROYW1lID0gKF90YXJnZXROYW1lOiBzdHJpbmcgfCBudWxsKTogQUlUYWJsZVRhcmdldE5hbWVEZXRhaWwgPT4ge1xuICAgIGlmIChfdGFyZ2V0TmFtZSA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0YXJnZXROYW1lOiBudWxsLFxuICAgICAgICAgICAgZmllbGRJZDogbnVsbCxcbiAgICAgICAgICAgIHJlY29yZElkOiBudWxsLFxuICAgICAgICAgICAgbW91c2VTdHlsZTogbnVsbFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IGZsYWcgPSAnJCc7XG4gICAgY29uc3QgW3RhcmdldE5hbWUsIGZpZWxkSWQsIHJlY29yZElkLCBtb3VzZVN0eWxlLCBzb3VyY2VdID0gX3RhcmdldE5hbWUuc3BsaXQoJy4nKTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0YXJnZXROYW1lLFxuICAgICAgICBmaWVsZElkOiBmaWVsZElkID09PSBmbGFnID8gbnVsbCA6IGZpZWxkSWQsXG4gICAgICAgIHJlY29yZElkOiByZWNvcmRJZCA9PT0gZmxhZyA/IG51bGwgOiByZWNvcmRJZCxcbiAgICAgICAgbW91c2VTdHlsZTogbW91c2VTdHlsZSA9PT0gZmxhZyA/IG51bGwgOiBtb3VzZVN0eWxlLFxuICAgICAgICBzb3VyY2U6IHNvdXJjZSA9PT0gZmxhZyA/IG51bGwgOiBzb3VyY2VcbiAgICB9O1xufTtcblxuLyoqXG4gKiDovazmjaLkuLrlrZfnrKbkuLJcbiAqIEBwYXJhbSB2YWx1ZVxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGNvbnN0IGNhc3RUb1N0cmluZyA9ICh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnID8gU3RyaW5nKHZhbHVlKSA6IHZhbHVlO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHkodmFsdWU6IGFueSkge1xuICAgIGlmIChpc0FycmF5KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gaXNBcnJheUVtcHR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoaXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModmFsdWUpLmxlbmd0aCA9PT0gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNVbmRlZmluZWRPck51bGwodmFsdWUpIHx8IHZhbHVlID09PSAnJztcbn1cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHOUM7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBNEIsRUFBRSxFQUFFO0lBQ2xILE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUNqQixPQUFPLEdBQUcsVUFBVSxJQUFJLE9BQU8sSUFBSSxJQUFJLElBQUksUUFBUSxJQUFJLElBQUksSUFBSSxVQUFVLElBQUksSUFBSSxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQztBQUMxRyxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLFVBQTBCLEVBQUUsRUFBRTtJQUN4RCxJQUFJLFVBQVUsSUFBSSxJQUFJLElBQUksVUFBVSxLQUFLLEVBQUU7UUFBRSxPQUFPLGNBQWMsQ0FBQztJQUNuRSxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDcEMsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFdBQTBCLEVBQTJCLEVBQUU7SUFDekYsSUFBSSxXQUFXLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdEIsT0FBTztZQUNILFVBQVUsRUFBRSxJQUFJO1lBQ2hCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLElBQUk7WUFDZCxVQUFVLEVBQUUsSUFBSTtTQUNuQixDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUNqQixNQUFNLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkYsT0FBTztRQUNILFVBQVU7UUFDVixPQUFPLEVBQUUsT0FBTyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPO1FBQzFDLFFBQVEsRUFBRSxRQUFRLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVE7UUFDN0MsVUFBVSxFQUFFLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUNuRCxNQUFNLEVBQUUsTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNO0tBQzFDLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsS0FBYSxFQUFpQixFQUFFO0lBQ3pELElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2hCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDN0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBcnJheSwgaXNFbXB0eSBhcyBpc0FycmF5RW1wdHksIGlzT2JqZWN0LCBpc1VuZGVmaW5lZE9yTnVsbCB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBBSV9UQUJMRV9CTEFOSyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlVGFyZ2V0TmFtZURldGFpbCwgQUlUYWJsZVRhcmdldE5hbWVPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIOeUn+aIkOebruagh+WQjeensFxuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVUYXJnZXROYW1lID0gKHsgdGFyZ2V0TmFtZSwgZmllbGRJZCwgcmVjb3JkSWQsIG1vdXNlU3R5bGUsIHNvdXJjZSB9OiBBSVRhYmxlVGFyZ2V0TmFtZU9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBmbGFnID0gJyQnO1xuICAgIHJldHVybiBgJHt0YXJnZXROYW1lfS4ke2ZpZWxkSWQgfHwgZmxhZ30uJHtyZWNvcmRJZCB8fCBmbGFnfS4ke21vdXNlU3R5bGUgfHwgZmxhZ30uJHtzb3VyY2UgfHwgZmxhZ31gO1xufTtcblxuLyoqXG4gKiAg5Y+W55uu5qCH5ZCN56ewXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRUYXJnZXROYW1lID0gKHRhcmdldE5hbWU/OiBzdHJpbmcgfCBudWxsKSA9PiB7XG4gICAgaWYgKHRhcmdldE5hbWUgPT0gbnVsbCB8fCB0YXJnZXROYW1lID09PSAnJykgcmV0dXJuIEFJX1RBQkxFX0JMQU5LO1xuICAgIHJldHVybiB0YXJnZXROYW1lLnNwbGl0KCcuJylbMF07XG59O1xuXG4vKipcbiAqIFBhcnNlIHRhcmdldE5hbWUgZm9yIGJ1aWx0LWluIGluZm9ybWF0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBnZXREZXRhaWxCeVRhcmdldE5hbWUgPSAoX3RhcmdldE5hbWU6IHN0cmluZyB8IG51bGwpOiBBSVRhYmxlVGFyZ2V0TmFtZURldGFpbCA9PiB7XG4gICAgaWYgKF90YXJnZXROYW1lID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRhcmdldE5hbWU6IG51bGwsXG4gICAgICAgICAgICBmaWVsZElkOiBudWxsLFxuICAgICAgICAgICAgcmVjb3JkSWQ6IG51bGwsXG4gICAgICAgICAgICBtb3VzZVN0eWxlOiBudWxsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgZmxhZyA9ICckJztcbiAgICBjb25zdCBbdGFyZ2V0TmFtZSwgZmllbGRJZCwgcmVjb3JkSWQsIG1vdXNlU3R5bGUsIHNvdXJjZV0gPSBfdGFyZ2V0TmFtZS5zcGxpdCgnLicpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHRhcmdldE5hbWUsXG4gICAgICAgIGZpZWxkSWQ6IGZpZWxkSWQgPT09IGZsYWcgPyBudWxsIDogZmllbGRJZCxcbiAgICAgICAgcmVjb3JkSWQ6IHJlY29yZElkID09PSBmbGFnID8gbnVsbCA6IHJlY29yZElkLFxuICAgICAgICBtb3VzZVN0eWxlOiBtb3VzZVN0eWxlID09PSBmbGFnID8gbnVsbCA6IG1vdXNlU3R5bGUsXG4gICAgICAgIHNvdXJjZTogc291cmNlID09PSBmbGFnID8gbnVsbCA6IHNvdXJjZVxuICAgIH07XG59O1xuXG4vKipcbiAqIOi9rOaNouS4uuWtl+espuS4slxuICogQHBhcmFtIHZhbHVlXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgY29uc3QgY2FzdFRvU3RyaW5nID0gKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsID0+IHtcbiAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycgPyBTdHJpbmcodmFsdWUpIDogdmFsdWU7XG59O1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtb3BlcmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9maWVsZC9maWVsZC1vcGVyYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkLCBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uLCBBSVRhYmxlUmVmZXJlbmNlcywgRmllbGRCYXNlLCBGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL3V0aWxzJztcbmltcG9ydCB7IEFJVGFibGUgfSBmcm9tICcuLi8uLi9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZE9wZXJhYmxlPFRGQyA9IHN0cmluZywgVENWIGV4dGVuZHMgRmllbGRWYWx1ZSA9IEZpZWxkVmFsdWU+IGV4dGVuZHMgRmllbGRCYXNlIHtcbiAgICBpc01lZXRGaWx0ZXIoXG4gICAgICAgIGNvbmRpdGlvbjogQUlUYWJsZUZpbHRlckNvbmRpdGlvbjxURkM+LFxuICAgICAgICBjZWxsVmFsdWU6IFRDVixcbiAgICAgICAgb3B0aW9ucz86IHtcbiAgICAgICAgICAgIGFpVGFibGU6IEFJVGFibGU7XG4gICAgICAgICAgICBmaWVsZDogQUlUYWJsZUZpZWxkO1xuICAgICAgICB9XG4gICAgKTogYm9vbGVhbjtcbiAgICBjb21wYXJlKFxuICAgICAgICBjZWxsVmFsdWUxOiBUQ1YsXG4gICAgICAgIGNlbGxWYWx1ZTI6IFRDVixcbiAgICAgICAgcmVmZXJlbmNlczogQUlUYWJsZVJlZmVyZW5jZXMsXG4gICAgICAgIHNvcnRLZXk6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICAgICAgb3B0aW9uczogeyBhaVRhYmxlOiBBSVRhYmxlOyBmaWVsZDogQUlUYWJsZUZpZWxkIH1cbiAgICApOiBudW1iZXI7XG5cbiAgICB0b0ZpZWxkVmFsdWUoXG4gICAgICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgICAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgICAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IFRDViB9IHwgbnVsbCxcbiAgICAgICAgcmVmZXJlbmNlcz86IEFJVGFibGVSZWZlcmVuY2VzXG4gICAgKTogVENWIHwgbnVsbDtcbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { AITableFieldType, FieldModelBaseMap } from '@ai-table/utils';
2
+ import { AttachmentField, DateField, LinkField, MemberField, NumberField, ProgressField, RateField, RichTextField, SelectField, TextField } from './model';
3
+ export const FieldModelMap = {
4
+ ...FieldModelBaseMap,
5
+ [AITableFieldType.text]: new TextField(),
6
+ [AITableFieldType.richText]: new RichTextField(),
7
+ [AITableFieldType.select]: new SelectField(),
8
+ [AITableFieldType.date]: new DateField(),
9
+ [AITableFieldType.createdAt]: new DateField(),
10
+ [AITableFieldType.updatedAt]: new DateField(),
11
+ [AITableFieldType.number]: new NumberField(),
12
+ [AITableFieldType.rate]: new RateField(),
13
+ [AITableFieldType.link]: new LinkField(),
14
+ [AITableFieldType.member]: new MemberField(),
15
+ [AITableFieldType.progress]: new ProgressField(),
16
+ [AITableFieldType.createdBy]: new MemberField(),
17
+ [AITableFieldType.updatedBy]: new MemberField(),
18
+ [AITableFieldType.attachment]: new AttachmentField()
19
+ };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9maWVsZC9maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV0RSxPQUFPLEVBQ0gsZUFBZSxFQUNmLFNBQVMsRUFDVCxTQUFTLEVBQ1QsV0FBVyxFQUNYLFdBQVcsRUFDWCxhQUFhLEVBQ2IsU0FBUyxFQUNULGFBQWEsRUFDYixXQUFXLEVBQ1gsU0FBUyxFQUNaLE1BQU0sU0FBUyxDQUFDO0FBRWpCLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBOEQ7SUFDcEYsR0FBRyxpQkFBaUI7SUFDcEIsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUN4QyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksYUFBYSxFQUFFO0lBQ2hELENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUN4QyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQzdDLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDN0MsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUM1QyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQ3hDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUM1QyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksYUFBYSxFQUFFO0lBQ2hELENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDL0MsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLFdBQVcsRUFBRTtJQUMvQyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksZUFBZSxFQUFFO0NBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGRUeXBlLCBGaWVsZE1vZGVsQmFzZU1hcCB9IGZyb20gJ0BhaS10YWJsZS91dGlscyc7XG5pbXBvcnQgeyBGaWVsZE9wZXJhYmxlIH0gZnJvbSAnLi9maWVsZC1vcGVyYWJsZSc7XG5pbXBvcnQge1xuICAgIEF0dGFjaG1lbnRGaWVsZCxcbiAgICBEYXRlRmllbGQsXG4gICAgTGlua0ZpZWxkLFxuICAgIE1lbWJlckZpZWxkLFxuICAgIE51bWJlckZpZWxkLFxuICAgIFByb2dyZXNzRmllbGQsXG4gICAgUmF0ZUZpZWxkLFxuICAgIFJpY2hUZXh0RmllbGQsXG4gICAgU2VsZWN0RmllbGQsXG4gICAgVGV4dEZpZWxkXG59IGZyb20gJy4vbW9kZWwnO1xuXG5leHBvcnQgY29uc3QgRmllbGRNb2RlbE1hcDogUmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEZpZWxkT3BlcmFibGU8dW5rbm93biwgdW5rbm93bj4+ID0ge1xuICAgIC4uLkZpZWxkTW9kZWxCYXNlTWFwLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnRleHRdOiBuZXcgVGV4dEZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUucmljaFRleHRdOiBuZXcgUmljaFRleHRGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnNlbGVjdF06IG5ldyBTZWxlY3RGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmRhdGVdOiBuZXcgRGF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0XTogbmV3IERhdGVGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRBdF06IG5ldyBEYXRlRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5udW1iZXJdOiBuZXcgTnVtYmVyRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5yYXRlXTogbmV3IFJhdGVGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmxpbmtdOiBuZXcgTGlua0ZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUubWVtYmVyXTogbmV3IE1lbWJlckZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUucHJvZ3Jlc3NdOiBuZXcgUHJvZ3Jlc3NGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeV06IG5ldyBNZW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRCeV06IG5ldyBNZW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmF0dGFjaG1lbnRdOiBuZXcgQXR0YWNobWVudEZpZWxkKClcbn07XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './field';
2
+ export * from './model';
3
+ export * from './operate';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9maWVsZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL29wZXJhdGUnO1xuIl19
@@ -1,12 +1,8 @@
1
- import { AITableFieldType } from '../../../core';
2
- import { AITableFilterOperation } from '../../../types';
3
- import { isEmpty } from '../../common';
4
- import { compareString, hasIntersect } from '../operate';
5
- import { Field } from './field';
6
- export class AttachmentField extends Field {
7
- isValid(cellValue) {
8
- return Array.isArray(cellValue) || cellValue === null;
9
- }
1
+ import { AITableFilterOperation, AttachmentFieldBase } from '@ai-table/utils';
2
+ import { AITableFieldType } from '@ai-table/utils';
3
+ import { isEmpty } from 'lodash';
4
+ import { compareString, hasIntersect, isMeetFilter } from '../operate';
5
+ export class AttachmentField extends AttachmentFieldBase {
10
6
  isMeetFilter(condition, cellValue) {
11
7
  switch (condition.operation) {
12
8
  case AITableFilterOperation.empty:
@@ -18,7 +14,7 @@ export class AttachmentField extends Field {
18
14
  case AITableFilterOperation.nin:
19
15
  return Array.isArray(condition.value) && !hasIntersect(cellValue, condition.value);
20
16
  default:
21
- return super.isMeetFilter(condition, cellValue);
17
+ return isMeetFilter(condition, cellValue);
22
18
  }
23
19
  }
24
20
  compare(cellValue1, cellValue2, references, sortKey, options) {
@@ -26,21 +22,6 @@ export class AttachmentField extends Field {
26
22
  const value2 = cellValueToSortValue(cellValue2, options.field, references, sortKey);
27
23
  return compareString(value1, value2);
28
24
  }
29
- cellFullText(transformValue, field, references) {
30
- let fullText = [];
31
- if (transformValue?.length && references) {
32
- for (let index = 0; index < transformValue.length; index++) {
33
- const attachmentInfo = references?.attachments[transformValue[index]];
34
- if (!attachmentInfo) {
35
- continue;
36
- }
37
- if (attachmentInfo.title) {
38
- fullText.push(attachmentInfo.title);
39
- }
40
- }
41
- }
42
- return fullText;
43
- }
44
25
  toFieldValue(plainText, targetField, originData, references) {
45
26
  return toAttachmentFieldValue(plainText, targetField, originData, references);
46
27
  }
@@ -74,4 +55,4 @@ function cellValueToSortValue(cellValue, field, references, sortKey = 'title') {
74
55
  }
75
56
  return values && values.length ? values.join(', ') : null;
76
57
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL21vZGVsL2F0dGFjaG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEyRCxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQTBCLHNCQUFzQixFQUFxQixNQUFNLGdCQUFnQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVoQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxLQUFLO0lBQzdCLE9BQU8sQ0FBQyxTQUFxQjtRQUNsQyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxLQUFLLElBQUksQ0FBQztJQUMxRCxDQUFDO0lBRVEsWUFBWSxDQUFDLFNBQXlDLEVBQUUsU0FBK0I7UUFDNUYsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QixLQUFLLHNCQUFzQixDQUFDLE1BQU07Z0JBQzlCLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsS0FBSyxzQkFBc0IsQ0FBQyxFQUFFO2dCQUMxQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RGLEtBQUssc0JBQXNCLENBQUMsR0FBRztnQkFDM0IsT0FBTyxLQUFLLENBQUMsT0FBTyxD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R0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNwRCxNQUFNLGNBQWMsR0FBRyxVQUFVLEVBQUUsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDbEIsU0FBUztZQUNiLENBQUM7WUFFRCxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdEMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDUixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZCLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZSwgQUlUYWJsZUZpZWxkLCBBdHRhY2htZW50RmllbGRWYWx1ZSwgRmllbGRWYWx1ZSwgQUlUYWJsZUZpZWxkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpbHRlckNvbmRpdGlvbiwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbiwgQUlUYWJsZVJlZmVyZW5jZXMgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IGNvbXBhcmVTdHJpbmcsIGhhc0ludGVyc2VjdCB9IGZyb20gJy4uL29wZXJhdGUnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkJztcblxuZXhwb3J0IGNsYXNzIEF0dGFjaG1lbnRGaWVsZCBleHRlbmRzIEZpZWxkIHtcbiAgICBvdmVycmlkZSBpc1ZhbGlkKGNlbGxWYWx1ZTogRmllbGRWYWx1ZSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjZWxsVmFsdWUpIHx8IGNlbGxWYWx1ZSA9PT0gbnVsbDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPHN0cmluZz4sIGNlbGxWYWx1ZTogQXR0YWNobWVudEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY29uZGl0aW9uLnZhbHVlKSAmJiBoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjb25kaXRpb24udmFsdWUpICYmICFoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIuaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNvbXBhcmUoXG4gICAgICAgIGNlbGxWYWx1ZTE6IEF0dGFjaG1lbnRGaWVsZFZhbHVlLFxuICAgICAgICBjZWxsVmFsdWUyOiBBdHRhY2htZW50RmllbGRWYWx1ZSxcbiAgICAgICAgcmVmZXJlbmNlczogQUlUYWJsZVJlZmVyZW5jZXMsXG4gICAgICAgIHNvcnRLZXk6IHN0cmluZyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgYWlUYWJsZTogQUlUYWJsZTtcbiAgICAgICAgICAgIGZpZWxkOiBBSVRhYmxlRmllbGQ7XG4gICAgICAgIH1cbiAgICApOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZTEgPSBjZWxsVmFsdWVUb1NvcnRWYWx1ZShjZWxsVmFsdWUxLCBvcHRpb25zLmZpZWxkLCByZWZlcmVuY2VzLCBzb3J0S2V5KTtcbiAgICAgICAgY29uc3QgdmFsdWUyID0gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlMiwgb3B0aW9ucy5maWVsZCwgcmVmZXJlbmNlcywgc29ydEtleSk7XG4gICAgICAgIHJldHVybiBjb21wYXJlU3RyaW5nKHZhbHVlMSwgdmFsdWUyKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjZWxsRnVsbFRleHQodHJhbnNmb3JtVmFsdWU6IHN0cmluZ1tdLCBmaWVsZDogQUlUYWJsZUZpZWxkLCByZWZlcmVuY2VzPzogQUlUYWJsZVJlZmVyZW5jZXMpOiBzdHJpbmdbXSB7XG4gICAgICAgIGxldCBmdWxsVGV4dDogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgaWYgKHRyYW5zZm9ybVZhbHVlPy5sZW5ndGggJiYgcmVmZXJlbmNlcykge1xuICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRyYW5zZm9ybVZhbHVlLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF0dGFjaG1lbnRJbmZvID0gcmVmZXJlbmNlcz8uYXR0YWNobWVudHNbdHJhbnNmb3JtVmFsdWVbaW5kZXhdXTtcbiAgICAgICAgICAgICAgICBpZiAoIWF0dGFjaG1lbnRJbmZvKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoYXR0YWNobWVudEluZm8udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZnVsbFRleHQucHVzaChhdHRhY2htZW50SW5mby50aXRsZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmdWxsVGV4dDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0ZpZWxkVmFsdWUoXG4gICAgICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgICAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgICAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIH0sXG4gICAgICAgIHJlZmVyZW5jZXM/OiBBSVRhYmxlUmVmZXJlbmNlc1xuICAgICk6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0b0F0dGFjaG1lbnRGaWVsZFZhbHVlKHBsYWluVGV4dCwgdGFyZ2V0RmllbGQsIG9yaWdpbkRhdGEsIHJlZmVyZW5jZXMpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvQXR0YWNobWVudEZpZWxkVmFsdWUoXG4gICAgcGxhaW5UZXh0OiBzdHJpbmcsXG4gICAgdGFyZ2V0RmllbGQ6IEFJVGFibGVGaWVsZCxcbiAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIH0sXG4gICAgcmVmZXJlbmNlcz86IEFJVGFibGVSZWZlcmVuY2VzXG4pOiBGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgaWYgKG9yaWdpbkRhdGEpIHtcbiAgICAgICAgY29uc3QgeyBmaWVsZCwgY2VsbFZhbHVlIH0gPSBvcmlnaW5EYXRhO1xuICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gQUlUYWJsZUZpZWxkVHlwZS5hdHRhY2htZW50KSB7XG4gICAgICAgICAgICBjb25zdCBhdHRhY2htZW50SWRzID0gT2JqZWN0LmtleXMocmVmZXJlbmNlcz8uYXR0YWNobWVudHMgfHwge30pO1xuICAgICAgICAgICAgY29uc3QgdmFsaWRBdHRhY2htZW50SWRzID0gKGNlbGxWYWx1ZSB8fCBbXSkuZmlsdGVyKChpZCkgPT4gYXR0YWNobWVudElkcy5pbmNsdWRlcyhpZCkpO1xuICAgICAgICAgICAgaWYgKHZhbGlkQXR0YWNobWVudElkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbGlkQXR0YWNobWVudElkcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoXG4gICAgY2VsbFZhbHVlOiBBdHRhY2htZW50RmllbGRWYWx1ZSxcbiAgICBmaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzLFxuICAgIHNvcnRLZXkgPSAndGl0bGUnXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgICBsZXQgdmFsdWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChjZWxsVmFsdWU/Lmxlbmd0aCAmJiByZWZlcmVuY2VzKSB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjZWxsVmFsdWUubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCBhdHRhY2htZW50SW5mbyA9IHJlZmVyZW5jZXM/LmF0dGFjaG1lbnRzW2NlbGxWYWx1ZVtpbmRleF1dO1xuICAgICAgICAgICAgaWYgKCFhdHRhY2htZW50SW5mbykge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dGFjaG1lbnRJbmZvW3NvcnRLZXldO1xuICAgICAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aCA/IHZhbHVlcy5qb2luKCcsICcpIDogbnVsbDtcbn1cbiJdfQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL21vZGVsL2F0dGFjaG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixzQkFBc0IsRUFBcUIsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6SCxPQUFPLEVBQWtELGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFHdkUsTUFBTSxPQUFPLGVBQWdCLFNBQVEsbUJBQW1CO0lBQ3BELFlBQVksQ0FBQyxTQUF5QyxFQUFFLFNBQStCO1FBQ25GLFFBQVEsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFCLEtBQUssc0JBQXNCLENBQUMsS0FBSztnQkFDN0IsT0FBTyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDOUIsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9CLEtBQUssc0JBQXNCLENBQUMsRUFBRTtnQkFDMUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxZQUFZLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0RixLQUFLLHNCQUFzQixDQUFDLEdBQUc7Z0JBQzNCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2RjtnQkFDSSxPQUFPLFlBQVksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbEQsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQ0gsVUFBZ0MsRUFDaEMsVUFBZ0MsRUFDaEMsVUFBNkIsRUFDN0IsT0FBZSxFQUNmLE9BR0M7UUFFRCxNQUFNLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDcEYsTUFBTSxNQUFNLEdBQUcsb0JBQW9CLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3BGLE9BQU8sYUFBYSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsWUFBWSxDQUNSLFNBQWlCLEVBQ2pCLFdBQXlCLEVBQ3pCLFVBQXFFLEVBQ3JFLFVBQThCO1FBRTlCLE9BQU8sc0JBQXNCLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDbEYsQ0FBQztDQUNKO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUNsQyxTQUFpQixFQUNqQixXQUF5QixFQUN6QixVQUFxRSxFQUNyRSxVQUE4QjtJQUU5QixJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2IsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsR0FBRyxVQUFVLENBQUM7UUFDeEMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzdDLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNqRSxNQUFNLGtCQUFrQixHQUFHLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLElBQUksa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNoQyxPQUFPLGtCQUFrQixDQUFDO1lBQzlCLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxTQUFTLG9CQUFvQixDQUN6QixTQUErQixFQUMvQixLQUFtQixFQUNuQixVQUE2QixFQUM3QixPQUFPLEdBQUcsT0FBTztJQUVqQixJQUFJLE1BQU0sR0FBYSxFQUFFLENBQUM7SUFDMUIsSUFBSSxTQUFTLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDcEQsTUFBTSxjQUFjLEdBQUcsVUFBVSxFQUFFLFdBQVcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ2xCLFNBQVM7WUFDYixDQUFDO1lBRUQsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RDLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVGaWx0ZXJDb25kaXRpb24sIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24sIEFJVGFibGVSZWZlcmVuY2VzLCBBdHRhY2htZW50RmllbGRCYXNlIH0gZnJvbSAnQGFpLXRhYmxlL3V0aWxzJztcbmltcG9ydCB7IEFJVGFibGUgfSBmcm9tICcuLi8uLi8uLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZCwgQXR0YWNobWVudEZpZWxkVmFsdWUsIEZpZWxkVmFsdWUsIEFJVGFibGVGaWVsZFR5cGUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBjb21wYXJlU3RyaW5nLCBoYXNJbnRlcnNlY3QsIGlzTWVldEZpbHRlciB9IGZyb20gJy4uL29wZXJhdGUnO1xuaW1wb3J0IHsgRmllbGRPcGVyYWJsZSB9IGZyb20gJy4uL2ZpZWxkLW9wZXJhYmxlJztcblxuZXhwb3J0IGNsYXNzIEF0dGFjaG1lbnRGaWVsZCBleHRlbmRzIEF0dGFjaG1lbnRGaWVsZEJhc2UgaW1wbGVtZW50cyBGaWVsZE9wZXJhYmxlPHN0cmluZywgQXR0YWNobWVudEZpZWxkVmFsdWU+IHtcbiAgICBpc01lZXRGaWx0ZXIoY29uZGl0aW9uOiBBSVRhYmxlRmlsdGVyQ29uZGl0aW9uPHN0cmluZz4sIGNlbGxWYWx1ZTogQXR0YWNobWVudEZpZWxkVmFsdWUpIHtcbiAgICAgICAgc3dpdGNoIChjb25kaXRpb24ub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZW1wdHk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzRW1wdHkoY2VsbFZhbHVlKTtcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpbHRlck9wZXJhdGlvbi5leGlzdHM6XG4gICAgICAgICAgICAgICAgcmV0dXJuICFpc0VtcHR5KGNlbGxWYWx1ZSk7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uaW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY29uZGl0aW9uLnZhbHVlKSAmJiBoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLm5pbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShjb25kaXRpb24udmFsdWUpICYmICFoYXNJbnRlcnNlY3QoY2VsbFZhbHVlLCBjb25kaXRpb24udmFsdWUpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNNZWV0RmlsdGVyKGNvbmRpdGlvbiwgY2VsbFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBhcmUoXG4gICAgICAgIGNlbGxWYWx1ZTE6IEF0dGFjaG1lbnRGaWVsZFZhbHVlLFxuICAgICAgICBjZWxsVmFsdWUyOiBBdHRhY2htZW50RmllbGRWYWx1ZSxcbiAgICAgICAgcmVmZXJlbmNlczogQUlUYWJsZVJlZmVyZW5jZXMsXG4gICAgICAgIHNvcnRLZXk6IHN0cmluZyxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgYWlUYWJsZTogQUlUYWJsZTtcbiAgICAgICAgICAgIGZpZWxkOiBBSVRhYmxlRmllbGQ7XG4gICAgICAgIH1cbiAgICApOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZTEgPSBjZWxsVmFsdWVUb1NvcnRWYWx1ZShjZWxsVmFsdWUxLCBvcHRpb25zLmZpZWxkLCByZWZlcmVuY2VzLCBzb3J0S2V5KTtcbiAgICAgICAgY29uc3QgdmFsdWUyID0gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlMiwgb3B0aW9ucy5maWVsZCwgcmVmZXJlbmNlcywgc29ydEtleSk7XG4gICAgICAgIHJldHVybiBjb21wYXJlU3RyaW5nKHZhbHVlMSwgdmFsdWUyKTtcbiAgICB9XG5cbiAgICB0b0ZpZWxkVmFsdWUoXG4gICAgICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgICAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgICAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIH0sXG4gICAgICAgIHJlZmVyZW5jZXM/OiBBSVRhYmxlUmVmZXJlbmNlc1xuICAgICk6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0b0F0dGFjaG1lbnRGaWVsZFZhbHVlKHBsYWluVGV4dCwgdGFyZ2V0RmllbGQsIG9yaWdpbkRhdGEsIHJlZmVyZW5jZXMpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRvQXR0YWNobWVudEZpZWxkVmFsdWUoXG4gICAgcGxhaW5UZXh0OiBzdHJpbmcsXG4gICAgdGFyZ2V0RmllbGQ6IEFJVGFibGVGaWVsZCxcbiAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEF0dGFjaG1lbnRGaWVsZFZhbHVlIH0sXG4gICAgcmVmZXJlbmNlcz86IEFJVGFibGVSZWZlcmVuY2VzXG4pOiBGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgaWYgKG9yaWdpbkRhdGEpIHtcbiAgICAgICAgY29uc3QgeyBmaWVsZCwgY2VsbFZhbHVlIH0gPSBvcmlnaW5EYXRhO1xuICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gQUlUYWJsZUZpZWxkVHlwZS5hdHRhY2htZW50KSB7XG4gICAgICAgICAgICBjb25zdCBhdHRhY2htZW50SWRzID0gT2JqZWN0LmtleXMocmVmZXJlbmNlcz8uYXR0YWNobWVudHMgfHwge30pO1xuICAgICAgICAgICAgY29uc3QgdmFsaWRBdHRhY2htZW50SWRzID0gKGNlbGxWYWx1ZSB8fCBbXSkuZmlsdGVyKChpZCkgPT4gYXR0YWNobWVudElkcy5pbmNsdWRlcyhpZCkpO1xuICAgICAgICAgICAgaWYgKHZhbGlkQXR0YWNobWVudElkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbGlkQXR0YWNobWVudElkcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoXG4gICAgY2VsbFZhbHVlOiBBdHRhY2htZW50RmllbGRWYWx1ZSxcbiAgICBmaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzLFxuICAgIHNvcnRLZXkgPSAndGl0bGUnXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgICBsZXQgdmFsdWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChjZWxsVmFsdWU/Lmxlbmd0aCAmJiByZWZlcmVuY2VzKSB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBjZWxsVmFsdWUubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCBhdHRhY2htZW50SW5mbyA9IHJlZmVyZW5jZXM/LmF0dGFjaG1lbnRzW2NlbGxWYWx1ZVtpbmRleF1dO1xuICAgICAgICAgICAgaWYgKCFhdHRhY2htZW50SW5mbykge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dGFjaG1lbnRJbmZvW3NvcnRLZXldO1xuICAgICAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aCA/IHZhbHVlcy5qb2luKCcsICcpIDogbnVsbDtcbn1cbiJdfQ==
@@ -1,19 +1,10 @@
1
1
  import { fromUnixTime, subDays } from 'date-fns';
2
2
  import { isArray, TinyDate } from 'ngx-tethys/util';
3
- import { Field } from './field';
4
- import { AITableFilterOperation } from '../../../types';
5
- import { AITableFieldType } from '../../../core';
6
- import { compareNumber } from '../operate';
7
- import { isEmpty } from '../../common';
8
- import { isNil } from 'lodash';
9
- export const isDateValid = (cellValue) => {
10
- return ((cellValue && typeof cellValue === 'object' && 'timestamp' in cellValue && typeof cellValue.timestamp === 'number') ||
11
- cellValue === null);
12
- };
13
- export class DateField extends Field {
14
- isValid(cellValue) {
15
- return isDateValid(cellValue);
16
- }
3
+ import { AITableFilterOperation, DateFieldBase, isDateValid } from '@ai-table/utils';
4
+ import { AITableFieldType } from '@ai-table/utils';
5
+ import { compareNumber, isMeetFilter } from '../operate';
6
+ import { isEmpty, isNil } from 'lodash';
7
+ export class DateField extends DateFieldBase {
17
8
  isMeetFilter(condition, cellValue) {
18
9
  const [left, right] = this.getTimeRange(condition.value);
19
10
  if (isNil(cellValue)) {
@@ -33,7 +24,7 @@ export class DateField extends Field {
33
24
  case AITableFilterOperation.between:
34
25
  return left <= cellValue.timestamp && cellValue.timestamp < right;
35
26
  default:
36
- return super.isMeetFilter(condition, cellValue);
27
+ return isMeetFilter(condition, cellValue);
37
28
  }
38
29
  }
39
30
  compare(cellValue1, cellValue2) {
@@ -102,7 +93,7 @@ function cellValueToSortValue(cellValue) {
102
93
  if (isNil(cellValue) || !isDateValid(cellValue)) {
103
94
  return 0;
104
95
  }
105
- return cellValue?.timestamp;
96
+ return cellValue?.timestamp ?? 0;
106
97
  }
107
98
  function transformDateValue(text) {
108
99
  const value = text.trim();
@@ -144,4 +135,4 @@ function transformDateValue(text) {
144
135
  return null;
145
136
  }
146
137
  }
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL21vZGVsL2RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBVyxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBMEIsc0JBQXNCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRixPQUFPLEVBQWdCLGdCQUFnQixFQUE4QixNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUUvQixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxTQUFxQixFQUErQixFQUFFO0lBQzlFLE9BQU8sQ0FDSCxDQUFDLFNBQVMsSUFBSSxPQUFPLFNBQVMsS0FBSyxRQUFRLElBQUksV0FBVyxJQUFJLFNBQVMsSUFBSSxPQUFPLFNBQVMsQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDO1FBQ25ILFNBQVMsS0FBSyxJQUFJLENBQ3JCLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLE9BQU8sU0FBVSxTQUFRLEtBQUs7SUFDdkIsT0FBTyxDQUFDLFNBQXFCO1FBQ2xDLE9BQU8sV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFUSxZQUFZLENBQUMsU0FBeUMsRUFBRSxTQUF5QjtRQUN0RixNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZ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LE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hFLElBQUksTUFBTSxHQUFHLENBQUMsSUFBSSxNQUFNLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFDakMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDckMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELE1BQU0sWUFBWSxHQUFHLEdBQUcsSUFBSSxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDdkcsT0FBTztZQUNILFNBQVMsRUFBRSxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxXQUFXLEVBQUU7U0FDdEQsQ0FBQztJQUNOLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmcm9tVW5peFRpbWUsIGlzVmFsaWQsIHN1YkRheXMgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBpc0FycmF5LCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgQUlUYWJsZUZpbHRlckNvbmRpdGlvbiwgQUlUYWJsZUZpbHRlck9wZXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZCwgQUlUYWJsZUZpZWxkVHlwZSwgRGF0ZUZpZWxkVmFsdWUsIEZpZWxkVmFsdWUgfSBmcm9tICcuLi8uLi8uLi9jb3JlJztcbmltcG9ydCB7IGNvbXBhcmVOdW1iZXIgfSBmcm9tICcuLi9vcGVyYXRlJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgaXNOaWwgfSBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY29uc3QgaXNEYXRlVmFsaWQgPSAoY2VsbFZhbHVlOiBGaWVsZFZhbHVlKTogY2VsbFZhbHVlIGlzIERhdGVGaWVsZFZhbHVlID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgICAoY2VsbFZhbHVlICYmIHR5cGVvZiBjZWxsVmFsdWUgPT09ICdvYmplY3QnICYmICd0aW1lc3RhbXAnIGluIGNlbGxWYWx1ZSAmJiB0eXBlb2YgY2VsbFZhbHVlLnRpbWVzdGFtcCA9PT0gJ251bWJlcicpIHx8XG4gICAgICAgIGNlbGxWYWx1ZSA9PT0gbnVsbFxuICAgICk7XG59O1xuXG5leHBvcnQgY2xhc3MgRGF0ZUZpZWxkIGV4dGVuZHMgRmllbGQge1xuICAgIG92ZXJyaWRlIGlzVmFsaWQoY2VsbFZhbHVlOiBGaWVsZFZhbHVlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpc0RhdGVWYWxpZChjZWxsVmFsdWUpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGlzTWVldEZpbHRlcihjb25kaXRpb246IEFJVGFibGVGaWx0ZXJDb25kaXRpb248c3RyaW5nPiwgY2VsbFZhbHVlOiBEYXRlRmllbGRWYWx1ZSkge1xuICAgICAgICBjb25zdCBbbGVmdCwgcmlnaHRdID0gdGhpcy5nZXRUaW1lUmFuZ2UoY29uZGl0aW9uLnZhbHVlKTtcbiAgICAgICAgaWYgKGlzTmlsKGNlbGxWYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBjb25kaXRpb24ub3BlcmF0aW9uID09PSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5O1xuICAgICAgICB9XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0VtcHR5KGNlbGxWYWx1ZS50aW1lc3RhbXApIHx8IGNlbGxWYWx1ZS50aW1lc3RhbXAgPT09IDA7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUudGltZXN0YW1wKSAmJiBjZWxsVmFsdWUudGltZXN0YW1wICE9PSAwO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVxOlxuICAgICAgICAgICAgICAgIHJldHVybiBsZWZ0IDw9IGNlbGxWYWx1ZS50aW1lc3RhbXAgJiYgY2VsbFZhbHVlLnRpbWVzdGFtcCA8IHJpZ2h0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmd0OlxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxsVmFsdWUudGltZXN0YW1wID4gcmlnaHQ7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ubHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZS50aW1lc3RhbXAgPCBsZWZ0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmJldHdlZW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxlZnQgPD0gY2VsbFZhbHVlLnRpbWVzdGFtcCAmJiBjZWxsVmFsdWUudGltZXN0YW1wIDwgcmlnaHQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBzdXBlci5pc01lZXRGaWx0ZXIoY29uZGl0aW9uLCBjZWxsVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY29tcGFyZShjZWxsVmFsdWUxOiBEYXRlRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRGF0ZUZpZWxkVmFsdWUpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZTEgPSBjZWxsVmFsdWVUb1NvcnRWYWx1ZShjZWxsVmFsdWUxKTtcbiAgICAgICAgY29uc3QgdmFsdWUyID0gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlMik7XG4gICAgICAgIHJldHVybiBjb21wYXJlTnVtYmVyKHZhbHVlMSwgdmFsdWUyKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0ZpZWxkVmFsdWUoXG4gICAgICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgICAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgICAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEZpZWxkVmFsdWUgfVxuICAgICk6IEZpZWxkVmFsdWUgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRvRGF0ZUZpZWxkVmFsdWUocGxhaW5UZXh0LCB0YXJnZXRGaWVsZCwgb3JpZ2luRGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0VGltZVJhbmdlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBudW1iZXJbXSkge1xuICAgICAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICAgICAgICBjYXNlICd0b2RheSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtuZXcgVGlueURhdGUobmV3IERhdGUoKSkuc3RhcnRPZkRheSgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZShuZXcgRGF0ZSgpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKCldO1xuICAgICAgICAgICAgY2FzZSAnY3VycmVudF93ZWVrJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5zdGFydE9mV2Vlayh7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5lbmRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICd5ZXN0ZXJkYXknOlxuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShzdWJEYXlzKG5ldyBEYXRlKCksIDEpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKHN1YkRheXMobmV3IERhdGUoKSwgMSkpLmVuZE9mRGF5KCkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICdjdXJyZW50X21vbnRoJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW25ldyBUaW55RGF0ZSgpLnN0YXJ0T2ZNb250aCgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mTW9udGgoKS5nZXRVbml4VGltZSgpXTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKGlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoZnJvbVVuaXhUaW1lKHZhbHVlWzBdIGFzIG51bWJlcikpLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZVsxXSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlRmllbGRWYWx1ZShcbiAgICBwbGFpblRleHQ6IHN0cmluZyxcbiAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgIG9yaWdpbkRhdGE/OiB7IGZpZWxkOiBBSVRhYmxlRmllbGQ7IGNlbGxWYWx1ZTogRmllbGRWYWx1ZSB9XG4pOiBGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgaWYgKHRhcmdldEZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0IHx8IHRhcmdldEZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEF0KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChvcmlnaW5EYXRhKSB7XG4gICAgICAgIGNvbnN0IHsgZmllbGQsIGNlbGxWYWx1ZSB9ID0gb3JpZ2luRGF0YTtcbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUuZGF0ZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHRleHRzID0gcGxhaW5UZXh0XG4gICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgIC5tYXAoKHRleHQpID0+IHRleHQudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKCh0ZXh0KSA9PiAhIXRleHQpO1xuICAgIGNvbnN0IHZhbHVlID0gdGV4dHMgJiYgdGV4dHMubGVuZ3RoID8gdGV4dHNbMF0udHJpbSgpIDogcGxhaW5UZXh0LnRyaW0oKTtcbiAgICBjb25zdCBkYXRlVmFsdWUgPSB0cmFuc2Zvcm1EYXRlVmFsdWUodmFsdWUpO1xuICAgIGlmIChkYXRlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGRhdGVWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlOiBEYXRlRmllbGRWYWx1ZSk6IG51bWJlciB7XG4gICAgaWYgKGlzTmlsKGNlbGxWYWx1ZSkgfHwgIWlzRGF0ZVZhbGlkKGNlbGxWYWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBjZWxsVmFsdWU/LnRpbWVzdGFtcDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRGF0ZVZhbHVlKHRleHQ6IHN0cmluZyk6IEZpZWxkVmFsdWUgfCBudWxsIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRleHQudHJpbSgpO1xuICAgIGlmICghdmFsdWUgfHwgaXNFbXB0eSh2YWx1ZSkpIHJldHVybiBudWxsO1xuXG4gICAgLy8g5Z+656GA5pel5pyf5qC85byP77ya5pSv5oyB6K+G5YirIC0gLyAuIOW5tOaciOaXpSDkvZzkuLrliIbpmpTnrKZcbiAgICBjb25zdCBkYXRlUGF0dGVybiA9IFN0cmluZy5yYXdgKD86KFxcZHsyfXxcXGR7NH0pWy0vLuW5tF0oXFxkezEsMn0pWy0vLuaciF0oXFxkezEsMn0p5pelPylgO1xuICAgIGNvbnN0IHRpbWVQYXR0ZXJuID0gU3RyaW5nLnJhd2AoPzpcXHMrKFxcZHsxLDJ9KTooXFxkezEsMn0pKD86OihcXGR7MSwyfSkpPyk/YDtcblxuICAgIGNvbnN0IHBhdHRlcm4gPSBuZXcgUmVnRXhwKGBeJHtkYXRlUGF0dGVybn0ke3RpbWVQYXR0ZXJufSRgKTtcbiAgICBjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKHBhdHRlcm4pO1xuXG4gICAgaWYgKCFtYXRjaCkgcmV0dXJuIG51bGw7XG5cbiAgICB0cnkge1xuICAgICAgICBsZXQgW18sIHllYXIsIG1vbnRoLCBkYXldID0gbWF0Y2g7XG5cbiAgICAgICAgaWYgKHllYXIubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgICAgIGNvbnN0IGNlbnR1cnkgPSBNYXRoLmZsb29yKGN1cnJlbnRZZWFyIC8gMTAwKSAqIDEwMDtcbiAgICAgICAgICAgIGNvbnN0IHR3b0RpZ2l0WWVhciA9IHBhcnNlSW50KHllYXIpO1xuICAgICAgICAgICAgeWVhciA9IFN0cmluZyh0d29EaWdpdFllYXIgPiBjdXJyZW50WWVhciAlIDEwMCA/IGNlbnR1cnkgLSAxMDAgKyB0d29EaWdpdFllYXIgOiBjZW50dXJ5ICsgdHdvRGlnaXRZZWFyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1vbnRoTnVtID0gcGFyc2VJbnQobW9udGgpO1xuICAgICAgICBjb25zdCBkYXlOdW0gPSBwYXJzZUludChkYXkpO1xuXG4gICAgICAgIGlmIChtb250aE51bSA8IDEgfHwgbW9udGhOdW0gPiAxMikge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdJbnZhbGlkIG1vbnRoOicsIG1vbnRoTnVtKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWF4RGF5cyA9IG5ldyBEYXRlKHBhcnNlSW50KHllYXIpLCBtb250aE51bSwgMCkuZ2V0RGF0ZSgpO1xuICAgICAgICBpZiAoZGF5TnVtIDwgMSB8fCBkYXlOdW0gPiBtYXhEYXlzKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0ludmFsaWQgZGF5OicsIGRheU51bSk7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN0YW5kYXJkRGF0ZSA9IGAke3llYXJ9LSR7U3RyaW5nKG1vbnRoTnVtKS5wYWRTdGFydCgyLCAnMCcpfS0ke1N0cmluZyhkYXlOdW0pLnBhZFN0YXJ0KDIsICcwJyl9YDtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRpbWVzdGFtcDogbmV3IFRpbnlEYXRlKHN0YW5kYXJkRGF0ZSkuZ2V0VW5peFRpbWUoKVxuICAgICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignSW52YWxpZCBkYXRlOicsIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxufVxuIl19
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2ZpZWxkL21vZGVsL2RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQTBCLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3RyxPQUFPLEVBQWdCLGdCQUFnQixFQUE4QixNQUFNLGlCQUFpQixDQUFDO0FBQzdGLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXhDLE1BQU0sT0FBTyxTQUFVLFNBQVEsYUFBYTtJQUN4QyxZQUFZLENBQUMsU0FBeUMsRUFBRSxTQUF5QjtRQUM3RSxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pELElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDbkIsT0FBTyxTQUFTLENBQUMsU0FBUyxLQUFLLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUNoRSxDQUFDO1FBQ0QsUUFBUSxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxLQUFLO2dCQUM3QixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDLFNBQVMsS0FBSyxDQUFDLENBQUM7WUFDckUsS0FBSyxzQkFBc0IsQ0FBQyxNQUFNO2dCQUM5QixPQUFPLENB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LElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2RyxPQUFPO1lBQ0gsU0FBUyxFQUFFLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLFdBQVcsRUFBRTtTQUN0RCxDQUFDO0lBQ04sQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyQyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyb21Vbml4VGltZSwgc3ViRGF5cyB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IGlzQXJyYXksIFRpbnlEYXRlIH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IEFJVGFibGVGaWx0ZXJDb25kaXRpb24sIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24sIERhdGVGaWVsZEJhc2UsIGlzRGF0ZVZhbGlkIH0gZnJvbSAnQGFpLXRhYmxlL3V0aWxzJztcbmltcG9ydCB7IEZpZWxkT3BlcmFibGUgfSBmcm9tICcuLi9maWVsZC1vcGVyYWJsZSc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZFR5cGUsIERhdGVGaWVsZFZhbHVlLCBGaWVsZFZhbHVlIH0gZnJvbSAnQGFpLXRhYmxlL3V0aWxzJztcbmltcG9ydCB7IGNvbXBhcmVOdW1iZXIsIGlzTWVldEZpbHRlciB9IGZyb20gJy4uL29wZXJhdGUnO1xuaW1wb3J0IHsgaXNFbXB0eSwgaXNOaWwgfSBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgY2xhc3MgRGF0ZUZpZWxkIGV4dGVuZHMgRGF0ZUZpZWxkQmFzZSBpbXBsZW1lbnRzIEZpZWxkT3BlcmFibGU8c3RyaW5nLCBEYXRlRmllbGRWYWx1ZT4ge1xuICAgIGlzTWVldEZpbHRlcihjb25kaXRpb246IEFJVGFibGVGaWx0ZXJDb25kaXRpb248c3RyaW5nPiwgY2VsbFZhbHVlOiBEYXRlRmllbGRWYWx1ZSkge1xuICAgICAgICBjb25zdCBbbGVmdCwgcmlnaHRdID0gdGhpcy5nZXRUaW1lUmFuZ2UoY29uZGl0aW9uLnZhbHVlKTtcbiAgICAgICAgaWYgKGlzTmlsKGNlbGxWYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBjb25kaXRpb24ub3BlcmF0aW9uID09PSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5O1xuICAgICAgICB9XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVtcHR5OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc0VtcHR5KGNlbGxWYWx1ZS50aW1lc3RhbXApIHx8IGNlbGxWYWx1ZS50aW1lc3RhbXAgPT09IDA7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24uZXhpc3RzOlxuICAgICAgICAgICAgICAgIHJldHVybiAhaXNFbXB0eShjZWxsVmFsdWUudGltZXN0YW1wKSAmJiBjZWxsVmFsdWUudGltZXN0YW1wICE9PSAwO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmVxOlxuICAgICAgICAgICAgICAgIHJldHVybiBsZWZ0IDw9IGNlbGxWYWx1ZS50aW1lc3RhbXAgJiYgY2VsbFZhbHVlLnRpbWVzdGFtcCA8IHJpZ2h0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmd0OlxuICAgICAgICAgICAgICAgIHJldHVybiBjZWxsVmFsdWUudGltZXN0YW1wID4gcmlnaHQ7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWx0ZXJPcGVyYXRpb24ubHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZS50aW1lc3RhbXAgPCBsZWZ0O1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmlsdGVyT3BlcmF0aW9uLmJldHdlZW46XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxlZnQgPD0gY2VsbFZhbHVlLnRpbWVzdGFtcCAmJiBjZWxsVmFsdWUudGltZXN0YW1wIDwgcmlnaHQ7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBpc01lZXRGaWx0ZXIoY29uZGl0aW9uLCBjZWxsVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29tcGFyZShjZWxsVmFsdWUxOiBEYXRlRmllbGRWYWx1ZSwgY2VsbFZhbHVlMjogRGF0ZUZpZWxkVmFsdWUpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZTEgPSBjZWxsVmFsdWVUb1NvcnRWYWx1ZShjZWxsVmFsdWUxKTtcbiAgICAgICAgY29uc3QgdmFsdWUyID0gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlMik7XG4gICAgICAgIHJldHVybiBjb21wYXJlTnVtYmVyKHZhbHVlMSwgdmFsdWUyKTtcbiAgICB9XG5cbiAgICB0b0ZpZWxkVmFsdWUoXG4gICAgICAgIHBsYWluVGV4dDogc3RyaW5nLFxuICAgICAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgICAgICBvcmlnaW5EYXRhPzogeyBmaWVsZDogQUlUYWJsZUZpZWxkOyBjZWxsVmFsdWU6IEZpZWxkVmFsdWUgfVxuICAgICk6IEZpZWxkVmFsdWUgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRvRGF0ZUZpZWxkVmFsdWUocGxhaW5UZXh0LCB0YXJnZXRGaWVsZCwgb3JpZ2luRGF0YSk7XG4gICAgfVxuXG4gICAgZ2V0VGltZVJhbmdlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBudW1iZXJbXSkge1xuICAgICAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICAgICAgICBjYXNlICd0b2RheSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtuZXcgVGlueURhdGUobmV3IERhdGUoKSkuc3RhcnRPZkRheSgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZShuZXcgRGF0ZSgpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKCldO1xuICAgICAgICAgICAgY2FzZSAnY3VycmVudF93ZWVrJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5zdGFydE9mV2Vlayh7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5lbmRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICd5ZXN0ZXJkYXknOlxuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgIG5ldyBUaW55RGF0ZShzdWJEYXlzKG5ldyBEYXRlKCksIDEpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKHN1YkRheXMobmV3IERhdGUoKSwgMSkpLmVuZE9mRGF5KCkuZ2V0VW5peFRpbWUoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICBjYXNlICdjdXJyZW50X21vbnRoJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gW25ldyBUaW55RGF0ZSgpLnN0YXJ0T2ZNb250aCgpLmdldFVuaXhUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mTW9udGgoKS5nZXRVbml4VGltZSgpXTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKGlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoZnJvbVVuaXhUaW1lKHZhbHVlWzBdIGFzIG51bWJlcikpLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZVsxXSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5zdGFydE9mRGF5KCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKGZyb21Vbml4VGltZSh2YWx1ZSBhcyBudW1iZXIpKS5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlRmllbGRWYWx1ZShcbiAgICBwbGFpblRleHQ6IHN0cmluZyxcbiAgICB0YXJnZXRGaWVsZDogQUlUYWJsZUZpZWxkLFxuICAgIG9yaWdpbkRhdGE/OiB7IGZpZWxkOiBBSVRhYmxlRmllbGQ7IGNlbGxWYWx1ZTogRmllbGRWYWx1ZSB9XG4pOiBGaWVsZFZhbHVlIHwgbnVsbCB7XG4gICAgaWYgKHRhcmdldEZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0IHx8IHRhcmdldEZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUudXBkYXRlZEF0KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChvcmlnaW5EYXRhKSB7XG4gICAgICAgIGNvbnN0IHsgZmllbGQsIGNlbGxWYWx1ZSB9ID0gb3JpZ2luRGF0YTtcbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUuZGF0ZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHRleHRzID0gcGxhaW5UZXh0XG4gICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgIC5tYXAoKHRleHQpID0+IHRleHQudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKCh0ZXh0KSA9PiAhIXRleHQpO1xuICAgIGNvbnN0IHZhbHVlID0gdGV4dHMgJiYgdGV4dHMubGVuZ3RoID8gdGV4dHNbMF0udHJpbSgpIDogcGxhaW5UZXh0LnRyaW0oKTtcbiAgICBjb25zdCBkYXRlVmFsdWUgPSB0cmFuc2Zvcm1EYXRlVmFsdWUodmFsdWUpO1xuICAgIGlmIChkYXRlVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGRhdGVWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gY2VsbFZhbHVlVG9Tb3J0VmFsdWUoY2VsbFZhbHVlOiBEYXRlRmllbGRWYWx1ZSk6IG51bWJlciB7XG4gICAgaWYgKGlzTmlsKGNlbGxWYWx1ZSkgfHwgIWlzRGF0ZVZhbGlkKGNlbGxWYWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBjZWxsVmFsdWU/LnRpbWVzdGFtcCA/PyAwO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1EYXRlVmFsdWUodGV4dDogc3RyaW5nKTogRmllbGRWYWx1ZSB8IG51bGwge1xuICAgIGNvbnN0IHZhbHVlID0gdGV4dC50cmltKCk7XG4gICAgaWYgKCF2YWx1ZSB8fCBpc0VtcHR5KHZhbHVlKSkgcmV0dXJuIG51bGw7XG5cbiAgICAvLyDln7rnoYDml6XmnJ/moLzlvI/vvJrmlK/mjIHor4bliKsgLSAvIC4g5bm05pyI5pelIOS9nOS4uuWIhumalOesplxuICAgIGNvbnN0IGRhdGVQYXR0ZXJuID0gU3RyaW5nLnJhd2AoPzooXFxkezJ9fFxcZHs0fSlbLS8u5bm0XShcXGR7MSwyfSlbLS8u5pyIXShcXGR7MSwyfSnml6U/KWA7XG4gICAgY29uc3QgdGltZVBhdHRlcm4gPSBTdHJpbmcucmF3YCg/OlxccysoXFxkezEsMn0pOihcXGR7MSwyfSkoPzo6KFxcZHsxLDJ9KSk/KT9gO1xuXG4gICAgY29uc3QgcGF0dGVybiA9IG5ldyBSZWdFeHAoYF4ke2RhdGVQYXR0ZXJufSR7dGltZVBhdHRlcm59JGApO1xuICAgIGNvbnN0IG1hdGNoID0gdmFsdWUubWF0Y2gocGF0dGVybik7XG5cbiAgICBpZiAoIW1hdGNoKSByZXR1cm4gbnVsbDtcblxuICAgIHRyeSB7XG4gICAgICAgIGxldCBbXywgeWVhciwgbW9udGgsIGRheV0gPSBtYXRjaDtcblxuICAgICAgICBpZiAoeWVhci5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuICAgICAgICAgICAgY29uc3QgY2VudHVyeSA9IE1hdGguZmxvb3IoY3VycmVudFllYXIgLyAxMDApICogMTAwO1xuICAgICAgICAgICAgY29uc3QgdHdvRGlnaXRZZWFyID0gcGFyc2VJbnQoeWVhcik7XG4gICAgICAgICAgICB5ZWFyID0gU3RyaW5nKHR3b0RpZ2l0WWVhciA+IGN1cnJlbnRZZWFyICUgMTAwID8gY2VudHVyeSAtIDEwMCArIHR3b0RpZ2l0WWVhciA6IGNlbnR1cnkgKyB0d29EaWdpdFllYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbW9udGhOdW0gPSBwYXJzZUludChtb250aCk7XG4gICAgICAgIGNvbnN0IGRheU51bSA9IHBhcnNlSW50KGRheSk7XG5cbiAgICAgICAgaWYgKG1vbnRoTnVtIDwgMSB8fCBtb250aE51bSA+IDEyKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0ludmFsaWQgbW9udGg6JywgbW9udGhOdW0pO1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtYXhEYXlzID0gbmV3IERhdGUocGFyc2VJbnQoeWVhciksIG1vbnRoTnVtLCAwKS5nZXREYXRlKCk7XG4gICAgICAgIGlmIChkYXlOdW0gPCAxIHx8IGRheU51bSA+IG1heERheXMpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignSW52YWxpZCBkYXk6JywgZGF5TnVtKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3RhbmRhcmREYXRlID0gYCR7eWVhcn0tJHtTdHJpbmcobW9udGhOdW0pLnBhZFN0YXJ0KDIsICcwJyl9LSR7U3RyaW5nKGRheU51bSkucGFkU3RhcnQoMiwgJzAnKX1gO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGltZXN0YW1wOiBuZXcgVGlueURhdGUoc3RhbmRhcmREYXRlKS5nZXRVbml4VGltZSgpXG4gICAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdJbnZhbGlkIGRhdGU6JywgdmFsdWUpO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59XG4iXX0=
@@ -1,28 +1,12 @@
1
- import { AITableFieldType } from '../../../core';
2
- import { AttachmentField } from './attachment';
3
- import { DateField } from './date';
4
- import { LinkField } from './link';
5
- import { MemberField } from './member';
6
- import { NumberField } from './number';
7
- import { ProgressField } from './progress';
8
- import { RateField } from './rate';
9
- import { RichTextField } from './rich-text';
10
- import { SelectField } from './select';
11
- import { TextField } from './text';
12
- export const FieldModelMap = {
13
- [AITableFieldType.text]: new TextField(),
14
- [AITableFieldType.richText]: new RichTextField(),
15
- [AITableFieldType.select]: new SelectField(),
16
- [AITableFieldType.date]: new DateField(),
17
- [AITableFieldType.createdAt]: new DateField(),
18
- [AITableFieldType.updatedAt]: new DateField(),
19
- [AITableFieldType.number]: new NumberField(),
20
- [AITableFieldType.rate]: new RateField(),
21
- [AITableFieldType.link]: new LinkField(),
22
- [AITableFieldType.member]: new MemberField(),
23
- [AITableFieldType.progress]: new ProgressField(),
24
- [AITableFieldType.createdBy]: new MemberField(),
25
- [AITableFieldType.updatedBy]: new MemberField(),
26
- [AITableFieldType.attachment]: new AttachmentField()
27
- };
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9maWVsZC9tb2RlbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR25DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVuQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQW9DO0lBQzFELENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLGFBQWEsRUFBRTtJQUNoRCxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQzVDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxTQUFTLEVBQUU7SUFDeEMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUM3QyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQzdDLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLFNBQVMsRUFBRTtJQUN4QyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxFQUFFO0lBQ3hDLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLGFBQWEsRUFBRTtJQUNoRCxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksV0FBVyxFQUFFO0lBQy9DLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxXQUFXLEVBQUU7SUFDL0MsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLGVBQWUsRUFBRTtDQUN2RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUlUYWJsZUZpZWxkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQXR0YWNobWVudEZpZWxkIH0gZnJvbSAnLi9hdHRhY2htZW50JztcbmltcG9ydCB7IERhdGVGaWVsZCB9IGZyb20gJy4vZGF0ZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQnO1xuXG5pbXBvcnQgeyBMaW5rRmllbGQgfSBmcm9tICcuL2xpbmsnO1xuaW1wb3J0IHsgTWVtYmVyRmllbGQgfSBmcm9tICcuL21lbWJlcic7XG5pbXBvcnQgeyBOdW1iZXJGaWVsZCB9IGZyb20gJy4vbnVtYmVyJztcbmltcG9ydCB7IFByb2dyZXNzRmllbGQgfSBmcm9tICcuL3Byb2dyZXNzJztcbmltcG9ydCB7IFJhdGVGaWVsZCB9IGZyb20gJy4vcmF0ZSc7XG5pbXBvcnQgeyBSaWNoVGV4dEZpZWxkIH0gZnJvbSAnLi9yaWNoLXRleHQnO1xuaW1wb3J0IHsgU2VsZWN0RmllbGQgfSBmcm9tICcuL3NlbGVjdCc7XG5pbXBvcnQgeyBUZXh0RmllbGQgfSBmcm9tICcuL3RleHQnO1xuXG5leHBvcnQgY29uc3QgRmllbGRNb2RlbE1hcDogUmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEZpZWxkPiA9IHtcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS50ZXh0XTogbmV3IFRleHRGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnJpY2hUZXh0XTogbmV3IFJpY2hUZXh0RmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5zZWxlY3RdOiBuZXcgU2VsZWN0RmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5kYXRlXTogbmV3IERhdGVGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRBdF06IG5ldyBEYXRlRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQXRdOiBuZXcgRGF0ZUZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUubnVtYmVyXTogbmV3IE51bWJlckZpZWxkKCksXG4gICAgW0FJVGFibGVGaWVsZFR5cGUucmF0ZV06IG5ldyBSYXRlRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5saW5rXTogbmV3IExpbmtGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLm1lbWJlcl06IG5ldyBNZW1iZXJGaWVsZCgpLFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnByb2dyZXNzXTogbmV3IFByb2dyZXNzRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5jcmVhdGVkQnldOiBuZXcgTWVtYmVyRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQnldOiBuZXcgTWVtYmVyRmllbGQoKSxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5hdHRhY2htZW50XTogbmV3IEF0dGFjaG1lbnRGaWVsZCgpXG59O1xuIl19
1
+ export * from '../../../core';
2
+ export * from './attachment';
3
+ export * from './date';
4
+ export * from './link';
5
+ export * from './member';
6
+ export * from './number';
7
+ export * from './progress';
8
+ export * from './rate';
9
+ export * from './rich-text';
10
+ export * from './select';
11
+ export * from './text';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy91dGlscy9maWVsZC9tb2RlbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4uLy4uLy4uL2NvcmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdHRhY2htZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsnO1xuZXhwb3J0ICogZnJvbSAnLi9tZW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL3JhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0JztcbiJdfQ==