@arpproject/recrate 0.1.45 → 0.1.47
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.
|
@@ -6,6 +6,7 @@ export declare const getProfileTabKey: (tab: any) => string;
|
|
|
6
6
|
export declare const isProfileTab: (tab: any) => boolean;
|
|
7
7
|
export declare const findAddedProfileTab: (tabs: any[], previousTabKeys: Set<string>) => any;
|
|
8
8
|
export declare const isAboutTab: (tab: any) => boolean;
|
|
9
|
+
export declare const tabHasRenderableContent: (tab: any) => boolean;
|
|
9
10
|
export declare const tabContainsProperty: (tab: any, property: string) => boolean;
|
|
10
11
|
export declare const findTabForProperty: (tabs: any[], property: string) => any;
|
|
11
12
|
export declare const addMissingReviewPropertiesToTabs: (tabs: any[], properties: string[]) => any[];
|
|
@@ -27,7 +27,8 @@ interface UseEntityScrollRestorationOptions {
|
|
|
27
27
|
captureViewContext: (tabName?: string, explicitScrollTop?: number, options?: {
|
|
28
28
|
updateActiveTab?: boolean;
|
|
29
29
|
}) => void;
|
|
30
|
+
disabled?: boolean;
|
|
30
31
|
debugScroll?: (...args: any[]) => void;
|
|
31
32
|
}
|
|
32
|
-
declare const useEntityScrollRestoration: ({ activeTab, activeContentRef, contextEntity, renderTabs, tabsLength, extraPropertiesLength, scrollRestoreNonce, setScrollRestoreNonce, navigationRestoreReadyRef, pendingRestoredTabRef, restoreInProgressRef, pendingAddedPropertyRef, showAddPanel, reverseSidebarVisible, highlightRequiredProperties, iconView, tabPaneWidth, state, isAiScrollRestoreSuppressed, captureViewContext, debugScroll, }: UseEntityScrollRestorationOptions) => void;
|
|
33
|
+
declare const useEntityScrollRestoration: ({ activeTab, activeContentRef, contextEntity, renderTabs, tabsLength, extraPropertiesLength, scrollRestoreNonce, setScrollRestoreNonce, navigationRestoreReadyRef, pendingRestoredTabRef, restoreInProgressRef, pendingAddedPropertyRef, showAddPanel, reverseSidebarVisible, highlightRequiredProperties, iconView, tabPaneWidth, state, isAiScrollRestoreSuppressed, captureViewContext, disabled, debugScroll, }: UseEntityScrollRestorationOptions) => void;
|
|
33
34
|
export default useEntityScrollRestoration;
|
package/dist/recrate.css
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
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}.recrate-tab-icon{align-items:center;display:flex;font-size:14px;font-weight:600;height:100%;justify-content:center;width:100%}.recrate-add-only-tabs .ant-tabs-nav,.recrate-add-only-tabs .ant-tabs-nav-wrap{height:100%}.recrate-add-only-tabs .ant-tabs-nav-list{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center}.recrate-add-only-tabs .ant-tabs-tab{justify-content:center}.recrate-tab-rail{background:#fff;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;position:relative}.recrate-tab-rail-actions{border-bottom:1px solid #e5e7eb;display:flex;flex:0 0 auto;gap:8px;justify-content:center;padding:10px 8px 8px}.recrate-tab-rail-actions-only .recrate-tab-rail-actions{border-bottom:0}.recrate-tab-rail-list{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:8px 6px 16px;scrollbar-width:none}.recrate-tab-rail-list::-webkit-scrollbar{display:none}.recrate-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%}.recrate-tab-rail-item:focus-visible,.recrate-tab-rail-item:hover{background:#f1f5f9}.recrate-tab-rail-item-active{background:#eaf2ff;color:#1d4ed8}.recrate-tab-rail-item-active:before{background:#2563eb;border-radius:999px;bottom:10px;content:"";left:0;position:absolute;top:10px;width:3px}.recrate-tab-rail-item-icon{align-items:center;display:flex;justify-content:center;min-height:42px;padding:8px}.recrate-tab-rail-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.recrate-tab-rail-title{font-size:15px;font-weight:600;line-height:1.35;min-width:0;overflow-wrap:anywhere}.recrate-tab-rail-status{align-items:center;display:inline-flex;flex:0 0 auto;gap:4px}.recrate-tab-rail-remove-button{flex:0 0 auto;transition:opacity .12s ease}.recrate-tab-rail-description{color:#64748b;font-size:12px;line-height:1.35;margin-top:4px;overflow-wrap:anywhere}.recrate-tab-rail:after,.recrate-tab-rail:before{content:"";height:34px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity .12s ease;z-index:2}.recrate-tab-rail:before{background:linear-gradient(#fff,#fff0);top:53px}.recrate-tab-rail:after{background:linear-gradient(#fff0,#fff);bottom:0}.recrate-tab-rail-can-scroll-down:after,.recrate-tab-rail-can-scroll-up:before{opacity:1}.recrate-tab-rail-scroll-button{box-shadow:0 2px 8px #0f172a24;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.recrate-tab-rail-scroll-button-up{top:58px}.recrate-tab-rail-scroll-button-down{bottom:8px}.recrate-add-property-drawer{z-index:6000}.recrate-matching-properties-tooltip,.recrate-schema-filter-dropdown{z-index:6100!important}.recrate-add-property-title.ant-typography{font-size:22px;line-height:1.25;margin:0}.recrate-add-property-results{flex:1 1 auto;min-height:0;position:relative}.recrate-add-property-results-updating .recrate-add-property-list{opacity:.55}.recrate-add-property-results-mask{align-items:center;backdrop-filter:blur(1px);background:#ffffffb8;display:flex;gap:8px;inset:0;justify-content:center;min-height:96px;position:absolute;z-index:2}.recrate-add-property-list{height:100%;min-height:0}.recrate-schema-settings-body{max-height:min(60vh,640px);min-height:0;overflow:hidden}.recrate-schema-settings-scroll{min-height:0;overflow-y:auto;padding-right:4px}.recrate-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}.recrate-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}.recrate-add-property-row:focus-visible,.recrate-add-property-row:hover{background:#f8fafc;border-color:#dbeafe;box-shadow:0 1px 4px #0f172a14}.recrate-add-property-row:active{transform:translateY(1px)}.recrate-add-property-row-selected{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 1px #2563eb1f}.recrate-add-property-row-selected:before{background:#2563eb}.recrate-add-property-row-header{color:#111827;min-width:0}.recrate-add-property-row-name{color:inherit;flex:0 1 auto;font-weight:600;min-width:0;overflow-wrap:anywhere}.recrate-add-property-row-type{color:#475569;overflow-wrap:anywhere}.recrate-add-property-row-help{color:#6b7280;display:block;line-height:1.45;margin-top:4px}.recrate-add-property-row-check{color:#2563eb;margin-left:auto}.recrate-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}.recrate-quick-settings-actions{align-items:center;display:inline-flex;flex:0 0 auto;gap:6px}.recrate-quick-settings-filter{flex:1 1 260px;max-width:420px;min-width:160px}.recrate-property-compact .recrate-add-control{margin-bottom:0;margin-top:0;padding-bottom:0;padding-top:0}.recrate-property-name-with-ai{align-items:center;display:inline-flex;gap:6px;min-width:0}.recrate-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}.recrate-ai-edited-filter-button.ant-btn{color:#087446;font-weight:800;min-width:32px;padding-inline:0}.recrate-ai-edited-filter-button.ant-btn-primary{background:#12a76c;border-color:#12a76c;color:#fff}.recrate-ai-entity-review-card{box-shadow:inset 0 0 0 1px #38c88a47,0 2px 8px #186f4a14}.recrate-ai-entity-delete-card{box-shadow:0 2px 8px #b91c1c14}.recrate-ai-entity-delete-card:hover{box-shadow:0 6px 18px #b91c1c24}.recrate-ai-entity-unlink-card{box-shadow:0 2px 8px #c2610014}.recrate-ai-entity-unlink-card:hover{box-shadow:0 6px 18px #c2610024}.recrate-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}.recrate-ai-deleted-linked-entity-name{color:#000000e0;font-weight:700;overflow-wrap:anywhere}.recrate-ai-entity-reviewed-card{position:relative}.recrate-ai-entity-edited-badge{bottom:14px;position:absolute;right:14px;z-index:1}.recrate-ai-entity-review-card .recrate-ai-entity-edited-badge{right:130px}.recrate-ai-entity-review-summary{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:10px}.recrate-ai-entity-review-meta{align-items:center;display:inline-flex;gap:8px;min-width:0}.recrate-ai-entity-review-count{color:#087446;font-size:13px;font-weight:800;white-space:nowrap}.recrate-ai-entity-inline-actions{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:18px}.recrate-ai-entity-inline-actions .recrate-ai-actions{gap:12px}.recrate-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}.recrate-ai-entity-review-button.ant-btn:focus-visible,.recrate-ai-entity-review-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.recrate-ai-entity-diff-toggle.ant-btn{background:#ffffffd1;border-color:#1486553d;color:#047857;min-width:28px;padding:0;width:28px}.recrate-ai-entity-diff-toggle.ant-btn:focus-visible,.recrate-ai-entity-diff-toggle.ant-btn:hover{background:#ecfdf5!important;border-color:#14865573;color:#047857!important}.recrate-ai-entity-delete-card .recrate-ai-entity-review-count{color:#b91c1c}.recrate-ai-entity-delete-card .recrate-ai-entity-review-button.ant-btn{background:#ff5b63}.recrate-ai-entity-delete-card .recrate-ai-entity-review-button.ant-btn:focus-visible,.recrate-ai-entity-delete-card .recrate-ai-entity-review-button.ant-btn:hover{background:#f0444f!important;color:#111827!important}.recrate-ai-entity-delete-card .recrate-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.recrate-ai-entity-delete-card .recrate-ai-action-approve.ant-btn:focus-visible,.recrate-ai-entity-delete-card .recrate-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.recrate-ai-entity-delete-card .recrate-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.recrate-ai-entity-delete-card .recrate-ai-action-reject.ant-btn:focus-visible,.recrate-ai-entity-delete-card .recrate-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.recrate-ai-entity-unlink-card .recrate-ai-action-approve.ant-btn{background:#fb923c;border-color:#fb923c}.recrate-ai-entity-unlink-card .recrate-ai-action-approve.ant-btn:focus-visible,.recrate-ai-entity-unlink-card .recrate-ai-action-approve.ant-btn:hover{background:#f97316!important;border-color:#f97316!important;color:#111827!important}.recrate-ai-entity-unlink-card .recrate-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.recrate-ai-entity-unlink-card .recrate-ai-action-reject.ant-btn:focus-visible,.recrate-ai-entity-unlink-card .recrate-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.recrate-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}.recrate-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}.recrate-ai-confirm-spark{color:#12a76c;font-size:17px;line-height:1}.recrate-ai-confirm-controls{align-items:center;display:flex;gap:6px;white-space:nowrap}.recrate-ai-confirm-bar-remaining{background:linear-gradient(90deg,#fff9eb,#f9fbfd);box-shadow:inset 4px 0 0 #f59e0b}.recrate-ai-confirm-bar-remaining .recrate-ai-confirm-spark{color:#b45309}.recrate-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}.recrate-ai-review-next-entity.ant-btn:focus-visible,.recrate-ai-review-next-entity.ant-btn:hover{background:#f59e0b!important;color:#1f1710!important}.recrate-ai-bulk-action.ant-btn{align-items:center;border:0;border-radius:5px;box-shadow:0 1px 2px #0000001f;color:#14201b;display:inline-flex;font-size:12px;font-weight:800;gap:6px;height:26px;padding:0 9px}.recrate-ai-bulk-action-icon{font-size:10px}.recrate-ai-bulk-action-menu-trigger{align-items:center;align-self:stretch;cursor:pointer;display:inline-flex;margin:0 -5px 0 0;padding:0 5px}.recrate-ai-bulk-accept.ant-btn{background:#57d8a3}.recrate-ai-bulk-accept.ant-btn:focus-visible,.recrate-ai-bulk-accept.ant-btn:hover{background:#45c991!important;color:#14201b!important}.recrate-ai-bulk-reject.ant-btn{background:#ff6a71;color:#1f1717}.recrate-ai-bulk-reject.ant-btn:focus-visible,.recrate-ai-bulk-reject.ant-btn:hover{background:#f0444f!important;color:#1f1717!important}.recrate-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}.recrate-ai-stepper .ant-btn{border-radius:5px;color:#4a5a54;height:24px;width:24px}.recrate-ai-stepper .ant-btn:not(:disabled):focus-visible,.recrate-ai-stepper .ant-btn:not(:disabled):hover{background:#e6f4ec!important;color:#33443d!important}.recrate-ai-step-count{color:#34443d;font-size:13px;min-width:32px;text-align:center}.recrate-ai-review{border-radius:8px;margin-top:18px;padding-top:20px!important;position:relative}.recrate-ai-review-current .recrate-ai-suggestion,.recrate-ai-review-current.recrate-property,.recrate-ai-suggestion.recrate-ai-review-current{border-color:#12a76ce6!important;box-shadow:inset 4px 0 0 #12a76c,0 0 0 3px #12a76c1f,0 6px 18px #1969461f!important}.recrate-ai-delete.recrate-ai-review-current,.recrate-ai-review-current .recrate-ai-delete{border-color:#dc2626e0!important;box-shadow:inset 4px 0 0 #ef4444,0 0 0 3px #ef44441f,0 6px 18px #b91c1c1f!important}.recrate-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}.recrate-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}.recrate-ai-suggestion:hover{background:linear-gradient(90deg,#22c55e26,#22c55e0d 55%,#fff0)}.recrate-ai-delete:hover{background:linear-gradient(90deg,#ef444426,#ef44440d 55%,#fff0)}.recrate-ai-deleted-entity-card{border-radius:8px;margin:18px;padding:26px 18px 18px;position:relative}.recrate-ai-deleted-entity-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.recrate-ai-deleted-entity-title{color:#7f1d1d;font-size:18px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.recrate-ai-deleted-entity-id{color:#991b1b;font-size:13px;font-weight:600;margin-top:4px;overflow-wrap:anywhere}.recrate-ai-deleted-entity-controls{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:14px}.recrate-ai-deleted-entity-controls .recrate-ai-actions{gap:8px}.recrate-ai-deleted-entity-controls .recrate-ai-actions .ant-btn{border-radius:6px;font-size:13px;height:28px;min-width:66px}.recrate-ai-deleted-entity-summary{align-items:center;color:#7f1d1d;display:inline-flex;font-size:14px;font-weight:700;gap:10px;min-width:0}.recrate-ai-deleted-entity-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recrate-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}.recrate-ai-entity-delete-details-toggle.ant-btn:focus-visible,.recrate-ai-entity-delete-details-toggle.ant-btn:hover,.recrate-ai-entity-delete-details-toggle.ant-btn[aria-pressed=true]{background:#ffe8e8!important;border-color:#f87171bd;color:#b91c1c!important}.recrate-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}.recrate-ai-deleted-entity-fields-inline{grid-template-columns:minmax(100px,170px) minmax(0,1fr);margin-top:10px}.recrate-ai-deleted-entity-field{display:contents}.recrate-ai-deleted-entity-field-name,.recrate-ai-deleted-entity-field-value{background:#ffffffb8;font-size:13px;min-width:0;overflow-wrap:anywhere;padding:8px 10px}.recrate-ai-deleted-entity-field-name{color:#7f1d1d;font-weight:800}.recrate-ai-deleted-entity-field-value{color:#450a0a}.recrate-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}.recrate-ai-entity-diff-card-delete{background:#fff5f5;border-color:#dd505c7a #dd505c7a #dd505c7a #e24d5c;box-shadow:0 2px 8px #85242f14}.recrate-ai-entity-diff-card-unlink{background:#fff7ed;border-color:#f973167a #f973167a #f973167a #f97316;box-shadow:0 2px 8px #c2610014}.recrate-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}.recrate-ai-entity-diff-card-delete .recrate-ai-entity-diff-head{background:#ffe8e8;border-bottom-color:#dd505c40;color:#9a1f29}.recrate-ai-entity-diff-card-unlink .recrate-ai-entity-diff-head{background:#ffedd5;border-bottom-color:#f9731640;color:#9a3412}.recrate-ai-entity-diff-close.ant-btn{color:currentColor;flex:0 0 auto}.recrate-ai-entity-diff-close.ant-btn:focus-visible,.recrate-ai-entity-diff-close.ant-btn:hover{background:#ffffff9e!important;color:currentColor!important}.recrate-ai-entity-diff-body{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;padding:10px 0 52px}.recrate-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}.recrate-ai-entity-diff-line-context{background:#f7faf8}.recrate-ai-entity-diff-line-removed{background:#fff1f1}.recrate-ai-entity-diff-line-added{background:#effbf5}.recrate-ai-entity-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.recrate-ai-entity-diff-line-context .recrate-ai-entity-diff-marker{background:#eef2f0;color:#738078}.recrate-ai-entity-diff-line-removed .recrate-ai-entity-diff-marker{background:#ffdede;color:#9a1f29}.recrate-ai-entity-diff-line-added .recrate-ai-entity-diff-marker{background:#d8f5e7;color:#087446}.recrate-ai-entity-diff-key{color:#5b7167;padding:0 8px}.recrate-ai-entity-diff-key,.recrate-ai-entity-diff-value{font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recrate-ai-entity-diff-value{color:#1e2732;padding-right:10px}.recrate-ai-entity-diff-actions{bottom:14px;display:flex;gap:7px;position:absolute;right:14px}.recrate-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}.recrate-ai-entity-diff-button.ant-btn:focus-visible,.recrate-ai-entity-diff-button.ant-btn:hover{background:#45c991!important;color:#0d2d23!important}.recrate-ai-entity-diff-button-reject.ant-btn{background:#ff6a71;color:#171717}.recrate-ai-entity-diff-button-reject.ant-btn:focus-visible,.recrate-ai-entity-diff-button-reject.ant-btn:hover{background:#f0444f!important;color:#171717!important}.recrate-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}.recrate-ai-delete .recrate-ai-suggestion-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.recrate-ai-suggestion-badge-icon{color:#047857;font-size:14px;line-height:1}.recrate-ai-delete .recrate-ai-suggestion-badge-icon{color:#b91c1c}.recrate-ai-entity-status-badge{left:14px;top:-15px}.recrate-ai-entity-delete-card .recrate-ai-entity-status-badge{background:#fef2f2;border-color:#f871716b;box-shadow:0 1px 2px #b91c1c14;color:#b91c1c}.recrate-ai-entity-delete-card .recrate-ai-entity-status-badge .recrate-ai-suggestion-badge-icon{color:#b91c1c}.recrate-ai-entity-unlink-card .recrate-ai-entity-status-badge{background:#fff7ed;border-color:#fb923c73;box-shadow:0 1px 2px #c2610014;color:#9a3412}.recrate-ai-entity-unlink-card .recrate-ai-entity-status-badge .recrate-ai-suggestion-badge-icon{color:#c2410c}.recrate-ai-field-row{align-items:flex-start}.recrate-ai-type-field-row{flex-wrap:wrap}.recrate-ai-type-field-row .recrate-ai-field-control{flex:1 1 250px}.recrate-ai-field-control .ant-space-compact{width:100%}.recrate-ai-field-control .ant-input,.recrate-ai-field-control .ant-input-affix-wrapper,.recrate-ai-field-control .ant-input-number,.recrate-ai-field-control .ant-picker,.recrate-ai-field-control .ant-select-selector,.recrate-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}.recrate-ai-delete .recrate-ai-field-control .ant-input,.recrate-ai-delete .recrate-ai-field-control .ant-input-affix-wrapper,.recrate-ai-delete .recrate-ai-field-control .ant-input-number,.recrate-ai-delete .recrate-ai-field-control .ant-picker,.recrate-ai-delete .recrate-ai-field-control .ant-select-selector,.recrate-ai-delete .recrate-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}.recrate-ai-field-control .ant-space-compact>.ant-input,.recrate-ai-field-control .ant-space-compact>.ant-input-affix-wrapper,.recrate-ai-field-control .ant-space-compact>textarea.ant-input{border-end-end-radius:8px!important;border-start-end-radius:8px!important}.recrate-ai-field-control .ant-space-compact>.ant-btn{display:none}.recrate-context-review-drawer .ant-drawer-content{overflow:hidden}.recrate-context-review-drawer .ant-drawer-body{display:flex;flex-direction:column;min-height:0}.recrate-context-review{display:flex;flex:1 1 auto;flex-direction:column;gap:14px;min-height:0;overflow:hidden;padding:18px 20px 0}.recrate-context-review-summary{align-items:flex-start;background:linear-gradient(90deg,#f0fbf5,#f8fbfd);border:1px solid #38c88a4d;border-radius:8px;box-shadow:inset 4px 0 0 #38c88a,0 2px 8px #186f4a14;display:flex;gap:12px;padding:12px 14px}.recrate-context-review-spark{background:#57d8a3;border-radius:999px;box-shadow:0 1px 2px #0f172a2e;color:#063f2a;display:grid;flex:0 0 auto;font-size:12px;font-weight:900;height:32px;line-height:1;place-items:center;width:32px}.recrate-context-review-description.ant-typography{color:#2d3b35;font-size:14px;font-weight:650;line-height:1.45;margin:0;min-width:0}.recrate-ai-context-diff{background:#f0fbf5;border:1px solid #38c88a8c;border-left:4px solid #38c88a;border-radius:8px;box-shadow:0 2px 8px #186f4a14;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.recrate-ai-context-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:38px;padding:0 14px}.recrate-ai-context-diff-body{background:#fff;flex:1 1 auto;min-height:0;overflow:auto}.recrate-ai-context-diff-line{align-items:stretch;border-bottom:1px solid #0000000f;display:grid;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;grid-template-columns:32px 48px 48px minmax(0,1fr);line-height:1.45;min-width:0}.recrate-ai-context-diff-line:last-child{border-bottom:0}.recrate-ai-context-diff-marker{align-self:stretch;display:grid;font-size:16px;font-weight:900;place-items:center}.recrate-ai-context-diff-gutter{align-items:flex-start;background:#ffffff8a;border-right:1px solid #0000000d;color:#7b8781;display:flex;justify-content:flex-end;min-width:0;padding:7px 8px 7px 0;-webkit-user-select:none;user-select:none}.recrate-ai-context-diff-value{color:#1e2732;margin:0;min-width:0;overflow:visible;overflow-wrap:anywhere;padding:7px 12px;white-space:pre-wrap;word-break:break-word}.recrate-ai-context-diff-line-context{background:#fbfcfd}.recrate-ai-context-diff-line-removed{background:#fff1f1}.recrate-ai-context-diff-line-removed .recrate-ai-context-diff-marker{background:#ffdede;color:#9a1f29}.recrate-ai-context-diff-line-added{background:#effbf5}.recrate-ai-context-diff-line-added .recrate-ai-context-diff-marker{background:#d8f5e7;color:#087446}.recrate-ai-context-diff-line-omitted{background:#f7faf8;border:0;border-bottom:1px solid #0000000f;min-height:30px;text-align:left;width:100%}.recrate-ai-context-diff-line-omitted .recrate-ai-context-diff-marker{background:#eef2f0;color:#738078;font-size:12px}.recrate-ai-context-diff-line-omitted .recrate-ai-context-diff-gutter{background:#f7faf8}.recrate-ai-context-diff-omitted-button{cursor:pointer;outline:none}.recrate-ai-context-diff-omitted-button:hover{background:#eef8f2}.recrate-ai-context-diff-omitted-button:hover .recrate-ai-context-diff-gutter,.recrate-ai-context-diff-omitted-button:hover .recrate-ai-context-diff-marker{background:#e1f2e8}.recrate-ai-context-diff-omitted-button:focus-visible{box-shadow:inset 0 0 0 2px #12a76c8c}.recrate-ai-context-diff-omitted-label{align-items:center;color:#5b7167;display:flex;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;font-weight:800;min-width:0;padding:6px 12px}.recrate-context-review-actions{background:#fff;border-top:1px solid #dce5e0;box-shadow:0 -6px 14px #0f172a0d;display:flex;flex:0 0 auto;gap:8px;justify-content:flex-end;padding:14px 20px 18px}.recrate-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%}.recrate-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}.recrate-ai-field-diff-chip{color:#087446;flex:0 0 auto;font-size:12px}.recrate-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}.recrate-ai-field-diff-line:last-child{border-bottom:0}.recrate-ai-field-diff-marker{align-self:stretch;display:grid;font-weight:900;place-items:center}.recrate-ai-field-diff-value{color:#27322d;margin:0;min-width:0;overflow:auto;overflow-wrap:anywhere;padding:7px 11px;white-space:pre-wrap}.recrate-ai-field-diff-line-removed{background:#fff1f1}.recrate-ai-field-diff-line-removed .recrate-ai-field-diff-marker{background:#ffdede;color:#9a1f29}.recrate-ai-field-diff-line-added{background:#effbf5}.recrate-ai-field-diff-line-added .recrate-ai-field-diff-marker{background:#d8f5e7;color:#087446}.recrate-ai-field-diff-empty{color:#7b8781;font-style:italic}.recrate-ai-actions{align-items:flex-start;display:flex;flex:0 0 auto;gap:18px}.recrate-ai-type-actions{flex:1 1 260px;flex-wrap:wrap;justify-content:flex-end;max-width:100%;min-width:0}.recrate-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}.recrate-ai-action-diff.ant-btn{background:#fff;border:1px solid #d4ddd8;color:#0f172a;min-width:36px;padding:0;width:36px}.recrate-ai-action-diff.ant-btn:focus-visible,.recrate-ai-action-diff.ant-btn:hover{background:#f5f8f6!important;border-color:#9bc7b3!important;color:#087446!important}.recrate-ai-action-diff.ant-btn[aria-pressed=true]{background:#d8f5e7;border-color:#9bc7b3;color:#087446}.recrate-ai-action-approve.ant-btn{background:#57d8a3;border-color:#57d8a3}.recrate-ai-action-approve.ant-btn:focus-visible,.recrate-ai-action-approve.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.recrate-ai-action-reject.ant-btn,.recrate-ai-delete .recrate-ai-action-approve.ant-btn{background:#ff5b63;border-color:#ff5b63}.recrate-ai-delete .recrate-ai-action-approve.ant-btn:focus-visible,.recrate-ai-delete .recrate-ai-action-approve.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}.recrate-ai-delete .recrate-ai-action-reject.ant-btn{background:#57d8a3;border-color:#57d8a3}.recrate-ai-delete .recrate-ai-action-reject.ant-btn:focus-visible,.recrate-ai-delete .recrate-ai-action-reject.ant-btn:hover{background:#45c991!important;border-color:#45c991!important;color:#111827!important}.recrate-ai-action-reject.ant-btn:focus-visible,.recrate-ai-action-reject.ant-btn:hover{background:#f0444f!important;border-color:#f0444f!important;color:#111827!important}@media (max-width:900px){.recrate-ai-confirm-bar{grid-template-columns:1fr}.recrate-ai-confirm-controls{flex-wrap:wrap}.recrate-ai-stepper{border-left:0;margin-left:0;padding-left:0}.recrate-ai-field-row{flex-wrap:wrap}.recrate-ai-actions{justify-content:flex-start;width:100%}}@media (max-width:640px){.recrate-quick-settings-header{flex-wrap:wrap}.recrate-quick-settings-filter{flex-basis:100%;max-width:none}}.recrate,.recrate .recrate-ant{display:flex;flex-direction:column;height:100vh;min-height:100vh}.recrate .ant-tabs-left .ant-tabs-nav,.recrate .ant-tabs-right .ant-tabs-nav,.recrate-editor-scroll{height:100%}.recrate .ant-tabs-bottom .ant-tabs-nav-wrap,.recrate .ant-tabs-top .ant-tabs-nav-wrap{overflow-x:auto}
|
|
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}.sticky{position:sticky}.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}.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);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,)}.\!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,)!important}.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}}}
|
|
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}.sticky{position:sticky}.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}.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}.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);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,)}.\!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,)!important}.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}
|
package/dist/recrate.es.js
CHANGED
|
@@ -4809,7 +4809,7 @@ const seedToken = Object.assign(Object.assign({}, defaultPresetColors), {
|
|
|
4809
4809
|
// Motion
|
|
4810
4810
|
motion: true
|
|
4811
4811
|
});
|
|
4812
|
-
const round
|
|
4812
|
+
const round = Math.round;
|
|
4813
4813
|
function splitColorStr(str, parseNum) {
|
|
4814
4814
|
const match2 = str.replace(/^[^(]*\((.*)/, "$1").replace(/\).*/, "").match(/\d*\.?\d+%?/g) || [];
|
|
4815
4815
|
const numList = match2.map((item) => parseFloat(item));
|
|
@@ -4927,7 +4927,7 @@ class FastColor {
|
|
|
4927
4927
|
if (delta === 0) {
|
|
4928
4928
|
this._h = 0;
|
|
4929
4929
|
} else {
|
|
4930
|
-
this._h = round
|
|
4930
|
+
this._h = round(60 * (this.r === this.getMax() ? (this.g - this.b) / delta + (this.g < this.b ? 6 : 0) : this.g === this.getMax() ? (this.b - this.r) / delta + 2 : (this.r - this.g) / delta + 4));
|
|
4931
4931
|
}
|
|
4932
4932
|
}
|
|
4933
4933
|
return this._h;
|
|
@@ -5004,10 +5004,10 @@ class FastColor {
|
|
|
5004
5004
|
const p2 = amount / 100;
|
|
5005
5005
|
const calc = (key) => (color[key] - this[key]) * p2 + this[key];
|
|
5006
5006
|
const rgba = {
|
|
5007
|
-
r: round
|
|
5008
|
-
g: round
|
|
5009
|
-
b: round
|
|
5010
|
-
a: round
|
|
5007
|
+
r: round(calc("r")),
|
|
5008
|
+
g: round(calc("g")),
|
|
5009
|
+
b: round(calc("b")),
|
|
5010
|
+
a: round(calc("a") * 100) / 100
|
|
5011
5011
|
};
|
|
5012
5012
|
return this._c(rgba);
|
|
5013
5013
|
}
|
|
@@ -5039,7 +5039,7 @@ class FastColor {
|
|
|
5039
5039
|
const bg = this._c(background2);
|
|
5040
5040
|
const alpha2 = this.a + bg.a * (1 - this.a);
|
|
5041
5041
|
const calc = (key) => {
|
|
5042
|
-
return round
|
|
5042
|
+
return round((this[key] * this.a + bg[key] * bg.a * (1 - this.a)) / alpha2);
|
|
5043
5043
|
};
|
|
5044
5044
|
return this._c({
|
|
5045
5045
|
r: calc("r"),
|
|
@@ -5072,7 +5072,7 @@ class FastColor {
|
|
|
5072
5072
|
const bHex = (this.b || 0).toString(16);
|
|
5073
5073
|
hex2 += bHex.length === 2 ? bHex : "0" + bHex;
|
|
5074
5074
|
if (typeof this.a === "number" && this.a >= 0 && this.a < 1) {
|
|
5075
|
-
const aHex = round
|
|
5075
|
+
const aHex = round(this.a * 255).toString(16);
|
|
5076
5076
|
hex2 += aHex.length === 2 ? aHex : "0" + aHex;
|
|
5077
5077
|
}
|
|
5078
5078
|
return hex2;
|
|
@@ -5089,8 +5089,8 @@ class FastColor {
|
|
|
5089
5089
|
/** CSS support color pattern */
|
|
5090
5090
|
toHslString() {
|
|
5091
5091
|
const h = this.getHue();
|
|
5092
|
-
const s2 = round
|
|
5093
|
-
const l2 = round
|
|
5092
|
+
const s2 = round(this.getSaturation() * 100);
|
|
5093
|
+
const l2 = round(this.getLightness() * 100);
|
|
5094
5094
|
return this.a !== 1 ? `hsla(${h},${s2}%,${l2}%,${this.a})` : `hsl(${h},${s2}%,${l2}%)`;
|
|
5095
5095
|
}
|
|
5096
5096
|
/** Same as toHsb */
|
|
@@ -5166,7 +5166,7 @@ class FastColor {
|
|
|
5166
5166
|
this._l = l2;
|
|
5167
5167
|
this.a = typeof a === "number" ? a : 1;
|
|
5168
5168
|
if (s2 <= 0) {
|
|
5169
|
-
const rgb = round
|
|
5169
|
+
const rgb = round(l2 * 255);
|
|
5170
5170
|
this.r = rgb;
|
|
5171
5171
|
this.g = rgb;
|
|
5172
5172
|
this.b = rgb;
|
|
@@ -5195,9 +5195,9 @@ class FastColor {
|
|
|
5195
5195
|
b2 = secondComponent;
|
|
5196
5196
|
}
|
|
5197
5197
|
const lightnessModification = l2 - chroma / 2;
|
|
5198
|
-
this.r = round
|
|
5199
|
-
this.g = round
|
|
5200
|
-
this.b = round
|
|
5198
|
+
this.r = round((r2 + lightnessModification) * 255);
|
|
5199
|
+
this.g = round((g2 + lightnessModification) * 255);
|
|
5200
|
+
this.b = round((b2 + lightnessModification) * 255);
|
|
5201
5201
|
}
|
|
5202
5202
|
fromHsv({
|
|
5203
5203
|
h,
|
|
@@ -5209,7 +5209,7 @@ class FastColor {
|
|
|
5209
5209
|
this._s = s2;
|
|
5210
5210
|
this._v = v2;
|
|
5211
5211
|
this.a = typeof a === "number" ? a : 1;
|
|
5212
|
-
const vv = round
|
|
5212
|
+
const vv = round(v2 * 255);
|
|
5213
5213
|
this.r = vv;
|
|
5214
5214
|
this.g = vv;
|
|
5215
5215
|
this.b = vv;
|
|
@@ -5219,9 +5219,9 @@ class FastColor {
|
|
|
5219
5219
|
const hh = h / 60;
|
|
5220
5220
|
const i = Math.floor(hh);
|
|
5221
5221
|
const ff = hh - i;
|
|
5222
|
-
const p2 = round
|
|
5223
|
-
const q2 = round
|
|
5224
|
-
const t2 = round
|
|
5222
|
+
const p2 = round(v2 * (1 - s2) * 255);
|
|
5223
|
+
const q2 = round(v2 * (1 - s2 * ff) * 255);
|
|
5224
|
+
const t2 = round(v2 * (1 - s2 * (1 - ff)) * 255);
|
|
5225
5225
|
switch (i) {
|
|
5226
5226
|
case 0:
|
|
5227
5227
|
this.g = t2;
|
|
@@ -5271,7 +5271,7 @@ class FastColor {
|
|
|
5271
5271
|
fromRgbString(trimStr) {
|
|
5272
5272
|
const cells = splitColorStr(trimStr, (num, txt) => (
|
|
5273
5273
|
// Convert percentage to number. e.g. 50% -> 128
|
|
5274
|
-
txt.includes("%") ? round
|
|
5274
|
+
txt.includes("%") ? round(num / 100 * 255) : num
|
|
5275
5275
|
));
|
|
5276
5276
|
this.r = cells[0];
|
|
5277
5277
|
this.g = cells[1];
|
|
@@ -60950,6 +60950,7 @@ const isAboutTab = (tab) => {
|
|
|
60950
60950
|
const label = String((tab == null ? void 0 : tab.label) || (tab == null ? void 0 : tab.name) || "").toLowerCase();
|
|
60951
60951
|
return name2 === "about" || label === "about";
|
|
60952
60952
|
};
|
|
60953
|
+
const tabHasRenderableContent = (tab) => isAboutTab(tab) || Array.isArray(tab == null ? void 0 : tab.inputs) && tab.inputs.length > 0;
|
|
60953
60954
|
const tabContainsProperty = (tab, property) => {
|
|
60954
60955
|
var _a2;
|
|
60955
60956
|
return (_a2 = tab == null ? void 0 : tab.inputs) == null ? void 0 : _a2.some((input) => (input == null ? void 0 : input.name) === property || (input == null ? void 0 : input.id) === property);
|
|
@@ -123636,7 +123637,7 @@ const EntityEditorLayout = ({
|
|
|
123636
123637
|
profileActionRail,
|
|
123637
123638
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute right-0 top-0 bottom-0 w-1 bg-slate-300 opacity-0 group-hover:opacity-100" })
|
|
123638
123639
|
] }) }),
|
|
123639
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} flex-1 overflow-y-auto
|
|
123640
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} flex-1 overflow-y-auto min-h-0`, children: [
|
|
123640
123641
|
quickSettingsHeader,
|
|
123641
123642
|
untabbedContent
|
|
123642
123643
|
] }) }),
|
|
@@ -123663,7 +123664,7 @@ const EntityEditorLayout = ({
|
|
|
123663
123664
|
tabBarStyle: { width: "100%" }
|
|
123664
123665
|
}
|
|
123665
123666
|
) }),
|
|
123666
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} h-full overflow-y-auto
|
|
123667
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} h-full overflow-y-auto min-h-0`, children: [
|
|
123667
123668
|
quickSettingsHeader,
|
|
123668
123669
|
untabbedTopContent
|
|
123669
123670
|
] })
|
|
@@ -123676,7 +123677,7 @@ const EntityEditorLayout = ({
|
|
|
123676
123677
|
profileTabRail,
|
|
123677
123678
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute right-0 top-0 bottom-0 w-1 bg-slate-300 opacity-0 group-hover:opacity-100" })
|
|
123678
123679
|
] }) }),
|
|
123679
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} h-full overflow-y-auto
|
|
123680
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Ve.Pane, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: activeContentRef, className: `${editorScrollClassName} h-full overflow-y-auto min-h-0`, children: [
|
|
123680
123681
|
quickSettingsHeader,
|
|
123681
123682
|
tabbedRequiredWarning,
|
|
123682
123683
|
tabbedAboutContent,
|
|
@@ -124140,10 +124141,12 @@ const useEntityScrollRestoration = ({
|
|
|
124140
124141
|
state,
|
|
124141
124142
|
isAiScrollRestoreSuppressed,
|
|
124142
124143
|
captureViewContext,
|
|
124144
|
+
disabled: disabled2 = false,
|
|
124143
124145
|
debugScroll = () => void 0
|
|
124144
124146
|
}) => {
|
|
124145
124147
|
useEffect(() => {
|
|
124146
124148
|
var _a2, _b, _c, _d;
|
|
124149
|
+
if (disabled2) return;
|
|
124147
124150
|
if (!navigationRestoreReadyRef.current) return;
|
|
124148
124151
|
if (!(contextEntity == null ? void 0 : contextEntity["@id"])) return;
|
|
124149
124152
|
if (((_a2 = pendingAddedPropertyRef.current) == null ? void 0 : _a2.entityId) === contextEntity["@id"]) return;
|
|
@@ -124228,9 +124231,10 @@ const useEntityScrollRestoration = ({
|
|
|
124228
124231
|
window.cancelAnimationFrame(rafId);
|
|
124229
124232
|
window.clearTimeout(timerId);
|
|
124230
124233
|
};
|
|
124231
|
-
}, [activeTab, contextEntity == null ? void 0 : contextEntity["@id"], renderTabs, tabsLength, scrollRestoreNonce]);
|
|
124234
|
+
}, [activeTab, contextEntity == null ? void 0 : contextEntity["@id"], renderTabs, tabsLength, scrollRestoreNonce, disabled2]);
|
|
124232
124235
|
useEffect(() => {
|
|
124233
124236
|
var _a2;
|
|
124237
|
+
if (disabled2) return;
|
|
124234
124238
|
const pendingTab = pendingRestoredTabRef.current;
|
|
124235
124239
|
if (!(contextEntity == null ? void 0 : contextEntity["@id"])) return;
|
|
124236
124240
|
if (((_a2 = pendingAddedPropertyRef.current) == null ? void 0 : _a2.entityId) === contextEntity["@id"]) return;
|
|
@@ -124259,9 +124263,11 @@ const useEntityScrollRestoration = ({
|
|
|
124259
124263
|
highlightRequiredProperties,
|
|
124260
124264
|
iconView,
|
|
124261
124265
|
tabPaneWidth,
|
|
124262
|
-
contextEntity == null ? void 0 : contextEntity["@id"]
|
|
124266
|
+
contextEntity == null ? void 0 : contextEntity["@id"],
|
|
124267
|
+
disabled2
|
|
124263
124268
|
]);
|
|
124264
124269
|
useEffect(() => {
|
|
124270
|
+
if (disabled2) return;
|
|
124265
124271
|
const pendingAddedProperty = pendingAddedPropertyRef.current;
|
|
124266
124272
|
if (!pendingAddedProperty || pendingAddedProperty.entityId !== (contextEntity == null ? void 0 : contextEntity["@id"])) return;
|
|
124267
124273
|
if (pendingAddedProperty.tabName && pendingAddedProperty.tabName !== activeTab) return;
|
|
@@ -124331,7 +124337,7 @@ const useEntityScrollRestoration = ({
|
|
|
124331
124337
|
window.cancelAnimationFrame(rafId);
|
|
124332
124338
|
window.clearTimeout(timerId);
|
|
124333
124339
|
};
|
|
124334
|
-
}, [activeTab, contextEntity == null ? void 0 : contextEntity["@id"], tabsLength, extraPropertiesLength]);
|
|
124340
|
+
}, [activeTab, contextEntity == null ? void 0 : contextEntity["@id"], tabsLength, extraPropertiesLength, disabled2]);
|
|
124335
124341
|
};
|
|
124336
124342
|
const CORE_AI_REVIEW_PROPERTY_ORDER = ["@id", "@type", "name"];
|
|
124337
124343
|
const getFieldNames = (field) => {
|
|
@@ -125001,7 +125007,7 @@ const hasFieldValue = (value) => {
|
|
|
125001
125007
|
return true;
|
|
125002
125008
|
};
|
|
125003
125009
|
const RenderEntity = forwardRef((props, ref) => {
|
|
125004
|
-
var _a2, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k;
|
|
125010
|
+
var _a2, _b, _c, _d, _e2, _f, _g, _h, _i, _j, _k, _l;
|
|
125005
125011
|
const {
|
|
125006
125012
|
entity,
|
|
125007
125013
|
onLoadEntity,
|
|
@@ -125045,6 +125051,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125045
125051
|
const [hideEmptyFields, setHideEmptyFields] = useState(false);
|
|
125046
125052
|
const [showAiEditedFields, setShowAiEditedFields] = useState(false);
|
|
125047
125053
|
const [forcedScrollTarget, setForcedScrollTarget] = useState({ properties: [] });
|
|
125054
|
+
const [propertyScrollRequestNonce, setPropertyScrollRequestNonce] = useState(0);
|
|
125048
125055
|
const [selectedAiApprovalIndex, setSelectedAiApprovalIndex] = useState(0);
|
|
125049
125056
|
const [contextReviewDialogOpen, setContextReviewDialogOpen] = useState(false);
|
|
125050
125057
|
const [contextReviewEntityId, setContextReviewEntityId] = useState(void 0);
|
|
@@ -125057,6 +125064,8 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125057
125064
|
}, []);
|
|
125058
125065
|
const [tabPaneWidth, setTabPaneWidth] = useState(initialTabPaneWidth);
|
|
125059
125066
|
const labelTabPaneWidthRef = useRef(initialTabPaneWidth);
|
|
125067
|
+
const readonly = Boolean((_c = state.configuration) == null ? void 0 : _c.readonly);
|
|
125068
|
+
const previousReadonlyRef = useRef(readonly);
|
|
125060
125069
|
const persistTabWidth = useMemo$1(() => debounce((w2) => {
|
|
125061
125070
|
if (iconView) return;
|
|
125062
125071
|
const clamped = clampLabelTabPaneWidth(w2);
|
|
@@ -125141,6 +125150,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125141
125150
|
state,
|
|
125142
125151
|
isAiScrollRestoreSuppressed,
|
|
125143
125152
|
captureViewContext,
|
|
125153
|
+
disabled: readonly,
|
|
125144
125154
|
debugScroll
|
|
125145
125155
|
});
|
|
125146
125156
|
const pendingAiApprovalRecords = 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"]]);
|
|
@@ -125321,10 +125331,11 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125321
125331
|
setTabs(layout.tabs);
|
|
125322
125332
|
const navState = isCurrentHistoryEntity ? latestEntry == null ? void 0 : latestEntry.navigationState : state.editorState.getNavigationState(entity2["@id"]);
|
|
125323
125333
|
const tabNames = layout.tabs.map((tab) => tab.name);
|
|
125324
|
-
const
|
|
125325
|
-
const
|
|
125334
|
+
const restorableTabNames = readonly ? tabNames : layout.tabs.filter(tabHasRenderableContent).map((tab) => tab.name);
|
|
125335
|
+
const fallbackTab = restorableTabNames.includes("about") ? "about" : restorableTabNames[0] ?? tabNames[0] ?? "about";
|
|
125336
|
+
const currentTabStillValid = layout.renderTabs && (contextEntity == null ? void 0 : contextEntity["@id"]) === entity2["@id"] && restorableTabNames.includes(activeTab);
|
|
125326
125337
|
const savedActiveTab = (navState == null ? void 0 : navState.activeTab) ?? (isCurrentHistoryEntity ? latestEntry == null ? void 0 : latestEntry.tab : void 0);
|
|
125327
|
-
const savedTabStillValid = layout.renderTabs && typeof savedActiveTab === "string" &&
|
|
125338
|
+
const savedTabStillValid = layout.renderTabs && typeof savedActiveTab === "string" && restorableTabNames.includes(savedActiveTab);
|
|
125328
125339
|
const restoredTab = savedTabStillValid ? savedActiveTab : currentTabStillValid ? activeTab : fallbackTab;
|
|
125329
125340
|
const pendingAddedProfileSelection = pendingAddedProfileSelectionRef.current;
|
|
125330
125341
|
const pendingAddedProfileTabKeys = Array.isArray((_a3 = navState == null ? void 0 : navState.uiState) == null ? void 0 : _a3.pendingAddedProfileTabKeys) ? navState.uiState.pendingAddedProfileTabKeys : readPendingAddedProfileTabKeys(entity2["@id"]);
|
|
@@ -125379,6 +125390,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125379
125390
|
isCurrentHistoryEntity,
|
|
125380
125391
|
renderTabs: layout.renderTabs,
|
|
125381
125392
|
tabNames,
|
|
125393
|
+
restorableTabNames,
|
|
125382
125394
|
savedActiveTab,
|
|
125383
125395
|
savedTabStillValid,
|
|
125384
125396
|
currentTabStillValid,
|
|
@@ -125423,6 +125435,13 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125423
125435
|
if (!entityObj) return;
|
|
125424
125436
|
init2({ entity: entityObj });
|
|
125425
125437
|
};
|
|
125438
|
+
useEffect(() => {
|
|
125439
|
+
const wasReadonly = previousReadonlyRef.current;
|
|
125440
|
+
previousReadonlyRef.current = readonly;
|
|
125441
|
+
if (wasReadonly && !readonly && (entity == null ? void 0 : entity["@id"])) {
|
|
125442
|
+
refresh();
|
|
125443
|
+
}
|
|
125444
|
+
}, [readonly, entity == null ? void 0 : entity["@id"]]);
|
|
125426
125445
|
const handleLoadEntityWithContext = (params) => {
|
|
125427
125446
|
debugScroll("navigate", {
|
|
125428
125447
|
fromEntityId: contextEntity == null ? void 0 : contextEntity["@id"],
|
|
@@ -125759,8 +125778,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125759
125778
|
setActiveTab(propertyTab.name);
|
|
125760
125779
|
saveTabToState(propertyTab.name);
|
|
125761
125780
|
}
|
|
125762
|
-
|
|
125763
|
-
window.setTimeout(() => scrollToAiApprovalProperty(property), 120);
|
|
125781
|
+
setPropertyScrollRequestNonce((nonce) => nonce + 1);
|
|
125764
125782
|
}, [
|
|
125765
125783
|
activeTab,
|
|
125766
125784
|
captureViewContext,
|
|
@@ -125768,7 +125786,6 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125768
125786
|
hideEmptyFields,
|
|
125769
125787
|
renderTabs,
|
|
125770
125788
|
saveTabToState,
|
|
125771
|
-
scrollToAiApprovalProperty,
|
|
125772
125789
|
showAiEditedFields,
|
|
125773
125790
|
tabsWithAiReviewProperties
|
|
125774
125791
|
]);
|
|
@@ -125825,7 +125842,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125825
125842
|
pendingDeletedEntityReviewProperties,
|
|
125826
125843
|
displayedAiReviewPropertyOrder,
|
|
125827
125844
|
profileManager == null ? void 0 : profileManager.$key,
|
|
125828
|
-
(
|
|
125845
|
+
(_d = profileManager == null ? void 0 : profileManager.profile) == null ? void 0 : _d.layouts,
|
|
125829
125846
|
tabs.length
|
|
125830
125847
|
]);
|
|
125831
125848
|
useEffect(() => {
|
|
@@ -125848,7 +125865,15 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
125848
125865
|
cancelScroll();
|
|
125849
125866
|
window.clearTimeout(captureTimer);
|
|
125850
125867
|
};
|
|
125851
|
-
}, [
|
|
125868
|
+
}, [
|
|
125869
|
+
activeTab,
|
|
125870
|
+
contextEntity == null ? void 0 : contextEntity["@id"],
|
|
125871
|
+
propertyScrollRequestNonce,
|
|
125872
|
+
renderTabs,
|
|
125873
|
+
selectedAiApprovalIndex,
|
|
125874
|
+
tabsWithAiReviewProperties,
|
|
125875
|
+
scrollToAiApprovalProperty
|
|
125876
|
+
]);
|
|
125852
125877
|
const isEntityReference2 = (value) => Boolean(value && typeof value === "object" && typeof value["@id"] === "string");
|
|
125853
125878
|
const restoreNonCoreApprovalValue = (approvalRecord) => {
|
|
125854
125879
|
const property = approvalRecord == null ? void 0 : approvalRecord.propertyName;
|
|
@@ -126351,13 +126376,13 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126351
126376
|
}
|
|
126352
126377
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-row", children: [
|
|
126353
126378
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col w-full", children: [
|
|
126354
|
-
((
|
|
126379
|
+
((_e2 = state.configuration) == null ? void 0 : _e2.showControls) && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126355
126380
|
EntityEditorToolbar,
|
|
126356
126381
|
{
|
|
126357
126382
|
entity: contextEntity,
|
|
126358
126383
|
quickSettingsVisible,
|
|
126359
126384
|
reverseSidebarVisible,
|
|
126360
|
-
enableReverseLinkBrowser: (
|
|
126385
|
+
enableReverseLinkBrowser: (_f = state.configuration) == null ? void 0 : _f.enableReverseLinkBrowser,
|
|
126361
126386
|
onLoadEntity: handleLoadEntityWithContext,
|
|
126362
126387
|
onBack: () => {
|
|
126363
126388
|
captureCurrentViewContext(activeTab);
|
|
@@ -126383,7 +126408,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126383
126408
|
activePropertyLabel: selectedAiApprovalProperty ? getFieldTitle(selectedAiApprovalProperty) : void 0,
|
|
126384
126409
|
remainingEntityCount: pendingOtherAiApprovalEntities.length,
|
|
126385
126410
|
remainingFieldCount: pendingOtherAiApprovalFieldCount,
|
|
126386
|
-
readonly: (
|
|
126411
|
+
readonly: (_g = state.configuration) == null ? void 0 : _g.readonly,
|
|
126387
126412
|
canGoPrevious: selectedAiApprovalIndex > 0,
|
|
126388
126413
|
canGoNext: selectedAiApprovalIndex < pendingAiApprovals.length - 1,
|
|
126389
126414
|
onPrevious: () => navigateToAiApproval(selectedAiApprovalIndex - 1),
|
|
@@ -126397,7 +126422,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126397
126422
|
EntityEditorLayout,
|
|
126398
126423
|
{
|
|
126399
126424
|
renderTabs,
|
|
126400
|
-
tabLocation: (
|
|
126425
|
+
tabLocation: (_h = state.configuration) == null ? void 0 : _h.tabLocation,
|
|
126401
126426
|
iconView,
|
|
126402
126427
|
tabPaneWidth,
|
|
126403
126428
|
scrollViewportHeight,
|
|
@@ -126410,7 +126435,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126410
126435
|
quickSettingsHeader: renderQuickSettingsHeader(),
|
|
126411
126436
|
untabbedContent: renderUntabbedEntityFields(),
|
|
126412
126437
|
untabbedTopContent: renderUntabbedEntityFields({ untabbedNameSavedClassName: "bg-green-200 rounded p-1 my-1" }),
|
|
126413
|
-
tabbedRequiredWarning: !((
|
|
126438
|
+
tabbedRequiredWarning: !((_i = state.configuration) == null ? void 0 : _i.readonly) && ((_j = tabs.find((t22) => t22.name === activeTab)) == null ? void 0 : _j.missingRequiredData) && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
126414
126439
|
FloatingRequiredPropertiesWarning,
|
|
126415
126440
|
{
|
|
126416
126441
|
onClick: () => setHighlightRequiredProperties(!highlightRequiredProperties)
|
|
@@ -126418,7 +126443,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126418
126443
|
),
|
|
126419
126444
|
tabbedAboutContent: activeTab === "about" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: showFieldHelp ? "space-y-3" : "space-y-1", children: [
|
|
126420
126445
|
renderCoreEntityFields("tabbed"),
|
|
126421
|
-
renderEntityPropertyFields(((
|
|
126446
|
+
renderEntityPropertyFields(((_k = tabsWithAiReviewProperties.find((tab) => tab.name === "about")) == null ? void 0 : _k.inputs) ?? [], "tabbed")
|
|
126422
126447
|
] }),
|
|
126423
126448
|
tabbedOtherTabsContent: tabsWithAiReviewProperties.map((tab) => {
|
|
126424
126449
|
if (tab.name === activeTab && tab.name !== "about") {
|
|
@@ -126439,7 +126464,7 @@ const RenderEntity = forwardRef((props, ref) => {
|
|
|
126439
126464
|
onClose: handleCloseContextReviewDialog,
|
|
126440
126465
|
onUpdateContext: handleUpdateContext,
|
|
126441
126466
|
approvalRecord: currentContextApprovalItem == null ? void 0 : currentContextApprovalItem.approvalRecord,
|
|
126442
|
-
readonly: (
|
|
126467
|
+
readonly: (_l = state.configuration) == null ? void 0 : _l.readonly,
|
|
126443
126468
|
onAcceptAiContext: handleAcceptAiContext,
|
|
126444
126469
|
onRejectAiContext: handleRejectAiContext
|
|
126445
126470
|
}
|
|
@@ -126503,75 +126528,6 @@ function requireIsEmpty() {
|
|
|
126503
126528
|
}
|
|
126504
126529
|
var isEmptyExports = requireIsEmpty();
|
|
126505
126530
|
const isEmpty = /* @__PURE__ */ getDefaultExportFromCjs(isEmptyExports);
|
|
126506
|
-
var toFinite_1;
|
|
126507
|
-
var hasRequiredToFinite;
|
|
126508
|
-
function requireToFinite() {
|
|
126509
|
-
if (hasRequiredToFinite) return toFinite_1;
|
|
126510
|
-
hasRequiredToFinite = 1;
|
|
126511
|
-
var toNumber = requireToNumber();
|
|
126512
|
-
var INFINITY = 1 / 0, MAX_INTEGER = 17976931348623157e292;
|
|
126513
|
-
function toFinite(value) {
|
|
126514
|
-
if (!value) {
|
|
126515
|
-
return value === 0 ? value : 0;
|
|
126516
|
-
}
|
|
126517
|
-
value = toNumber(value);
|
|
126518
|
-
if (value === INFINITY || value === -INFINITY) {
|
|
126519
|
-
var sign = value < 0 ? -1 : 1;
|
|
126520
|
-
return sign * MAX_INTEGER;
|
|
126521
|
-
}
|
|
126522
|
-
return value === value ? value : 0;
|
|
126523
|
-
}
|
|
126524
|
-
toFinite_1 = toFinite;
|
|
126525
|
-
return toFinite_1;
|
|
126526
|
-
}
|
|
126527
|
-
var toInteger_1;
|
|
126528
|
-
var hasRequiredToInteger;
|
|
126529
|
-
function requireToInteger() {
|
|
126530
|
-
if (hasRequiredToInteger) return toInteger_1;
|
|
126531
|
-
hasRequiredToInteger = 1;
|
|
126532
|
-
var toFinite = requireToFinite();
|
|
126533
|
-
function toInteger(value) {
|
|
126534
|
-
var result = toFinite(value), remainder = result % 1;
|
|
126535
|
-
return result === result ? remainder ? result - remainder : result : 0;
|
|
126536
|
-
}
|
|
126537
|
-
toInteger_1 = toInteger;
|
|
126538
|
-
return toInteger_1;
|
|
126539
|
-
}
|
|
126540
|
-
var _createRound;
|
|
126541
|
-
var hasRequired_createRound;
|
|
126542
|
-
function require_createRound() {
|
|
126543
|
-
if (hasRequired_createRound) return _createRound;
|
|
126544
|
-
hasRequired_createRound = 1;
|
|
126545
|
-
var root = require_root(), toInteger = requireToInteger(), toNumber = requireToNumber(), toString2 = requireToString$1();
|
|
126546
|
-
var nativeIsFinite = root.isFinite, nativeMin = Math.min;
|
|
126547
|
-
function createRound(methodName) {
|
|
126548
|
-
var func = Math[methodName];
|
|
126549
|
-
return function(number4, precision) {
|
|
126550
|
-
number4 = toNumber(number4);
|
|
126551
|
-
precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);
|
|
126552
|
-
if (precision && nativeIsFinite(number4)) {
|
|
126553
|
-
var pair2 = (toString2(number4) + "e").split("e"), value = func(pair2[0] + "e" + (+pair2[1] + precision));
|
|
126554
|
-
pair2 = (toString2(value) + "e").split("e");
|
|
126555
|
-
return +(pair2[0] + "e" + (+pair2[1] - precision));
|
|
126556
|
-
}
|
|
126557
|
-
return func(number4);
|
|
126558
|
-
};
|
|
126559
|
-
}
|
|
126560
|
-
_createRound = createRound;
|
|
126561
|
-
return _createRound;
|
|
126562
|
-
}
|
|
126563
|
-
var round_1;
|
|
126564
|
-
var hasRequiredRound;
|
|
126565
|
-
function requireRound() {
|
|
126566
|
-
if (hasRequiredRound) return round_1;
|
|
126567
|
-
hasRequiredRound = 1;
|
|
126568
|
-
var createRound = require_createRound();
|
|
126569
|
-
var round2 = createRound("round");
|
|
126570
|
-
round_1 = round2;
|
|
126571
|
-
return round_1;
|
|
126572
|
-
}
|
|
126573
|
-
var roundExports = requireRound();
|
|
126574
|
-
const round = /* @__PURE__ */ getDefaultExportFromCjs(roundExports);
|
|
126575
126531
|
var uniq_1;
|
|
126576
126532
|
var hasRequiredUniq;
|
|
126577
126533
|
function requireUniq() {
|
|
@@ -126781,7 +126737,6 @@ class CrateManager {
|
|
|
126781
126737
|
messages: []
|
|
126782
126738
|
}
|
|
126783
126739
|
};
|
|
126784
|
-
const t0 = performance.now();
|
|
126785
126740
|
if (!crate["@context"]) {
|
|
126786
126741
|
this.__setError("init", `The crate file does not have a '@context'.`);
|
|
126787
126742
|
return;
|
|
@@ -126866,25 +126821,27 @@ class CrateManager {
|
|
|
126866
126821
|
);
|
|
126867
126822
|
}
|
|
126868
126823
|
}
|
|
126824
|
+
const reverseLinkIds = {};
|
|
126869
126825
|
for (let i = 0; i < this.graphLength; i++) {
|
|
126870
126826
|
const normalisedEntity = this.crate["@graph"][i];
|
|
126871
126827
|
if (!normalisedEntity) continue;
|
|
126872
126828
|
for (let property of Object.keys(normalisedEntity)) {
|
|
126873
126829
|
if (this.coreProperties.includes(property)) continue;
|
|
126874
126830
|
normalisedEntity[property].forEach((entry) => {
|
|
126831
|
+
var _a2, _b;
|
|
126875
126832
|
if (entry == null ? void 0 : entry["@id"])
|
|
126876
126833
|
entry["@id"] = idMap[entry["@id"]] ? idMap[entry["@id"]] : entry["@id"];
|
|
126877
126834
|
if ((entry == null ? void 0 : entry["@id"]) && this.reverse[entry["@id"]]) {
|
|
126878
126835
|
if (!this.reverse[entry["@id"]][property]) {
|
|
126879
126836
|
this.reverse[entry["@id"]][property] = [];
|
|
126880
126837
|
}
|
|
126881
|
-
|
|
126882
|
-
|
|
126883
|
-
)
|
|
126884
|
-
if (!links.includes(normalisedEntity["@id"])) {
|
|
126838
|
+
reverseLinkIds[_a2 = entry["@id"]] ?? (reverseLinkIds[_a2] = {});
|
|
126839
|
+
(_b = reverseLinkIds[entry["@id"]])[property] ?? (_b[property] = /* @__PURE__ */ new Set());
|
|
126840
|
+
if (!reverseLinkIds[entry["@id"]][property].has(normalisedEntity["@id"])) {
|
|
126885
126841
|
this.reverse[entry["@id"]][property].push({
|
|
126886
126842
|
"@id": normalisedEntity["@id"]
|
|
126887
126843
|
});
|
|
126844
|
+
reverseLinkIds[entry["@id"]][property].add(normalisedEntity["@id"]);
|
|
126888
126845
|
}
|
|
126889
126846
|
}
|
|
126890
126847
|
});
|
|
@@ -126898,8 +126855,6 @@ class CrateManager {
|
|
|
126898
126855
|
if (context) {
|
|
126899
126856
|
this.providedContext = structuredClone(this.__normaliseContext(context));
|
|
126900
126857
|
}
|
|
126901
|
-
const t1 = performance.now();
|
|
126902
|
-
console.debug(`Crate ingest and prep: ${round(t1 - t0, 1)}ms`);
|
|
126903
126858
|
}
|
|
126904
126859
|
/** Get the context
|
|
126905
126860
|
* @returns the crate context
|
|
@@ -127970,7 +127925,6 @@ class CrateManager {
|
|
|
127970
127925
|
|
|
127971
127926
|
*/
|
|
127972
127927
|
exportCrate() {
|
|
127973
|
-
const t0 = performance.now();
|
|
127974
127928
|
let entities = this.crate["@graph"].filter((e3) => {
|
|
127975
127929
|
return !isUndefined(e3);
|
|
127976
127930
|
}).map((e3) => {
|
|
@@ -127994,8 +127948,6 @@ class CrateManager {
|
|
|
127994
127948
|
"@context": context.length === 1 ? context[0] : context,
|
|
127995
127949
|
"@graph": entities
|
|
127996
127950
|
};
|
|
127997
|
-
const t1 = performance.now();
|
|
127998
|
-
console.debug(`Crate export: ${round(t1 - t0, 1)}ms`);
|
|
127999
127951
|
return crate;
|
|
128000
127952
|
}
|
|
128001
127953
|
/**
|
|
@@ -135246,7 +135198,7 @@ var EmotionCacheContext = /* @__PURE__ */ React.createContext(
|
|
|
135246
135198
|
}) : null
|
|
135247
135199
|
);
|
|
135248
135200
|
var CacheProvider = EmotionCacheContext.Provider;
|
|
135249
|
-
const version = "0.1.
|
|
135201
|
+
const version = "0.1.47";
|
|
135250
135202
|
const pkg = {
|
|
135251
135203
|
version
|
|
135252
135204
|
};
|
|
@@ -135453,7 +135405,6 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135453
135405
|
resetTabOnEntityChange = false,
|
|
135454
135406
|
resetTabOnProfileChange = false,
|
|
135455
135407
|
quickSettingsVisible,
|
|
135456
|
-
stateScopeKey,
|
|
135457
135408
|
onReady,
|
|
135458
135409
|
onError,
|
|
135459
135410
|
onWarning,
|
|
@@ -135476,11 +135427,23 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135476
135427
|
const renderEntityRef = useRef(null);
|
|
135477
135428
|
const lastHandledScrollRequestNonceRef = useRef(void 0);
|
|
135478
135429
|
const keys2 = useRef({ cm: 0, pm: 0, lookups: 0 });
|
|
135430
|
+
const cmRef = useRef(null);
|
|
135479
135431
|
const lastHandledEntityIdRef = useRef(void 0);
|
|
135432
|
+
const entityIdRef = useRef(entityId);
|
|
135433
|
+
const lastInitializedCrateRef = useRef(void 0);
|
|
135434
|
+
const lastInitializedProfileRef = useRef(void 0);
|
|
135435
|
+
const lastInitializedEntityTimestampsRef = useRef(void 0);
|
|
135436
|
+
const lastAppliedConfigurationRef = useRef(void 0);
|
|
135480
135437
|
const hasProfileActionHandler = Boolean(onAddNewProfileRequest || onRemoveProfile);
|
|
135481
135438
|
useEffect(() => {
|
|
135482
135439
|
setApprovalState(roCrateApproval);
|
|
135483
135440
|
}, [roCrateApproval]);
|
|
135441
|
+
useEffect(() => {
|
|
135442
|
+
cmRef.current = cm;
|
|
135443
|
+
}, [cm]);
|
|
135444
|
+
useEffect(() => {
|
|
135445
|
+
entityIdRef.current = entityId;
|
|
135446
|
+
}, [entityId]);
|
|
135484
135447
|
const markApprovalPropertyApproved = useCallback((params) => {
|
|
135485
135448
|
const { entityId: entityId2, propertyName: propertyName2, decision, value } = params;
|
|
135486
135449
|
if (!entityId2 || !propertyName2) return;
|
|
@@ -135631,6 +135594,14 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135631
135594
|
lookup,
|
|
135632
135595
|
hasProfileActionHandler
|
|
135633
135596
|
]);
|
|
135597
|
+
const createProfileManager = useCallback((profileToUse) => {
|
|
135598
|
+
const profileClone = profileToUse ? JSON.parse(JSON.stringify(profileToUse)) : {};
|
|
135599
|
+
const nextPm = new ProfileManager({
|
|
135600
|
+
profile: profileClone
|
|
135601
|
+
});
|
|
135602
|
+
nextPm.$key = ++keys2.current.pm;
|
|
135603
|
+
return nextPm;
|
|
135604
|
+
}, []);
|
|
135634
135605
|
const init2 = useCallback(async () => {
|
|
135635
135606
|
var _a2, _b;
|
|
135636
135607
|
instance.changeLanguage(language2);
|
|
@@ -135640,6 +135611,29 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135640
135611
|
setError(false);
|
|
135641
135612
|
return;
|
|
135642
135613
|
}
|
|
135614
|
+
const currentCm = cmRef.current;
|
|
135615
|
+
const sameCrate = !!currentCm && lastInitializedCrateRef.current === crate;
|
|
135616
|
+
const sameEntityTimestampMode = lastInitializedEntityTimestampsRef.current === enableEntityTimestamps;
|
|
135617
|
+
if (sameCrate && sameEntityTimestampMode && lastInitializedProfileRef.current === profile) {
|
|
135618
|
+
if (lastAppliedConfigurationRef.current !== configuration) {
|
|
135619
|
+
state.setConfiguration(configuration);
|
|
135620
|
+
lastAppliedConfigurationRef.current = configuration;
|
|
135621
|
+
}
|
|
135622
|
+
setReady(true);
|
|
135623
|
+
return;
|
|
135624
|
+
}
|
|
135625
|
+
if (sameCrate && sameEntityTimestampMode) {
|
|
135626
|
+
const nextPm = createProfileManager(profile);
|
|
135627
|
+
currentCm.setProfileManager(nextPm);
|
|
135628
|
+
if (nextPm.context) currentCm.setContext(nextPm.context);
|
|
135629
|
+
setPm(nextPm);
|
|
135630
|
+
state.setConfiguration(configuration);
|
|
135631
|
+
lastInitializedProfileRef.current = profile;
|
|
135632
|
+
lastAppliedConfigurationRef.current = configuration;
|
|
135633
|
+
setReady(true);
|
|
135634
|
+
onReady == null ? void 0 : onReady();
|
|
135635
|
+
return;
|
|
135636
|
+
}
|
|
135643
135637
|
const serialisedContext = JSON.stringify(crate["@context"] ?? "");
|
|
135644
135638
|
schemaRegistry.setActiveSpecification(
|
|
135645
135639
|
serialisedContext.includes("/ro/crate/1.1/") ? "1.1" : "1.2"
|
|
@@ -135648,11 +135642,7 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135648
135642
|
crate,
|
|
135649
135643
|
entityTimestamps: enableEntityTimestamps
|
|
135650
135644
|
});
|
|
135651
|
-
const
|
|
135652
|
-
const newPm = new ProfileManager({
|
|
135653
|
-
profile: profileClone
|
|
135654
|
-
});
|
|
135655
|
-
newPm.$key = ++keys2.current.pm;
|
|
135645
|
+
const newPm = createProfileManager(profile);
|
|
135656
135646
|
newCm.setProfileManager(newPm);
|
|
135657
135647
|
if (newPm.context) newCm.setContext(newPm.context);
|
|
135658
135648
|
if (lookup) {
|
|
@@ -135672,6 +135662,10 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135672
135662
|
setCm(newCm);
|
|
135673
135663
|
setPm(newPm);
|
|
135674
135664
|
setError(false);
|
|
135665
|
+
lastInitializedCrateRef.current = crate;
|
|
135666
|
+
lastInitializedProfileRef.current = profile;
|
|
135667
|
+
lastInitializedEntityTimestampsRef.current = enableEntityTimestamps;
|
|
135668
|
+
lastAppliedConfigurationRef.current = configuration;
|
|
135675
135669
|
state.setConfiguration(configuration);
|
|
135676
135670
|
try {
|
|
135677
135671
|
const graph = Array.isArray(crate == null ? void 0 : crate["@graph"]) ? crate["@graph"] : [];
|
|
@@ -135679,7 +135673,7 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135679
135673
|
graph.filter((entry) => entry && typeof entry === "object" && typeof entry["@id"] === "string").map((entry) => String(entry["@id"]))
|
|
135680
135674
|
);
|
|
135681
135675
|
state.editorState.prune(validIds);
|
|
135682
|
-
const candidateIds = [(_a2 = state.editorState.latest()) == null ? void 0 : _a2.id,
|
|
135676
|
+
const candidateIds = [(_a2 = state.editorState.latest()) == null ? void 0 : _a2.id, entityIdRef.current, "./"];
|
|
135683
135677
|
let nextEntity = null;
|
|
135684
135678
|
for (const candidateId of candidateIds) {
|
|
135685
135679
|
if (!candidateId) continue;
|
|
@@ -135703,7 +135697,7 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135703
135697
|
setError(true);
|
|
135704
135698
|
onError == null ? void 0 : onError({ error: "Failed to initialize entity" });
|
|
135705
135699
|
}
|
|
135706
|
-
}, [crate, profile,
|
|
135700
|
+
}, [crate, profile, lookup, configuration, createProfileManager, enableEntityTimestamps, language2, onError, onReady, state.editorState]);
|
|
135707
135701
|
const handleSetCurrentEntity = useCallback((params) => {
|
|
135708
135702
|
const { id: id2, updateState = true } = params;
|
|
135709
135703
|
if (!id2 || !cm) return;
|
|
@@ -135762,7 +135756,10 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135762
135756
|
lastHandledEntityIdRef.current = void 0;
|
|
135763
135757
|
return;
|
|
135764
135758
|
}
|
|
135765
|
-
if (
|
|
135759
|
+
if (!cm) {
|
|
135760
|
+
return;
|
|
135761
|
+
}
|
|
135762
|
+
if (lastHandledEntityIdRef.current === entityId && entityId === (contextEntity == null ? void 0 : contextEntity["@id"])) {
|
|
135766
135763
|
return;
|
|
135767
135764
|
}
|
|
135768
135765
|
lastHandledEntityIdRef.current = entityId;
|
|
@@ -135770,7 +135767,7 @@ function RecrateCrateBuilderInner(props) {
|
|
|
135770
135767
|
const shouldPushToHistory = ((_a2 = state.editorState.latest()) == null ? void 0 : _a2.id) !== entityId;
|
|
135771
135768
|
handleSetCurrentEntity({ id: entityId, updateState: shouldPushToHistory });
|
|
135772
135769
|
}
|
|
135773
|
-
}, [entityId, contextEntity, handleSetCurrentEntity, state.editorState]);
|
|
135770
|
+
}, [cm, entityId, contextEntity, handleSetCurrentEntity, state.editorState]);
|
|
135774
135771
|
useEffect(() => {
|
|
135775
135772
|
const request = scrollToFieldRequest;
|
|
135776
135773
|
if (!(request == null ? void 0 : request.entityId) || !request.fieldName || !ready) {
|