@arpproject/recrate 0.1.32-test2 → 0.1.32-test4

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.
@@ -8,7 +8,7 @@ interface AiEntityDiffRow {
8
8
  interface AiEntityDiffViewProps {
9
9
  entityId: string;
10
10
  rows: AiEntityDiffRow[];
11
- operation?: 'edit' | 'delete';
11
+ operation?: 'edit' | 'delete' | 'unlink';
12
12
  readonly?: boolean;
13
13
  onClose?: () => void;
14
14
  onAccept?: () => void;
@@ -22,6 +22,16 @@ interface EntityPropertyProps {
22
22
  onRestoreAiDeletedEntity?: (entity: any) => void;
23
23
  onAcceptAiEntityEdit?: (entity: any) => void;
24
24
  onRejectAiEntityEdit?: (entity: any) => void;
25
+ onAcceptAiEntityUnlink?: (data: {
26
+ sourceEntityId: string;
27
+ property: string;
28
+ targetEntityId: string;
29
+ }) => void;
30
+ onRejectAiEntityUnlink?: (data: {
31
+ sourceEntityId: string;
32
+ property: string;
33
+ targetEntityId: string;
34
+ }) => void;
25
35
  }
26
36
  export declare const EntityProperty: React.FC<EntityPropertyProps>;
27
37
  export default EntityProperty;
@@ -23,6 +23,16 @@ interface PaginateLinkedEntitiesProps {
23
23
  onRestoreAiDeletedEntity?: (entity: any) => void;
24
24
  onAcceptAiEntityEdit?: (entity: any) => void;
25
25
  onRejectAiEntityEdit?: (entity: any) => void;
26
+ onAcceptAiEntityUnlink?: (data: {
27
+ sourceEntityId: string;
28
+ property: string;
29
+ targetEntityId: string;
30
+ }) => void;
31
+ onRejectAiEntityUnlink?: (data: {
32
+ sourceEntityId: string;
33
+ property: string;
34
+ targetEntityId: string;
35
+ }) => void;
26
36
  }
27
37
  declare const PaginateLinkedEntities: React.FC<PaginateLinkedEntitiesProps>;
28
38
  export default PaginateLinkedEntities;
@@ -19,6 +19,16 @@ interface RenderLinkedItemProps {
19
19
  onRestoreAiDeletedEntity?: (entity: any) => void;
20
20
  onAcceptAiEntityEdit?: (entity: any) => void;
21
21
  onRejectAiEntityEdit?: (entity: any) => void;
22
+ onAcceptAiEntityUnlink?: (data: {
23
+ sourceEntityId: string;
24
+ property: string;
25
+ targetEntityId: string;
26
+ }) => void;
27
+ onRejectAiEntityUnlink?: (data: {
28
+ sourceEntityId: string;
29
+ property: string;
30
+ targetEntityId: string;
31
+ }) => void;
22
32
  }
23
33
  declare const RenderLinkedItem: React.FC<RenderLinkedItemProps>;
24
34
  export default RenderLinkedItem;
@@ -0,0 +1,30 @@
1
+ import { default as React } from 'react';
2
+ interface UnlinkedLinkedEntityCardProps {
3
+ entity: {
4
+ '@id': string;
5
+ [key: string]: any;
6
+ };
7
+ displayEntity: {
8
+ '@id': string;
9
+ '@type': string[];
10
+ name: string;
11
+ };
12
+ property: string;
13
+ sourceEntityId: string;
14
+ readonly: boolean;
15
+ onLoadEntity: (entity: {
16
+ id: string;
17
+ }) => void;
18
+ onAcceptUnlink?: (data: {
19
+ sourceEntityId: string;
20
+ property: string;
21
+ targetEntityId: string;
22
+ }) => void;
23
+ onRejectUnlink?: (data: {
24
+ sourceEntityId: string;
25
+ property: string;
26
+ targetEntityId: string;
27
+ }) => void;
28
+ }
29
+ declare const UnlinkedLinkedEntityCard: React.FC<UnlinkedLinkedEntityCardProps>;
30
+ export default UnlinkedLinkedEntityCard;
@@ -13,6 +13,14 @@ export declare const getDeletedEntityReviewTarget: (entityApproval: any) => {
13
13
  export declare const getPendingDeletedEntityReversePropertiesForSource: (approvalData: any, sourceEntityId: string | undefined) => string[];
14
14
  export declare const getEntityApproval: (approvalData: any, entityId: string | undefined) => any | undefined;
15
15
  export declare const getEntityApprovalRecords: (approvalData: any, entityId: string | undefined, property: string) => any[];
16
+ export declare const getReferenceId: (value: any) => string | undefined;
17
+ export declare const getReferenceValues: (value: any) => any[];
18
+ export declare const getRemovedReferenceValues: (previousValue: any, currentValue: any) => any[];
19
+ export declare const getPendingUnlinkedReferenceApprovals: (approvalData: any, sourceEntityId: string | undefined, property: string, currentValue: any) => Array<{
20
+ approvalRecord: any;
21
+ reference: any;
22
+ targetEntityId: string;
23
+ }>;
16
24
  export declare const getPendingEntityApprovalRecords: (approvalData: any, entityId: string | undefined) => any[];
17
25
  export declare const getPendingEntityApprovalFieldCount: (approvalData: any, entityId: string | undefined) => number;
18
26
  export declare const getPendingApprovalEntities: (approvalData: any) => any[];
package/dist/recrate.css CHANGED
@@ -1,3 +1,3 @@
1
- .el-tabs__item{height:unset}.el-select-dropdown__wrap{max-height:500px!important}.el-select-group__title{font-size:14px!important}.scrollbar{overflow:overlay}.scrollbar::-webkit-scrollbar{background-color:#0000;height:16px;width:16px;z-index:999999}.scrollbar::-webkit-scrollbar-track{background-color:#0000}.scrollbar::-webkit-scrollbar-thumb{background-color:#0000;border:0 solid #fff;border-radius:16px}.scrollbar::-webkit-scrollbar-button{display:none}.scrollbar:hover::-webkit-scrollbar-thumb{background-color:#a0a0a5;border:4px solid #fff}.scrollbar::-webkit-scrollbar-thumb:hover{background-color:#a0a0a5;border:4px solid #f4f4f4}.cm-editor{font-size:12px;height:auto;max-height:none}.describo-tab-icon{align-items:center;display:flex;font-size:14px;font-weight:600;height:100%;justify-content:center;width:100%}.describo-add-only-tabs .ant-tabs-nav,.describo-add-only-tabs .ant-tabs-nav-wrap{height:100%}.describo-add-only-tabs .ant-tabs-nav-list{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center}.describo-add-only-tabs .ant-tabs-tab{justify-content:center}.describo-tab-rail{background:#fff;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;position:relative}.describo-tab-rail-actions{border-bottom:1px solid #e5e7eb;display:flex;flex:0 0 auto;gap:8px;justify-content:center;padding:10px 8px 8px}.describo-tab-rail-actions-only .describo-tab-rail-actions{border-bottom:0}.describo-tab-rail-list{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:8px 6px 16px;scrollbar-width:none}.describo-tab-rail-list::-webkit-scrollbar{display:none}.describo-tab-rail-item{border-radius:6px;color:#334155;cursor:pointer;display:block;margin:2px 0;outline:none;padding:12px 10px;position:relative;transition:background-color .12s ease,color .12s ease;width:100%}.describo-tab-rail-item:focus-visible,.describo-tab-rail-item:hover{background:#f1f5f9}.describo-tab-rail-item-active{background:#eaf2ff;color:#1d4ed8}.describo-tab-rail-item-active:before{background:#2563eb;border-radius:999px;bottom:10px;content:"";left:0;position:absolute;top:10px;width:3px}.describo-tab-rail-item-icon{align-items:center;display:flex;justify-content:center;min-height:42px;padding:8px}.describo-tab-rail-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.describo-tab-rail-title{font-size:15px;font-weight:600;line-height:1.35;min-width:0;overflow-wrap:anywhere}.describo-tab-rail-status{align-items:center;display:inline-flex;flex:0 0 auto;gap:4px}.describo-tab-rail-remove-button{flex:0 0 auto;transition:opacity .12s ease}.describo-tab-rail-description{color:#64748b;font-size:12px;line-height:1.35;margin-top:4px;overflow-wrap:anywhere}.describo-tab-rail:after,.describo-tab-rail:before{content:"";height:34px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity .12s ease;z-index:2}.describo-tab-rail:before{background:linear-gradient(#fff,#fff0);top:53px}.describo-tab-rail:after{background:linear-gradient(#fff0,#fff);bottom:0}.describo-tab-rail-can-scroll-down:after,.describo-tab-rail-can-scroll-up:before{opacity:1}.describo-tab-rail-scroll-button{box-shadow:0 2px 8px #0f172a24;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.describo-tab-rail-scroll-button-up{top:58px}.describo-tab-rail-scroll-button-down{bottom:8px}.describo-add-property-drawer{z-index:6000}.describo-add-property-title.ant-typography{font-size:22px;line-height:1.25;margin:0}.describo-add-property-row{border:1px solid #0000;border-radius:6px;color:#111827;cursor:pointer;outline:none;padding:10px 12px 10px 14px;position:relative;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.describo-add-property-row:before{background:#0000;border-radius:999px;bottom:10px;content:"";left:0;position:absolute;top:10px;transition:background-color .12s ease;width:3px}.describo-add-property-row:focus-visible,.describo-add-property-row:hover{background:#f8fafc;border-color:#dbeafe;box-shadow:0 1px 4px #0f172a14}.describo-add-property-row:active{transform:translateY(1px)}.describo-add-property-row-selected{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 1px #2563eb1f}.describo-add-property-row-selected:before{background:#2563eb}.describo-add-property-row-header{color:#111827;min-width:0}.describo-add-property-row-name{color:inherit;flex:0 1 auto;font-weight:600;min-width:0;overflow-wrap:anywhere}.describo-add-property-row-type{color:#475569;overflow-wrap:anywhere}.describo-add-property-row-help{color:#6b7280;display:block;line-height:1.45;margin-top:4px}.describo-add-property-row-check{color:#2563eb;margin-left:auto}.describo-quick-settings-header{align-items:center;backdrop-filter:blur(8px);background:#fffffff5;border-bottom:1px solid #dbe3ef;box-shadow:0 6px 14px #0f172a14;display:flex;gap:14px;margin:0 -12px 12px;padding:2px 12px 5px 18px;position:sticky;top:0;z-index:4}.describo-quick-settings-actions{align-items:center;display:inline-flex;flex:0 0 auto;gap:6px}.describo-quick-settings-filter{flex:1 1 260px;max-width:420px;min-width:160px}.describo-property-compact .describo-add-control{margin-bottom:0;margin-top:0;padding-bottom:0;padding-top:0}.describo-property-name-with-ai{align-items:center;display:inline-flex;gap:6px;min-width:0}.describo-ai-edited-icon{align-items:center;background:#effbf5;border-radius:50%;color:#087446;display:inline-flex;flex:0 0 auto;font-size:12px;font-weight:800;height:18px;justify-content:center;line-height:1;width:18px}.describo-ai-edited-filter-button.ant-btn{color:#087446;font-weight:800;min-width:32px;padding-inline:0}.describo-ai-edited-filter-button.ant-btn-primary{background:#12a76c;border-color:#12a76c;color:#fff}.describo-ai-entity-review-card{box-shadow:inset 0 0 0 1px #38c88a47,0 2px 8px #186f4a14}.describo-ai-entity-delete-card{box-shadow:0 2px 8px #b91c1c14}.describo-ai-entity-delete-card:hover{box-shadow:0 6px 18px #b91c1c24}.describo-ai-deleted-linked-entity-id{border-bottom:1px solid #0003;color:#00000073;display:block;font-size:.75rem;line-height:1.35;margin-bottom:4px;overflow-wrap:anywhere;padding-bottom:4px}.describo-ai-deleted-linked-entity-name{color:#000000e0;font-weight:700;overflow-wrap:anywhere}.describo-ai-entity-reviewed-card{position:relative}.describo-ai-entity-edited-badge{bottom:14px;position:absolute;right:14px;z-index:1}.describo-ai-entity-review-card .describo-ai-entity-edited-badge{right:130px}.describo-ai-entity-review-summary{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:10px}.describo-ai-entity-review-meta{align-items:center;display:inline-flex;gap:8px;min-width:0}.describo-ai-entity-review-count{color:#087446;font-size:13px;font-weight:800;white-space:nowrap}.describo-ai-entity-inline-actions{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:18px}.describo-ai-entity-inline-actions .describo-ai-actions{gap:12px}.describo-ai-entity-review-button.ant-btn{background:#57d8a3;border:0;border-radius:6px;box-shadow:0 1px 2px #00000024;color:#0d2d23;font-size:13px;font-weight:800;height:28px;padding:0 10px}.describo-ai-entity-review-button.ant-btn:focus-visible,.describo-ai-entity-review-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.describo-ai-entity-diff-toggle.ant-btn{background:#ffffffd1;border-color:#1486553d;color:#047857;min-width:28px;padding:0;width:28px}.describo-ai-entity-diff-toggle.ant-btn:focus-visible,.describo-ai-entity-diff-toggle.ant-btn:hover{background:#ecfdf5!important;border-color:#14865573;color:#047857!important}.describo-ai-entity-delete-card .describo-ai-entity-review-count{color:#b91c1c}.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn{background:#ff5b63}.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn:hover{background:#f0444f!important;color:#111827!important}.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-confirm-bar{align-items:center;background:linear-gradient(90deg,#f5fff9,#f9fbfd);border-bottom:1px solid #c8ded4;border-top:1px solid #e7eee9;box-shadow:inset 4px 0 0 #54d69d;color:#2d3b35;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) auto;min-height:40px;padding:5px 10px 5px 14px}.describo-ai-confirm-message{align-items:center;display:flex;font-size:13px;font-weight:700;gap:10px;line-height:1.2;min-width:0;overflow:hidden}.describo-ai-confirm-spark{color:#12a76c;font-size:17px;line-height:1}.describo-ai-confirm-controls{align-items:center;display:flex;gap:6px;white-space:nowrap}.describo-ai-confirm-bar-remaining{background:linear-gradient(90deg,#fff9eb,#f9fbfd);box-shadow:inset 4px 0 0 #f59e0b}.describo-ai-confirm-bar-remaining .describo-ai-confirm-spark{color:#b45309}.describo-ai-review-next-entity.ant-btn{background:#fbbf24;border:0;border-radius:5px;box-shadow:0 1px 2px #0000001f;color:#1f1710;font-size:12px;font-weight:800;height:26px;padding:0 10px}.describo-ai-review-next-entity.ant-btn:focus-visible,.describo-ai-review-next-entity.ant-btn:hover{background:#f59e0b!important;color:#1f1710!important}.describo-ai-bulk-action.ant-btn{border:0;border-radius:5px;box-shadow:0 1px 2px #0000001f;color:#14201b;font-size:12px;font-weight:800;height:26px;padding:0 9px}.describo-ai-bulk-accept.ant-btn{background:#57d8a3}.describo-ai-bulk-accept.ant-btn:focus-visible,.describo-ai-bulk-accept.ant-btn:hover{background:#45c991!important;color:#14201b!important}.describo-ai-bulk-reject.ant-btn{background:#ff6a71;color:#1f1717}.describo-ai-bulk-reject.ant-btn:focus-visible,.describo-ai-bulk-reject.ant-btn:hover{background:#f0444f!important;color:#1f1717!important}.describo-ai-stepper{align-items:center;border-left:1px solid #cad7d1;color:#53625c;display:inline-flex;font-weight:800;gap:4px;margin-left:2px;padding-left:8px}.describo-ai-stepper .ant-btn{border-radius:5px;color:#4a5a54;height:24px;width:24px}.describo-ai-stepper .ant-btn:not(:disabled):focus-visible,.describo-ai-stepper .ant-btn:not(:disabled):hover{background:#e6f4ec!important;color:#33443d!important}.describo-ai-step-count{color:#34443d;font-size:13px;min-width:32px;text-align:center}.describo-ai-review{border-radius:8px;margin-top:18px;padding-top:20px!important;position:relative}.describo-ai-review-current .describo-ai-suggestion,.describo-ai-review-current.describo-property,.describo-ai-suggestion.describo-ai-review-current{border-color:#12a76ce6!important;box-shadow:inset 4px 0 0 #12a76c,0 0 0 3px #12a76c1f,0 6px 18px #1969461f!important}.describo-ai-delete.describo-ai-review-current,.describo-ai-review-current .describo-ai-delete{border-color:#dc2626e0!important;box-shadow:inset 4px 0 0 #ef4444,0 0 0 3px #ef44441f,0 6px 18px #b91c1c1f!important}.describo-ai-suggestion{background:linear-gradient(90deg,#22c55e1c,#22c55e0a 55%,#fff0);border:1px solid #22c55e6b;box-shadow:inset 4px 0 0 #22c55e,0 4px 14px #15803d14}.describo-ai-delete{background:linear-gradient(90deg,#ef44441c,#ef44440a 55%,#fff0);border:1px solid #ef44446b;box-shadow:inset 4px 0 0 #ef4444,0 4px 14px #b91c1c14}.describo-ai-suggestion:hover{background:linear-gradient(90deg,#22c55e26,#22c55e0d 55%,#fff0)}.describo-ai-delete:hover{background:linear-gradient(90deg,#ef444426,#ef44440d 55%,#fff0)}.describo-ai-deleted-entity-card{border-radius:8px;margin:18px;padding:26px 18px 18px;position:relative}.describo-ai-deleted-entity-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.describo-ai-deleted-entity-title{color:#7f1d1d;font-size:18px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.describo-ai-deleted-entity-id{color:#991b1b;font-size:13px;font-weight:600;margin-top:4px;overflow-wrap:anywhere}.describo-ai-deleted-entity-controls{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:14px}.describo-ai-deleted-entity-controls .describo-ai-actions{gap:8px}.describo-ai-deleted-entity-controls .describo-ai-actions .ant-btn{border-radius:6px;font-size:13px;height:28px;min-width:66px}.describo-ai-deleted-entity-summary{align-items:center;color:#7f1d1d;display:inline-flex;font-size:14px;font-weight:700;gap:10px;min-width:0}.describo-ai-deleted-entity-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.describo-ai-entity-delete-details-toggle.ant-btn{background:#ffffffb8;border-color:#f8717175;color:#b91c1c;flex:0 0 auto;min-width:30px;padding:0;width:30px}.describo-ai-entity-delete-details-toggle.ant-btn:focus-visible,.describo-ai-entity-delete-details-toggle.ant-btn:hover,.describo-ai-entity-delete-details-toggle.ant-btn[aria-pressed=true]{background:#ffe8e8!important;border-color:#f87171bd;color:#b91c1c!important}.describo-ai-deleted-entity-fields{background:#f8717152;border:1px solid #f8717152;border-radius:8px;display:grid;gap:1px;grid-template-columns:minmax(120px,220px) minmax(0,1fr);margin-top:14px;overflow:hidden}.describo-ai-deleted-entity-fields-inline{grid-template-columns:minmax(100px,170px) minmax(0,1fr);margin-top:10px}.describo-ai-deleted-entity-field{display:contents}.describo-ai-deleted-entity-field-name,.describo-ai-deleted-entity-field-value{background:#ffffffb8;font-size:13px;min-width:0;overflow-wrap:anywhere;padding:8px 10px}.describo-ai-deleted-entity-field-name{color:#7f1d1d;font-weight:800}.describo-ai-deleted-entity-field-value{color:#450a0a}.describo-ai-entity-diff-card{background:#f0fbf5;border:1px solid #38c88a8c;border-left:4px solid #38c88a;border-radius:8px;box-shadow:0 2px 8px #186f4a14;min-height:226px;overflow:hidden;position:relative}.describo-ai-entity-diff-card-delete{background:#fff5f5;border-color:#dd505c7a #dd505c7a #dd505c7a #e24d5c;box-shadow:0 2px 8px #85242f14}.describo-ai-entity-diff-head{align-items:center;background:#e4f7ed;border-bottom:1px solid #38c88a40;color:#087446;display:flex;font-size:13px;font-weight:900;gap:10px;justify-content:space-between;min-height:36px;padding:0 14px}.describo-ai-entity-diff-card-delete .describo-ai-entity-diff-head{background:#ffe8e8;border-bottom-color:#dd505c40;color:#9a1f29}.describo-ai-entity-diff-close.ant-btn{color:currentColor;flex:0 0 auto}.describo-ai-entity-diff-close.ant-btn:focus-visible,.describo-ai-entity-diff-close.ant-btn:hover{background:#ffffff9e!important;color:currentColor!important}.describo-ai-entity-diff-body{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;padding:10px 0 52px}.describo-ai-entity-diff-line{align-items:center;border-bottom:1px solid #0000000a;display:grid;grid-template-columns:28px minmax(74px,96px) minmax(0,1fr);min-height:29px}.describo-ai-entity-diff-line-context{background:#f7faf8}.describo-ai-entity-diff-line-removed{background:#fff1f1}.describo-ai-entity-diff-line-added{background:#effbf5}.describo-ai-entity-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.describo-ai-entity-diff-line-context .describo-ai-entity-diff-marker{background:#eef2f0;color:#738078}.describo-ai-entity-diff-line-removed .describo-ai-entity-diff-marker{background:#ffdede;color:#9a1f29}.describo-ai-entity-diff-line-added .describo-ai-entity-diff-marker{background:#d8f5e7;color:#087446}.describo-ai-entity-diff-key{color:#5b7167;padding:0 8px}.describo-ai-entity-diff-key,.describo-ai-entity-diff-value{font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.describo-ai-entity-diff-value{color:#1e2732;padding-right:10px}.describo-ai-entity-diff-actions{bottom:14px;display:flex;gap:7px;position:absolute;right:14px}.describo-ai-entity-diff-button.ant-btn{background:#57d8a3;border:0;border-radius:6px;box-shadow:0 1px 2px #00000024;color:#0d2d23;font-size:13px;font-weight:900;height:31px;min-width:100px;padding:0 10px}.describo-ai-entity-diff-button.ant-btn:focus-visible,.describo-ai-entity-diff-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.describo-ai-entity-diff-button-reject.ant-btn{background:#ff6a71;color:#171717}.describo-ai-entity-diff-button-reject.ant-btn:focus-visible,.describo-ai-entity-diff-button-reject.ant-btn:hover{background:#f0444f!important;color:#171717!important}.describo-ai-suggestion-badge{align-items:center;background:#ecfdf5;border:1px solid #10b98161;border-radius:7px;box-shadow:0 1px 2px #0f764a14;color:#047857;display:inline-flex;font-size:13px;font-weight:700;gap:6px;height:30px;left:18px;line-height:1;padding:0 11px;position:absolute;top:-15px;z-index:1}.describo-ai-delete .describo-ai-suggestion-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.describo-ai-suggestion-badge-icon{color:#047857;font-size:14px;line-height:1}.describo-ai-delete .describo-ai-suggestion-badge-icon{color:#b91c1c}.describo-ai-entity-status-badge{left:14px;top:-15px}.describo-ai-entity-delete-card .describo-ai-entity-status-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.describo-ai-entity-delete-card .describo-ai-entity-status-badge .describo-ai-suggestion-badge-icon{color:#b91c1c}.describo-ai-field-row{align-items:flex-start}.describo-ai-field-control .ant-space-compact{width:100%}.describo-ai-field-control .ant-input,.describo-ai-field-control .ant-input-affix-wrapper,.describo-ai-field-control .ant-input-number,.describo-ai-field-control .ant-picker,.describo-ai-field-control .ant-select-selector,.describo-ai-field-control textarea.ant-input{background:#f0fdf4!important;border-color:#22c55e!important;box-shadow:inset 0 0 0 1px #22c55e2e,0 0 0 3px #22c55e1a!important}.describo-ai-delete .describo-ai-field-control .ant-input,.describo-ai-delete .describo-ai-field-control .ant-input-affix-wrapper,.describo-ai-delete .describo-ai-field-control .ant-input-number,.describo-ai-delete .describo-ai-field-control .ant-picker,.describo-ai-delete .describo-ai-field-control .ant-select-selector,.describo-ai-delete .describo-ai-field-control textarea.ant-input{background:#fef2f2!important;border-color:#ef4444!important;box-shadow:inset 0 0 0 1px #ef44442e,0 0 0 3px #ef44441a!important}.describo-ai-field-control .ant-space-compact>.ant-input,.describo-ai-field-control .ant-space-compact>.ant-input-affix-wrapper,.describo-ai-field-control .ant-space-compact>textarea.ant-input{border-end-end-radius:8px!important;border-start-end-radius:8px!important}.describo-ai-field-control .ant-space-compact>.ant-btn{display:none}.describo-ai-field-diff{background:#fbfcfd;border:1px solid #d4ddd8;border-radius:7px;box-shadow:0 1px 2px #0000000d;font-size:15px;overflow:hidden;width:100%}.describo-ai-field-diff-head{align-items:center;background:#f5f8f6;border-bottom:1px solid #dce5e0;color:#506158;display:flex;font-size:13px;font-weight:800;gap:10px;justify-content:space-between;min-height:31px;padding:0 10px}.describo-ai-field-diff-chip{color:#087446;flex:0 0 auto;font-size:12px}.describo-ai-field-diff-line{border-bottom:1px solid #0000000a;display:grid;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;grid-template-columns:28px minmax(0,1fr);min-height:36px}.describo-ai-field-diff-line:last-child{border-bottom:0}.describo-ai-field-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.describo-ai-field-diff-value{color:#27322d;margin:0;min-width:0;overflow:auto;overflow-wrap:anywhere;padding:7px 11px;white-space:pre-wrap}.describo-ai-field-diff-line-removed{background:#fff1f1}.describo-ai-field-diff-line-removed .describo-ai-field-diff-marker{background:#ffdede;color:#9a1f29}.describo-ai-field-diff-line-added{background:#effbf5}.describo-ai-field-diff-line-added .describo-ai-field-diff-marker{background:#d8f5e7;color:#087446}.describo-ai-field-diff-empty{color:#7b8781;font-style:italic}.describo-ai-actions{align-items:flex-start;display:flex;flex:0 0 auto;gap:18px}.describo-ai-actions .ant-btn{border:0;border-radius:8px;box-shadow:0 2px 5px #0f172a2e;color:#111827;font-size:14px;font-weight:700;height:34px;min-width:82px}.describo-ai-action-diff.ant-btn{background:#fff;border:1px solid #d4ddd8;color:#0f172a;min-width:36px;padding:0;width:36px}.describo-ai-action-diff.ant-btn:focus-visible,.describo-ai-action-diff.ant-btn:hover{background:#f5f8f6!important;border-color:#9bc7b3!important;color:#087446!important}.describo-ai-action-diff.ant-btn[aria-pressed=true]{background:#d8f5e7;border-color:#9bc7b3;color:#087446}.describo-ai-action-approve.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-action-approve.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-action-reject.ant-btn,.describo-ai-delete .describo-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.describo-ai-delete .describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-delete .describo-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.describo-ai-delete .describo-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-delete .describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-delete .describo-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-action-reject.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}@media (max-width:900px){.describo-ai-confirm-bar{grid-template-columns:1fr}.describo-ai-confirm-controls{flex-wrap:wrap}.describo-ai-stepper{border-left:0;margin-left:0;padding-left:0}.describo-ai-field-row{flex-wrap:wrap}.describo-ai-actions{justify-content:flex-start;width:100%}}@media (max-width:640px){.describo-quick-settings-header{flex-wrap:wrap}.describo-quick-settings-filter{flex-basis:100%;max-width:none}}.recrate,.recrate .recrate-ant{display:flex;flex-direction:column;height:100vh;min-height:100vh}.describo-editor-scroll,.recrate .ant-tabs-left .ant-tabs-nav,.recrate .ant-tabs-right .ant-tabs-nav{height:100%}.recrate .ant-tabs-bottom .ant-tabs-nav-wrap,.recrate .ant-tabs-top .ant-tabs-nav-wrap{overflow-x:auto}
1
+ .el-tabs__item{height:unset}.el-select-dropdown__wrap{max-height:500px!important}.el-select-group__title{font-size:14px!important}.scrollbar{overflow:overlay}.scrollbar::-webkit-scrollbar{background-color:#0000;height:16px;width:16px;z-index:999999}.scrollbar::-webkit-scrollbar-track{background-color:#0000}.scrollbar::-webkit-scrollbar-thumb{background-color:#0000;border:0 solid #fff;border-radius:16px}.scrollbar::-webkit-scrollbar-button{display:none}.scrollbar:hover::-webkit-scrollbar-thumb{background-color:#a0a0a5;border:4px solid #fff}.scrollbar::-webkit-scrollbar-thumb:hover{background-color:#a0a0a5;border:4px solid #f4f4f4}.cm-editor{font-size:12px;height:auto;max-height:none}.describo-tab-icon{align-items:center;display:flex;font-size:14px;font-weight:600;height:100%;justify-content:center;width:100%}.describo-add-only-tabs .ant-tabs-nav,.describo-add-only-tabs .ant-tabs-nav-wrap{height:100%}.describo-add-only-tabs .ant-tabs-nav-list{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center}.describo-add-only-tabs .ant-tabs-tab{justify-content:center}.describo-tab-rail{background:#fff;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;position:relative}.describo-tab-rail-actions{border-bottom:1px solid #e5e7eb;display:flex;flex:0 0 auto;gap:8px;justify-content:center;padding:10px 8px 8px}.describo-tab-rail-actions-only .describo-tab-rail-actions{border-bottom:0}.describo-tab-rail-list{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:8px 6px 16px;scrollbar-width:none}.describo-tab-rail-list::-webkit-scrollbar{display:none}.describo-tab-rail-item{border-radius:6px;color:#334155;cursor:pointer;display:block;margin:2px 0;outline:none;padding:12px 10px;position:relative;transition:background-color .12s ease,color .12s ease;width:100%}.describo-tab-rail-item:focus-visible,.describo-tab-rail-item:hover{background:#f1f5f9}.describo-tab-rail-item-active{background:#eaf2ff;color:#1d4ed8}.describo-tab-rail-item-active:before{background:#2563eb;border-radius:999px;bottom:10px;content:"";left:0;position:absolute;top:10px;width:3px}.describo-tab-rail-item-icon{align-items:center;display:flex;justify-content:center;min-height:42px;padding:8px}.describo-tab-rail-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.describo-tab-rail-title{font-size:15px;font-weight:600;line-height:1.35;min-width:0;overflow-wrap:anywhere}.describo-tab-rail-status{align-items:center;display:inline-flex;flex:0 0 auto;gap:4px}.describo-tab-rail-remove-button{flex:0 0 auto;transition:opacity .12s ease}.describo-tab-rail-description{color:#64748b;font-size:12px;line-height:1.35;margin-top:4px;overflow-wrap:anywhere}.describo-tab-rail:after,.describo-tab-rail:before{content:"";height:34px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity .12s ease;z-index:2}.describo-tab-rail:before{background:linear-gradient(#fff,#fff0);top:53px}.describo-tab-rail:after{background:linear-gradient(#fff0,#fff);bottom:0}.describo-tab-rail-can-scroll-down:after,.describo-tab-rail-can-scroll-up:before{opacity:1}.describo-tab-rail-scroll-button{box-shadow:0 2px 8px #0f172a24;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.describo-tab-rail-scroll-button-up{top:58px}.describo-tab-rail-scroll-button-down{bottom:8px}.describo-add-property-drawer{z-index:6000}.describo-add-property-title.ant-typography{font-size:22px;line-height:1.25;margin:0}.describo-add-property-row{border:1px solid #0000;border-radius:6px;color:#111827;cursor:pointer;outline:none;padding:10px 12px 10px 14px;position:relative;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.describo-add-property-row:before{background:#0000;border-radius:999px;bottom:10px;content:"";left:0;position:absolute;top:10px;transition:background-color .12s ease;width:3px}.describo-add-property-row:focus-visible,.describo-add-property-row:hover{background:#f8fafc;border-color:#dbeafe;box-shadow:0 1px 4px #0f172a14}.describo-add-property-row:active{transform:translateY(1px)}.describo-add-property-row-selected{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 1px #2563eb1f}.describo-add-property-row-selected:before{background:#2563eb}.describo-add-property-row-header{color:#111827;min-width:0}.describo-add-property-row-name{color:inherit;flex:0 1 auto;font-weight:600;min-width:0;overflow-wrap:anywhere}.describo-add-property-row-type{color:#475569;overflow-wrap:anywhere}.describo-add-property-row-help{color:#6b7280;display:block;line-height:1.45;margin-top:4px}.describo-add-property-row-check{color:#2563eb;margin-left:auto}.describo-quick-settings-header{align-items:center;backdrop-filter:blur(8px);background:#fffffff5;border-bottom:1px solid #dbe3ef;box-shadow:0 6px 14px #0f172a14;display:flex;gap:14px;margin:0 -12px 12px;padding:2px 12px 5px 18px;position:sticky;top:0;z-index:4}.describo-quick-settings-actions{align-items:center;display:inline-flex;flex:0 0 auto;gap:6px}.describo-quick-settings-filter{flex:1 1 260px;max-width:420px;min-width:160px}.describo-property-compact .describo-add-control{margin-bottom:0;margin-top:0;padding-bottom:0;padding-top:0}.describo-property-name-with-ai{align-items:center;display:inline-flex;gap:6px;min-width:0}.describo-ai-edited-icon{align-items:center;background:#effbf5;border-radius:50%;color:#087446;display:inline-flex;flex:0 0 auto;font-size:12px;font-weight:800;height:18px;justify-content:center;line-height:1;width:18px}.describo-ai-edited-filter-button.ant-btn{color:#087446;font-weight:800;min-width:32px;padding-inline:0}.describo-ai-edited-filter-button.ant-btn-primary{background:#12a76c;border-color:#12a76c;color:#fff}.describo-ai-entity-review-card{box-shadow:inset 0 0 0 1px #38c88a47,0 2px 8px #186f4a14}.describo-ai-entity-delete-card{box-shadow:0 2px 8px #b91c1c14}.describo-ai-entity-delete-card:hover{box-shadow:0 6px 18px #b91c1c24}.describo-ai-entity-unlink-card{box-shadow:0 2px 8px #c2610014}.describo-ai-entity-unlink-card:hover{box-shadow:0 6px 18px #c2610024}.describo-ai-deleted-linked-entity-id{border-bottom:1px solid #0003;color:#00000073;display:block;font-size:.75rem;line-height:1.35;margin-bottom:4px;overflow-wrap:anywhere;padding-bottom:4px}.describo-ai-deleted-linked-entity-name{color:#000000e0;font-weight:700;overflow-wrap:anywhere}.describo-ai-entity-reviewed-card{position:relative}.describo-ai-entity-edited-badge{bottom:14px;position:absolute;right:14px;z-index:1}.describo-ai-entity-review-card .describo-ai-entity-edited-badge{right:130px}.describo-ai-entity-review-summary{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:10px}.describo-ai-entity-review-meta{align-items:center;display:inline-flex;gap:8px;min-width:0}.describo-ai-entity-review-count{color:#087446;font-size:13px;font-weight:800;white-space:nowrap}.describo-ai-entity-inline-actions{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:18px}.describo-ai-entity-inline-actions .describo-ai-actions{gap:12px}.describo-ai-entity-review-button.ant-btn{background:#57d8a3;border:0;border-radius:6px;box-shadow:0 1px 2px #00000024;color:#0d2d23;font-size:13px;font-weight:800;height:28px;padding:0 10px}.describo-ai-entity-review-button.ant-btn:focus-visible,.describo-ai-entity-review-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.describo-ai-entity-diff-toggle.ant-btn{background:#ffffffd1;border-color:#1486553d;color:#047857;min-width:28px;padding:0;width:28px}.describo-ai-entity-diff-toggle.ant-btn:focus-visible,.describo-ai-entity-diff-toggle.ant-btn:hover{background:#ecfdf5!important;border-color:#14865573;color:#047857!important}.describo-ai-entity-delete-card .describo-ai-entity-review-count{color:#b91c1c}.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn{background:#ff5b63}.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-entity-review-button.ant-btn:hover{background:#f0444f!important;color:#111827!important}.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-entity-delete-card .describo-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-entity-unlink-card .describo-ai-action-approve.ant-btn{background:#fb923c;border-color:#fb923c}.describo-ai-entity-unlink-card .describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-entity-unlink-card .describo-ai-action-approve.ant-btn:hover{background:#f97316!important;border-color:#f97316!important;color:#111827!important}.describo-ai-entity-unlink-card .describo-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-entity-unlink-card .describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-entity-unlink-card .describo-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-confirm-bar{align-items:center;background:linear-gradient(90deg,#f5fff9,#f9fbfd);border-bottom:1px solid #c8ded4;border-top:1px solid #e7eee9;box-shadow:inset 4px 0 0 #54d69d;color:#2d3b35;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) auto;min-height:40px;padding:5px 10px 5px 14px}.describo-ai-confirm-message{align-items:center;display:flex;font-size:13px;font-weight:700;gap:10px;line-height:1.2;min-width:0;overflow:hidden}.describo-ai-confirm-spark{color:#12a76c;font-size:17px;line-height:1}.describo-ai-confirm-controls{align-items:center;display:flex;gap:6px;white-space:nowrap}.describo-ai-confirm-bar-remaining{background:linear-gradient(90deg,#fff9eb,#f9fbfd);box-shadow:inset 4px 0 0 #f59e0b}.describo-ai-confirm-bar-remaining .describo-ai-confirm-spark{color:#b45309}.describo-ai-review-next-entity.ant-btn{background:#fbbf24;border:0;border-radius:5px;box-shadow:0 1px 2px #0000001f;color:#1f1710;font-size:12px;font-weight:800;height:26px;padding:0 10px}.describo-ai-review-next-entity.ant-btn:focus-visible,.describo-ai-review-next-entity.ant-btn:hover{background:#f59e0b!important;color:#1f1710!important}.describo-ai-bulk-action.ant-btn{border:0;border-radius:5px;box-shadow:0 1px 2px #0000001f;color:#14201b;font-size:12px;font-weight:800;height:26px;padding:0 9px}.describo-ai-bulk-accept.ant-btn{background:#57d8a3}.describo-ai-bulk-accept.ant-btn:focus-visible,.describo-ai-bulk-accept.ant-btn:hover{background:#45c991!important;color:#14201b!important}.describo-ai-bulk-reject.ant-btn{background:#ff6a71;color:#1f1717}.describo-ai-bulk-reject.ant-btn:focus-visible,.describo-ai-bulk-reject.ant-btn:hover{background:#f0444f!important;color:#1f1717!important}.describo-ai-stepper{align-items:center;border-left:1px solid #cad7d1;color:#53625c;display:inline-flex;font-weight:800;gap:4px;margin-left:2px;padding-left:8px}.describo-ai-stepper .ant-btn{border-radius:5px;color:#4a5a54;height:24px;width:24px}.describo-ai-stepper .ant-btn:not(:disabled):focus-visible,.describo-ai-stepper .ant-btn:not(:disabled):hover{background:#e6f4ec!important;color:#33443d!important}.describo-ai-step-count{color:#34443d;font-size:13px;min-width:32px;text-align:center}.describo-ai-review{border-radius:8px;margin-top:18px;padding-top:20px!important;position:relative}.describo-ai-review-current .describo-ai-suggestion,.describo-ai-review-current.describo-property,.describo-ai-suggestion.describo-ai-review-current{border-color:#12a76ce6!important;box-shadow:inset 4px 0 0 #12a76c,0 0 0 3px #12a76c1f,0 6px 18px #1969461f!important}.describo-ai-delete.describo-ai-review-current,.describo-ai-review-current .describo-ai-delete{border-color:#dc2626e0!important;box-shadow:inset 4px 0 0 #ef4444,0 0 0 3px #ef44441f,0 6px 18px #b91c1c1f!important}.describo-ai-suggestion{background:linear-gradient(90deg,#22c55e1c,#22c55e0a 55%,#fff0);border:1px solid #22c55e6b;box-shadow:inset 4px 0 0 #22c55e,0 4px 14px #15803d14}.describo-ai-delete{background:linear-gradient(90deg,#ef44441c,#ef44440a 55%,#fff0);border:1px solid #ef44446b;box-shadow:inset 4px 0 0 #ef4444,0 4px 14px #b91c1c14}.describo-ai-suggestion:hover{background:linear-gradient(90deg,#22c55e26,#22c55e0d 55%,#fff0)}.describo-ai-delete:hover{background:linear-gradient(90deg,#ef444426,#ef44440d 55%,#fff0)}.describo-ai-deleted-entity-card{border-radius:8px;margin:18px;padding:26px 18px 18px;position:relative}.describo-ai-deleted-entity-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.describo-ai-deleted-entity-title{color:#7f1d1d;font-size:18px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.describo-ai-deleted-entity-id{color:#991b1b;font-size:13px;font-weight:600;margin-top:4px;overflow-wrap:anywhere}.describo-ai-deleted-entity-controls{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:14px}.describo-ai-deleted-entity-controls .describo-ai-actions{gap:8px}.describo-ai-deleted-entity-controls .describo-ai-actions .ant-btn{border-radius:6px;font-size:13px;height:28px;min-width:66px}.describo-ai-deleted-entity-summary{align-items:center;color:#7f1d1d;display:inline-flex;font-size:14px;font-weight:700;gap:10px;min-width:0}.describo-ai-deleted-entity-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.describo-ai-entity-delete-details-toggle.ant-btn{background:#ffffffb8;border-color:#f8717175;color:#b91c1c;flex:0 0 auto;min-width:30px;padding:0;width:30px}.describo-ai-entity-delete-details-toggle.ant-btn:focus-visible,.describo-ai-entity-delete-details-toggle.ant-btn:hover,.describo-ai-entity-delete-details-toggle.ant-btn[aria-pressed=true]{background:#ffe8e8!important;border-color:#f87171bd;color:#b91c1c!important}.describo-ai-deleted-entity-fields{background:#f8717152;border:1px solid #f8717152;border-radius:8px;display:grid;gap:1px;grid-template-columns:minmax(120px,220px) minmax(0,1fr);margin-top:14px;overflow:hidden}.describo-ai-deleted-entity-fields-inline{grid-template-columns:minmax(100px,170px) minmax(0,1fr);margin-top:10px}.describo-ai-deleted-entity-field{display:contents}.describo-ai-deleted-entity-field-name,.describo-ai-deleted-entity-field-value{background:#ffffffb8;font-size:13px;min-width:0;overflow-wrap:anywhere;padding:8px 10px}.describo-ai-deleted-entity-field-name{color:#7f1d1d;font-weight:800}.describo-ai-deleted-entity-field-value{color:#450a0a}.describo-ai-entity-diff-card{background:#f0fbf5;border:1px solid #38c88a8c;border-left:4px solid #38c88a;border-radius:8px;box-shadow:0 2px 8px #186f4a14;min-height:226px;overflow:hidden;position:relative}.describo-ai-entity-diff-card-delete{background:#fff5f5;border-color:#dd505c7a #dd505c7a #dd505c7a #e24d5c;box-shadow:0 2px 8px #85242f14}.describo-ai-entity-diff-card-unlink{background:#fff7ed;border-color:#f973167a #f973167a #f973167a #f97316;box-shadow:0 2px 8px #c2610014}.describo-ai-entity-diff-head{align-items:center;background:#e4f7ed;border-bottom:1px solid #38c88a40;color:#087446;display:flex;font-size:13px;font-weight:900;gap:10px;justify-content:space-between;min-height:36px;padding:0 14px}.describo-ai-entity-diff-card-delete .describo-ai-entity-diff-head{background:#ffe8e8;border-bottom-color:#dd505c40;color:#9a1f29}.describo-ai-entity-diff-card-unlink .describo-ai-entity-diff-head{background:#ffedd5;border-bottom-color:#f9731640;color:#9a3412}.describo-ai-entity-diff-close.ant-btn{color:currentColor;flex:0 0 auto}.describo-ai-entity-diff-close.ant-btn:focus-visible,.describo-ai-entity-diff-close.ant-btn:hover{background:#ffffff9e!important;color:currentColor!important}.describo-ai-entity-diff-body{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;padding:10px 0 52px}.describo-ai-entity-diff-line{align-items:center;border-bottom:1px solid #0000000a;display:grid;grid-template-columns:28px minmax(74px,96px) minmax(0,1fr);min-height:29px}.describo-ai-entity-diff-line-context{background:#f7faf8}.describo-ai-entity-diff-line-removed{background:#fff1f1}.describo-ai-entity-diff-line-added{background:#effbf5}.describo-ai-entity-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.describo-ai-entity-diff-line-context .describo-ai-entity-diff-marker{background:#eef2f0;color:#738078}.describo-ai-entity-diff-line-removed .describo-ai-entity-diff-marker{background:#ffdede;color:#9a1f29}.describo-ai-entity-diff-line-added .describo-ai-entity-diff-marker{background:#d8f5e7;color:#087446}.describo-ai-entity-diff-key{color:#5b7167;padding:0 8px}.describo-ai-entity-diff-key,.describo-ai-entity-diff-value{font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.describo-ai-entity-diff-value{color:#1e2732;padding-right:10px}.describo-ai-entity-diff-actions{bottom:14px;display:flex;gap:7px;position:absolute;right:14px}.describo-ai-entity-diff-button.ant-btn{background:#57d8a3;border:0;border-radius:6px;box-shadow:0 1px 2px #00000024;color:#0d2d23;font-size:13px;font-weight:900;height:31px;min-width:100px;padding:0 10px}.describo-ai-entity-diff-button.ant-btn:focus-visible,.describo-ai-entity-diff-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.describo-ai-entity-diff-button-reject.ant-btn{background:#ff6a71;color:#171717}.describo-ai-entity-diff-button-reject.ant-btn:focus-visible,.describo-ai-entity-diff-button-reject.ant-btn:hover{background:#f0444f!important;color:#171717!important}.describo-ai-suggestion-badge{align-items:center;background:#ecfdf5;border:1px solid #10b98161;border-radius:7px;box-shadow:0 1px 2px #0f764a14;color:#047857;display:inline-flex;font-size:13px;font-weight:700;gap:6px;height:30px;left:18px;line-height:1;padding:0 11px;position:absolute;top:-15px;z-index:1}.describo-ai-delete .describo-ai-suggestion-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.describo-ai-suggestion-badge-icon{color:#047857;font-size:14px;line-height:1}.describo-ai-delete .describo-ai-suggestion-badge-icon{color:#b91c1c}.describo-ai-entity-status-badge{left:14px;top:-15px}.describo-ai-entity-delete-card .describo-ai-entity-status-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.describo-ai-entity-delete-card .describo-ai-entity-status-badge .describo-ai-suggestion-badge-icon{color:#b91c1c}.describo-ai-entity-unlink-card .describo-ai-entity-status-badge{background:#fff7ed;border-color:#fb923c73;box-shadow:0 1px 2px #c2610014;color:#9a3412}.describo-ai-entity-unlink-card .describo-ai-entity-status-badge .describo-ai-suggestion-badge-icon{color:#c2410c}.describo-ai-field-row{align-items:flex-start}.describo-ai-field-control .ant-space-compact{width:100%}.describo-ai-field-control .ant-input,.describo-ai-field-control .ant-input-affix-wrapper,.describo-ai-field-control .ant-input-number,.describo-ai-field-control .ant-picker,.describo-ai-field-control .ant-select-selector,.describo-ai-field-control textarea.ant-input{background:#f0fdf4!important;border-color:#22c55e!important;box-shadow:inset 0 0 0 1px #22c55e2e,0 0 0 3px #22c55e1a!important}.describo-ai-delete .describo-ai-field-control .ant-input,.describo-ai-delete .describo-ai-field-control .ant-input-affix-wrapper,.describo-ai-delete .describo-ai-field-control .ant-input-number,.describo-ai-delete .describo-ai-field-control .ant-picker,.describo-ai-delete .describo-ai-field-control .ant-select-selector,.describo-ai-delete .describo-ai-field-control textarea.ant-input{background:#fef2f2!important;border-color:#ef4444!important;box-shadow:inset 0 0 0 1px #ef44442e,0 0 0 3px #ef44441a!important}.describo-ai-field-control .ant-space-compact>.ant-input,.describo-ai-field-control .ant-space-compact>.ant-input-affix-wrapper,.describo-ai-field-control .ant-space-compact>textarea.ant-input{border-end-end-radius:8px!important;border-start-end-radius:8px!important}.describo-ai-field-control .ant-space-compact>.ant-btn{display:none}.describo-ai-field-diff{background:#fbfcfd;border:1px solid #d4ddd8;border-radius:7px;box-shadow:0 1px 2px #0000000d;font-size:15px;overflow:hidden;width:100%}.describo-ai-field-diff-head{align-items:center;background:#f5f8f6;border-bottom:1px solid #dce5e0;color:#506158;display:flex;font-size:13px;font-weight:800;gap:10px;justify-content:space-between;min-height:31px;padding:0 10px}.describo-ai-field-diff-chip{color:#087446;flex:0 0 auto;font-size:12px}.describo-ai-field-diff-line{border-bottom:1px solid #0000000a;display:grid;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;grid-template-columns:28px minmax(0,1fr);min-height:36px}.describo-ai-field-diff-line:last-child{border-bottom:0}.describo-ai-field-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.describo-ai-field-diff-value{color:#27322d;margin:0;min-width:0;overflow:auto;overflow-wrap:anywhere;padding:7px 11px;white-space:pre-wrap}.describo-ai-field-diff-line-removed{background:#fff1f1}.describo-ai-field-diff-line-removed .describo-ai-field-diff-marker{background:#ffdede;color:#9a1f29}.describo-ai-field-diff-line-added{background:#effbf5}.describo-ai-field-diff-line-added .describo-ai-field-diff-marker{background:#d8f5e7;color:#087446}.describo-ai-field-diff-empty{color:#7b8781;font-style:italic}.describo-ai-actions{align-items:flex-start;display:flex;flex:0 0 auto;gap:18px}.describo-ai-actions .ant-btn{border:0;border-radius:8px;box-shadow:0 2px 5px #0f172a2e;color:#111827;font-size:14px;font-weight:700;height:34px;min-width:82px}.describo-ai-action-diff.ant-btn{background:#fff;border:1px solid #d4ddd8;color:#0f172a;min-width:36px;padding:0;width:36px}.describo-ai-action-diff.ant-btn:focus-visible,.describo-ai-action-diff.ant-btn:hover{background:#f5f8f6!important;border-color:#9bc7b3!important;color:#087446!important}.describo-ai-action-diff.ant-btn[aria-pressed=true]{background:#d8f5e7;border-color:#9bc7b3;color:#087446}.describo-ai-action-approve.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-action-approve.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-action-reject.ant-btn,.describo-ai-delete .describo-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.describo-ai-delete .describo-ai-action-approve.ant-btn:focus-visible,.describo-ai-delete .describo-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.describo-ai-delete .describo-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.describo-ai-delete .describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-delete .describo-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.describo-ai-action-reject.ant-btn:focus-visible,.describo-ai-action-reject.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}@media (max-width:900px){.describo-ai-confirm-bar{grid-template-columns:1fr}.describo-ai-confirm-controls{flex-wrap:wrap}.describo-ai-stepper{border-left:0;margin-left:0;padding-left:0}.describo-ai-field-row{flex-wrap:wrap}.describo-ai-actions{justify-content:flex-start;width:100%}}@media (max-width:640px){.describo-quick-settings-header{flex-wrap:wrap}.describo-quick-settings-filter{flex-basis:100%;max-width:none}}.recrate,.recrate .recrate-ant{display:flex;flex-direction:column;height:100vh;min-height:100vh}.describo-editor-scroll,.recrate .ant-tabs-left .ant-tabs-nav,.recrate .ant-tabs-right .ant-tabs-nav{height:100%}.recrate .ant-tabs-bottom .ant-tabs-nav-wrap,.recrate .ant-tabs-top .ant-tabs-nav-wrap{overflow-x:auto}
2
2
  /*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@layer theme, base, components, utilities;@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-200:oklch(88.5% 0.062 18.334);--color-red-500:oklch(63.7% 0.237 25.331);--color-red-600:oklch(57.7% 0.245 27.325);--color-red-700:oklch(50.5% 0.213 27.518);--color-green-100:oklch(96.2% 0.044 156.743);--color-green-200:oklch(92.5% 0.084 155.995);--color-green-600:oklch(62.7% 0.194 149.214);--color-cyan-200:oklch(91.7% 0.08 205.041);--color-sky-100:oklch(95.1% 0.026 236.824);--color-sky-500:oklch(68.5% 0.169 237.323);--color-blue-200:oklch(88.2% 0.059 254.128);--color-blue-300:oklch(80.9% 0.105 251.813);--color-blue-500:oklch(62.3% 0.214 259.815);--color-blue-600:oklch(54.6% 0.245 262.881);--color-blue-700:oklch(48.8% 0.243 264.376);--color-indigo-200:oklch(87% 0.065 274.039);--color-purple-200:oklch(90.2% 0.063 306.703);--color-slate-200:oklch(92.9% 0.013 255.508);--color-slate-300:oklch(86.9% 0.022 252.894);--color-slate-700:oklch(37.2% 0.044 257.287);--color-gray-50:oklch(98.5% 0.002 247.839);--color-gray-200:oklch(92.8% 0.006 264.531);--color-gray-300:oklch(87.2% 0.01 258.338);--color-gray-400:oklch(70.7% 0.022 261.325);--color-gray-600:oklch(44.6% 0.03 256.802);--color-gray-700:oklch(37.3% 0.034 259.733);--color-gray-800:oklch(27.8% 0.033 256.848);--color-black:#000;--color-white:#fff;--spacing:0.25rem;--text-xs:0.75rem;--text-xs--line-height:1.33333;--text-sm:0.875rem;--text-sm--line-height:1.42857;--text-base:1rem;--text-base--line-height:1.5;--text-lg:1.125rem;--text-lg--line-height:1.55556;--font-weight-light:300;--font-weight-bold:700;--radius-lg:0.5rem;--animate-pulse:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite;--default-transition-duration:150ms;--default-transition-timing-function:cubic-bezier(0.4,0,0.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,::file-selector-button,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:initial}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}::file-selector-button,button,input,optgroup,select,textarea{background-color:initial;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::placeholder{color:currentcolor;@supports (color:color-mix(in lab,red,red)){color:color-mix(in oklab,currentcolor 50%,#0000)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}::file-selector-button,button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-2{bottom:calc(var(--spacing)*2)}.left-0{left:calc(var(--spacing)*0)}.isolate{isolation:isolate}.z-50{z-index:50}.float-right{float:right}.container{width:100%;@media (width >= 40rem){max-width:40rem}@media (width >= 48rem){max-width:48rem}@media (width >= 64rem){max-width:64rem}@media (width >= 80rem){max-width:80rem}@media (width >= 96rem){max-width:96rem}}.m-1{margin:calc(var(--spacing)*1)}.m-2{margin:calc(var(--spacing)*2)}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-2{margin-left:calc(var(--spacing)*2)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.table-cell{display:table-cell}.h-1{height:calc(var(--spacing)*1)}.h-3{height:calc(var(--spacing)*3)}.h-8{height:calc(var(--spacing)*8)}.h-\[520px\]{height:520px}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.w-1{width:calc(var(--spacing)*1)}.w-1\/2{width:50%}.w-1\/3{width:33.33333%}.w-2\/3{width:66.66667%}.w-2\/6{width:33.33333%}.w-3{width:calc(var(--spacing)*3)}.w-4\/6{width:66.66667%}.w-6{width:calc(var(--spacing)*6)}.w-12{width:calc(var(--spacing)*12)}.w-\[600px\]{width:600px}.w-full{width:100%}.w-screen{width:100vw}.max-w-\[715px\]{max-width:715px}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-32{min-width:calc(var(--spacing)*32)}.min-w-72{min-width:calc(var(--spacing)*72)}.flex-1{flex:1}.flex-\[1_1_360px\]{flex:1 1 360px}.flex-grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-content-between{place-content:space-between}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.space-y-1{:where(&>:not(:last-child)){--tw-space-y-reverse:0;margin-block-end:calc(var(--spacing)*1*(1 - var(--tw-space-y-reverse)));margin-block-start:calc(var(--spacing)*1*var(--tw-space-y-reverse))}}.space-y-2{:where(&>:not(:last-child)){--tw-space-y-reverse:0;margin-block-end:calc(var(--spacing)*2*(1 - var(--tw-space-y-reverse)));margin-block-start:calc(var(--spacing)*2*var(--tw-space-y-reverse))}}.space-y-3{:where(&>:not(:last-child)){--tw-space-y-reverse:0;margin-block-end:calc(var(--spacing)*3*(1 - var(--tw-space-y-reverse)));margin-block-start:calc(var(--spacing)*3*var(--tw-space-y-reverse))}}.space-y-4{:where(&>:not(:last-child)){--tw-space-y-reverse:0;margin-block-end:calc(var(--spacing)*4*(1 - var(--tw-space-y-reverse)));margin-block-start:calc(var(--spacing)*4*var(--tw-space-y-reverse))}}.gap-x-1{column-gap:calc(var(--spacing)*1)}.gap-x-2{column-gap:calc(var(--spacing)*2)}.space-x-1{:where(&>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-end:calc(var(--spacing)*1*(1 - var(--tw-space-x-reverse)));margin-inline-start:calc(var(--spacing)*1*var(--tw-space-x-reverse))}}.space-x-2{:where(&>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-end:calc(var(--spacing)*2*(1 - var(--tw-space-x-reverse)));margin-inline-start:calc(var(--spacing)*2*var(--tw-space-x-reverse))}}.space-x-4{:where(&>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-end:calc(var(--spacing)*4*(1 - var(--tw-space-x-reverse)));margin-inline-start:calc(var(--spacing)*4*var(--tw-space-x-reverse))}}.gap-y-2{row-gap:calc(var(--spacing)*2)}.divide-y{:where(&>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-bottom-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse))}}.divide-gray-300{:where(&>:not(:last-child)){border-color:var(--color-gray-300)}}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-solid{--tw-border-style:solid;border-style:solid}.border-black{border-color:var(--color-black)}.border-black\/20{border-color:color-mix(in srgb,#000 20%,#0000);@supports (color:color-mix(in lab,red,red)){border-color:color-mix(in oklab,var(--color-black) 20%,#0000)}}.border-gray-400{border-color:var(--color-gray-400)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-700{border-color:var(--color-slate-700)}.bg-blue-200{background-color:var(--color-blue-200)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-200{background-color:var(--color-green-200)}.bg-indigo-200{background-color:var(--color-indigo-200)}.bg-purple-200{background-color:var(--color-purple-200)}.bg-red-200{background-color:var(--color-red-200)}.bg-red-500{background-color:var(--color-red-500)}.bg-slate-300{background-color:var(--color-slate-300)}.bg-slate-700{background-color:var(--color-slate-700)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pr-1{padding-right:calc(var(--spacing)*1)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pl-1{padding-left:calc(var(--spacing)*1)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.whitespace-pre-wrap{white-space:pre-wrap}.text-blue-600{color:var(--color-blue-600)}.text-gray-400{color:var(--color-gray-400)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-green-600{color:var(--color-green-600)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-50{opacity:50%}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-duration:var(--tw-duration,var(--default-transition-duration));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))}.transition-colors{transition-duration:var(--tw-duration,var(--default-transition-duration));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))}.transition-transform{transition-duration:var(--tw-duration,var(--default-transition-duration));transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))}.duration-1000{--tw-duration:1000ms;transition-duration:1s}.group-hover\:opacity-100{&:is(:where(.group):hover *){@media (hover:hover){opacity:100%}}}.hover\:scale-105{&:hover{@media (hover:hover){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}}.hover\:rounded-r-none{&:hover{@media (hover:hover){border-bottom-right-radius:0;border-top-right-radius:0}}}.hover\:bg-blue-300{&:hover{@media (hover:hover){background-color:var(--color-blue-300)}}}.hover\:bg-blue-700{&:hover{@media (hover:hover){background-color:var(--color-blue-700)}}}.hover\:bg-cyan-200{&:hover{@media (hover:hover){background-color:var(--color-cyan-200)}}}.hover\:bg-green-200{&:hover{@media (hover:hover){background-color:var(--color-green-200)}}}.hover\:bg-red-700{&:hover{@media (hover:hover){background-color:var(--color-red-700)}}}.hover\:bg-sky-100{&:hover{@media (hover:hover){background-color:var(--color-sky-100)}}}.hover\:text-black{&:hover{@media (hover:hover){color:var(--color-black)}}}.focus\:border-2{&:focus{border-style:var(--tw-border-style);border-width:2px}}.focus\:border-green-600{&:focus{border-color:var(--color-green-600)}}.focus\:outline-none{&:focus{--tw-outline-style:none;outline-style:none}}.focus-visible\:ring-2{&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus-visible\:ring-sky-500{&:focus-visible{--tw-ring-color:var(--color-sky-500)}}.focus-visible\:outline-none{&:focus-visible{--tw-outline-style:none;outline-style:none}}.xl\:w-1\/5{@media (width >= 80rem){width:20%}}.xl\:w-4\/5{@media (width >= 80rem){width:80%}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}
3
3
  .recrate{all:revert-layer}
@@ -79855,9 +79855,11 @@ const AiEntityDiffView = ({
79855
79855
  onReject
79856
79856
  }) => {
79857
79857
  const isDelete = operation === "delete";
79858
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: `describo-ai-entity-diff-card ${isDelete ? "describo-ai-entity-diff-card-delete" : ""}`, children: [
79858
+ const isUnlink = operation === "unlink";
79859
+ const title = isDelete ? `AI deleted entity: ${entityId}` : isUnlink ? `AI unlinked entity: ${entityId}` : `AI edited entity: ${entityId}`;
79860
+ 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: [
79859
79861
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-diff-head", children: [
79860
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: isDelete ? `AI deleted entity: ${entityId}` : `AI edited entity: ${entityId}` }),
79862
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: title }),
79861
79863
  onClose && /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "Hide entity diff", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
79862
79864
  Button$1,
79863
79865
  {
@@ -79886,7 +79888,7 @@ const AiEntityDiffView = ({
79886
79888
  `${row.kind}-${row.propertyName}-${index2}`
79887
79889
  )) }),
79888
79890
  !readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-entity-diff-actions", children: [
79889
- /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "Approve this AI deletion" : "Accept every AI edit for this entity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
79891
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "Approve this AI deletion" : isUnlink ? "Approve this AI unlink" : "Accept every AI edit for this entity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
79890
79892
  Button$1,
79891
79893
  {
79892
79894
  size: "middle",
@@ -79895,10 +79897,10 @@ const AiEntityDiffView = ({
79895
79897
  event.stopPropagation();
79896
79898
  onAccept == null ? void 0 : onAccept();
79897
79899
  },
79898
- children: isDelete ? "Delete entity" : "Accept edit"
79900
+ children: isDelete ? "Delete entity" : isUnlink ? "Unlink entity" : "Accept edit"
79899
79901
  }
79900
79902
  ) }),
79901
- /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "Restore this entity and mark the deletion reviewed" : "Restore previous values for this entity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
79903
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: isDelete ? "Restore this entity and mark the deletion reviewed" : isUnlink ? "Restore this link and mark the unlink reviewed" : "Restore previous values for this entity", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
79902
79904
  Button$1,
79903
79905
  {
79904
79906
  size: "middle",
@@ -79907,7 +79909,7 @@ const AiEntityDiffView = ({
79907
79909
  event.stopPropagation();
79908
79910
  onReject == null ? void 0 : onReject();
79909
79911
  },
79910
- children: isDelete ? "Keep entity" : "Reject edit"
79912
+ children: isDelete ? "Keep entity" : isUnlink ? "Restore link" : "Reject edit"
79911
79913
  }
79912
79914
  ) })
79913
79915
  ] })
@@ -80102,6 +80104,117 @@ const DeletedLinkedEntityCard = ({
80102
80104
  }
80103
80105
  );
80104
80106
  };
80107
+ const UnlinkedLinkedEntityCard = ({
80108
+ entity,
80109
+ displayEntity,
80110
+ property,
80111
+ sourceEntityId,
80112
+ readonly,
80113
+ onLoadEntity,
80114
+ onAcceptUnlink,
80115
+ onRejectUnlink
80116
+ }) => {
80117
+ const [showDiff, setShowDiff] = useState(false);
80118
+ const targetEntityId = entity["@id"];
80119
+ const diffRows = [
80120
+ {
80121
+ kind: "context",
80122
+ propertyName: "@id",
80123
+ label: "entity",
80124
+ value: targetEntityId
80125
+ },
80126
+ {
80127
+ kind: "context",
80128
+ propertyName: "source",
80129
+ label: "linked from",
80130
+ value: sourceEntityId
80131
+ },
80132
+ {
80133
+ kind: "removed",
80134
+ propertyName: property,
80135
+ label: property,
80136
+ value: { "@id": targetEntityId }
80137
+ }
80138
+ ];
80139
+ if (showDiff) {
80140
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
80141
+ AiEntityDiffView,
80142
+ {
80143
+ entityId: targetEntityId,
80144
+ rows: diffRows,
80145
+ operation: "unlink",
80146
+ readonly,
80147
+ onClose: () => setShowDiff(false),
80148
+ onAccept: () => onAcceptUnlink == null ? void 0 : onAcceptUnlink({ sourceEntityId, property, targetEntityId }),
80149
+ onReject: () => onRejectUnlink == null ? void 0 : onRejectUnlink({ sourceEntityId, property, targetEntityId })
80150
+ }
80151
+ );
80152
+ }
80153
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
80154
+ Card,
80155
+ {
80156
+ className: "describo-ai-entity-unlink-card describo-ai-entity-reviewed-card",
80157
+ style: {
80158
+ backgroundColor: "#fff7ed",
80159
+ cursor: "pointer",
80160
+ transition: "background-color 0.2s",
80161
+ borderLeft: "3px solid #f97316"
80162
+ },
80163
+ styles: { body: { padding: "22px 12px 8px" } },
80164
+ hoverable: true,
80165
+ onClick: () => onLoadEntity({ id: targetEntityId }),
80166
+ children: [
80167
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-suggestion-badge describo-ai-entity-status-badge", children: [
80168
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "describo-ai-suggestion-badge-icon", children: "✦" }),
80169
+ "AI unlink"
80170
+ ] }),
80171
+ /* @__PURE__ */ jsxRuntimeExports.jsx(LinkedEntityCardHeader, { entity: displayEntity }),
80172
+ /* @__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 ? "Hide unlink diff" : "Show unlink diff", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
80174
+ Button$1,
80175
+ {
80176
+ size: "small",
80177
+ className: "describo-ai-entity-delete-details-toggle",
80178
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(RefIcon$7, {}),
80179
+ "aria-label": showDiff ? "Hide AI unlink diff" : "Show AI unlink diff",
80180
+ "aria-pressed": showDiff,
80181
+ onClick: (event) => {
80182
+ event.stopPropagation();
80183
+ setShowDiff((visible) => !visible);
80184
+ }
80185
+ }
80186
+ ) }) }),
80187
+ !readonly && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "describo-ai-actions", children: [
80188
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "Approve this AI unlink", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
80189
+ Button$1,
80190
+ {
80191
+ size: "small",
80192
+ className: "describo-ai-action-approve",
80193
+ onClick: (event) => {
80194
+ event.stopPropagation();
80195
+ onAcceptUnlink == null ? void 0 : onAcceptUnlink({ sourceEntityId, property, targetEntityId });
80196
+ },
80197
+ children: "Unlink"
80198
+ }
80199
+ ) }),
80200
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip2, { title: "Restore this link and mark the unlink reviewed", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
80201
+ Button$1,
80202
+ {
80203
+ size: "small",
80204
+ className: "describo-ai-action-reject",
80205
+ onClick: (event) => {
80206
+ event.stopPropagation();
80207
+ onRejectUnlink == null ? void 0 : onRejectUnlink({ sourceEntityId, property, targetEntityId });
80208
+ },
80209
+ children: "Restore"
80210
+ }
80211
+ ) })
80212
+ ] })
80213
+ ] })
80214
+ ]
80215
+ }
80216
+ );
80217
+ };
80105
80218
  const LinkedEntityAssociations = ({
80106
80219
  associations,
80107
80220
  onLoadEntity
@@ -80286,6 +80399,11 @@ const getDeletedEntityFromApproval = (entityApproval) => {
80286
80399
  }
80287
80400
  return deletedEntity;
80288
80401
  };
80402
+ const getPendingDeletedEntityFromApproval = (approvalData, entityId) => {
80403
+ if (!entityId) return void 0;
80404
+ const entityApproval = getApprovalEntities(approvalData).find((item) => entityIdsMatch(item == null ? void 0 : item["@id"], entityId));
80405
+ return getDeletedEntityFromApproval(entityApproval);
80406
+ };
80289
80407
  const getPendingDeletedEntitiesForReverseProperty = (approvalData, sourceEntityId, property) => {
80290
80408
  if (!sourceEntityId || !property) return [];
80291
80409
  return getApprovalEntities(approvalData).map(getDeletedEntityFromApproval).filter(Boolean).filter((deletedEntity) => {
@@ -80326,6 +80444,23 @@ const getEntityApprovalRecords = (approvalData, entityId, property) => {
80326
80444
  if (!Array.isArray(entityApproval == null ? void 0 : entityApproval.approval)) return [];
80327
80445
  return entityApproval.approval.filter((approvalRecord) => (approvalRecord == null ? void 0 : approvalRecord.propertyName) === property);
80328
80446
  };
80447
+ const getReferenceId = (value) => {
80448
+ if (typeof (value == null ? void 0 : value["@id"]) === "string" && value["@id"].length > 0) return value["@id"];
80449
+ return void 0;
80450
+ };
80451
+ const getReferenceValues = (value) => {
80452
+ if (Array.isArray(value)) return value.filter((item) => getReferenceId(item));
80453
+ return getReferenceId(value) ? [value] : [];
80454
+ };
80455
+ const getRemovedReferenceValues = (previousValue, currentValue) => {
80456
+ const currentIds = getReferenceValues(currentValue).map(getReferenceId).filter((id2) => typeof id2 === "string");
80457
+ return getReferenceValues(previousValue).filter((previousReference) => !currentIds.some((currentId) => entityIdsMatch(currentId, getReferenceId(previousReference))));
80458
+ };
80459
+ const getPendingUnlinkedReferenceApprovals = (approvalData, sourceEntityId, property, currentValue) => getEntityApprovalRecords(approvalData, sourceEntityId, property).filter((approvalRecord) => !approvalIsApproved(approvalRecord) && ["update", "delete", "remove"].includes(String(approvalRecord == null ? void 0 : approvalRecord.operation))).flatMap((approvalRecord) => getRemovedReferenceValues(approvalRecord == null ? void 0 : approvalRecord.previousValue, currentValue).map((reference) => ({
80460
+ approvalRecord,
80461
+ reference,
80462
+ targetEntityId: getReferenceId(reference) || ""
80463
+ })).filter((item) => item.targetEntityId));
80329
80464
  const getPendingEntityApprovalRecords = (approvalData, entityId) => {
80330
80465
  const entityApproval = getEntityApproval(approvalData, entityId);
80331
80466
  if (!Array.isArray(entityApproval == null ? void 0 : entityApproval.approval)) return [];
@@ -80380,15 +80515,19 @@ const RenderLinkedItem = ({
80380
80515
  onAcceptAiEntityDelete,
80381
80516
  onRestoreAiDeletedEntity,
80382
80517
  onAcceptAiEntityEdit,
80383
- onRejectAiEntityEdit
80518
+ onRejectAiEntityEdit,
80519
+ onAcceptAiEntityUnlink,
80520
+ onRejectAiEntityUnlink
80384
80521
  }) => {
80385
- var _a2, _b, _c, _d;
80522
+ var _a2, _b, _c, _d, _e2;
80386
80523
  const state = useStateStore();
80387
80524
  const crateManager = useContext(CrateManagerContext);
80388
80525
  const profileManager = useContext(ProfileManagerContext);
80389
80526
  const approvalContext = useContext(RoCrateApprovalContext);
80390
80527
  const [associations, setAssociations] = useState([]);
80391
80528
  const [showAiEntityDiff, setShowAiEntityDiff] = useState(false);
80529
+ const aiUnlinkSourceEntityId = typeof (entity == null ? void 0 : entity.__aiUnlinkSourceEntityId) === "string" ? entity.__aiUnlinkSourceEntityId : void 0;
80530
+ const isPendingAiEntityUnlink = Boolean((entity == null ? void 0 : entity.__aiUnlinkedEntity) && aiUnlinkSourceEntityId);
80392
80531
  const effectiveEntity = useMemo$1(() => {
80393
80532
  const hasTypes = Boolean(entity == null ? void 0 : entity["@type"]);
80394
80533
  const hasName = Boolean(entity == null ? void 0 : entity.name);
@@ -80591,6 +80730,18 @@ const RenderLinkedItem = ({
80591
80730
  onAcceptDelete: onAcceptAiEntityDelete,
80592
80731
  onRestore: onRestoreAiDeletedEntity
80593
80732
  }
80733
+ ) : isPendingAiEntityUnlink && aiUnlinkSourceEntityId ? /* @__PURE__ */ jsxRuntimeExports.jsx(
80734
+ UnlinkedLinkedEntityCard,
80735
+ {
80736
+ entity,
80737
+ displayEntity: linkDisplayEntity,
80738
+ property,
80739
+ sourceEntityId: aiUnlinkSourceEntityId,
80740
+ readonly: Boolean(((_d = state.configuration) == null ? void 0 : _d.readonly) || readonly),
80741
+ onLoadEntity: handleLoadEntity,
80742
+ onAcceptUnlink: onAcceptAiEntityUnlink,
80743
+ onRejectUnlink: onRejectAiEntityUnlink
80744
+ }
80594
80745
  ) : /* @__PURE__ */ jsxRuntimeExports.jsx(
80595
80746
  LinkedEntityCard,
80596
80747
  {
@@ -80599,7 +80750,7 @@ const RenderLinkedItem = ({
80599
80750
  hasPendingAiReview,
80600
80751
  hasAiTouchedEntity,
80601
80752
  pendingAiReviewFieldCount,
80602
- readonly: Boolean(((_d = state.configuration) == null ? void 0 : _d.readonly) || readonly),
80753
+ readonly: Boolean(((_e2 = state.configuration) == null ? void 0 : _e2.readonly) || readonly),
80603
80754
  onLoadEntity: handleLoadEntity,
80604
80755
  onUnlinkEntity: handleUnlinkEntity,
80605
80756
  onShowEntityDiff: () => setShowAiEntityDiff(true)
@@ -80627,7 +80778,9 @@ const PaginateLinkedEntities = ({
80627
80778
  onAcceptAiEntityDelete,
80628
80779
  onRestoreAiDeletedEntity,
80629
80780
  onAcceptAiEntityEdit,
80630
- onRejectAiEntityEdit
80781
+ onRejectAiEntityEdit,
80782
+ onAcceptAiEntityUnlink,
80783
+ onRejectAiEntityUnlink
80631
80784
  }) => {
80632
80785
  var _a2, _b;
80633
80786
  const { t: t2 } = useTranslation();
@@ -80720,7 +80873,9 @@ const PaginateLinkedEntities = ({
80720
80873
  onAcceptAiEntityDelete,
80721
80874
  onRestoreAiDeletedEntity,
80722
80875
  onAcceptAiEntityEdit,
80723
- onRejectAiEntityEdit
80876
+ onRejectAiEntityEdit,
80877
+ onAcceptAiEntityUnlink,
80878
+ onRejectAiEntityUnlink
80724
80879
  }
80725
80880
  ) }, entity.value["@id"])) }),
80726
80881
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex flex-row justify-center pt-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -82374,7 +82529,9 @@ const EntityProperty = ({
82374
82529
  onAcceptAiEntityDelete,
82375
82530
  onRestoreAiDeletedEntity,
82376
82531
  onAcceptAiEntityEdit,
82377
- onRejectAiEntityEdit
82532
+ onRejectAiEntityEdit,
82533
+ onAcceptAiEntityUnlink,
82534
+ onRejectAiEntityUnlink
82378
82535
  }) => {
82379
82536
  var _a2, _b;
82380
82537
  const { t: t2 } = useTranslation();
@@ -82416,7 +82573,13 @@ const EntityProperty = ({
82416
82573
  entity == null ? void 0 : entity["@id"],
82417
82574
  property
82418
82575
  );
82419
- if (!deletedEntities.length) return linkInstances;
82576
+ const unlinkedApprovals = getPendingUnlinkedReferenceApprovals(
82577
+ approvalContext == null ? void 0 : approvalContext.roCrateApproval,
82578
+ entity == null ? void 0 : entity["@id"],
82579
+ property,
82580
+ (entity == null ? void 0 : entity[property]) ?? values
82581
+ );
82582
+ if (!deletedEntities.length && !unlinkedApprovals.length) return linkInstances;
82420
82583
  const linkedEntityIds = linkInstances.map((instance2) => {
82421
82584
  var _a3;
82422
82585
  return (_a3 = instance2.value) == null ? void 0 : _a3["@id"];
@@ -82425,14 +82588,33 @@ const EntityProperty = ({
82425
82588
  idx: -1 - idx,
82426
82589
  value: deletedEntity
82427
82590
  }));
82591
+ const unlinkedLinkInstances = unlinkedApprovals.filter(({ targetEntityId }) => !linkedEntityIds.some((linkedEntityId) => entityIdsMatch(linkedEntityId, targetEntityId)) && !getPendingDeletedEntityFromApproval(approvalContext == null ? void 0 : approvalContext.roCrateApproval, targetEntityId)).map(({ reference, targetEntityId }, idx) => {
82592
+ const resolvedEntity = crateManager == null ? void 0 : crateManager.getEntity({
82593
+ id: targetEntityId,
82594
+ link: false,
82595
+ materialise: false
82596
+ });
82597
+ const linkedEntity = resolvedEntity ?? reference;
82598
+ return {
82599
+ idx: -1001 - idx,
82600
+ value: {
82601
+ ...linkedEntity,
82602
+ "@id": targetEntityId,
82603
+ "@type": (linkedEntity == null ? void 0 : linkedEntity["@type"]) ?? ["Thing"],
82604
+ name: (linkedEntity == null ? void 0 : linkedEntity.name) ?? targetEntityId,
82605
+ __aiUnlinkedEntity: true,
82606
+ __aiUnlinkSourceEntityId: entity == null ? void 0 : entity["@id"]
82607
+ }
82608
+ };
82609
+ });
82428
82610
  return lodashExports.orderBy(
82429
- [...linkInstances, ...deletedLinkInstances],
82611
+ [...linkInstances, ...deletedLinkInstances, ...unlinkedLinkInstances],
82430
82612
  [(instance2) => {
82431
- var _a3;
82432
- return ((_a3 = instance2.value) == null ? void 0 : _a3.__aiDeletedEntity) ? 0 : 1;
82613
+ var _a3, _b2;
82614
+ return ((_a3 = instance2.value) == null ? void 0 : _a3.__aiDeletedEntity) || ((_b2 = instance2.value) == null ? void 0 : _b2.__aiUnlinkedEntity) ? 0 : 1;
82433
82615
  }, "value.@id"]
82434
82616
  );
82435
- }, [approvalContext == null ? void 0 : approvalContext.roCrateApproval, entity, linkInstances, property]);
82617
+ }, [approvalContext == null ? void 0 : approvalContext.roCrateApproval, crateManager, entity, linkInstances, property, values]);
82436
82618
  const scrollToPropertyTop = useCallback(() => {
82437
82619
  var _a3;
82438
82620
  (_a3 = propertyRef.current) == null ? void 0 : _a3.scrollIntoView({
@@ -82443,9 +82625,13 @@ const EntityProperty = ({
82443
82625
  const approvalRecords = useMemo$1(() => getEntityApprovalRecords(approvalContext == null ? void 0 : approvalContext.roCrateApproval, entity == null ? void 0 : entity["@id"], property), [approvalContext == null ? void 0 : approvalContext.roCrateApproval, entity, property]);
82444
82626
  const unapprovedApprovalRecord = approvalRecords.find((approvalRecord) => !approvalIsApproved(approvalRecord));
82445
82627
  const isAiDelete = (unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.operation) === "delete";
82628
+ const isAiReferenceUnlink = Boolean(
82629
+ unapprovedApprovalRecord && ["update", "delete", "remove"].includes(String(unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.operation)) && getReferenceValues(unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.previousValue).length > 0
82630
+ );
82446
82631
  const hasDeletedPreviousValue = isAiDelete && (unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.previousValue) !== void 0;
82447
82632
  const hasCurrentPropertyValue = entityHasPropertyValue(entity, property);
82448
82633
  const renderedSimpleInstances = useMemo$1(() => {
82634
+ if (isAiReferenceUnlink) return simpleInstances;
82449
82635
  if (isAiDelete && !hasCurrentPropertyValue && hasDeletedPreviousValue) {
82450
82636
  if (Array.isArray(unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.previousValue) && (propertyDefinition == null ? void 0 : propertyDefinition.handlesMultipleValues) !== true) {
82451
82637
  return unapprovedApprovalRecord.previousValue.map((value, idx) => ({ idx, value }));
@@ -82462,11 +82648,12 @@ const EntityProperty = ({
82462
82648
  hasDeletedPreviousValue,
82463
82649
  hasCurrentPropertyValue,
82464
82650
  isAiDelete,
82651
+ isAiReferenceUnlink,
82465
82652
  propertyDefinition == null ? void 0 : propertyDefinition.handlesMultipleValues,
82466
82653
  simpleInstances,
82467
82654
  unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.previousValue
82468
82655
  ]);
82469
- const showAiReview = Boolean(unapprovedApprovalRecord && renderedSimpleInstances.length > 0);
82656
+ const showAiReview = Boolean(unapprovedApprovalRecord && !isAiReferenceUnlink && renderedSimpleInstances.length > 0);
82470
82657
  const previousValueDiffers = showAiReview && !valuesAreEqual(unapprovedApprovalRecord == null ? void 0 : unapprovedApprovalRecord.previousValue, entity == null ? void 0 : entity[property]);
82471
82658
  const showAiDiffToggle = Boolean(showAiReview && previousValueDiffers);
82472
82659
  const showAddControl = !showAiReview && !(propertyDefinition == null ? void 0 : propertyDefinition.readonly) && ((propertyDefinition == null ? void 0 : propertyDefinition.multiple) || !(values == null ? void 0 : values.length));
@@ -82628,7 +82815,9 @@ const EntityProperty = ({
82628
82815
  onAcceptAiEntityDelete,
82629
82816
  onRestoreAiDeletedEntity,
82630
82817
  onAcceptAiEntityEdit,
82631
- onRejectAiEntityEdit
82818
+ onRejectAiEntityEdit,
82819
+ onAcceptAiEntityUnlink,
82820
+ onRejectAiEntityUnlink
82632
82821
  }
82633
82822
  ),
82634
82823
  showAddControl && !((_b = state.configuration) == null ? void 0 : _b.readonly) && /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -112287,6 +112476,7 @@ const DEFAULT_TAB_PANE_WIDTH = 240;
112287
112476
  const ICON_TAB_PANE_WIDTH = 80;
112288
112477
  const MIN_LABEL_TAB_PANE_WIDTH = 100;
112289
112478
  const MAX_LABEL_TAB_PANE_WIDTH = 250;
112479
+ const AI_SCROLL_RESTORE_SUPPRESSION_MS = 2500;
112290
112480
  const clampLabelTabPaneWidth = (width) => Math.max(MIN_LABEL_TAB_PANE_WIDTH, Math.min(MAX_LABEL_TAB_PANE_WIDTH, Math.round(width)));
112291
112481
  const readPendingAddedProfileTabKeys = (entityId) => {
112292
112482
  if (typeof window === "undefined") return null;
@@ -112321,6 +112511,18 @@ const clearPendingAddedProfileTabKeys = (entityId) => {
112321
112511
  } catch {
112322
112512
  }
112323
112513
  };
112514
+ const buildAiApprovalNavigationKey = (entityId, approvalRecord) => {
112515
+ const propertyName2 = String((approvalRecord == null ? void 0 : approvalRecord.propertyName) ?? "");
112516
+ const operation = String((approvalRecord == null ? void 0 : approvalRecord.operation) ?? "");
112517
+ const timestamp = String((approvalRecord == null ? void 0 : approvalRecord.timestamp) ?? "");
112518
+ let previousValue = "";
112519
+ try {
112520
+ previousValue = JSON.stringify((approvalRecord == null ? void 0 : approvalRecord.previousValue) ?? null);
112521
+ } catch {
112522
+ previousValue = String((approvalRecord == null ? void 0 : approvalRecord.previousValue) ?? "");
112523
+ }
112524
+ return `${entityId}:${propertyName2}:${operation}:${timestamp}:${previousValue}`;
112525
+ };
112324
112526
  const RenderEntity = forwardRef((props, ref) => {
112325
112527
  var _a2, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
112326
112528
  const { entity, onLoadEntity, onSaveCrate, onSaveEntityTemplate, onWarning, onError, onAddNewProfileRequest, onRemoveProfile } = props;
@@ -112372,9 +112574,14 @@ const RenderEntity = forwardRef((props, ref) => {
112372
112574
  const pendingAddedProfileSelectionRef = useRef(null);
112373
112575
  const pendingAddedPropertyRef = useRef(null);
112374
112576
  const pendingAiScrollPropertyRef = useRef(null);
112577
+ const aiScrollRestoreSuppressedUntilRef = useRef(0);
112375
112578
  const lastAutoNavigatedAiApprovalRef = useRef(null);
112376
112579
  const [tabRailScrollState, setTabRailScrollState] = useState({ canScrollUp: false, canScrollDown: false });
112377
112580
  const debugScroll = (...args) => console.log("[recrate-scroll-debug]", ...args);
112581
+ const suppressAiScrollRestore = () => {
112582
+ aiScrollRestoreSuppressedUntilRef.current = Date.now() + AI_SCROLL_RESTORE_SUPPRESSION_MS;
112583
+ };
112584
+ const isAiScrollRestoreSuppressed = () => Date.now() < aiScrollRestoreSuppressedUntilRef.current;
112378
112585
  const pendingAiApprovals = useMemo$1(() => getPendingEntityApprovalRecords(approvalContext == null ? void 0 : approvalContext.roCrateApproval, contextEntity == null ? void 0 : contextEntity["@id"]), [approvalContext == null ? void 0 : approvalContext.roCrateApproval, contextEntity == null ? void 0 : contextEntity["@id"]]);
112379
112586
  const pendingAiApprovalProperties = useMemo$1(() => pendingAiApprovals.map((approvalRecord) => approvalRecord == null ? void 0 : approvalRecord.propertyName).filter((property) => typeof property === "string" && property.length > 0), [pendingAiApprovals]);
112380
112587
  const pendingDeletedEntityReviewProperties = useMemo$1(() => getPendingDeletedEntityReversePropertiesForSource(
@@ -112735,6 +112942,7 @@ const RenderEntity = forwardRef((props, ref) => {
112735
112942
  if (!navigationRestoreReadyRef.current) return;
112736
112943
  if (!(contextEntity == null ? void 0 : contextEntity["@id"])) return;
112737
112944
  if (((_a3 = pendingAddedPropertyRef.current) == null ? void 0 : _a3.entityId) === contextEntity["@id"]) return;
112945
+ if (isAiScrollRestoreSuppressed()) return;
112738
112946
  const viewport = activeContentRef.current;
112739
112947
  if (!viewport) return;
112740
112948
  const restoreTarget = ((_d2 = (_c2 = (_b2 = state.editorState.getNavigationState(contextEntity["@id"])) == null ? void 0 : _b2.tabStates) == null ? void 0 : _c2[activeTab]) == null ? void 0 : _d2.scrollTop) ?? 0;
@@ -112758,6 +112966,11 @@ const RenderEntity = forwardRef((props, ref) => {
112758
112966
  viewport.style.scrollBehavior = "auto";
112759
112967
  const attemptRestore = () => {
112760
112968
  if (cancelled) return;
112969
+ if (isAiScrollRestoreSuppressed()) {
112970
+ restoreInProgressRef.current = false;
112971
+ viewport.style.scrollBehavior = previousInlineScrollBehavior;
112972
+ return;
112973
+ }
112761
112974
  attempts += 1;
112762
112975
  const maxScrollable = Math.max(0, viewport.scrollHeight - viewport.clientHeight);
112763
112976
  const target = Math.min(restoreTarget, maxScrollable);
@@ -112803,7 +113016,7 @@ const RenderEntity = forwardRef((props, ref) => {
112803
113016
  cancelled = true;
112804
113017
  restoreInProgressRef.current = false;
112805
113018
  viewport.style.scrollBehavior = previousInlineScrollBehavior;
112806
- if (navigationRestoreReadyRef.current) {
113019
+ if (navigationRestoreReadyRef.current && !isAiScrollRestoreSuppressed()) {
112807
113020
  captureViewContext(activeTab, viewport.scrollTop);
112808
113021
  }
112809
113022
  viewport.removeEventListener("scroll", handleScroll);
@@ -112816,6 +113029,7 @@ const RenderEntity = forwardRef((props, ref) => {
112816
113029
  const pendingTab = pendingRestoredTabRef.current;
112817
113030
  if (!(contextEntity == null ? void 0 : contextEntity["@id"])) return;
112818
113031
  if (((_a3 = pendingAddedPropertyRef.current) == null ? void 0 : _a3.entityId) === contextEntity["@id"]) return;
113032
+ if (isAiScrollRestoreSuppressed()) return;
112819
113033
  if (pendingTab) {
112820
113034
  debugScroll("restore.pending-tab", {
112821
113035
  entityId: contextEntity["@id"],
@@ -113084,6 +113298,47 @@ const RenderEntity = forwardRef((props, ref) => {
113084
113298
  onError();
113085
113299
  }
113086
113300
  };
113301
+ const handleAcceptAiEntityUnlink = (data) => {
113302
+ var _a3, _b2;
113303
+ (_b2 = approvalContext == null ? void 0 : approvalContext.markApprovalPropertyApproved) == null ? void 0 : _b2.call(approvalContext, {
113304
+ entityId: data.sourceEntityId,
113305
+ propertyName: data.property,
113306
+ decision: "accept",
113307
+ value: (_a3 = crateManager.getEntity({
113308
+ id: data.sourceEntityId,
113309
+ link: false,
113310
+ materialise: false
113311
+ })) == null ? void 0 : _a3[data.property]
113312
+ });
113313
+ };
113314
+ const handleRejectAiEntityUnlink = (data) => {
113315
+ var _a3, _b2;
113316
+ try {
113317
+ crateManager.setProperty({
113318
+ id: data.sourceEntityId,
113319
+ property: data.property,
113320
+ value: { "@id": data.targetEntityId }
113321
+ });
113322
+ if (entityIdsMatch(data.sourceEntityId, entity == null ? void 0 : entity["@id"])) {
113323
+ refresh();
113324
+ }
113325
+ saveCratePreservingView();
113326
+ (_b2 = approvalContext == null ? void 0 : approvalContext.markApprovalPropertyApproved) == null ? void 0 : _b2.call(approvalContext, {
113327
+ entityId: data.sourceEntityId,
113328
+ propertyName: data.property,
113329
+ decision: "reject",
113330
+ value: (_a3 = crateManager.getEntity({
113331
+ id: data.sourceEntityId,
113332
+ link: false,
113333
+ materialise: false
113334
+ })) == null ? void 0 : _a3[data.property]
113335
+ });
113336
+ notifySave(data.property);
113337
+ } catch (error2) {
113338
+ console.error(error2);
113339
+ onError();
113340
+ }
113341
+ };
113087
113342
  const handleDeleteEntity = (data) => {
113088
113343
  try {
113089
113344
  crateManager.deleteEntity({ id: data.id });
@@ -113350,6 +113605,7 @@ const RenderEntity = forwardRef((props, ref) => {
113350
113605
  if (!hasFieldValue(contextEntity == null ? void 0 : contextEntity[property]) && hideEmptyFields) {
113351
113606
  setHideEmptyFields(false);
113352
113607
  }
113608
+ suppressAiScrollRestore();
113353
113609
  pendingAiScrollPropertyRef.current = property;
113354
113610
  const propertyTab = renderTabs ? findTabForProperty(tabs, property) : null;
113355
113611
  if ((propertyTab == null ? void 0 : propertyTab.name) && propertyTab.name !== activeTab) {
@@ -113369,18 +113625,18 @@ const RenderEntity = forwardRef((props, ref) => {
113369
113625
  tabs
113370
113626
  ]);
113371
113627
  useEffect(() => {
113372
- var _a3;
113373
113628
  const entityId = contextEntity == null ? void 0 : contextEntity["@id"];
113374
- const firstPendingProperty = (_a3 = pendingAiApprovals[0]) == null ? void 0 : _a3.propertyName;
113629
+ const firstPendingApproval = pendingAiApprovals[0];
113630
+ const firstPendingProperty = firstPendingApproval == null ? void 0 : firstPendingApproval.propertyName;
113375
113631
  if (!entityId || !firstPendingProperty) {
113376
113632
  lastAutoNavigatedAiApprovalRef.current = null;
113377
113633
  return;
113378
113634
  }
113379
- const autoNavigationKey = `${entityId}:${firstPendingProperty}`;
113635
+ const autoNavigationKey = `${(profileManager == null ? void 0 : profileManager.$key) ?? 0}:${buildAiApprovalNavigationKey(entityId, firstPendingApproval)}`;
113380
113636
  if (lastAutoNavigatedAiApprovalRef.current === autoNavigationKey) return;
113381
113637
  lastAutoNavigatedAiApprovalRef.current = autoNavigationKey;
113382
113638
  navigateToAiApproval(0);
113383
- }, [contextEntity == null ? void 0 : contextEntity["@id"], navigateToAiApproval, pendingAiApprovals]);
113639
+ }, [contextEntity == null ? void 0 : contextEntity["@id"], navigateToAiApproval, pendingAiApprovals, profileManager == null ? void 0 : profileManager.$key]);
113384
113640
  useEffect(() => {
113385
113641
  const pendingProperty = pendingAiScrollPropertyRef.current;
113386
113642
  if (!pendingProperty) return;
@@ -113391,8 +113647,16 @@ const RenderEntity = forwardRef((props, ref) => {
113391
113647
  return;
113392
113648
  }
113393
113649
  const cancelScroll = scrollToAiApprovalProperty(pendingProperty);
113650
+ const captureTimer = window.setTimeout(() => {
113651
+ if (activeContentRef.current) {
113652
+ captureViewContext(activeTab, activeContentRef.current.scrollTop);
113653
+ }
113654
+ }, 350);
113394
113655
  pendingAiScrollPropertyRef.current = null;
113395
- return cancelScroll;
113656
+ return () => {
113657
+ cancelScroll();
113658
+ window.clearTimeout(captureTimer);
113659
+ };
113396
113660
  }, [activeTab, contextEntity == null ? void 0 : contextEntity["@id"], renderTabs, selectedAiApprovalIndex, tabs, scrollToAiApprovalProperty]);
113397
113661
  const isEntityReference2 = (value) => Boolean(value && typeof value === "object" && typeof value["@id"] === "string");
113398
113662
  const restoreNonCoreApprovalValue = (approvalRecord) => {
@@ -113925,7 +114189,9 @@ const RenderEntity = forwardRef((props, ref) => {
113925
114189
  onAcceptAiEntityDelete: (deletedEntity) => handleAcceptAiEntityDelete(deletedEntity),
113926
114190
  onRestoreAiDeletedEntity: (deletedEntity) => handleRestoreAiDeletedEntity(deletedEntity),
113927
114191
  onAcceptAiEntityEdit: (editedEntity) => handleAcceptAiEntityEdit(editedEntity),
113928
- onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity)
114192
+ onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity),
114193
+ onAcceptAiEntityUnlink: handleAcceptAiEntityUnlink,
114194
+ onRejectAiEntityUnlink: handleRejectAiEntityUnlink
113929
114195
  }
113930
114196
  )
113931
114197
  },
@@ -114049,7 +114315,9 @@ const RenderEntity = forwardRef((props, ref) => {
114049
114315
  onAcceptAiEntityDelete: (deletedEntity) => handleAcceptAiEntityDelete(deletedEntity),
114050
114316
  onRestoreAiDeletedEntity: (deletedEntity) => handleRestoreAiDeletedEntity(deletedEntity),
114051
114317
  onAcceptAiEntityEdit: (editedEntity) => handleAcceptAiEntityEdit(editedEntity),
114052
- onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity)
114318
+ onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity),
114319
+ onAcceptAiEntityUnlink: handleAcceptAiEntityUnlink,
114320
+ onRejectAiEntityUnlink: handleRejectAiEntityUnlink
114053
114321
  }
114054
114322
  )
114055
114323
  },
@@ -114152,7 +114420,9 @@ const RenderEntity = forwardRef((props, ref) => {
114152
114420
  onAcceptAiEntityDelete: (deletedEntity) => handleAcceptAiEntityDelete(deletedEntity),
114153
114421
  onRestoreAiDeletedEntity: (deletedEntity) => handleRestoreAiDeletedEntity(deletedEntity),
114154
114422
  onAcceptAiEntityEdit: (editedEntity) => handleAcceptAiEntityEdit(editedEntity),
114155
- onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity)
114423
+ onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity),
114424
+ onAcceptAiEntityUnlink: handleAcceptAiEntityUnlink,
114425
+ onRejectAiEntityUnlink: handleRejectAiEntityUnlink
114156
114426
  }
114157
114427
  )
114158
114428
  },
@@ -114192,7 +114462,9 @@ const RenderEntity = forwardRef((props, ref) => {
114192
114462
  onAcceptAiEntityDelete: (deletedEntity) => handleAcceptAiEntityDelete(deletedEntity),
114193
114463
  onRestoreAiDeletedEntity: (deletedEntity) => handleRestoreAiDeletedEntity(deletedEntity),
114194
114464
  onAcceptAiEntityEdit: (editedEntity) => handleAcceptAiEntityEdit(editedEntity),
114195
- onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity)
114465
+ onRejectAiEntityEdit: (editedEntity) => handleRejectAiEntityEdit(editedEntity),
114466
+ onAcceptAiEntityUnlink: handleAcceptAiEntityUnlink,
114467
+ onRejectAiEntityUnlink: handleRejectAiEntityUnlink
114196
114468
  }
114197
114469
  )
114198
114470
  },
@@ -122555,7 +122827,7 @@ var EmotionCacheContext = /* @__PURE__ */ React.createContext(
122555
122827
  }) : null
122556
122828
  );
122557
122829
  var CacheProvider = EmotionCacheContext.Provider;
122558
- const version = "0.1.32-test2";
122830
+ const version = "0.1.32-test4";
122559
122831
  const pkg = {
122560
122832
  version
122561
122833
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arpproject/recrate",
3
- "version": "0.1.32-test2",
3
+ "version": "0.1.32-test4",
4
4
  "type": "module",
5
5
  "main": "./dist/recrate.es.js",
6
6
  "module": "./dist/recrate.es.js",