@ai-table/grid 0.0.73 → 0.1.0

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 (232) hide show
  1. package/angular-konva/components/container.component.d.ts.map +1 -1
  2. package/angular-konva/components/shape.component.d.ts.map +1 -1
  3. package/angular-konva/components/stage.component.d.ts.map +1 -1
  4. package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
  5. package/components/cell-editors/date/date-editor.component.d.ts.map +1 -1
  6. package/components/cell-editors/link/edit-link/edit-link.component.d.ts.map +1 -1
  7. package/components/cell-editors/link/link-editor.component.d.ts.map +1 -1
  8. package/components/cell-editors/number/number-editor.component.d.ts.map +1 -1
  9. package/components/cell-editors/select/select-editor.component.d.ts.map +1 -1
  10. package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
  11. package/components/cell-views/select/option.component.d.ts.map +1 -1
  12. package/components/context-menu/context-menu.component.d.ts.map +1 -1
  13. package/components/drag/drag.component.d.ts.map +1 -1
  14. package/components/field-menu/field-menu.component.d.ts.map +1 -1
  15. package/components/field-setting/field-setting.component.d.ts.map +1 -1
  16. package/core/context.d.ts +2 -0
  17. package/core/context.d.ts.map +1 -1
  18. package/core/types/ai-table.d.ts.map +1 -1
  19. package/core/utils/field.d.ts.map +1 -1
  20. package/core/utils/queries.d.ts.map +1 -1
  21. package/core/utils/short-id.d.ts.map +1 -1
  22. package/dom-grid.component.d.ts.map +1 -1
  23. package/fesm2022/ai-table-grid.mjs +322 -310
  24. package/fesm2022/ai-table-grid.mjs.map +1 -1
  25. package/grid-base.component.d.ts +3 -1
  26. package/grid-base.component.d.ts.map +1 -1
  27. package/grid.component.d.ts +1 -1
  28. package/grid.component.d.ts.map +1 -1
  29. package/package.json +3 -5
  30. package/pipes/grid.pipe.d.ts.map +1 -1
  31. package/renderer/components/action-icon.component.d.ts.map +1 -1
  32. package/renderer/components/add-field-column.component.d.ts.map +1 -1
  33. package/renderer/components/cells/attachment.component.d.ts.map +1 -1
  34. package/renderer/components/cells/link.component.d.ts.map +1 -1
  35. package/renderer/components/cells/progress.component.d.ts.map +1 -1
  36. package/renderer/components/cells/rate.component.d.ts.map +1 -1
  37. package/renderer/components/cells/rich-text.component.d.ts.map +1 -1
  38. package/renderer/components/cells.component.d.ts.map +1 -1
  39. package/renderer/components/field-head.component.d.ts +2 -2
  40. package/renderer/components/field-head.component.d.ts.map +1 -1
  41. package/renderer/components/field-icon.component.d.ts.map +1 -1
  42. package/renderer/components/frozen-cells.component.d.ts.map +1 -1
  43. package/renderer/components/frozen-heads.component.d.ts +1 -1
  44. package/renderer/components/frozen-heads.component.d.ts.map +1 -1
  45. package/renderer/components/frozen-placeholder-cells.component.d.ts.map +1 -1
  46. package/renderer/components/heads.component.d.ts +1 -1
  47. package/renderer/components/heads.component.d.ts.map +1 -1
  48. package/renderer/components/hover-cell.component.d.ts.map +1 -1
  49. package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
  50. package/renderer/components/icon.component.d.ts.map +1 -1
  51. package/renderer/components/other-rows.component.d.ts.map +1 -1
  52. package/renderer/components/placeholder-cells.component.d.ts.map +1 -1
  53. package/renderer/components/text.component.d.ts.map +1 -1
  54. package/renderer/creations/create-active-cell-border.d.ts.map +1 -1
  55. package/renderer/creations/create-cells.d.ts.map +1 -1
  56. package/renderer/creations/create-heads.d.ts.map +1 -1
  57. package/renderer/drawers/add-row-layout-drawer.d.ts +1 -1
  58. package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
  59. package/renderer/drawers/cell-drawer.d.ts.map +1 -1
  60. package/renderer/drawers/drawer.d.ts +1 -1
  61. package/renderer/renderer.component.d.ts +5 -4
  62. package/renderer/renderer.component.d.ts.map +1 -1
  63. package/types/cell.d.ts +2 -0
  64. package/types/cell.d.ts.map +1 -1
  65. package/types/component-config.d.ts +2 -0
  66. package/types/component-config.d.ts.map +1 -1
  67. package/types/grid.d.ts +4 -0
  68. package/types/grid.d.ts.map +1 -1
  69. package/types/row.d.ts +1 -0
  70. package/types/row.d.ts.map +1 -1
  71. package/utils/build.d.ts.map +1 -1
  72. package/utils/clipboard/clipboard.d.ts.map +1 -1
  73. package/utils/clipboard/copy.d.ts.map +1 -1
  74. package/utils/clipboard/paste.d.ts +5 -1
  75. package/utils/clipboard/paste.d.ts.map +1 -1
  76. package/utils/common.d.ts.map +1 -1
  77. package/utils/field/model/date.d.ts.map +1 -1
  78. package/utils/field/model/link.d.ts.map +1 -1
  79. package/utils/field/model/progress.d.ts.map +1 -1
  80. package/utils/field/model/text.d.ts.map +1 -1
  81. package/utils/get-text-width.d.ts.map +1 -1
  82. package/utils/i18n.d.ts +2 -0
  83. package/utils/i18n.d.ts.map +1 -1
  84. package/utils/match-keywords.d.ts.map +1 -1
  85. package/utils/position.d.ts.map +1 -1
  86. package/utils/style.d.ts.map +1 -1
  87. package/utils/text-measure.d.ts.map +1 -1
  88. package/utils/visible-range.d.ts.map +1 -1
  89. package/esm2022/ai-table-grid.mjs +0 -5
  90. package/esm2022/angular-konva/components/container.component.mjs +0 -29
  91. package/esm2022/angular-konva/components/container.token.mjs +0 -3
  92. package/esm2022/angular-konva/components/index.mjs +0 -4
  93. package/esm2022/angular-konva/components/shape.component.mjs +0 -142
  94. package/esm2022/angular-konva/components/stage.component.mjs +0 -123
  95. package/esm2022/angular-konva/index.mjs +0 -5
  96. package/esm2022/angular-konva/interfaces/component.mjs +0 -4
  97. package/esm2022/angular-konva/interfaces/config.mjs +0 -2
  98. package/esm2022/angular-konva/interfaces/event-object.mjs +0 -2
  99. package/esm2022/angular-konva/interfaces/index.mjs +0 -5
  100. package/esm2022/angular-konva/interfaces/shape.mjs +0 -42
  101. package/esm2022/angular-konva/utils/apply-node-props.mjs +0 -67
  102. package/esm2022/angular-konva/utils/common.mjs +0 -48
  103. package/esm2022/angular-konva/utils/index.mjs +0 -5
  104. package/esm2022/angular-konva/utils/types.mjs +0 -2
  105. package/esm2022/angular-konva/utils/update-picture.mjs +0 -7
  106. package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +0 -56
  107. package/esm2022/components/cell-editors/date/date-editor.component.mjs +0 -87
  108. package/esm2022/components/cell-editors/link/edit-link/edit-link.component.mjs +0 -81
  109. package/esm2022/components/cell-editors/link/link-editor.component.mjs +0 -122
  110. package/esm2022/components/cell-editors/number/number-editor.component.mjs +0 -41
  111. package/esm2022/components/cell-editors/select/select-editor.component.mjs +0 -74
  112. package/esm2022/components/cell-editors/text/text-editor.component.mjs +0 -76
  113. package/esm2022/components/cell-views/select/option.component.mjs +0 -28
  114. package/esm2022/components/context-menu/context-menu.component.mjs +0 -42
  115. package/esm2022/components/drag/drag.component.mjs +0 -300
  116. package/esm2022/components/field-menu/field-menu.component.mjs +0 -47
  117. package/esm2022/components/field-setting/field-setting.component.mjs +0 -142
  118. package/esm2022/components/index.mjs +0 -10
  119. package/esm2022/constants/colors.mjs +0 -19
  120. package/esm2022/constants/editor.mjs +0 -11
  121. package/esm2022/constants/file-icon.mjs +0 -342
  122. package/esm2022/constants/grid.mjs +0 -35
  123. package/esm2022/constants/icon.mjs +0 -30
  124. package/esm2022/constants/index.mjs +0 -7
  125. package/esm2022/constants/table.mjs +0 -78
  126. package/esm2022/constants/text.mjs +0 -23
  127. package/esm2022/core/constants/field.mjs +0 -107
  128. package/esm2022/core/context.mjs +0 -29
  129. package/esm2022/core/coordinate.mjs +0 -222
  130. package/esm2022/core/index.mjs +0 -6
  131. package/esm2022/core/types/ai-table.mjs +0 -57
  132. package/esm2022/core/types/core.mjs +0 -2
  133. package/esm2022/core/types/index.mjs +0 -3
  134. package/esm2022/core/utils/common.mjs +0 -45
  135. package/esm2022/core/utils/field.mjs +0 -64
  136. package/esm2022/core/utils/id-creator.mjs +0 -21
  137. package/esm2022/core/utils/index.mjs +0 -5
  138. package/esm2022/core/utils/queries.mjs +0 -80
  139. package/esm2022/core/utils/short-id.mjs +0 -53
  140. package/esm2022/dom-grid.component.mjs +0 -80
  141. package/esm2022/grid-base.component.mjs +0 -145
  142. package/esm2022/grid.component.mjs +0 -649
  143. package/esm2022/index.mjs +0 -2
  144. package/esm2022/pipes/grid.pipe.mjs +0 -110
  145. package/esm2022/pipes/index.mjs +0 -2
  146. package/esm2022/public-api.mjs +0 -12
  147. package/esm2022/renderer/components/action-icon.component.mjs +0 -117
  148. package/esm2022/renderer/components/add-field-column.component.mjs +0 -88
  149. package/esm2022/renderer/components/cells/attachment.component.mjs +0 -107
  150. package/esm2022/renderer/components/cells/cells.mjs +0 -6
  151. package/esm2022/renderer/components/cells/index.mjs +0 -7
  152. package/esm2022/renderer/components/cells/link.component.mjs +0 -89
  153. package/esm2022/renderer/components/cells/progress.component.mjs +0 -268
  154. package/esm2022/renderer/components/cells/rate.component.mjs +0 -153
  155. package/esm2022/renderer/components/cells/rich-text.component.mjs +0 -95
  156. package/esm2022/renderer/components/cells.component.mjs +0 -35
  157. package/esm2022/renderer/components/field-head.component.mjs +0 -146
  158. package/esm2022/renderer/components/field-icon.component.mjs +0 -72
  159. package/esm2022/renderer/components/frozen-cells.component.mjs +0 -36
  160. package/esm2022/renderer/components/frozen-heads.component.mjs +0 -214
  161. package/esm2022/renderer/components/frozen-placeholder-cells.component.mjs +0 -38
  162. package/esm2022/renderer/components/heads.component.mjs +0 -38
  163. package/esm2022/renderer/components/hover-cell.component.mjs +0 -104
  164. package/esm2022/renderer/components/hover-row-heads.component.mjs +0 -132
  165. package/esm2022/renderer/components/icon.component.mjs +0 -84
  166. package/esm2022/renderer/components/index.mjs +0 -15
  167. package/esm2022/renderer/components/other-rows.component.mjs +0 -68
  168. package/esm2022/renderer/components/placeholder-cells.component.mjs +0 -33
  169. package/esm2022/renderer/components/text.component.mjs +0 -67
  170. package/esm2022/renderer/creations/create-active-cell-border.mjs +0 -70
  171. package/esm2022/renderer/creations/create-cells.mjs +0 -190
  172. package/esm2022/renderer/creations/create-heads.mjs +0 -51
  173. package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +0 -98
  174. package/esm2022/renderer/drawers/cell-drawer.mjs +0 -673
  175. package/esm2022/renderer/drawers/drawer.mjs +0 -947
  176. package/esm2022/renderer/drawers/layout-drawer.mjs +0 -64
  177. package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +0 -131
  178. package/esm2022/renderer/index.mjs +0 -4
  179. package/esm2022/renderer/interfaces/hover-cell.mjs +0 -4
  180. package/esm2022/renderer/interfaces/index.mjs +0 -2
  181. package/esm2022/renderer/renderer.component.mjs +0 -197
  182. package/esm2022/services/event.service.mjs +0 -241
  183. package/esm2022/services/field.service.mjs +0 -56
  184. package/esm2022/services/index.mjs +0 -4
  185. package/esm2022/services/selection.service.mjs +0 -151
  186. package/esm2022/types/avatar.mjs +0 -27
  187. package/esm2022/types/canvas.mjs +0 -2
  188. package/esm2022/types/cell.mjs +0 -2
  189. package/esm2022/types/clipboard.mjs +0 -2
  190. package/esm2022/types/component-config.mjs +0 -7
  191. package/esm2022/types/field.mjs +0 -2
  192. package/esm2022/types/grid.mjs +0 -17
  193. package/esm2022/types/index.mjs +0 -10
  194. package/esm2022/types/layout.mjs +0 -2
  195. package/esm2022/types/row.mjs +0 -6
  196. package/esm2022/utils/build.mjs +0 -39
  197. package/esm2022/utils/cell.mjs +0 -80
  198. package/esm2022/utils/clear-cells.mjs +0 -23
  199. package/esm2022/utils/clipboard/clipboard.mjs +0 -88
  200. package/esm2022/utils/clipboard/copy.mjs +0 -99
  201. package/esm2022/utils/clipboard/extract.mjs +0 -38
  202. package/esm2022/utils/clipboard/index.mjs +0 -5
  203. package/esm2022/utils/clipboard/paste.mjs +0 -188
  204. package/esm2022/utils/common.mjs +0 -50
  205. package/esm2022/utils/field/field-operable.mjs +0 -2
  206. package/esm2022/utils/field/field.mjs +0 -20
  207. package/esm2022/utils/field/index.mjs +0 -4
  208. package/esm2022/utils/field/model/attachment.mjs +0 -56
  209. package/esm2022/utils/field/model/date.mjs +0 -141
  210. package/esm2022/utils/field/model/index.mjs +0 -12
  211. package/esm2022/utils/field/model/link.mjs +0 -56
  212. package/esm2022/utils/field/model/member.mjs +0 -81
  213. package/esm2022/utils/field/model/number.mjs +0 -59
  214. package/esm2022/utils/field/model/progress.mjs +0 -69
  215. package/esm2022/utils/field/model/rate.mjs +0 -58
  216. package/esm2022/utils/field/model/rich-text.mjs +0 -39
  217. package/esm2022/utils/field/model/select.mjs +0 -131
  218. package/esm2022/utils/field/model/text.mjs +0 -32
  219. package/esm2022/utils/field/operate.mjs +0 -73
  220. package/esm2022/utils/file.mjs +0 -116
  221. package/esm2022/utils/get-placeholder-cells.mjs +0 -66
  222. package/esm2022/utils/get-text-width.mjs +0 -30
  223. package/esm2022/utils/hover-cell.mjs +0 -25
  224. package/esm2022/utils/i18n.mjs +0 -87
  225. package/esm2022/utils/image-cache.mjs +0 -57
  226. package/esm2022/utils/index.mjs +0 -19
  227. package/esm2022/utils/match-keywords.mjs +0 -15
  228. package/esm2022/utils/os.mjs +0 -16
  229. package/esm2022/utils/position.mjs +0 -48
  230. package/esm2022/utils/style.mjs +0 -37
  231. package/esm2022/utils/text-measure.mjs +0 -122
  232. package/esm2022/utils/visible-range.mjs +0 -42
@@ -1,142 +0,0 @@
1
- import { NgClass, NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, booleanAttribute, computed, inject, input, model, output, signal } from '@angular/core';
3
- import { FormsModule } from '@angular/forms';
4
- import { ThyButton } from 'ngx-tethys/button';
5
- import { ThyDropdownDirective, ThyDropdownMenuComponent, ThyDropdownMenuItemDirective, ThyDropdownMenuItemExtendIconDirective, ThyDropdownMenuItemIconDirective, ThyDropdownMenuItemNameDirective } from 'ngx-tethys/dropdown';
6
- import { ThyFormModule, ThyUniqueCheckValidator } from 'ngx-tethys/form';
7
- import { ThyIcon } from 'ngx-tethys/icon';
8
- import { ThyInputCount, ThyInputDirective, ThyInputGroup } from 'ngx-tethys/input';
9
- import { ThySwitch } from 'ngx-tethys/switch';
10
- import { ThyPopoverRef } from 'ngx-tethys/popover';
11
- import { ThyAutofocusDirective } from 'ngx-tethys/shared';
12
- import { of } from 'rxjs';
13
- import { AITableFieldType } from '@ai-table/utils';
14
- import { AITableFieldIsSameOptionPipe } from '../../pipes';
15
- import { AITableGridI18nKey, getI18nTextByKey } from '../../utils/i18n';
16
- import { createDefaultFieldName, getFieldOptionByField, getFieldOptions } from '../../core';
17
- import * as i0 from "@angular/core";
18
- import * as i1 from "@angular/forms";
19
- import * as i2 from "ngx-tethys/form";
20
- export class AITableFieldSetting {
21
- constructor() {
22
- this.aiEditField = model.required();
23
- this.aiTable = input.required();
24
- this.aiExternalTemplate = input(null);
25
- this.isUpdate = input(false, { transform: booleanAttribute });
26
- this.addField = output();
27
- this.setField = output();
28
- this.selectedFieldOption = computed(() => {
29
- return getFieldOptionByField(this.aiTable(), this.aiEditField());
30
- });
31
- this.fieldMaxLength = 32;
32
- this.validatorConfig = computed(() => {
33
- return {
34
- validationMessages: {
35
- fieldName: {
36
- required: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.fieldNameRequired),
37
- thyUniqueCheck: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.fieldNameDuplicate)
38
- }
39
- }
40
- };
41
- });
42
- this.fieldOptions = computed(() => {
43
- return getFieldOptions(this.aiTable());
44
- });
45
- this.aITableFieldType = AITableFieldType;
46
- this.isMultipleMember = false;
47
- this.isManualInputName = signal(false);
48
- this.thyPopoverRef = inject((ThyPopoverRef));
49
- this.checkUniqueName = (fieldName) => {
50
- fieldName = fieldName?.trim();
51
- return of(!!this.aiTable()
52
- .fields()
53
- ?.find((field) => field.name === fieldName && this.aiEditField()?._id !== field._id));
54
- };
55
- this.i18nTexts = computed(() => {
56
- return {
57
- columnName: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.fieldColumnName),
58
- columnNamePlaceholder: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.fieldColumnNamePlaceholder),
59
- fieldType: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.fieldType),
60
- allowMultipleMembers: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.allowMultipleMembers),
61
- cancel: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.cancel),
62
- confirm: getI18nTextByKey(this.aiTable(), AITableGridI18nKey.confirm)
63
- };
64
- });
65
- }
66
- ngOnInit() {
67
- this.isMultipleMember =
68
- this.aiEditField().type === AITableFieldType.member && !!this.aiEditField().settings?.is_multiple;
69
- }
70
- selectFieldType(field) {
71
- const fieldsSizeMap = this.aiTable().gridData().fieldsSizeMap;
72
- this.aiEditField.update((item) => {
73
- const width = fieldsSizeMap[item._id] ?? field.width;
74
- const settings = field.settings || {};
75
- const name = this.isManualInputName() ? item.name : createDefaultFieldName(this.aiTable(), field);
76
- return { ...item, ...field, width, name, settings };
77
- });
78
- setTimeout(() => {
79
- this.thyPopoverRef.updatePosition();
80
- }, 0);
81
- }
82
- editFieldProperty() {
83
- if (this.isUpdate()) {
84
- this.setField.emit({
85
- field: this.aiEditField(),
86
- path: [this.aiEditField()._id]
87
- });
88
- }
89
- else {
90
- this.addField.emit(this.aiEditField());
91
- }
92
- this.thyPopoverRef.close();
93
- }
94
- multipleMemberChange() {
95
- this.aiEditField.set({
96
- ...this.aiEditField(),
97
- settings: {
98
- ...(this.aiEditField().settings || {}),
99
- is_multiple: this.isMultipleMember
100
- }
101
- });
102
- }
103
- fieldTypeClick(e) {
104
- e.preventDefault();
105
- e.stopPropagation();
106
- }
107
- nameChange(event) {
108
- this.isManualInputName.set(true);
109
- }
110
- cancel() {
111
- this.thyPopoverRef.close();
112
- }
113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFieldSetting, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
114
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableFieldSetting, isStandalone: true, selector: "ai-table-field-setting", inputs: { aiEditField: { classPropertyName: "aiEditField", publicName: "aiEditField", isSignal: true, isRequired: true, transformFunction: null }, aiTable: { classPropertyName: "aiTable", publicName: "aiTable", isSignal: true, isRequired: true, transformFunction: null }, aiExternalTemplate: { classPropertyName: "aiExternalTemplate", publicName: "aiExternalTemplate", isSignal: true, isRequired: false, transformFunction: null }, isUpdate: { classPropertyName: "isUpdate", publicName: "isUpdate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { aiEditField: "aiEditFieldChange", addField: "addField", setField: "setField" }, host: { classAttribute: "field-setting d-block pl-5 pr-5 pb-5 pt-4" }, ngImport: i0, template: "<form thyForm name=\"createPropertyForm\" [thyFormValidatorConfig]=\"validatorConfig()\" thyLayout=\"vertical\">\n <thy-form-group thyLabelRequired [thyLabelText]=\"i18nTexts().columnName\">\n <thy-input-group>\n <input\n thyInput\n [thyAutofocus]=\"true\"\n name=\"fieldName\"\n [maxlength]=\"fieldMaxLength\"\n [(ngModel)]=\"aiEditField().name\"\n (ngModelChange)=\"nameChange($event)\"\n required\n [placeholder]=\"i18nTexts().columnNamePlaceholder\"\n [thyUniqueCheck]=\"checkUniqueName\"\n />\n <ng-template #suffix>\n <thy-input-count></thy-input-count>\n </ng-template>\n </thy-input-group>\n </thy-form-group>\n <thy-form-group [thyLabelText]=\"i18nTexts().fieldType\">\n <div class=\"thy-dropdown-menu py-0\">\n <div class=\"ml-n5 mr-n5\">\n <span\n thyDropdownMenuItem\n [thyDropdown]=\"menu\"\n [thyDisabled]=\"isUpdate()\"\n thyTrigger=\"hover\"\n thyPlacement=\"right\"\n (click)=\"fieldTypeClick($event)\"\n >\n <thy-icon thyDropdownMenuItemIcon [thyIconName]=\"selectedFieldOption().icon\"></thy-icon>\n <span thyDropdownMenuItemName>{{ selectedFieldOption().name }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\" class=\"text-desc\"></thy-icon>\n </span>\n </div>\n </div>\n\n @if (selectedFieldOption().type === aITableFieldType.member) {\n <div class=\"d-flex justify-content-between mt-3\">\n {{ i18nTexts().allowMultipleMembers }}\n <thy-switch\n name=\"isMultipleMember\"\n [thyDisabled]=\"isUpdate()\"\n [(ngModel)]=\"isMultipleMember\"\n (ngModelChange)=\"multipleMemberChange()\"\n thySize=\"sm\"\n ></thy-switch>\n </div>\n }\n </thy-form-group>\n @if (aiExternalTemplate()) {\n <ng-container *ngTemplateOutlet=\"aiExternalTemplate()\"></ng-container>\n }\n <thy-form-group-footer thyAlign=\"right\">\n <button thyButton=\"link-secondary\" (click)=\"cancel()\" thySize=\"sm\">{{ i18nTexts().cancel }}</button>\n <button thyButton=\"primary\" (thyFormSubmit)=\"editFieldProperty()\" thySize=\"sm\">{{ i18nTexts().confirm }}</button>\n </thy-form-group-footer>\n</form>\n\n<thy-dropdown-menu #menu>\n @for (item of fieldOptions(); track $index) {\n <a\n thyDropdownMenuItem\n href=\"javascript:;\"\n [ngClass]=\"{\n active: (item | fieldIsSameOption: aiEditField())\n }\"\n (click)=\"selectFieldType(item)\"\n >\n <thy-icon [thyIconName]=\"item.icon!\"></thy-icon>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n </a>\n }\n</thy-dropdown-menu>\n", styles: [":host{width:350px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyInputGroup, selector: "thy-input-group", inputs: ["thyAppendText", "thyAppendTextTranslateKey", "thyPrependText", "thyPrependTextTranslateKey", "thySize"] }, { kind: "component", type: ThyInputCount, selector: "thy-input-count", inputs: ["thyInput"] }, { kind: "directive", type: ThyInputDirective, selector: "input[thyInput], select[thyInput], textarea[thyInput]", inputs: ["thySize"], exportAs: ["thyInput"] }, { kind: "directive", type: ThyUniqueCheckValidator, selector: "[thyUniqueCheck]", inputs: ["thyUniqueCheck"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "directive", type: ThyDropdownDirective, selector: "[thyDropdown]", inputs: ["thyDropdownMenu", "thyDropdown", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyActiveClass", "thyPopoverOptions", "thyPlacement", "thyMenuInsideClosable", "thyPanelClass"], outputs: ["thyActiveChange"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemIconDirective, selector: "[thyDropdownMenuItemIcon]" }, { kind: "directive", type: ThyDropdownMenuItemNameDirective, selector: "[thyDropdownMenuItemName]" }, { kind: "directive", type: ThyDropdownMenuItemExtendIconDirective, selector: "[thyDropdownMenuItemExtendIcon]" }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "component", type: ThySwitch, selector: "thy-switch", inputs: ["thyType", "thySize", "thyDisabled", "thyLoading"], outputs: ["thyChange"] }, { kind: "ngmodule", type: ThyFormModule }, { kind: "directive", type: i2.ThyFormDirective, selector: "[thyForm],[thy-form]", inputs: ["thyLayout", "thyEnterKeyMode", "thyFormValidatorConfig"], exportAs: ["thyForm"] }, { kind: "component", type: i2.ThyFormGroup, selector: "thy-form-group", inputs: ["thyLabelText", "thyLabelTextTranslateKey", "thyLabelRequired", "thyLabelPaddingTopClear", "thyFeedbackIcon", "thyTipsMode", "thyTips", "thyTipsTranslateKey", "thyRowFill"] }, { kind: "directive", type: i2.ThyFormSubmitDirective, selector: "[thyFormSubmit],[thy-form-submit]", outputs: ["thyFormSubmit"] }, { kind: "component", type: i2.ThyFormGroupFooter, selector: "thy-form-group-footer", inputs: ["thyAlign"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ThyAutofocusDirective, selector: "input[thyAutofocus],textarea[thyAutofocus]", inputs: ["thyAutofocus", "thyAutoSelect"] }, { kind: "pipe", type: AITableFieldIsSameOptionPipe, name: "fieldIsSameOption" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
115
- }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableFieldSetting, decorators: [{
117
- type: Component,
118
- args: [{ selector: 'ai-table-field-setting', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
119
- NgClass,
120
- FormsModule,
121
- ThyIcon,
122
- ThyInputGroup,
123
- ThyInputCount,
124
- ThyInputDirective,
125
- ThyUniqueCheckValidator,
126
- ThyDropdownMenuComponent,
127
- ThyDropdownDirective,
128
- ThyDropdownMenuItemDirective,
129
- ThyDropdownMenuItemIconDirective,
130
- ThyDropdownMenuItemNameDirective,
131
- ThyDropdownMenuItemExtendIconDirective,
132
- ThyButton,
133
- ThySwitch,
134
- ThyFormModule,
135
- NgTemplateOutlet,
136
- ThyAutofocusDirective,
137
- AITableFieldIsSameOptionPipe
138
- ], host: {
139
- class: 'field-setting d-block pl-5 pr-5 pb-5 pt-4'
140
- }, template: "<form thyForm name=\"createPropertyForm\" [thyFormValidatorConfig]=\"validatorConfig()\" thyLayout=\"vertical\">\n <thy-form-group thyLabelRequired [thyLabelText]=\"i18nTexts().columnName\">\n <thy-input-group>\n <input\n thyInput\n [thyAutofocus]=\"true\"\n name=\"fieldName\"\n [maxlength]=\"fieldMaxLength\"\n [(ngModel)]=\"aiEditField().name\"\n (ngModelChange)=\"nameChange($event)\"\n required\n [placeholder]=\"i18nTexts().columnNamePlaceholder\"\n [thyUniqueCheck]=\"checkUniqueName\"\n />\n <ng-template #suffix>\n <thy-input-count></thy-input-count>\n </ng-template>\n </thy-input-group>\n </thy-form-group>\n <thy-form-group [thyLabelText]=\"i18nTexts().fieldType\">\n <div class=\"thy-dropdown-menu py-0\">\n <div class=\"ml-n5 mr-n5\">\n <span\n thyDropdownMenuItem\n [thyDropdown]=\"menu\"\n [thyDisabled]=\"isUpdate()\"\n thyTrigger=\"hover\"\n thyPlacement=\"right\"\n (click)=\"fieldTypeClick($event)\"\n >\n <thy-icon thyDropdownMenuItemIcon [thyIconName]=\"selectedFieldOption().icon\"></thy-icon>\n <span thyDropdownMenuItemName>{{ selectedFieldOption().name }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\" class=\"text-desc\"></thy-icon>\n </span>\n </div>\n </div>\n\n @if (selectedFieldOption().type === aITableFieldType.member) {\n <div class=\"d-flex justify-content-between mt-3\">\n {{ i18nTexts().allowMultipleMembers }}\n <thy-switch\n name=\"isMultipleMember\"\n [thyDisabled]=\"isUpdate()\"\n [(ngModel)]=\"isMultipleMember\"\n (ngModelChange)=\"multipleMemberChange()\"\n thySize=\"sm\"\n ></thy-switch>\n </div>\n }\n </thy-form-group>\n @if (aiExternalTemplate()) {\n <ng-container *ngTemplateOutlet=\"aiExternalTemplate()\"></ng-container>\n }\n <thy-form-group-footer thyAlign=\"right\">\n <button thyButton=\"link-secondary\" (click)=\"cancel()\" thySize=\"sm\">{{ i18nTexts().cancel }}</button>\n <button thyButton=\"primary\" (thyFormSubmit)=\"editFieldProperty()\" thySize=\"sm\">{{ i18nTexts().confirm }}</button>\n </thy-form-group-footer>\n</form>\n\n<thy-dropdown-menu #menu>\n @for (item of fieldOptions(); track $index) {\n <a\n thyDropdownMenuItem\n href=\"javascript:;\"\n [ngClass]=\"{\n active: (item | fieldIsSameOption: aiEditField())\n }\"\n (click)=\"selectFieldType(item)\"\n >\n <thy-icon [thyIconName]=\"item.icon!\"></thy-icon>\n <span thyDropdownMenuItemName>{{ item.name }}</span>\n </a>\n }\n</thy-dropdown-menu>\n", styles: [":host{width:350px}\n"] }]
141
- }] });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc2V0dGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2ZpZWxkLXNldHRpbmcvZmllbGQtc2V0dGluZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBR1QsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxFQUNILG9CQUFvQixFQUNwQix3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLHNDQUFzQyxFQUN0QyxnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBQ25DLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENB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QUVELFVBQVUsQ0FBQyxLQUFZO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7K0dBdEdRLG1CQUFtQjttR0FBbkIsbUJBQW1CLHN5QkMxRWhDLHlvR0EwRUEsOEVEL0JRLE9BQU8sbUZBQ1AsV0FBVyx3NkNBQ1gsT0FBTyxzTUFDUCxhQUFhLCtLQUNiLGFBQWEsa0ZBQ2IsaUJBQWlCLCtJQUNqQix1QkFBdUIseUZBQ3ZCLHdCQUF3QiwwR0FDeEIsb0JBQW9CLG1SQUNwQiw0QkFBNEIsc0dBQzVCLGdDQUFnQyxzRUFDaEMsZ0NBQWdDLHNFQUNoQyxzQ0FBc0MsNEVBQ3RDLFNBQVMsb0xBQ1QsU0FBUywySUFDVCxhQUFhLCtyQkFDYixnQkFBZ0Isb0pBQ2hCLHFCQUFxQiw2SEFDckIsNEJBQTRCOzs0RkFhdkIsbUJBQW1CO2tCQXJDL0IsU0FBUzsrQkFDSSx3QkFBd0IsY0FFdEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNMLE9BQU87d0JBQ1AsV0FBVzt3QkFDWCxPQUFPO3dCQUNQLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4QixvQkFBb0I7d0JBQ3BCLDRCQUE0Qjt3QkFDNUIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7d0JBQ2hDLHNDQUFzQzt3QkFDdEMsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLDRCQUE0QjtxQkFDL0IsUUFDSzt3QkFDRixLQUFLLEVBQUUsMkNBQTJDO3FCQUNyRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgY29tcHV0ZWQsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIG1vZGVsLFxuICAgIG91dHB1dCxcbiAgICBzaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRoeUJ1dHRvbiB9IGZyb20gJ25neC10ZXRoeXMvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgVGh5RHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgIFRoeURyb3Bkb3duTWVudUl0ZW1EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbUV4dGVuZEljb25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbUljb25EaXJlY3RpdmUsXG4gICAgVGh5RHJvcGRvd25NZW51SXRlbU5hbWVEaXJlY3RpdmVcbn0gZnJvbSAnbmd4LXRldGh5cy9kcm9wZG93bic7XG5pbXBvcnQgeyBUaHlGb3JtTW9kdWxlLCBUaHlVbmlxdWVDaGVja1ZhbGlkYXRvciB9IGZyb20gJ25neC10ZXRoeXMvZm9ybSc7XG5pbXBvcnQgeyBUaHlJY29uIH0gZnJvbSAnbmd4LXRldGh5cy9pY29uJztcbmltcG9ydCB7IFRoeUlucHV0Q291bnQsIFRoeUlucHV0RGlyZWN0aXZlLCBUaHlJbnB1dEdyb3VwIH0gZnJvbSAnbmd4LXRldGh5cy9pbnB1dCc7XG5pbXBvcnQgeyBUaHlTd2l0Y2ggfSBmcm9tICduZ3gtdGV0aHlzL3N3aXRjaCc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFRoeUF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJ25neC10ZXRoeXMvc2hhcmVkJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZE9wdGlvbiwgU2V0RmllbGRPcHRpb25zLCBBSVRhYmxlRmllbGRUeXBlLCBNZW1iZXJTZXR0aW5ncyB9IGZyb20gJ0BhaS10YWJsZS91dGlscyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRJc1NhbWVPcHRpb25QaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQUlUYWJsZUdyaWRJMThuS2V5LCBnZXRJMThuVGV4dEJ5S2V5IH0gZnJvbSAnLi4vLi4vdXRpbHMvaTE4bic7XG5pbXBvcnQgeyBBSVRhYmxlLCBjcmVhdGVEZWZhdWx0RmllbGROYW1lLCBnZXRGaWVsZE9wdGlvbkJ5RmllbGQsIGdldEZpZWxkT3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZpZWxkLXNldHRpbmcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1zZXR0aW5nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFRoeUljb24sXG4gICAgICAgIFRoeUlucHV0R3JvdXAsXG4gICAgICAgIFRoeUlucHV0Q291bnQsXG4gICAgICAgIFRoeUlucHV0RGlyZWN0aXZlLFxuICAgICAgICBUaHlVbmlxdWVDaGVja1ZhbGlkYXRvcixcbiAgICAgICAgVGh5RHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgICAgICBUaHlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbURpcmVjdGl2ZSxcbiAgICAgICAgVGh5RHJvcGRvd25NZW51SXRlbUljb25EaXJlY3RpdmUsXG4gICAgICAgIFRoeURyb3Bkb3duTWVudUl0ZW1OYW1lRGlyZWN0aXZlLFxuICAgICAgICBUaHlEcm9wZG93bk1lbnVJdGVtRXh0ZW5kSWNvbkRpcmVjdGl2ZSxcbiAgICAgICAgVGh5QnV0dG9uLFxuICAgICAgICBUaHlTd2l0Y2gsXG4gICAgICAgIFRoeUZvcm1Nb2R1bGUsXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIFRoeUF1dG9mb2N1c0RpcmVjdGl2ZSxcbiAgICAgICAgQUlUYWJsZUZpZWxkSXNTYW1lT3B0aW9uUGlwZVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZpZWxkLXNldHRpbmcgZC1ibG9jayBwbC01IHByLTUgcGItNSBwdC00J1xuICAgIH0sXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIGBcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEFJVGFibGVGaWVsZFNldHRpbmcgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGFpRWRpdEZpZWxkID0gbW9kZWwucmVxdWlyZWQ8QUlUYWJsZUZpZWxkPigpO1xuXG4gICAgYWlUYWJsZSA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGU+KCk7XG5cbiAgICBhaUV4dGVybmFsVGVtcGxhdGUgPSBpbnB1dDxUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbD4obnVsbCk7XG5cbiAgICBpc1VwZGF0ZSA9IGlucHV0PGJvb2xlYW4sIHVua25vd24+KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAgIGFkZEZpZWxkID0gb3V0cHV0PEFJVGFibGVGaWVsZD4oKTtcblxuICAgIHNldEZpZWxkID0gb3V0cHV0PFNldEZpZWxkT3B0aW9ucz4oKTtcblxuICAgIHNlbGVjdGVkRmllbGRPcHRpb24gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBnZXRGaWVsZE9wdGlvbkJ5RmllbGQodGhpcy5haVRhYmxlKCksIHRoaXMuYWlFZGl0RmllbGQoKSkhO1xuICAgIH0pO1xuXG4gICAgZmllbGRNYXhMZW5ndGggPSAzMjtcblxuICAgIHZhbGlkYXRvckNvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHZhbGlkYXRpb25NZXNzYWdlczoge1xuICAgICAgICAgICAgICAgIGZpZWxkTmFtZToge1xuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogZ2V0STE4blRleHRCeUtleSh0aGlzLmFpVGFibGUoKSwgQUlUYWJsZUdyaWRJMThuS2V5LmZpZWxkTmFtZVJlcXVpcmVkKSxcbiAgICAgICAgICAgICAgICAgICAgdGh5VW5pcXVlQ2hlY2s6IGdldEkxOG5UZXh0QnlLZXkodGhpcy5haVRhYmxlKCksIEFJVGFibGVHcmlkSTE4bktleS5maWVsZE5hbWVEdXBsaWNhdGUpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgZmllbGRPcHRpb25zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gZ2V0RmllbGRPcHRpb25zKHRoaXMuYWlUYWJsZSgpKTtcbiAgICB9KTtcblxuICAgIGFJVGFibGVGaWVsZFR5cGUgPSBBSVRhYmxlRmllbGRUeXBlO1xuXG4gICAgaXNNdWx0aXBsZU1lbWJlciA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBpc01hbnVhbElucHV0TmFtZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBwcm90ZWN0ZWQgdGh5UG9wb3ZlclJlZiA9IGluamVjdChUaHlQb3BvdmVyUmVmPEFJVGFibGVGaWVsZFNldHRpbmc+KTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTXVsdGlwbGVNZW1iZXIgPVxuICAgICAgICAgICAgdGhpcy5haUVkaXRGaWVsZCgpLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUubWVtYmVyICYmICEhKHRoaXMuYWlFZGl0RmllbGQoKS5zZXR0aW5ncyBhcyBNZW1iZXJTZXR0aW5ncyk/LmlzX211bHRpcGxlO1xuICAgIH1cblxuICAgIGNoZWNrVW5pcXVlTmFtZSA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICBmaWVsZE5hbWUgPSBmaWVsZE5hbWU/LnRyaW0oKTtcbiAgICAgICAgcmV0dXJuIG9mKFxuICAgICAgICAgICAgISF0aGlzLmFpVGFibGUoKVxuICAgICAgICAgICAgICAgIC5maWVsZHMoKVxuICAgICAgICAgICAgICAgID8uZmluZCgoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09IGZpZWxkTmFtZSAmJiB0aGlzLmFpRWRpdEZpZWxkKCk/Ll9pZCAhPT0gZmllbGQuX2lkKVxuICAgICAgICApO1xuICAgIH07XG5cbiAgICBzZWxlY3RGaWVsZFR5cGUoZmllbGQ6IEFJVGFibGVGaWVsZE9wdGlvbikge1xuICAgICAgICBjb25zdCBmaWVsZHNTaXplTWFwID0gdGhpcy5haVRhYmxlKCkuZ3JpZERhdGEoKS5maWVsZHNTaXplTWFwO1xuICAgICAgICB0aGlzLmFpRWRpdEZpZWxkLnVwZGF0ZSgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBmaWVsZHNTaXplTWFwW2l0ZW0uX2lkXSA/PyBmaWVsZC53aWR0aDtcbiAgICAgICAgICAgIGNvbnN0IHNldHRpbmdzID0gZmllbGQuc2V0dGluZ3MgfHwge307XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gdGhpcy5pc01hbnVhbElucHV0TmFtZSgpID8gaXRlbS5uYW1lIDogY3JlYXRlRGVmYXVsdEZpZWxkTmFtZSh0aGlzLmFpVGFibGUoKSwgZmllbGQpO1xuICAgICAgICAgICAgcmV0dXJuIHsgLi4uaXRlbSwgLi4uZmllbGQsIHdpZHRoLCBuYW1lLCBzZXR0aW5ncyB9O1xuICAgICAgICB9KTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRoeVBvcG92ZXJSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgZWRpdEZpZWxkUHJvcGVydHkoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVXBkYXRlKCkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0RmllbGQuZW1pdCh7XG4gICAgICAgICAgICAgICAgZmllbGQ6IHRoaXMuYWlFZGl0RmllbGQoKSxcbiAgICAgICAgICAgICAgICBwYXRoOiBbdGhpcy5haUVkaXRGaWVsZCgpLl9pZF1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hZGRGaWVsZC5lbWl0KHRoaXMuYWlFZGl0RmllbGQoKSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50aHlQb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgbXVsdGlwbGVNZW1iZXJDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuYWlFZGl0RmllbGQuc2V0KHtcbiAgICAgICAgICAgIC4uLnRoaXMuYWlFZGl0RmllbGQoKSxcbiAgICAgICAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgICAgICAgICAgLi4uKHRoaXMuYWlFZGl0RmllbGQoKS5zZXR0aW5ncyB8fCB7fSksXG4gICAgICAgICAgICAgICAgaXNfbXVsdGlwbGU6IHRoaXMuaXNNdWx0aXBsZU1lbWJlclxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmaWVsZFR5cGVDbGljayhlOiBFdmVudCkge1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgbmFtZUNoYW5nZShldmVudDogRXZlbnQpIHtcbiAgICAgICAgdGhpcy5pc01hbnVhbElucHV0TmFtZS5zZXQodHJ1ZSk7XG4gICAgfVxuXG4gICAgY2FuY2VsKCkge1xuICAgICAgICB0aGlzLnRoeVBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBpMThuVGV4dHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjb2x1bW5OYW1lOiBnZXRJMThuVGV4dEJ5S2V5KHRoaXMuYWlUYWJsZSgpLCBBSVRhYmxlR3JpZEkxOG5LZXkuZmllbGRDb2x1bW5OYW1lKSxcbiAgICAgICAgICAgIGNvbHVtbk5hbWVQbGFjZWhvbGRlcjogZ2V0STE4blRleHRCeUtleSh0aGlzLmFpVGFibGUoKSwgQUlUYWJsZUdyaWRJMThuS2V5LmZpZWxkQ29sdW1uTmFtZVBsYWNlaG9sZGVyKSxcbiAgICAgICAgICAgIGZpZWxkVHlwZTogZ2V0STE4blRleHRCeUtleSh0aGlzLmFpVGFibGUoKSwgQUlUYWJsZUdyaWRJMThuS2V5LmZpZWxkVHlwZSksXG4gICAgICAgICAgICBhbGxvd011bHRpcGxlTWVtYmVyczogZ2V0STE4blRleHRCeUtleSh0aGlzLmFpVGFibGUoKSwgQUlUYWJsZUdyaWRJMThuS2V5LmFsbG93TXVsdGlwbGVNZW1iZXJzKSxcbiAgICAgICAgICAgIGNhbmNlbDogZ2V0STE4blRleHRCeUtleSh0aGlzLmFpVGFibGUoKSwgQUlUYWJsZUdyaWRJMThuS2V5LmNhbmNlbCksXG4gICAgICAgICAgICBjb25maXJtOiBnZXRJMThuVGV4dEJ5S2V5KHRoaXMuYWlUYWJsZSgpLCBBSVRhYmxlR3JpZEkxOG5LZXkuY29uZmlybSlcbiAgICAgICAgfTtcbiAgICB9KTtcbn1cbiIsIjxmb3JtIHRoeUZvcm0gbmFtZT1cImNyZWF0ZVByb3BlcnR5Rm9ybVwiIFt0aHlGb3JtVmFsaWRhdG9yQ29uZmlnXT1cInZhbGlkYXRvckNvbmZpZygpXCIgdGh5TGF5b3V0PVwidmVydGljYWxcIj5cbiAgICA8dGh5LWZvcm0tZ3JvdXAgdGh5TGFiZWxSZXF1aXJlZCBbdGh5TGFiZWxUZXh0XT1cImkxOG5UZXh0cygpLmNvbHVtbk5hbWVcIj5cbiAgICAgICAgPHRoeS1pbnB1dC1ncm91cD5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHRoeUlucHV0XG4gICAgICAgICAgICAgICAgW3RoeUF1dG9mb2N1c109XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiZmllbGROYW1lXCJcbiAgICAgICAgICAgICAgICBbbWF4bGVuZ3RoXT1cImZpZWxkTWF4TGVuZ3RoXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImFpRWRpdEZpZWxkKCkubmFtZVwiXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwibmFtZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJpMThuVGV4dHMoKS5jb2x1bW5OYW1lUGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFt0aHlVbmlxdWVDaGVja109XCJjaGVja1VuaXF1ZU5hbWVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3VmZml4PlxuICAgICAgICAgICAgICAgIDx0aHktaW5wdXQtY291bnQ+PC90aHktaW5wdXQtY291bnQ+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RoeS1pbnB1dC1ncm91cD5cbiAgICA8L3RoeS1mb3JtLWdyb3VwPlxuICAgIDx0aHktZm9ybS1ncm91cCBbdGh5TGFiZWxUZXh0XT1cImkxOG5UZXh0cygpLmZpZWxkVHlwZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGh5LWRyb3Bkb3duLW1lbnUgcHktMFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sLW41IG1yLW41XCI+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgdGh5RHJvcGRvd25NZW51SXRlbVxuICAgICAgICAgICAgICAgICAgICBbdGh5RHJvcGRvd25dPVwibWVudVwiXG4gICAgICAgICAgICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpc1VwZGF0ZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgdGh5VHJpZ2dlcj1cImhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgdGh5UGxhY2VtZW50PVwicmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmllbGRUeXBlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8dGh5LWljb24gdGh5RHJvcGRvd25NZW51SXRlbUljb24gW3RoeUljb25OYW1lXT1cInNlbGVjdGVkRmllbGRPcHRpb24oKS5pY29uXCI+PC90aHktaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gdGh5RHJvcGRvd25NZW51SXRlbU5hbWU+e3sgc2VsZWN0ZWRGaWVsZE9wdGlvbigpLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDx0aHktaWNvbiB0aHlEcm9wZG93bk1lbnVJdGVtRXh0ZW5kSWNvbiB0aHlJY29uTmFtZT1cImFuZ2xlLXJpZ2h0XCIgY2xhc3M9XCJ0ZXh0LWRlc2NcIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAaWYgKHNlbGVjdGVkRmllbGRPcHRpb24oKS50eXBlID09PSBhSVRhYmxlRmllbGRUeXBlLm1lbWJlcikge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0zXCI+XG4gICAgICAgICAgICAgICAge3sgaTE4blRleHRzKCkuYWxsb3dNdWx0aXBsZU1lbWJlcnMgfX1cbiAgICAgICAgICAgICAgICA8dGh5LXN3aXRjaFxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaXNNdWx0aXBsZU1lbWJlclwiXG4gICAgICAgICAgICAgICAgICAgIFt0aHlEaXNhYmxlZF09XCJpc1VwZGF0ZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpc011bHRpcGxlTWVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwibXVsdGlwbGVNZW1iZXJDaGFuZ2UoKVwiXG4gICAgICAgICAgICAgICAgICAgIHRoeVNpemU9XCJzbVwiXG4gICAgICAgICAgICAgICAgPjwvdGh5LXN3aXRjaD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC90aHktZm9ybS1ncm91cD5cbiAgICBAaWYgKGFpRXh0ZXJuYWxUZW1wbGF0ZSgpKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhaUV4dGVybmFsVGVtcGxhdGUoKVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cbiAgICA8dGh5LWZvcm0tZ3JvdXAtZm9vdGVyIHRoeUFsaWduPVwicmlnaHRcIj5cbiAgICAgICAgPGJ1dHRvbiB0aHlCdXR0b249XCJsaW5rLXNlY29uZGFyeVwiIChjbGljayk9XCJjYW5jZWwoKVwiIHRoeVNpemU9XCJzbVwiPnt7IGkxOG5UZXh0cygpLmNhbmNlbCB9fTwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHRoeUJ1dHRvbj1cInByaW1hcnlcIiAodGh5Rm9ybVN1Ym1pdCk9XCJlZGl0RmllbGRQcm9wZXJ0eSgpXCIgdGh5U2l6ZT1cInNtXCI+e3sgaTE4blRleHRzKCkuY29uZmlybSB9fTwvYnV0dG9uPlxuICAgIDwvdGh5LWZvcm0tZ3JvdXAtZm9vdGVyPlxuPC9mb3JtPlxuXG48dGh5LWRyb3Bkb3duLW1lbnUgI21lbnU+XG4gICAgQGZvciAoaXRlbSBvZiBmaWVsZE9wdGlvbnMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgIDxhXG4gICAgICAgICAgICB0aHlEcm9wZG93bk1lbnVJdGVtXG4gICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICBhY3RpdmU6IChpdGVtIHwgZmllbGRJc1NhbWVPcHRpb246IGFpRWRpdEZpZWxkKCkpXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RGaWVsZFR5cGUoaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIml0ZW0uaWNvbiFcIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgPHNwYW4gdGh5RHJvcGRvd25NZW51SXRlbU5hbWU+e3sgaXRlbS5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgfVxuPC90aHktZHJvcGRvd24tbWVudT5cbiJdfQ==
@@ -1,10 +0,0 @@
1
- export * from './cell-editors/abstract-cell-editor.component';
2
- export * from './cell-editors/date/date-editor.component';
3
- export * from './cell-editors/link/link-editor.component';
4
- export * from './cell-editors/number/number-editor.component';
5
- export * from './cell-editors/select/select-editor.component';
6
- export * from './cell-editors/text/text-editor.component';
7
- export * from './cell-views/select/option.component';
8
- export * from './field-setting/field-setting.component';
9
- export * from './context-menu/context-menu.component';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jZWxsLWVkaXRvcnMvYWJzdHJhY3QtY2VsbC1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2VsbC1lZGl0b3JzL2RhdGUvZGF0ZS1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2VsbC1lZGl0b3JzL2xpbmsvbGluay1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2VsbC1lZGl0b3JzL251bWJlci9udW1iZXItZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NlbGwtZWRpdG9ycy9zZWxlY3Qvc2VsZWN0LWVkaXRvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jZWxsLWVkaXRvcnMvdGV4dC90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jZWxsLXZpZXdzL3NlbGVjdC9vcHRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQtc2V0dGluZy9maWVsZC1zZXR0aW5nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50JztcbiJdfQ==
@@ -1,19 +0,0 @@
1
- export const Colors = {
2
- primary: '#6698FF',
3
- gray100: '#f5f5f5',
4
- gray200: '#eee',
5
- gray300: '#ddd',
6
- gray800: '#333',
7
- gray600: '#999',
8
- gray700: '#666',
9
- white: '#fff',
10
- black: '#000',
11
- transparent: 'transparent',
12
- gray80: '#fafafa',
13
- headSelectedBgColor: '#EAEFFA',
14
- itemActiveBgColor: '#6698ff1a',
15
- itemMatchBgColor: '#ff9f731a',
16
- waring: '#ffcd5d',
17
- success: '#73d897'
18
- };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvY29uc3RhbnRzL2NvbG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUc7SUFDbEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLE1BQU07SUFDZixPQUFPLEVBQUUsTUFBTTtJQUNmLE9BQU8sRUFBRSxNQUFNO0lBQ2YsT0FBTyxFQUFFLE1BQU07SUFDZixPQUFPLEVBQUUsTUFBTTtJQUNmLEtBQUssRUFBRSxNQUFNO0lBQ2IsS0FBSyxFQUFFLE1BQU07SUFDYixXQUFXLEVBQUUsYUFBYTtJQUMxQixNQUFNLEVBQUUsU0FBUztJQUNqQixtQkFBbUIsRUFBRSxTQUFTO0lBQzlCLGlCQUFpQixFQUFFLFdBQVc7SUFDOUIsZ0JBQWdCLEVBQUUsV0FBVztJQUM3QixNQUFNLEVBQUUsU0FBUztJQUNqQixPQUFPLEVBQUUsU0FBUztDQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IENvbG9ycyA9IHtcbiAgICBwcmltYXJ5OiAnIzY2OThGRicsXG4gICAgZ3JheTEwMDogJyNmNWY1ZjUnLFxuICAgIGdyYXkyMDA6ICcjZWVlJyxcbiAgICBncmF5MzAwOiAnI2RkZCcsXG4gICAgZ3JheTgwMDogJyMzMzMnLFxuICAgIGdyYXk2MDA6ICcjOTk5JyxcbiAgICBncmF5NzAwOiAnIzY2NicsXG4gICAgd2hpdGU6ICcjZmZmJyxcbiAgICBibGFjazogJyMwMDAnLFxuICAgIHRyYW5zcGFyZW50OiAndHJhbnNwYXJlbnQnLFxuICAgIGdyYXk4MDogJyNmYWZhZmEnLFxuICAgIGhlYWRTZWxlY3RlZEJnQ29sb3I6ICcjRUFFRkZBJyxcbiAgICBpdGVtQWN0aXZlQmdDb2xvcjogJyM2Njk4ZmYxYScsXG4gICAgaXRlbU1hdGNoQmdDb2xvcjogJyNmZjlmNzMxYScsXG4gICAgd2FyaW5nOiAnI2ZmY2Q1ZCcsXG4gICAgc3VjY2VzczogJyM3M2Q4OTcnXG59O1xuIl19
@@ -1,11 +0,0 @@
1
- import { AITableFieldType } from '@ai-table/utils';
2
- import { DateCellEditorComponent, LinkCellEditorComponent, NumberCellEditorComponent, SelectCellEditorComponent, TextCellEditorComponent } from '../components';
3
- export const GRID_CELL_EDITOR_MAP = {
4
- [AITableFieldType.text]: TextCellEditorComponent,
5
- [AITableFieldType.richText]: TextCellEditorComponent,
6
- [AITableFieldType.select]: SelectCellEditorComponent,
7
- [AITableFieldType.number]: NumberCellEditorComponent,
8
- [AITableFieldType.date]: DateCellEditorComponent,
9
- [AITableFieldType.link]: LinkCellEditorComponent
10
- };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvY29uc3RhbnRzL2VkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLHVCQUF1QixFQUMxQixNQUFNLGVBQWUsQ0FBQztBQUV2QixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBMkM7SUFDeEUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSx1QkFBdUI7SUFDaEQsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsRUFBRSx1QkFBdUI7SUFDcEQsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSx5QkFBeUI7SUFDcEQsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSx5QkFBeUI7SUFDcEQsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSx1QkFBdUI7SUFDaEQsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSx1QkFBdUI7Q0FDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJVGFibGVGaWVsZFR5cGUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBEYXRlQ2VsbEVkaXRvckNvbXBvbmVudCxcbiAgICBMaW5rQ2VsbEVkaXRvckNvbXBvbmVudCxcbiAgICBOdW1iZXJDZWxsRWRpdG9yQ29tcG9uZW50LFxuICAgIFNlbGVjdENlbGxFZGl0b3JDb21wb25lbnQsXG4gICAgVGV4dENlbGxFZGl0b3JDb21wb25lbnRcbn0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5cbmV4cG9ydCBjb25zdCBHUklEX0NFTExfRURJVE9SX01BUDogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgYW55Pj4gPSB7XG4gICAgW0FJVGFibGVGaWVsZFR5cGUudGV4dF06IFRleHRDZWxsRWRpdG9yQ29tcG9uZW50LFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLnJpY2hUZXh0XTogVGV4dENlbGxFZGl0b3JDb21wb25lbnQsXG4gICAgW0FJVGFibGVGaWVsZFR5cGUuc2VsZWN0XTogU2VsZWN0Q2VsbEVkaXRvckNvbXBvbmVudCxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5udW1iZXJdOiBOdW1iZXJDZWxsRWRpdG9yQ29tcG9uZW50LFxuICAgIFtBSVRhYmxlRmllbGRUeXBlLmRhdGVdOiBEYXRlQ2VsbEVkaXRvckNvbXBvbmVudCxcbiAgICBbQUlUYWJsZUZpZWxkVHlwZS5saW5rXTogTGlua0NlbGxFZGl0b3JDb21wb25lbnRcbn07XG4iXX0=