Fix de la sauvegarde du RTE avec la possibilité de faire un localStorage
This commit is contained in:
@@ -104,6 +104,7 @@
|
||||
--color-green-500: #00c758;
|
||||
--color-green-700: #008138;
|
||||
--color-green-800: #016630;
|
||||
--color-emerald-600: #009767;
|
||||
--color-blue-50: #eff6ff;
|
||||
--color-blue-100: #dbeafe;
|
||||
--color-blue-200: #bedbff;
|
||||
@@ -126,8 +127,10 @@
|
||||
--color-indigo-900: #312c85;
|
||||
--color-purple-100: #f3e8ff;
|
||||
--color-purple-200: #e9d5ff;
|
||||
--color-purple-500: #ac4bff;
|
||||
--color-purple-600: #9810fa;
|
||||
--color-purple-700: #8200da;
|
||||
--color-pink-500: #f6339a;
|
||||
--color-rose-100: #ffe4e6;
|
||||
--color-rose-200: #ffccd3;
|
||||
--color-rose-800: #a30037;
|
||||
@@ -243,6 +246,7 @@
|
||||
--color-green-500: lab(70.5521% -66.5147 45.8072);
|
||||
--color-green-700: lab(47.0329% -47.0239 31.4788);
|
||||
--color-green-800: lab(37.4616% -36.7971 22.9692);
|
||||
--color-emerald-600: lab(55.0481% -49.9246 15.93);
|
||||
--color-blue-50: lab(96.492% -1.14647 -5.11479);
|
||||
--color-blue-100: lab(92.0301% -2.24757 -11.6453);
|
||||
--color-blue-200: lab(86.15% -4.04379 -21.0797);
|
||||
@@ -265,8 +269,10 @@
|
||||
--color-indigo-900: lab(23.3911% 24.6978 -50.4719);
|
||||
--color-purple-100: lab(93.3333% 6.9744 -9.83434);
|
||||
--color-purple-200: lab(87.8405% 13.4282 -18.7159);
|
||||
--color-purple-500: lab(52.0183% 66.11 -78.2316);
|
||||
--color-purple-600: lab(43.0295% 75.21 -86.5669);
|
||||
--color-purple-700: lab(36.1758% 69.8525 -80.0381);
|
||||
--color-pink-500: lab(56.9303% 76.8162 -8.07021);
|
||||
--color-rose-100: lab(92.8221% 9.86832 2.60077);
|
||||
--color-rose-200: lab(86.806% 19.1909 4.07754);
|
||||
--color-rose-800: lab(34.6481% 60.802 20.1957);
|
||||
@@ -644,6 +650,10 @@
|
||||
right: calc(var(--spacing) * 4);
|
||||
}
|
||||
|
||||
.right-6 {
|
||||
right: calc(var(--spacing) * 6);
|
||||
}
|
||||
|
||||
.right-10 {
|
||||
right: calc(var(--spacing) * 10);
|
||||
}
|
||||
@@ -664,6 +674,10 @@
|
||||
bottom: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
||||
.bottom-6 {
|
||||
bottom: calc(var(--spacing) * 6);
|
||||
}
|
||||
|
||||
.bottom-10 {
|
||||
bottom: calc(var(--spacing) * 10);
|
||||
}
|
||||
@@ -680,6 +694,10 @@
|
||||
left: calc(var(--spacing) * 0);
|
||||
}
|
||||
|
||||
.left-2 {
|
||||
left: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
||||
.left-3 {
|
||||
left: calc(var(--spacing) * 3);
|
||||
}
|
||||
@@ -1316,10 +1334,6 @@
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.grid-cols-3 {
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.grid-cols-4 {
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
}
|
||||
@@ -1589,6 +1603,11 @@
|
||||
border-style: dashed;
|
||||
}
|
||||
|
||||
.border-none {
|
||||
--tw-border-style: none;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
.border-\[\#dfcdae\] {
|
||||
border-color: #dfcdae;
|
||||
}
|
||||
@@ -1709,6 +1728,14 @@
|
||||
border-color: var(--color-theme-border);
|
||||
}
|
||||
|
||||
.border-theme-panel {
|
||||
border-color: var(--color-theme-panel);
|
||||
}
|
||||
|
||||
.border-theme-text {
|
||||
border-color: var(--color-theme-text);
|
||||
}
|
||||
|
||||
.border-transparent {
|
||||
border-color: #0000;
|
||||
}
|
||||
@@ -1987,6 +2014,10 @@
|
||||
background-color: var(--color-theme-panel);
|
||||
}
|
||||
|
||||
.bg-theme-text {
|
||||
background-color: var(--color-theme-text);
|
||||
}
|
||||
|
||||
.bg-transparent {
|
||||
background-color: #0000;
|
||||
}
|
||||
@@ -2045,6 +2076,11 @@
|
||||
background-image: linear-gradient(var(--tw-gradient-stops));
|
||||
}
|
||||
|
||||
.bg-gradient-to-tr {
|
||||
--tw-gradient-position: to top right in oklab;
|
||||
background-image: linear-gradient(var(--tw-gradient-stops));
|
||||
}
|
||||
|
||||
.from-blue-500 {
|
||||
--tw-gradient-from: var(--color-blue-500);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
@@ -2074,6 +2110,11 @@
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
}
|
||||
|
||||
.from-pink-500 {
|
||||
--tw-gradient-from: var(--color-pink-500);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
}
|
||||
|
||||
.from-red-200 {
|
||||
--tw-gradient-from: var(--color-red-200);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
@@ -2096,6 +2137,12 @@
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops);
|
||||
}
|
||||
|
||||
.via-purple-500 {
|
||||
--tw-gradient-via: var(--color-purple-500);
|
||||
--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops);
|
||||
}
|
||||
|
||||
.via-yellow-100 {
|
||||
--tw-gradient-via: var(--color-yellow-100);
|
||||
--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
|
||||
@@ -2568,6 +2615,10 @@
|
||||
color: var(--color-blue-900);
|
||||
}
|
||||
|
||||
.text-emerald-600 {
|
||||
color: var(--color-emerald-600);
|
||||
}
|
||||
|
||||
.text-gray-800 {
|
||||
color: var(--color-gray-800);
|
||||
}
|
||||
@@ -2668,6 +2719,10 @@
|
||||
color: var(--color-slate-900);
|
||||
}
|
||||
|
||||
.text-theme-bg {
|
||||
color: var(--color-theme-bg);
|
||||
}
|
||||
|
||||
.text-theme-editor-text {
|
||||
color: var(--color-theme-editor-text);
|
||||
}
|
||||
@@ -2826,6 +2881,16 @@
|
||||
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
||||
}
|
||||
|
||||
.shadow-\[\#dfcdae\] {
|
||||
--tw-shadow-color: #dfcdae;
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-\[\#dfcdae\] {
|
||||
--tw-shadow-color: color-mix(in oklab, #dfcdae var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-blue-200 {
|
||||
--tw-shadow-color: #bedbff;
|
||||
}
|
||||
@@ -2858,6 +2923,48 @@
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: #e2e8f0;
|
||||
}
|
||||
|
||||
@supports (color: lab(0% 0 0)) {
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: lab(91.7353% -.998765 -4.76968);
|
||||
}
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-slate-200) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: #0f172b;
|
||||
}
|
||||
|
||||
@supports (color: lab(0% 0 0)) {
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: lab(7.78673% 1.82346 -15.0537);
|
||||
}
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-slate-900) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-theme-border {
|
||||
--tw-shadow-color: var(--color-theme-border);
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-theme-border {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-theme-border) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.ring-amber-200 {
|
||||
--tw-ring-color: var(--color-amber-200);
|
||||
}
|
||||
@@ -3033,6 +3140,13 @@
|
||||
background-color: var(--color-blue-200);
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:-translate-y-1:hover {
|
||||
--tw-translate-y: calc(var(--spacing) * -1);
|
||||
translate: var(--tw-translate-x) var(--tw-translate-y);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:scale-105:hover {
|
||||
--tw-scale-x: 105%;
|
||||
@@ -3087,6 +3201,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-red-200:hover {
|
||||
border-color: var(--color-red-200);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-slate-200:hover {
|
||||
border-color: var(--color-slate-200);
|
||||
@@ -3105,6 +3225,18 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-theme-text:hover {
|
||||
border-color: var(--color-theme-text);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-\[\#433422\]:hover {
|
||||
background-color: #433422;
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-\[\#eaddc4\]:hover {
|
||||
background-color: #eaddc4;
|
||||
@@ -3141,12 +3273,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-blue-500:hover {
|
||||
background-color: var(--color-blue-500);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-blue-500\/10:hover {
|
||||
background-color: #3080ff1a;
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -20,6 +20,7 @@ var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__proje
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$copy$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Copy$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/copy.js [app-client] (ecmascript) <export default as Copy>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$wand$2d$sparkles$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Wand2$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/wand-sparkles.js [app-client] (ecmascript) <export default as Wand2>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$check$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Check$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/check.js [app-client] (ecmascript) <export default as Check>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$check$2d$check$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__CheckCheck$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/check-check.js [app-client] (ecmascript) <export default as CheckCheck>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$refresh$2d$cw$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__RefreshCw$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/refresh-cw.js [app-client] (ecmascript) <export default as RefreshCw>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$maximize$2d$2$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Maximize2$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/maximize-2.js [app-client] (ecmascript) <export default as Maximize2>");
|
||||
var __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$loader$2d$circle$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Loader2$3e$__ = __turbopack_context__.i("[project]/Documents/00 - projet/plumeia/node_modules/lucide-react/dist/esm/icons/loader-circle.js [app-client] (ecmascript) <export default as Loader2>");
|
||||
@@ -34,13 +35,13 @@ var _s = __turbopack_context__.k.signature();
|
||||
'use client';
|
||||
;
|
||||
;
|
||||
const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["forwardRef"])(_c = _s(({ initialContent, onChange, onSave, onSelectionChange, onAiTransform }, ref)=>{
|
||||
const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["forwardRef"])(_c = _s(({ editorId, initialContent, onChange, onSave, onSelectionChange, onAiTransform }, ref)=>{
|
||||
_s();
|
||||
const contentRef = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useRef"])(null);
|
||||
const scrollContainerRef = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useRef"])(null);
|
||||
const [isFocused, setIsFocused] = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useState"])(false);
|
||||
// Auto-Save State
|
||||
const [saveStatus, setSaveStatus] = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useState"])('saved');
|
||||
const [saveStatus, setSaveStatus] = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useState"])('saved_db');
|
||||
const saveTimeoutRef = (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useRef"])(null);
|
||||
// Track sync state to avoid autosave loopbacks wiping current edits
|
||||
// Start as null so the initial useEffect ALWAYS writes initialContent to the div
|
||||
@@ -168,19 +169,33 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
(0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useEffect"])({
|
||||
"RichTextEditor.useEffect": ()=>{
|
||||
if (!contentRef.current || initialContent === undefined) return;
|
||||
// Ignore exact loopbacks from our own saves
|
||||
if (initialContent === syncRef.current) return;
|
||||
// Safety: never overwrite real content with an empty string from a stale/placeholder source
|
||||
const hasRealContent = latestContentRef.current && latestContentRef.current.trim().length > 0;
|
||||
if (!initialContent && hasRealContent) return;
|
||||
// We reached here, so initialContent is genuinely NEW data we didn't know about.
|
||||
// E.g. clicked another chapter, or data was modified in another tab/device.
|
||||
contentRef.current.innerHTML = initialContent;
|
||||
syncRef.current = initialContent;
|
||||
latestContentRef.current = initialContent;
|
||||
let contentToLoad = initialContent;
|
||||
let hasLocalDraft = false;
|
||||
// Check localStorage for a newer draft
|
||||
if (editorId) {
|
||||
const localDraft = localStorage.getItem(`draft_${editorId}`);
|
||||
if (localDraft && localDraft !== initialContent) {
|
||||
contentToLoad = localDraft;
|
||||
hasLocalDraft = true;
|
||||
setSaveStatus('saved_local');
|
||||
}
|
||||
}
|
||||
// 1. Si le contenu entrant est identique à ce qu'on a déjà, on ne touche à rien
|
||||
if (contentToLoad === contentRef.current.innerHTML) return;
|
||||
// 2. LOGIQUE CRUCIALE : On ne met à jour le DOM que si :
|
||||
// - L'éditeur est vide (premier chargement)
|
||||
// - OU le document a changé (si vous gérez des IDs de documents)
|
||||
// - OU si l'utilisateur n'est PAS en train de focus l'éditeur
|
||||
const isUserEditing = document.activeElement === contentRef.current;
|
||||
if (!isUserEditing || contentRef.current.innerHTML === "" && contentToLoad !== "") {
|
||||
contentRef.current.innerHTML = contentToLoad;
|
||||
syncRef.current = contentToLoad;
|
||||
latestContentRef.current = contentToLoad;
|
||||
}
|
||||
}
|
||||
}["RichTextEditor.useEffect"], [
|
||||
initialContent
|
||||
initialContent,
|
||||
editorId
|
||||
]);
|
||||
// Flush pending save on unmount
|
||||
(0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$index$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["useEffect"])({
|
||||
@@ -189,9 +204,11 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
"RichTextEditor.useEffect": ()=>{
|
||||
if (saveTimeoutRef.current) {
|
||||
clearTimeout(saveTimeoutRef.current);
|
||||
if (latestContentRef.current !== syncRef.current && onSave) {
|
||||
onSave(latestContentRef.current);
|
||||
}
|
||||
}
|
||||
// Always save if there are unsaved changes, regardless of timer
|
||||
if (latestContentRef.current !== syncRef.current && onSave) {
|
||||
syncRef.current = latestContentRef.current;
|
||||
onSave(latestContentRef.current);
|
||||
}
|
||||
}
|
||||
})["RichTextEditor.useEffect"];
|
||||
@@ -210,16 +227,34 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
const currentHtml = contentRef.current.innerHTML;
|
||||
latestContentRef.current = currentHtml;
|
||||
if (onChange) onChange(currentHtml);
|
||||
// Auto-Save Debounce
|
||||
if (onSave) {
|
||||
// 1. Save locally immediately
|
||||
if (editorId) {
|
||||
localStorage.setItem(`draft_${editorId}`, currentHtml);
|
||||
setSaveStatus('saved_local');
|
||||
} else {
|
||||
setSaveStatus('unsaved');
|
||||
}
|
||||
// 2. Auto-Save Debounce for DB
|
||||
if (onSave) {
|
||||
if (saveTimeoutRef.current) clearTimeout(saveTimeoutRef.current);
|
||||
saveTimeoutRef.current = setTimeout(async ()=>{
|
||||
setSaveStatus('saving');
|
||||
const htmlToSave = latestContentRef.current;
|
||||
await onSave(htmlToSave);
|
||||
syncRef.current = htmlToSave; // Record that we've synced this exact string to the server
|
||||
setSaveStatus('saved');
|
||||
// Update syncRef BEFORE calling onSave, because onSave triggers setProjects
|
||||
// which causes a re-render. The useEffect must see the updated syncRef
|
||||
// to avoid re-writing innerHTML unnecessarily.
|
||||
syncRef.current = htmlToSave;
|
||||
try {
|
||||
await onSave(htmlToSave);
|
||||
setSaveStatus('saved_db');
|
||||
if (editorId) {
|
||||
// Once saved to DB, we can consider the local draft synced if we want,
|
||||
// or just keep it there. It will be overwritten on next load.
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('Auto-save failed:', err);
|
||||
setSaveStatus('saved_local'); // Revert to local save status on error
|
||||
}
|
||||
}, 2000); // 2 seconds
|
||||
}
|
||||
}
|
||||
@@ -327,12 +362,12 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 18
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 340,
|
||||
lineNumber: 377,
|
||||
columnNumber: 7
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 327,
|
||||
lineNumber: 364,
|
||||
columnNumber: 5
|
||||
}, ("TURBOPACK compile-time value", void 0));
|
||||
const hasSelection = savedRange.current && !savedRange.current.collapsed;
|
||||
@@ -350,7 +385,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
`
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 348,
|
||||
lineNumber: 385,
|
||||
columnNumber: 7
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -362,7 +397,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Gras"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 359,
|
||||
lineNumber: 396,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -371,7 +406,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Italique"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 360,
|
||||
lineNumber: 397,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -380,14 +415,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Souligné"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 361,
|
||||
lineNumber: 398,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "w-px h-6 bg-slate-300 mx-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 362,
|
||||
lineNumber: 399,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -397,7 +432,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Titre 1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 363,
|
||||
lineNumber: 400,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -407,14 +442,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Titre 2"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 364,
|
||||
lineNumber: 401,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "w-px h-6 bg-slate-300 mx-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 365,
|
||||
lineNumber: 402,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -423,7 +458,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Aligner à gauche"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 366,
|
||||
lineNumber: 403,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -432,7 +467,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Centrer"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 367,
|
||||
lineNumber: 404,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -441,14 +476,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Aligner à droite"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 368,
|
||||
lineNumber: 405,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "w-px h-6 bg-slate-300 mx-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 369,
|
||||
lineNumber: 406,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -457,14 +492,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
label: "Liste"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 370,
|
||||
lineNumber: 407,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "flex-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 372,
|
||||
lineNumber: 409,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -474,47 +509,84 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: [
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$loader$2d$circle$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Loader2$3e$__["Loader2"], {
|
||||
size: 12,
|
||||
className: "animate-spin"
|
||||
className: "animate-spin text-blue-500"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 376,
|
||||
lineNumber: 413,
|
||||
columnNumber: 41
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Sauvegarde..."
|
||||
" ",
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
className: "text-blue-500 hidden sm:inline",
|
||||
children: "Sauvegarde en cours..."
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 413,
|
||||
columnNumber: 102
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true),
|
||||
saveStatus === 'saved' && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["Fragment"], {
|
||||
saveStatus === 'saved_local' && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["Fragment"], {
|
||||
children: [
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$check$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__Check$3e$__["Check"], {
|
||||
size: 12,
|
||||
size: 14,
|
||||
className: "text-green-500"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 377,
|
||||
columnNumber: 40
|
||||
lineNumber: 414,
|
||||
columnNumber: 46
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Sauvegardé"
|
||||
" ",
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
className: "text-green-500 hidden sm:inline",
|
||||
children: "Brouillon local"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 414,
|
||||
columnNumber: 93
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true),
|
||||
saveStatus === 'saved_db' && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["Fragment"], {
|
||||
children: [
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$check$2d$check$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__CheckCheck$3e$__["CheckCheck"], {
|
||||
size: 14,
|
||||
className: "text-emerald-600"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 415,
|
||||
columnNumber: 43
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" ",
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
className: "text-emerald-600 hidden sm:inline",
|
||||
children: "Sauvegardé"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 415,
|
||||
columnNumber: 97
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true),
|
||||
saveStatus === 'unsaved' && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
className: "text-amber-500",
|
||||
children: "Modifications non enregistrées..."
|
||||
children: "Non sauvegardé..."
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 378,
|
||||
lineNumber: 416,
|
||||
columnNumber: 40
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 375,
|
||||
lineNumber: 412,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "w-px h-6 bg-slate-300 mx-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 381,
|
||||
lineNumber: 419,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(ToolbarButton, {
|
||||
@@ -524,13 +596,13 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
isActive: showHistoryMargin
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 382,
|
||||
lineNumber: 420,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 358,
|
||||
lineNumber: 395,
|
||||
columnNumber: 7
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -560,7 +632,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
"data-placeholder": "Commencez à écrire votre chef-d'œuvre... (Clic droit pour outils IA)"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 398,
|
||||
lineNumber: 436,
|
||||
columnNumber: 11
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
showHistoryMargin && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -574,7 +646,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
className: "mx-auto mb-2 opacity-20"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 422,
|
||||
lineNumber: 460,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("p", {
|
||||
@@ -582,13 +654,13 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: "L'historique des modifications IA apparaîtra ici, aligné avec votre texte."
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 423,
|
||||
lineNumber: 461,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 421,
|
||||
lineNumber: 459,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
versionGroups.map((group)=>{
|
||||
@@ -607,7 +679,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
className: "absolute inset-0 bg-white border border-indigo-100 rounded-lg transform -translate-x-1 -translate-y-1 -z-10 shadow-sm"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 443,
|
||||
lineNumber: 481,
|
||||
columnNumber: 25
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -622,7 +694,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
className: "text-indigo-500"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 453,
|
||||
lineNumber: 491,
|
||||
columnNumber: 29
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
@@ -630,13 +702,13 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: latest.type
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 455,
|
||||
lineNumber: 493,
|
||||
columnNumber: 27
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 451,
|
||||
lineNumber: 489,
|
||||
columnNumber: 25
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -650,7 +722,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
})
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 463,
|
||||
lineNumber: 501,
|
||||
columnNumber: 27
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
isStack && (isExpanded ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$chevron$2d$up$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__ChevronUp$3e$__["ChevronUp"], {
|
||||
@@ -658,26 +730,26 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
className: "text-slate-400"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 467,
|
||||
lineNumber: 505,
|
||||
columnNumber: 42
|
||||
}, ("TURBOPACK compile-time value", void 0)) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$lucide$2d$react$2f$dist$2f$esm$2f$icons$2f$chevron$2d$down$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__$3c$export__default__as__ChevronDown$3e$__["ChevronDown"], {
|
||||
size: 14,
|
||||
className: "text-slate-400"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 467,
|
||||
lineNumber: 505,
|
||||
columnNumber: 95
|
||||
}, ("TURBOPACK compile-time value", void 0)))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 462,
|
||||
lineNumber: 500,
|
||||
columnNumber: 25
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 447,
|
||||
lineNumber: 485,
|
||||
columnNumber: 23
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
!isExpanded && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -692,7 +764,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 475,
|
||||
lineNumber: 513,
|
||||
columnNumber: 27
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -703,20 +775,20 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 10
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 482,
|
||||
lineNumber: 520,
|
||||
columnNumber: 29
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Restaurer"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 478,
|
||||
lineNumber: 516,
|
||||
columnNumber: 27
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 474,
|
||||
lineNumber: 512,
|
||||
columnNumber: 25
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
isExpanded && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -732,7 +804,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: i === 0 ? 'Dernière version' : `Version -${i}`
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 493,
|
||||
lineNumber: 531,
|
||||
columnNumber: 33
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
@@ -744,13 +816,13 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
})
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 496,
|
||||
lineNumber: 534,
|
||||
columnNumber: 33
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 492,
|
||||
lineNumber: 530,
|
||||
columnNumber: 31
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -762,7 +834,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 500,
|
||||
lineNumber: 538,
|
||||
columnNumber: 31
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -773,54 +845,54 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 10
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 507,
|
||||
lineNumber: 545,
|
||||
columnNumber: 33
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Restaurer cette version"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 503,
|
||||
lineNumber: 541,
|
||||
columnNumber: 31
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, v.id, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 491,
|
||||
lineNumber: 529,
|
||||
columnNumber: 29
|
||||
}, ("TURBOPACK compile-time value", void 0)))
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 489,
|
||||
lineNumber: 527,
|
||||
columnNumber: 25
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 439,
|
||||
lineNumber: 477,
|
||||
columnNumber: 21
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
}, group.id, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 434,
|
||||
lineNumber: 472,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0));
|
||||
})
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 418,
|
||||
lineNumber: 456,
|
||||
columnNumber: 13
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 395,
|
||||
lineNumber: 433,
|
||||
columnNumber: 9
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 391,
|
||||
lineNumber: 429,
|
||||
columnNumber: 7
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
contextMenu && /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["Fragment"], {
|
||||
@@ -834,7 +906,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
}
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 525,
|
||||
lineNumber: 563,
|
||||
columnNumber: 11
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -851,7 +923,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 24
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 536,
|
||||
lineNumber: 574,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("span", {
|
||||
@@ -859,13 +931,13 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: "L'IA travaille..."
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 537,
|
||||
lineNumber: 575,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 535,
|
||||
lineNumber: 573,
|
||||
columnNumber: 15
|
||||
}, ("TURBOPACK compile-time value", void 0)) : /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["Fragment"], {
|
||||
children: [
|
||||
@@ -874,7 +946,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: "Outils IA"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 541,
|
||||
lineNumber: 579,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -886,14 +958,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 550,
|
||||
lineNumber: 588,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Corriger l'orthographe"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 545,
|
||||
lineNumber: 583,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -905,14 +977,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 558,
|
||||
lineNumber: 596,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Reformuler"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 553,
|
||||
lineNumber: 591,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -924,14 +996,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 566,
|
||||
lineNumber: 604,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Développer"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 561,
|
||||
lineNumber: 599,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -942,21 +1014,21 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 573,
|
||||
lineNumber: 611,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Continuer l'écriture"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 569,
|
||||
lineNumber: 607,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
className: "h-px bg-slate-100 my-1"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 576,
|
||||
lineNumber: 614,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("div", {
|
||||
@@ -964,7 +1036,7 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
children: "Édition"
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 578,
|
||||
lineNumber: 616,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -976,14 +1048,14 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 587,
|
||||
lineNumber: 625,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Copier"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 582,
|
||||
lineNumber: 620,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])("button", {
|
||||
@@ -994,21 +1066,21 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
size: 14
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 594,
|
||||
lineNumber: 632,
|
||||
columnNumber: 19
|
||||
}, ("TURBOPACK compile-time value", void 0)),
|
||||
" Tout sélectionner"
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 590,
|
||||
lineNumber: 628,
|
||||
columnNumber: 17
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
}, void 0, true)
|
||||
}, void 0, false, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 530,
|
||||
lineNumber: 568,
|
||||
columnNumber: 11
|
||||
}, ("TURBOPACK compile-time value", void 0))
|
||||
]
|
||||
@@ -1016,10 +1088,10 @@ const RichTextEditor = /*#__PURE__*/ _s((0, __TURBOPACK__imported__module__$5b$p
|
||||
]
|
||||
}, void 0, true, {
|
||||
fileName: "[project]/Documents/00 - projet/plumeia/src/components/RichTextEditor.tsx",
|
||||
lineNumber: 347,
|
||||
lineNumber: 384,
|
||||
columnNumber: 5
|
||||
}, ("TURBOPACK compile-time value", void 0));
|
||||
}, "1keE8cf732OZ6jTNRl46BlQ/eZo=")), "1keE8cf732OZ6jTNRl46BlQ/eZo=");
|
||||
}, "cWpHoTw7wOYNa/FuW7N+8oRfoPQ=")), "cWpHoTw7wOYNa/FuW7N+8oRfoPQ=");
|
||||
_c1 = RichTextEditor;
|
||||
const __TURBOPACK__default__export__ = RichTextEditor;
|
||||
var _c, _c1;
|
||||
@@ -1056,6 +1128,7 @@ function WritePage() {
|
||||
const currentChapter = project.chapters?.find((c)=>c.id === currentChapterId);
|
||||
return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$node_modules$2f$next$2f$dist$2f$compiled$2f$react$2f$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$client$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$Documents$2f$00__$2d$__projet$2f$plumeia$2f$src$2f$components$2f$RichTextEditor$2e$tsx__$5b$app$2d$client$5d$__$28$ecmascript$29$__["default"], {
|
||||
ref: editorRef,
|
||||
editorId: currentChapterId,
|
||||
initialContent: currentChapter?.content || '',
|
||||
onSave: (html)=>updateChapter(currentChapterId, {
|
||||
content: html
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -405,6 +405,7 @@
|
||||
--color-green-500: #00c758;
|
||||
--color-green-700: #008138;
|
||||
--color-green-800: #016630;
|
||||
--color-emerald-600: #009767;
|
||||
--color-blue-50: #eff6ff;
|
||||
--color-blue-100: #dbeafe;
|
||||
--color-blue-200: #bedbff;
|
||||
@@ -427,8 +428,10 @@
|
||||
--color-indigo-900: #312c85;
|
||||
--color-purple-100: #f3e8ff;
|
||||
--color-purple-200: #e9d5ff;
|
||||
--color-purple-500: #ac4bff;
|
||||
--color-purple-600: #9810fa;
|
||||
--color-purple-700: #8200da;
|
||||
--color-pink-500: #f6339a;
|
||||
--color-rose-100: #ffe4e6;
|
||||
--color-rose-200: #ffccd3;
|
||||
--color-rose-800: #a30037;
|
||||
@@ -544,6 +547,7 @@
|
||||
--color-green-500: lab(70.5521% -66.5147 45.8072);
|
||||
--color-green-700: lab(47.0329% -47.0239 31.4788);
|
||||
--color-green-800: lab(37.4616% -36.7971 22.9692);
|
||||
--color-emerald-600: lab(55.0481% -49.9246 15.93);
|
||||
--color-blue-50: lab(96.492% -1.14647 -5.11479);
|
||||
--color-blue-100: lab(92.0301% -2.24757 -11.6453);
|
||||
--color-blue-200: lab(86.15% -4.04379 -21.0797);
|
||||
@@ -566,8 +570,10 @@
|
||||
--color-indigo-900: lab(23.3911% 24.6978 -50.4719);
|
||||
--color-purple-100: lab(93.3333% 6.9744 -9.83434);
|
||||
--color-purple-200: lab(87.8405% 13.4282 -18.7159);
|
||||
--color-purple-500: lab(52.0183% 66.11 -78.2316);
|
||||
--color-purple-600: lab(43.0295% 75.21 -86.5669);
|
||||
--color-purple-700: lab(36.1758% 69.8525 -80.0381);
|
||||
--color-pink-500: lab(56.9303% 76.8162 -8.07021);
|
||||
--color-rose-100: lab(92.8221% 9.86832 2.60077);
|
||||
--color-rose-200: lab(86.806% 19.1909 4.07754);
|
||||
--color-rose-800: lab(34.6481% 60.802 20.1957);
|
||||
@@ -945,6 +951,10 @@
|
||||
right: calc(var(--spacing) * 4);
|
||||
}
|
||||
|
||||
.right-6 {
|
||||
right: calc(var(--spacing) * 6);
|
||||
}
|
||||
|
||||
.right-10 {
|
||||
right: calc(var(--spacing) * 10);
|
||||
}
|
||||
@@ -965,6 +975,10 @@
|
||||
bottom: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
||||
.bottom-6 {
|
||||
bottom: calc(var(--spacing) * 6);
|
||||
}
|
||||
|
||||
.bottom-10 {
|
||||
bottom: calc(var(--spacing) * 10);
|
||||
}
|
||||
@@ -981,6 +995,10 @@
|
||||
left: calc(var(--spacing) * 0);
|
||||
}
|
||||
|
||||
.left-2 {
|
||||
left: calc(var(--spacing) * 2);
|
||||
}
|
||||
|
||||
.left-3 {
|
||||
left: calc(var(--spacing) * 3);
|
||||
}
|
||||
@@ -1617,10 +1635,6 @@
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.grid-cols-3 {
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.grid-cols-4 {
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
}
|
||||
@@ -1890,6 +1904,11 @@
|
||||
border-style: dashed;
|
||||
}
|
||||
|
||||
.border-none {
|
||||
--tw-border-style: none;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
.border-\[\#dfcdae\] {
|
||||
border-color: #dfcdae;
|
||||
}
|
||||
@@ -2010,6 +2029,14 @@
|
||||
border-color: var(--color-theme-border);
|
||||
}
|
||||
|
||||
.border-theme-panel {
|
||||
border-color: var(--color-theme-panel);
|
||||
}
|
||||
|
||||
.border-theme-text {
|
||||
border-color: var(--color-theme-text);
|
||||
}
|
||||
|
||||
.border-transparent {
|
||||
border-color: #0000;
|
||||
}
|
||||
@@ -2288,6 +2315,10 @@
|
||||
background-color: var(--color-theme-panel);
|
||||
}
|
||||
|
||||
.bg-theme-text {
|
||||
background-color: var(--color-theme-text);
|
||||
}
|
||||
|
||||
.bg-transparent {
|
||||
background-color: #0000;
|
||||
}
|
||||
@@ -2346,6 +2377,11 @@
|
||||
background-image: linear-gradient(var(--tw-gradient-stops));
|
||||
}
|
||||
|
||||
.bg-gradient-to-tr {
|
||||
--tw-gradient-position: to top right in oklab;
|
||||
background-image: linear-gradient(var(--tw-gradient-stops));
|
||||
}
|
||||
|
||||
.from-blue-500 {
|
||||
--tw-gradient-from: var(--color-blue-500);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
@@ -2375,6 +2411,11 @@
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
}
|
||||
|
||||
.from-pink-500 {
|
||||
--tw-gradient-from: var(--color-pink-500);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
}
|
||||
|
||||
.from-red-200 {
|
||||
--tw-gradient-from: var(--color-red-200);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
||||
@@ -2397,6 +2438,12 @@
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops);
|
||||
}
|
||||
|
||||
.via-purple-500 {
|
||||
--tw-gradient-via: var(--color-purple-500);
|
||||
--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
|
||||
--tw-gradient-stops: var(--tw-gradient-via-stops);
|
||||
}
|
||||
|
||||
.via-yellow-100 {
|
||||
--tw-gradient-via: var(--color-yellow-100);
|
||||
--tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
|
||||
@@ -2869,6 +2916,10 @@
|
||||
color: var(--color-blue-900);
|
||||
}
|
||||
|
||||
.text-emerald-600 {
|
||||
color: var(--color-emerald-600);
|
||||
}
|
||||
|
||||
.text-gray-800 {
|
||||
color: var(--color-gray-800);
|
||||
}
|
||||
@@ -2969,6 +3020,10 @@
|
||||
color: var(--color-slate-900);
|
||||
}
|
||||
|
||||
.text-theme-bg {
|
||||
color: var(--color-theme-bg);
|
||||
}
|
||||
|
||||
.text-theme-editor-text {
|
||||
color: var(--color-theme-editor-text);
|
||||
}
|
||||
@@ -3127,6 +3182,16 @@
|
||||
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
||||
}
|
||||
|
||||
.shadow-\[\#dfcdae\] {
|
||||
--tw-shadow-color: #dfcdae;
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-\[\#dfcdae\] {
|
||||
--tw-shadow-color: color-mix(in oklab, #dfcdae var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-blue-200 {
|
||||
--tw-shadow-color: #bedbff;
|
||||
}
|
||||
@@ -3159,6 +3224,48 @@
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: #e2e8f0;
|
||||
}
|
||||
|
||||
@supports (color: lab(0% 0 0)) {
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: lab(91.7353% -.998765 -4.76968);
|
||||
}
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-slate-200 {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-slate-200) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: #0f172b;
|
||||
}
|
||||
|
||||
@supports (color: lab(0% 0 0)) {
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: lab(7.78673% 1.82346 -15.0537);
|
||||
}
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-slate-900 {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-slate-900) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.shadow-theme-border {
|
||||
--tw-shadow-color: var(--color-theme-border);
|
||||
}
|
||||
|
||||
@supports (color: color-mix(in lab, red, red)) {
|
||||
.shadow-theme-border {
|
||||
--tw-shadow-color: color-mix(in oklab, var(--color-theme-border) var(--tw-shadow-alpha), transparent);
|
||||
}
|
||||
}
|
||||
|
||||
.ring-amber-200 {
|
||||
--tw-ring-color: var(--color-amber-200);
|
||||
}
|
||||
@@ -3334,6 +3441,13 @@
|
||||
background-color: var(--color-blue-200);
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:-translate-y-1:hover {
|
||||
--tw-translate-y: calc(var(--spacing) * -1);
|
||||
translate: var(--tw-translate-x) var(--tw-translate-y);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:scale-105:hover {
|
||||
--tw-scale-x: 105%;
|
||||
@@ -3388,6 +3502,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-red-200:hover {
|
||||
border-color: var(--color-red-200);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-slate-200:hover {
|
||||
border-color: var(--color-slate-200);
|
||||
@@ -3406,6 +3526,18 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:border-theme-text:hover {
|
||||
border-color: var(--color-theme-text);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-\[\#433422\]:hover {
|
||||
background-color: #433422;
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-\[\#eaddc4\]:hover {
|
||||
background-color: #eaddc4;
|
||||
@@ -3442,12 +3574,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-blue-500:hover {
|
||||
background-color: var(--color-blue-500);
|
||||
}
|
||||
}
|
||||
|
||||
@media (hover: hover) {
|
||||
.hover\:bg-blue-500\/10:hover {
|
||||
background-color: #3080ff1a;
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user