@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.
- package/angular-konva/components/container.component.d.ts.map +1 -1
- package/angular-konva/components/shape.component.d.ts.map +1 -1
- package/angular-konva/components/stage.component.d.ts.map +1 -1
- package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
- package/components/cell-editors/date/date-editor.component.d.ts.map +1 -1
- package/components/cell-editors/link/edit-link/edit-link.component.d.ts.map +1 -1
- package/components/cell-editors/link/link-editor.component.d.ts.map +1 -1
- package/components/cell-editors/number/number-editor.component.d.ts.map +1 -1
- package/components/cell-editors/select/select-editor.component.d.ts.map +1 -1
- package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
- package/components/cell-views/select/option.component.d.ts.map +1 -1
- package/components/context-menu/context-menu.component.d.ts.map +1 -1
- package/components/drag/drag.component.d.ts.map +1 -1
- package/components/field-menu/field-menu.component.d.ts.map +1 -1
- package/components/field-setting/field-setting.component.d.ts.map +1 -1
- package/core/context.d.ts +2 -0
- package/core/context.d.ts.map +1 -1
- package/core/types/ai-table.d.ts.map +1 -1
- package/core/utils/field.d.ts.map +1 -1
- package/core/utils/queries.d.ts.map +1 -1
- package/core/utils/short-id.d.ts.map +1 -1
- package/dom-grid.component.d.ts.map +1 -1
- package/fesm2022/ai-table-grid.mjs +322 -310
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/grid-base.component.d.ts +3 -1
- package/grid-base.component.d.ts.map +1 -1
- package/grid.component.d.ts +1 -1
- package/grid.component.d.ts.map +1 -1
- package/package.json +3 -5
- package/pipes/grid.pipe.d.ts.map +1 -1
- package/renderer/components/action-icon.component.d.ts.map +1 -1
- package/renderer/components/add-field-column.component.d.ts.map +1 -1
- package/renderer/components/cells/attachment.component.d.ts.map +1 -1
- package/renderer/components/cells/link.component.d.ts.map +1 -1
- package/renderer/components/cells/progress.component.d.ts.map +1 -1
- package/renderer/components/cells/rate.component.d.ts.map +1 -1
- package/renderer/components/cells/rich-text.component.d.ts.map +1 -1
- package/renderer/components/cells.component.d.ts.map +1 -1
- package/renderer/components/field-head.component.d.ts +2 -2
- package/renderer/components/field-head.component.d.ts.map +1 -1
- package/renderer/components/field-icon.component.d.ts.map +1 -1
- package/renderer/components/frozen-cells.component.d.ts.map +1 -1
- package/renderer/components/frozen-heads.component.d.ts +1 -1
- package/renderer/components/frozen-heads.component.d.ts.map +1 -1
- package/renderer/components/frozen-placeholder-cells.component.d.ts.map +1 -1
- package/renderer/components/heads.component.d.ts +1 -1
- package/renderer/components/heads.component.d.ts.map +1 -1
- package/renderer/components/hover-cell.component.d.ts.map +1 -1
- package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
- package/renderer/components/icon.component.d.ts.map +1 -1
- package/renderer/components/other-rows.component.d.ts.map +1 -1
- package/renderer/components/placeholder-cells.component.d.ts.map +1 -1
- package/renderer/components/text.component.d.ts.map +1 -1
- package/renderer/creations/create-active-cell-border.d.ts.map +1 -1
- package/renderer/creations/create-cells.d.ts.map +1 -1
- package/renderer/creations/create-heads.d.ts.map +1 -1
- package/renderer/drawers/add-row-layout-drawer.d.ts +1 -1
- package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
- package/renderer/drawers/cell-drawer.d.ts.map +1 -1
- package/renderer/drawers/drawer.d.ts +1 -1
- package/renderer/renderer.component.d.ts +5 -4
- package/renderer/renderer.component.d.ts.map +1 -1
- package/types/cell.d.ts +2 -0
- package/types/cell.d.ts.map +1 -1
- package/types/component-config.d.ts +2 -0
- package/types/component-config.d.ts.map +1 -1
- package/types/grid.d.ts +4 -0
- package/types/grid.d.ts.map +1 -1
- package/types/row.d.ts +1 -0
- package/types/row.d.ts.map +1 -1
- package/utils/build.d.ts.map +1 -1
- package/utils/clipboard/clipboard.d.ts.map +1 -1
- package/utils/clipboard/copy.d.ts.map +1 -1
- package/utils/clipboard/paste.d.ts +5 -1
- package/utils/clipboard/paste.d.ts.map +1 -1
- package/utils/common.d.ts.map +1 -1
- package/utils/field/model/date.d.ts.map +1 -1
- package/utils/field/model/link.d.ts.map +1 -1
- package/utils/field/model/progress.d.ts.map +1 -1
- package/utils/field/model/text.d.ts.map +1 -1
- package/utils/get-text-width.d.ts.map +1 -1
- package/utils/i18n.d.ts +2 -0
- package/utils/i18n.d.ts.map +1 -1
- package/utils/match-keywords.d.ts.map +1 -1
- package/utils/position.d.ts.map +1 -1
- package/utils/style.d.ts.map +1 -1
- package/utils/text-measure.d.ts.map +1 -1
- package/utils/visible-range.d.ts.map +1 -1
- package/esm2022/ai-table-grid.mjs +0 -5
- package/esm2022/angular-konva/components/container.component.mjs +0 -29
- package/esm2022/angular-konva/components/container.token.mjs +0 -3
- package/esm2022/angular-konva/components/index.mjs +0 -4
- package/esm2022/angular-konva/components/shape.component.mjs +0 -142
- package/esm2022/angular-konva/components/stage.component.mjs +0 -123
- package/esm2022/angular-konva/index.mjs +0 -5
- package/esm2022/angular-konva/interfaces/component.mjs +0 -4
- package/esm2022/angular-konva/interfaces/config.mjs +0 -2
- package/esm2022/angular-konva/interfaces/event-object.mjs +0 -2
- package/esm2022/angular-konva/interfaces/index.mjs +0 -5
- package/esm2022/angular-konva/interfaces/shape.mjs +0 -42
- package/esm2022/angular-konva/utils/apply-node-props.mjs +0 -67
- package/esm2022/angular-konva/utils/common.mjs +0 -48
- package/esm2022/angular-konva/utils/index.mjs +0 -5
- package/esm2022/angular-konva/utils/types.mjs +0 -2
- package/esm2022/angular-konva/utils/update-picture.mjs +0 -7
- package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +0 -56
- package/esm2022/components/cell-editors/date/date-editor.component.mjs +0 -87
- package/esm2022/components/cell-editors/link/edit-link/edit-link.component.mjs +0 -81
- package/esm2022/components/cell-editors/link/link-editor.component.mjs +0 -122
- package/esm2022/components/cell-editors/number/number-editor.component.mjs +0 -41
- package/esm2022/components/cell-editors/select/select-editor.component.mjs +0 -74
- package/esm2022/components/cell-editors/text/text-editor.component.mjs +0 -76
- package/esm2022/components/cell-views/select/option.component.mjs +0 -28
- package/esm2022/components/context-menu/context-menu.component.mjs +0 -42
- package/esm2022/components/drag/drag.component.mjs +0 -300
- package/esm2022/components/field-menu/field-menu.component.mjs +0 -47
- package/esm2022/components/field-setting/field-setting.component.mjs +0 -142
- package/esm2022/components/index.mjs +0 -10
- package/esm2022/constants/colors.mjs +0 -19
- package/esm2022/constants/editor.mjs +0 -11
- package/esm2022/constants/file-icon.mjs +0 -342
- package/esm2022/constants/grid.mjs +0 -35
- package/esm2022/constants/icon.mjs +0 -30
- package/esm2022/constants/index.mjs +0 -7
- package/esm2022/constants/table.mjs +0 -78
- package/esm2022/constants/text.mjs +0 -23
- package/esm2022/core/constants/field.mjs +0 -107
- package/esm2022/core/context.mjs +0 -29
- package/esm2022/core/coordinate.mjs +0 -222
- package/esm2022/core/index.mjs +0 -6
- package/esm2022/core/types/ai-table.mjs +0 -57
- package/esm2022/core/types/core.mjs +0 -2
- package/esm2022/core/types/index.mjs +0 -3
- package/esm2022/core/utils/common.mjs +0 -45
- package/esm2022/core/utils/field.mjs +0 -64
- package/esm2022/core/utils/id-creator.mjs +0 -21
- package/esm2022/core/utils/index.mjs +0 -5
- package/esm2022/core/utils/queries.mjs +0 -80
- package/esm2022/core/utils/short-id.mjs +0 -53
- package/esm2022/dom-grid.component.mjs +0 -80
- package/esm2022/grid-base.component.mjs +0 -145
- package/esm2022/grid.component.mjs +0 -649
- package/esm2022/index.mjs +0 -2
- package/esm2022/pipes/grid.pipe.mjs +0 -110
- package/esm2022/pipes/index.mjs +0 -2
- package/esm2022/public-api.mjs +0 -12
- package/esm2022/renderer/components/action-icon.component.mjs +0 -117
- package/esm2022/renderer/components/add-field-column.component.mjs +0 -88
- package/esm2022/renderer/components/cells/attachment.component.mjs +0 -107
- package/esm2022/renderer/components/cells/cells.mjs +0 -6
- package/esm2022/renderer/components/cells/index.mjs +0 -7
- package/esm2022/renderer/components/cells/link.component.mjs +0 -89
- package/esm2022/renderer/components/cells/progress.component.mjs +0 -268
- package/esm2022/renderer/components/cells/rate.component.mjs +0 -153
- package/esm2022/renderer/components/cells/rich-text.component.mjs +0 -95
- package/esm2022/renderer/components/cells.component.mjs +0 -35
- package/esm2022/renderer/components/field-head.component.mjs +0 -146
- package/esm2022/renderer/components/field-icon.component.mjs +0 -72
- package/esm2022/renderer/components/frozen-cells.component.mjs +0 -36
- package/esm2022/renderer/components/frozen-heads.component.mjs +0 -214
- package/esm2022/renderer/components/frozen-placeholder-cells.component.mjs +0 -38
- package/esm2022/renderer/components/heads.component.mjs +0 -38
- package/esm2022/renderer/components/hover-cell.component.mjs +0 -104
- package/esm2022/renderer/components/hover-row-heads.component.mjs +0 -132
- package/esm2022/renderer/components/icon.component.mjs +0 -84
- package/esm2022/renderer/components/index.mjs +0 -15
- package/esm2022/renderer/components/other-rows.component.mjs +0 -68
- package/esm2022/renderer/components/placeholder-cells.component.mjs +0 -33
- package/esm2022/renderer/components/text.component.mjs +0 -67
- package/esm2022/renderer/creations/create-active-cell-border.mjs +0 -70
- package/esm2022/renderer/creations/create-cells.mjs +0 -190
- package/esm2022/renderer/creations/create-heads.mjs +0 -51
- package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +0 -98
- package/esm2022/renderer/drawers/cell-drawer.mjs +0 -673
- package/esm2022/renderer/drawers/drawer.mjs +0 -947
- package/esm2022/renderer/drawers/layout-drawer.mjs +0 -64
- package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +0 -131
- package/esm2022/renderer/index.mjs +0 -4
- package/esm2022/renderer/interfaces/hover-cell.mjs +0 -4
- package/esm2022/renderer/interfaces/index.mjs +0 -2
- package/esm2022/renderer/renderer.component.mjs +0 -197
- package/esm2022/services/event.service.mjs +0 -241
- package/esm2022/services/field.service.mjs +0 -56
- package/esm2022/services/index.mjs +0 -4
- package/esm2022/services/selection.service.mjs +0 -151
- package/esm2022/types/avatar.mjs +0 -27
- package/esm2022/types/canvas.mjs +0 -2
- package/esm2022/types/cell.mjs +0 -2
- package/esm2022/types/clipboard.mjs +0 -2
- package/esm2022/types/component-config.mjs +0 -7
- package/esm2022/types/field.mjs +0 -2
- package/esm2022/types/grid.mjs +0 -17
- package/esm2022/types/index.mjs +0 -10
- package/esm2022/types/layout.mjs +0 -2
- package/esm2022/types/row.mjs +0 -6
- package/esm2022/utils/build.mjs +0 -39
- package/esm2022/utils/cell.mjs +0 -80
- package/esm2022/utils/clear-cells.mjs +0 -23
- package/esm2022/utils/clipboard/clipboard.mjs +0 -88
- package/esm2022/utils/clipboard/copy.mjs +0 -99
- package/esm2022/utils/clipboard/extract.mjs +0 -38
- package/esm2022/utils/clipboard/index.mjs +0 -5
- package/esm2022/utils/clipboard/paste.mjs +0 -188
- package/esm2022/utils/common.mjs +0 -50
- package/esm2022/utils/field/field-operable.mjs +0 -2
- package/esm2022/utils/field/field.mjs +0 -20
- package/esm2022/utils/field/index.mjs +0 -4
- package/esm2022/utils/field/model/attachment.mjs +0 -56
- package/esm2022/utils/field/model/date.mjs +0 -141
- package/esm2022/utils/field/model/index.mjs +0 -12
- package/esm2022/utils/field/model/link.mjs +0 -56
- package/esm2022/utils/field/model/member.mjs +0 -81
- package/esm2022/utils/field/model/number.mjs +0 -59
- package/esm2022/utils/field/model/progress.mjs +0 -69
- package/esm2022/utils/field/model/rate.mjs +0 -58
- package/esm2022/utils/field/model/rich-text.mjs +0 -39
- package/esm2022/utils/field/model/select.mjs +0 -131
- package/esm2022/utils/field/model/text.mjs +0 -32
- package/esm2022/utils/field/operate.mjs +0 -73
- package/esm2022/utils/file.mjs +0 -116
- package/esm2022/utils/get-placeholder-cells.mjs +0 -66
- package/esm2022/utils/get-text-width.mjs +0 -30
- package/esm2022/utils/hover-cell.mjs +0 -25
- package/esm2022/utils/i18n.mjs +0 -87
- package/esm2022/utils/image-cache.mjs +0 -57
- package/esm2022/utils/index.mjs +0 -19
- package/esm2022/utils/match-keywords.mjs +0 -15
- package/esm2022/utils/os.mjs +0 -16
- package/esm2022/utils/position.mjs +0 -48
- package/esm2022/utils/style.mjs +0 -37
- package/esm2022/utils/text-measure.mjs +0 -122
- 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=
|