@arpproject/recrate 0.1.32-test4 → 0.1.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/crate-builder/RenderEntity/Shell2.d.ts +2 -0
- package/dist/crate-builder/Shell.d.ts +3 -0
- package/dist/crate-builder/locales/en.d.ts +89 -0
- package/dist/crate-builder/locales/hu.d.ts +89 -0
- package/dist/crate-builder/property-definitions.d.ts +5 -0
- package/dist/recrate.es.js +497 -253
- package/dist/types.d.ts +3 -0
- package/package.json +1 -1
package/dist/recrate.es.js
CHANGED
|
@@ -67670,7 +67670,8 @@ const AiEditedFieldBadge = ({
|
|
|
67670
67670
|
ariaLabel,
|
|
67671
67671
|
variant = "edited"
|
|
67672
67672
|
}) => {
|
|
67673
|
-
const
|
|
67673
|
+
const { t: t2 } = useTranslation();
|
|
67674
|
+
const label = variant === "deleted" ? t2("ai_deleted_by_ai") : t2("ai_edited_by_ai");
|
|
67674
67675
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: title ?? label, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: `describo-ai-edited-icon ${className}`, "aria-label": ariaLabel ?? label, children: "✦" }) });
|
|
67675
67676
|
};
|
|
67676
67677
|
const EntityId = ({
|
|
@@ -67680,6 +67681,7 @@ const EntityId = ({
|
|
|
67680
67681
|
aiEditedVariant = "edited"
|
|
67681
67682
|
}) => {
|
|
67682
67683
|
var _a2;
|
|
67684
|
+
const { t: t2 } = useTranslation();
|
|
67683
67685
|
const state = useStateStore();
|
|
67684
67686
|
const handleSave = async (data) => {
|
|
67685
67687
|
onUpdate(data);
|
|
@@ -67703,7 +67705,7 @@ const EntityId = ({
|
|
|
67703
67705
|
type: "link",
|
|
67704
67706
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$6, {}),
|
|
67705
67707
|
onClick: () => openInNewTab(entity["@id"]),
|
|
67706
|
-
title: "
|
|
67708
|
+
title: String(t2("open_in_new_tab"))
|
|
67707
67709
|
}
|
|
67708
67710
|
),
|
|
67709
67711
|
isDatasetOrFile() ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: entity["@id"] }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-grow", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -67803,8 +67805,8 @@ const valueIsEmpty = (value) => {
|
|
|
67803
67805
|
if (Array.isArray(value)) return value.length === 0;
|
|
67804
67806
|
return false;
|
|
67805
67807
|
};
|
|
67806
|
-
const formatValue = (value) => {
|
|
67807
|
-
if (valueIsEmpty(value)) return
|
|
67808
|
+
const formatValue = (value, emptyLabel) => {
|
|
67809
|
+
if (valueIsEmpty(value)) return emptyLabel;
|
|
67808
67810
|
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
67809
67811
|
return String(value);
|
|
67810
67812
|
}
|
|
@@ -67819,13 +67821,15 @@ const AiFieldDiffView = ({
|
|
|
67819
67821
|
currentValue,
|
|
67820
67822
|
operation
|
|
67821
67823
|
}) => {
|
|
67824
|
+
const { t: t2 } = useTranslation();
|
|
67822
67825
|
const isDelete = operation === "delete";
|
|
67823
|
-
const
|
|
67824
|
-
const
|
|
67825
|
-
|
|
67826
|
+
const emptyLabel = String(t2("ai_empty_value"));
|
|
67827
|
+
const removedValue = formatValue(previousValue, emptyLabel);
|
|
67828
|
+
const addedValue = isDelete ? emptyLabel : formatValue(currentValue, emptyLabel);
|
|
67829
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-field-diff", "aria-label": String(t2("ai_field_diff_aria")), children: [
|
|
67826
67830
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-field-diff-head", children: [
|
|
67827
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: isDelete ? "
|
|
67828
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-field-diff-chip", children: "
|
|
67831
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: isDelete ? t2("ai_proposed_deletion") : t2("ai_proposed_change") }),
|
|
67832
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-field-diff-chip", children: t2("ai_edit_chip") })
|
|
67829
67833
|
] }),
|
|
67830
67834
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-field-diff-line describo-ai-field-diff-line-removed", children: [
|
|
67831
67835
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-field-diff-marker", children: "-" }),
|
|
@@ -67846,7 +67850,7 @@ const EntityName = ({
|
|
|
67846
67850
|
aiReview
|
|
67847
67851
|
}) => {
|
|
67848
67852
|
var _a2;
|
|
67849
|
-
const
|
|
67853
|
+
const { t: t2 } = useTranslation();
|
|
67850
67854
|
const state = useStateStore();
|
|
67851
67855
|
const [showAiDiff, setShowAiDiff] = useState(false);
|
|
67852
67856
|
const showAiReview = Boolean(aiReview);
|
|
@@ -67861,7 +67865,7 @@ const EntityName = ({
|
|
|
67861
67865
|
children: [
|
|
67862
67866
|
showAiReview && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge", children: [
|
|
67863
67867
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
|
|
67864
|
-
isAiDelete ? "
|
|
67868
|
+
isAiDelete ? t2("ai_delete_badge") : t2("ai_suggestion_badge")
|
|
67865
67869
|
] }),
|
|
67866
67870
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "min-w-32 w-1/3 xl:w-1/5 flex flex-col", children: [
|
|
67867
67871
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-property-name describo-property-name-with-ai", children: [
|
|
@@ -67887,33 +67891,33 @@ const EntityName = ({
|
|
|
67887
67891
|
}
|
|
67888
67892
|
) }),
|
|
67889
67893
|
showAiReview && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-actions", children: [
|
|
67890
|
-
(aiReview == null ? void 0 : aiReview.previousValueDiffers) && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showAiDiff ? "
|
|
67894
|
+
(aiReview == null ? void 0 : aiReview.previousValueDiffers) && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showAiDiff ? t2("ai_hide_diff") : t2("ai_show_diff"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67891
67895
|
Button$1,
|
|
67892
67896
|
{
|
|
67893
67897
|
size: "middle",
|
|
67894
67898
|
className: "describo-ai-action-diff",
|
|
67895
67899
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
|
|
67896
|
-
"aria-label": showAiDiff ? "
|
|
67900
|
+
"aria-label": showAiDiff ? String(t2("ai_hide_ai_diff_aria")) : String(t2("ai_show_ai_diff_aria")),
|
|
67897
67901
|
"aria-pressed": showAiDiff,
|
|
67898
67902
|
onClick: () => setShowAiDiff((visible) => !visible)
|
|
67899
67903
|
}
|
|
67900
67904
|
) }),
|
|
67901
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isAiDelete ? "
|
|
67905
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isAiDelete ? t2("ai_approve_deletion_tooltip") : t2("ai_approve_suggested_value_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67902
67906
|
Button$1,
|
|
67903
67907
|
{
|
|
67904
67908
|
size: "middle",
|
|
67905
67909
|
className: "describo-ai-action-approve",
|
|
67906
67910
|
onClick: aiReview == null ? void 0 : aiReview.onApprove,
|
|
67907
|
-
children: isAiDelete ? "
|
|
67911
|
+
children: isAiDelete ? t2("ai_delete") : t2("ai_accept")
|
|
67908
67912
|
}
|
|
67909
67913
|
) }),
|
|
67910
|
-
(aiReview == null ? void 0 : aiReview.previousValueDiffers) && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
67914
|
+
(aiReview == null ? void 0 : aiReview.previousValueDiffers) && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_restore_previous_value_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
67911
67915
|
Button$1,
|
|
67912
67916
|
{
|
|
67913
67917
|
size: "middle",
|
|
67914
67918
|
className: "describo-ai-action-reject",
|
|
67915
67919
|
onClick: aiReview == null ? void 0 : aiReview.onReject,
|
|
67916
|
-
children: isAiDelete ? "
|
|
67920
|
+
children: isAiDelete ? t2("ai_restore") : t2("ai_reject")
|
|
67917
67921
|
}
|
|
67918
67922
|
) })
|
|
67919
67923
|
] })
|
|
@@ -79832,9 +79836,9 @@ const Map$1 = ({ entity, crateManager }) => {
|
|
|
79832
79836
|
};
|
|
79833
79837
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { id: mapId, className: "w-[600px] h-[520px] describo-property-type-map", ref: mapRef });
|
|
79834
79838
|
};
|
|
79835
|
-
const formatEntityDiffValue = (value) => {
|
|
79836
|
-
if (value === void 0 || value === null) return
|
|
79837
|
-
if (Array.isArray(value)) return value.map(formatEntityDiffValue).join(", ");
|
|
79839
|
+
const formatEntityDiffValue = (value, emptyLabel) => {
|
|
79840
|
+
if (value === void 0 || value === null) return emptyLabel;
|
|
79841
|
+
if (Array.isArray(value)) return value.map((item) => formatEntityDiffValue(item, emptyLabel)).join(", ");
|
|
79838
79842
|
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
79839
79843
|
return String(value);
|
|
79840
79844
|
}
|
|
@@ -79854,20 +79858,21 @@ const AiEntityDiffView = ({
|
|
|
79854
79858
|
onAccept,
|
|
79855
79859
|
onReject
|
|
79856
79860
|
}) => {
|
|
79861
|
+
const { t: t2 } = useTranslation();
|
|
79857
79862
|
const isDelete = operation === "delete";
|
|
79858
79863
|
const isUnlink = operation === "unlink";
|
|
79859
|
-
const title = isDelete ?
|
|
79864
|
+
const title = isDelete ? t2("ai_deleted_entity_title", { entityId }) : isUnlink ? t2("ai_unlinked_entity_title", { entityId }) : t2("ai_edited_entity_title", { entityId });
|
|
79860
79865
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: `describo-ai-entity-diff-card ${isDelete ? "describo-ai-entity-diff-card-delete" : ""} ${isUnlink ? "describo-ai-entity-diff-card-unlink" : ""}`, children: [
|
|
79861
79866
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-diff-head", children: [
|
|
79862
79867
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: title }),
|
|
79863
|
-
onClose && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
79868
|
+
onClose && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_hide_entity_diff"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79864
79869
|
Button$1,
|
|
79865
79870
|
{
|
|
79866
79871
|
type: "text",
|
|
79867
79872
|
size: "small",
|
|
79868
79873
|
className: "describo-ai-entity-diff-close",
|
|
79869
79874
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$A, {}),
|
|
79870
|
-
"aria-label": "
|
|
79875
|
+
"aria-label": String(t2("ai_hide_entity_diff_aria")),
|
|
79871
79876
|
onClick: (event) => {
|
|
79872
79877
|
event.stopPropagation();
|
|
79873
79878
|
onClose();
|
|
@@ -79882,13 +79887,13 @@ const AiEntityDiffView = ({
|
|
|
79882
79887
|
children: [
|
|
79883
79888
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-entity-diff-marker", children: row.kind === "removed" ? "-" : row.kind === "added" ? "+" : "" }),
|
|
79884
79889
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-entity-diff-key", children: row.label }),
|
|
79885
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-entity-diff-value", children: formatEntityDiffValue(row.value) })
|
|
79890
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-entity-diff-value", children: formatEntityDiffValue(row.value, String(t2("ai_empty_value"))) })
|
|
79886
79891
|
]
|
|
79887
79892
|
},
|
|
79888
79893
|
`${row.kind}-${row.propertyName}-${index2}`
|
|
79889
79894
|
)) }),
|
|
79890
79895
|
!readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-diff-actions", children: [
|
|
79891
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "
|
|
79896
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? t2("ai_approve_deletion_tooltip") : isUnlink ? t2("ai_approve_unlink_tooltip") : t2("ai_accept_entity_edits_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79892
79897
|
Button$1,
|
|
79893
79898
|
{
|
|
79894
79899
|
size: "middle",
|
|
@@ -79897,10 +79902,10 @@ const AiEntityDiffView = ({
|
|
|
79897
79902
|
event.stopPropagation();
|
|
79898
79903
|
onAccept == null ? void 0 : onAccept();
|
|
79899
79904
|
},
|
|
79900
|
-
children: isDelete ? "
|
|
79905
|
+
children: isDelete ? t2("ai_delete_entity") : isUnlink ? t2("ai_unlink_entity") : t2("ai_accept_edit")
|
|
79901
79906
|
}
|
|
79902
79907
|
) }),
|
|
79903
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "
|
|
79908
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? t2("ai_restore_deleted_entity_tooltip") : isUnlink ? t2("ai_restore_link_tooltip") : t2("ai_restore_entity_values_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
79904
79909
|
Button$1,
|
|
79905
79910
|
{
|
|
79906
79911
|
size: "middle",
|
|
@@ -79909,7 +79914,7 @@ const AiEntityDiffView = ({
|
|
|
79909
79914
|
event.stopPropagation();
|
|
79910
79915
|
onReject == null ? void 0 : onReject();
|
|
79911
79916
|
},
|
|
79912
|
-
children: isDelete ? "
|
|
79917
|
+
children: isDelete ? t2("ai_keep_entity") : isUnlink ? t2("ai_restore_link") : t2("ai_reject_edit")
|
|
79913
79918
|
}
|
|
79914
79919
|
) })
|
|
79915
79920
|
] })
|
|
@@ -80012,6 +80017,7 @@ const DeletedLinkedEntityCard = ({
|
|
|
80012
80017
|
onAcceptDelete,
|
|
80013
80018
|
onRestore
|
|
80014
80019
|
}) => {
|
|
80020
|
+
const { t: t2 } = useTranslation();
|
|
80015
80021
|
const [showDeletedFields, setShowDeletedFields] = useState(false);
|
|
80016
80022
|
const deletedDiffRows = fields.map((field) => ({
|
|
80017
80023
|
kind: "removed",
|
|
@@ -80049,22 +80055,19 @@ const DeletedLinkedEntityCard = ({
|
|
|
80049
80055
|
children: [
|
|
80050
80056
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge describo-ai-entity-status-badge", children: [
|
|
80051
80057
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
|
|
80052
|
-
"
|
|
80058
|
+
t2("ai_delete_badge")
|
|
80053
80059
|
] }),
|
|
80054
80060
|
/* @__PURE__ */ jsxRuntimeExports.jsx(LinkedEntityCardHeader, { entity: displayEntity }),
|
|
80055
80061
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-deleted-entity-controls", children: [
|
|
80056
80062
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-deleted-entity-summary", children: [
|
|
80057
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
80058
|
-
|
|
80059
|
-
" fields can be restored."
|
|
80060
|
-
] }),
|
|
80061
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showDeletedFields ? "Hide deleted fields" : "Show deleted fields", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80063
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: t2("ai_fields_can_be_restored", { count: fieldCount }) }),
|
|
80064
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showDeletedFields ? t2("ai_hide_deleted_fields") : t2("ai_show_deleted_fields"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80062
80065
|
Button$1,
|
|
80063
80066
|
{
|
|
80064
80067
|
size: "small",
|
|
80065
80068
|
className: "describo-ai-entity-delete-details-toggle",
|
|
80066
80069
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
|
|
80067
|
-
"aria-label": showDeletedFields ? "
|
|
80070
|
+
"aria-label": showDeletedFields ? String(t2("ai_hide_deleted_fields_aria")) : String(t2("ai_show_deleted_fields_aria")),
|
|
80068
80071
|
"aria-pressed": showDeletedFields,
|
|
80069
80072
|
onClick: (event) => {
|
|
80070
80073
|
event.stopPropagation();
|
|
@@ -80074,7 +80077,7 @@ const DeletedLinkedEntityCard = ({
|
|
|
80074
80077
|
) })
|
|
80075
80078
|
] }),
|
|
80076
80079
|
!readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-actions", children: [
|
|
80077
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
80080
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_approve_deletion_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80078
80081
|
Button$1,
|
|
80079
80082
|
{
|
|
80080
80083
|
size: "small",
|
|
@@ -80083,10 +80086,10 @@ const DeletedLinkedEntityCard = ({
|
|
|
80083
80086
|
event.stopPropagation();
|
|
80084
80087
|
onAcceptDelete == null ? void 0 : onAcceptDelete(entity);
|
|
80085
80088
|
},
|
|
80086
|
-
children: "
|
|
80089
|
+
children: t2("ai_delete")
|
|
80087
80090
|
}
|
|
80088
80091
|
) }),
|
|
80089
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
80092
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_restore_deleted_entity_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80090
80093
|
Button$1,
|
|
80091
80094
|
{
|
|
80092
80095
|
size: "small",
|
|
@@ -80095,7 +80098,7 @@ const DeletedLinkedEntityCard = ({
|
|
|
80095
80098
|
event.stopPropagation();
|
|
80096
80099
|
onRestore == null ? void 0 : onRestore(entity);
|
|
80097
80100
|
},
|
|
80098
|
-
children: "
|
|
80101
|
+
children: t2("ai_restore")
|
|
80099
80102
|
}
|
|
80100
80103
|
) })
|
|
80101
80104
|
] })
|
|
@@ -80114,19 +80117,20 @@ const UnlinkedLinkedEntityCard = ({
|
|
|
80114
80117
|
onAcceptUnlink,
|
|
80115
80118
|
onRejectUnlink
|
|
80116
80119
|
}) => {
|
|
80120
|
+
const { t: t2 } = useTranslation();
|
|
80117
80121
|
const [showDiff, setShowDiff] = useState(false);
|
|
80118
80122
|
const targetEntityId = entity["@id"];
|
|
80119
80123
|
const diffRows = [
|
|
80120
80124
|
{
|
|
80121
80125
|
kind: "context",
|
|
80122
80126
|
propertyName: "@id",
|
|
80123
|
-
label: "
|
|
80127
|
+
label: t2("ai_diff_label_entity"),
|
|
80124
80128
|
value: targetEntityId
|
|
80125
80129
|
},
|
|
80126
80130
|
{
|
|
80127
80131
|
kind: "context",
|
|
80128
80132
|
propertyName: "source",
|
|
80129
|
-
label: "
|
|
80133
|
+
label: t2("ai_diff_label_linked_from"),
|
|
80130
80134
|
value: sourceEntityId
|
|
80131
80135
|
},
|
|
80132
80136
|
{
|
|
@@ -80166,17 +80170,17 @@ const UnlinkedLinkedEntityCard = ({
|
|
|
80166
80170
|
children: [
|
|
80167
80171
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge describo-ai-entity-status-badge", children: [
|
|
80168
80172
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
|
|
80169
|
-
"
|
|
80173
|
+
t2("ai_unlink_badge")
|
|
80170
80174
|
] }),
|
|
80171
80175
|
/* @__PURE__ */ jsxRuntimeExports.jsx(LinkedEntityCardHeader, { entity: displayEntity }),
|
|
80172
80176
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-deleted-entity-controls", children: [
|
|
80173
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-deleted-entity-summary", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showDiff ? "
|
|
80177
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "describo-ai-deleted-entity-summary", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showDiff ? t2("ai_hide_unlink_diff") : t2("ai_show_unlink_diff"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80174
80178
|
Button$1,
|
|
80175
80179
|
{
|
|
80176
80180
|
size: "small",
|
|
80177
80181
|
className: "describo-ai-entity-delete-details-toggle",
|
|
80178
80182
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
|
|
80179
|
-
"aria-label": showDiff ? "
|
|
80183
|
+
"aria-label": showDiff ? String(t2("ai_hide_unlink_diff_aria")) : String(t2("ai_show_unlink_diff_aria")),
|
|
80180
80184
|
"aria-pressed": showDiff,
|
|
80181
80185
|
onClick: (event) => {
|
|
80182
80186
|
event.stopPropagation();
|
|
@@ -80185,7 +80189,7 @@ const UnlinkedLinkedEntityCard = ({
|
|
|
80185
80189
|
}
|
|
80186
80190
|
) }) }),
|
|
80187
80191
|
!readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-actions", children: [
|
|
80188
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
80192
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_approve_unlink_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80189
80193
|
Button$1,
|
|
80190
80194
|
{
|
|
80191
80195
|
size: "small",
|
|
@@ -80194,10 +80198,10 @@ const UnlinkedLinkedEntityCard = ({
|
|
|
80194
80198
|
event.stopPropagation();
|
|
80195
80199
|
onAcceptUnlink == null ? void 0 : onAcceptUnlink({ sourceEntityId, property, targetEntityId });
|
|
80196
80200
|
},
|
|
80197
|
-
children: "
|
|
80201
|
+
children: t2("ai_unlink_entity")
|
|
80198
80202
|
}
|
|
80199
80203
|
) }),
|
|
80200
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
80204
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_restore_link_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80201
80205
|
Button$1,
|
|
80202
80206
|
{
|
|
80203
80207
|
size: "small",
|
|
@@ -80206,7 +80210,7 @@ const UnlinkedLinkedEntityCard = ({
|
|
|
80206
80210
|
event.stopPropagation();
|
|
80207
80211
|
onRejectUnlink == null ? void 0 : onRejectUnlink({ sourceEntityId, property, targetEntityId });
|
|
80208
80212
|
},
|
|
80209
|
-
children: "
|
|
80213
|
+
children: t2("ai_restore")
|
|
80210
80214
|
}
|
|
80211
80215
|
) })
|
|
80212
80216
|
] })
|
|
@@ -80243,23 +80247,18 @@ const AiEntityReviewSummary = ({
|
|
|
80243
80247
|
onReview,
|
|
80244
80248
|
onDiff
|
|
80245
80249
|
}) => {
|
|
80250
|
+
const { t: t2 } = useTranslation();
|
|
80246
80251
|
if (fieldCount <= 0) return null;
|
|
80247
|
-
const fieldLabel = fieldCount === 1 ? "field" : "fields";
|
|
80248
80252
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-review-summary", children: [
|
|
80249
80253
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-review-meta", children: [
|
|
80250
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
80251
|
-
|
|
80252
|
-
" ",
|
|
80253
|
-
fieldLabel,
|
|
80254
|
-
" to review"
|
|
80255
|
-
] }),
|
|
80256
|
-
onDiff && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "Show entity diff", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80254
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-entity-review-count", children: t2("ai_fields_to_review", { count: fieldCount }) }),
|
|
80255
|
+
onDiff && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_show_entity_diff"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80257
80256
|
Button$1,
|
|
80258
80257
|
{
|
|
80259
80258
|
className: "describo-ai-entity-diff-toggle",
|
|
80260
80259
|
size: "small",
|
|
80261
80260
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
|
|
80262
|
-
"aria-label": "
|
|
80261
|
+
"aria-label": String(t2("ai_show_entity_diff_aria")),
|
|
80263
80262
|
onClick: (event) => {
|
|
80264
80263
|
event.stopPropagation();
|
|
80265
80264
|
onDiff();
|
|
@@ -80276,7 +80275,7 @@ const AiEntityReviewSummary = ({
|
|
|
80276
80275
|
event.stopPropagation();
|
|
80277
80276
|
onReview();
|
|
80278
80277
|
},
|
|
80279
|
-
children: "
|
|
80278
|
+
children: t2("ai_review_entity")
|
|
80280
80279
|
}
|
|
80281
80280
|
)
|
|
80282
80281
|
] });
|
|
@@ -80291,47 +80290,51 @@ const LinkedEntityCard = ({
|
|
|
80291
80290
|
onLoadEntity,
|
|
80292
80291
|
onUnlinkEntity,
|
|
80293
80292
|
onShowEntityDiff
|
|
80294
|
-
}) =>
|
|
80295
|
-
|
|
80296
|
-
|
|
80297
|
-
|
|
80298
|
-
|
|
80299
|
-
|
|
80300
|
-
|
|
80301
|
-
|
|
80302
|
-
|
|
80303
|
-
|
|
80304
|
-
|
|
80305
|
-
|
|
80306
|
-
|
|
80307
|
-
|
|
80308
|
-
|
|
80309
|
-
|
|
80310
|
-
|
|
80311
|
-
|
|
80312
|
-
|
|
80313
|
-
|
|
80314
|
-
|
|
80315
|
-
|
|
80316
|
-
|
|
80317
|
-
|
|
80318
|
-
|
|
80319
|
-
|
|
80320
|
-
|
|
80321
|
-
|
|
80322
|
-
|
|
80323
|
-
|
|
80324
|
-
|
|
80325
|
-
|
|
80326
|
-
|
|
80327
|
-
|
|
80328
|
-
|
|
80329
|
-
|
|
80330
|
-
|
|
80331
|
-
|
|
80332
|
-
|
|
80333
|
-
|
|
80334
|
-
)
|
|
80293
|
+
}) => {
|
|
80294
|
+
const { t: t2 } = useTranslation();
|
|
80295
|
+
const entityAddedLabel = t2("ai_entity_was_added_by_ai");
|
|
80296
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
80297
|
+
Card,
|
|
80298
|
+
{
|
|
80299
|
+
className: `${hasPendingAiReview ? "describo-ai-entity-review-card" : ""} ${hasAiTouchedEntity ? "describo-ai-entity-reviewed-card" : ""}`,
|
|
80300
|
+
style: {
|
|
80301
|
+
backgroundColor: hasPendingAiReview ? "#e6f8ef" : "#e6f0ff",
|
|
80302
|
+
cursor: "pointer",
|
|
80303
|
+
transition: "background-color 0.2s",
|
|
80304
|
+
borderLeft: hasPendingAiReview ? "3px solid #38c88a" : "3px solid #409eff"
|
|
80305
|
+
},
|
|
80306
|
+
styles: { body: { padding: hasPendingAiReview ? "22px 12px 8px" : "8px 12px" } },
|
|
80307
|
+
hoverable: true,
|
|
80308
|
+
onClick: () => onLoadEntity({ id: entity["@id"] }),
|
|
80309
|
+
children: [
|
|
80310
|
+
hasPendingAiReview && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge describo-ai-entity-status-badge", children: [
|
|
80311
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
|
|
80312
|
+
t2("ai_suggestion_badge")
|
|
80313
|
+
] }),
|
|
80314
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { justify: "space-between", align: "middle", gap: 8, children: [
|
|
80315
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(LinkedEntityCardHeader, { entity: displayEntity }),
|
|
80316
|
+
!readonly && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { onClick: (event) => event.stopPropagation(), children: /* @__PURE__ */ jsxRuntimeExports.jsx(UnlinkEntity, { entity, onUnlinkEntity }) })
|
|
80317
|
+
] }),
|
|
80318
|
+
hasAiTouchedEntity && !hasPendingAiReview && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80319
|
+
AiEditedFieldBadge,
|
|
80320
|
+
{
|
|
80321
|
+
className: "describo-ai-entity-edited-badge",
|
|
80322
|
+
title: entityAddedLabel,
|
|
80323
|
+
ariaLabel: entityAddedLabel
|
|
80324
|
+
}
|
|
80325
|
+
),
|
|
80326
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
80327
|
+
AiEntityReviewSummary,
|
|
80328
|
+
{
|
|
80329
|
+
fieldCount: hasPendingAiReview ? pendingAiReviewFieldCount : 0,
|
|
80330
|
+
onReview: () => onLoadEntity({ id: entity["@id"] }),
|
|
80331
|
+
onDiff: hasPendingAiReview ? onShowEntityDiff : void 0
|
|
80332
|
+
}
|
|
80333
|
+
)
|
|
80334
|
+
]
|
|
80335
|
+
}
|
|
80336
|
+
);
|
|
80337
|
+
};
|
|
80335
80338
|
const approvalIsApproved = (approvalRecord) => (approvalRecord == null ? void 0 : approvalRecord.approved) === true || (approvalRecord == null ? void 0 : approvalRecord.approved) === "true";
|
|
80336
80339
|
const getApprovalEntities = (approvalData) => {
|
|
80337
80340
|
if (!approvalData) return [];
|
|
@@ -80520,6 +80523,7 @@ const RenderLinkedItem = ({
|
|
|
80520
80523
|
onRejectAiEntityUnlink
|
|
80521
80524
|
}) => {
|
|
80522
80525
|
var _a2, _b, _c, _d, _e2;
|
|
80526
|
+
const { t: t2 } = useTranslation();
|
|
80523
80527
|
const state = useStateStore();
|
|
80524
80528
|
const crateManager = useContext(CrateManagerContext);
|
|
80525
80529
|
const profileManager = useContext(ProfileManagerContext);
|
|
@@ -80640,8 +80644,8 @@ const RenderLinkedItem = ({
|
|
|
80640
80644
|
const getEntityDiffLabel = (fieldName) => {
|
|
80641
80645
|
var _a3, _b2;
|
|
80642
80646
|
if (fieldName === "@id") return "@id";
|
|
80643
|
-
if (fieldName === "@type") return "
|
|
80644
|
-
if (fieldName === "name") return "
|
|
80647
|
+
if (fieldName === "@type") return t2("type_field_label");
|
|
80648
|
+
if (fieldName === "name") return t2("name_field_label");
|
|
80645
80649
|
return ((_b2 = (_a3 = profileManager == null ? void 0 : profileManager.getPropertyDefinition({
|
|
80646
80650
|
property: fieldName,
|
|
80647
80651
|
entity: effectiveEntity
|
|
@@ -80690,7 +80694,7 @@ const RenderLinkedItem = ({
|
|
|
80690
80694
|
return rows;
|
|
80691
80695
|
});
|
|
80692
80696
|
return [...contextRows, ...changedRows];
|
|
80693
|
-
}, [effectiveEntity, entity, pendingAiEntityDiffRecords, profileManager]);
|
|
80697
|
+
}, [effectiveEntity, entity, pendingAiEntityDiffRecords, profileManager, t2]);
|
|
80694
80698
|
if (showMap) {
|
|
80695
80699
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(Flex, { className: "describo-render-item-link py-1 rounded bg-blue-200 hover:text-black hover:bg-blue-300 hover:rounded-r-none", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { vertical: true, className: "space-y-2", children: [
|
|
80696
80700
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { className: "p-2", children: [
|
|
@@ -82715,7 +82719,7 @@ const EntityProperty = ({
|
|
|
82715
82719
|
children: [
|
|
82716
82720
|
showAiReview && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge", children: [
|
|
82717
82721
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
|
|
82718
|
-
isAiDelete ? "
|
|
82722
|
+
isAiDelete ? t2("ai_delete_badge") : t2("ai_suggestion_badge")
|
|
82719
82723
|
] }),
|
|
82720
82724
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "min-w-32 w-1/3 xl:w-1/5 flex flex-col describo-property-heading", children: [
|
|
82721
82725
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row items-center", children: [
|
|
@@ -82762,33 +82766,33 @@ const EntityProperty = ({
|
|
|
82762
82766
|
}
|
|
82763
82767
|
) }),
|
|
82764
82768
|
showAiReview && instance2.idx === ((_a3 = renderedSimpleInstances[0]) == null ? void 0 : _a3.idx) && !((_b2 = state.configuration) == null ? void 0 : _b2.readonly) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-actions", children: [
|
|
82765
|
-
showAiDiffToggle && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showAiDiff ? "
|
|
82769
|
+
showAiDiffToggle && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showAiDiff ? t2("ai_hide_diff") : t2("ai_show_diff"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
82766
82770
|
Button$1,
|
|
82767
82771
|
{
|
|
82768
82772
|
size: "middle",
|
|
82769
82773
|
className: "describo-ai-action-diff",
|
|
82770
82774
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
|
|
82771
|
-
"aria-label": showAiDiff ? "
|
|
82775
|
+
"aria-label": showAiDiff ? String(t2("ai_hide_ai_diff_aria")) : String(t2("ai_show_ai_diff_aria")),
|
|
82772
82776
|
"aria-pressed": showAiDiff,
|
|
82773
82777
|
onClick: () => setShowAiDiff((visible) => !visible)
|
|
82774
82778
|
}
|
|
82775
82779
|
) }),
|
|
82776
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isAiDelete ? "
|
|
82780
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isAiDelete ? t2("ai_approve_deletion_tooltip") : t2("ai_approve_suggested_value_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
82777
82781
|
Button$1,
|
|
82778
82782
|
{
|
|
82779
82783
|
size: "middle",
|
|
82780
82784
|
className: "describo-ai-action-approve",
|
|
82781
82785
|
onClick: handleApproveAiSuggestion,
|
|
82782
|
-
children: isAiDelete ? "
|
|
82786
|
+
children: isAiDelete ? t2("ai_delete") : t2("ai_accept")
|
|
82783
82787
|
}
|
|
82784
82788
|
) }),
|
|
82785
|
-
previousValueDiffers && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
82789
|
+
previousValueDiffers && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_restore_previous_value_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
82786
82790
|
Button$1,
|
|
82787
82791
|
{
|
|
82788
82792
|
size: "middle",
|
|
82789
82793
|
className: "describo-ai-action-reject",
|
|
82790
82794
|
onClick: () => handleRejectAiSuggestion(instance2.idx),
|
|
82791
|
-
children: isAiDelete ? "
|
|
82795
|
+
children: isAiDelete ? t2("ai_restore") : t2("ai_reject")
|
|
82792
82796
|
}
|
|
82793
82797
|
) })
|
|
82794
82798
|
] }),
|
|
@@ -108277,6 +108281,7 @@ const DialogBrowseEntities = ({
|
|
|
108277
108281
|
const hasReviewedAiEdits = approvedFieldCount > 0;
|
|
108278
108282
|
const hasPendingAiReview = pendingFieldCount > 0 && !hasReviewedAiEdits;
|
|
108279
108283
|
const hasAiTouchedEntity = hasPendingAiReview || hasReviewedAiEdits;
|
|
108284
|
+
const entityAddedLabel = t2("ai_entity_was_added_by_ai");
|
|
108280
108285
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mb-2", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
108281
108286
|
Card,
|
|
108282
108287
|
{
|
|
@@ -108305,8 +108310,8 @@ const DialogBrowseEntities = ({
|
|
|
108305
108310
|
AiEditedFieldBadge,
|
|
108306
108311
|
{
|
|
108307
108312
|
className: "describo-ai-entity-edited-badge",
|
|
108308
|
-
title:
|
|
108309
|
-
ariaLabel:
|
|
108313
|
+
title: entityAddedLabel,
|
|
108314
|
+
ariaLabel: entityAddedLabel
|
|
108310
108315
|
}
|
|
108311
108316
|
),
|
|
108312
108317
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -110693,55 +110698,57 @@ const QuickSettingsHeader = ({
|
|
|
110693
110698
|
onFieldTitleFilterChange,
|
|
110694
110699
|
onToggleEmptyFields,
|
|
110695
110700
|
onToggleAiEditedFields
|
|
110696
|
-
}) =>
|
|
110697
|
-
|
|
110698
|
-
|
|
110699
|
-
|
|
110700
|
-
{
|
|
110701
|
-
|
|
110702
|
-
|
|
110703
|
-
|
|
110704
|
-
|
|
110705
|
-
|
|
110706
|
-
|
|
110707
|
-
|
|
110708
|
-
|
|
110709
|
-
|
|
110710
|
-
{
|
|
110711
|
-
|
|
110712
|
-
|
|
110713
|
-
|
|
110714
|
-
|
|
110715
|
-
|
|
110716
|
-
|
|
110717
|
-
|
|
110718
|
-
|
|
110719
|
-
|
|
110701
|
+
}) => {
|
|
110702
|
+
const { t: t2 } = useTranslation();
|
|
110703
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-quick-settings-header", role: "region", "aria-label": String(t2("quick_filter_settings_aria")), children: [
|
|
110704
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-quick-settings-actions", "aria-label": String(t2("field_display_settings_aria")), children: [
|
|
110705
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showFieldHelp ? t2("hide_field_help") : t2("show_field_help"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110706
|
+
Button$1,
|
|
110707
|
+
{
|
|
110708
|
+
type: showFieldHelp ? "default" : "primary",
|
|
110709
|
+
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$l, {}),
|
|
110710
|
+
"aria-label": showFieldHelp ? String(t2("hide_field_help")) : String(t2("show_field_help")),
|
|
110711
|
+
"aria-pressed": !showFieldHelp,
|
|
110712
|
+
onClick: onToggleFieldHelp
|
|
110713
|
+
}
|
|
110714
|
+
) }),
|
|
110715
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: hideEmptyFields ? t2("show_empty_fields") : t2("hide_empty_fields"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110716
|
+
Button$1,
|
|
110717
|
+
{
|
|
110718
|
+
type: hideEmptyFields ? "primary" : "default",
|
|
110719
|
+
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$5, {}),
|
|
110720
|
+
"aria-label": hideEmptyFields ? String(t2("show_empty_fields")) : String(t2("hide_empty_fields")),
|
|
110721
|
+
"aria-pressed": hideEmptyFields,
|
|
110722
|
+
onClick: onToggleEmptyFields
|
|
110723
|
+
}
|
|
110724
|
+
) }),
|
|
110725
|
+
aiEditedFieldCount > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: showAiEditedFields ? t2("show_all_fields") : t2("show_ai_edited_fields"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110726
|
+
Button$1,
|
|
110727
|
+
{
|
|
110728
|
+
type: showAiEditedFields ? "primary" : "default",
|
|
110729
|
+
className: "describo-ai-edited-filter-button",
|
|
110730
|
+
"aria-label": showAiEditedFields ? String(t2("show_all_fields")) : String(t2("show_ai_edited_fields")),
|
|
110731
|
+
"aria-pressed": showAiEditedFields,
|
|
110732
|
+
onClick: onToggleAiEditedFields,
|
|
110733
|
+
children: "✦"
|
|
110734
|
+
}
|
|
110735
|
+
) })
|
|
110736
|
+
] }),
|
|
110737
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110738
|
+
Input2,
|
|
110720
110739
|
{
|
|
110721
|
-
|
|
110722
|
-
|
|
110723
|
-
|
|
110724
|
-
"aria-
|
|
110725
|
-
|
|
110726
|
-
|
|
110727
|
-
|
|
110728
|
-
|
|
110729
|
-
) })
|
|
110730
|
-
] }),
|
|
110731
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110732
|
-
Input2,
|
|
110733
|
-
{
|
|
110734
|
-
className: "describo-quick-settings-filter",
|
|
110735
|
-
value: fieldTitleFilter,
|
|
110736
|
-
placeholder: "Filter fields by name or value",
|
|
110737
|
-
"aria-label": "Filter fields by name or value",
|
|
110738
|
-
onChange: (event) => onFieldTitleFilterChange(event.target.value),
|
|
110739
|
-
allowClear: {
|
|
110740
|
-
clearIcon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, { "aria-label": "Clear field filter" })
|
|
110740
|
+
className: "describo-quick-settings-filter",
|
|
110741
|
+
value: fieldTitleFilter,
|
|
110742
|
+
placeholder: String(t2("filter_fields_by_name_or_value")),
|
|
110743
|
+
"aria-label": String(t2("filter_fields_by_name_or_value")),
|
|
110744
|
+
onChange: (event) => onFieldTitleFilterChange(event.target.value),
|
|
110745
|
+
allowClear: {
|
|
110746
|
+
clearIcon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$B, { "aria-label": String(t2("clear_field_filter")) })
|
|
110747
|
+
}
|
|
110741
110748
|
}
|
|
110742
|
-
|
|
110743
|
-
)
|
|
110744
|
-
|
|
110749
|
+
)
|
|
110750
|
+
] });
|
|
110751
|
+
};
|
|
110745
110752
|
const AiApprovalStepperHeader = ({
|
|
110746
110753
|
activeIndex,
|
|
110747
110754
|
pendingCount,
|
|
@@ -110757,12 +110764,17 @@ const AiApprovalStepperHeader = ({
|
|
|
110757
110764
|
onRejectAll,
|
|
110758
110765
|
onReviewNextEntity
|
|
110759
110766
|
}) => {
|
|
110767
|
+
const { t: t2 } = useTranslation();
|
|
110760
110768
|
if (!pendingCount && !remainingEntityCount) return null;
|
|
110761
110769
|
if (!pendingCount) {
|
|
110762
|
-
const entityLabel =
|
|
110763
|
-
const
|
|
110764
|
-
|
|
110765
|
-
|
|
110770
|
+
const entityLabel = t2("ai_entity", { count: remainingEntityCount });
|
|
110771
|
+
const remainingMessage = t2("ai_remaining_review_message", {
|
|
110772
|
+
count: remainingFieldCount,
|
|
110773
|
+
fieldCount: remainingFieldCount,
|
|
110774
|
+
entityCount: remainingEntityCount,
|
|
110775
|
+
entityLabel
|
|
110776
|
+
});
|
|
110777
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-bar describo-ai-confirm-bar-remaining", role: "status", "aria-label": String(t2("ai_changes_remaining_aria")), children: [
|
|
110766
110778
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-message", children: [
|
|
110767
110779
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-confirm-spark", children: "✦" }),
|
|
110768
110780
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate", children: remainingMessage })
|
|
@@ -110772,66 +110784,66 @@ const AiApprovalStepperHeader = ({
|
|
|
110772
110784
|
{
|
|
110773
110785
|
className: "describo-ai-review-next-entity",
|
|
110774
110786
|
onClick: onReviewNextEntity,
|
|
110775
|
-
children: "
|
|
110787
|
+
children: t2("ai_review_next")
|
|
110776
110788
|
}
|
|
110777
110789
|
) })
|
|
110778
110790
|
] });
|
|
110779
110791
|
}
|
|
110780
110792
|
const stepLabel = `${Math.min(activeIndex + 1, pendingCount)}/${pendingCount}`;
|
|
110781
|
-
const message = activePropertyLabel ?
|
|
110782
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-bar", role: "region", "aria-label": "
|
|
110793
|
+
const message = activePropertyLabel ? t2("ai_changes_need_review_property", { property: activePropertyLabel }) : t2("ai_changes_need_review");
|
|
110794
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-bar", role: "region", "aria-label": String(t2("ai_change_review_aria")), children: [
|
|
110783
110795
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-message", children: [
|
|
110784
110796
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-confirm-spark", children: "✦" }),
|
|
110785
110797
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "truncate", children: message })
|
|
110786
110798
|
] }),
|
|
110787
110799
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-confirm-controls", children: [
|
|
110788
|
-
onReviewNextEntity && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: remainingEntityCount > 0 ? "
|
|
110800
|
+
onReviewNextEntity && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: remainingEntityCount > 0 ? t2("ai_review_next_entity_tooltip") : t2("ai_no_other_entities_need_review"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110789
110801
|
Button$1,
|
|
110790
110802
|
{
|
|
110791
110803
|
className: "describo-ai-review-next-entity",
|
|
110792
110804
|
disabled: remainingEntityCount === 0,
|
|
110793
110805
|
onClick: onReviewNextEntity,
|
|
110794
|
-
children: "
|
|
110806
|
+
children: t2("ai_review_next")
|
|
110795
110807
|
}
|
|
110796
110808
|
) }),
|
|
110797
110809
|
!readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
110798
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
110810
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_accept_all_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110799
110811
|
Button$1,
|
|
110800
110812
|
{
|
|
110801
110813
|
className: "describo-ai-bulk-action describo-ai-bulk-accept",
|
|
110802
110814
|
onClick: onAcceptAll,
|
|
110803
|
-
children: "
|
|
110815
|
+
children: t2("ai_accept_all")
|
|
110804
110816
|
}
|
|
110805
110817
|
) }),
|
|
110806
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
110818
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_reject_all_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110807
110819
|
Button$1,
|
|
110808
110820
|
{
|
|
110809
110821
|
className: "describo-ai-bulk-action describo-ai-bulk-reject",
|
|
110810
110822
|
onClick: onRejectAll,
|
|
110811
|
-
children: "
|
|
110823
|
+
children: t2("ai_reject_all")
|
|
110812
110824
|
}
|
|
110813
110825
|
) })
|
|
110814
110826
|
] }),
|
|
110815
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-stepper", "aria-label": "
|
|
110816
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
110827
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-stepper", "aria-label": String(t2("ai_pending_field_navigation_aria")), children: [
|
|
110828
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_previous_pending_field"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110817
110829
|
Button$1,
|
|
110818
110830
|
{
|
|
110819
110831
|
type: "text",
|
|
110820
110832
|
size: "small",
|
|
110821
110833
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$p, {}),
|
|
110822
|
-
"aria-label": "
|
|
110834
|
+
"aria-label": String(t2("ai_previous_pending_field_aria")),
|
|
110823
110835
|
disabled: !canGoPrevious,
|
|
110824
110836
|
onClick: onPrevious
|
|
110825
110837
|
}
|
|
110826
110838
|
) }),
|
|
110827
110839
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-step-count", children: stepLabel }),
|
|
110828
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "
|
|
110840
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("ai_next_pending_field"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
110829
110841
|
Button$1,
|
|
110830
110842
|
{
|
|
110831
110843
|
type: "text",
|
|
110832
110844
|
size: "small",
|
|
110833
110845
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$u, {}),
|
|
110834
|
-
"aria-label": "
|
|
110846
|
+
"aria-label": String(t2("ai_next_pending_field_aria")),
|
|
110835
110847
|
disabled: !canGoNext,
|
|
110836
110848
|
onClick: onNext
|
|
110837
110849
|
}
|
|
@@ -112524,8 +112536,19 @@ const buildAiApprovalNavigationKey = (entityId, approvalRecord) => {
|
|
|
112524
112536
|
return `${entityId}:${propertyName2}:${operation}:${timestamp}:${previousValue}`;
|
|
112525
112537
|
};
|
|
112526
112538
|
const RenderEntity = forwardRef((props, ref) => {
|
|
112527
|
-
var _a2, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
|
|
112528
|
-
const {
|
|
112539
|
+
var _a2, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
|
|
112540
|
+
const {
|
|
112541
|
+
entity,
|
|
112542
|
+
onLoadEntity,
|
|
112543
|
+
onSaveCrate,
|
|
112544
|
+
onSaveEntityTemplate,
|
|
112545
|
+
onWarning,
|
|
112546
|
+
onError,
|
|
112547
|
+
quickSettingsVisible: controlledQuickSettingsVisible,
|
|
112548
|
+
onQuickSettingsVisibleChange,
|
|
112549
|
+
onAddNewProfileRequest,
|
|
112550
|
+
onRemoveProfile
|
|
112551
|
+
} = props;
|
|
112529
112552
|
const state = useStateStore();
|
|
112530
112553
|
const profileManager = useContext(ProfileManagerContext);
|
|
112531
112554
|
const crateManager = useContext(CrateManagerContext);
|
|
@@ -112541,7 +112564,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
112541
112564
|
const [savedProperty, setSavedProperty] = useState(void 0);
|
|
112542
112565
|
const [tabs, setTabs] = useState([]);
|
|
112543
112566
|
const [showAddPanel, setShowAddPanel] = useState(false);
|
|
112544
|
-
const [
|
|
112567
|
+
const [internalQuickSettingsVisible, setInternalQuickSettingsVisible] = useState(false);
|
|
112545
112568
|
const [showFieldHelp, setShowFieldHelp] = useState(true);
|
|
112546
112569
|
const [fieldTitleFilter, setFieldTitleFilter] = useState("");
|
|
112547
112570
|
const [hideEmptyFields, setHideEmptyFields] = useState(false);
|
|
@@ -112566,6 +112589,15 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
112566
112589
|
const [scrollRestoreNonce, setScrollRestoreNonce] = useState(0);
|
|
112567
112590
|
const contentContainerRef = useRef(null);
|
|
112568
112591
|
const activeContentRef = useRef(null);
|
|
112592
|
+
const quickSettingsVisible = controlledQuickSettingsVisible ?? internalQuickSettingsVisible;
|
|
112593
|
+
const updateQuickSettingsVisible = useCallback((visible) => {
|
|
112594
|
+
if (quickSettingsVisible === visible) return;
|
|
112595
|
+
setInternalQuickSettingsVisible(visible);
|
|
112596
|
+
onQuickSettingsVisibleChange == null ? void 0 : onQuickSettingsVisibleChange(visible);
|
|
112597
|
+
}, [onQuickSettingsVisibleChange, quickSettingsVisible]);
|
|
112598
|
+
const enableProfileActions = ((_a2 = state.configuration) == null ? void 0 : _a2.enableProfileActions) === true;
|
|
112599
|
+
const canAddProfile = enableProfileActions && Boolean(onAddNewProfileRequest);
|
|
112600
|
+
const canRemoveProfile = enableProfileActions && Boolean(onRemoveProfile);
|
|
112569
112601
|
const tabRailListRef = useRef(null);
|
|
112570
112602
|
const editorPanelRef = useRef(null);
|
|
112571
112603
|
const navigationRestoreReadyRef = useRef(false);
|
|
@@ -113135,6 +113167,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
113135
113167
|
};
|
|
113136
113168
|
const handleAddNewProfile = () => {
|
|
113137
113169
|
var _a3;
|
|
113170
|
+
if (!canAddProfile) return;
|
|
113138
113171
|
try {
|
|
113139
113172
|
const next2 = !showAddPanel;
|
|
113140
113173
|
const currentProfileTabKeys = tabs.filter(isProfileTab).map(getProfileTabKey).filter(Boolean);
|
|
@@ -113162,6 +113195,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
113162
113195
|
}
|
|
113163
113196
|
};
|
|
113164
113197
|
const handleRemoveProfile = (tab) => {
|
|
113198
|
+
if (!canRemoveProfile) return;
|
|
113165
113199
|
try {
|
|
113166
113200
|
onRemoveProfile == null ? void 0 : onRemoveProfile({
|
|
113167
113201
|
entityId: entity["@id"],
|
|
@@ -113434,7 +113468,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
113434
113468
|
}
|
|
113435
113469
|
}
|
|
113436
113470
|
) }),
|
|
113437
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("add_profile_button_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
113471
|
+
canAddProfile && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: t2("add_profile_button_tooltip"), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
113438
113472
|
Button$1,
|
|
113439
113473
|
{
|
|
113440
113474
|
type: "default",
|
|
@@ -113465,7 +113499,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
113465
113499
|
onScroll: updateTabRailScrollState,
|
|
113466
113500
|
children: tabs.map((tab, idx) => {
|
|
113467
113501
|
const isActive2 = tab.name === activeTab;
|
|
113468
|
-
const canRemove = !(["about", "overflow", "other"].includes((tab.name || "").toLowerCase()) || ["about", "other"].includes((tab.label || tab.name || "").toLowerCase()));
|
|
113502
|
+
const canRemove = canRemoveProfile && !(["about", "overflow", "other"].includes((tab.name || "").toLowerCase()) || ["about", "other"].includes((tab.label || tab.name || "").toLowerCase()));
|
|
113469
113503
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
113470
113504
|
"div",
|
|
113471
113505
|
{
|
|
@@ -114026,7 +114060,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114026
114060
|
}
|
|
114027
114061
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row", children: [
|
|
114028
114062
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col w-full", children: [
|
|
114029
|
-
((
|
|
114063
|
+
((_b = state.configuration) == null ? void 0 : _b.showControls) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row place-content-between pb-1 border-b border-slate-700", children: [
|
|
114030
114064
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114031
114065
|
RenderControls,
|
|
114032
114066
|
{
|
|
@@ -114045,14 +114079,14 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114045
114079
|
Button$1,
|
|
114046
114080
|
{
|
|
114047
114081
|
style: { marginRight: 8 },
|
|
114048
|
-
onClick: () =>
|
|
114082
|
+
onClick: () => updateQuickSettingsVisible(!quickSettingsVisible),
|
|
114049
114083
|
type: quickSettingsVisible ? "primary" : "default",
|
|
114050
114084
|
icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$8, {}),
|
|
114051
114085
|
"aria-label": "Quick filter settings",
|
|
114052
114086
|
"aria-pressed": quickSettingsVisible
|
|
114053
114087
|
}
|
|
114054
114088
|
) }),
|
|
114055
|
-
((
|
|
114089
|
+
((_c = state.configuration) == null ? void 0 : _c.enableReverseLinkBrowser) && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114056
114090
|
"button",
|
|
114057
114091
|
{
|
|
114058
114092
|
className: "bg-blue-500 hover:bg-blue-700 text-white font-bold py-1 px-2 rounded text-sm",
|
|
@@ -114075,7 +114109,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114075
114109
|
activePropertyLabel: selectedAiApprovalProperty ? getFieldTitle(selectedAiApprovalProperty) : void 0,
|
|
114076
114110
|
remainingEntityCount: pendingOtherAiApprovalEntities.length,
|
|
114077
114111
|
remainingFieldCount: pendingOtherAiApprovalFieldCount,
|
|
114078
|
-
readonly: (
|
|
114112
|
+
readonly: (_d = state.configuration) == null ? void 0 : _d.readonly,
|
|
114079
114113
|
canGoPrevious: selectedAiApprovalIndex > 0,
|
|
114080
114114
|
canGoNext: selectedAiApprovalIndex < pendingAiApprovals.length - 1,
|
|
114081
114115
|
onPrevious: () => navigateToAiApproval(selectedAiApprovalIndex - 1),
|
|
@@ -114085,13 +114119,13 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114085
114119
|
onReviewNextEntity: handleReviewNextAiApprovalEntity
|
|
114086
114120
|
}
|
|
114087
114121
|
),
|
|
114088
|
-
!renderTabs && (((
|
|
114122
|
+
!renderTabs && (((_e2 = state.configuration) == null ? void 0 : _e2.tabLocation) === "left" || ((_f = state.configuration) == null ? void 0 : _f.tabLocation) === "right" ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: contentContainerRef, className: "min-h-0 overflow-hidden", style: { height: scrollViewportHeight ? `${scrollViewportHeight}px` : "calc(100vh - 200px)" }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Ve, { vertical: false, proportionalLayout: false, separator: !iconView, onChange: (sizes2) => {
|
|
114089
114123
|
var _a3;
|
|
114090
114124
|
const w2 = ((_a3 = state.configuration) == null ? void 0 : _a3.tabLocation) === "left" ? sizes2[0] : sizes2[1];
|
|
114091
114125
|
setTabPaneWidth(w2);
|
|
114092
114126
|
persistTabWidth(w2);
|
|
114093
114127
|
}, children: [
|
|
114094
|
-
((
|
|
114128
|
+
((_g = state.configuration) == null ? void 0 : _g.tabLocation) === "left" && /* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { minSize: iconView ? ICON_TAB_PANE_WIDTH : MIN_LABEL_TAB_PANE_WIDTH, maxSize: iconView ? ICON_TAB_PANE_WIDTH : MAX_LABEL_TAB_PANE_WIDTH, preferredSize: iconView ? ICON_TAB_PANE_WIDTH : tabPaneWidth, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative group h-full border-r border-slate-200", children: [
|
|
114095
114129
|
renderProfileActionRail(),
|
|
114096
114130
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute right-0 top-0 bottom-0 w-1 bg-slate-300 opacity-0 group-hover:opacity-100" })
|
|
114097
114131
|
] }) }),
|
|
@@ -114114,7 +114148,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114114
114148
|
)
|
|
114115
114149
|
}
|
|
114116
114150
|
),
|
|
114117
|
-
!((
|
|
114151
|
+
!((_h = state.configuration) == null ? void 0 : _h.readonly) && missingRequiredData && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114118
114152
|
"button",
|
|
114119
114153
|
{
|
|
114120
114154
|
className: "bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded",
|
|
@@ -114123,7 +114157,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114123
114157
|
}
|
|
114124
114158
|
)
|
|
114125
114159
|
] }),
|
|
114126
|
-
!shouldRenderCoreField("@id") && !((
|
|
114160
|
+
!shouldRenderCoreField("@id") && !((_i = state.configuration) == null ? void 0 : _i.readonly) && missingRequiredData && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row place-content-between my-2 p-2", children: [
|
|
114127
114161
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-grow" }),
|
|
114128
114162
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114129
114163
|
"button",
|
|
@@ -114201,11 +114235,11 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114201
114235
|
return null;
|
|
114202
114236
|
})
|
|
114203
114237
|
] }) }),
|
|
114204
|
-
((
|
|
114238
|
+
((_j = state.configuration) == null ? void 0 : _j.tabLocation) === "right" && /* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { minSize: iconView ? ICON_TAB_PANE_WIDTH : MIN_LABEL_TAB_PANE_WIDTH, maxSize: iconView ? ICON_TAB_PANE_WIDTH : MAX_LABEL_TAB_PANE_WIDTH, preferredSize: iconView ? ICON_TAB_PANE_WIDTH : tabPaneWidth, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative group h-full border-l border-slate-200", children: [
|
|
114205
114239
|
renderProfileActionRail(),
|
|
114206
114240
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute left-0 top-0 bottom-0 w-1 bg-slate-300 opacity-0 group-hover:opacity-100" })
|
|
114207
114241
|
] }) })
|
|
114208
|
-
] }, `untabbed-${(
|
|
114242
|
+
] }, `untabbed-${(_k = state.configuration) == null ? void 0 : _k.tabLocation}-${iconView ? "icon" : "label"}`) }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: contentContainerRef, className: "flex min-h-0 overflow-hidden", style: {
|
|
114209
114243
|
flexDirection: "column",
|
|
114210
114244
|
height: scrollViewportHeight ? `${scrollViewportHeight}px` : "calc(100vh - 200px)"
|
|
114211
114245
|
}, children: [
|
|
@@ -114215,7 +114249,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114215
114249
|
tabPosition: "top",
|
|
114216
114250
|
items: [
|
|
114217
114251
|
toggleViewTabItem,
|
|
114218
|
-
addProfileTabItem
|
|
114252
|
+
...canAddProfile ? [addProfileTabItem] : []
|
|
114219
114253
|
],
|
|
114220
114254
|
style: { width: "100%" },
|
|
114221
114255
|
tabBarStyle: { width: "100%" }
|
|
@@ -114240,7 +114274,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114240
114274
|
)
|
|
114241
114275
|
}
|
|
114242
114276
|
),
|
|
114243
|
-
!((
|
|
114277
|
+
!((_l = state.configuration) == null ? void 0 : _l.readonly) && missingRequiredData && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114244
114278
|
"button",
|
|
114245
114279
|
{
|
|
114246
114280
|
className: "bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded",
|
|
@@ -114249,7 +114283,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114249
114283
|
}
|
|
114250
114284
|
)
|
|
114251
114285
|
] }),
|
|
114252
|
-
!shouldRenderCoreField("@id") && !((
|
|
114286
|
+
!shouldRenderCoreField("@id") && !((_m = state.configuration) == null ? void 0 : _m.readonly) && missingRequiredData && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row place-content-between my-2 p-2", children: [
|
|
114253
114287
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-grow" }),
|
|
114254
114288
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114255
114289
|
"button",
|
|
@@ -114340,7 +114374,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114340
114374
|
] }) }),
|
|
114341
114375
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} h-full overflow-y-auto scroll-smooth min-h-0`, children: [
|
|
114342
114376
|
renderQuickSettingsHeader(),
|
|
114343
|
-
!((
|
|
114377
|
+
!((_n = state.configuration) == null ? void 0 : _n.readonly) && ((_o = tabs.find((t22) => t22.name === activeTab)) == null ? void 0 : _o.missingRequiredData) && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-red-600 float-right mb-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114344
114378
|
"button",
|
|
114345
114379
|
{
|
|
114346
114380
|
className: "bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded text-sm",
|
|
@@ -114392,7 +114426,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114392
114426
|
)
|
|
114393
114427
|
}
|
|
114394
114428
|
),
|
|
114395
|
-
(
|
|
114429
|
+
(_p = tabs.find((tab) => tab.name === "about")) == null ? void 0 : _p.inputs.map((input) => {
|
|
114396
114430
|
if (!["@id", "@type", "name", "@reverse"].includes(input.name) && shouldRenderField(input.name, input.label)) {
|
|
114397
114431
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114398
114432
|
"div",
|
|
@@ -114477,7 +114511,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
114477
114511
|
return null;
|
|
114478
114512
|
})
|
|
114479
114513
|
] }) })
|
|
114480
|
-
] }, `tabbed-${(
|
|
114514
|
+
] }, `tabbed-${(_q = state.configuration) == null ? void 0 : _q.tabLocation}-${iconView ? "icon" : "label"}`) })
|
|
114481
114515
|
] }),
|
|
114482
114516
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
114483
114517
|
Drawer2,
|
|
@@ -121750,7 +121784,7 @@ const en = {
|
|
|
121750
121784
|
translation: {
|
|
121751
121785
|
hello_one: "hello world",
|
|
121752
121786
|
hello_other: "hello worlds",
|
|
121753
|
-
// RenderControls.
|
|
121787
|
+
// RenderControls.tsx
|
|
121754
121788
|
root_dataset_label: "Root dataset",
|
|
121755
121789
|
add_label: "Add",
|
|
121756
121790
|
edit_context_label: "Edit context",
|
|
@@ -121766,56 +121800,57 @@ const en = {
|
|
|
121766
121800
|
edit_context: "Edit Context",
|
|
121767
121801
|
preview_crate: "Preview Crate",
|
|
121768
121802
|
browse_entities: "Browse entities",
|
|
121769
|
-
// DialogAddProperty.
|
|
121803
|
+
// DialogAddProperty.tsx
|
|
121770
121804
|
filter_attribute_set: "Filter the attribute set",
|
|
121771
|
-
// DialogEditContext.
|
|
121805
|
+
// DialogEditContext.tsx
|
|
121772
121806
|
save_label: "Save",
|
|
121773
|
-
// DialogPreviewCrate.
|
|
121807
|
+
// DialogPreviewCrate.tsx
|
|
121774
121808
|
preview_loading: "loading ...",
|
|
121775
|
-
// DialogBrowseEntities.
|
|
121809
|
+
// DialogBrowseEntities.tsx
|
|
121776
121810
|
search_for_connection: "Search for a connection",
|
|
121777
121811
|
filter_by_type: "Filter by type",
|
|
121778
|
-
// DialogSaveCrateAsTemplate.
|
|
121812
|
+
// DialogSaveCrateAsTemplate.tsx
|
|
121779
121813
|
save_template_prompt: "Save this crate as a template for re-use",
|
|
121780
121814
|
provide_name_for_template: "provide a name for the crate template",
|
|
121781
|
-
//
|
|
121815
|
+
// EntityName.tsx
|
|
121782
121816
|
name_field_label: "Name",
|
|
121783
121817
|
name_field_help: "A short, descriptive name for this item.",
|
|
121784
|
-
|
|
121818
|
+
type_field_label: "Type",
|
|
121819
|
+
// Add.tsx
|
|
121785
121820
|
associate_existing_prompt: "Associate an existing '{{addType}}' (lookup by identifier or name) or create a new '{{addType}}' by typing a name for it.",
|
|
121786
121821
|
associate_any_prompt: "Associate any entity (lookup by identifier or name).",
|
|
121787
121822
|
add_text: "Add text",
|
|
121788
|
-
// Text.
|
|
121823
|
+
// Text.tsx
|
|
121789
121824
|
invalid_type_for_text: "The type '{{type}}' is not valid for this component. It can only be 'text' or 'textarea'",
|
|
121790
121825
|
text_constraints_error_message: "The specified value does not meet the following constraints: {{- value}}, or it is considered invalid.",
|
|
121791
|
-
// Date.
|
|
121826
|
+
// Date.tsx
|
|
121792
121827
|
pick_a_date: "Pick a date",
|
|
121793
121828
|
invalid_date_value: "The supplied date '{{value}}' is invalid. Date format is: YYYY-MM-DD or an ISO String. e.g. 2021-03-22 or 2022-09-28T02:20:56.521Z.",
|
|
121794
|
-
// DateTime.
|
|
121829
|
+
// DateTime.tsx
|
|
121795
121830
|
pick_a_datetime: "Pick a date and time",
|
|
121796
121831
|
invalid_datetime_value: "The supplied date/time '{{value}}' is invalid. Date/Time format is: YYYY-MM-DD HH:mm:ss or an ISO String. e.g. 2021-03-22 03:23:00 or 2022-09-28T02:20:56.521Z.",
|
|
121797
|
-
// Time.
|
|
121832
|
+
// Time.tsx
|
|
121798
121833
|
provide_time: "Please provide a time.",
|
|
121799
121834
|
invalid_time_value: "The supplied time '{{value}}' is invalid. Time format is: HH:mm::ss. e.g. 09:03:59",
|
|
121800
|
-
// Number.
|
|
121835
|
+
// Number.tsx
|
|
121801
121836
|
invalid_number_value: "The supplied number '{{value}}' is invalid. The value must be a valid number passed in as a String or a Number.",
|
|
121802
121837
|
number_constraints_error_message: "The specified number does not meet the following constraints: {{value}}",
|
|
121803
|
-
// Select.
|
|
121838
|
+
// Select.tsx
|
|
121804
121839
|
select: "Select",
|
|
121805
121840
|
invalid_select_value: "The definition provided to this component has values of the wrong from. It can only be an array of strings",
|
|
121806
|
-
// Url.
|
|
121841
|
+
// Url.tsx
|
|
121807
121842
|
invalid_url_value: "The entry needs to be a valid url. The accepted protocols are: http, https, ftp, ftps and arcp.",
|
|
121808
|
-
// Boolean.
|
|
121843
|
+
// Boolean.tsx
|
|
121809
121844
|
true_label: "True",
|
|
121810
121845
|
false_label: "False",
|
|
121811
|
-
// SelectUrl.
|
|
121846
|
+
// SelectUrl.tsx
|
|
121812
121847
|
// select: as above
|
|
121813
121848
|
invalid_selecturl_value: "The value '{{value}}' provided to this component is of the wrong from. It can only be a valid URL.",
|
|
121814
121849
|
invalid_selecturl_values: "The definition provided to this component has values of the wrong from. It can only be an array of strings which are each valid URLs.",
|
|
121815
|
-
// SelectObject.
|
|
121850
|
+
// SelectObject.tsx
|
|
121816
121851
|
// select: as above
|
|
121817
121852
|
invalid_selectobject_values: "The definition provided to this component has values of the wrong from. It can only be an array of JSON-LD objects and each object, at a minimum, must have '@id', '@type' and 'name' defined.",
|
|
121818
|
-
// Geo.
|
|
121853
|
+
// Geo.tsx
|
|
121819
121854
|
define_location: "Define a location by selecting on the map",
|
|
121820
121855
|
center_map: "center map",
|
|
121821
121856
|
select_region: "select region",
|
|
@@ -121826,9 +121861,9 @@ const en = {
|
|
|
121826
121861
|
provide_name_for_location: "Please provide a name for this location - optional",
|
|
121827
121862
|
provide_name_for_location_error: "You need to provide a name for this location",
|
|
121828
121863
|
select_existing_location: "Select a location that has already been defined",
|
|
121829
|
-
// Value.
|
|
121864
|
+
// Value.tsx
|
|
121830
121865
|
invalid_value_value: "The supplied value '{{value}}' is invalid. It can only be a string.",
|
|
121831
|
-
// AutoComplete.
|
|
121866
|
+
// AutoComplete.tsx
|
|
121832
121867
|
select_existing_or_create_new: "select an existing entity or create a new one",
|
|
121833
121868
|
create_new_of_type: "Create new {{type}}",
|
|
121834
121869
|
external_lookup_timeout_error: "External Lookup Timeout",
|
|
@@ -121839,7 +121874,7 @@ const en = {
|
|
|
121839
121874
|
associate_user_created_entity: "Associate a user created entity",
|
|
121840
121875
|
associate_from_datapack: "Associate a verified entity from a datapack",
|
|
121841
121876
|
create_new_entity: "Create new entity",
|
|
121842
|
-
// AddControl.
|
|
121877
|
+
// AddControl.tsx
|
|
121843
121878
|
select_a_type_to_add: "Select a type to add",
|
|
121844
121879
|
// Shell2.tsx
|
|
121845
121880
|
add_profile_button_tooltip: "Add a new profile",
|
|
@@ -121847,21 +121882,120 @@ const en = {
|
|
|
121847
121882
|
switch_to_label_view: "Switch to default view",
|
|
121848
121883
|
// EntityType.tsx
|
|
121849
121884
|
select_a_class_to_add: "Select a class to add",
|
|
121850
|
-
// PaginateLinkedEntities.
|
|
121885
|
+
// PaginateLinkedEntities.tsx
|
|
121851
121886
|
filter_the_entities: "Filter the entities",
|
|
121852
121887
|
pagination_total: "Total: {{total}}",
|
|
121853
|
-
//
|
|
121888
|
+
// EntityProperty.tsx
|
|
121854
121889
|
not_defined_in_profile: "not defined in profile",
|
|
121855
|
-
// RenderReverseConnections.
|
|
121890
|
+
// RenderReverseConnections.tsx
|
|
121856
121891
|
// search_for_connection: defined before
|
|
121857
|
-
links_to_this_entity: "Links to this entity:"
|
|
121892
|
+
links_to_this_entity: "Links to this entity:",
|
|
121893
|
+
// AiEditedFieldBadge.tsx
|
|
121894
|
+
ai_edited_by_ai: "Edited by AI",
|
|
121895
|
+
ai_deleted_by_ai: "Deleted by AI",
|
|
121896
|
+
// AiApprovalStepperHeader.tsx
|
|
121897
|
+
ai_field_one: "field",
|
|
121898
|
+
ai_field_other: "fields",
|
|
121899
|
+
ai_entity_one: "entity",
|
|
121900
|
+
ai_entity_other: "entities",
|
|
121901
|
+
ai_changes_remaining_aria: "AI changes remaining",
|
|
121902
|
+
ai_remaining_review_message_one: "{{fieldCount}} AI field still needs review in {{entityCount}} other {{entityLabel}}",
|
|
121903
|
+
ai_remaining_review_message_other: "{{fieldCount}} AI fields still need review in {{entityCount}} other {{entityLabel}}",
|
|
121904
|
+
ai_review_next: "Review next",
|
|
121905
|
+
ai_changes_need_review: "AI changes need review",
|
|
121906
|
+
ai_changes_need_review_property: "AI changes need review: {{property}}",
|
|
121907
|
+
ai_change_review_aria: "AI change review",
|
|
121908
|
+
ai_review_next_entity_tooltip: "Review the next entity with pending AI changes",
|
|
121909
|
+
ai_no_other_entities_need_review: "No other entities need AI review",
|
|
121910
|
+
ai_accept_all_tooltip: "Accept every pending AI change in this entity",
|
|
121911
|
+
ai_accept_all: "Accept all",
|
|
121912
|
+
ai_reject_all_tooltip: "Restore previous values for every pending AI change in this entity",
|
|
121913
|
+
ai_reject_all: "Reject all",
|
|
121914
|
+
ai_pending_field_navigation_aria: "Pending AI field navigation",
|
|
121915
|
+
ai_previous_pending_field: "Previous pending field",
|
|
121916
|
+
ai_previous_pending_field_aria: "Previous pending AI field",
|
|
121917
|
+
ai_next_pending_field: "Next pending field",
|
|
121918
|
+
ai_next_pending_field_aria: "Next pending AI field",
|
|
121919
|
+
// AiEntityReviewSummary.tsx
|
|
121920
|
+
ai_fields_to_review_one: "{{count}} field to review",
|
|
121921
|
+
ai_fields_to_review_other: "{{count}} fields to review",
|
|
121922
|
+
ai_show_entity_diff: "Show entity diff",
|
|
121923
|
+
ai_show_entity_diff_aria: "Show AI entity diff",
|
|
121924
|
+
ai_review_entity: "Review entity",
|
|
121925
|
+
// AiEntityDiffView.tsx
|
|
121926
|
+
ai_empty_value: "empty",
|
|
121927
|
+
ai_deleted_entity_title: "AI deleted entity: {{entityId}}",
|
|
121928
|
+
ai_unlinked_entity_title: "AI unlinked entity: {{entityId}}",
|
|
121929
|
+
ai_edited_entity_title: "AI edited entity: {{entityId}}",
|
|
121930
|
+
ai_hide_entity_diff: "Hide entity diff",
|
|
121931
|
+
ai_hide_entity_diff_aria: "Hide AI entity diff",
|
|
121932
|
+
ai_approve_deletion_tooltip: "Approve this AI deletion",
|
|
121933
|
+
ai_approve_unlink_tooltip: "Approve this AI unlink",
|
|
121934
|
+
ai_accept_entity_edits_tooltip: "Accept every AI edit for this entity",
|
|
121935
|
+
ai_delete_entity: "Delete entity",
|
|
121936
|
+
ai_unlink_entity: "Unlink entity",
|
|
121937
|
+
ai_accept_edit: "Accept edit",
|
|
121938
|
+
ai_restore_deleted_entity_tooltip: "Restore this entity and mark the deletion reviewed",
|
|
121939
|
+
ai_restore_link_tooltip: "Restore this link and mark the unlink reviewed",
|
|
121940
|
+
ai_restore_entity_values_tooltip: "Restore previous values for this entity",
|
|
121941
|
+
ai_keep_entity: "Keep entity",
|
|
121942
|
+
ai_restore_link: "Restore link",
|
|
121943
|
+
ai_reject_edit: "Reject edit",
|
|
121944
|
+
// AiFieldDiffView.tsx
|
|
121945
|
+
ai_field_diff_aria: "AI field diff",
|
|
121946
|
+
ai_proposed_deletion: "Proposed deletion",
|
|
121947
|
+
ai_proposed_change: "Proposed change",
|
|
121948
|
+
ai_edit_chip: "AI edit",
|
|
121949
|
+
// AI review controls
|
|
121950
|
+
ai_delete_badge: "AI delete",
|
|
121951
|
+
ai_suggestion_badge: "AI suggestion",
|
|
121952
|
+
ai_unlink_badge: "AI unlink",
|
|
121953
|
+
ai_hide_diff: "Hide diff",
|
|
121954
|
+
ai_show_diff: "Show diff",
|
|
121955
|
+
ai_hide_ai_diff_aria: "Hide AI diff",
|
|
121956
|
+
ai_show_ai_diff_aria: "Show AI diff",
|
|
121957
|
+
ai_approve_suggested_value_tooltip: "Approve this AI-suggested value",
|
|
121958
|
+
ai_restore_previous_value_tooltip: "Restore the previous value and mark this suggestion reviewed",
|
|
121959
|
+
ai_delete: "Delete",
|
|
121960
|
+
ai_accept: "Accept",
|
|
121961
|
+
ai_restore: "Restore",
|
|
121962
|
+
ai_reject: "Reject",
|
|
121963
|
+
// DeletedLinkedEntityCard.tsx
|
|
121964
|
+
ai_fields_can_be_restored_one: "{{count}} field can be restored.",
|
|
121965
|
+
ai_fields_can_be_restored_other: "{{count}} fields can be restored.",
|
|
121966
|
+
ai_hide_deleted_fields: "Hide deleted fields",
|
|
121967
|
+
ai_show_deleted_fields: "Show deleted fields",
|
|
121968
|
+
ai_hide_deleted_fields_aria: "Hide deleted AI fields",
|
|
121969
|
+
ai_show_deleted_fields_aria: "Show deleted AI fields",
|
|
121970
|
+
// UnlinkedLinkedEntityCard.tsx
|
|
121971
|
+
ai_diff_label_entity: "entity",
|
|
121972
|
+
ai_diff_label_linked_from: "linked from",
|
|
121973
|
+
ai_hide_unlink_diff: "Hide unlink diff",
|
|
121974
|
+
ai_show_unlink_diff: "Show unlink diff",
|
|
121975
|
+
ai_hide_unlink_diff_aria: "Hide AI unlink diff",
|
|
121976
|
+
ai_show_unlink_diff_aria: "Show AI unlink diff",
|
|
121977
|
+
// LinkedEntityCard.tsx / DialogBrowseEntities.tsx
|
|
121978
|
+
ai_entity_was_added_by_ai: "Entity was added by AI",
|
|
121979
|
+
// QuickSettingsHeader.tsx
|
|
121980
|
+
quick_filter_settings_aria: "Quick filter settings",
|
|
121981
|
+
field_display_settings_aria: "Field display settings",
|
|
121982
|
+
hide_field_help: "Hide field help",
|
|
121983
|
+
show_field_help: "Show field help",
|
|
121984
|
+
show_empty_fields: "Show fields with no value",
|
|
121985
|
+
hide_empty_fields: "Hide fields with no value",
|
|
121986
|
+
show_all_fields: "Show all fields",
|
|
121987
|
+
show_ai_edited_fields: "Show AI-edited fields",
|
|
121988
|
+
filter_fields_by_name_or_value: "Filter fields by name or value",
|
|
121989
|
+
clear_field_filter: "Clear field filter",
|
|
121990
|
+
// EntityId.tsx
|
|
121991
|
+
open_in_new_tab: "Open in new tab"
|
|
121858
121992
|
}
|
|
121859
121993
|
};
|
|
121860
121994
|
const hu = {
|
|
121861
121995
|
translation: {
|
|
121862
121996
|
hello_one: "szia világ",
|
|
121863
121997
|
hello_other: "sziasztok világok",
|
|
121864
|
-
// RenderControls.
|
|
121998
|
+
// RenderControls.tsx
|
|
121865
121999
|
root_dataset_label: "Gyökér adatcsomag",
|
|
121866
122000
|
add_label: "Új elem",
|
|
121867
122001
|
edit_context_label: "Kontextus szerkesztése",
|
|
@@ -121877,56 +122011,57 @@ const hu = {
|
|
|
121877
122011
|
edit_context: "Kontextus szerkesztése",
|
|
121878
122012
|
preview_crate: "Csomag előnézete",
|
|
121879
122013
|
browse_entities: "Entitások böngészése",
|
|
121880
|
-
// DialogAddProperty.
|
|
122014
|
+
// DialogAddProperty.tsx
|
|
121881
122015
|
filter_attribute_set: "Attribútumok szűrése",
|
|
121882
|
-
// DialogEditContext.
|
|
122016
|
+
// DialogEditContext.tsx
|
|
121883
122017
|
save_label: "Mentés",
|
|
121884
|
-
// DialogPreviewCrate.
|
|
122018
|
+
// DialogPreviewCrate.tsx
|
|
121885
122019
|
preview_loading: "betöltés ...",
|
|
121886
|
-
// DialogBrowseEntities.
|
|
122020
|
+
// DialogBrowseEntities.tsx
|
|
121887
122021
|
search_for_connection: "Kapcsolt entitás keresése",
|
|
121888
122022
|
filter_by_type: "Típus szerinti szűrés",
|
|
121889
|
-
// DialogSaveCrateAsTemplate.
|
|
122023
|
+
// DialogSaveCrateAsTemplate.tsx
|
|
121890
122024
|
save_template_prompt: "Csomag mentése mintaként",
|
|
121891
122025
|
provide_name_for_template: "minta neve",
|
|
121892
|
-
//
|
|
122026
|
+
// EntityName.tsx
|
|
121893
122027
|
name_field_label: "Név",
|
|
121894
122028
|
name_field_help: "Az entitás rövid, leíró neve",
|
|
121895
|
-
|
|
122029
|
+
type_field_label: "Típus",
|
|
122030
|
+
// Add.tsx
|
|
121896
122031
|
associate_existing_prompt: "Egy létező '{{addType}}' társítása (név vagy azonosító alapú kereséssel) vagy egy új '{{addType}}' létrehozása a név megadásával",
|
|
121897
122032
|
associate_any_prompt: "Bármely entitás hozzárendelése (azonosító vagy név alapján)",
|
|
121898
122033
|
add_text: "Szöveg hozzáadása",
|
|
121899
|
-
// Text.
|
|
122034
|
+
// Text.tsx
|
|
121900
122035
|
invalid_type_for_text: "'{{type}}' típus nem használható ezzel a komponenssel. A típus csak 'text' vagy 'textarea' lehet",
|
|
121901
122036
|
text_constraints_error_message: "A megadott érték nem felel meg a következő megszorításoknak: {{- value}}, vagy érvénytelen.",
|
|
121902
|
-
// Date.
|
|
122037
|
+
// Date.tsx
|
|
121903
122038
|
pick_a_date: "Válassz dátumot!",
|
|
121904
122039
|
invalid_date_value: "A megadott dátum '{{value}}' nem megfelelő. Az elvárt dátum formátum: YYYY-MM-DD vagy egy ISO dátum, pl. 2021-03-22 or 2022-09-28T02:20:56.521Z.",
|
|
121905
|
-
// DateTime.
|
|
122040
|
+
// DateTime.tsx
|
|
121906
122041
|
pick_a_datetime: "Válassz dátumot és időt!",
|
|
121907
122042
|
invalid_datetime_value: "A megadott dátum/idő '{{value}}' nem megfelelő. Az elvárt dátum/idő formátum: YYYY-MM-DD HH:mm:ss vagy egy ISO dátum, pl. 2021-03-22 03:23:00 or 2022-09-28T02:20:56.521Z.",
|
|
121908
|
-
// Time.
|
|
122043
|
+
// Time.tsx
|
|
121909
122044
|
provide_time: "Add meg az időt!",
|
|
121910
122045
|
invalid_time_value: "A megadott érték '{{value}}' nem megfelelő. Az elvárt idő formátum: HH:mm::ss. pl. 09:03:59",
|
|
121911
|
-
// Number.
|
|
122046
|
+
// Number.tsx
|
|
121912
122047
|
invalid_number_value: "A megadott érték '{{value}}' nem megfelelő. Az értéket String vagy Number típusként kell megadni",
|
|
121913
122048
|
number_constraints_error_message: "A megadott szám nem felel meg a következő megszorításoknak: {{value}}",
|
|
121914
|
-
// Select.
|
|
122049
|
+
// Select.tsx
|
|
121915
122050
|
select: "Válassz!",
|
|
121916
122051
|
invalid_select_value: "A komponensnek adott definíció értékei nem megfelelő formátumban vannak. Csak karakterláncokból álló tömb lehet.",
|
|
121917
|
-
// Url.
|
|
122052
|
+
// Url.tsx
|
|
121918
122053
|
invalid_url_value: "A bejegyzésnek érvényes URL-nek kell lennie. Az elfogadott protokollok: http, https, ftp, ftps és arcp.",
|
|
121919
|
-
// Boolean.
|
|
122054
|
+
// Boolean.tsx
|
|
121920
122055
|
true_label: "Igaz",
|
|
121921
122056
|
false_label: "Hamis",
|
|
121922
|
-
// SelectUrl.
|
|
122057
|
+
// SelectUrl.tsx
|
|
121923
122058
|
// select: as above
|
|
121924
122059
|
invalid_selecturl_value: "A megadott '{{value}}' érték nem megfelelő formátumú. Csak érvényes URL lehet.",
|
|
121925
122060
|
invalid_selecturl_values: "A komponensnek adott definíció értékei nem megfelelő formátumban vannak. Csak olyan karakterláncokból álló tömb lehet, amelyek mindegyike érvényes URL.",
|
|
121926
|
-
// SelectObject.
|
|
122061
|
+
// SelectObject.tsx
|
|
121927
122062
|
// select: as above
|
|
121928
122063
|
invalid_selectobject_values: "A komponensnek adott definíció értékei nem megfelelő formátumban vannak. Csak JSON-LD objektumokból álló tömb lehet, és minden objektumnak legalább '@id', '@type' és 'name' meghatározással kell rendelkeznie.",
|
|
121929
|
-
// Geo.
|
|
122064
|
+
// Geo.tsx
|
|
121930
122065
|
define_location: "Határozz meg egy helyet a térképen történő kiválasztással!",
|
|
121931
122066
|
center_map: "térkép középre állítása",
|
|
121932
122067
|
select_region: "régió kiválasztása",
|
|
@@ -121937,9 +122072,9 @@ const hu = {
|
|
|
121937
122072
|
provide_name_for_location: "Adj nevet ennek a helynek!",
|
|
121938
122073
|
provide_name_for_location_error: "A hely nevének megadása kötelező!",
|
|
121939
122074
|
select_existing_location: "Válassz egy már meghatározott helyet a csomagban!",
|
|
121940
|
-
// Value.
|
|
122075
|
+
// Value.tsx
|
|
121941
122076
|
invalid_value_value: "A megadott '{{value}}' érték érvénytelen. Csak karakterlánc lehet.",
|
|
121942
|
-
// AutoComplete.
|
|
122077
|
+
// AutoComplete.tsx
|
|
121943
122078
|
select_existing_or_create_new: "válassz egy meglévő entitást vagy hozz létre egy újat",
|
|
121944
122079
|
create_new_of_type: "Új {{type}} létrehozása",
|
|
121945
122080
|
external_lookup_timeout_error: "Külső lekérdezési időtúllépés",
|
|
@@ -121950,7 +122085,7 @@ const hu = {
|
|
|
121950
122085
|
associate_user_created_entity: "Kapcsolj egy felhasználó által létrehozott entitást",
|
|
121951
122086
|
associate_from_datapack: "Kapcsolj egy ellenőrzött entitást egy adatcsomagból",
|
|
121952
122087
|
create_new_entity: "Új entitás létrehozása",
|
|
121953
|
-
// AddControl.
|
|
122088
|
+
// AddControl.tsx
|
|
121954
122089
|
select_a_type_to_add: "Válassz hozzáadandó típust",
|
|
121955
122090
|
// Shell2.tsx
|
|
121956
122091
|
add_profile_button_tooltip: "Új profil hozzáadása",
|
|
@@ -121958,14 +122093,113 @@ const hu = {
|
|
|
121958
122093
|
switch_to_label_view: "Alap nézetre váltás",
|
|
121959
122094
|
// EntityType.tsx
|
|
121960
122095
|
select_a_class_to_add: "Válassz hozzáadandó osztályt",
|
|
121961
|
-
// PaginateLinkedEntities.
|
|
122096
|
+
// PaginateLinkedEntities.tsx
|
|
121962
122097
|
filter_the_entities: "Entitások szűrése",
|
|
121963
122098
|
pagination_total: "Összesen: {{total}}",
|
|
121964
|
-
//
|
|
122099
|
+
// EntityProperty.tsx
|
|
121965
122100
|
not_defined_in_profile: "nincs definiálva a profilban",
|
|
121966
|
-
// RenderReverseConnections.
|
|
122101
|
+
// RenderReverseConnections.tsx
|
|
121967
122102
|
// search_for_connection: defined before
|
|
121968
|
-
links_to_this_entity: "Entitásra mutató hivatkozások:"
|
|
122103
|
+
links_to_this_entity: "Entitásra mutató hivatkozások:",
|
|
122104
|
+
// AiEditedFieldBadge.tsx
|
|
122105
|
+
ai_edited_by_ai: "AI által szerkesztve",
|
|
122106
|
+
ai_deleted_by_ai: "AI által törölve",
|
|
122107
|
+
// AiApprovalStepperHeader.tsx
|
|
122108
|
+
ai_field_one: "mező",
|
|
122109
|
+
ai_field_other: "mező",
|
|
122110
|
+
ai_entity_one: "entitás",
|
|
122111
|
+
ai_entity_other: "entitás",
|
|
122112
|
+
ai_changes_remaining_aria: "Fennmaradó AI módosítások",
|
|
122113
|
+
ai_remaining_review_message_one: "{{fieldCount}} AI mező még ellenőrzésre vár {{entityCount}} másik {{entityLabel}} esetén",
|
|
122114
|
+
ai_remaining_review_message_other: "{{fieldCount}} AI mező még ellenőrzésre vár {{entityCount}} másik {{entityLabel}} esetén",
|
|
122115
|
+
ai_review_next: "Következő ellenőrzése",
|
|
122116
|
+
ai_changes_need_review: "AI módosítások ellenőrzésre várnak",
|
|
122117
|
+
ai_changes_need_review_property: "AI módosítások ellenőrzésre várnak: {{property}}",
|
|
122118
|
+
ai_change_review_aria: "AI módosítás ellenőrzése",
|
|
122119
|
+
ai_review_next_entity_tooltip: "Következő, AI módosítással rendelkező entitás ellenőrzése",
|
|
122120
|
+
ai_no_other_entities_need_review: "Nincs több AI ellenőrzésre váró entitás",
|
|
122121
|
+
ai_accept_all_tooltip: "Az entitás összes függőben lévő AI módosításának elfogadása",
|
|
122122
|
+
ai_accept_all: "Összes elfogadása",
|
|
122123
|
+
ai_reject_all_tooltip: "Az entitás összes függőben lévő AI módosításának visszaállítása az előző értékre",
|
|
122124
|
+
ai_reject_all: "Összes elutasítása",
|
|
122125
|
+
ai_pending_field_navigation_aria: "Függőben lévő AI mezők navigációja",
|
|
122126
|
+
ai_previous_pending_field: "Előző függő mező",
|
|
122127
|
+
ai_previous_pending_field_aria: "Előző függőben lévő AI mező",
|
|
122128
|
+
ai_next_pending_field: "Következő függő mező",
|
|
122129
|
+
ai_next_pending_field_aria: "Következő függőben lévő AI mező",
|
|
122130
|
+
// AiEntityReviewSummary.tsx
|
|
122131
|
+
ai_fields_to_review_one: "{{count}} mező ellenőrzésre vár",
|
|
122132
|
+
ai_fields_to_review_other: "{{count}} mező ellenőrzésre vár",
|
|
122133
|
+
ai_show_entity_diff: "Entitás eltéréseinek megjelenítése",
|
|
122134
|
+
ai_show_entity_diff_aria: "AI entitáseltérés megjelenítése",
|
|
122135
|
+
ai_review_entity: "Entitás ellenőrzése",
|
|
122136
|
+
// AiEntityDiffView.tsx
|
|
122137
|
+
ai_empty_value: "üres",
|
|
122138
|
+
ai_deleted_entity_title: "AI által törölt entitás: {{entityId}}",
|
|
122139
|
+
ai_unlinked_entity_title: "AI által leválasztott entitás: {{entityId}}",
|
|
122140
|
+
ai_edited_entity_title: "AI által szerkesztett entitás: {{entityId}}",
|
|
122141
|
+
ai_hide_entity_diff: "Entitáseltérés elrejtése",
|
|
122142
|
+
ai_hide_entity_diff_aria: "AI entitáseltérés elrejtése",
|
|
122143
|
+
ai_approve_deletion_tooltip: "AI törlés jóváhagyása",
|
|
122144
|
+
ai_approve_unlink_tooltip: "AI leválasztás jóváhagyása",
|
|
122145
|
+
ai_accept_entity_edits_tooltip: "Az entitás összes AI szerkesztésének elfogadása",
|
|
122146
|
+
ai_delete_entity: "Entitás törlése",
|
|
122147
|
+
ai_unlink_entity: "Entitás leválasztása",
|
|
122148
|
+
ai_accept_edit: "Szerkesztés elfogadása",
|
|
122149
|
+
ai_restore_deleted_entity_tooltip: "Entitás visszaállítása és a törlés ellenőrzöttként jelölése",
|
|
122150
|
+
ai_restore_link_tooltip: "Kapcsolat visszaállítása és a leválasztás ellenőrzöttként jelölése",
|
|
122151
|
+
ai_restore_entity_values_tooltip: "Az entitás előző értékeinek visszaállítása",
|
|
122152
|
+
ai_keep_entity: "Entitás megtartása",
|
|
122153
|
+
ai_restore_link: "Kapcsolat visszaállítása",
|
|
122154
|
+
ai_reject_edit: "Szerkesztés elutasítása",
|
|
122155
|
+
// AiFieldDiffView.tsx
|
|
122156
|
+
ai_field_diff_aria: "AI mezőeltérés",
|
|
122157
|
+
ai_proposed_deletion: "Javasolt törlés",
|
|
122158
|
+
ai_proposed_change: "Javasolt módosítás",
|
|
122159
|
+
ai_edit_chip: "AI szerkesztés",
|
|
122160
|
+
// AI review controls
|
|
122161
|
+
ai_delete_badge: "AI törlés",
|
|
122162
|
+
ai_suggestion_badge: "AI javaslat",
|
|
122163
|
+
ai_unlink_badge: "AI leválasztás",
|
|
122164
|
+
ai_hide_diff: "Eltérés elrejtése",
|
|
122165
|
+
ai_show_diff: "Eltérés megjelenítése",
|
|
122166
|
+
ai_hide_ai_diff_aria: "AI eltérés elrejtése",
|
|
122167
|
+
ai_show_ai_diff_aria: "AI eltérés megjelenítése",
|
|
122168
|
+
ai_approve_suggested_value_tooltip: "AI által javasolt érték jóváhagyása",
|
|
122169
|
+
ai_restore_previous_value_tooltip: "Előző érték visszaállítása és a javaslat ellenőrzöttként jelölése",
|
|
122170
|
+
ai_delete: "Törlés",
|
|
122171
|
+
ai_accept: "Elfogadás",
|
|
122172
|
+
ai_restore: "Visszaállítás",
|
|
122173
|
+
ai_reject: "Elutasítás",
|
|
122174
|
+
// DeletedLinkedEntityCard.tsx
|
|
122175
|
+
ai_fields_can_be_restored_one: "{{count}} mező visszaállítható.",
|
|
122176
|
+
ai_fields_can_be_restored_other: "{{count}} mező visszaállítható.",
|
|
122177
|
+
ai_hide_deleted_fields: "Törölt mezők elrejtése",
|
|
122178
|
+
ai_show_deleted_fields: "Törölt mezők megjelenítése",
|
|
122179
|
+
ai_hide_deleted_fields_aria: "Törölt AI mezők elrejtése",
|
|
122180
|
+
ai_show_deleted_fields_aria: "Törölt AI mezők megjelenítése",
|
|
122181
|
+
// UnlinkedLinkedEntityCard.tsx
|
|
122182
|
+
ai_diff_label_entity: "entitás",
|
|
122183
|
+
ai_diff_label_linked_from: "kapcsolva innen",
|
|
122184
|
+
ai_hide_unlink_diff: "Leválasztási eltérés elrejtése",
|
|
122185
|
+
ai_show_unlink_diff: "Leválasztási eltérés megjelenítése",
|
|
122186
|
+
ai_hide_unlink_diff_aria: "AI leválasztási eltérés elrejtése",
|
|
122187
|
+
ai_show_unlink_diff_aria: "AI leválasztási eltérés megjelenítése",
|
|
122188
|
+
// LinkedEntityCard.tsx / DialogBrowseEntities.tsx
|
|
122189
|
+
ai_entity_was_added_by_ai: "Az entitást AI adta hozzá",
|
|
122190
|
+
// QuickSettingsHeader.tsx
|
|
122191
|
+
quick_filter_settings_aria: "Gyors szűrési beállítások",
|
|
122192
|
+
field_display_settings_aria: "Mezőmegjelenítési beállítások",
|
|
122193
|
+
hide_field_help: "Mezősúgó elrejtése",
|
|
122194
|
+
show_field_help: "Mezősúgó megjelenítése",
|
|
122195
|
+
show_empty_fields: "Érték nélküli mezők megjelenítése",
|
|
122196
|
+
hide_empty_fields: "Érték nélküli mezők elrejtése",
|
|
122197
|
+
show_all_fields: "Összes mező megjelenítése",
|
|
122198
|
+
show_ai_edited_fields: "AI által szerkesztett mezők megjelenítése",
|
|
122199
|
+
filter_fields_by_name_or_value: "Mezők szűrése név vagy érték alapján",
|
|
122200
|
+
clear_field_filter: "Mezőszűrő törlése",
|
|
122201
|
+
// EntityId.tsx
|
|
122202
|
+
open_in_new_tab: "Megnyitás új lapon"
|
|
121969
122203
|
}
|
|
121970
122204
|
};
|
|
121971
122205
|
instance.use(initReactI18next).init({
|
|
@@ -122827,7 +123061,7 @@ var EmotionCacheContext = /* @__PURE__ */ React.createContext(
|
|
|
122827
123061
|
}) : null
|
|
122828
123062
|
);
|
|
122829
123063
|
var CacheProvider = EmotionCacheContext.Provider;
|
|
122830
|
-
const version = "0.1.
|
|
123064
|
+
const version = "0.1.33";
|
|
122831
123065
|
const pkg = {
|
|
122832
123066
|
version
|
|
122833
123067
|
};
|
|
@@ -122964,6 +123198,7 @@ function DescriboCrateBuilderInner(props) {
|
|
|
122964
123198
|
enableBrowseEntities = propertyDefinitions.enableBrowseEntities.default,
|
|
122965
123199
|
enableTemplateSave = propertyDefinitions.enableTemplateSave.default,
|
|
122966
123200
|
enableBulkAdd = propertyDefinitions.enableBulkAdd.default,
|
|
123201
|
+
enableProfileActions,
|
|
122967
123202
|
enableReverseLinkBrowser = propertyDefinitions.enableReverseLinkBrowser.default,
|
|
122968
123203
|
enableUrlMarkup = propertyDefinitions.enableUrlMarkup.default,
|
|
122969
123204
|
enableEntityTimestamps = propertyDefinitions.enableEntityTimestamps.default,
|
|
@@ -122975,6 +123210,7 @@ function DescriboCrateBuilderInner(props) {
|
|
|
122975
123210
|
language: language2 = propertyDefinitions.language.default,
|
|
122976
123211
|
resetTabOnEntityChange = false,
|
|
122977
123212
|
resetTabOnProfileChange = false,
|
|
123213
|
+
quickSettingsVisible,
|
|
122978
123214
|
stateScopeKey,
|
|
122979
123215
|
onReady,
|
|
122980
123216
|
onError,
|
|
@@ -122983,6 +123219,7 @@ function DescriboCrateBuilderInner(props) {
|
|
|
122983
123219
|
onSaveCrate,
|
|
122984
123220
|
onSaveRoCrateApproval,
|
|
122985
123221
|
onSaveEntityTemplate,
|
|
123222
|
+
onQuickSettingsVisibleChange,
|
|
122986
123223
|
onAddNewProfileRequest,
|
|
122987
123224
|
onRemoveProfile
|
|
122988
123225
|
} = props;
|
|
@@ -122997,6 +123234,7 @@ function DescriboCrateBuilderInner(props) {
|
|
|
122997
123234
|
const renderEntityRef = useRef(null);
|
|
122998
123235
|
const keys2 = useRef({ cm: 0, pm: 0, lookups: 0 });
|
|
122999
123236
|
const lastHandledEntityIdRef = useRef(void 0);
|
|
123237
|
+
const hasProfileActionHandler = Boolean(onAddNewProfileRequest || onRemoveProfile);
|
|
123000
123238
|
useEffect(() => {
|
|
123001
123239
|
setApprovalState(roCrateApproval);
|
|
123002
123240
|
}, [roCrateApproval]);
|
|
@@ -123045,12 +123283,14 @@ function DescriboCrateBuilderInner(props) {
|
|
|
123045
123283
|
markApprovalEntityApproved
|
|
123046
123284
|
}), [approvalState, markApprovalEntityApproved, markApprovalPropertyApproved]);
|
|
123047
123285
|
const configuration = useMemo$1(() => {
|
|
123286
|
+
const profileActionsEnabled = enableProfileActions ?? hasProfileActionHandler;
|
|
123048
123287
|
const config2 = {
|
|
123049
123288
|
enableContextEditor,
|
|
123050
123289
|
enableCratePreview,
|
|
123051
123290
|
enableBrowseEntities,
|
|
123052
123291
|
enableTemplateSave,
|
|
123053
123292
|
enableBulkAdd,
|
|
123293
|
+
enableProfileActions: profileActionsEnabled,
|
|
123054
123294
|
enableReverseLinkBrowser,
|
|
123055
123295
|
enableUrlMarkup,
|
|
123056
123296
|
enableEntityTimestamps,
|
|
@@ -123078,6 +123318,7 @@ function DescriboCrateBuilderInner(props) {
|
|
|
123078
123318
|
enableBrowseEntities,
|
|
123079
123319
|
enableTemplateSave,
|
|
123080
123320
|
enableBulkAdd,
|
|
123321
|
+
enableProfileActions,
|
|
123081
123322
|
enableReverseLinkBrowser,
|
|
123082
123323
|
enableUrlMarkup,
|
|
123083
123324
|
enableEntityTimestamps,
|
|
@@ -123087,7 +123328,8 @@ function DescriboCrateBuilderInner(props) {
|
|
|
123087
123328
|
tabLocation,
|
|
123088
123329
|
showControls,
|
|
123089
123330
|
language2,
|
|
123090
|
-
lookup
|
|
123331
|
+
lookup,
|
|
123332
|
+
hasProfileActionHandler
|
|
123091
123333
|
]);
|
|
123092
123334
|
const init2 = useCallback(async () => {
|
|
123093
123335
|
var _a2, _b;
|
|
@@ -123245,8 +123487,10 @@ function DescriboCrateBuilderInner(props) {
|
|
|
123245
123487
|
onSaveEntityTemplate: saveEntityAsTemplate,
|
|
123246
123488
|
onWarning: handleWarning,
|
|
123247
123489
|
onError: handleError,
|
|
123248
|
-
|
|
123249
|
-
|
|
123490
|
+
quickSettingsVisible,
|
|
123491
|
+
onQuickSettingsVisibleChange,
|
|
123492
|
+
onAddNewProfileRequest: configuration.enableProfileActions ? handleAddProfileRequest : void 0,
|
|
123493
|
+
onRemoveProfile: configuration.enableProfileActions ? onRemoveProfile : void 0
|
|
123250
123494
|
}
|
|
123251
123495
|
) }) }) }) }) }) }) }),
|
|
123252
123496
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "pointer-events-none fixed bottom-2 right-2 z-50 text-xs text-gray-400", children: [
|