@truedat/df 7.5.9 → 7.5.11
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/package.json +43 -67
- package/src/components/DynamicFieldValue.js +0 -1
- package/src/components/DynamicForm.js +5 -4
- package/src/components/DynamicFormViewer.js +0 -1
- package/src/components/DynamicFormWithTranslations.js +3 -3
- package/src/components/EditableDynamicFieldValue.js +1 -2
- package/src/components/FieldGroupDetail.js +0 -1
- package/src/components/FieldGroupSegment.js +17 -29
- package/src/components/FieldGroupWithTranslations.js +19 -38
- package/src/components/FieldViewerValue.js +4 -7
- package/src/components/OriginLabel.js +0 -1
- package/src/components/SelectDynamicFormWithTranslations.js +4 -6
- package/src/components/SelectableDynamicForm.js +5 -11
- package/src/components/__tests__/DynamicFieldValue.spec.js +0 -1
- package/src/components/__tests__/DynamicForm.spec.js +25 -23
- package/src/components/__tests__/EditableDynamicFieldValue.spec.js +0 -1
- package/src/components/__tests__/FieldGroupDetail.spec.js +0 -1
- package/src/components/__tests__/FieldViewerValue.spec.js +1 -6
- package/src/components/__tests__/SelectableDynamicForm.spec.js +102 -46
- package/src/components/__tests__/__snapshots__/DynamicFieldValue.spec.js.snap +2 -2
- package/src/components/__tests__/__snapshots__/DynamicForm.spec.js.snap +94 -81
- package/src/components/__tests__/__snapshots__/FieldGroupDetail.spec.js.snap +2 -2
- package/src/components/__tests__/__snapshots__/FieldViewerValue.spec.js.snap +1 -7
- package/src/components/__tests__/__snapshots__/SelectableDynamicForm.spec.js.snap +39 -39
- package/src/components/hierarchies/Hierarchies.js +2 -4
- package/src/components/hierarchies/HierarchiesView.js +1 -2
- package/src/components/hierarchies/HierarchyCrumbs.js +1 -2
- package/src/components/hierarchies/HierarchyRoutes.js +44 -39
- package/src/components/hierarchies/HierarchyView.js +4 -7
- package/src/components/hierarchies/__tests__/Hierarchies.spec.js +2 -3
- package/src/components/hierarchies/__tests__/HierarchiesView.spec.js +3 -7
- package/src/components/hierarchies/__tests__/HierarchyCrumbs.spec.js +0 -1
- package/src/components/hierarchies/__tests__/HierarchyRoutes.spec.js +79 -0
- package/src/components/hierarchies/__tests__/HierarchyView.spec.js +2 -10
- package/src/components/hierarchies/__tests__/__snapshots__/Hierarchies.spec.js.snap +1 -0
- package/src/components/hierarchies/__tests__/__snapshots__/HierarchiesView.spec.js.snap +7 -5
- package/src/components/hierarchies/__tests__/__snapshots__/HierarchyCrumbs.spec.js.snap +4 -2
- package/src/components/hierarchies/__tests__/__snapshots__/HierarchyRoutes.spec.js.snap +60 -0
- package/src/components/hierarchies/__tests__/__snapshots__/HierarchyView.spec.js.snap +8 -6
- package/src/components/widgets/CheckboxField.js +0 -1
- package/src/components/widgets/ColorPickerField.js +2 -3
- package/src/components/widgets/DateField.js +0 -1
- package/src/components/widgets/DateTimeField.js +0 -1
- package/src/components/widgets/DomainDropdown.js +1 -1
- package/src/components/widgets/DomainPreview.js +1 -2
- package/src/components/widgets/DropdownDataLoader.js +3 -3
- package/src/components/widgets/DropdownField.js +5 -4
- package/src/components/widgets/DynamicField.js +0 -5
- package/src/components/widgets/EnrichedTextField.js +0 -1
- package/src/components/widgets/HierarchyDropdown.js +1 -1
- package/src/components/widgets/HierarchyPreview.js +0 -1
- package/src/components/widgets/IdentifierField.js +0 -1
- package/src/components/widgets/ImageField.js +1 -1
- package/src/components/widgets/ImagePreview.js +0 -1
- package/src/components/widgets/NumberField.js +6 -7
- package/src/components/widgets/PairListField.js +5 -6
- package/src/components/widgets/PasswordField.js +1 -2
- package/src/components/widgets/RadioField.js +0 -1
- package/src/components/widgets/StandardDropdown.js +0 -1
- package/src/components/widgets/StringField.js +0 -1
- package/src/components/widgets/SystemPreview.js +2 -3
- package/src/components/widgets/TableField.js +5 -5
- package/src/components/widgets/TextField.js +1 -2
- package/src/components/widgets/__tests__/CheckboxField.spec.js +33 -23
- package/src/components/widgets/__tests__/ColorPickerField.spec.js +5 -12
- package/src/components/widgets/__tests__/DateField.spec.js +5 -5
- package/src/components/widgets/__tests__/DateTimeField.spec.js +5 -5
- package/src/components/widgets/__tests__/DomainPreview.spec.js +12 -14
- package/src/components/widgets/__tests__/DropdownDataLoader.spec.js +5 -5
- package/src/components/widgets/__tests__/DropdownField.spec.js +18 -29
- package/src/components/widgets/__tests__/DynamicField.spec.js +0 -1
- package/src/components/widgets/__tests__/HierarchyDropdown.spec.js +4 -5
- package/src/components/widgets/__tests__/HierarchyPreview.spec.js +0 -1
- package/src/components/widgets/__tests__/ImageField.spec.js +5 -10
- package/src/components/widgets/__tests__/NumberField.spec.js +23 -5
- package/src/components/widgets/__tests__/PairListField.spec.js +69 -59
- package/src/components/widgets/__tests__/PasswordField.spec.js +3 -4
- package/src/components/widgets/__tests__/RadioField.spec.js +5 -5
- package/src/components/widgets/__tests__/StandardDropdown.spec.js +45 -46
- package/src/components/widgets/__tests__/StringField.spec.js +10 -13
- package/src/components/widgets/__tests__/SystemPreview.spec.js +13 -15
- package/src/components/widgets/__tests__/TableField.spec.js +32 -32
- package/src/components/widgets/__tests__/TextField.spec.js +5 -5
- package/src/components/widgets/__tests__/__snapshots__/CheckboxField.spec.js.snap +58 -29
- package/src/components/widgets/__tests__/__snapshots__/ColorPickerField.spec.js.snap +221 -36
- package/src/components/widgets/__tests__/__snapshots__/DateField.spec.js.snap +21 -16
- package/src/components/widgets/__tests__/__snapshots__/DateTimeField.spec.js.snap +21 -20
- package/src/components/widgets/__tests__/__snapshots__/DomainPreview.spec.js.snap +26 -21
- package/src/components/widgets/__tests__/__snapshots__/DropdownDataLoader.spec.js.snap +1 -1
- package/src/components/widgets/__tests__/__snapshots__/DropdownField.spec.js.snap +93 -43
- package/src/components/widgets/__tests__/__snapshots__/DynamicField.spec.js.snap +2 -14
- package/src/components/widgets/__tests__/__snapshots__/ImageField.spec.js.snap +16 -28
- package/src/components/widgets/__tests__/__snapshots__/NumberField.spec.js.snap +11 -9
- package/src/components/widgets/__tests__/__snapshots__/PairListField.spec.js.snap +53 -39
- package/src/components/widgets/__tests__/__snapshots__/PasswordField.spec.js.snap +15 -8
- package/src/components/widgets/__tests__/__snapshots__/RadioField.spec.js.snap +41 -22
- package/src/components/widgets/__tests__/__snapshots__/StandardDropdown.spec.js.snap +78 -31
- package/src/components/widgets/__tests__/__snapshots__/StringField.spec.js.snap +78 -38
- package/src/components/widgets/__tests__/__snapshots__/SystemPreview.spec.js.snap +24 -21
- package/src/components/widgets/__tests__/__snapshots__/TableField.spec.js.snap +138 -174
- package/src/components/widgets/__tests__/__snapshots__/TextField.spec.js.snap +12 -7
- package/src/reducers/__tests__/dfMessage.spec.js +14 -18
- package/src/reducers/dfMessage.js +8 -7
- package/src/selectors/index.js +0 -1
- package/src/templates/components/NewTemplate.js +0 -1
- package/src/templates/components/Template.js +10 -3
- package/src/templates/components/TemplateCard.js +3 -4
- package/src/templates/components/TemplateCrumbs.js +2 -3
- package/src/templates/components/TemplateFilters.js +0 -1
- package/src/templates/components/TemplateLoader.js +25 -101
- package/src/templates/components/TemplateRoutes.js +29 -45
- package/src/templates/components/Templates.js +1 -5
- package/src/templates/components/TemplatesContext.js +3 -7
- package/src/templates/components/TemplatesTable.js +1 -2
- package/src/templates/components/__tests__/NewTemplate.spec.js +5 -10
- package/src/templates/components/__tests__/Template.spec.js +0 -1
- package/src/templates/components/__tests__/TemplateLoader.spec.js +71 -109
- package/src/templates/components/__tests__/TemplateRoutes.spec.js +63 -0
- package/src/templates/components/__tests__/TemplatesTable.spec.js +15 -9
- package/src/templates/components/__tests__/__snapshots__/NewTemplate.spec.js.snap +335 -22
- package/src/templates/components/__tests__/__snapshots__/Template.spec.js.snap +49 -48
- package/src/templates/components/__tests__/__snapshots__/TemplateLoader.spec.js.snap +7 -1
- package/src/templates/components/__tests__/__snapshots__/TemplateRoutes.spec.js.snap +38 -0
- package/src/templates/components/__tests__/__snapshots__/TemplatesTable.spec.js.snap +94 -1
- package/src/templates/components/index.js +1 -2
- package/src/templates/components/templateForm/ActiveGroupForm.js +1 -4
- package/src/templates/components/templateForm/ConditionalFieldForm.js +0 -1
- package/src/templates/components/templateForm/DefaultValue.js +0 -1
- package/src/templates/components/templateForm/DependentDomain.js +0 -1
- package/src/templates/components/templateForm/DependentFormField.js +0 -1
- package/src/templates/components/templateForm/FieldForm.js +5 -5
- package/src/templates/components/templateForm/GroupsList.js +0 -1
- package/src/templates/components/templateForm/HierarchiesList.js +1 -2
- package/src/templates/components/templateForm/MandatoryConditional.js +0 -1
- package/src/templates/components/templateForm/SwitchListForm.js +2 -2
- package/src/templates/components/templateForm/SwitchSegment.js +0 -1
- package/src/templates/components/templateForm/TemplateForm.js +1 -1
- package/src/templates/components/templateForm/TemplateFormActions.js +3 -4
- package/src/templates/components/templateForm/ValuesField.js +1 -3
- package/src/templates/components/templateForm/ValuesListForm.js +3 -3
- package/src/templates/components/templateForm/ValuesSelector.js +0 -1
- package/src/templates/components/templateForm/__tests__/ActiveGroupForm.spec.js +8 -13
- package/src/templates/components/templateForm/__tests__/DefaultValue.spec.js +198 -113
- package/src/templates/components/templateForm/__tests__/DependentDomain.spec.js +0 -1
- package/src/templates/components/templateForm/__tests__/DependentFormField.spec.js +0 -1
- package/src/templates/components/templateForm/__tests__/FieldForm.spec.js +106 -72
- package/src/templates/components/templateForm/__tests__/GroupsList.spec.js +7 -12
- package/src/templates/components/templateForm/__tests__/MandatoryConditional.spec.js +0 -1
- package/src/templates/components/templateForm/__tests__/SwitchListForm.spec.js +71 -50
- package/src/templates/components/templateForm/__tests__/SwitchSegment.spec.js +37 -62
- package/src/templates/components/templateForm/__tests__/TemplateForm.spec.js +0 -1
- package/src/templates/components/templateForm/__tests__/TemplateFormActions.spec.js +19 -15
- package/src/templates/components/templateForm/__tests__/ValuesField.spec.js +84 -62
- package/src/templates/components/templateForm/__tests__/ValuesListForm.spec.js +108 -144
- package/src/templates/components/templateForm/__tests__/ValuesSelector.spec.js +36 -36
- package/src/templates/components/templateForm/__tests__/__snapshots__/ActiveGroupForm.spec.js.snap +654 -86
- package/src/templates/components/templateForm/__tests__/__snapshots__/DefaultValue.spec.js.snap +45 -23
- package/src/templates/components/templateForm/__tests__/__snapshots__/FieldForm.spec.js.snap +1700 -1025
- package/src/templates/components/templateForm/__tests__/__snapshots__/GroupsList.spec.js.snap +44 -39
- package/src/templates/components/templateForm/__tests__/__snapshots__/SwitchListForm.spec.js.snap +225 -60
- package/src/templates/components/templateForm/__tests__/__snapshots__/SwitchSegment.spec.js.snap +1 -1
- package/src/templates/components/templateForm/__tests__/__snapshots__/TemplateForm.spec.js.snap +89 -92
- package/src/templates/components/templateForm/__tests__/__snapshots__/TemplateFormActions.spec.js.snap +66 -100
- package/src/templates/components/templateForm/__tests__/__snapshots__/ValuesField.spec.js.snap +542 -231
- package/src/templates/components/templateForm/__tests__/__snapshots__/ValuesListForm.spec.js.snap +264 -268
- package/src/templates/components/templateForm/__tests__/__snapshots__/ValuesSelector.spec.js.snap +146 -11
- package/src/templates/reducers/__tests__/allTemplates.spec.js +1 -1
- package/src/templates/reducers/__tests__/template.spec.js +3 -2
- package/src/templates/reducers/__tests__/templateLoading.spec.js +2 -2
- package/src/templates/reducers/__tests__/templates.spec.js +1 -1
- package/src/templates/reducers/__tests__/templatesLoading.spec.js +1 -1
- package/src/templates/reducers/allTemplates.js +1 -2
- package/src/templates/reducers/template.js +2 -1
- package/src/templates/reducers/templateRedirect.js +1 -1
- package/src/templates/reducers/templates.js +1 -1
- package/src/templates/reducers/templatesLoading.js +1 -1
- package/src/templates/routines.js +0 -2
- package/src/templates/sagas/__tests__/deleteTemplate.spec.js +2 -2
- package/src/templates/sagas/__tests__/fetchTemplates.spec.js +3 -6
- package/src/templates/sagas/__tests__/updateTemplate.spec.js +4 -4
- package/src/templates/sagas/deleteTemplate.js +1 -1
- package/src/templates/sagas/fetchTemplate.js +1 -1
- package/src/templates/sagas/fetchTemplates.js +1 -1
- package/src/templates/sagas/updateTemplate.js +1 -1
- package/src/templates/utils/filterSwitches.js +2 -2
- package/src/templates/utils/filterValues.js +2 -2
- package/src/api/hierarchies.js +0 -4
- package/src/components/FieldGroupCopy.js +0 -108
- package/src/components/FieldGroupSubSegment/FieldGroupSubSegment.js +0 -181
- package/src/components/FieldGroupSubSegment/__tests__/FieldGroupSubSegment.spec.js +0 -221
- package/src/components/FieldGroupSubSegment/__tests__/__snapshots__/FieldGroupSubSegment.spec.js.snap +0 -230
- package/src/components/FieldGroupSubSegment/constants.js +0 -68
- package/src/components/FieldGroupSubSegment/copyValidations.js +0 -75
- package/src/components/FieldGroupSubSegment/handleCopyModule.js +0 -186
- package/src/components/__tests__/FieldGroupCopy.spec.js +0 -14
- package/src/components/__tests__/__snapshots__/FieldGroupCopy.spec.js.snap +0 -307
- package/src/components/widgets/CopyField/CopyField.js +0 -270
- package/src/components/widgets/CopyField/CopyFieldCell.js +0 -138
- package/src/components/widgets/CopyField/CopyFieldColumn.js +0 -53
- package/src/components/widgets/CopyField/CopyFieldSelectableCell.js +0 -71
- package/src/components/widgets/CopyField/CustomStyles.js +0 -91
- package/src/components/widgets/CopyField/__tests__/CopyField.spec.js +0 -82
- package/src/components/widgets/CopyField/__tests__/CopyFieldCell.spec.js +0 -67
- package/src/components/widgets/CopyField/__tests__/CopyFieldColumn.spec.js +0 -33
- package/src/components/widgets/CopyField/__tests__/CopyFieldSelectableCell.spec.js +0 -49
- package/src/components/widgets/CopyField/__tests__/__snapshots__/CopyField.spec.js.snap +0 -279
- package/src/components/widgets/CopyField/__tests__/__snapshots__/CopyFieldCell.spec.js.snap +0 -67
- package/src/components/widgets/CopyField/__tests__/__snapshots__/CopyFieldColumn.spec.js.snap +0 -42
- package/src/components/widgets/CopyField/__tests__/__snapshots__/CopyFieldSelectableCell.spec.js.snap +0 -60
- package/src/hooks/useHierarchies.js +0 -112
- package/src/selectors/subscopedTemplates.js +0 -16
- package/src/templates/components/TemplatesLoader.js +0 -24
- package/src/templates/components/__tests__/TemplatesLoader.spec.js +0 -29
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
import _ from "lodash/fp";
|
|
2
|
-
import React, { useState, useRef } from "react";
|
|
3
|
-
import PropTypes from "prop-types";
|
|
4
|
-
import { Segment, Header, Button, Icon, Popup } from "semantic-ui-react";
|
|
5
|
-
import { FormattedMessage } from "react-intl";
|
|
6
|
-
import DynamicField from "../widgets/DynamicField";
|
|
7
|
-
import { validateCopyEntries, validateCopyFields } from "./copyValidations";
|
|
8
|
-
import { getCopyJson, getCopyForm } from "./handleCopyModule";
|
|
9
|
-
|
|
10
|
-
export const FieldGroupSubSegment = ({
|
|
11
|
-
onFieldChange,
|
|
12
|
-
name,
|
|
13
|
-
fields,
|
|
14
|
-
prevFields
|
|
15
|
-
}) => {
|
|
16
|
-
const fileFormat = JSON.parse(fields || "{}")["fileFormat"] || "";
|
|
17
|
-
const formatOptions = _.flow(
|
|
18
|
-
_.find(field => field.name === name),
|
|
19
|
-
_.pathOr([], "values.file_types"),
|
|
20
|
-
_.defaultTo([]),
|
|
21
|
-
_.map(({ text, value }) => ({ text: value, value: text }))
|
|
22
|
-
)(prevFields);
|
|
23
|
-
const [isFieldView, setFieldView] = useState(true);
|
|
24
|
-
const [errorMessage, setErrorMessage] = useState(null);
|
|
25
|
-
const [temporaryJson, setTemporaryJson] = useState(null);
|
|
26
|
-
// eslint-disable-next-line fp/no-let
|
|
27
|
-
let copySegment = getCopyForm(fields, fileFormat, formatOptions);
|
|
28
|
-
const prevCountRef = useRef();
|
|
29
|
-
const onChangeFormat = fields => {
|
|
30
|
-
prevCountRef.current = fileFormat;
|
|
31
|
-
// eslint-disable-next-line fp/no-mutation
|
|
32
|
-
copySegment = getCopyForm(fields, fileFormat, formatOptions);
|
|
33
|
-
const copyJson = JSON.stringify(
|
|
34
|
-
getCopyJson(fields, fileFormat, hasFormatChanged)
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
onFieldChange(null, { name, value: copyJson });
|
|
38
|
-
setTemporaryJson("");
|
|
39
|
-
setErrorMessage("");
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
const onChangeInSegment = (e, { name: fieldName, value: tokenValue }) => {
|
|
43
|
-
if (
|
|
44
|
-
["delimiter", "quoted", "escape_char"].includes(fieldName) &&
|
|
45
|
-
tokenValue.length > 1
|
|
46
|
-
)
|
|
47
|
-
return;
|
|
48
|
-
const jsonCompleteField = JSON.parse(fields || "{}");
|
|
49
|
-
const { values } = copySegment.find(field => field.label === fieldName);
|
|
50
|
-
const jsonValue = values.find(
|
|
51
|
-
value => Object.keys(value)[0] === tokenValue
|
|
52
|
-
);
|
|
53
|
-
onFieldChange(e, {
|
|
54
|
-
name,
|
|
55
|
-
value: JSON.stringify({
|
|
56
|
-
...jsonCompleteField,
|
|
57
|
-
[fieldName]: jsonValue ? jsonValue[tokenValue] : tokenValue
|
|
58
|
-
})
|
|
59
|
-
});
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
const onChangeInField = (e, { name: fieldName, value: originalValue }) => {
|
|
63
|
-
try {
|
|
64
|
-
const fieldContent = JSON.parse(originalValue || "{}");
|
|
65
|
-
validateJson(fieldContent);
|
|
66
|
-
setErrorMessage("");
|
|
67
|
-
setTemporaryJson(null);
|
|
68
|
-
onFieldChange(e, {
|
|
69
|
-
name: fieldName,
|
|
70
|
-
value: JSON.stringify(fieldContent)
|
|
71
|
-
});
|
|
72
|
-
} catch (error) {
|
|
73
|
-
const formatMessage = "template.form.subsegment.error.jsonformat";
|
|
74
|
-
error.name === "SyntaxError"
|
|
75
|
-
? setErrorMessage(formatMessage)
|
|
76
|
-
: setErrorMessage(error.message);
|
|
77
|
-
setTemporaryJson(originalValue);
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
const validateJson = fieldContent => {
|
|
82
|
-
validateCopyFields(
|
|
83
|
-
validateCopyEntries(fieldContent, formatOptions),
|
|
84
|
-
formatOptions
|
|
85
|
-
);
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
const getFieldOnPreviousState = () => {
|
|
89
|
-
const validJson = JSON.stringify(
|
|
90
|
-
getCopyJson(fields, fileFormat, hasFormatChanged)
|
|
91
|
-
);
|
|
92
|
-
const fieldCopy = prevFields.find(field => field.name === name);
|
|
93
|
-
return {
|
|
94
|
-
...fieldCopy,
|
|
95
|
-
label: "JSON",
|
|
96
|
-
value: temporaryJson || validJson,
|
|
97
|
-
widget: "textarea"
|
|
98
|
-
};
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
const hasFormatChanged = fileFormat !== prevCountRef.current;
|
|
102
|
-
hasFormatChanged && onChangeFormat(fields);
|
|
103
|
-
|
|
104
|
-
return (
|
|
105
|
-
<Segment>
|
|
106
|
-
{name !== "undefined" && (
|
|
107
|
-
<Header style={{ display: "inline-block" }} as="h4" content={name} />
|
|
108
|
-
)}
|
|
109
|
-
<div style={{ display: "inline-flex", float: "right" }}>
|
|
110
|
-
<Popup
|
|
111
|
-
basic
|
|
112
|
-
position="top center"
|
|
113
|
-
content={
|
|
114
|
-
<FormattedMessage id="template.form.subsegment.info.popup" />
|
|
115
|
-
}
|
|
116
|
-
trigger={
|
|
117
|
-
<Icon
|
|
118
|
-
size="large"
|
|
119
|
-
style={{ display: !!fileFormat ? "none" : "block" }}
|
|
120
|
-
name="info circle"
|
|
121
|
-
/>
|
|
122
|
-
}
|
|
123
|
-
/>
|
|
124
|
-
<Button
|
|
125
|
-
onClick={() => setFieldView(!isFieldView)}
|
|
126
|
-
style={{ backgroundColor: "#002057", color: "white" }}
|
|
127
|
-
icon
|
|
128
|
-
positive
|
|
129
|
-
disabled={!!errorMessage || !fileFormat}
|
|
130
|
-
size="small"
|
|
131
|
-
>
|
|
132
|
-
<Icon name={isFieldView ? "pencil alternate" : "arrow left"}></Icon>
|
|
133
|
-
</Button>
|
|
134
|
-
</div>
|
|
135
|
-
|
|
136
|
-
{!isFieldView || fileFormat === undefined ? (
|
|
137
|
-
<div>
|
|
138
|
-
<DynamicField
|
|
139
|
-
onChange={onChangeInField.bind(this)}
|
|
140
|
-
field={getFieldOnPreviousState()}
|
|
141
|
-
/>
|
|
142
|
-
<span style={{ color: "red" }}>
|
|
143
|
-
{errorMessage && (
|
|
144
|
-
<FormattedMessage className="errorMessage" id={errorMessage} />
|
|
145
|
-
)}
|
|
146
|
-
</span>
|
|
147
|
-
</div>
|
|
148
|
-
) : (
|
|
149
|
-
<>
|
|
150
|
-
{copySegment && (
|
|
151
|
-
<DynamicField
|
|
152
|
-
key={0}
|
|
153
|
-
onChange={onChangeInSegment.bind(this)}
|
|
154
|
-
field={copySegment.find(field => field.name === "fileFormat")}
|
|
155
|
-
/>
|
|
156
|
-
)}
|
|
157
|
-
{copySegment && fileFormat ? (
|
|
158
|
-
<>
|
|
159
|
-
{copySegment.slice(1).map((field, i) => (
|
|
160
|
-
<DynamicField
|
|
161
|
-
key={i + 1}
|
|
162
|
-
onChange={onChangeInSegment.bind(this)}
|
|
163
|
-
field={field}
|
|
164
|
-
/>
|
|
165
|
-
))}
|
|
166
|
-
</>
|
|
167
|
-
) : null}
|
|
168
|
-
</>
|
|
169
|
-
)}
|
|
170
|
-
</Segment>
|
|
171
|
-
);
|
|
172
|
-
};
|
|
173
|
-
|
|
174
|
-
FieldGroupSubSegment.propTypes = {
|
|
175
|
-
onFieldChange: PropTypes.func,
|
|
176
|
-
name: PropTypes.string,
|
|
177
|
-
fields: PropTypes.string,
|
|
178
|
-
prevFields: PropTypes.array
|
|
179
|
-
};
|
|
180
|
-
|
|
181
|
-
export default FieldGroupSubSegment;
|
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { shallow } from "enzyme";
|
|
3
|
-
import { FieldGroupSubSegment } from "../FieldGroupSubSegment";
|
|
4
|
-
|
|
5
|
-
describe("<FieldGroupSubSegment />", () => {
|
|
6
|
-
const setState = jest.fn();
|
|
7
|
-
const useStateSpy = jest.spyOn(React, "useState");
|
|
8
|
-
useStateSpy.mockImplementation((init) => [init, setState]);
|
|
9
|
-
|
|
10
|
-
const onFieldChange = jest.fn();
|
|
11
|
-
const name = "copy";
|
|
12
|
-
const fields =
|
|
13
|
-
'{"fileFormat":"DAT","header":true,"compression":"brotli","fields":[{"name":"New3","type":"decimal","size":11,"scale":2,"precision":10},{"name":"New5","type":"datetime","size":10,"format":"%d-%m-%Y %H:%M:%S"},{"name":"New1","type":"string","size":40},{"name":"New0","type":"datetime","size":10,"format":"%d-%m-%Y %H:%M:%S"},{"name":"New4","type":"string","size":40}]}';
|
|
14
|
-
const prevFields = [
|
|
15
|
-
{
|
|
16
|
-
cardinality: "1",
|
|
17
|
-
label: "Entidad",
|
|
18
|
-
name: "entidad",
|
|
19
|
-
parsedValues: undefined,
|
|
20
|
-
type: "string",
|
|
21
|
-
value: "a",
|
|
22
|
-
widget: "string",
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
cardinality: "1",
|
|
26
|
-
default: "",
|
|
27
|
-
description: "des",
|
|
28
|
-
label: "copy",
|
|
29
|
-
name: "copy",
|
|
30
|
-
parsedValues: undefined,
|
|
31
|
-
type: "string",
|
|
32
|
-
value:
|
|
33
|
-
'{"fileFormat":"DAT","header":true,"compression":"brotli","fields":[{"name":"New3","type":"decimal","size":11,"scale":2,"precision":10},{"name":"New5","type":"datetime","size":10,"format":"%d-%m-%Y %H:%M:%S"},{"name":"New1","type":"string","size":40},{"name":"New0","type":"datetime","size":10,"format":"%d-%m-%Y %H:%M:%S"},{"name":"New4","type":"string","size":40}]}',
|
|
34
|
-
values: {
|
|
35
|
-
file_types: [
|
|
36
|
-
{ text: "template.widget.copy.char.separator.format", value: "CSV" },
|
|
37
|
-
{ text: "template.widget.copy.without.fixed.column", value: "JSON" },
|
|
38
|
-
{ text: "template.widget.copy.fixed.column", value: "DAT" },
|
|
39
|
-
{ text: "template.widget.copy.fixed.column", value: "TXT" },
|
|
40
|
-
{ text: "template.widget.copy.fixed.column", value: "Sin formato" },
|
|
41
|
-
{ text: "template.widget.copy.without.fixed.column", value: "hola" },
|
|
42
|
-
],
|
|
43
|
-
},
|
|
44
|
-
widget: "copy",
|
|
45
|
-
},
|
|
46
|
-
];
|
|
47
|
-
const props = { onFieldChange, name, fields, prevFields };
|
|
48
|
-
|
|
49
|
-
it("matches the latest snapshot", () => {
|
|
50
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
51
|
-
expect(wrapper).toMatchSnapshot();
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
it("set field view", () => {
|
|
55
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
56
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
57
|
-
expect(wrapper.find("DynamicField").length).toBe(1);
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
it("onChangeMethod in field - field valid", () => {
|
|
61
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
62
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
63
|
-
wrapper
|
|
64
|
-
.find("DynamicField")
|
|
65
|
-
.props()
|
|
66
|
-
.onChange(
|
|
67
|
-
{
|
|
68
|
-
preventDefault() {},
|
|
69
|
-
target: {},
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
name: "copy",
|
|
73
|
-
value:
|
|
74
|
-
'{"fileFormat": "DAT", "compression": "brotli", "fields": [{ "name": "New54", "type": "string", "size": 40 },{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
75
|
-
}
|
|
76
|
-
);
|
|
77
|
-
expect(wrapper.find("Segment > div Button").props().disabled).toBe(true);
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
it("onChangeMethod in field - field invalid - requiredparam", () => {
|
|
81
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
82
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
83
|
-
wrapper
|
|
84
|
-
.find("DynamicField")
|
|
85
|
-
.props()
|
|
86
|
-
.onChange(
|
|
87
|
-
{
|
|
88
|
-
preventDefault() {},
|
|
89
|
-
target: {},
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
name: "copy",
|
|
93
|
-
value:
|
|
94
|
-
'{"fileFormat": "DAT", "compression": "brotli", "fields": [{ "name": "New54", "type": "string", "size": 40 },{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
95
|
-
}
|
|
96
|
-
);
|
|
97
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
98
|
-
"template.form.subsegment.error.requiredparam"
|
|
99
|
-
);
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
it("onChangeMethod in field - field invalid - wrongparams", () => {
|
|
103
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
104
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
105
|
-
wrapper
|
|
106
|
-
.find("DynamicField")
|
|
107
|
-
.props()
|
|
108
|
-
.onChange(
|
|
109
|
-
{
|
|
110
|
-
preventDefault() {},
|
|
111
|
-
target: {},
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
name: "copy",
|
|
115
|
-
value:
|
|
116
|
-
'{"fileFormat": "DAT", "header": false, "compression": "brotli", "fields": [{ "name": "New54", "type": "string"},{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
117
|
-
}
|
|
118
|
-
);
|
|
119
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
120
|
-
"template.form.subsegment.error.wrongparams"
|
|
121
|
-
);
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
it("onChangeMethod in field - field invalid - onechar", () => {
|
|
125
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
126
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
127
|
-
wrapper
|
|
128
|
-
.find("DynamicField")
|
|
129
|
-
.props()
|
|
130
|
-
.onChange(
|
|
131
|
-
{
|
|
132
|
-
preventDefault() {},
|
|
133
|
-
target: {},
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
name: "copy",
|
|
137
|
-
value:
|
|
138
|
-
'{"fileFormat": "DAT", "header": false, "compression": "brotli", "delimiter": "sss","fields": [{ "name": "New54", "type": "string"},{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
139
|
-
}
|
|
140
|
-
);
|
|
141
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
142
|
-
"template.form.subsegment.error.onechar"
|
|
143
|
-
);
|
|
144
|
-
});
|
|
145
|
-
|
|
146
|
-
it("onChangeMethod in field - field invalid - wrongname", () => {
|
|
147
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
148
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
149
|
-
wrapper
|
|
150
|
-
.find("DynamicField")
|
|
151
|
-
.props()
|
|
152
|
-
.onChange(
|
|
153
|
-
{
|
|
154
|
-
preventDefault() {},
|
|
155
|
-
target: {},
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
name: "copy",
|
|
159
|
-
value:
|
|
160
|
-
'{"fileFormat": "DAT", "header": false, "compression": "brotli","fields": [{ "name": "New54.", "type": "string", "size": 40},{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
161
|
-
}
|
|
162
|
-
);
|
|
163
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
164
|
-
"template.form.subsegment.error.wrongname"
|
|
165
|
-
);
|
|
166
|
-
});
|
|
167
|
-
|
|
168
|
-
it("onChangeMethod in field - field invalid - nofileformat", () => {
|
|
169
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
170
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
171
|
-
wrapper
|
|
172
|
-
.find("DynamicField")
|
|
173
|
-
.props()
|
|
174
|
-
.onChange(
|
|
175
|
-
{
|
|
176
|
-
preventDefault() {},
|
|
177
|
-
target: {},
|
|
178
|
-
},
|
|
179
|
-
{
|
|
180
|
-
name: "copy",
|
|
181
|
-
value:
|
|
182
|
-
'{"header": false, "compression": "brotli","fields": [{ "name": "New54", "type": "string", "size": 40},{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
183
|
-
}
|
|
184
|
-
);
|
|
185
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
186
|
-
"template.form.subsegment.error.nofileformat"
|
|
187
|
-
);
|
|
188
|
-
});
|
|
189
|
-
|
|
190
|
-
it("onChangeMethod in field - field invalid - wrongfield", () => {
|
|
191
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
192
|
-
wrapper.find("Segment > div Button").simulate("click");
|
|
193
|
-
wrapper
|
|
194
|
-
.find("DynamicField")
|
|
195
|
-
.props()
|
|
196
|
-
.onChange(
|
|
197
|
-
{
|
|
198
|
-
preventDefault() {},
|
|
199
|
-
target: {},
|
|
200
|
-
},
|
|
201
|
-
{
|
|
202
|
-
name: "copy",
|
|
203
|
-
value:
|
|
204
|
-
'{"fileFormat": "DAT","header": false, "compression": "brotli","fields": [{ "name": "New54", "type": "test", "size": 40},{ "name": "New53", "type": "string", "size": 40 }]}',
|
|
205
|
-
}
|
|
206
|
-
);
|
|
207
|
-
expect(wrapper.find(".errorMessage").props().id).toBe(
|
|
208
|
-
"template.form.subsegment.error.wrongfield"
|
|
209
|
-
);
|
|
210
|
-
});
|
|
211
|
-
|
|
212
|
-
it("change field format", () => {
|
|
213
|
-
const wrapper = shallow(<FieldGroupSubSegment {...props} />);
|
|
214
|
-
wrapper
|
|
215
|
-
.find("DynamicField")
|
|
216
|
-
.at(0)
|
|
217
|
-
.props()
|
|
218
|
-
.onChange({}, { name: "fileFormat", value: "CSV" });
|
|
219
|
-
expect(props.onFieldChange).toHaveBeenCalled();
|
|
220
|
-
});
|
|
221
|
-
});
|
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`<FieldGroupSubSegment /> matches the latest snapshot 1`] = `
|
|
4
|
-
<Segment>
|
|
5
|
-
<Header
|
|
6
|
-
as="h4"
|
|
7
|
-
content="copy"
|
|
8
|
-
style={
|
|
9
|
-
{
|
|
10
|
-
"display": "inline-block",
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
/>
|
|
14
|
-
<div
|
|
15
|
-
style={
|
|
16
|
-
{
|
|
17
|
-
"display": "inline-flex",
|
|
18
|
-
"float": "right",
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
>
|
|
22
|
-
<Popup
|
|
23
|
-
basic={true}
|
|
24
|
-
content={
|
|
25
|
-
<Memo(MemoizedFormattedMessage)
|
|
26
|
-
id="template.form.subsegment.info.popup"
|
|
27
|
-
/>
|
|
28
|
-
}
|
|
29
|
-
disabled={false}
|
|
30
|
-
eventsEnabled={true}
|
|
31
|
-
on={
|
|
32
|
-
[
|
|
33
|
-
"click",
|
|
34
|
-
"hover",
|
|
35
|
-
]
|
|
36
|
-
}
|
|
37
|
-
pinned={false}
|
|
38
|
-
popperModifiers={[]}
|
|
39
|
-
position="top center"
|
|
40
|
-
trigger={
|
|
41
|
-
<Icon
|
|
42
|
-
as="i"
|
|
43
|
-
name="info circle"
|
|
44
|
-
size="large"
|
|
45
|
-
style={
|
|
46
|
-
{
|
|
47
|
-
"display": "none",
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
/>
|
|
51
|
-
}
|
|
52
|
-
/>
|
|
53
|
-
<Button
|
|
54
|
-
as="button"
|
|
55
|
-
disabled={false}
|
|
56
|
-
icon={true}
|
|
57
|
-
onClick={[Function]}
|
|
58
|
-
positive={true}
|
|
59
|
-
size="small"
|
|
60
|
-
style={
|
|
61
|
-
{
|
|
62
|
-
"backgroundColor": "#002057",
|
|
63
|
-
"color": "white",
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
>
|
|
67
|
-
<Icon
|
|
68
|
-
as="i"
|
|
69
|
-
name="pencil alternate"
|
|
70
|
-
/>
|
|
71
|
-
</Button>
|
|
72
|
-
</div>
|
|
73
|
-
<DynamicField
|
|
74
|
-
field={
|
|
75
|
-
{
|
|
76
|
-
"cardinality": "1",
|
|
77
|
-
"description": "",
|
|
78
|
-
"label": "fileFormat",
|
|
79
|
-
"name": "fileFormat",
|
|
80
|
-
"parsedValues": [
|
|
81
|
-
{
|
|
82
|
-
"text": "CSV",
|
|
83
|
-
"value": "CSV",
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
"text": "JSON",
|
|
87
|
-
"value": "JSON",
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
"text": "DAT",
|
|
91
|
-
"value": "DAT",
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
"text": "TXT",
|
|
95
|
-
"value": "TXT",
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"text": "Sin formato",
|
|
99
|
-
"value": "Sin formato",
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
"text": "hola",
|
|
103
|
-
"value": "hola",
|
|
104
|
-
},
|
|
105
|
-
],
|
|
106
|
-
"type": "string",
|
|
107
|
-
"value": "DAT",
|
|
108
|
-
"values": [],
|
|
109
|
-
"widget": "dropdown",
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
key="0"
|
|
113
|
-
onChange={[Function]}
|
|
114
|
-
/>
|
|
115
|
-
<DynamicField
|
|
116
|
-
field={
|
|
117
|
-
{
|
|
118
|
-
"cardinality": "1",
|
|
119
|
-
"description": "",
|
|
120
|
-
"label": "header",
|
|
121
|
-
"name": "header",
|
|
122
|
-
"parsedValues": [
|
|
123
|
-
{
|
|
124
|
-
"text": "true",
|
|
125
|
-
"value": "true",
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
"text": "false",
|
|
129
|
-
"value": "false",
|
|
130
|
-
},
|
|
131
|
-
],
|
|
132
|
-
"type": "string",
|
|
133
|
-
"value": "true",
|
|
134
|
-
"values": [
|
|
135
|
-
{
|
|
136
|
-
"true": true,
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
"false": false,
|
|
140
|
-
},
|
|
141
|
-
],
|
|
142
|
-
"widget": "radio",
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
key="1"
|
|
146
|
-
onChange={[Function]}
|
|
147
|
-
/>
|
|
148
|
-
<DynamicField
|
|
149
|
-
field={
|
|
150
|
-
{
|
|
151
|
-
"cardinality": "1",
|
|
152
|
-
"description": "",
|
|
153
|
-
"label": "compression",
|
|
154
|
-
"name": "compression",
|
|
155
|
-
"parsedValues": [
|
|
156
|
-
{
|
|
157
|
-
"text": "none",
|
|
158
|
-
"value": "none",
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
"text": "gzip",
|
|
162
|
-
"value": "gzip",
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
"text": "bzip2",
|
|
166
|
-
"value": "bzip2",
|
|
167
|
-
},
|
|
168
|
-
{
|
|
169
|
-
"text": "brotli",
|
|
170
|
-
"value": "brotli",
|
|
171
|
-
},
|
|
172
|
-
],
|
|
173
|
-
"type": "string",
|
|
174
|
-
"value": "brotli",
|
|
175
|
-
"values": [],
|
|
176
|
-
"widget": "dropdown",
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
key="2"
|
|
180
|
-
onChange={[Function]}
|
|
181
|
-
/>
|
|
182
|
-
<DynamicField
|
|
183
|
-
field={
|
|
184
|
-
{
|
|
185
|
-
"cardinality": "1",
|
|
186
|
-
"description": "",
|
|
187
|
-
"label": "fields",
|
|
188
|
-
"name": "fields",
|
|
189
|
-
"parsedValues": [],
|
|
190
|
-
"type": "string",
|
|
191
|
-
"value": [
|
|
192
|
-
{
|
|
193
|
-
"name": "New3",
|
|
194
|
-
"precision": 10,
|
|
195
|
-
"scale": 2,
|
|
196
|
-
"size": 11,
|
|
197
|
-
"type": "decimal",
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
"format": "%d-%m-%Y %H:%M:%S",
|
|
201
|
-
"name": "New5",
|
|
202
|
-
"size": 10,
|
|
203
|
-
"type": "datetime",
|
|
204
|
-
},
|
|
205
|
-
{
|
|
206
|
-
"name": "New1",
|
|
207
|
-
"size": 40,
|
|
208
|
-
"type": "string",
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
"format": "%d-%m-%Y %H:%M:%S",
|
|
212
|
-
"name": "New0",
|
|
213
|
-
"size": 10,
|
|
214
|
-
"type": "datetime",
|
|
215
|
-
},
|
|
216
|
-
{
|
|
217
|
-
"name": "New4",
|
|
218
|
-
"size": 40,
|
|
219
|
-
"type": "string",
|
|
220
|
-
},
|
|
221
|
-
],
|
|
222
|
-
"values": [],
|
|
223
|
-
"widget": "copy",
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
key="3"
|
|
227
|
-
onChange={[Function]}
|
|
228
|
-
/>
|
|
229
|
-
</Segment>
|
|
230
|
-
`;
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
const constants = {
|
|
2
|
-
ENTRIES_FORMAT: {
|
|
3
|
-
"template.widget.copy.char.separator.format": [
|
|
4
|
-
"header",
|
|
5
|
-
"compression",
|
|
6
|
-
"delimiter",
|
|
7
|
-
"fileFormat",
|
|
8
|
-
"fields",
|
|
9
|
-
"quoted",
|
|
10
|
-
"escape_char"
|
|
11
|
-
],
|
|
12
|
-
"template.widget.copy.without.fixed.column": [
|
|
13
|
-
"compression",
|
|
14
|
-
"fileFormat",
|
|
15
|
-
"fields"
|
|
16
|
-
],
|
|
17
|
-
"template.widget.copy.fixed.column": [
|
|
18
|
-
"header",
|
|
19
|
-
"compression",
|
|
20
|
-
"fileFormat",
|
|
21
|
-
"fields"
|
|
22
|
-
]
|
|
23
|
-
},
|
|
24
|
-
REQUIRED_COPY_ENTRIES: {
|
|
25
|
-
"template.widget.copy.char.separator.format": [
|
|
26
|
-
"header",
|
|
27
|
-
"compression",
|
|
28
|
-
"delimiter",
|
|
29
|
-
"fileFormat",
|
|
30
|
-
"fields"
|
|
31
|
-
],
|
|
32
|
-
"template.widget.copy.without.fixed.column": [
|
|
33
|
-
"compression",
|
|
34
|
-
"fileFormat",
|
|
35
|
-
"fields"
|
|
36
|
-
],
|
|
37
|
-
"template.widget.copy.fixed.column": [
|
|
38
|
-
"header",
|
|
39
|
-
"compression",
|
|
40
|
-
"fileFormat",
|
|
41
|
-
"fields"
|
|
42
|
-
]
|
|
43
|
-
},
|
|
44
|
-
WITHOUT_SIZE: [
|
|
45
|
-
"template.widget.copy.char.separator.format",
|
|
46
|
-
"template.widget.copy.without.fixed.column"
|
|
47
|
-
],
|
|
48
|
-
VALID_COMPRESSION: ["none", "gzip", "bzip2", "brotli"],
|
|
49
|
-
VALID_FIELD_TYPES: [
|
|
50
|
-
"string",
|
|
51
|
-
"integer",
|
|
52
|
-
"decimal",
|
|
53
|
-
"date",
|
|
54
|
-
"datetime",
|
|
55
|
-
"time",
|
|
56
|
-
"boolean"
|
|
57
|
-
]
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
export default constants;
|
|
61
|
-
export const {
|
|
62
|
-
ENTRIES_FORMAT,
|
|
63
|
-
REQUIRED_COPY_ENTRIES,
|
|
64
|
-
WITHOUT_SIZE,
|
|
65
|
-
VALID_COMPRESSION,
|
|
66
|
-
VALID_FIELD_TYPES,
|
|
67
|
-
AUX_FORMAT_OPTIONS
|
|
68
|
-
} = constants;
|