From 3fae5e326756644a4f3e4b6566176f65e2cf65a7 Mon Sep 17 00:00:00 2001 From: caichi Date: Fri, 25 Oct 2024 17:49:42 +0900 Subject: [PATCH 1/8] impl --- .../components/atoms/Icon/Icons/infinity.svg | 3 ++ web/src/components/atoms/Icon/icons.ts | 2 + .../components/atoms/InputNumber/index.tsx | 2 +- .../molecules/Common/Form/GroupItem/index.tsx | 34 +++------------ .../fields/FieldComponents/IntegerField.tsx | 10 ++++- .../Form/fields/FieldComponents/index.ts | 4 -- .../Content/Form/fields/FieldTypesMap.ts | 11 ++++- .../molecules/Content/Form/index.tsx | 33 +++----------- .../Content/Table/DropdownRender/hooks.ts | 4 +- .../Content/Table/DropdownRender/index.tsx | 9 +--- .../molecules/Request/Details/ItemForm.tsx | 24 +---------- .../components/molecules/Schema/FieldList.tsx | 2 +- .../FieldModal/FieldDefaultInputs/index.tsx | 1 + .../FieldValidationInputs/index.tsx | 2 +- .../molecules/Schema/FieldModal/hooks.ts | 43 +++++++++---------- .../components/molecules/Schema/fieldTypes.ts | 6 +++ web/src/components/molecules/Schema/types.ts | 16 +++++-- web/src/gql/graphql-client-api.tsx | 7 ++- web/src/gql/queries/model.ts | 5 +++ 19 files changed, 94 insertions(+), 124 deletions(-) create mode 100644 web/src/components/atoms/Icon/Icons/infinity.svg diff --git a/web/src/components/atoms/Icon/Icons/infinity.svg b/web/src/components/atoms/Icon/Icons/infinity.svg new file mode 100644 index 0000000000..1c31b2cb0d --- /dev/null +++ b/web/src/components/atoms/Icon/Icons/infinity.svg @@ -0,0 +1,3 @@ + + + diff --git a/web/src/components/atoms/Icon/icons.ts b/web/src/components/atoms/Icon/icons.ts index ae99373869..0877819b11 100644 --- a/web/src/components/atoms/Icon/icons.ts +++ b/web/src/components/atoms/Icon/icons.ts @@ -68,6 +68,7 @@ import Date from "./Icons/date.svg"; import Dot from "./Icons/dot.svg"; import EditorCopy from "./Icons/editorCopy.svg"; import Group from "./Icons/group.svg"; +import InfinityIcon from "./Icons/infinity.svg"; import Key from "./Icons/key.svg"; import LineSegments from "./Icons/lineSegments.svg"; import LineString from "./Icons/lineString.svg"; @@ -126,6 +127,7 @@ export default { listBullets: ListBullets, arrowUpRight: ArrowUpRight, arrowUpRightSlash: ArrowUpRightSlash, + infinity: InfinityIcon, numberNine: NumberNine, link: Link, linkSolid: LinkSolid, diff --git a/web/src/components/atoms/InputNumber/index.tsx b/web/src/components/atoms/InputNumber/index.tsx index f276249a29..64639d0098 100644 --- a/web/src/components/atoms/InputNumber/index.tsx +++ b/web/src/components/atoms/InputNumber/index.tsx @@ -14,7 +14,7 @@ const InputNumber: ( } }, [props.max, props.min, value]); - return ; + return ; }; export default InputNumber; diff --git a/web/src/components/molecules/Common/Form/GroupItem/index.tsx b/web/src/components/molecules/Common/Form/GroupItem/index.tsx index 183ce8f8e0..cb53b1e3f0 100644 --- a/web/src/components/molecules/Common/Form/GroupItem/index.tsx +++ b/web/src/components/molecules/Common/Form/GroupItem/index.tsx @@ -10,10 +10,9 @@ import { AssetField, ReferenceField, } from "@reearth-cms/components/molecules/Content/Form/fields/ComplexFieldComponents"; -import { DefaultField } from "@reearth-cms/components/molecules/Content/Form/fields/FieldComponents"; import { FIELD_TYPE_COMPONENT_MAP } from "@reearth-cms/components/molecules/Content/Form/fields/FieldTypesMap"; import { FormItem, ItemAsset } from "@reearth-cms/components/molecules/Content/types"; -import { Field, Group } from "@reearth-cms/components/molecules/Schema/types"; +import { Field, Group, GroupField } from "@reearth-cms/components/molecules/Schema/types"; type Props = { value?: string; @@ -117,7 +116,7 @@ const GroupItem: React.FC = ({ }) => { const { Panel } = Collapse; - const [fields, setFields] = useState(); + const [fields, setFields] = useState(); useEffect(() => { const handleFieldsSet = async (id: string) => { @@ -176,7 +175,7 @@ const GroupItem: React.FC = ({ ) }>
- {fields?.map((field: Field) => { + {fields?.map(field => { if (field.type === "Asset") { return ( @@ -232,31 +231,12 @@ const GroupItem: React.FC = ({ /> ); - } else if (field.type === "GeometryObject" || field.type === "GeometryEditor") { - const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; - - return ( - - - - ); } else { - const FieldComponent = - FIELD_TYPE_COMPONENT_MAP[ - field.type as - | "Select" - | "Date" - | "Tag" - | "Bool" - | "Checkbox" - | "URL" - | "TextArea" - | "MarkdownText" - | "Integer" - ] || DefaultField; - + const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; return ( - + ); diff --git a/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx b/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx index 94f44ff614..bb7a2666ce 100644 --- a/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx +++ b/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx @@ -16,8 +16,14 @@ type DefaultFieldProps = { const IntegerField: React.FC = ({ field, itemGroupId, disabled }) => { const t = useT(); - const min = useMemo(() => field.typeProperty?.min, [field.typeProperty?.min]); - const max = useMemo(() => field.typeProperty?.max, [field.typeProperty?.max]); + const min = useMemo( + () => field?.typeProperty?.min ?? field?.typeProperty?.numberMin, + [field?.typeProperty?.min, field?.typeProperty?.numberMin], + ); + const max = useMemo( + () => field?.typeProperty?.max ?? field?.typeProperty?.numberMax, + [field?.typeProperty?.max, field?.typeProperty?.numberMax], + ); const validate = useCallback( (value: unknown) => { if (typeof value === "number") { diff --git a/web/src/components/molecules/Content/Form/fields/FieldComponents/index.ts b/web/src/components/molecules/Content/Form/fields/FieldComponents/index.ts index 56f607fac3..cf1e1bc5be 100644 --- a/web/src/components/molecules/Content/Form/fields/FieldComponents/index.ts +++ b/web/src/components/molecules/Content/Form/fields/FieldComponents/index.ts @@ -3,8 +3,4 @@ export { default as CheckboxField } from "./CheckboxField"; export { default as URLField } from "./URLField"; export { default as DateField } from "./DateField"; export { default as BoolField } from "./BoolField"; -export { default as IntegerField } from "./IntegerField"; -export { default as MarkdownField } from "./MarkdownField"; -export { default as SelectField } from "./SelectField"; -export { default as TextAreaField } from "./TextareaField"; export { default as DefaultField } from "./DefaultField"; diff --git a/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts b/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts index c4658df843..ab1c2fb3e3 100644 --- a/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts +++ b/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts @@ -1,4 +1,11 @@ -import { TagField, DateField, BoolField, CheckboxField, URLField } from "./FieldComponents"; +import { + DefaultField, + TagField, + DateField, + BoolField, + CheckboxField, + URLField, +} from "./FieldComponents"; import GeometryField from "./FieldComponents/GeometryField"; import IntegerField from "./FieldComponents/IntegerField"; import MarkdownField from "./FieldComponents/MarkdownField"; @@ -6,6 +13,7 @@ import SelectField from "./FieldComponents/SelectField"; import TextareaField from "./FieldComponents/TextareaField"; export const FIELD_TYPE_COMPONENT_MAP = { + Text: DefaultField, Tag: TagField, Date: DateField, Bool: BoolField, @@ -14,6 +22,7 @@ export const FIELD_TYPE_COMPONENT_MAP = { TextArea: TextareaField, MarkdownText: MarkdownField, Integer: IntegerField, + Number: IntegerField, Select: SelectField, GeometryObject: GeometryField, GeometryEditor: GeometryField, diff --git a/web/src/components/molecules/Content/Form/index.tsx b/web/src/components/molecules/Content/Form/index.tsx index 9254ebd009..84176e539a 100644 --- a/web/src/components/molecules/Content/Form/index.tsx +++ b/web/src/components/molecules/Content/Form/index.tsx @@ -36,7 +36,6 @@ import { useT } from "@reearth-cms/i18n"; import { transformDayjsToString } from "@reearth-cms/utils/format"; import { AssetField, GroupField, ReferenceField } from "./fields/ComplexFieldComponents"; -import { DefaultField } from "./fields/FieldComponents"; import { FIELD_TYPE_COMPONENT_MAP } from "./fields/FieldTypesMap"; type Props = { @@ -624,31 +623,12 @@ const ContentForm: React.FC = ({ /> ); - } else if (field.type === "GeometryObject" || field.type === "GeometryEditor") { - const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; - - return ( - - - - ); } else { - const FieldComponent = - FIELD_TYPE_COMPONENT_MAP[ - field.type as - | "Select" - | "Date" - | "Tag" - | "Bool" - | "Checkbox" - | "URL" - | "TextArea" - | "MarkdownText" - | "Integer" - ] || DefaultField; - + const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; return ( - + ); @@ -660,10 +640,7 @@ const ContentForm: React.FC = ({
{model?.metadataSchema?.fields?.map(field => { - const FieldComponent = - FIELD_TYPE_COMPONENT_MAP[ - field.type as "Tag" | "Date" | "Bool" | "Checkbox" | "URL" - ] || DefaultField; + const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; return ( diff --git a/web/src/components/molecules/Content/Table/DropdownRender/hooks.ts b/web/src/components/molecules/Content/Table/DropdownRender/hooks.ts index 9ca30a16ae..ae8b982497 100644 --- a/web/src/components/molecules/Content/Table/DropdownRender/hooks.ts +++ b/web/src/components/molecules/Content/Table/DropdownRender/hooks.ts @@ -136,7 +136,7 @@ export default ( ); break; case "Integer": - // case "Float": + case "Number": result.push( { operatorType: "basic", value: BasicOperator.Equals, label: t("is") }, { operatorType: "basic", value: BasicOperator.NotEquals, label: t("is not") }, @@ -312,7 +312,7 @@ export default ( if (typeof value !== "boolean") { value = value === "true"; } - } else if (filter.type === "Integer" /*|| filter.type === "Float"*/) { + } else if (filter.type === "Integer" || filter.type === "Number") { value = Number(value); } else if (filter.type === "Date") { value = value ? new Date(value) : new Date(); diff --git a/web/src/components/molecules/Content/Table/DropdownRender/index.tsx b/web/src/components/molecules/Content/Table/DropdownRender/index.tsx index b6b4f7accd..cc776b57fa 100644 --- a/web/src/components/molecules/Content/Table/DropdownRender/index.tsx +++ b/web/src/components/molecules/Content/Table/DropdownRender/index.tsx @@ -101,13 +101,8 @@ const DropdownRender: React.FC = ({ ))} - ) : filter.type === "Integer" /*|| filter.type === "Float"*/ ? ( - + ) : filter.type === "Integer" || filter.type === "Number" ? ( + ) : filter.type === "Date" ? ( = ({ />
); - } else if (field.type === "GeometryObject" || field.type === "GeometryEditor") { - const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; - - return ( -
- -
- ); } else { - const FieldComponent = - FIELD_TYPE_COMPONENT_MAP[ - field.type as - | "Select" - | "Date" - | "Tag" - | "Bool" - | "Checkbox" - | "URL" - | "TextArea" - | "MarkdownText" - | "Integer" - ] || DefaultField; - + const FieldComponent = FIELD_TYPE_COMPONENT_MAP[field.type]; return (
diff --git a/web/src/components/molecules/Schema/FieldList.tsx b/web/src/components/molecules/Schema/FieldList.tsx index 552e615c5b..4e174d2d7c 100644 --- a/web/src/components/molecules/Schema/FieldList.tsx +++ b/web/src/components/molecules/Schema/FieldList.tsx @@ -46,7 +46,7 @@ const FieldList: React.FC = ({ currentTab, selectedSchemaType, addField } }, { title: t("Number"), - fields: ["Integer"], + fields: ["Integer", "Number"], }, { title: t("URL"), diff --git a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx index b05a5e9e0f..4ec56bd84c 100644 --- a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx +++ b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx @@ -93,6 +93,7 @@ const FieldDefaultInputs: React.FC = ({ case "MarkdownText": return ; case "Integer": + case "Number": return ; case "Bool": return ; diff --git a/web/src/components/molecules/Schema/FieldModal/FieldValidationInputs/index.tsx b/web/src/components/molecules/Schema/FieldModal/FieldValidationInputs/index.tsx index 1851bbac09..02b900dba7 100644 --- a/web/src/components/molecules/Schema/FieldModal/FieldValidationInputs/index.tsx +++ b/web/src/components/molecules/Schema/FieldModal/FieldValidationInputs/index.tsx @@ -20,7 +20,7 @@ const FieldValidationInputs: React.FC = ({ selectedType, min, max }) => { - ) : selectedType === "Integer" ? ( + ) : selectedType === "Integer" || selectedType === "Number" ? ( <> diff --git a/web/src/components/molecules/Schema/FieldModal/hooks.ts b/web/src/components/molecules/Schema/FieldModal/hooks.ts index b214c7402e..b15366e856 100644 --- a/web/src/components/molecules/Schema/FieldModal/hooks.ts +++ b/web/src/components/molecules/Schema/FieldModal/hooks.ts @@ -137,8 +137,8 @@ export default ( isTitle: !!selectedField?.isTitle, required: !!selectedField?.required, defaultValue: selectedField ? defaultValueGet(selectedField) : undefined, - min: selectedField?.typeProperty?.min, - max: selectedField?.typeProperty?.max, + min: selectedField?.typeProperty?.min ?? selectedField?.typeProperty?.numberMin, + max: selectedField?.typeProperty?.max ?? selectedField?.typeProperty?.numberMax, maxLength: selectedField?.typeProperty?.maxLength, values: selectedField?.typeProperty?.values, tags: selectedField?.typeProperty?.tags, @@ -174,12 +174,13 @@ export default ( select: { defaultValue, values: values.values ?? [] }, }; } - case "Integer": { + case "Integer": + case "Number": { const defaultValue = Array.isArray(values.defaultValue) ? values.defaultValue.filter((value: number | string) => typeof value === "number") : (values.defaultValue ?? ""); return { - integer: { + [values.type === "Integer" ? "integer" : "number"]: { defaultValue, min: values.min ?? null, max: values.max ?? null, @@ -249,26 +250,22 @@ export default ( }, [form, values]); const handleValuesChange = useCallback(async (changedValues: Record) => { - const [key, value] = Object.entries(changedValues)[0]; - let changedValue = value; - let defaultValue = defaultValueRef.current?.[key as keyof FormTypes]; - if (Array.isArray(value)) { - changedValue = [...value].sort(); - } - if (Array.isArray(defaultValue)) { - defaultValue = [...defaultValue].sort(); - } + const [key, value] = Object.entries(changedValues)[0]; + let changedValue = value; + let defaultValue = defaultValueRef.current?.[key as keyof FormTypes]; + if (Array.isArray(value)) { + changedValue = [...value].sort(); + } + if (Array.isArray(defaultValue)) { + defaultValue = [...defaultValue].sort(); + } - if ( - JSON.stringify(emptyConvert(changedValue)) === JSON.stringify(emptyConvert(defaultValue)) - ) { - changedKeys.current.delete(key); - } else { - changedKeys.current.add(key); - } - }, - [], - ); + if (JSON.stringify(emptyConvert(changedValue)) === JSON.stringify(emptyConvert(defaultValue))) { + changedKeys.current.delete(key); + } else { + changedKeys.current.add(key); + } + }, []); const handleNameChange = useCallback( (e: React.ChangeEvent) => { diff --git a/web/src/components/molecules/Schema/fieldTypes.ts b/web/src/components/molecules/Schema/fieldTypes.ts index 392d0f6ea6..d70c546524 100644 --- a/web/src/components/molecules/Schema/fieldTypes.ts +++ b/web/src/components/molecules/Schema/fieldTypes.ts @@ -52,6 +52,12 @@ export const fieldTypes: { description: "Integer", color: "#36CFC9", }, + Number: { + icon: "infinity", + title: "Float", + description: "Fractional", + color: "#36CFC9", + }, URL: { icon: "link", title: "URL", diff --git a/web/src/components/molecules/Schema/types.ts b/web/src/components/molecules/Schema/types.ts index b2b5d9c4a0..7859f1d8f6 100644 --- a/web/src/components/molecules/Schema/types.ts +++ b/web/src/components/molecules/Schema/types.ts @@ -2,7 +2,7 @@ import { Key } from "react"; export type MetaDataSchema = { id?: string; - fields?: Field[]; + fields?: MetadataField[]; }; export type Schema = { @@ -10,6 +10,8 @@ export type Schema = { fields: Field[]; }; +type GroupSchema = Schema & { fields: GroupField[] }; + export type Field = { id: string; type: FieldType; @@ -24,6 +26,12 @@ export type Field = { typeProperty?: TypeProperty; }; +export type GroupField = Field & { type: Exclude }; + +type MetadataField = Field & { + type: Extract; +}; + export type FieldType = | "Text" | "TextArea" @@ -35,7 +43,7 @@ export type FieldType = | "Select" | "Tag" | "Integer" - // | "Float" + | "Number" | "Reference" | "Checkbox" | "URL" @@ -80,6 +88,8 @@ export type TypeProperty = { integerDefaultValue?: number; min?: number; max?: number; + numberMin?: number; + numberMax?: number; correspondingField?: CorrespondingField; modelId?: string; groupId?: string; @@ -129,7 +139,7 @@ export type Group = { name: string; description: string; key: string; - schema: Schema; + schema: GroupSchema; order: number; }; diff --git a/web/src/gql/graphql-client-api.tsx b/web/src/gql/graphql-client-api.tsx index 5a5c93aaf5..3afc74ff1a 100644 --- a/web/src/gql/graphql-client-api.tsx +++ b/web/src/gql/graphql-client-api.tsx @@ -2608,7 +2608,7 @@ export type GetModelQueryVariables = Exact<{ }>; -export type GetModelQuery = { __typename?: 'Query', node?: { __typename?: 'Asset' } | { __typename?: 'Group' } | { __typename?: 'Integration' } | { __typename?: 'Item' } | { __typename?: 'Model', id: string, name: string, description: string, key: string, public: boolean, order?: number | null, metadataSchema?: { __typename?: 'Schema', id: string, fields: Array<{ __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, isTitle: boolean, multiple: boolean, order?: number | null, typeProperty?: { __typename?: 'SchemaFieldAsset' } | { __typename?: 'SchemaFieldBool', defaultValue?: any | null } | { __typename?: 'SchemaFieldCheckbox', defaultValue?: any | null } | { __typename?: 'SchemaFieldDate', defaultValue?: any | null } | { __typename?: 'SchemaFieldGeometryEditor' } | { __typename?: 'SchemaFieldGeometryObject' } | { __typename?: 'SchemaFieldGroup' } | { __typename?: 'SchemaFieldInteger' } | { __typename?: 'SchemaFieldMarkdown' } | { __typename?: 'SchemaFieldNumber' } | { __typename?: 'SchemaFieldReference' } | { __typename?: 'SchemaFieldRichText' } | { __typename?: 'SchemaFieldSelect' } | { __typename?: 'SchemaFieldTag', selectDefaultValue?: any | null, tags: Array<{ __typename?: 'SchemaFieldTagValue', id: string, name: string, color: SchemaFieldTagColor }> } | { __typename?: 'SchemaFieldText', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldTextArea' } | { __typename?: 'SchemaFieldURL', defaultValue?: any | null } | null }> } | null, schema: { __typename?: 'Schema', id: string, fields: Array<{ __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, isTitle: boolean, multiple: boolean, order?: number | null, typeProperty?: { __typename?: 'SchemaFieldAsset', assetDefaultValue?: any | null } | { __typename?: 'SchemaFieldBool', defaultValue?: any | null } | { __typename?: 'SchemaFieldCheckbox' } | { __typename?: 'SchemaFieldDate', defaultValue?: any | null } | { __typename?: 'SchemaFieldGeometryEditor', defaultValue?: any | null, editorSupportedTypes: Array } | { __typename?: 'SchemaFieldGeometryObject', defaultValue?: any | null, objectSupportedTypes: Array } | { __typename?: 'SchemaFieldGroup', groupId: string } | { __typename?: 'SchemaFieldInteger', min?: number | null, max?: number | null, integerDefaultValue?: any | null } | { __typename?: 'SchemaFieldMarkdown', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldNumber' } | { __typename?: 'SchemaFieldReference', modelId: string, schema: { __typename?: 'Schema', id: string, titleFieldId?: string | null }, correspondingField?: { __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, multiple: boolean, order?: number | null } | null } | { __typename?: 'SchemaFieldRichText' } | { __typename?: 'SchemaFieldSelect', values: Array, selectDefaultValue?: any | null } | { __typename?: 'SchemaFieldTag' } | { __typename?: 'SchemaFieldText', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldTextArea', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldURL', defaultValue?: any | null } | null }> } } | { __typename?: 'Project' } | { __typename?: 'Request' } | { __typename?: 'Schema' } | { __typename?: 'User' } | { __typename?: 'View' } | { __typename?: 'Workspace' } | { __typename?: 'WorkspaceSettings' } | null }; +export type GetModelQuery = { __typename?: 'Query', node?: { __typename?: 'Asset' } | { __typename?: 'Group' } | { __typename?: 'Integration' } | { __typename?: 'Item' } | { __typename?: 'Model', id: string, name: string, description: string, key: string, public: boolean, order?: number | null, metadataSchema?: { __typename?: 'Schema', id: string, fields: Array<{ __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, isTitle: boolean, multiple: boolean, order?: number | null, typeProperty?: { __typename?: 'SchemaFieldAsset' } | { __typename?: 'SchemaFieldBool', defaultValue?: any | null } | { __typename?: 'SchemaFieldCheckbox', defaultValue?: any | null } | { __typename?: 'SchemaFieldDate', defaultValue?: any | null } | { __typename?: 'SchemaFieldGeometryEditor' } | { __typename?: 'SchemaFieldGeometryObject' } | { __typename?: 'SchemaFieldGroup' } | { __typename?: 'SchemaFieldInteger' } | { __typename?: 'SchemaFieldMarkdown' } | { __typename?: 'SchemaFieldNumber' } | { __typename?: 'SchemaFieldReference' } | { __typename?: 'SchemaFieldRichText' } | { __typename?: 'SchemaFieldSelect' } | { __typename?: 'SchemaFieldTag', selectDefaultValue?: any | null, tags: Array<{ __typename?: 'SchemaFieldTagValue', id: string, name: string, color: SchemaFieldTagColor }> } | { __typename?: 'SchemaFieldText', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldTextArea' } | { __typename?: 'SchemaFieldURL', defaultValue?: any | null } | null }> } | null, schema: { __typename?: 'Schema', id: string, fields: Array<{ __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, isTitle: boolean, multiple: boolean, order?: number | null, typeProperty?: { __typename?: 'SchemaFieldAsset', assetDefaultValue?: any | null } | { __typename?: 'SchemaFieldBool', defaultValue?: any | null } | { __typename?: 'SchemaFieldCheckbox' } | { __typename?: 'SchemaFieldDate', defaultValue?: any | null } | { __typename?: 'SchemaFieldGeometryEditor', defaultValue?: any | null, editorSupportedTypes: Array } | { __typename?: 'SchemaFieldGeometryObject', defaultValue?: any | null, objectSupportedTypes: Array } | { __typename?: 'SchemaFieldGroup', groupId: string } | { __typename?: 'SchemaFieldInteger', min?: number | null, max?: number | null, integerDefaultValue?: any | null } | { __typename?: 'SchemaFieldMarkdown', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldNumber', defaultValue?: any | null, numberMin?: number | null, numberMax?: number | null } | { __typename?: 'SchemaFieldReference', modelId: string, schema: { __typename?: 'Schema', id: string, titleFieldId?: string | null }, correspondingField?: { __typename?: 'SchemaField', id: string, type: SchemaFieldType, title: string, key: string, description?: string | null, required: boolean, unique: boolean, multiple: boolean, order?: number | null } | null } | { __typename?: 'SchemaFieldRichText' } | { __typename?: 'SchemaFieldSelect', values: Array, selectDefaultValue?: any | null } | { __typename?: 'SchemaFieldTag' } | { __typename?: 'SchemaFieldText', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldTextArea', defaultValue?: any | null, maxLength?: number | null } | { __typename?: 'SchemaFieldURL', defaultValue?: any | null } | null }> } } | { __typename?: 'Project' } | { __typename?: 'Request' } | { __typename?: 'Schema' } | { __typename?: 'User' } | { __typename?: 'View' } | { __typename?: 'Workspace' } | { __typename?: 'WorkspaceSettings' } | null }; export type CreateModelMutationVariables = Exact<{ projectId: Scalars['ID']['input']; @@ -5295,6 +5295,11 @@ export const GetModelDocument = gql` min max } + ... on SchemaFieldNumber { + defaultValue + numberMin: min + numberMax: max + } ... on SchemaFieldBool { defaultValue } diff --git a/web/src/gql/queries/model.ts b/web/src/gql/queries/model.ts index 79d8ed4e7f..45f768aee8 100644 --- a/web/src/gql/queries/model.ts +++ b/web/src/gql/queries/model.ts @@ -107,6 +107,11 @@ export const GET_MODEL_NODE = gql` min max } + ... on SchemaFieldNumber { + defaultValue + numberMin: min + numberMax: max + } ... on SchemaFieldBool { defaultValue } From 9be01cff914406ba24c31f740ed8e01a3a0f5f9e Mon Sep 17 00:00:00 2001 From: caichi Date: Fri, 25 Oct 2024 17:54:48 +0900 Subject: [PATCH 2/8] rename --- .../FieldComponents/{IntegerField.tsx => NumberField.tsx} | 4 ++-- .../molecules/Content/Form/fields/FieldTypesMap.ts | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) rename web/src/components/molecules/Content/Form/fields/FieldComponents/{IntegerField.tsx => NumberField.tsx} (94%) diff --git a/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx b/web/src/components/molecules/Content/Form/fields/FieldComponents/NumberField.tsx similarity index 94% rename from web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx rename to web/src/components/molecules/Content/Form/fields/FieldComponents/NumberField.tsx index bb7a2666ce..b30e1c676e 100644 --- a/web/src/components/molecules/Content/Form/fields/FieldComponents/IntegerField.tsx +++ b/web/src/components/molecules/Content/Form/fields/FieldComponents/NumberField.tsx @@ -14,7 +14,7 @@ type DefaultFieldProps = { disabled?: boolean; }; -const IntegerField: React.FC = ({ field, itemGroupId, disabled }) => { +const NumberField: React.FC = ({ field, itemGroupId, disabled }) => { const t = useT(); const min = useMemo( () => field?.typeProperty?.min ?? field?.typeProperty?.numberMin, @@ -72,4 +72,4 @@ const IntegerField: React.FC = ({ field, itemGroupId, disable ); }; -export default IntegerField; +export default NumberField; diff --git a/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts b/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts index ab1c2fb3e3..d748e4370f 100644 --- a/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts +++ b/web/src/components/molecules/Content/Form/fields/FieldTypesMap.ts @@ -7,8 +7,8 @@ import { URLField, } from "./FieldComponents"; import GeometryField from "./FieldComponents/GeometryField"; -import IntegerField from "./FieldComponents/IntegerField"; import MarkdownField from "./FieldComponents/MarkdownField"; +import NumberField from "./FieldComponents/NumberField"; import SelectField from "./FieldComponents/SelectField"; import TextareaField from "./FieldComponents/TextareaField"; @@ -21,8 +21,8 @@ export const FIELD_TYPE_COMPONENT_MAP = { URL: URLField, TextArea: TextareaField, MarkdownText: MarkdownField, - Integer: IntegerField, - Number: IntegerField, + Integer: NumberField, + Number: NumberField, Select: SelectField, GeometryObject: GeometryField, GeometryEditor: GeometryField, From a08c8f95ed050f4089cc0937542eea3c3fd471a2 Mon Sep 17 00:00:00 2001 From: caichi Date: Fri, 25 Oct 2024 17:56:54 +0900 Subject: [PATCH 3/8] fix: type bug --- web/src/components/molecules/Schema/types.ts | 2 +- web/src/components/organisms/DataConverters/model.ts | 4 ++-- web/src/components/organisms/DataConverters/schema.ts | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/src/components/molecules/Schema/types.ts b/web/src/components/molecules/Schema/types.ts index 7859f1d8f6..9b7c791225 100644 --- a/web/src/components/molecules/Schema/types.ts +++ b/web/src/components/molecules/Schema/types.ts @@ -28,7 +28,7 @@ export type Field = { export type GroupField = Field & { type: Exclude }; -type MetadataField = Field & { +export type MetadataField = Field & { type: Extract; }; diff --git a/web/src/components/organisms/DataConverters/model.ts b/web/src/components/organisms/DataConverters/model.ts index c883c2c12d..f22b4d4c07 100644 --- a/web/src/components/organisms/DataConverters/model.ts +++ b/web/src/components/organisms/DataConverters/model.ts @@ -1,5 +1,5 @@ import { Model } from "@reearth-cms/components/molecules/Model/types"; -import { Field } from "@reearth-cms/components/molecules/Schema/types"; +import { Field, MetadataField } from "@reearth-cms/components/molecules/Schema/types"; import { Maybe, Model as GQLModel } from "@reearth-cms/gql/graphql-client-api"; export const fromGraphQLModel = (model: Maybe): Model | undefined => { @@ -46,7 +46,7 @@ export const fromGraphQLModel = (model: Maybe): Model | undefined => { multiple: field.multiple, required: field.required, typeProperty: field.typeProperty, - }) as Field, + }) as MetadataField, ), }, }; diff --git a/web/src/components/organisms/DataConverters/schema.ts b/web/src/components/organisms/DataConverters/schema.ts index 33bdcc07de..65f20e3abb 100644 --- a/web/src/components/organisms/DataConverters/schema.ts +++ b/web/src/components/organisms/DataConverters/schema.ts @@ -1,4 +1,4 @@ -import { Field, Group } from "@reearth-cms/components/molecules/Schema/types"; +import { GroupField, Group } from "@reearth-cms/components/molecules/Schema/types"; import { Maybe, Group as GQLGroup } from "@reearth-cms/gql/graphql-client-api"; export const fromGraphQLGroup = (group: Maybe): Group | undefined => { @@ -27,7 +27,7 @@ export const fromGraphQLGroup = (group: Maybe): Group | undefined => { multiple: field.multiple, required: field.required, typeProperty: field.typeProperty, - }) as Field, + }) as GroupField, ), }, }; From 03b0c334f57f261732863c182f85c1dbe3584f19 Mon Sep 17 00:00:00 2001 From: caichi Date: Fri, 25 Oct 2024 18:04:39 +0900 Subject: [PATCH 4/8] i18n --- .../components/molecules/Schema/fieldTypes.ts | 3 + web/src/i18n/translations/en.yml | 1116 +++++++++-------- web/src/i18n/translations/ja.yml | 1116 +++++++++-------- 3 files changed, 1121 insertions(+), 1114 deletions(-) diff --git a/web/src/components/molecules/Schema/fieldTypes.ts b/web/src/components/molecules/Schema/fieldTypes.ts index d70c546524..65ca9d32ba 100644 --- a/web/src/components/molecules/Schema/fieldTypes.ts +++ b/web/src/components/molecules/Schema/fieldTypes.ts @@ -129,6 +129,9 @@ t("Multiple select"); t("Int"); t("Integer"); +t("Float"); +t("Fractional"); + t("URL"); t("http/https URL"); diff --git a/web/src/i18n/translations/en.yml b/web/src/i18n/translations/en.yml index bf5963a220..2f31ca35a0 100644 --- a/web/src/i18n/translations/en.yml +++ b/web/src/i18n/translations/en.yml @@ -1,557 +1,559 @@ -Download: '' -Loading: '' -Oops!: '' -PAGE NOT FOUND ON SERVER: '' -Go back Home: '' -ITEM NOT FOUND ON SERVER: '' -Model: '' -Switch: '' -End point: '' -Assets: '' -Private: '' -Public: '' -Accessibility: '' -Public Scope: '' -Choose the scope of your project. This affects all the models shown below that are switched on.: '' -Project Alias: '' -Alias copied!!: '' -Save changes: '' -Are you sure you want to delete your account?: '' -Cancel: '' -Danger Zone: '' -Delete Personal Account: '' -Permanently removes your personal account and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' -Account Name: '' -This is your ID that is used between Re:Earth and Re:Earth CMS.: '' -Please input Account Name!: '' -Your Email: '' -Please enter the email address you want to use to log in with Re:Earth CMS.: '' -Please input Your Email!: '' -Save: '' -Account Settings: '' -General: '' -Service: '' -Auto: '' -Service Language: '' -This will change the UI language: '' -Language: '' -URL copied!!: '' -Unzip: '' -Asset Type: '' -Created Time: '' -Created By: '' -Linked to: '' -Asset: '' -Source Code: '' -Render: '' -PNG/JPEG/TIFF/GIF: '' -SVG: '' -GEOJSON/KML/CZML: '' -3D Tiles: '' -MVT: '' -GLTF/GLB: '' -CSV: '' -Unknown Type: '' -Decompressing...: '' -Failed to decompress. Please check the file and try again.: '' -Not supported: '' -Decompressed: '' -Failed: '' -Decompressing: '' -Skipped: '' -Pending: '' -File: '' -Size: '' -Preview Type: '' -Status: '' -Created At: '' -ID: '' -input search text: '' -Deselect: '' -Delete: '' -Upload Asset: '' -Auto Unzip: '' -Remove file: '' -Click or drag files to this area to upload: '' -Single or multiple file upload is supported: '' -Uploading: '' -Upload and Link: '' -Upload: '' -Asset Uploader: '' -Local: '' -URL: '' -Please input the URL of the asset!: '' -Please input a valid URL: '' -Could not display svg: '' -Comment: '' -Comments: '' -Cannot edit in read-only editor: '' -You are entering a new value: '' -This action will replace the previously entered value. Do you want to continue?: '' -Do not show this again: '' -Continue: '' -Value copied!!: '' -Search Location: '' -GeoJSON type mismatch, please check your input: '' -Personal Account: '' -Workspaces: '' -Create Workspace: '' -Logout: '' -Re:Earth CMS: '' -Go to Editor: '' -Link Asset: '' -New: '' -Tag: '' -OK: '' -Project name: '' -Please input the name of project!: '' -Project alias: '' -Project alias must be unique and at least 5 characters long. It can only contain letters, numbers, underscores, and dashes.: '' -Project alias is not valid: '' -Project description: '' -Home: '' -Overview: '' -Schema: '' -Content: '' -Request: '' -Settings: '' -Workspace name: '' -Please input the title of the new workspace!: '' -Member: '' -Integrations: '' -My Integrations: '' -Workspace: '' -Account: '' -Please input field!: '' -Please select an option!: '' -URL is not valid: '' -unique: '' -Title: '' -Leave: '' -This item has unsaved data: '' -Are you going to leave?: '' -Add to Request: '' -Unpublish: '' -New Request: '' -Publish: '' -Replace item: '' -Refer to item: '' -Item Information: '' -Updated At: '' -Updated By: '' -Publish State: '' -Linked Request: '' -This item has been referenced: '' -Are you going to refer to it? The previous reference will be canceled automatically: '' -State: '' -Reviewers: '' -New Item: '' -We found some referenced items that not been published yet. Please select to publish the items.: '' -Please input the title of your request!: '' -Description: '' -Please select a reviewer!: '' -Reviewer: '' -We found some referenced items that not published yet. Please select to add the items to the same request.: '' -is: '' -is not: '' -contains: '' -doesn't contain: '' -start with: '' -doesn't start with: '' -end with: '' -doesn't end with: '' -greater than: '' -greater than or equal to: '' -less than: '' -less than or equal to: '' -after: '' -after or on: '' -before: '' -before or on: '' -of this week: '' -of this month: '' -of this year: '' -is empty: '' -is not empty: '' -Ascending: '' -Descending: '' -Confirm: '' -Filter: '' -Add Filter: '' -Add Sort: '' -Control: '' -DRAFT: '' -PUBLIC: '' -REVIEW: '' -Connect Integration: '' -Connect: '' -Integration Setting: '' -Role: '' -Please input the appropriate role for this integration!: '' -select role: '' -Reader: '' -Writer: '' -Maintainer: '' -Owner: '' -Name: '' -Creator: '' -Remove: '' -No Integration yet: '' -Create a new: '' -Or read: '' -how to use Re:Earth CMS: '' -first: '' -Add member: '' -Add to workspace: '' -Email address or user name: '' -Selected Members: '' -Role Settings: '' -Please input the appropriate role for this member!: '' -Are you sure to remove this member?: '' -Remove this member from workspace means this member will not view any content of this workspace.: '' -Are you sure to leave this workspace?: '' -Leave this workspace means you will not view any content of this workspace.: '' -Thumbnail: '' -Email: '' -Action: '' -Change Role?: '' -Members: '' -New Member: '' -GROUPS: '' -Add: '' -MODELS: '' -My Integration: '' -Webhook: '' -New Integration: '' -Create: '' -Integration Name: '' -Please input the title of the integration!: '' -Create new integration: '' -Are you sure to remove this integration?: '' -Permanently remove your Integration and all of its contents from the Re:Earth CMS.: '' -Once the integration is removed, it will disappear from all workspaces.: '' -Remove Integration: '' -Permanently remove your Integration and all of its contents from the Re:Earth CMS. This action is not reversible – please continue with caution.: '' -Regenerate The Integration Token?: '' -If you regenerate the integration token, the previous token will become invalid, and this action cannot be undone. Are you sure you want to proceed?: '' -Reset: '' -Integration Token: '' -Token copied!!: '' -Regenerate: '' -Code Example: '' -your model id here: '' -your Integration Token here: '' -Update: '' -Decompress: '' -This is your webhook name: '' -Please input the name of the webhook!: '' -Url: '' -Please note that all webhook URLs must start with http://.: '' -Secret: '' -This secret will be used to sign Webhook request: '' -Please input secret!: '' -Trigger Event: '' -Item: '' -New Webhook: '' -No Webhook yet: '' -No Projects Yet: '' -Create a new project: '' -New Project: '' -Models: '' -New Model: '' -Edit: '' -Are you sure you want to delete this project?: '' -Delete Project: '' -Permanently removes your project and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' -Alias: '' -Write something here to describe this record.: '' -Project Settings: '' -Need request: '' -If this option is chosen, all new model within the project will default follow it: '' -Leave your comment...: '' -Add Comment: '' -Close: '' -Reopen: '' -Approve: '' -Approved: '' -Closed: '' -Assign to: '' -WAITING: '' -APPROVED: '' -CLOSED: '' -Current user: '' -Delete Model: '' -Delete Group: '' -Are you sure you want to delete this model: Are you sure you want to delete this model {{name}}? -Are you sure you want to delete this group: Are you sure you want to delete this group {{name}}? -This action will permanently delete the selected model and cannot be reversed.: '' -This action will permanently delete the selected group and cannot be reversed.: '' -Warning: '' -Text: '' -Time: '' -Boolean: '' -Select: '' -Number: '' -GeoJSON Geometry: '' -Relation: '' -Group: '' -Meta Data: '' -Add Field: '' -optional: '' -Update Field: Update {{field}} Field -Create Field: Create {{field}} Field -Previous: '' -Next: '' -Reference setting: '' -Field: '' -Corresponding field: '' -Select the model to reference: '' -Please select the model!: '' -Reference direction: '' -One-way reference: '' -A unidirectional relationship where an item refers to another item: '' -Two-way reference: '' -A bidirectional relationship where two items refer to each other: '' -Display name: '' -Please input the display name of field!: '' -Field Key: '' -Field key must be unique and at least 1 character long. It can only contain letters, numbers, underscores and dashes.: '' -Key is not valid: '' -Set Options: '' -Stores a list of values instead of a single value: '' -Support multiple values: '' -Only one field can be used as the title: '' -Use as title: '' -Validation: '' -Prevents saving an entry if this field is empty: '' -Make field required: '' -Ensures that a multiple entries can't have the same value for this field: '' -Set field as unique: '' -Set default value: '' -Default value must be a valid URL and start with 'http://' or 'https://'.: '' -Set maximum length: '' -Set minimum value: '' -Set maximum value: '' -Set Tags: '' -Select Group: '' -Please select the group!: '' -Support Type: '' -Please select what type of Geometry this field will support: '' -Please select the Support Type!: '' -options: '' -Ensures that multiple entries can't have the same value for this field: '' -Default value: '' -Heading and titles, one-line field: '' -TextArea: '' -Multi line text: '' -Markdown text: '' -Rich text which supports md style: '' -Asset file: '' -true/false field: '' -Option: '' -Multiple select: '' -Int: '' -Integer: '' -http/https URL: '' -Reference: '' -Reference other models and items: '' -Date: '' -Date picker: '' -Select from a list of tags: '' -Check Box: '' -Select from a list of checkboxes: '' -Customize a group of fields: '' -Geometry Object: '' -Input GeoJSON and preview: '' -Geometry Editor: '' -Draw the geometry on map: '' -Update Model: '' -Update Group: '' -New Group: '' -Model name: '' -Group name: '' -Please input the name of the model!: '' -Please input the name of the group!: '' -Model description: '' -Group description: '' -Model key: '' -Group key: '' -Model key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: '' -Group key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: '' -Fields: '' -Are you sure you want to delete this field?: Are you sure you want to delete this field {{name}}? -Publish Status: '' -Empty Schema design.: '' -Please add some field from right panel.: '' -New Tiles: '' -New Terrain: '' -Update Tiles: '' -Update Terrain: '' -Tiles type: '' -Terrain type: '' -Name of tiles: '' -example: '' -Image URL: '' -Name of terrain: '' -Terrain Cesium Ion asset ID: '' -Terrain Cesium Ion access token: '' -Terrain URL: '' -Geospatial asset preview setting: '' -For asset viewer (formats like 3D Tiles, MVT, GeoJSON, CZML ... ): '' -Tiles: '' -The first one in the list will be the default Tile.: '' -Add new Tiles option: '' -Terrain: '' -The first one in the list will be the default Terrain.: '' -Enable: '' -Add new Terrain option: '' -New View: '' -Update View: '' -View Name: '' -This is the title of the view: '' -Please input the view name!: '' -Rename: '' -Remove View: '' -Are you sure you want to delete this view?: '' -Deleting the view is a permanent action. However, the contents will remain unaffected.: '' -Please proceed with caution as this action cannot be undone.: '' -Save as new view: '' -Welcome to Re:Earth CMS !: '' -WRITER: '' -READER: '' -MAINTAINER: '' -OWNER: '' -search projects: '' -Create a Workspace: '' -Are you sure you want to delete this workspace?: '' -Remove Workspace: '' -Permanently removes the current workspace and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' -Workspace Name: '' -This is the name that will be visible within Re:Earth and Re:Earth CMS. This could be your company's name, department's name, the theme of your projects, etc.: '' -Please input a new workspace name!: '' -Workspace Settings: '' -Failed to update user.: '' -Successfully updated user!: '' -Failed to update language.: '' -Successfully updated language!: '' -Failed to delete user.: '' -Successfully deleted user!: '' -Successfully created workspace!: '' -Failed to create comment.: '' -Successfully created comment!: '' -Failed to update comment.: '' -Successfully updated comment!: '' -Failed to delete comment.: '' -Successfully deleted comment!: '' -Failed to update publication settings.: '' -Successfully updated publication settings!: '' -Failed to update asset.: '' -Asset was successfully updated!: '' -Failed to decompress asset.: '' -Asset is being decompressed!: '' -Failed to add one or more assets.: '' -Successfully added one or more assets!: '' -Successfully added asset!: '' -Failed to add asset.: '' -Failed to delete one or more assets.: '' -One or more assets were successfully deleted!: '' -No comments.: '' -Please click the comment bubble in the table to check comments.: '' -Failed to create item.: '' -Successfully created Item!: '' -Failed to update item.: '' -Successfully updated Item!: '' -Failed to create request.: '' -Successfully created request!: '' -Failed to update request.: '' -Successfully updated request!: '' -Failed to delete one or more items.: '' -One or more items were successfully deleted!: '' -One of the items already exists in the request.: '' -Successfully updated Request!: '' -Failed to publish items.: '' -Successfully published items!: '' -Failed to unpublish items.: '' -Successfully unpublished items!: '' -Failed to create view.: '' -Successfully created view!: '' -Failed to update view.: '' -Successfully updated view!: '' -Failed to rename view.: '' -Successfully renamed view!: '' -Failed to delete view.: '' -Successfully deleted view!: '' -Failed to update views order.: '' -Successfully updated views order!: '' -Failed to create model.: '' -Successfully created model!: '' -Failed to update models order.: '' -Successfully updated models order!: '' -Failed to create group.: '' -Successfully created group!: '' -Failed to update groups order.: '' -Successfully updated groups order!: '' -Failed to delete model.: '' -Successfully deleted model!: '' -Failed to update model.: '' -Successfully updated model!: '' -Failed to delete one or more requests.: '' -One or more requests were successfully closed!: '' -Failed to approve request.: '' -Successfully approved request!: '' -Failed to delete field.: '' -Successfully deleted field!: '' -Failed to update field.: '' -Successfully updated field!: '' -Failed to create field.: '' -Successfully created field!: '' -Group cannot be deleted: '' -is used in: '' -If you want to delete it, please delete the field that uses it first.: '' -Failed to delete group.: '' -Successfully deleted group!: '' -Failed to update group.: '' -Successfully updated group!: '' -No available Group: '' -Please create a Group first to use the field: '' -Create Group: '' -Failed to update project.: '' -Successfully updated project!: '' -Failed to update request roles.: '' -Successfully updated request roles!: '' -Failed to delete project.: '' -Successfully deleted project!: '' -Failed to update workspace.: '' -Successfully updated workspace!: '' -Failed to connect integration.: '' -Successfully connected integration to the workspace!: '' -Failed to update workspace integration.: '' -Successfully updated workspace integration!: '' -Failed to delete one or more intagrations.: '' -One or more integrations were successfully deleted!: '' -Failed to add one or more members.: '' -Successfully added member(s) to the workspace!: '' -Failed to update member's role.: '' -Successfully updated member's role!: '' -Failed to remove member(s) from the workspace.: '' -Successfully removed member(s) from the workspace!: '' -Failed to leave the workspace.: '' -Successfully left the workspace!: '' -Failed to update integration.: '' -Successfully updated integration!: '' -Failed to delete integration.: '' -Successfully deleted integration!: '' -The attempt to regenerate the integration token has failed.: '' -The integration token has been successfully regenerated!: '' -Failed to create webhook.: '' -Successfully created webhook!: '' -Failed to delete webhook.: '' -Successfully deleted webhook!: '' -Failed to update webhook.: '' -Successfully updated webhook!: '' -Failed to create integration.: '' -Successfully created integration!: '' -Failed to create project.: '' -Successfully created project!: '' -Failed to delete workspace.: '' -Successfully deleted workspace!: '' +Download: '' +Loading: '' +Oops!: '' +PAGE NOT FOUND ON SERVER: '' +Go back Home: '' +ITEM NOT FOUND ON SERVER: '' +Model: '' +Switch: '' +End point: '' +Assets: '' +Private: '' +Public: '' +Accessibility: '' +Public Scope: '' +Choose the scope of your project. This affects all the models shown below that are switched on.: '' +Project Alias: '' +Alias copied!!: '' +Save changes: '' +Are you sure you want to delete your account?: '' +Cancel: '' +Danger Zone: '' +Delete Personal Account: '' +Permanently removes your personal account and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' +Account Name: '' +This is your ID that is used between Re:Earth and Re:Earth CMS.: '' +Please input Account Name!: '' +Your Email: '' +Please enter the email address you want to use to log in with Re:Earth CMS.: '' +Please input Your Email!: '' +Save: '' +Account Settings: '' +General: '' +Service: '' +Auto: '' +Service Language: '' +This will change the UI language: '' +Language: '' +URL copied!!: '' +Unzip: '' +Asset Type: '' +Created Time: '' +Created By: '' +Linked to: '' +Asset: '' +Source Code: '' +Render: '' +PNG/JPEG/TIFF/GIF: '' +SVG: '' +GEOJSON/KML/CZML: '' +3D Tiles: '' +MVT: '' +GLTF/GLB: '' +CSV: '' +Unknown Type: '' +Decompressing...: '' +Failed to decompress. Please check the file and try again.: '' +Not supported: '' +Decompressed: '' +Failed: '' +Decompressing: '' +Skipped: '' +Pending: '' +File: '' +Size: '' +Preview Type: '' +Status: '' +Created At: '' +ID: '' +input search text: '' +Deselect: '' +Delete: '' +Upload Asset: '' +Auto Unzip: '' +Remove file: '' +Click or drag files to this area to upload: '' +Single or multiple file upload is supported: '' +Uploading: '' +Upload and Link: '' +Upload: '' +Asset Uploader: '' +Local: '' +URL: '' +Please input the URL of the asset!: '' +Please input a valid URL: '' +Could not display svg: '' +Comment: '' +Comments: '' +Cannot edit in read-only editor: '' +You are entering a new value: '' +This action will replace the previously entered value. Do you want to continue?: '' +Do not show this again: '' +Continue: '' +Value copied!!: '' +Search Location: '' +GeoJSON type mismatch, please check your input: '' +Personal Account: '' +Workspaces: '' +Create Workspace: '' +Logout: '' +Re:Earth CMS: '' +Go to Editor: '' +Link Asset: '' +New: '' +Tag: '' +OK: '' +Project name: '' +Please input the name of project!: '' +Project alias: '' +Project alias must be unique and at least 5 characters long. It can only contain letters, numbers, underscores, and dashes.: '' +Project alias is not valid: '' +Project description: '' +Home: '' +Overview: '' +Schema: '' +Content: '' +Request: '' +Settings: '' +Workspace name: '' +Please input the title of the new workspace!: '' +Member: '' +Integrations: '' +My Integrations: '' +Workspace: '' +Account: '' +Please input field!: '' +Please select an option!: '' +URL is not valid: '' +unique: '' +Title: '' +Leave: '' +This item has unsaved data: '' +Are you going to leave?: '' +Add to Request: '' +Unpublish: '' +New Request: '' +Publish: '' +Replace item: '' +Refer to item: '' +Item Information: '' +Updated At: '' +Updated By: '' +Publish State: '' +Linked Request: '' +This item has been referenced: '' +Are you going to refer to it? The previous reference will be canceled automatically: '' +State: '' +Reviewers: '' +New Item: '' +We found some referenced items that not been published yet. Please select to publish the items.: '' +Please input the title of your request!: '' +Description: '' +Please select a reviewer!: '' +Reviewer: '' +We found some referenced items that not published yet. Please select to add the items to the same request.: '' +is: '' +is not: '' +contains: '' +doesn't contain: '' +start with: '' +doesn't start with: '' +end with: '' +doesn't end with: '' +greater than: '' +greater than or equal to: '' +less than: '' +less than or equal to: '' +after: '' +after or on: '' +before: '' +before or on: '' +of this week: '' +of this month: '' +of this year: '' +is empty: '' +is not empty: '' +Ascending: '' +Descending: '' +Confirm: '' +Filter: '' +Add Filter: '' +Add Sort: '' +Control: '' +DRAFT: '' +PUBLIC: '' +REVIEW: '' +Connect Integration: '' +Connect: '' +Integration Setting: '' +Role: '' +Please input the appropriate role for this integration!: '' +select role: '' +Reader: '' +Writer: '' +Maintainer: '' +Owner: '' +Name: '' +Creator: '' +Remove: '' +No Integration yet: '' +Create a new: '' +Or read: '' +how to use Re:Earth CMS: '' +first: '' +Add member: '' +Add to workspace: '' +Email address or user name: '' +Selected Members: '' +Role Settings: '' +Please input the appropriate role for this member!: '' +Are you sure to remove this member?: '' +Remove this member from workspace means this member will not view any content of this workspace.: '' +Are you sure to leave this workspace?: '' +Leave this workspace means you will not view any content of this workspace.: '' +Thumbnail: '' +Email: '' +Action: '' +Change Role?: '' +Members: '' +New Member: '' +GROUPS: '' +Add: '' +MODELS: '' +My Integration: '' +Webhook: '' +New Integration: '' +Create: '' +Integration Name: '' +Please input the title of the integration!: '' +Create new integration: '' +Are you sure to remove this integration?: '' +Permanently remove your Integration and all of its contents from the Re:Earth CMS.: '' +Once the integration is removed, it will disappear from all workspaces.: '' +Remove Integration: '' +Permanently remove your Integration and all of its contents from the Re:Earth CMS. This action is not reversible – please continue with caution.: '' +Regenerate The Integration Token?: '' +If you regenerate the integration token, the previous token will become invalid, and this action cannot be undone. Are you sure you want to proceed?: '' +Reset: '' +Integration Token: '' +Token copied!!: '' +Regenerate: '' +Code Example: '' +your model id here: '' +your Integration Token here: '' +Update: '' +Decompress: '' +This is your webhook name: '' +Please input the name of the webhook!: '' +Url: '' +Please note that all webhook URLs must start with http://.: '' +Secret: '' +This secret will be used to sign Webhook request: '' +Please input secret!: '' +Trigger Event: '' +Item: '' +New Webhook: '' +No Webhook yet: '' +No Projects Yet: '' +Create a new project: '' +New Project: '' +Models: '' +New Model: '' +Edit: '' +Are you sure you want to delete this project?: '' +Delete Project: '' +Permanently removes your project and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' +Alias: '' +Write something here to describe this record.: '' +Project Settings: '' +Need request: '' +If this option is chosen, all new model within the project will default follow it: '' +Leave your comment...: '' +Add Comment: '' +Close: '' +Reopen: '' +Approve: '' +Approved: '' +Closed: '' +Assign to: '' +WAITING: '' +APPROVED: '' +CLOSED: '' +Current user: '' +Delete Model: '' +Delete Group: '' +Are you sure you want to delete this model: Are you sure you want to delete this model {{name}}? +Are you sure you want to delete this group: Are you sure you want to delete this group {{name}}? +This action will permanently delete the selected model and cannot be reversed.: '' +This action will permanently delete the selected group and cannot be reversed.: '' +Warning: '' +Text: '' +Time: '' +Boolean: '' +Select: '' +Number: '' +GeoJSON Geometry: '' +Relation: '' +Group: '' +Meta Data: '' +Add Field: '' +optional: '' +Update Field: Update {{field}} Field +Create Field: Create {{field}} Field +Previous: '' +Next: '' +Reference setting: '' +Field: '' +Corresponding field: '' +Select the model to reference: '' +Please select the model!: '' +Reference direction: '' +One-way reference: '' +A unidirectional relationship where an item refers to another item: '' +Two-way reference: '' +A bidirectional relationship where two items refer to each other: '' +Display name: '' +Please input the display name of field!: '' +Field Key: '' +Field key must be unique and at least 1 character long. It can only contain letters, numbers, underscores and dashes.: '' +Key is not valid: '' +Set Options: '' +Stores a list of values instead of a single value: '' +Support multiple values: '' +Only one field can be used as the title: '' +Use as title: '' +Validation: '' +Prevents saving an entry if this field is empty: '' +Make field required: '' +Ensures that a multiple entries can't have the same value for this field: '' +Set field as unique: '' +Set default value: '' +Default value must be a valid URL and start with 'http://' or 'https://'.: '' +Set maximum length: '' +Set minimum value: '' +Set maximum value: '' +Set Tags: '' +Select Group: '' +Please select the group!: '' +Support Type: '' +Please select what type of Geometry this field will support: '' +Please select the Support Type!: '' +options: '' +Ensures that multiple entries can't have the same value for this field: '' +Default value: '' +Heading and titles, one-line field: '' +TextArea: '' +Multi line text: '' +Markdown text: '' +Rich text which supports md style: '' +Asset file: '' +true/false field: '' +Option: '' +Multiple select: '' +Int: '' +Integer: '' +Float: '' +Fractional: '' +http/https URL: '' +Reference: '' +Reference other models and items: '' +Date: '' +Date picker: '' +Select from a list of tags: '' +Check Box: '' +Select from a list of checkboxes: '' +Customize a group of fields: '' +Geometry Object: '' +Input GeoJSON and preview: '' +Geometry Editor: '' +Draw the geometry on map: '' +Update Model: '' +Update Group: '' +New Group: '' +Model name: '' +Group name: '' +Please input the name of the model!: '' +Please input the name of the group!: '' +Model description: '' +Group description: '' +Model key: '' +Group key: '' +Model key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: '' +Group key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: '' +Fields: '' +Are you sure you want to delete this field?: Are you sure you want to delete this field {{name}}? +Publish Status: '' +Empty Schema design.: '' +Please add some field from right panel.: '' +New Tiles: '' +New Terrain: '' +Update Tiles: '' +Update Terrain: '' +Tiles type: '' +Terrain type: '' +Name of tiles: '' +example: '' +Image URL: '' +Name of terrain: '' +Terrain Cesium Ion asset ID: '' +Terrain Cesium Ion access token: '' +Terrain URL: '' +Geospatial asset preview setting: '' +For asset viewer (formats like 3D Tiles, MVT, GeoJSON, CZML ... ): '' +Tiles: '' +The first one in the list will be the default Tile.: '' +Add new Tiles option: '' +Terrain: '' +The first one in the list will be the default Terrain.: '' +Enable: '' +Add new Terrain option: '' +New View: '' +Update View: '' +View Name: '' +This is the title of the view: '' +Please input the view name!: '' +Rename: '' +Remove View: '' +Are you sure you want to delete this view?: '' +Deleting the view is a permanent action. However, the contents will remain unaffected.: '' +Please proceed with caution as this action cannot be undone.: '' +Save as new view: '' +Welcome to Re:Earth CMS !: '' +WRITER: '' +READER: '' +MAINTAINER: '' +OWNER: '' +search projects: '' +Create a Workspace: '' +Are you sure you want to delete this workspace?: '' +Remove Workspace: '' +Permanently removes the current workspace and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: '' +Workspace Name: '' +This is the name that will be visible within Re:Earth and Re:Earth CMS. This could be your company's name, department's name, the theme of your projects, etc.: '' +Please input a new workspace name!: '' +Workspace Settings: '' +Failed to update user.: '' +Successfully updated user!: '' +Failed to update language.: '' +Successfully updated language!: '' +Failed to delete user.: '' +Successfully deleted user!: '' +Successfully created workspace!: '' +Failed to create comment.: '' +Successfully created comment!: '' +Failed to update comment.: '' +Successfully updated comment!: '' +Failed to delete comment.: '' +Successfully deleted comment!: '' +Failed to update publication settings.: '' +Successfully updated publication settings!: '' +Failed to update asset.: '' +Asset was successfully updated!: '' +Failed to decompress asset.: '' +Asset is being decompressed!: '' +Failed to add one or more assets.: '' +Successfully added one or more assets!: '' +Successfully added asset!: '' +Failed to add asset.: '' +Failed to delete one or more assets.: '' +One or more assets were successfully deleted!: '' +No comments.: '' +Please click the comment bubble in the table to check comments.: '' +Failed to create item.: '' +Successfully created Item!: '' +Failed to update item.: '' +Successfully updated Item!: '' +Failed to create request.: '' +Successfully created request!: '' +Failed to update request.: '' +Successfully updated request!: '' +Failed to delete one or more items.: '' +One or more items were successfully deleted!: '' +One of the items already exists in the request.: '' +Successfully updated Request!: '' +Failed to publish items.: '' +Successfully published items!: '' +Failed to unpublish items.: '' +Successfully unpublished items!: '' +Failed to create view.: '' +Successfully created view!: '' +Failed to update view.: '' +Successfully updated view!: '' +Failed to rename view.: '' +Successfully renamed view!: '' +Failed to delete view.: '' +Successfully deleted view!: '' +Failed to update views order.: '' +Successfully updated views order!: '' +Failed to create model.: '' +Successfully created model!: '' +Failed to update models order.: '' +Successfully updated models order!: '' +Failed to create group.: '' +Successfully created group!: '' +Failed to update groups order.: '' +Successfully updated groups order!: '' +Failed to delete model.: '' +Successfully deleted model!: '' +Failed to update model.: '' +Successfully updated model!: '' +Failed to delete one or more requests.: '' +One or more requests were successfully closed!: '' +Failed to approve request.: '' +Successfully approved request!: '' +Failed to delete field.: '' +Successfully deleted field!: '' +Failed to update field.: '' +Successfully updated field!: '' +Failed to create field.: '' +Successfully created field!: '' +Group cannot be deleted: '' +is used in: '' +If you want to delete it, please delete the field that uses it first.: '' +Failed to delete group.: '' +Successfully deleted group!: '' +Failed to update group.: '' +Successfully updated group!: '' +No available Group: '' +Please create a Group first to use the field: '' +Create Group: '' +Failed to update project.: '' +Successfully updated project!: '' +Failed to update request roles.: '' +Successfully updated request roles!: '' +Failed to delete project.: '' +Successfully deleted project!: '' +Failed to update workspace.: '' +Successfully updated workspace!: '' +Failed to connect integration.: '' +Successfully connected integration to the workspace!: '' +Failed to update workspace integration.: '' +Successfully updated workspace integration!: '' +Failed to delete one or more intagrations.: '' +One or more integrations were successfully deleted!: '' +Failed to add one or more members.: '' +Successfully added member(s) to the workspace!: '' +Failed to update member's role.: '' +Successfully updated member's role!: '' +Failed to remove member(s) from the workspace.: '' +Successfully removed member(s) from the workspace!: '' +Failed to leave the workspace.: '' +Successfully left the workspace!: '' +Failed to update integration.: '' +Successfully updated integration!: '' +Failed to delete integration.: '' +Successfully deleted integration!: '' +The attempt to regenerate the integration token has failed.: '' +The integration token has been successfully regenerated!: '' +Failed to create webhook.: '' +Successfully created webhook!: '' +Failed to delete webhook.: '' +Successfully deleted webhook!: '' +Failed to update webhook.: '' +Successfully updated webhook!: '' +Failed to create integration.: '' +Successfully created integration!: '' +Failed to create project.: '' +Successfully created project!: '' +Failed to delete workspace.: '' +Successfully deleted workspace!: '' diff --git a/web/src/i18n/translations/ja.yml b/web/src/i18n/translations/ja.yml index 2334ef3d40..d0779012b6 100644 --- a/web/src/i18n/translations/ja.yml +++ b/web/src/i18n/translations/ja.yml @@ -1,557 +1,559 @@ -Download: ダりンロヌド -Loading: ロヌディング䞭 -Oops!: '' -PAGE NOT FOUND ON SERVER: ペヌゞが芋぀かりたせん。 -Go back Home: ホヌムぞ戻る -ITEM NOT FOUND ON SERVER: デヌタが芋぀かりたせん。 -Model: モデル -Switch: 切り替え -End point: ゚ンドポむント -Assets: アセット -Private: 非公開 -Public: 公開 -Accessibility: 公開蚭定 -Public Scope: 公開範囲 -Choose the scope of your project. This affects all the models shown below that are switched on.: プロゞェクトの公開範囲を遞択しおください。この操䜜は以䞋のすべおのモデルに圱響したす。 -Project Alias: プロゞェクト゚むリアス -Alias copied!!: ゚むリアスをコピヌしたした -Save changes: 倉曎を保存 -Are you sure you want to delete your account?: 本圓にアカりントを削陀しおよろしいですか -Cancel: キャンセル -Danger Zone: 重芁操䜜 -Delete Personal Account: アカりントを削陀 -Permanently removes your personal account and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: アカりントずそれに関連するすべおのコンテンツを削陀したす。この操䜜は取り消すこずができたせん。よろしいですか -Account Name: アカりント名 -This is your ID that is used between Re:Earth and Re:Earth CMS.: アカりントのIDです。 -Please input Account Name!: アカりント名を入力しおください! -Your Email: メヌルアドレス -Please enter the email address you want to use to log in with Re:Earth CMS.: ログむンに利甚するメヌルアドレスを入力しおください。 -Please input Your Email!: メヌルアドレスを入力しおください! -Save: 保存 -Account Settings: アカりント蚭定 -General: 䞀般 -Service: サヌビス -Auto: 自動 -Service Language: 利甚蚀語 -This will change the UI language: UIの蚀語蚭定を倉曎したす。 -Language: 蚀語 -URL copied!!: URLをコピヌしたした -Unzip: '' -Asset Type: アセットの皮類 -Created Time: 䜜成日時 -Created By: 䜜成者 -Linked to: リンク先 -Asset: アセット -Source Code: ゜ヌスコヌド -Render: レンダヌ -PNG/JPEG/TIFF/GIF: '' -SVG: '' -GEOJSON/KML/CZML: '' -3D Tiles: '' -MVT: '' -GLTF/GLB: '' -CSV: '' -Unknown Type: 䞍明 -Decompressing...: 解凍䞭 -Failed to decompress. Please check the file and try again.: 解凍に倱敗したした。 ファむルを確認しお、もう䞀床お詊しください。 -Not supported: プレビュヌ察応しおいないデヌタフォヌマットです。 -Decompressed: 解凍完了 -Failed: 倱敗 -Decompressing: 解凍䞭 -Skipped: スキップ -Pending: 保留䞭 -File: ファむル -Size: サむズ -Preview Type: プレビュヌタむプ -Status: ステヌタス -Created At: 䜜成日時 -ID: '' -input search text: 怜玢 -Deselect: 遞択解陀 -Delete: 削陀 -Upload Asset: アセットをアップロヌド -Auto Unzip: 自動解凍 -Remove file: ファむルを削陀 -Click or drag files to this area to upload: この゚リアにファむルをクリックたたはドラッグしおアップロヌドしたす -Single or multiple file upload is supported: 耇数のファむルのアップロヌドが可胜です。 -Uploading: アップロヌド䞭 -Upload and Link: アップロヌドずリンク -Upload: アップロヌド -Asset Uploader: アセットアップロヌダヌ -Local: ロヌカル -URL: '' -Please input the URL of the asset!: アセットのURLを入力しおください! -Please input a valid URL: 有効なURLを入力しおください -Could not display svg: svgを衚瀺できたせんでした。 -Comment: コメント -Comments: コメント -Cannot edit in read-only editor: 読み取り専甚゚ディタでは線集ができたせん -You are entering a new value: 新しい倀を入力しようずしおいたす -This action will replace the previously entered value. Do you want to continue?: この操䜜は以前に入力された倀を眮き換えたす。続けたすか -Do not show this again: 今埌は衚瀺しない -Continue: 続ける -Value copied!!: 倀をコピヌしたした -Search Location: 堎所を怜玢 -GeoJSON type mismatch, please check your input: GeoJSONの型が䞀臎したせん、入力を確認しおください -Personal Account: パヌ゜ナルアカりント -Workspaces: ワヌクスペヌス -Create Workspace: ワヌクスペヌスを䜜成 -Logout: ログアりト -Re:Earth CMS: Re:Earth CMS -Go to Editor: ゚ディタぞ移動 -Link Asset: アセットをリンク -New: 远加 -Tag: タグ -OK: '' -Project name: プロゞェクト名 -Please input the name of project!: プロゞェクト名を入力しおください -Project alias: プロゞェクト゚むリアス -Project alias must be unique and at least 5 characters long. It can only contain letters, numbers, underscores, and dashes.: プロゞェクト゚むリアスは5文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 -Project alias is not valid: 無効なプロゞェクトの゚むリアスです -Project description: プロゞェクト抂芁 -Home: ホヌム -Overview: 抂芁 -Schema: スキヌマ -Content: コンテンツ -Request: リク゚スト -Settings: 蚭定 -Workspace name: ワヌクスペヌス名 -Please input the title of the new workspace!: 新しいワヌクスペヌスの名前を入力しおください! -Member: メンバヌ -Integrations: むンテグレヌション -My Integrations: マむむンテグレヌション -Workspace: ワヌクスペヌス -Account: アカりント -Please input field!: フィヌルドを入力しおください。 -Please select an option!: オプションを遞択しおください。 -URL is not valid: 無効なURLです -unique: ナニヌク -Title: タむトル -Leave: 離れる -This item has unsaved data: 保存しおいないデヌタがありたす。 -Are you going to leave?: ペヌゞを離れたすか -Add to Request: 既存のリク゚ストに远加 -Unpublish: 非公開 -New Request: 新芏リク゚スト -Publish: 公開 -Replace item: アむテムを眮き換える -Refer to item: アむテムを参照 -Item Information: アむテムの情報 -Updated At: 曎新日時 -Updated By: 曎新者 -Publish State: 公開状態 -Linked Request: リンクされたリク゚スト -This item has been referenced: このアむテムは参照されおいたす -Are you going to refer to it? The previous reference will be canceled automatically: 参照したすか以前の参照は自動的に解陀されたすがよろしいですか -State: ステヌタス -Reviewers: レビュワヌ -New Item: 新芏アむテム -We found some referenced items that not been published yet. Please select to publish the items.: ただ公開されおいない参照アむテムが芋぀かりたした。公開するアむテムを遞択しおください。 -Please input the title of your request!: リク゚ストのタむトルを入力しおください。 -Description: 説明 -Please select a reviewer!: レビュワヌを遞択しおください。 -Reviewer: レビュワヌ -We found some referenced items that not published yet. Please select to add the items to the same request.: ただ公開されおいない参照アむテムが芋぀かりたした。同じリク゚ストに远加する堎合は遞択しおください。 -is: 同倀 -is not: 異なる -contains: 含む -doesn't contain: 含たない -start with: 始たる -doesn't start with: 始たらない -end with: 終わる -doesn't end with: 終わらない -greater than: 超過 -greater than or equal to: 以䞊 -less than: 未満 -less than or equal to: 以䞋 -after: 埌 -after or on: 以降 -before: 前 -before or on: 以前 -of this week: 今週 -of this month: 今月 -of this year: 今幎 -is empty: 空である -is not empty: 空でない -Ascending: 昇順 -Descending: 降順 -Confirm: 確認 -Filter: フィルタヌ -Add Filter: 絞り蟌む -Add Sort: 䞊び替える -Control: 操䜜 -DRAFT: ドラフト -PUBLIC: 公開 -REVIEW: レビュヌ -Connect Integration: むンテグレヌションを連携 -Connect: 連携 -Integration Setting: むンテグレヌション蚭定 -Role: ロヌル -Please input the appropriate role for this integration!: このむンテグレヌションに適切なロヌルを付䞎しおください -select role: ロヌルを遞択 -Reader: 閲芧者 -Writer: 線集者 -Maintainer: メンテナヌ -Owner: オヌナヌ -Name: 名前 -Creator: 䜜成者 -Remove: 削陀 -No Integration yet: ただむンテグレヌションはありたせん -Create a new: 新芏䜜成 -Or read: 読む -how to use Re:Earth CMS: CMSの䜿い方 -first: はじめに -Add member: メンバヌ远加 -Add to workspace: ワヌクスペヌスに远加 -Email address or user name: Emailアドレスもしくはナヌザヌ名 -Selected Members: 遞択䞭のメンバヌ -Role Settings: ロヌル蚭定 -Please input the appropriate role for this member!: このメンバヌに付䞎するロヌルを入力しおください -Are you sure to remove this member?: 本圓にメンバヌをこのワヌクスペヌスから削陀しおもよろしいですか -Remove this member from workspace means this member will not view any content of this workspace.: メンバヌをワヌクスペヌスから削陀するず、そのメンバヌはワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 -Are you sure to leave this workspace?: 本圓にこのワヌクスペヌスを離れおもよろしいですか -Leave this workspace means you will not view any content of this workspace.: ワヌクスペヌスを離れるず、ワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 -Thumbnail: サムネむル -Email: メヌルアドレス -Action: 操䜜 -Change Role?: ロヌルを倉曎 -Members: メンバヌ -New Member: メンバヌを远加 -GROUPS: グルヌプ -Add: 远加 -MODELS: モデル -My Integration: マむむンテグレヌション -Webhook: '' -New Integration: 新芏むンテグレヌション -Create: 䜜成 -Integration Name: むンテグレヌション名 -Please input the title of the integration!: むンテグレヌションの名前を入力しおください -Create new integration: 新芏むンテグレヌション䜜成 -Are you sure to remove this integration?: 本圓にこのむンテグレヌションを削陀しおよろしいですか -Permanently remove your Integration and all of its contents from the Re:Earth CMS.: むンテグレヌションを削陀したす。 -Once the integration is removed, it will disappear from all workspaces.: むンテグレヌション削陀するず、このむンテグレヌションを利甚しおいるすべおのワヌクスペヌスから取り陀かれたす。 -Remove Integration: むンテグレヌションを削陀 -Permanently remove your Integration and all of its contents from the Re:Earth CMS. This action is not reversible – please continue with caution.: むンテグレヌションを削陀したす。この操䜜は取り消すこずができたせん。 -Regenerate The Integration Token?: むンテグレヌショントヌクンを再生成したすか -If you regenerate the integration token, the previous token will become invalid, and this action cannot be undone. Are you sure you want to proceed?: むンテグレヌショントヌクンを再生成するず、以前のトヌクンは無効になり、この操䜜は元に戻せたせん。本圓に続行したすか -Reset: リセット -Integration Token: むンテグレヌショントヌクン -Token copied!!: トヌクンをコピヌしたした -Regenerate: 再生成 -Code Example: コヌド䟋 -your model id here: モデルIDをここに入力しおください -your Integration Token here: むンテグレヌショントヌクンをここに入力しおください -Update: アップデヌト -Decompress: 圧瞮 -This is your webhook name: Webhookの名前です -Please input the name of the webhook!: Webhookの名前を入力しおください -Url: URL -Please note that all webhook URLs must start with http://.: WebhookのURLがhttp://で始たるこずを確認しおください -Secret: 遞択 -This secret will be used to sign Webhook request: このシヌクレットはWebhookのリク゚ストを眲名する時に䜿甚されたす。 -Please input secret!: シヌクレットを入力しおください。 -Trigger Event: むベント -Item: アむテム -New Webhook: 新芏Webhook -No Webhook yet: Webhookはただありたせん -No Projects Yet: プロゞェクトがありたせん -Create a new project: 新芏プロゞェクトを䜜成 -New Project: 新芏プロゞェクト -Models: モデル -New Model: 新芏モデル -Edit: 線集 -Are you sure you want to delete this project?: 本圓にプロゞェクトを削陀しおもよろしいですか -Delete Project: プロゞェクトを削陀 -Permanently removes your project and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: プロゞェクトずその内容をRe:Earth CMSから完党に削陀したす。このアクションは元に戻せたせん。 -Alias: ゚むリアス -Write something here to describe this record.: このレコヌドの説明を入力しおください。 -Project Settings: プロゞェクト蚭定 -Need request: リク゚ストの芁吊 -If this option is chosen, all new model within the project will default follow it: このオプションが遞択された堎合、プロゞェクト内のすべおの新しいモデルはデフォルトでそれに埓いたす。 -Leave your comment...: コメントを入力しおください。 -Add Comment: コメントを远加 -Close: クロヌズ -Reopen: 再開 -Approve: 承認 -Approved: 承認枈み -Closed: クロヌズ枈み -Assign to: 割り圓おる -WAITING: レビュヌ埅ち -APPROVED: 承認枈 -CLOSED: クロヌズ枈 -Current user: 珟圚のナヌザヌ -Delete Model: モデルを削陀 -Delete Group: グルヌプを削陀 -Are you sure you want to delete this model: 本圓に{{name}}を削陀しおもよろしいですか -Are you sure you want to delete this group: 本圓に{{name}}を削陀しおもよろしいですか -This action will permanently delete the selected model and cannot be reversed.: 遞択䞭のモデルを削陀したす。この操䜜は取り消すこずができたせん。 -This action will permanently delete the selected group and cannot be reversed.: この操䜜は遞択したグルヌプを氞久に削陀し、元に戻すこずはできたせん。 -Warning: 泚意 -Text: テキスト -Time: 時間 -Boolean: ブヌリアン -Select: セレクト -Number: 数倀 -GeoJSON Geometry: GeoJSONゞオメトリ -Relation: 関係 -Group: グルヌプ -Meta Data: メタデヌタ -Add Field: フィヌルドを远加 -optional: 任意 -Update Field: '{{field}}フィヌルドを曎新' -Create Field: '{{field}}フィヌルドを䜜成' -Previous: 戻る -Next: 次ぞ -Reference setting: 参照蚭定 -Field: フィヌルド -Corresponding field: 察応フィヌルド -Select the model to reference: 参照するモデルを遞択しおください -Please select the model!: モデルを遞択しおください -Reference direction: 参照方向 -One-way reference: 䞀方向の参照 -A unidirectional relationship where an item refers to another item: 項目が別の項目を参照する䞀方向の関係 -Two-way reference: 双方向の参照 -A bidirectional relationship where two items refer to each other: 2぀の項目が互いを参照する双方向の関係 -Display name: 衚瀺名 -Please input the display name of field!: このフィヌルドの衚瀺名を入力しおください -Field Key: フィヌルドキヌ -Field key must be unique and at least 1 character long. It can only contain letters, numbers, underscores and dashes.: フィヌルドキヌは1文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 -Key is not valid: 無効なキヌです -Set Options: オプションを蚭定 -Stores a list of values instead of a single value: このフィヌルドに耇数の倀をリスト圢匏で蚭定したす -Support multiple values: 耇数倀の蚭定を蚱可 -Only one field can be used as the title: タむトルずしお䜿甚できるフィヌルドは1぀だけです。 -Use as title: タむトルずしお䜿甚 -Validation: バリデヌション -Prevents saving an entry if this field is empty: このフィヌルドを必須項目ずしたす -Make field required: このフィヌルドを必須項目にする -Ensures that a multiple entries can't have the same value for this field: 耇数のアむテム間でこのフィヌルドの倀がナニヌクであるこずを担保したす -Set field as unique: ナニヌク制玄 -Set default value: デフォルト倀を蚭定 -Default value must be a valid URL and start with 'http://' or 'https://'.: デフォルト倀はhttp://もしくはhttps://で始たる有効なURLである必芁がありたす。 -Set maximum length: 最倧長 -Set minimum value: 最小倀 -Set maximum value: 最倧倀 -Set Tags: タグを蚭定する -Select Group: グルヌプを遞択 -Please select the group!: グルヌプを遞択しおください -Support Type: サポヌトタむプ -Please select what type of Geometry this field will support: このフィヌルドがサポヌトするゞオメトリのタむプを遞択しおください -Please select the Support Type!: サポヌトタむプを遞択しおください -options: オプション -Ensures that multiple entries can't have the same value for this field: このフィヌルドには同じ倀の゚ントリヌを持぀こずができたせん。 -Default value: デフォルト倀 -Heading and titles, one-line field: タむトルなどに利甚する1行のフィヌルドです。 -TextArea: テキスト゚リア -Multi line text: 耇数行テキスト -Markdown text: マヌクダりン -Rich text which supports md style: マヌクダりン察応のリッチテキスト -Asset file: アセット -true/false field: 真停 -Option: 遞択 -Multiple select: 耇数遞択 -Int: æ•Žæ•° -Integer: æ•Žæ•° -http/https URL: URL -Reference: 参照 -Reference other models and items: 他のモデルやアむテムを参照 -Date: 日付 -Date picker: 日付ピッカヌ -Select from a list of tags: タグのリストから遞択する -Check Box: チェックボックス -Select from a list of checkboxes: チェックボックスのリストから遞択する -Customize a group of fields: フィヌルドのグルヌプをカスタマむズ -Geometry Object: ゞオメトリオブゞェクト -Input GeoJSON and preview: GeoJSONの入力ずプレビュヌ -Geometry Editor: ゞオメトリ゚ディタ -Draw the geometry on map: 地図䞊にゞオメトリを描く -Update Model: モデルを曎新 -Update Group: グルヌプを曎新 -New Group: 新芏グルヌプ -Model name: モデル名 -Group name: グルヌプ名 -Please input the name of the model!: このモデル名を入力しおください -Please input the name of the group!: グルヌプ名を入力しおください -Model description: モデル抂芁 -Group description: グルヌプ抂芁 -Model key: モデルキヌ -Group key: グルヌプキヌ -Model key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: モデルキヌは3文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 -Group key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: グルヌプキヌは3文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 -Fields: フィヌルド -Are you sure you want to delete this field?: 本圓に{{name}}を削陀しおもよろしいですか -Publish Status: 公開ステヌタス -Empty Schema design.: スキヌマ蚭定が空です。 -Please add some field from right panel.: 右のパネルからフィヌルドを远加しおください。 -New Tiles: 新しいタむル -New Terrain: 新しい地圢 -Update Tiles: タむルを曎新 -Update Terrain: 地圢を曎新 -Tiles type: タむルの皮類 -Terrain type: 地圢の皮類 -Name of tiles: タむルの名前 -example: '' -Image URL: むメヌゞURL -Name of terrain: 地圢の名前 -Terrain Cesium Ion asset ID: Terrain Cesium Ion アセットID -Terrain Cesium Ion access token: Terrain Cesium Ion アクセストヌクン -Terrain URL: テラむンURL -Geospatial asset preview setting: 地理空間アセットのプレビュヌ蚭定 -For asset viewer (formats like 3D Tiles, MVT, GeoJSON, CZML ... ): アセット・ビュヌア甚 (3D Tiles、MVT、GeoJSON、CZML等のフォヌマット) -Tiles: タむル -The first one in the list will be the default Tile.: リストの最初のタむルがデフォルトのタむルずなりたす。 -Add new Tiles option: 新しいタむルを远加 -Terrain: 地圢 -The first one in the list will be the default Terrain.: リストの最初の地圢がデフォルトの地圢ずなりたす。 -Enable: 有効 -Add new Terrain option: 新しい地圢を远加 -New View: 新しいビュヌ -Update View: ビュヌを曎新したす -View Name: ビュヌ名 -This is the title of the view: ビュヌのタむトル -Please input the view name!: ビュヌ名を入力しおください -Rename: 名前の倉曎 -Remove View: ビュヌを削陀したす -Are you sure you want to delete this view?: 本圓にこのビュヌを削陀したすか -Deleting the view is a permanent action. However, the contents will remain unaffected.: ビュヌの削陀は元に戻せたせんが、コンテンツは圱響を受けたせん。 -Please proceed with caution as this action cannot be undone.: この操䜜は元に戻せたせんので、泚意しお行っおください。 -Save as new view: 新しいビュヌずしお保存したす -Welcome to Re:Earth CMS !: ようこそRe:Earth CMSぞ -WRITER: 線集者 -READER: 閲芧者 -MAINTAINER: メンテナヌ -OWNER: オヌナヌ -search projects: 怜玢 -Create a Workspace: 新芏ワヌクスペヌス -Are you sure you want to delete this workspace?: このワヌクスペヌスを削陀したす。よろしいですか -Remove Workspace: ワヌクスペヌスを削陀 -Permanently removes the current workspace and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: 珟圚のワヌクスペヌスを削陀したす。ワヌクスペヌスに関連するすべおのデヌタが削陀されたす。この操䜜を取り消すこずはできたせん。 -Workspace Name: ワヌクスペヌス名 -This is the name that will be visible within Re:Earth and Re:Earth CMS. This could be your company's name, department's name, the theme of your projects, etc.: ワヌクスペヌス名はワヌクスペヌスを刀別するために衚瀺されたす。あなたの䌚瀟名、郚眲名、その他プロゞェクトのテヌマなどを利甚するこずをお勧めしたす。 -Please input a new workspace name!: 新しいワヌクスペヌス名を入力しおください。 -Workspace Settings: ワヌクスペヌス蚭定 -Failed to update user.: ナヌザヌの曎新に倱敗したした。 -Successfully updated user!: ナヌザヌの曎新に成功したした。 -Failed to update language.: 蚀語蚭定の曎新に倱敗したした。 -Successfully updated language!: 蚀語蚭定の曎新に成功したした。 -Failed to delete user.: ナヌザヌの削陀に倱敗したした。 -Successfully deleted user!: ナヌザヌの削陀に成功したした。 -Successfully created workspace!: ワヌクスペヌスの䜜成に成功したした。 -Failed to create comment.: コメントの䜜成に倱敗したした。 -Successfully created comment!: コメントの䜜成に成功したした。 -Failed to update comment.: コメントの曎新に倱敗したした。 -Successfully updated comment!: コメントの曎新に成功したした。 -Failed to delete comment.: コメントの削陀に倱敗したした。 -Successfully deleted comment!: コメントの削陀に成功したした。 -Failed to update publication settings.: 公開蚭定の曎新に倱敗したした。 -Successfully updated publication settings!: 公開蚭定の曎新に曎新に成功したした。 -Failed to update asset.: アセットの曎新に倱敗したした。 -Asset was successfully updated!: アセットの曎新に成功したした。 -Failed to decompress asset.: アセットの解凍に倱敗したした。 -Asset is being decompressed!: アセットは解凍䞭です -Failed to add one or more assets.: アセットの远加に倱敗したした。 -Successfully added one or more assets!: アセットの远加に成功したした。 -Successfully added asset!: アセットの远加に成功したした。 -Failed to add asset.: アセットを远加に倱敗したした。 -Failed to delete one or more assets.: アセットの削陀に倱敗したした。 -One or more assets were successfully deleted!: アセットの削陀に成功したした。 -No comments.: コメントはありたせん。 -Please click the comment bubble in the table to check comments.: コメントを確認するには、衚のコメントアむコンををクリックしおください。 -Failed to create item.: アむテムの䜜成に倱敗したした。 -Successfully created Item!: アむテムの䜜成に成功したした。 -Failed to update item.: アむテムの曎新に倱敗したした。 -Successfully updated Item!: アむテムの曎新に成功したした。 -Failed to create request.: リク゚ストの䜜成に倱敗したした。 -Successfully created request!: リク゚ストの䜜成に成功したした。 -Failed to update request.: リク゚ストの曎新に倱敗したした。 -Successfully updated request!: リク゚ストの曎新に成功したした。 -Failed to delete one or more items.: アむテムの削陀に倱敗したした。 -One or more items were successfully deleted!: アむテムの削陀に成功したした。 -One of the items already exists in the request.: アむテムのいずれかがすでにリク゚ストに存圚したす。 -Successfully updated Request!: リク゚ストの曎新に成功したした。 -Failed to publish items.: アむテムの公開に倱敗したした。 -Successfully published items!: アむテムの公開に成功したした! -Failed to unpublish items.: ゚ラヌによりアむテムを非公開にできたせんでした。 -Successfully unpublished items!: アむテムを非公開にしたした。 -Failed to create view.: ビュヌの䜜成に倱敗したした。 -Successfully created view!: ビュヌの䜜成に成功したした! -Failed to update view.: ビュヌの曎新に倱敗したした。 -Successfully updated view!: ビュヌの曎新に成功したした! -Failed to rename view.: ビュヌの名前倉曎に倱敗したした。 -Successfully renamed view!: ビュヌの名前倉曎に成功したした! -Failed to delete view.: ビュヌの削陀に倱敗したした。 -Successfully deleted view!: ビュヌの削陀に成功したした! -Failed to update views order.: ビュヌの順序曎新に倱敗したした。 -Successfully updated views order!: ビュヌの順序倉曎に成功したした! -Failed to create model.: モデルの䜜成に倱敗したした。 -Successfully created model!: モデルの䜜成に成功したした。 -Failed to update models order.: モデルの順序曎新に倱敗したした。 -Successfully updated models order!: モデルの順序倉曎に成功したした! -Failed to create group.: グルヌプの䜜成に倱敗したした。 -Successfully created group!: グルヌプの䜜成に成功したした -Failed to update groups order.: グルヌプの順序曎新に倱敗したした。 -Successfully updated groups order!: グルヌプの順序倉曎に成功したした! -Failed to delete model.: モデルの削陀に倱敗したした。 -Successfully deleted model!: モデルの削陀に成功したした。 -Failed to update model.: モデルの曎新に倱敗したした。 -Successfully updated model!: モデルの曎新に成功したした。 -Failed to delete one or more requests.: リク゚ストの削陀に倱敗したした。 -One or more requests were successfully closed!: リク゚ストのクロヌズに成功したした。 -Failed to approve request.: リク゚ストの承認に倱敗したした。 -Successfully approved request!: リク゚ストの承認に成功したした。 -Failed to delete field.: フィヌルドの削陀に倱敗したした。 -Successfully deleted field!: フィヌルドの削陀に成功したした。 -Failed to update field.: フィヌルドの曎新に倱敗したした。 -Successfully updated field!: フィヌルドの曎新に成功したした。 -Failed to create field.: フィヌルドの䜜成に倱敗したした。 -Successfully created field!: フィヌルドの䜜成に成功したした。 -Group cannot be deleted: グルヌプを削陀できたせん。 -is used in: '' -If you want to delete it, please delete the field that uses it first.: 削陀したい堎合は、たずそれを䜿っおいるフィヌルドを削陀しおください。 -Failed to delete group.: グルヌプの削陀に倱敗したした -Successfully deleted group!: グルヌプの削陀に成功したした -Failed to update group.: グルヌプの曎新に倱敗したした。 -Successfully updated group!: グルヌプの曎新に成功したした -No available Group: グルヌプなし -Please create a Group first to use the field: フィヌルドを䜿甚するには、たずグルヌプを䜜成しおください。 -Create Group: グルヌプを䜜成 -Failed to update project.: プロゞェクトの曎新に倱敗したした。 -Successfully updated project!: プロゞェクトの曎新に成功したした。 -Failed to update request roles.: リク゚ストロヌルの曎新に倱敗したした。 -Successfully updated request roles!: リク゚ストロヌルの曎新に成功したした。 -Failed to delete project.: プロゞェクトの削陀に倱敗したした。 -Successfully deleted project!: プロゞェクトの削陀に成功したした。 -Failed to update workspace.: ワヌクスペヌスの曎新に倱敗したした。 -Successfully updated workspace!: ワヌクスペヌスの曎新に成功したした。 -Failed to connect integration.: むンテグレヌションの接続に倱敗したした。 -Successfully connected integration to the workspace!: むンテグレヌションの接続に成功したした。 -Failed to update workspace integration.: ワヌクスペヌスのむンテグレヌションの曎新に倱敗したした。 -Successfully updated workspace integration!: ワヌクスペヌスのむンテグレヌションの曎新に成功したした。 -Failed to delete one or more intagrations.: むンテグレヌションの削陀に倱敗したした。 -One or more integrations were successfully deleted!: むンテグレヌションの削陀に成功したした。 -Failed to add one or more members.: メンバヌの远加に倱敗したした。 -Successfully added member(s) to the workspace!: メンバヌの远加に成功したした。 -Failed to update member's role.: メンバヌのロヌルの曎新に倱敗したした。 -Successfully updated member's role!: メンバヌのロヌルの曎新に成功したした。 -Failed to remove member(s) from the workspace.: メンバヌの削陀に倱敗したした。 -Successfully removed member(s) from the workspace!: メンバヌの削陀に成功したした。 -Failed to leave the workspace.: ワヌクスペヌスを離れるこずに倱敗したした。 -Successfully left the workspace!: ワヌクスペヌスを離れるこずに成功したした! -Failed to update integration.: むンテグレヌションの曎新に倱敗したした。 -Successfully updated integration!: むンテグレヌションの曎新に成功したした。 -Failed to delete integration.: むンテグレヌションの削陀に倱敗したした。 -Successfully deleted integration!: むンテグレヌションの削陀に成功したした。 -The attempt to regenerate the integration token has failed.: むンテグレヌショントヌクンの再生成に倱敗したした。 -The integration token has been successfully regenerated!: むンテグレヌショントヌクンの再生成に成功したした -Failed to create webhook.: Webhookの䜜成に倱敗したした。 -Successfully created webhook!: Webhookの䜜成に成功したした。 -Failed to delete webhook.: Webhookの削陀に倱敗したした。 -Successfully deleted webhook!: Webhookの削陀に成功したした。 -Failed to update webhook.: Webhookの曎新に倱敗したした。 -Successfully updated webhook!: Webhookの曎新に成功したした。 -Failed to create integration.: むンテグレヌションの䜜成に倱敗したした。 -Successfully created integration!: むンテグレヌションの䜜成に成功したした。 -Failed to create project.: プロゞェクトの䜜成に倱敗したした。 -Successfully created project!: プロゞェクトの䜜成に成功したした。 -Failed to delete workspace.: ワヌクスペヌスの削陀に倱敗したした。 -Successfully deleted workspace!: ワヌクスペヌスの削陀に成功したした。 +Download: ダりンロヌド +Loading: ロヌディング䞭 +Oops!: '' +PAGE NOT FOUND ON SERVER: ペヌゞが芋぀かりたせん。 +Go back Home: ホヌムぞ戻る +ITEM NOT FOUND ON SERVER: デヌタが芋぀かりたせん。 +Model: モデル +Switch: 切り替え +End point: ゚ンドポむント +Assets: アセット +Private: 非公開 +Public: 公開 +Accessibility: 公開蚭定 +Public Scope: 公開範囲 +Choose the scope of your project. This affects all the models shown below that are switched on.: プロゞェクトの公開範囲を遞択しおください。この操䜜は以䞋のすべおのモデルに圱響したす。 +Project Alias: プロゞェクト゚むリアス +Alias copied!!: ゚むリアスをコピヌしたした +Save changes: 倉曎を保存 +Are you sure you want to delete your account?: 本圓にアカりントを削陀しおよろしいですか +Cancel: キャンセル +Danger Zone: 重芁操䜜 +Delete Personal Account: アカりントを削陀 +Permanently removes your personal account and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: アカりントずそれに関連するすべおのコンテンツを削陀したす。この操䜜は取り消すこずができたせん。よろしいですか +Account Name: アカりント名 +This is your ID that is used between Re:Earth and Re:Earth CMS.: アカりントのIDです。 +Please input Account Name!: アカりント名を入力しおください! +Your Email: メヌルアドレス +Please enter the email address you want to use to log in with Re:Earth CMS.: ログむンに利甚するメヌルアドレスを入力しおください。 +Please input Your Email!: メヌルアドレスを入力しおください! +Save: 保存 +Account Settings: アカりント蚭定 +General: 䞀般 +Service: サヌビス +Auto: 自動 +Service Language: 利甚蚀語 +This will change the UI language: UIの蚀語蚭定を倉曎したす。 +Language: 蚀語 +URL copied!!: URLをコピヌしたした +Unzip: '' +Asset Type: アセットの皮類 +Created Time: 䜜成日時 +Created By: 䜜成者 +Linked to: リンク先 +Asset: アセット +Source Code: ゜ヌスコヌド +Render: レンダヌ +PNG/JPEG/TIFF/GIF: '' +SVG: '' +GEOJSON/KML/CZML: '' +3D Tiles: '' +MVT: '' +GLTF/GLB: '' +CSV: '' +Unknown Type: 䞍明 +Decompressing...: 解凍䞭 +Failed to decompress. Please check the file and try again.: 解凍に倱敗したした。 ファむルを確認しお、もう䞀床お詊しください。 +Not supported: プレビュヌ察応しおいないデヌタフォヌマットです。 +Decompressed: 解凍完了 +Failed: 倱敗 +Decompressing: 解凍䞭 +Skipped: スキップ +Pending: 保留䞭 +File: ファむル +Size: サむズ +Preview Type: プレビュヌタむプ +Status: ステヌタス +Created At: 䜜成日時 +ID: '' +input search text: 怜玢 +Deselect: 遞択解陀 +Delete: 削陀 +Upload Asset: アセットをアップロヌド +Auto Unzip: 自動解凍 +Remove file: ファむルを削陀 +Click or drag files to this area to upload: この゚リアにファむルをクリックたたはドラッグしおアップロヌドしたす +Single or multiple file upload is supported: 耇数のファむルのアップロヌドが可胜です。 +Uploading: アップロヌド䞭 +Upload and Link: アップロヌドずリンク +Upload: アップロヌド +Asset Uploader: アセットアップロヌダヌ +Local: ロヌカル +URL: '' +Please input the URL of the asset!: アセットのURLを入力しおください! +Please input a valid URL: 有効なURLを入力しおください +Could not display svg: svgを衚瀺できたせんでした。 +Comment: コメント +Comments: コメント +Cannot edit in read-only editor: 読み取り専甚゚ディタでは線集ができたせん +You are entering a new value: 新しい倀を入力しようずしおいたす +This action will replace the previously entered value. Do you want to continue?: この操䜜は以前に入力された倀を眮き換えたす。続けたすか +Do not show this again: 今埌は衚瀺しない +Continue: 続ける +Value copied!!: 倀をコピヌしたした +Search Location: 堎所を怜玢 +GeoJSON type mismatch, please check your input: GeoJSONの型が䞀臎したせん、入力を確認しおください +Personal Account: パヌ゜ナルアカりント +Workspaces: ワヌクスペヌス +Create Workspace: ワヌクスペヌスを䜜成 +Logout: ログアりト +Re:Earth CMS: Re:Earth CMS +Go to Editor: ゚ディタぞ移動 +Link Asset: アセットをリンク +New: 远加 +Tag: タグ +OK: '' +Project name: プロゞェクト名 +Please input the name of project!: プロゞェクト名を入力しおください +Project alias: プロゞェクト゚むリアス +Project alias must be unique and at least 5 characters long. It can only contain letters, numbers, underscores, and dashes.: プロゞェクト゚むリアスは5文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 +Project alias is not valid: 無効なプロゞェクトの゚むリアスです +Project description: プロゞェクト抂芁 +Home: ホヌム +Overview: 抂芁 +Schema: スキヌマ +Content: コンテンツ +Request: リク゚スト +Settings: 蚭定 +Workspace name: ワヌクスペヌス名 +Please input the title of the new workspace!: 新しいワヌクスペヌスの名前を入力しおください! +Member: メンバヌ +Integrations: むンテグレヌション +My Integrations: マむむンテグレヌション +Workspace: ワヌクスペヌス +Account: アカりント +Please input field!: フィヌルドを入力しおください。 +Please select an option!: オプションを遞択しおください。 +URL is not valid: 無効なURLです +unique: ナニヌク +Title: タむトル +Leave: 離れる +This item has unsaved data: 保存しおいないデヌタがありたす。 +Are you going to leave?: ペヌゞを離れたすか +Add to Request: 既存のリク゚ストに远加 +Unpublish: 非公開 +New Request: 新芏リク゚スト +Publish: 公開 +Replace item: アむテムを眮き換える +Refer to item: アむテムを参照 +Item Information: アむテムの情報 +Updated At: 曎新日時 +Updated By: 曎新者 +Publish State: 公開状態 +Linked Request: リンクされたリク゚スト +This item has been referenced: このアむテムは参照されおいたす +Are you going to refer to it? The previous reference will be canceled automatically: 参照したすか以前の参照は自動的に解陀されたすがよろしいですか +State: ステヌタス +Reviewers: レビュワヌ +New Item: 新芏アむテム +We found some referenced items that not been published yet. Please select to publish the items.: ただ公開されおいない参照アむテムが芋぀かりたした。公開するアむテムを遞択しおください。 +Please input the title of your request!: リク゚ストのタむトルを入力しおください。 +Description: 説明 +Please select a reviewer!: レビュワヌを遞択しおください。 +Reviewer: レビュワヌ +We found some referenced items that not published yet. Please select to add the items to the same request.: ただ公開されおいない参照アむテムが芋぀かりたした。同じリク゚ストに远加する堎合は遞択しおください。 +is: 同倀 +is not: 異なる +contains: 含む +doesn't contain: 含たない +start with: 始たる +doesn't start with: 始たらない +end with: 終わる +doesn't end with: 終わらない +greater than: 超過 +greater than or equal to: 以䞊 +less than: 未満 +less than or equal to: 以䞋 +after: 埌 +after or on: 以降 +before: 前 +before or on: 以前 +of this week: 今週 +of this month: 今月 +of this year: 今幎 +is empty: 空である +is not empty: 空でない +Ascending: 昇順 +Descending: 降順 +Confirm: 確認 +Filter: フィルタヌ +Add Filter: 絞り蟌む +Add Sort: 䞊び替える +Control: 操䜜 +DRAFT: ドラフト +PUBLIC: 公開 +REVIEW: レビュヌ +Connect Integration: むンテグレヌションを連携 +Connect: 連携 +Integration Setting: むンテグレヌション蚭定 +Role: ロヌル +Please input the appropriate role for this integration!: このむンテグレヌションに適切なロヌルを付䞎しおください +select role: ロヌルを遞択 +Reader: 閲芧者 +Writer: 線集者 +Maintainer: メンテナヌ +Owner: オヌナヌ +Name: 名前 +Creator: 䜜成者 +Remove: 削陀 +No Integration yet: ただむンテグレヌションはありたせん +Create a new: 新芏䜜成 +Or read: 読む +how to use Re:Earth CMS: CMSの䜿い方 +first: はじめに +Add member: メンバヌ远加 +Add to workspace: ワヌクスペヌスに远加 +Email address or user name: Emailアドレスもしくはナヌザヌ名 +Selected Members: 遞択䞭のメンバヌ +Role Settings: ロヌル蚭定 +Please input the appropriate role for this member!: このメンバヌに付䞎するロヌルを入力しおください +Are you sure to remove this member?: 本圓にメンバヌをこのワヌクスペヌスから削陀しおもよろしいですか +Remove this member from workspace means this member will not view any content of this workspace.: メンバヌをワヌクスペヌスから削陀するず、そのメンバヌはワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 +Are you sure to leave this workspace?: 本圓にこのワヌクスペヌスを離れおもよろしいですか +Leave this workspace means you will not view any content of this workspace.: ワヌクスペヌスを離れるず、ワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 +Thumbnail: サムネむル +Email: メヌルアドレス +Action: 操䜜 +Change Role?: ロヌルを倉曎 +Members: メンバヌ +New Member: メンバヌを远加 +GROUPS: グルヌプ +Add: 远加 +MODELS: モデル +My Integration: マむむンテグレヌション +Webhook: '' +New Integration: 新芏むンテグレヌション +Create: 䜜成 +Integration Name: むンテグレヌション名 +Please input the title of the integration!: むンテグレヌションの名前を入力しおください +Create new integration: 新芏むンテグレヌション䜜成 +Are you sure to remove this integration?: 本圓にこのむンテグレヌションを削陀しおよろしいですか +Permanently remove your Integration and all of its contents from the Re:Earth CMS.: むンテグレヌションを削陀したす。 +Once the integration is removed, it will disappear from all workspaces.: むンテグレヌション削陀するず、このむンテグレヌションを利甚しおいるすべおのワヌクスペヌスから取り陀かれたす。 +Remove Integration: むンテグレヌションを削陀 +Permanently remove your Integration and all of its contents from the Re:Earth CMS. This action is not reversible – please continue with caution.: むンテグレヌションを削陀したす。この操䜜は取り消すこずができたせん。 +Regenerate The Integration Token?: むンテグレヌショントヌクンを再生成したすか +If you regenerate the integration token, the previous token will become invalid, and this action cannot be undone. Are you sure you want to proceed?: むンテグレヌショントヌクンを再生成するず、以前のトヌクンは無効になり、この操䜜は元に戻せたせん。本圓に続行したすか +Reset: リセット +Integration Token: むンテグレヌショントヌクン +Token copied!!: トヌクンをコピヌしたした +Regenerate: 再生成 +Code Example: コヌド䟋 +your model id here: モデルIDをここに入力しおください +your Integration Token here: むンテグレヌショントヌクンをここに入力しおください +Update: アップデヌト +Decompress: 圧瞮 +This is your webhook name: Webhookの名前です +Please input the name of the webhook!: Webhookの名前を入力しおください +Url: URL +Please note that all webhook URLs must start with http://.: WebhookのURLがhttp://で始たるこずを確認しおください +Secret: 遞択 +This secret will be used to sign Webhook request: このシヌクレットはWebhookのリク゚ストを眲名する時に䜿甚されたす。 +Please input secret!: シヌクレットを入力しおください。 +Trigger Event: むベント +Item: アむテム +New Webhook: 新芏Webhook +No Webhook yet: Webhookはただありたせん +No Projects Yet: プロゞェクトがありたせん +Create a new project: 新芏プロゞェクトを䜜成 +New Project: 新芏プロゞェクト +Models: モデル +New Model: 新芏モデル +Edit: 線集 +Are you sure you want to delete this project?: 本圓にプロゞェクトを削陀しおもよろしいですか +Delete Project: プロゞェクトを削陀 +Permanently removes your project and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: プロゞェクトずその内容をRe:Earth CMSから完党に削陀したす。このアクションは元に戻せたせん。 +Alias: ゚むリアス +Write something here to describe this record.: このレコヌドの説明を入力しおください。 +Project Settings: プロゞェクト蚭定 +Need request: リク゚ストの芁吊 +If this option is chosen, all new model within the project will default follow it: このオプションが遞択された堎合、プロゞェクト内のすべおの新しいモデルはデフォルトでそれに埓いたす。 +Leave your comment...: コメントを入力しおください。 +Add Comment: コメントを远加 +Close: クロヌズ +Reopen: 再開 +Approve: 承認 +Approved: 承認枈み +Closed: クロヌズ枈み +Assign to: 割り圓おる +WAITING: レビュヌ埅ち +APPROVED: 承認枈 +CLOSED: クロヌズ枈 +Current user: 珟圚のナヌザヌ +Delete Model: モデルを削陀 +Delete Group: グルヌプを削陀 +Are you sure you want to delete this model: 本圓に{{name}}を削陀しおもよろしいですか +Are you sure you want to delete this group: 本圓に{{name}}を削陀しおもよろしいですか +This action will permanently delete the selected model and cannot be reversed.: 遞択䞭のモデルを削陀したす。この操䜜は取り消すこずができたせん。 +This action will permanently delete the selected group and cannot be reversed.: この操䜜は遞択したグルヌプを氞久に削陀し、元に戻すこずはできたせん。 +Warning: 泚意 +Text: テキスト +Time: 時間 +Boolean: ブヌリアン +Select: セレクト +Number: 数倀 +GeoJSON Geometry: GeoJSONゞオメトリ +Relation: 関係 +Group: グルヌプ +Meta Data: メタデヌタ +Add Field: フィヌルドを远加 +optional: 任意 +Update Field: '{{field}}フィヌルドを曎新' +Create Field: '{{field}}フィヌルドを䜜成' +Previous: 戻る +Next: 次ぞ +Reference setting: 参照蚭定 +Field: フィヌルド +Corresponding field: 察応フィヌルド +Select the model to reference: 参照するモデルを遞択しおください +Please select the model!: モデルを遞択しおください +Reference direction: 参照方向 +One-way reference: 䞀方向の参照 +A unidirectional relationship where an item refers to another item: 項目が別の項目を参照する䞀方向の関係 +Two-way reference: 双方向の参照 +A bidirectional relationship where two items refer to each other: 2぀の項目が互いを参照する双方向の関係 +Display name: 衚瀺名 +Please input the display name of field!: このフィヌルドの衚瀺名を入力しおください +Field Key: フィヌルドキヌ +Field key must be unique and at least 1 character long. It can only contain letters, numbers, underscores and dashes.: フィヌルドキヌは1文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 +Key is not valid: 無効なキヌです +Set Options: オプションを蚭定 +Stores a list of values instead of a single value: このフィヌルドに耇数の倀をリスト圢匏で蚭定したす +Support multiple values: 耇数倀の蚭定を蚱可 +Only one field can be used as the title: タむトルずしお䜿甚できるフィヌルドは1぀だけです。 +Use as title: タむトルずしお䜿甚 +Validation: バリデヌション +Prevents saving an entry if this field is empty: このフィヌルドを必須項目ずしたす +Make field required: このフィヌルドを必須項目にする +Ensures that a multiple entries can't have the same value for this field: 耇数のアむテム間でこのフィヌルドの倀がナニヌクであるこずを担保したす +Set field as unique: ナニヌク制玄 +Set default value: デフォルト倀を蚭定 +Default value must be a valid URL and start with 'http://' or 'https://'.: デフォルト倀はhttp://もしくはhttps://で始たる有効なURLである必芁がありたす。 +Set maximum length: 最倧長 +Set minimum value: 最小倀 +Set maximum value: 最倧倀 +Set Tags: タグを蚭定する +Select Group: グルヌプを遞択 +Please select the group!: グルヌプを遞択しおください +Support Type: サポヌトタむプ +Please select what type of Geometry this field will support: このフィヌルドがサポヌトするゞオメトリのタむプを遞択しおください +Please select the Support Type!: サポヌトタむプを遞択しおください +options: オプション +Ensures that multiple entries can't have the same value for this field: このフィヌルドには同じ倀の゚ントリヌを持぀こずができたせん。 +Default value: デフォルト倀 +Heading and titles, one-line field: タむトルなどに利甚する1行のフィヌルドです。 +TextArea: テキスト゚リア +Multi line text: 耇数行テキスト +Markdown text: マヌクダりン +Rich text which supports md style: マヌクダりン察応のリッチテキスト +Asset file: アセット +true/false field: 真停 +Option: 遞択 +Multiple select: 耇数遞択 +Int: æ•Žæ•° +Integer: æ•Žæ•° +Float: 小数 +Fractional: 小数 +http/https URL: URL +Reference: 参照 +Reference other models and items: 他のモデルやアむテムを参照 +Date: 日付 +Date picker: 日付ピッカヌ +Select from a list of tags: タグのリストから遞択する +Check Box: チェックボックス +Select from a list of checkboxes: チェックボックスのリストから遞択する +Customize a group of fields: フィヌルドのグルヌプをカスタマむズ +Geometry Object: ゞオメトリオブゞェクト +Input GeoJSON and preview: GeoJSONの入力ずプレビュヌ +Geometry Editor: ゞオメトリ゚ディタ +Draw the geometry on map: 地図䞊にゞオメトリを描く +Update Model: モデルを曎新 +Update Group: グルヌプを曎新 +New Group: 新芏グルヌプ +Model name: モデル名 +Group name: グルヌプ名 +Please input the name of the model!: このモデル名を入力しおください +Please input the name of the group!: グルヌプ名を入力しおください +Model description: モデル抂芁 +Group description: グルヌプ抂芁 +Model key: モデルキヌ +Group key: グルヌプキヌ +Model key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: モデルキヌは3文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 +Group key must be unique and at least 3 characters long. It can only contain letters, numbers, underscores, and dashes.: グルヌプキヌは3文字以䞊か぀䞀意である必芁がありたす。半角英数字、アンダヌスコア、ダッシュのみを含むこずができたす。 +Fields: フィヌルド +Are you sure you want to delete this field?: 本圓に{{name}}を削陀しおもよろしいですか +Publish Status: 公開ステヌタス +Empty Schema design.: スキヌマ蚭定が空です。 +Please add some field from right panel.: 右のパネルからフィヌルドを远加しおください。 +New Tiles: 新しいタむル +New Terrain: 新しい地圢 +Update Tiles: タむルを曎新 +Update Terrain: 地圢を曎新 +Tiles type: タむルの皮類 +Terrain type: 地圢の皮類 +Name of tiles: タむルの名前 +example: '' +Image URL: むメヌゞURL +Name of terrain: 地圢の名前 +Terrain Cesium Ion asset ID: Terrain Cesium Ion アセットID +Terrain Cesium Ion access token: Terrain Cesium Ion アクセストヌクン +Terrain URL: テラむンURL +Geospatial asset preview setting: 地理空間アセットのプレビュヌ蚭定 +For asset viewer (formats like 3D Tiles, MVT, GeoJSON, CZML ... ): アセット・ビュヌア甚 (3D Tiles、MVT、GeoJSON、CZML等のフォヌマット) +Tiles: タむル +The first one in the list will be the default Tile.: リストの最初のタむルがデフォルトのタむルずなりたす。 +Add new Tiles option: 新しいタむルを远加 +Terrain: 地圢 +The first one in the list will be the default Terrain.: リストの最初の地圢がデフォルトの地圢ずなりたす。 +Enable: 有効 +Add new Terrain option: 新しい地圢を远加 +New View: 新しいビュヌ +Update View: ビュヌを曎新したす +View Name: ビュヌ名 +This is the title of the view: ビュヌのタむトル +Please input the view name!: ビュヌ名を入力しおください +Rename: 名前の倉曎 +Remove View: ビュヌを削陀したす +Are you sure you want to delete this view?: 本圓にこのビュヌを削陀したすか +Deleting the view is a permanent action. However, the contents will remain unaffected.: ビュヌの削陀は元に戻せたせんが、コンテンツは圱響を受けたせん。 +Please proceed with caution as this action cannot be undone.: この操䜜は元に戻せたせんので、泚意しお行っおください。 +Save as new view: 新しいビュヌずしお保存したす +Welcome to Re:Earth CMS !: ようこそRe:Earth CMSぞ +WRITER: 線集者 +READER: 閲芧者 +MAINTAINER: メンテナヌ +OWNER: オヌナヌ +search projects: 怜玢 +Create a Workspace: 新芏ワヌクスペヌス +Are you sure you want to delete this workspace?: このワヌクスペヌスを削陀したす。よろしいですか +Remove Workspace: ワヌクスペヌスを削陀 +Permanently removes the current workspace and all of its contents from Re:Earth CMS. This action is not reversible, so please continue with caution.: 珟圚のワヌクスペヌスを削陀したす。ワヌクスペヌスに関連するすべおのデヌタが削陀されたす。この操䜜を取り消すこずはできたせん。 +Workspace Name: ワヌクスペヌス名 +This is the name that will be visible within Re:Earth and Re:Earth CMS. This could be your company's name, department's name, the theme of your projects, etc.: ワヌクスペヌス名はワヌクスペヌスを刀別するために衚瀺されたす。あなたの䌚瀟名、郚眲名、その他プロゞェクトのテヌマなどを利甚するこずをお勧めしたす。 +Please input a new workspace name!: 新しいワヌクスペヌス名を入力しおください。 +Workspace Settings: ワヌクスペヌス蚭定 +Failed to update user.: ナヌザヌの曎新に倱敗したした。 +Successfully updated user!: ナヌザヌの曎新に成功したした。 +Failed to update language.: 蚀語蚭定の曎新に倱敗したした。 +Successfully updated language!: 蚀語蚭定の曎新に成功したした。 +Failed to delete user.: ナヌザヌの削陀に倱敗したした。 +Successfully deleted user!: ナヌザヌの削陀に成功したした。 +Successfully created workspace!: ワヌクスペヌスの䜜成に成功したした。 +Failed to create comment.: コメントの䜜成に倱敗したした。 +Successfully created comment!: コメントの䜜成に成功したした。 +Failed to update comment.: コメントの曎新に倱敗したした。 +Successfully updated comment!: コメントの曎新に成功したした。 +Failed to delete comment.: コメントの削陀に倱敗したした。 +Successfully deleted comment!: コメントの削陀に成功したした。 +Failed to update publication settings.: 公開蚭定の曎新に倱敗したした。 +Successfully updated publication settings!: 公開蚭定の曎新に曎新に成功したした。 +Failed to update asset.: アセットの曎新に倱敗したした。 +Asset was successfully updated!: アセットの曎新に成功したした。 +Failed to decompress asset.: アセットの解凍に倱敗したした。 +Asset is being decompressed!: アセットは解凍䞭です +Failed to add one or more assets.: アセットの远加に倱敗したした。 +Successfully added one or more assets!: アセットの远加に成功したした。 +Successfully added asset!: アセットの远加に成功したした。 +Failed to add asset.: アセットを远加に倱敗したした。 +Failed to delete one or more assets.: アセットの削陀に倱敗したした。 +One or more assets were successfully deleted!: アセットの削陀に成功したした。 +No comments.: コメントはありたせん。 +Please click the comment bubble in the table to check comments.: コメントを確認するには、衚のコメントアむコンををクリックしおください。 +Failed to create item.: アむテムの䜜成に倱敗したした。 +Successfully created Item!: アむテムの䜜成に成功したした。 +Failed to update item.: アむテムの曎新に倱敗したした。 +Successfully updated Item!: アむテムの曎新に成功したした。 +Failed to create request.: リク゚ストの䜜成に倱敗したした。 +Successfully created request!: リク゚ストの䜜成に成功したした。 +Failed to update request.: リク゚ストの曎新に倱敗したした。 +Successfully updated request!: リク゚ストの曎新に成功したした。 +Failed to delete one or more items.: アむテムの削陀に倱敗したした。 +One or more items were successfully deleted!: アむテムの削陀に成功したした。 +One of the items already exists in the request.: アむテムのいずれかがすでにリク゚ストに存圚したす。 +Successfully updated Request!: リク゚ストの曎新に成功したした。 +Failed to publish items.: アむテムの公開に倱敗したした。 +Successfully published items!: アむテムの公開に成功したした! +Failed to unpublish items.: ゚ラヌによりアむテムを非公開にできたせんでした。 +Successfully unpublished items!: アむテムを非公開にしたした。 +Failed to create view.: ビュヌの䜜成に倱敗したした。 +Successfully created view!: ビュヌの䜜成に成功したした! +Failed to update view.: ビュヌの曎新に倱敗したした。 +Successfully updated view!: ビュヌの曎新に成功したした! +Failed to rename view.: ビュヌの名前倉曎に倱敗したした。 +Successfully renamed view!: ビュヌの名前倉曎に成功したした! +Failed to delete view.: ビュヌの削陀に倱敗したした。 +Successfully deleted view!: ビュヌの削陀に成功したした! +Failed to update views order.: ビュヌの順序曎新に倱敗したした。 +Successfully updated views order!: ビュヌの順序倉曎に成功したした! +Failed to create model.: モデルの䜜成に倱敗したした。 +Successfully created model!: モデルの䜜成に成功したした。 +Failed to update models order.: モデルの順序曎新に倱敗したした。 +Successfully updated models order!: モデルの順序倉曎に成功したした! +Failed to create group.: グルヌプの䜜成に倱敗したした。 +Successfully created group!: グルヌプの䜜成に成功したした +Failed to update groups order.: グルヌプの順序曎新に倱敗したした。 +Successfully updated groups order!: グルヌプの順序倉曎に成功したした! +Failed to delete model.: モデルの削陀に倱敗したした。 +Successfully deleted model!: モデルの削陀に成功したした。 +Failed to update model.: モデルの曎新に倱敗したした。 +Successfully updated model!: モデルの曎新に成功したした。 +Failed to delete one or more requests.: リク゚ストの削陀に倱敗したした。 +One or more requests were successfully closed!: リク゚ストのクロヌズに成功したした。 +Failed to approve request.: リク゚ストの承認に倱敗したした。 +Successfully approved request!: リク゚ストの承認に成功したした。 +Failed to delete field.: フィヌルドの削陀に倱敗したした。 +Successfully deleted field!: フィヌルドの削陀に成功したした。 +Failed to update field.: フィヌルドの曎新に倱敗したした。 +Successfully updated field!: フィヌルドの曎新に成功したした。 +Failed to create field.: フィヌルドの䜜成に倱敗したした。 +Successfully created field!: フィヌルドの䜜成に成功したした。 +Group cannot be deleted: グルヌプを削陀できたせん。 +is used in: '' +If you want to delete it, please delete the field that uses it first.: 削陀したい堎合は、たずそれを䜿っおいるフィヌルドを削陀しおください。 +Failed to delete group.: グルヌプの削陀に倱敗したした +Successfully deleted group!: グルヌプの削陀に成功したした +Failed to update group.: グルヌプの曎新に倱敗したした。 +Successfully updated group!: グルヌプの曎新に成功したした +No available Group: グルヌプなし +Please create a Group first to use the field: フィヌルドを䜿甚するには、たずグルヌプを䜜成しおください。 +Create Group: グルヌプを䜜成 +Failed to update project.: プロゞェクトの曎新に倱敗したした。 +Successfully updated project!: プロゞェクトの曎新に成功したした。 +Failed to update request roles.: リク゚ストロヌルの曎新に倱敗したした。 +Successfully updated request roles!: リク゚ストロヌルの曎新に成功したした。 +Failed to delete project.: プロゞェクトの削陀に倱敗したした。 +Successfully deleted project!: プロゞェクトの削陀に成功したした。 +Failed to update workspace.: ワヌクスペヌスの曎新に倱敗したした。 +Successfully updated workspace!: ワヌクスペヌスの曎新に成功したした。 +Failed to connect integration.: むンテグレヌションの接続に倱敗したした。 +Successfully connected integration to the workspace!: むンテグレヌションの接続に成功したした。 +Failed to update workspace integration.: ワヌクスペヌスのむンテグレヌションの曎新に倱敗したした。 +Successfully updated workspace integration!: ワヌクスペヌスのむンテグレヌションの曎新に成功したした。 +Failed to delete one or more intagrations.: むンテグレヌションの削陀に倱敗したした。 +One or more integrations were successfully deleted!: むンテグレヌションの削陀に成功したした。 +Failed to add one or more members.: メンバヌの远加に倱敗したした。 +Successfully added member(s) to the workspace!: メンバヌの远加に成功したした。 +Failed to update member's role.: メンバヌのロヌルの曎新に倱敗したした。 +Successfully updated member's role!: メンバヌのロヌルの曎新に成功したした。 +Failed to remove member(s) from the workspace.: メンバヌの削陀に倱敗したした。 +Successfully removed member(s) from the workspace!: メンバヌの削陀に成功したした。 +Failed to leave the workspace.: ワヌクスペヌスを離れるこずに倱敗したした。 +Successfully left the workspace!: ワヌクスペヌスを離れるこずに成功したした! +Failed to update integration.: むンテグレヌションの曎新に倱敗したした。 +Successfully updated integration!: むンテグレヌションの曎新に成功したした。 +Failed to delete integration.: むンテグレヌションの削陀に倱敗したした。 +Successfully deleted integration!: むンテグレヌションの削陀に成功したした。 +The attempt to regenerate the integration token has failed.: むンテグレヌショントヌクンの再生成に倱敗したした。 +The integration token has been successfully regenerated!: むンテグレヌショントヌクンの再生成に成功したした +Failed to create webhook.: Webhookの䜜成に倱敗したした。 +Successfully created webhook!: Webhookの䜜成に成功したした。 +Failed to delete webhook.: Webhookの削陀に倱敗したした。 +Successfully deleted webhook!: Webhookの削陀に成功したした。 +Failed to update webhook.: Webhookの曎新に倱敗したした。 +Successfully updated webhook!: Webhookの曎新に成功したした。 +Failed to create integration.: むンテグレヌションの䜜成に倱敗したした。 +Successfully created integration!: むンテグレヌションの䜜成に成功したした。 +Failed to create project.: プロゞェクトの䜜成に倱敗したした。 +Successfully created project!: プロゞェクトの䜜成に成功したした。 +Failed to delete workspace.: ワヌクスペヌスの削陀に倱敗したした。 +Successfully deleted workspace!: ワヌクスペヌスの削陀に成功したした。 From 593fa9b6f35a187010a710db32fd1bd5f7556621 Mon Sep 17 00:00:00 2001 From: caichi Date: Fri, 25 Oct 2024 19:36:46 +0900 Subject: [PATCH 5/8] fix: validate --- web/src/components/atoms/InputNumber/index.tsx | 6 +++--- .../FieldModal/FieldDefaultInputs/IntegerField/index.tsx | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/web/src/components/atoms/InputNumber/index.tsx b/web/src/components/atoms/InputNumber/index.tsx index 64639d0098..bb6f98905f 100644 --- a/web/src/components/atoms/InputNumber/index.tsx +++ b/web/src/components/atoms/InputNumber/index.tsx @@ -5,10 +5,10 @@ const InputNumber: ( props: React.PropsWithChildren> & React.RefAttributes, ) => React.ReactElement = ({ value, ...props }) => { const status = useMemo(() => { - if (value) { - if (props.max && Number(value) > Number(props.max)) { + if (typeof value === "number") { + if (typeof props.max === "number" && value > props.max) { return "error"; - } else if (props.min && Number(value) < Number(props.min)) { + } else if (typeof props.min === "number" && value < props.min) { return "error"; } } diff --git a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx index 3a1a39d5ef..be43485dca 100644 --- a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx +++ b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx @@ -17,7 +17,7 @@ const IntegerField: React.FC = ({ multiple, min, max }) => { const validate = useCallback( (value: unknown) => { if (typeof value === "number") { - if ((min && value < min) || (max && value > max)) { + if ((typeof min === "number" && value < min) || (typeof max === "number" && value > max)) { return true; } } From 88a86cc0aca8c6234a7abce9783db4103ef124b3 Mon Sep 17 00:00:00 2001 From: caichi Date: Tue, 29 Oct 2024 16:20:12 +0900 Subject: [PATCH 6/8] add: e2e test --- web/e2e/project/item/fields/float.spec.ts | 123 ++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 web/e2e/project/item/fields/float.spec.ts diff --git a/web/e2e/project/item/fields/float.spec.ts b/web/e2e/project/item/fields/float.spec.ts new file mode 100644 index 0000000000..bef1901a1a --- /dev/null +++ b/web/e2e/project/item/fields/float.spec.ts @@ -0,0 +1,123 @@ +import { closeNotification } from "@reearth-cms/e2e/common/notification"; +import { createModel } from "@reearth-cms/e2e/project/utils/model"; +import { createProject, deleteProject } from "@reearth-cms/e2e/project/utils/project"; +import { expect, test } from "@reearth-cms/e2e/utils"; + +test.beforeEach(async ({ reearth, page }) => { + await reearth.goto("/", { waitUntil: "domcontentloaded" }); + await createProject(page); + await createModel(page); +}); + +test.afterEach(async ({ page }) => { + await deleteProject(page); +}); + +test("Float field creating and updating has succeeded", async ({ page }) => { + await page.locator("li").filter({ hasText: "Float" }).locator("div").first().click(); + await page.getByLabel("Display name").click(); + await page.getByLabel("Display name").fill("float1"); + await page.getByLabel("Settings").locator("#key").click(); + await page.getByLabel("Settings").locator("#key").fill("float1"); + await page.getByLabel("Settings").locator("#description").click(); + await page.getByLabel("Settings").locator("#description").fill("float1 description"); + + await page.getByRole("button", { name: "OK" }).click(); + await closeNotification(page); + + await expect(page.getByLabel("Fields").getByRole("paragraph")).toContainText("float1#float1"); + await page.getByText("Content").click(); + await page.getByRole("button", { name: "plus New Item" }).click(); + await expect(page.locator("label")).toContainText("float1"); + await expect(page.getByRole("main")).toContainText("float1 description"); + await page.getByLabel("float1").click(); + await page.getByLabel("float1").fill("1.1"); + await page.getByRole("button", { name: "Save" }).click(); + await closeNotification(page); + await page.getByLabel("Back").click(); + await expect(page.getByRole("cell", { name: "1.1", exact: true })).toBeVisible(); + + await page.getByRole("cell").getByLabel("edit").locator("svg").click(); + await expect(page.getByLabel("float1")).toHaveValue("1.1"); + await page.getByLabel("float1").click(); + await page.getByLabel("float1").fill("2.2"); + await page.getByRole("button", { name: "Save" }).click(); + await closeNotification(page); + await page.getByLabel("Back").click(); + await expect(page.getByRole("cell", { name: "2.2", exact: true })).toBeVisible(); +}); + +test("Float field editing has succeeded", async ({ page }) => { + await page.locator("li").filter({ hasText: "Float" }).locator("div").first().click(); + await page.getByLabel("Display name").click(); + await page.getByLabel("Display name").fill("float1"); + await page.getByLabel("Settings").locator("#key").click(); + await page.getByLabel("Settings").locator("#key").fill("float1"); + await page.getByLabel("Settings").locator("#description").click(); + await page.getByLabel("Settings").locator("#description").fill("float1 description"); + await page.getByRole("tab", { name: "Default value" }).click(); + await page.getByLabel("Set default value").click(); + await page.getByLabel("Set default value").fill("1.1"); + await page.getByRole("button", { name: "OK" }).click(); + await closeNotification(page); + + await page.getByText("Content").click(); + await expect(page.locator("thead")).toContainText("float1"); + await page.getByRole("button", { name: "plus New Item" }).click(); + await page.getByRole("button", { name: "Save" }).click(); + await closeNotification(page); + await page.getByLabel("Back").click(); + await expect(page.getByRole("cell", { name: "1.1", exact: true })).toBeVisible(); + + await page.getByText("Schema").click(); + await page.getByRole("img", { name: "ellipsis" }).locator("svg").click(); + await page.getByRole("tab", { name: "Settings" }).click(); + await page.getByLabel("Display name").click(); + await page.getByLabel("Display name").fill("new float1"); + await page.getByLabel("Field Key").click(); + await page.getByLabel("Field Key").fill("new-float1"); + await page.getByLabel("Description(optional)").click(); + await page.getByLabel("Description(optional)").fill("new float1 description"); + await page.getByLabel("Support multiple values").check(); + await page.getByLabel("Use as title").check(); + await page.getByRole("tab", { name: "Validation" }).click(); + await page.getByLabel("Set minimum value").click(); + await page.getByLabel("Set minimum value").fill("10.1"); + await page.getByLabel("Set maximum value").click(); + await page.getByLabel("Set maximum value").fill("2.1"); + await expect(page.getByRole("button", { name: "OK" })).toBeDisabled(); + await page.getByLabel("Set minimum value").click(); + await page.getByLabel("Set minimum value").fill("2.1"); + await page.getByLabel("Set maximum value").click(); + await page.getByLabel("Set maximum value").fill("10.1"); + await page.getByLabel("Make field required").check(); + await page.getByLabel("Set field as unique").check(); + await page.getByRole("tab", { name: "Default value" }).click(); + await expect(page.getByLabel("Set default value")).toBeVisible(); + await expect(page.getByLabel("Set default value")).toHaveValue("1.1"); + await expect(page.getByRole("button", { name: "OK" })).toBeDisabled(); + await page.getByLabel("Set default value").click(); + await page.getByLabel("Set default value").fill("11.1"); + await expect(page.getByRole("button", { name: "OK" })).toBeDisabled(); + await page.getByLabel("Set default value").click(); + await page.getByLabel("Set default value").fill("2.2"); + await page.getByRole("button", { name: "plus New" }).click(); + await page.locator("#defaultValue").nth(1).click(); + await page.locator("#defaultValue").nth(1).fill("3.3"); + await page.getByRole("button", { name: "OK" }).click(); + await closeNotification(page); + + await expect(page.getByText("new float1 *#new-float1(unique)")).toBeVisible(); + await page.getByText("Content").click(); + await expect(page.locator("thead")).toContainText("new float1"); + await expect(page.getByRole("cell", { name: "1.1", exact: true })).toBeVisible(); + await page.getByRole("button", { name: "plus New Item" }).click(); + await expect(page.getByText("new float1(unique)Title")).toBeVisible(); + await expect(page.getByRole("spinbutton").nth(0)).toHaveValue("2.2"); + await expect(page.getByRole("spinbutton").nth(1)).toHaveValue("3.3"); + await page.getByRole("button", { name: "Save" }).click(); + await closeNotification(page); + await page.getByLabel("Back").click(); + await page.getByRole("button", { name: "x2" }).click(); + await expect(page.getByRole("tooltip")).toContainText("new float12.23.3"); +}); From 9bf35f6ec735c74544211a3365f452a738502d29 Mon Sep 17 00:00:00 2001 From: caichi Date: Tue, 29 Oct 2024 17:00:16 +0900 Subject: [PATCH 7/8] Merge branch 'main' of https://github.com/reearth/reearth-cms into fix-web/float-field --- web/src/components/atoms/Icon/icons.ts | 2 + .../molecules/Member/MemberTable/index.tsx | 127 +++++++++++++----- .../components/molecules/Workspace/types.ts | 11 +- web/src/i18n/translations/en.yml | 3 + web/src/i18n/translations/ja.yml | 5 +- 5 files changed, 102 insertions(+), 46 deletions(-) diff --git a/web/src/components/atoms/Icon/icons.ts b/web/src/components/atoms/Icon/icons.ts index 0877819b11..efd46b88b0 100644 --- a/web/src/components/atoms/Icon/icons.ts +++ b/web/src/components/atoms/Icon/icons.ts @@ -5,6 +5,7 @@ import { SearchOutlined, SettingOutlined, UsergroupAddOutlined, + UsergroupDeleteOutlined, UserSwitchOutlined, CaretDownOutlined, CaretRightOutlined, @@ -99,6 +100,7 @@ export default { search: SearchOutlined, settings: SettingOutlined, userGroupAdd: UsergroupAddOutlined, + userGroupDelete: UsergroupDeleteOutlined, userSwitch: UserSwitchOutlined, caretDown: CaretDownOutlined, caretRight: CaretRightOutlined, diff --git a/web/src/components/molecules/Member/MemberTable/index.tsx b/web/src/components/molecules/Member/MemberTable/index.tsx index fb28207d10..c6eca16a34 100644 --- a/web/src/components/molecules/Member/MemberTable/index.tsx +++ b/web/src/components/molecules/Member/MemberTable/index.tsx @@ -9,9 +9,9 @@ import Modal from "@reearth-cms/components/atoms/Modal"; import PageHeader from "@reearth-cms/components/atoms/PageHeader"; import { ListToolBarProps, TableRowSelection } from "@reearth-cms/components/atoms/ProTable"; import Search from "@reearth-cms/components/atoms/Search"; -import Space from "@reearth-cms/components/atoms/Space"; import UserAvatar from "@reearth-cms/components/atoms/UserAvatar"; import ResizableProTable from "@reearth-cms/components/molecules/Common/ResizableProTable"; +import { User } from "@reearth-cms/components/molecules/Member/types"; import { UserMember } from "@reearth-cms/components/molecules/Workspace/types"; import { useT } from "@reearth-cms/i18n"; @@ -62,15 +62,37 @@ const MemberTable: React.FC = ({ const t = useT(); const handleMemberDelete = useCallback( - (userIds: string[]) => { + (users: User[]) => { confirm({ - title: t("Are you sure to remove this member?"), + title: + users.length > 1 + ? t("Are you sure to remove these members?") + : t("Are you sure to remove this member?"), icon: , - content: t( - "Remove this member from workspace means this member will not view any content of this workspace.", + content: ( + <> + + {users.map(user => ( + + + + {user.name} + {user.email} + + + ))} + +
+ {t( + "Remove this member from workspace means this member will not view any content of this workspace.", + )} +
+ ), + okText: t("Yes"), + cancelText: t("No"), async onOk() { - await handleMemberRemoveFromWorkspace(userIds); + await handleMemberRemoveFromWorkspace(users.map(user => user.id)); }, }); }, @@ -125,8 +147,8 @@ const MemberTable: React.FC = ({ title: t("Action"), dataIndex: "action", key: "action", - width: 128, - minWidth: 128, + width: 150, + minWidth: 150, }, ], [t], @@ -148,23 +170,38 @@ const MemberTable: React.FC = ({ disabled={!isOwner || member.userId === me.id}> {t("Change Role?")} - {member.userId === me.id && ( - <> - - { - leaveConfirm(member.userId); - }} - disabled={!isAbleToLeave}> - {t("Leave")} - - + + {member.userId === me.id ? ( + { + leaveConfirm(member.userId); + }} + disabled={!isAbleToLeave}> + {t("Leave")} + + ) : ( + { + handleMemberDelete([member.user]); + }}> + {t("Remove")} + )} ), })), - [workspaceUserMembers, t, isOwner, me.id, isAbleToLeave, handleRoleModalOpen, leaveConfirm], + [ + workspaceUserMembers, + t, + isOwner, + me.id, + isAbleToLeave, + handleRoleModalOpen, + leaveConfirm, + handleMemberDelete, + ], ); const toolbar: ListToolBarProps = useMemo( @@ -210,21 +247,15 @@ const MemberTable: React.FC = ({ const alertOptions = useCallback( // eslint-disable-next-line @typescript-eslint/no-explicit-any (props: any) => ( - - - {t("Deselect")} - - handleMemberDelete(props.selectedRowKeys)}> - {t("Remove")} - - + handleMemberDelete(props.selectedRows)}> + {t("Remove")} + ), [handleMemberDelete, t], ); const options = useMemo( () => ({ - fullScreen: true, reload: onReload, }), [onReload], @@ -263,6 +294,36 @@ const MemberTable: React.FC = ({ ); }; +const RemoveUsers = styled.div` + display: flex; + flex-direction: column; + gap: 8px; + padding-bottom: 8px; +`; + +const RemoveUser = styled.div` + display: flex; + align-items: center; + gap: 8px; + padding: 8px 0; +`; + +const UserInfoWrapper = styled.div` + flex: 1; + min-width: 0; +`; + +const UserInfo = styled.p` + margin: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +`; + +const Email = styled(UserInfo)` + color: #00000073; +`; + const PaddedContent = styled(Content)` padding: 16px 16px 0; height: 100%; @@ -279,12 +340,6 @@ const ActionButton = styled(Button)` padding-right: 0; `; -const DeselectButton = styled.a` - display: flex; - align-items: center; - gap: 8px; -`; - const DeleteButton = styled.a` color: #ff7875; :hover { diff --git a/web/src/components/molecules/Workspace/types.ts b/web/src/components/molecules/Workspace/types.ts index ecc0f6a29d..184c816f45 100644 --- a/web/src/components/molecules/Workspace/types.ts +++ b/web/src/components/molecules/Workspace/types.ts @@ -1,5 +1,6 @@ import { PublicScope } from "@reearth-cms/components/molecules/Accessibility/types"; import { IntegrationMember } from "@reearth-cms/components/molecules/Integration/types"; +import { User } from "@reearth-cms/components/molecules/Member/types"; import { t } from "@reearth-cms/i18n"; export type Project = { @@ -12,18 +13,10 @@ export type Project = { requestRoles?: Role[]; }; -export type User = { - name: string; -}; - export type UserMember = { userId: string; role: Role; - user: { - id: string; - name: string; - email: string; - }; + user: User; }; export type Member = UserMember | IntegrationMember; diff --git a/web/src/i18n/translations/en.yml b/web/src/i18n/translations/en.yml index 2f31ca35a0..55a80af012 100644 --- a/web/src/i18n/translations/en.yml +++ b/web/src/i18n/translations/en.yml @@ -207,8 +207,11 @@ Email address or user name: '' Selected Members: '' Role Settings: '' Please input the appropriate role for this member!: '' +Are you sure to remove these members?: '' Are you sure to remove this member?: '' Remove this member from workspace means this member will not view any content of this workspace.: '' +'Yes': '' +'No': '' Are you sure to leave this workspace?: '' Leave this workspace means you will not view any content of this workspace.: '' Thumbnail: '' diff --git a/web/src/i18n/translations/ja.yml b/web/src/i18n/translations/ja.yml index d0779012b6..97f8278b45 100644 --- a/web/src/i18n/translations/ja.yml +++ b/web/src/i18n/translations/ja.yml @@ -207,8 +207,11 @@ Email address or user name: Emailアドレスもしくはナヌザヌ名 Selected Members: 遞択䞭のメンバヌ Role Settings: ロヌル蚭定 Please input the appropriate role for this member!: このメンバヌに付䞎するロヌルを入力しおください -Are you sure to remove this member?: 本圓にメンバヌをこのワヌクスペヌスから削陀しおもよろしいですか +Are you sure to remove these members?: 本圓にこれらのメンバヌをワヌクスペヌスから削陀しおもよろしいですか +Are you sure to remove this member?: 本圓にこのメンバヌをワヌクスペヌスから削陀しおもよろしいですか Remove this member from workspace means this member will not view any content of this workspace.: メンバヌをワヌクスペヌスから削陀するず、そのメンバヌはワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 +'Yes': はい +'No': いいえ Are you sure to leave this workspace?: 本圓にこのワヌクスペヌスを離れおもよろしいですか Leave this workspace means you will not view any content of this workspace.: ワヌクスペヌスを離れるず、ワヌクスペヌス内のいかなるコンテンツも閲芧するこずができなくなりたす。 Thumbnail: サムネむル From 5ab70b4aaf18efde754e31f615a3e8b18c317d78 Mon Sep 17 00:00:00 2001 From: caichi Date: Thu, 31 Oct 2024 17:24:15 +0900 Subject: [PATCH 8/8] rename --- .../{IntegerField => NumberField}/index.tsx | 4 ++-- .../molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) rename web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/{IntegerField => NumberField}/index.tsx (93%) diff --git a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/NumberField/index.tsx similarity index 93% rename from web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx rename to web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/NumberField/index.tsx index be43485dca..b97e753d1e 100644 --- a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/IntegerField/index.tsx +++ b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/NumberField/index.tsx @@ -11,7 +11,7 @@ type Props = { max?: number; }; -const IntegerField: React.FC = ({ multiple, min, max }) => { +const NumberField: React.FC = ({ multiple, min, max }) => { const t = useT(); const validate = useCallback( @@ -52,4 +52,4 @@ const IntegerField: React.FC = ({ multiple, min, max }) => { ); }; -export default IntegerField; +export default NumberField; diff --git a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx index 4ec56bd84c..268ad23bdb 100644 --- a/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx +++ b/web/src/components/molecules/Schema/FieldModal/FieldDefaultInputs/index.tsx @@ -14,8 +14,8 @@ import CheckboxField from "./CheckboxField"; import DateField from "./DateField"; import GeometryField from "./GeometryField"; import GroupField from "./GroupField"; -import IntegerField from "./IntegerField"; import MarkdownField from "./Markdown"; +import NumberField from "./NumberField"; import SelectField from "./SelectField"; import TagField from "./TagField"; import TextAreaField from "./TextArea"; @@ -94,7 +94,7 @@ const FieldDefaultInputs: React.FC = ({ return ; case "Integer": case "Number": - return ; + return ; case "Bool": return ; case "Date":