diff --git a/.dev_session/SESSION_INFO b/.dev_session/SESSION_INFO index 3cc23a7d9..a73edbd87 100644 --- a/.dev_session/SESSION_INFO +++ b/.dev_session/SESSION_INFO @@ -1 +1 @@ -{"task_id": "34588f42-8544-8046-85d4-d7895ed9b29c", "token": "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", "readme_path": "readme.md", "session_start_time": "2026-04-18T20:58:29.155246"} \ No newline at end of file +{"task_id": "34288f42-8544-800e-b866-dfcbc22bd4e5", "token": "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", "readme_path": "readme.md", "session_start_time": "2026-05-04T06:53:43.831976"} \ No newline at end of file diff --git a/check_db_links.py b/check_db_links.py new file mode 100644 index 000000000..0d10db268 --- /dev/null +++ b/check_db_links.py @@ -0,0 +1,25 @@ +import sqlite3 +import os + +db_path = "/app/fotograf-de-scraper/backend/data/fotograf_jobs.db" +if not os.path.exists(db_path): + print(f"Database not found at {db_path}") +else: + conn = sqlite3.connect(db_path) + cursor = conn.cursor() + + # Check candidates missing links for the current job + job_id = "576228454" + cursor.execute(""" + SELECT COUNT(*) + FROM job_participants + WHERE job_id = ? + AND has_orders = 0 + AND digital_package_ordered = 0 + AND logins <= 5 + AND quick_login_url IS NULL + """, (job_id,)) + missing = cursor.fetchone()[0] + print(f"Missing links for candidates in job {job_id}: {missing}") + + conn.close() diff --git a/check_tables.py b/check_tables.py new file mode 100644 index 000000000..305fb336e --- /dev/null +++ b/check_tables.py @@ -0,0 +1,9 @@ +import sqlite3 + +db_path = "/app/fotograf-de-scraper/backend/data/fotograf_jobs.db" +conn = sqlite3.connect(db_path) +cursor = conn.cursor() +cursor.execute("SELECT name FROM sqlite_master WHERE type='table';") +tables = cursor.fetchall() +print(f"Tables: {[t[0] for t in tables]}") +conn.close() diff --git a/fotograf-de-scraper/backend/database.py b/fotograf-de-scraper/backend/database.py index 8f3e4732d..51942b7ce 100644 --- a/fotograf-de-scraper/backend/database.py +++ b/fotograf-de-scraper/backend/database.py @@ -49,6 +49,16 @@ class ReleaseHistory(Base): recipient_count = Column(Integer) scheduled_time = Column(String, nullable=True) +class ReminderHistory(Base): + __tablename__ = "reminder_history" + id = Column(Integer, primary_key=True) + job_id = Column(String, index=True) + timestamp = Column(DateTime, default=datetime.datetime.utcnow) + recipient_count = Column(Integer) + max_logins = Column(Integer) + recipients_json = Column(String) # JSON list of emails/names/children + scheduled_time = Column(String, nullable=True) + class JobParticipant(Base): __tablename__ = "job_participants" id = Column(Integer, primary_key=True) @@ -64,6 +74,7 @@ class JobParticipant(Base): logins = Column(Integer, default=0) has_orders = Column(Integer, default=0) # 0 for false, 1 for true digital_package_ordered = Column(Integer, default=0) # 0 for false, 1 for true + quick_login_url = Column(String, nullable=True) last_synced = Column(DateTime, default=datetime.datetime.utcnow) Base.metadata.create_all(bind=engine) diff --git a/fotograf-de-scraper/backend/errors/error_login_error_20260503_132223.png b/fotograf-de-scraper/backend/errors/error_login_error_20260503_132223.png new file mode 100644 index 000000000..5c0e67c26 Binary files /dev/null and b/fotograf-de-scraper/backend/errors/error_login_error_20260503_132223.png differ diff --git a/fotograf-de-scraper/frontend/dist/assets/index-BnIZj8RP.css b/fotograf-de-scraper/frontend/dist/assets/index-BnIZj8RP.css new file mode 100644 index 000000000..c93e0ebe2 --- /dev/null +++ b/fotograf-de-scraper/frontend/dist/assets/index-BnIZj8RP.css @@ -0,0 +1 @@ +*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-full{bottom:100%}.left-1\/2{left:50%}.top-0{top:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-full{height:100%}.max-h-60{max-height:15rem}.max-h-80{max-height:20rem}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-7xl{max-width:80rem}.max-w-\[120px\]{max-width:120px}.max-w-\[200px\]{max-width:200px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(249 250 251/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-sm{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-50{--tw-border-opacity:1;border-color:rgb(249 250 251/var(--tw-border-opacity,1))}.border-indigo-100{--tw-border-opacity:1;border-color:rgb(224 231 255/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-indigo-600{--tw-border-opacity:1;border-color:rgb(79 70 229/var(--tw-border-opacity,1))}.border-purple-600{--tw-border-opacity:1;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-teal-600{--tw-bg-opacity:1;background-color:rgb(13 148 136/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-opacity-75{--tw-bg-opacity:.75}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pr-4{padding-right:1rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[8px\]{font-size:8px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-indigo-400{--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-700{--tw-text-opacity:1;color:rgb(67 56 202/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.accent-amber-500{accent-color:#f59e0b}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 #0000000d;--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-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)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-4:after{content:var(--tw-content);height:1rem}.after\:w-4:after{content:var(--tw-content);width:1rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.hover\:border-amber-300:hover{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.hover\:border-emerald-300:hover{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.hover\:border-indigo-200:hover{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.hover\:border-indigo-300:hover{--tw-border-opacity:1;border-color:rgb(165 180 252/var(--tw-border-opacity,1))}.hover\:border-purple-300:hover{--tw-border-opacity:1;border-color:rgb(216 180 254/var(--tw-border-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-amber-50\/30:hover{background-color:#fffbeb4d}.hover\:bg-amber-700:hover{--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.hover\:bg-indigo-200:hover{--tw-bg-opacity:1;background-color:rgb(199 210 254/var(--tw-bg-opacity,1))}.hover\:bg-indigo-50:hover{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.hover\:bg-indigo-50\/30:hover{background-color:#eef2ff4d}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-teal-700:hover{--tw-bg-opacity:1;background-color:rgb(15 118 110/var(--tw-bg-opacity,1))}.hover\:text-emerald-700:hover{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-indigo-600:hover{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.focus\:border-emerald-500:focus{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-emerald-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(16 185 129/var(--tw-ring-opacity,1))}.focus\:ring-indigo-100:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(224 231 255/var(--tw-ring-opacity,1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.group:hover .group-hover\:text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}.peer:checked~.peer-checked\:bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x:100%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:outline-none{outline-offset:2px;outline:2px solid #0000}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.peer:focus~.peer-focus\:ring-amber-300{--tw-ring-opacity:1;--tw-ring-color:rgb(252 211 77/var(--tw-ring-opacity,1))}@media (width>=640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:ml-3{margin-left:.75rem}.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:max-w-4xl{max-width:56rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-center{align-items:center}.sm\:p-0{padding:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (width>=768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:flex{display:flex}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (width>=1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0} diff --git a/fotograf-de-scraper/frontend/dist/assets/index-CSrvX8PS.css b/fotograf-de-scraper/frontend/dist/assets/index-CSrvX8PS.css deleted file mode 100644 index 49b14c2bf..000000000 --- a/fotograf-de-scraper/frontend/dist/assets/index-CSrvX8PS.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-full{height:100%}.max-h-60{max-height:15rem}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-7xl{max-width:80rem}.max-w-\[120px\]{max-width:120px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(249 250 251/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-50{--tw-border-opacity:1;border-color:rgb(249 250 251/var(--tw-border-opacity,1))}.border-indigo-600{--tw-border-opacity:1;border-color:rgb(79 70 229/var(--tw-border-opacity,1))}.border-purple-600{--tw-border-opacity:1;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-teal-600{--tw-bg-opacity:1;background-color:rgb(13 148 136/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-opacity-75{--tw-bg-opacity:.75}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pr-4{padding-right:1rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-bottom{vertical-align:bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-700{--tw-text-opacity:1;color:rgb(67 56 202/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 #0000000d;--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-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)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.hover\:border-amber-300:hover{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.hover\:border-emerald-300:hover{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.hover\:border-indigo-200:hover{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.hover\:border-indigo-300:hover{--tw-border-opacity:1;border-color:rgb(165 180 252/var(--tw-border-opacity,1))}.hover\:border-purple-300:hover{--tw-border-opacity:1;border-color:rgb(216 180 254/var(--tw-border-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-amber-700:hover{--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.hover\:bg-indigo-200:hover{--tw-bg-opacity:1;background-color:rgb(199 210 254/var(--tw-bg-opacity,1))}.hover\:bg-indigo-50\/30:hover{background-color:#eef2ff4d}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-teal-700:hover{--tw-bg-opacity:1;background-color:rgb(15 118 110/var(--tw-bg-opacity,1))}.hover\:text-emerald-700:hover{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-indigo-600:hover{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.focus\:border-emerald-500:focus{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-emerald-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(16 185 129/var(--tw-ring-opacity,1))}.focus\:ring-indigo-100:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(224 231 255/var(--tw-ring-opacity,1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.group:hover .group-hover\:text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}@media (width>=640px){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:ml-3{margin-left:.75rem}.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:max-w-4xl{max-width:56rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-center{align-items:center}.sm\:p-0{padding:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (width>=768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:flex{display:flex}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (width>=1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0} diff --git a/fotograf-de-scraper/frontend/dist/assets/index-DnGj5v5p.js b/fotograf-de-scraper/frontend/dist/assets/index-DnGj5v5p.js new file mode 100644 index 000000000..8f534fbee --- /dev/null +++ b/fotograf-de-scraper/frontend/dist/assets/index-DnGj5v5p.js @@ -0,0 +1,47 @@ +var e=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var t=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var ee=Array.isArray;function te(){}var S={H:null,A:null,T:null,S:null},ne=Object.prototype.hasOwnProperty;function re(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ie(e,t){return re(e.type,t,e.props)}function ae(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function oe(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var se=/\/+/g;function ce(e,t){return typeof e==`object`&&e&&e.key!=null?oe(``+e.key):t.toString(36)}function le(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(te,te):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ue(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,ue(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ce(e,0):a,ee(o)?(i=``,c!=null&&(i=c.replace(se,`$&/`)+`/`),ue(o,r,i,``,function(e){return e})):o!=null&&(ae(o)&&(o=ie(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(se,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(ee(e))for(var u=0;u{n.exports=t()})),r=e((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,ee||(ee=!0,ae());else{var t=n(l);t!==null&&ce(x,t.startTime-e)}}var ee=!1,te=-1,S=5,ne=-1;function re(){return g?!0:!(e.unstable_now()-net&&re());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&ce(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ae():ee=!1}}}var ae;if(typeof y==`function`)ae=function(){y(ie)};else if(typeof MessageChannel<`u`){var oe=new MessageChannel,se=oe.port2;oe.port1.onmessage=ie,ae=function(){se.postMessage(null)}}else ae=function(){_(ie,0)};function ce(t,n){te=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(te),te=-1):h=!0,ce(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,ee||(ee=!0,ae()))),r},e.unstable_shouldYield=re,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),i=e(((e,t)=>{t.exports=r()})),a=e((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=a()})),s=e((e=>{var t=i(),r=n(),a=o();function s(e){var t=`https://react.dev/errors/`+e;if(1he||(e.current=me[he],me[he]=null,he--)}function E(e,t){he++,me[he]=e.current,e.current=t}var _e=ge(null),ve=ge(null),ye=ge(null),be=ge(null);function xe(e,t){switch(E(ye,t),E(ve,e),E(_e,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}T(_e),E(_e,e)}function Se(){T(_e),T(ve),T(ye)}function Ce(e){e.memoizedState!==null&&E(be,e);var t=_e.current,n=Hd(t,e.type);t!==n&&(E(ve,e),E(_e,n))}function we(e){ve.current===e&&(T(_e),T(ve)),be.current===e&&(T(be),Qf._currentValue=pe)}var Te,Ee;function De(e){if(Te===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Te=t&&t[1]||``,Ee=-1)`:-1i||c[r]!==l[i]){var u=` +`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Oe=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?De(n):``}function Ae(e,t){switch(e.tag){case 26:case 27:case 5:return De(e.type);case 16:return De(`Lazy`);case 13:return e.child!==t&&t!==null?De(`Suspense Fallback`):De(`Suspense`);case 19:return De(`SuspenseList`);case 0:case 15:return ke(e.type,!1);case 11:return ke(e.type.render,!1);case 1:return ke(e.type,!0);case 31:return De(`Activity`);default:return``}}function je(e){try{var t=``,n=null;do t+=Ae(e,n),n=e,e=e.return;while(e);return t}catch(e){return` +Error generating stack: `+e.message+` +`+e.stack}}var Me=Object.prototype.hasOwnProperty,Ne=t.unstable_scheduleCallback,Pe=t.unstable_cancelCallback,Fe=t.unstable_shouldYield,Ie=t.unstable_requestPaint,Le=t.unstable_now,Re=t.unstable_getCurrentPriorityLevel,ze=t.unstable_ImmediatePriority,Be=t.unstable_UserBlockingPriority,Ve=t.unstable_NormalPriority,He=t.unstable_LowPriority,Ue=t.unstable_IdlePriority,We=t.log,Ge=t.unstable_setDisableYieldValue,Ke=null,D=null;function qe(e){if(typeof We==`function`&&Ge(e),D&&typeof D.setStrictMode==`function`)try{D.setStrictMode(Ke,e)}catch{}}var O=Math.clz32?Math.clz32:Xe,Je=Math.log,Ye=Math.LN2;function Xe(e){return e>>>=0,e===0?32:31-(Je(e)/Ye|0)|0}var Ze=256,Qe=262144,$e=4194304;function et(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function tt(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=et(n))):i=et(o):i=et(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=et(n))):i=et(o)):i=et(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function nt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function rt(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function it(){var e=$e;return $e<<=1,!($e&62914560)&&($e=4194304),e}function at(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function ot(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function st(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0`u`||window.document===void 0||window.document.createElement===void 0),_n=!1;if(gn)try{var vn={};Object.defineProperty(vn,`passive`,{get:function(){_n=!0}}),window.addEventListener(`test`,vn,vn),window.removeEventListener(`test`,vn,vn)}catch{_n=!1}var yn=null,bn=null,xn=null;function Sn(){if(xn)return xn;var e,t=bn,n=t.length,r,i=`value`in yn?yn.value:yn.textContent,a=i.length;for(e=0;e=er),rr=` `,ir=!1;function ar(e,t){switch(e){case`keyup`:return Qn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function or(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var sr=!1;function cr(e,t){switch(e){case`compositionend`:return or(t);case`keypress`:return t.which===32?(ir=!0,rr):null;case`textInput`:return e=t.data,e===rr&&ir?null:e;default:return null}}function lr(e,t){if(sr)return e===`compositionend`||!$n&&ar(e,t)?(e=Sn(),xn=bn=yn=null,sr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=jr(n)}}function Nr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Pr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Ut(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ut(e.document)}return t}function Fr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Ir=gn&&`documentMode`in document&&11>=document.documentMode,Lr=null,Rr=null,zr=null,Br=!1;function Vr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Br||Lr==null||Lr!==Ut(r)||(r=Lr,`selectionStart`in r&&Fr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),zr&&Ar(zr,r)||(zr=r,r=Ed(Rr,`onSelect`),0>=o,i-=o,Ni=1<<32-O(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),o=a(_,o,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),N&&Fi(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(i,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(i,h),o=a(y,o,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(i,h),N&&Fi(i,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(i,v.value,l),v!==null&&(o=a(v,o,g),d===null?u=v:d.sibling=v,d=v);return N&&Fi(i,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,i,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),o=a(v,o,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(i,e)}),N&&Fi(i,g),u}function b(e,r,a,c){if(typeof a==`object`&&a&&a.type===y&&a.key===null&&(a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case _:a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===y){if(r.tag===7){n(e,r.sibling),c=i(r,a.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===ae&&Na(l)===r.type){n(e,r.sibling),c=i(r,a.props),Ba(c,a),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}a.type===y?(c=bi(a.props.children,e.mode,c,a.key),c.return=e,e=c):(c=yi(a.type,a.key,a.props,null,e.mode,c),Ba(c,a),c.return=e,e=c)}return o(e);case v:a:{for(l=a.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),c=i(r,a.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=Ci(a,e.mode,c),c.return=e,e=c}return o(e);case ae:return a=Na(a),b(e,r,a,c)}if(fe(a))return h(e,r,a,c);if(le(a)){if(l=le(a),typeof l!=`function`)throw Error(s(150));return a=l.call(a),g(e,r,a,c)}if(typeof a.then==`function`)return b(e,r,za(a),c);if(a.$$typeof===te)return b(e,r,ca(e,a),c);Va(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(a=``+a,r!==null&&r.tag===6?(n(e,r.sibling),c=i(r,a),c.return=e,e=c):(n(e,r),c=xi(a,e.mode,c),c.return=e,e=c),o(e)):n(e,r)}return function(e,t,n,r){try{Ra=0;var i=b(e,t,n,r);return La=null,i}catch(t){if(t===Da||t===ka)throw t;var a=hi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ua=Ha(!0),Wa=Ha(!1),Ga=!1;function Ka(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function qa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ja(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ya(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,G&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=fi(e),di(e,null,n),t}return ci(e,r,t,n),fi(e)}function Xa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}function Za(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Qa=!1;function $a(){if(Qa){var e=va;if(e!==null)throw e}}function eo(e,t,n,r){Qa=!1;var i=e.updateQueue;Ga=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(J&f)===f:(r&f)===f){f!==0&&f===_a&&(Qa=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(m=g.payload,typeof m==`function`){d=m.call(_,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=g.payload,f=typeof m==`function`?m.call(_,d,f):m,f==null)break a;d=h({},d,f);break a;case 2:Ga=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Gl|=o,e.lanes=o,e.memoizedState=d}}function to(e,t){if(typeof e!=`function`)throw Error(s(191,e));e.call(t)}function no(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=C.T,s={};C.T=s,Ls(e,!1,t,n);try{var c=i(),l=C.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Is(e,t,xa(c,r),pu(e)):Is(e,t,r,pu(e))}catch(n){Is(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{w.p=a,o!==null&&s.types!==null&&(o.types=s.types),C.T=o}}function Es(){}function Ds(e,t,n,r){if(e.tag!==5)throw Error(s(476));var i=Os(e).queue;Ts(e,i,t,pe,n===null?Es:function(){return ks(e),n(r)})}function Os(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:pe,baseState:pe,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:pe},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function ks(e){var t=Os(e);t.next===null&&(t=e.alternate.memoizedState),Is(e,t.next.queue,{},pu())}function As(){return sa(Qf)}function js(){return B().memoizedState}function Ms(){return B().memoizedState}function Ns(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ja(n);var r=Ya(t,e,n);r!==null&&(hu(r,t,n),Xa(r,t,n)),t={cache:pa()},e.payload=t;return}t=t.return}}function Ps(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Rs(e)?zs(t,n):(n=li(e,t,n,r),n!==null&&(hu(n,e,r),Bs(n,t,r)))}function Fs(e,t,n){Is(e,t,n,pu())}function Is(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Rs(e))zs(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,kr(s,o))return ci(e,t,i,0),K===null&&si(),!1}catch{}if(n=li(e,t,i,r),n!==null)return hu(n,e,r),Bs(n,t,r),!0}return!1}function Ls(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Rs(e)){if(t)throw Error(s(479))}else t=li(e,n,r,2),t!==null&&hu(t,e,2)}function Rs(e){var t=e.alternate;return e===I||t!==null&&t===I}function zs(e,t){yo=vo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Bs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}var Vs={readContext:sa,use:Io,useCallback:z,useContext:z,useEffect:z,useImperativeHandle:z,useLayoutEffect:z,useInsertionEffect:z,useMemo:z,useReducer:z,useRef:z,useState:z,useDebugValue:z,useDeferredValue:z,useTransition:z,useSyncExternalStore:z,useId:z,useHostTransitionStatus:z,useFormState:z,useActionState:z,useOptimistic:z,useMemoCache:z,useCacheRefresh:z};Vs.useEffectEvent=z;var Hs={readContext:sa,use:Io,useCallback:function(e,t){return No().memoizedState=[e,t===void 0?null:t],e},useContext:sa,useEffect:fs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),us(4194308,4,vs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return us(4194308,4,e,t)},useInsertionEffect:function(e,t){us(4,2,e,t)},useMemo:function(e,t){var n=No();t=t===void 0?null:t;var r=e();if(bo){qe(!0);try{e()}finally{qe(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=No();if(n!==void 0){var i=n(t);if(bo){qe(!0);try{n(t)}finally{qe(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ps.bind(null,I,e),[r.memoizedState,e]},useRef:function(e){var t=No();return e={current:e},t.memoizedState=e},useState:function(e){e=Jo(e);var t=e.queue,n=Fs.bind(null,I,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:bs,useDeferredValue:function(e,t){return Cs(No(),e,t)},useTransition:function(){var e=Jo(!1);return e=Ts.bind(null,I,e.queue,!0,!1),No().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=I,i=No();if(N){if(n===void 0)throw Error(s(407));n=n()}else{if(n=t(),K===null)throw Error(s(349));J&127||Uo(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,fs(Go.bind(null,r,a,e),[e]),r.flags|=2048,cs(9,{destroy:void 0},Wo.bind(null,r,a,n,t),null),n},useId:function(){var e=No(),t=K.identifierPrefix;if(N){var n=Pi,r=Ni;n=(r&~(1<<32-O(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=xo++,0<\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?o.createElement(`select`,{is:r.is}):o.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?o.createElement(i,{is:r.is}):o.createElement(i)}}a[k]=t,a[A]=r;a:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)a.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break a;for(;o.sibling===null;){if(o.return===null||o.return===t)break a;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=a;a:switch(Pd(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Fc(t)}}return H(t),Ic(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Fc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(s(166));if(e=ye.current,qi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=Bi,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[k]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Wi(t,!0)}else e=Bd(e).createTextNode(r),e[k]=t,t.stateNode=e}return H(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=qi(t),n!==null){if(e===null){if(!r)throw Error(s(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(s(557));e[k]=t}else Ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;H(t),e=!1}else n=Yi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(ho(t),t):(ho(t),null);if(t.flags&128)throw Error(s(558))}return H(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=qi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(s(318));if(i=t.memoizedState,i=i===null?null:i.dehydrated,!i)throw Error(s(317));i[k]=t}else Ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;H(t),i=!1}else i=Yi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(ho(t),t):(ho(t),null)}return ho(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Rc(t,t.updateQueue),H(t),null);case 4:return Se(),e===null&&Sd(t.stateNode.containerInfo),H(t),null;case 10:return ta(t.type),H(t),null;case 19:if(T(F),r=t.memoizedState,r===null)return H(t),null;if(i=(t.flags&128)!=0,a=r.rendering,a===null)if(i)zc(r,!1);else{if(X!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=go(e),a!==null){for(t.flags|=128,zc(r,!1),e=a.updateQueue,t.updateQueue=e,Rc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)vi(n,e),n=n.sibling;return E(F,F.current&1|2),N&&Fi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Le()>tu&&(t.flags|=128,i=!0,zc(r,!1),t.lanes=4194304)}else{if(!i)if(e=go(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Rc(t,e),zc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!N)return H(t),null}else 2*Le()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,i=!0,zc(r,!1),t.lanes=4194304);r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(H(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Le(),e.sibling=null,n=F.current,E(F,i?n&1|2:n&1),N&&Fi(t,r.treeForkCount),e);case 22:case 23:return ho(t),so(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(H(t),t.subtreeFlags&6&&(t.flags|=8192)):H(t),n=t.updateQueue,n!==null&&Rc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&T(Ca),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),ta(P),H(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function Vc(e,t){switch(Ri(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return ta(P),Se(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return we(t),null;case 31:if(t.memoizedState!==null){if(ho(t),t.alternate===null)throw Error(s(340));Ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(ho(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));Ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return T(F),null;case 4:return Se(),null;case 10:return ta(t.type),null;case 22:case 23:return ho(t),so(),e!==null&&T(Ca),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return ta(P),null;case 25:return null;default:return null}}function Hc(e,t){switch(Ri(t),t.tag){case 3:ta(P),Se();break;case 26:case 27:case 5:we(t);break;case 4:Se();break;case 31:t.memoizedState!==null&&ho(t);break;case 13:ho(t);break;case 19:T(F);break;case 10:ta(t.type);break;case 22:case 23:ho(t),so(),e!==null&&T(Ca);break;case 24:ta(P)}}function Uc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Wc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Gc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{no(t,n)}catch(t){Z(e,e.return,t)}}}function Kc(e,t,n){n.props=Ys(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function qc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function Jc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}function Yc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function Xc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[A]=t}catch(t){Z(e,e.return,t)}}function Zc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Qc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Zc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=sn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(el(e,t,n),e=e.sibling;e!==null;)el(e,t,n),e=e.sibling}function tl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[k]=e,t[A]=n}catch(t){Z(e,e.return,t)}}var nl=!1,U=!1,rl=!1,il=typeof WeakSet==`function`?WeakSet:Set,al=null;function ol(e,t){if(e=e.containerInfo,Rd=sp,e=Pr(e),Fr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break a}var o=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||i!==0&&f.nodeType!==3||(c=o+i),f!==a||r!==0&&f.nodeType!==3||(l=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===i&&(c=o),p===a&&++d===r&&(l=o),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,al=t;al!==null;)if(t=al,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,al=e;else for(;al!==null;){switch(t=al,a=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n title`))),Pd(a,r,n),a[k]=e,Dt(a),r=a;break a;case`link`:var o=Vf(`link`,`href`,i).get(r+(n.href||``));if(o){for(var c=0;cg&&(o=g,g=h,h=o);var _=Mr(s,h),v=Mr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,C.T=null,n=lu,lu=null;var a=au,o=su;if(iu=0,ou=au=null,su=0,G&6)throw Error(s(331));var c=G;if(G|=4,Fl(a.current),Dl(a,a.current,o,n),G=c,id(0,!1),D&&typeof D.onPostCommitFiberRoot==`function`)try{D.onPostCommitFiberRoot(Ke,a)}catch{}return!0}finally{w.p=i,C.T=r,Vu(e,t)}}function Wu(e,t,n){t=Ti(n,t),t=tc(e.stateNode,t,2),e=Ya(e,t,2),e!==null&&(ot(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=Ti(n,e),n=nc(2),r=Ya(t,n,2),r!==null&&(rc(n,r,t,e),ot(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new zl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Ul=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,K===e&&(J&n)===n&&(X===4||X===3&&(J&62914560)===J&&300>Le()-$l?!(G&2)&&Su(e,0):ql|=n,Yl===J&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=it()),e=ui(e,t),e!==null&&(ot(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(s(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return Ne(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-O(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=J,a=tt(r,r===K?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||nt(r,a)||(n=!0,ld(r,a));r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=Le(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Gt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),Dt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Gt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Gt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Gt(n.imageSizes)+`"]`)):i+=`[href="`+Gt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=h({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),Dt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Gt(r)+`"][href="`+Gt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=h({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),Dt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=Et(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=h({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);Dt(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=Et(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),Dt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=Et(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),Dt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var i=(i=ye.current)?gf(i):null;if(!i)throw Error(s(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=Et(i).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var a=Et(i).hoistableStyles,o=a.get(e);if(o||(i=i.ownerDocument||i,o={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},a.set(e,o),(a=i.querySelector(jf(e)))&&!a._p&&(o.instance=a,o.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),a||Nf(i,e,n,o.state))),t&&r===null)throw Error(s(528,``));return o}if(t&&r!==null)throw Error(s(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=Et(i).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(s(444,e))}}function Af(e){return`href="`+Gt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return h({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),Dt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Gt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Gt(n.href)+`"]`);if(r)return t.instance=r,Dt(r),r;var i=h({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),Dt(r),Pd(r,`style`,i),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Af(n.href);var a=e.querySelector(jf(i));if(a)return t.state.loading|=4,t.instance=a,Dt(a),a;r=Mf(n),(i=mf.get(i))&&Rf(r,i),a=(e.ownerDocument||e).createElement(`link`),Dt(a);var o=a;return o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),t.state.loading|=4,Lf(a,n.precedence,e),t.instance=a;case`script`:return a=Pf(n.src),(i=e.querySelector(Ff(a)))?(t.instance=i,Dt(i),i):(r=n,(i=mf.get(a))&&(r=h({},n),zf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),Dt(i),Pd(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(s(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,Dt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),Dt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=s()}))(),l=n(),u=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),d=e(((e,t)=>{t.exports=u()}))();function f(){let[e,t]=(0,l.useState)(`kiga`),[n,r]=(0,l.useState)({kiga:null,schule:null}),[i,a]=(0,l.useState)(!1),[o,s]=(0,l.useState)(null),[c,u]=(0,l.useState)(null),[f,p]=(0,l.useState)(null),[m,h]=(0,l.useState)(null),[g,_]=(0,l.useState)(``),[v,y]=(0,l.useState)(null),[b,x]=(0,l.useState)(!1),[ee,te]=(0,l.useState)(!1),[S,ne]=(0,l.useState)([]),[re,ie]=(0,l.useState)(``),[ae,oe]=(0,l.useState)(!1),[se,ce]=(0,l.useState)(!1),[le,ue]=(0,l.useState)(!1),[de,fe]=(0,l.useState)(!1),[C,w]=(0,l.useState)(null),[pe,me]=(0,l.useState)(``),[he,ge]=(0,l.useState)(!1),[T,E]=(0,l.useState)(1),[_e,ve]=(0,l.useState)(!0),[ye,be]=(0,l.useState)(null),[xe,Se]=(0,l.useState)(null),[Ce,we]=(0,l.useState)(!1),[Te,Ee]=(0,l.useState)(!1),[De,Oe]=(0,l.useState)(null),[ke,Ae]=(0,l.useState)(``),je=async e=>{try{let t=await fetch(`${j}/api/jobs/${e}/login-distribution`);t.ok&&be(await t.json())}catch(e){console.error(`Failed to fetch login distribution`,e)}},Me=async e=>{try{let t=await fetch(`${j}/api/jobs/${e}/reminder-history`);t.ok&&Re(await t.json())}catch(e){console.error(`Failed to fetch reminder history`,e)}},Ne=async e=>{try{let t=await fetch(`${j}/api/jobs/${e}/fast-stats`);if(t.ok){let e=await t.json();e&&e.length>0&&y(e)}}catch(e){console.error(`Failed to fetch fast stats`,e)}};(0,l.useEffect)(()=>{c&&(Ne(c.id),je(c.id),Me(c.id))},[c]);let Pe=async t=>{Ee(!0),Ae(`Starte Synchronisierung...`),s(null);try{let n=await fetch(`${j}/api/jobs/${t.id}/sync-participants?account_type=${e}`,{method:`POST`});if(!n.ok)throw Error(`Synchronisierung konnte nicht gestartet werden.`);Oe((await n.json()).task_id)}catch(e){s(e.message||`Netzwerkfehler.`),Ee(!1)}};(0,l.useEffect)(()=>{let e;return De&&(e=setInterval(async()=>{try{let e=await fetch(`${j}/api/tasks/${De}`);if(e.ok){let t=await e.json();Ae(t.progress),t.status===`completed`?(Ee(!1),Oe(null),Ae(t.progress),c&&(Ne(c.id),je(c.id))):t.status===`error`&&(Ee(!1),Oe(null),s(t.progress||`Ein Fehler ist aufgetreten.`))}}catch(e){console.error(`Polling error`,e)}},2e3)),()=>clearInterval(e)},[De,c]);let[Fe,Ie]=(0,l.useState)(null),[Le,Re]=(0,l.useState)(null),[ze,Be]=(0,l.useState)(`Fotos von {Kindernamen}`),[Ve,He]=(0,l.useState)(`Hallo {Name Käufer},

deine Fotos sind fertig und warten auf dich! Klicke einfach auf die Links unten, um direkt zu den Galerien zu gelangen:

{LinksHTML}

Viel Spaß beim Anschauen!`),[Ue,We]=(0,l.useState)(!1),[Ge,Ke]=(0,l.useState)(null),[D,qe]=(0,l.useState)(`config`),[O,Je]=(0,l.useState)(0),[Ye,Xe]=(0,l.useState)(``),[Ze,Qe]=(0,l.useState)(``),[$e,et]=(0,l.useState)(null),[tt,nt]=(0,l.useState)(!1),[rt,it]=(0,l.useState)(``),[at,ot]=(0,l.useState)(!1),[st,ct]=(0,l.useState)(``),[lt,ut]=(0,l.useState)(``),[dt,ft]=(0,l.useState)(null),[pt,mt]=(0,l.useState)(!1),[ht,k]=(0,l.useState)(`recipients`),[A,gt]=(0,l.useState)(0),[_t,vt]=(0,l.useState)(null),yt=` +

+ --
+
+ + + + + + + +
+ Kinderfotos Erding Logo + +

Kinderfotos Erding | www.kinderfotos-erding.de

+

Gartenstr. 10 | 85445 Oberding | 08122-8470867

+
+
+ `,bt=(0,l.useMemo)(()=>Ye.split(` +`).filter(e=>e.trim()).map(e=>{let t=e.split(`,`),n=t[0]?t[0].trim().toLowerCase():``,r=t[1]?t[1].trim():`Liebe Eltern`,i=t[2]?t[2].trim():`Euren Kindern`;return{to:n,subject:`Eure Bilder vom Kindergarten-Fotoshooting`,body:`Guten Morgen ${r},

vielen Dank für Eure Teilnahme am Mini-Familien-Fotoshooting im ${c?c.name.replace(/\(JOB\d+\)\s*/,``).replace(/Kindergarten\s+/gi,``).replace(/\s+\d{4}$/,``).trim():`dem Kindergarten`} diese Woche. Die Bilder sind jetzt bereits online, ihr solltet bald eine Mail dazu erhalten. :)

Die Bilder von ${i} gefallen uns sehr gut, sie wirken auf den Bildern sehr selbstbewusst. Gerne würden wir diese in unserer Galerie auf www.kinderfotos-erding.de (Link: Beispiel ansehen) veröffentlichen.

Um den rechtlichen Anforderungen (DSGVO) gerecht zu werden, müsstet Ihr noch dieses Formular auf unserer Website ausfüllen:
Zum Formular zur Veröffentlichung

Das hilft uns wirklich sehr, damit andere einen besseren Eindruck von unserer Arbeit gewinnen. Als kleines Dankeschön erhaltet Ihr im Anschluss einen Rabattcode über 25 € für Eure Bestellung. Diesen senden wir Euch per separater E-Mail zu, sobald das Formular ausgefüllt ist. Bitte wartet mit Eurer Bestellung, bis wir Euch den Rabattcode zugesendet haben.

Vielen Dank für Eure Unterstützung und Euer Vertrauen!

Liebe Grüße,
das Team von Kinderfotos Erding +

+ --
+
+ + + + + + + +
+ Kinderfotos Erding Logo + +

Kinderfotos Erding | www.kinderfotos-erding.de

+

Gartenstr. 10 | 85445 Oberding | 08122-8470867

+
+
+ `,first_name:r}}).filter(e=>e.to),[Ye,c]),[xt,St]=(0,l.useState)(`vorbereitung`),Ct=(0,l.useMemo)(()=>Fe?Fe.map(e=>{let t=ze.replace(/{Kindernamen}/g,e.Kindernamen),n=Ve.replace(/{Name Käufer}/g,e[`Name Käufer`]).replace(/{Kindernamen}/g,e.Kindernamen).replace(/{LinksHTML}/g,e.LinksHTML).replace(/\n/g,`
`);return{to:e[`E-Mail-Adresse Käufer`],subject:t,body:n+yt}}):[],[Fe,ze,Ve,yt]),wt=async()=>{try{let e=await fetch(`${j}/api/publish-request/history`);e.ok&&vt(await e.json())}catch(e){console.error(`Failed to fetch release history`,e)}},Tt=async()=>{try{let e=await fetch(`${j}/api/publish-request/stats`);e.ok&&et(await e.json())}catch(e){console.error(`Failed to fetch release stats`,e)}},Et=async()=>{mt(!0);try{let e=await fetch(`${j}/api/publish-request/responses`);e.ok&&ft(await e.json())}catch(e){console.error(`Failed to fetch release responses`,e)}mt(!1)},Dt=async()=>{nt(!0),it(`Lädt hoch...`);try{let e=await fetch(`${j}/api/publish-request/codes`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({codes:Ze})}),t=await e.json();e.ok?(it(`✅ ${t.added} neue Codes gespeichert.`),Qe(``),Tt()):it(`❌ Fehler beim Hochladen.`)}catch{it(`❌ Netzwerkfehler.`)}nt(!1)},Ot=async()=>{if(!Ce)return;ot(!0),ct(`Bereite Senden vor...`);let e=bt;if(e.length===0){ct(`⚠️ Bitte Empfänger eintragen.`),ot(!1);return}ct(`Sende ${e.length} Mails...`);try{let t=await fetch(`${j}/api/publish-request/send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:e.map(e=>({to:e.to,subject:e.subject,body:e.body})),scheduled_time:lt||null,participants:e.map(e=>({email:e.to,first_name:e.first_name}))})}),n=await t.json();t.ok?(ct(`✅ Fertig! ${n.success} gesendet. ${n.failed.length>0?`(`+n.failed.length+` Fehler)`:``}`),wt()):ct(`❌ Fehler beim Senden.`)}catch{ct(`❌ Netzwerkfehler.`)}ot(!1)},j=window.location.hostname.includes(`duckdns.org`)?`/fotograf-de-api`:`http://192.168.178.6:8002`,kt=async()=>{try{let e=await fetch(`${j}/api/gmail/status`);e.ok&&we((await e.json()).authenticated)}catch{console.error(`Failed to check Gmail auth status`)}},At=async()=>{try{let e=await fetch(`${j}/api/auth/google`);if(e.ok){let t=await e.json();window.location.href=t.url}}catch{s(`Konnte Gmail-Anmeldung nicht starten.`)}},jt=async()=>{try{let e=await fetch(`${j}/api/jobs/latest-file`);if(e.ok){let t=await e.json();t.has_file&&Se(t)}}catch{console.error(`Failed to fetch latest file info`)}},Mt=async(e,t=!1)=>{a(!0),s(null);try{let n=await fetch(`${j}/api/jobs?account_type=${e}&force_refresh=${t}`);if(!n.ok){let e=await n.json();throw Error(e.detail||`Fehler beim Abrufen der Aufträge`)}let i=await n.json();r(t=>({...t,[e]:i}))}catch(e){s(e.message)}finally{a(!1)}};(0,l.useEffect)(()=>{n[e]===null&&Mt(e,!1),jt(),kt(),Tt(),Et(),wt()},[e]);let Nt=()=>Mt(e,!0);(0,l.useEffect)(()=>{(async()=>{try{let e=await fetch(`${j}/api/calendly/event-types`);if(e.ok){let t=await e.json();if(ne(t.event_types||[]),t.event_types&&t.event_types.length>0){let e=localStorage.getItem(`fotograf_selected_event_type`),n=t.event_types.some(t=>t.name===e);ie(e&&n?e:t.event_types[0].name)}}}catch(e){console.error(`Failed to fetch event types:`,e)}})()},[]);let Pt=async t=>{x(!0),y(null),_(`Starte Analyse...`),s(null);try{let n=await fetch(`${j}/api/jobs/${t.id}/statistics?account_type=${e}`,{method:`POST`});if(!n.ok)throw Error(`Konnte Statistik-Prozess nicht starten.`);h((await n.json()).task_id)}catch(e){s(e.message),x(!1)}};(0,l.useEffect)(()=>{let e;return m&&b&&(e=setInterval(async()=>{try{let e=await fetch(`${j}/api/tasks/${m}`);if(!e.ok)throw Error(`Task Status Request failed`);let t=await e.json();_(t.progress||`Verarbeite...`),t.status===`completed`?(y(t.result),x(!1),h(null)):t.status===`error`&&(s(t.progress||`Ein Fehler ist aufgetreten.`),x(!1),h(null))}catch(e){console.error(`Polling Error:`,e)}},1e3)),()=>{e&&clearInterval(e)}},[m,b]);let Ft=async e=>{try{let t=await fetch(`${j}/api/tasks/${e}`);t.ok&&Ie((await t.json()).result)}catch{console.error(`Failed to fetch reminder results`)}};(0,l.useEffect)(()=>{let e;return C&&he&&(e=setInterval(async()=>{try{let e=await fetch(`${j}/api/tasks/${C}`);if(!e.ok)throw Error(`Task Status Request failed`);let t=await e.json();me(t.progress||`Verarbeite...`),t.status===`completed`?(ge(!1),Ft(C)):t.status===`error`&&(s(t.progress||`Ein Fehler ist aufgetreten.`),ge(!1),w(null))}catch(e){console.error(`Polling Error:`,e)}},1e3)),()=>{e&&clearInterval(e)}},[C,he]);let It=async t=>{p(t.id),s(null);try{let n=`${j}/api/jobs/${t.id}/generate-pdf?account_type=${e}`;window.open(n,`_blank`),setTimeout(()=>{p(null),jt()},3e3)}catch(e){s(`PDF Fehler (${t.name}): ${e.message}`),p(null)}},Lt=async(e,t)=>{if(!t){s(`Bitte wähle eine PDF-Vorlage aus.`);return}te(!0),s(null);let n=new FormData;n.append(`pdf_file`,t),re&&n.append(`event_type_name`,re);try{let t=await fetch(`${j}/api/qr-cards/generate`,{method:`POST`,body:n});if(!t.ok){if(t.status===404)throw Error(`Keine passenden Calendly-Termine gefunden.`);let e=await t.json();throw Error(e.detail||`Generierung fehlgeschlagen`)}let r=await t.blob(),i=window.URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`QR_Karten_Andruck_${e.id}.pdf`,document.body.appendChild(a),a.click(),setTimeout(()=>{document.body.removeChild(a),window.URL.revokeObjectURL(i),jt()},100)}catch(e){s(e.message)}finally{te(!1)}},Rt=async(t,n)=>{if(!n){s(`Bitte wähle eine PDF-Vorlage aus.`);return}fe(!0),s(null);let r=new FormData;r.append(`pdf_file`,n);try{let n=await fetch(`${j}/api/jobs/${t.id}/siblings-qr-cards?account_type=${e}`,{method:`POST`,body:r});if(!n.ok){if(n.status===404)throw Error(`Keine Geschwisterkinder für QR-Karten gefunden.`);let e=await n.json();throw Error(e.detail||`Generierung fehlgeschlagen`)}let i=await n.json();if(i.status===`success`&&i.download_url)window.open(`${j}${i.download_url}`,`_blank`),setTimeout(jt,2e3);else throw Error(`Download URL could not be retrieved from server.`)}catch(e){s(e.message)}finally{fe(!1)}},zt=async t=>{ue(!0),s(null);try{let n=`${j}/api/jobs/${t.id}/siblings-list?account_type=${e}`;!ae&&re&&(n+=`&event_type_name=${encodeURIComponent(re)}`);let r=await fetch(n);if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.detail||`Generierung fehlgeschlagen`)}let i=await r.json();if(i.status===`success`&&i.download_url)window.open(`${j}${i.download_url}`,`_blank`);else throw Error(`Download URL konnte nicht vom Server abgerufen werden.`);setTimeout(()=>{ue(!1),jt()},3e3)}catch(e){s(`Geschwisterlisten-Fehler (${t.name}): ${e.message}`),ue(!1)}},Bt=async e=>{ce(!0),s(null);try{let t=`${j}/api/jobs/${e.id}/appointment-list?event_type_name=${encodeURIComponent(re)}`;window.open(t,`_blank`),setTimeout(()=>{ce(!1),jt()},3e3)}catch(t){s(`Listen-Fehler (${e.name}): ${t.message}`),ce(!1)}},Vt=async t=>{ge(!0),me(`Starte Analyse...`),Ie(null),s(null);try{let n=await fetch(`${j}/api/jobs/${t.id}/reminder-analysis?account_type=${e}&max_logins=${T}&exclude_purchased_emails=${_e}`,{method:`POST`});if(!n.ok)throw Error(`Konnte Analyse nicht starten.`);w((await n.json()).task_id)}catch(e){s(e.message),ge(!1)}},Ht=async e=>{try{window.open(`${j}/api/tasks/${e}/download-csv`,`_blank`),setTimeout(jt,2e3)}catch{s(`Download fehlgeschlagen.`)}},Ut=async()=>{if(!Fe||!Ce||!c)return;We(!0),Ke(`Sende...`);let e=Fe.map(e=>{let t=ze.replace(/{Kindernamen}/g,e.Kindernamen),n=Ve.replace(/{Name Käufer}/g,e[`Name Käufer`]).replace(/{Kindernamen}/g,e.Kindernamen).replace(/{LinksHTML}/g,e.LinksHTML).replace(/\n/g,`
`);return{to:e[`E-Mail-Adresse Käufer`],subject:t,body:n+yt}});try{let t=await fetch(`${j}/api/jobs/${c.id}/reminder-send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:e,max_logins:T,scheduled_time:lt||null,recipients_data:Fe})});if(t.ok){let e=await t.json();Ke(`✅ Fertig! ${e.success||0} gesendet.`),e.failed&&e.failed.length>0&&Ke(t=>`${t} (${e.failed.length} Fehler)`),Me(c.id)}else throw Error(`Sende-Fehler`)}catch{Ke(`❌ Fehler beim Senden`)}finally{We(!1)}},Wt=async()=>{if(Ce){We(!0);try{(await fetch(`${j}/api/gmail/send-bulk`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:[{to:`floke.com@gmail.com`,subject:`Test-E-Mail vom Fotograf Tool (inkl. Signatur)`,body:`Hallo! Das ist eine Test-E-Mail, um die Gmail-API-Integration zu verifizieren. Wenn du das liest, funktioniert alles perfekt! 🚀`+yt}]})})).ok?alert(`Test-E-Mail erfolgreich an floke.com@gmail.com gesendet!`):alert(`Fehler beim Senden der Test-E-Mail.`)}catch{alert(`Netzwerkfehler beim Senden der Test-E-Mail.`)}finally{We(!1)}}},Gt=n[e];return(0,d.jsxs)(`div`,{className:`min-h-screen bg-gray-50 text-gray-900 font-sans`,children:[(0,d.jsx)(`header`,{className:`bg-white shadow-sm sticky top-0 z-10`,children:(0,d.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-16 flex items-center justify-between`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`text-2xl`,children:`📸`}),(0,d.jsx)(`h1`,{className:`text-xl font-bold text-gray-800 tracking-tight`,children:`Fotograf.de ERP`})]}),(0,d.jsxs)(`a`,{href:`http://192.168.178.6:8090`,className:`hidden sm:flex text-xs font-medium text-gray-500 hover:text-indigo-600 transition-colors items-center gap-1 bg-gray-50 px-2 py-1 rounded border border-gray-200`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 19l-7-7m0 0l7-7m-7 7h18`})}),`Zum Dashboard`]}),(0,d.jsxs)(`button`,{onClick:At,className:`flex text-xs font-medium transition-colors items-center gap-1 px-2 py-1 rounded border ${Ce?`bg-emerald-50 text-emerald-600 border-emerald-200`:`bg-amber-50 text-amber-600 border-amber-200 hover:bg-amber-100`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:Ce?`✅`:`✉️`}),Ce?`Gmail verbunden`:`Gmail verbinden`]}),Ce&&(0,d.jsx)(`button`,{onClick:Wt,disabled:Ue,className:`text-[10px] bg-white border border-gray-200 text-gray-400 hover:text-indigo-600 hover:border-indigo-200 px-2 py-1 rounded transition-all`,children:Ue?`Sende...`:`Test-Mail senden`}),xe&&(0,d.jsxs)(`div`,{className:`hidden lg:flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`text-xs text-gray-400`,children:`Letzte Datei:`}),(0,d.jsxs)(`a`,{href:`${j}/api/jobs/download-latest`,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs font-bold text-emerald-600 hover:text-emerald-700 underline flex items-center gap-1`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 16v1a2 2 0 002 2h12a2 2 0 002-2v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})}),xe.display_name,` (`,xe.timestamp,`)`]})]})]}),(0,d.jsxs)(`nav`,{className:`flex space-x-1 bg-gray-100 p-1 rounded-lg`,children:[(0,d.jsx)(`button`,{onClick:()=>t(`kiga`),className:`px-4 py-2 rounded-md text-sm font-medium transition-all duration-200 ${e===`kiga`?`bg-white shadow text-indigo-700`:`text-gray-500 hover:text-gray-700`}`,children:`Kindergarten`}),(0,d.jsx)(`button`,{onClick:()=>t(`schule`),className:`px-4 py-2 rounded-md text-sm font-medium transition-all duration-200 ${e===`schule`?`bg-white shadow text-indigo-700`:`text-gray-500 hover:text-gray-700`}`,children:`Schule`})]})]})}),(0,d.jsxs)(`main`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8`,children:[(0,d.jsxs)(`div`,{className:`flex flex-col sm:flex-row justify-between items-start sm:items-center mb-8 gap-4`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h2`,{className:`text-2xl font-bold text-gray-900`,children:e===`kiga`?`Kindergarten Aufträge`:`Schul Aufträge`}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mt-1`,children:Gt===null?`Noch nicht geladen.`:`${Gt.length} aktive Projekte gefunden.`})]}),(0,d.jsx)(`button`,{onClick:Nt,disabled:i,className:`flex items-center gap-2 px-5 py-2.5 bg-indigo-600 text-white text-sm font-medium rounded-lg hover:bg-indigo-700 focus:ring-4 focus:ring-indigo-100 transition-all disabled:opacity-70 disabled:cursor-not-allowed shadow-sm`,children:i?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),`Synchronisiere...`]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`svg`,{className:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15`})}),Gt===null?`Aufträge abrufen`:`Liste aktualisieren`]})})]}),o&&!c&&(0,d.jsxs)(`div`,{className:`bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-lg mb-8 flex items-start gap-3`,children:[(0,d.jsx)(`svg`,{className:`w-5 h-5 mt-0.5 flex-shrink-0`,fill:`currentColor`,viewBox:`0 0 20 20`,children:(0,d.jsx)(`path`,{fillRule:`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z`,clipRule:`evenodd`})}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h3`,{className:`font-semibold text-sm`,children:`Systemfehler`}),(0,d.jsx)(`p`,{className:`text-sm mt-1`,children:o})]})]}),Gt!==null&&Gt.length===0&&!i&&!o&&(0,d.jsxs)(`div`,{className:`text-center py-16 bg-white rounded-xl border border-dashed border-gray-300`,children:[(0,d.jsx)(`svg`,{className:`mx-auto h-12 w-12 text-gray-300`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{vectorEffect:`non-scaling-stroke`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M9 13h6m-3-3v6m-9 1V7a2 2 0 012-2h6l2 2h6a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z`})}),(0,d.jsx)(`h3`,{className:`mt-2 text-sm font-semibold text-gray-900`,children:`Keine Projekte`}),(0,d.jsx)(`p`,{className:`mt-1 text-sm text-gray-500`,children:`Es wurden keine aktiven Aufträge für diesen Account gefunden.`})]}),Gt!==null&&Gt.length>0&&(0,d.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-6`,children:Gt.map(e=>(0,d.jsxs)(`div`,{className:`bg-white rounded-xl shadow-sm border border-gray-200 overflow-hidden hover:shadow-md hover:border-indigo-300 transition-all duration-200 cursor-pointer flex flex-col h-full`,onClick:()=>u(e),children:[(0,d.jsx)(`div`,{className:`h-2 w-full ${e.status.toLowerCase().includes(`abgeschlossen`)?`bg-gray-300`:`bg-indigo-500`}`}),(0,d.jsxs)(`div`,{className:`p-6 flex-1 flex flex-col`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-start mb-4`,children:[(0,d.jsx)(`span`,{className:`inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-gray-100 text-gray-800`,children:e.id?`ID: ${e.id}`:`Unbekannte ID`}),(0,d.jsx)(`span`,{className:`text-sm font-medium text-gray-500 bg-gray-50 px-2 py-1 rounded`,children:e.date||`Kein Datum`})]}),(0,d.jsx)(`h3`,{className:`text-lg font-bold text-gray-900 leading-tight mb-2 line-clamp-2`,children:e.name}),(0,d.jsxs)(`div`,{className:`mt-auto pt-4 flex flex-col gap-2`,children:[(0,d.jsxs)(`p`,{className:`text-sm text-gray-600 flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-emerald-500`}),e.status]}),(0,d.jsxs)(`p`,{className:`text-xs text-gray-400`,children:[`Typ: `,e.shooting_type]})]})]}),(0,d.jsx)(`div`,{className:`bg-gray-50 px-6 py-3 border-t border-gray-100 flex justify-between items-center`,children:(0,d.jsx)(`span`,{className:`text-sm font-medium text-indigo-600 group-hover:text-indigo-800`,children:`Details verwalten →`})})]},e.id))})]}),c&&(0,d.jsx)(`div`,{className:`fixed inset-0 z-50 overflow-y-auto`,"aria-labelledby":`modal-title`,role:`dialog`,"aria-modal":`true`,children:(0,d.jsxs)(`div`,{className:`flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0`,children:[(0,d.jsx)(`div`,{className:`fixed inset-0 bg-gray-900 bg-opacity-75 transition-opacity`,"aria-hidden":`true`,onClick:()=>u(null)}),(0,d.jsx)(`span`,{className:`hidden sm:inline-block sm:align-middle sm:h-screen`,"aria-hidden":`true`,children:`​`}),(0,d.jsxs)(`div`,{className:`inline-block align-bottom bg-gray-50 rounded-2xl text-left overflow-hidden shadow-2xl transform transition-all sm:my-8 sm:align-middle sm:max-w-4xl w-full`,children:[(0,d.jsxs)(`div`,{className:`bg-white px-6 py-6 border-b border-gray-200 flex justify-between items-start`,children:[(0,d.jsxs)(`div`,{className:`flex-1`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-4 mb-1`,children:[(0,d.jsx)(`h3`,{className:`text-2xl font-bold text-gray-900`,id:`modal-title`,children:c.name}),(0,d.jsx)(`button`,{onClick:()=>Pe(c),disabled:Te,className:`flex items-center gap-1.5 px-3 py-1 rounded-full text-[10px] font-bold transition-all border ${Te?`bg-indigo-50 text-indigo-400 border-indigo-100`:`bg-white text-indigo-600 border-indigo-200 hover:bg-indigo-50 hover:border-indigo-300 shadow-sm`}`,title:`Aktualisiert E-Mails, Logins & Bestellungen direkt von Fotograf.de`,children:Te?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-3 w-3`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),ke||`Abgleich läuft...`]}):(0,d.jsx)(d.Fragment,{children:`🔄 Daten abgleichen`})})]}),(0,d.jsxs)(`p`,{className:`text-sm text-gray-500 flex items-center gap-3`,children:[(0,d.jsxs)(`span`,{children:[`📅 `,c.date]}),(0,d.jsx)(`span`,{children:`•`}),(0,d.jsx)(`span`,{className:`text-emerald-600 font-medium`,children:c.status}),(0,d.jsx)(`span`,{children:`•`}),(0,d.jsxs)(`a`,{href:c.url,target:`_blank`,rel:`noopener noreferrer`,className:`text-indigo-600 hover:underline inline-flex items-center gap-1`,children:[`In Fotograf.de öffnen `,(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14`})})]})]})]}),(0,d.jsxs)(`button`,{type:`button`,className:`bg-white rounded-md text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500`,onClick:()=>u(null),children:[(0,d.jsx)(`span`,{className:`sr-only`,children:`Schließen`}),(0,d.jsx)(`svg`,{className:`h-6 w-6`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M6 18L18 6M6 6l12 12`})})]})]}),(0,d.jsxs)(`div`,{className:`px-6 py-8`,children:[o&&f===c.id&&(0,d.jsx)(`div`,{className:`bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-lg mb-6 text-sm`,children:o}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-6 gap-2`,children:[(0,d.jsxs)(`button`,{onClick:()=>St(`vorbereitung`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${xt===`vorbereitung`?`text-emerald-600 border-b-2 border-emerald-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`📆`}),` Vorbereitung`]}),(0,d.jsxs)(`button`,{onClick:()=>St(`followup`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${xt===`followup`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`✉️`}),` Follow-Up`]}),(0,d.jsxs)(`button`,{onClick:()=>St(`statistik`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${xt===`statistik`?`text-purple-600 border-b-2 border-purple-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`📊`}),` Statistik`]})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[xt===`vorbereitung`&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-emerald-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-start justify-between mb-4`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-emerald-50 rounded-lg text-emerald-600 text-xl`,children:`📆`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Shooting-Planung & Listen`})]}),(0,d.jsx)(`span`,{className:`inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-emerald-100 text-emerald-800`,children:`Aktiv`})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:[(0,d.jsxs)(`div`,{className:`md:col-span-1 border-r border-gray-100 pr-4`,children:[(0,d.jsx)(`label`,{className:`block text-sm font-bold text-gray-700 mb-2`,children:`Calendly Event auswählen`}),(0,d.jsxs)(`select`,{value:re,onChange:e=>{ie(e.target.value),localStorage.setItem(`fotograf_selected_event_type`,e.target.value)},className:`w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 text-sm`,children:[S.length===0&&(0,d.jsx)(`option`,{value:``,children:`Lade Events...`}),S.map(e=>(0,d.jsx)(`option`,{value:e.name,children:e.name},e.uri))]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 mt-2 mb-4`,children:`Wird für QR-Karten und die Terminübersicht benötigt.`})]}),(0,d.jsxs)(`div`,{className:`md:col-span-2 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4`,children:[(0,d.jsxs)(`div`,{className:`bg-blue-50 p-4 rounded-lg flex flex-col justify-between border border-blue-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-blue-800 mb-1`,children:`📄 Teilnehmerliste`}),(0,d.jsx)(`p`,{className:`text-xs text-blue-600 mb-3`,children:`Lädt alle Fotograf.de Anmeldungen als PDF herunter.`})]}),(0,d.jsx)(`button`,{onClick:()=>It(c),disabled:f===c.id||b,className:`w-full px-3 py-2 bg-blue-600 text-white text-xs font-bold rounded-lg hover:bg-blue-700 disabled:opacity-50 transition-all flex justify-center items-center mt-auto`,children:f===c.id?`Lädt...`:`PDF generieren`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`📇 QR-Karten`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Andruck auf Blanko-PDF.`}),(0,d.jsx)(`input`,{type:`file`,accept:`.pdf`,id:`qr-upload-${c.id}`,className:`hidden`,onChange:e=>{e.target.files&&e.target.files.length>0&&(Lt(c,e.target.files[0]),e.target.value=``)}})]}),(0,d.jsx)(`button`,{onClick:()=>document.getElementById(`qr-upload-${c.id}`)?.click(),disabled:!re||ee,className:`w-full px-3 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 mt-auto`,children:ee?`Generiere...`:`Upload & Start`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`📋 Terminübersicht`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Tabelle mit 6-Minuten Takt.`})]}),(0,d.jsx)(`button`,{onClick:()=>Bt(c),disabled:!re||se,className:`w-full px-3 py-2 bg-indigo-600 text-white text-xs font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 mt-auto`,children:se?`Generiere...`:`Generieren`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between sm:col-span-2 lg:col-span-3 border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`👨‍👩‍👧‍👦 Geschwisterliste (Einrichtungsintern)`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Abgleich von Kindergarten-Anmeldungen mit Calendly-Buchungen.`}),(0,d.jsxs)(`div`,{className:`flex items-center mb-3`,children:[(0,d.jsx)(`input`,{type:`checkbox`,id:`skip-calendly-${c.id}`,checked:ae,onChange:e=>oe(e.target.checked),className:`h-4 w-4 text-emerald-600 focus:ring-emerald-500 border-gray-300 rounded`}),(0,d.jsx)(`label`,{htmlFor:`skip-calendly-${c.id}`,className:`ml-2 block text-xs text-gray-700`,children:`Ohne Nachmittags-Shooting (Kein Calendly-Abgleich)`})]})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-2 gap-3 mt-auto`,children:[(0,d.jsx)(`button`,{onClick:()=>zt(c),disabled:le,className:`w-full px-3 py-2 bg-teal-600 text-white text-xs font-bold rounded-lg hover:bg-teal-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2`,children:le?`Generiere...`:`📄 PDF Liste`}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`input`,{type:`file`,accept:`.pdf`,id:`siblings-qr-upload-${c.id}`,className:`hidden`,onChange:e=>{e.target.files&&e.target.files.length>0&&(Rt(c,e.target.files[0]),e.target.value=``)}}),(0,d.jsx)(`button`,{onClick:()=>document.getElementById(`siblings-qr-upload-${c.id}`)?.click(),disabled:de,className:`w-full px-3 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 h-full`,children:de?`Generiere...`:`📇 QR-Karten drucken`})]})]})]})]})]})]}),xt===`followup`&&(0,d.jsxs)(d.Fragment,{children:[` `,(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-indigo-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-2`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-indigo-50 rounded-lg text-indigo-600 text-xl`,children:`🖼️`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Anfrage Veröffentlichung`})]})}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mb-4 line-clamp-2`,children:`Sende personalisierte DSGVO-Anfragen für ausgewählte Eltern inkl. Gutschein-Webhook.`}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-4`,children:[(0,d.jsx)(`button`,{onClick:()=>k(`recipients`),className:`px-4 py-2 text-xs font-bold ${ht===`recipients`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`1. Empfängerliste`}),(0,d.jsx)(`button`,{onClick:()=>k(`preview`),className:`px-4 py-2 text-xs font-bold ${ht===`preview`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`2. Vorschau & Versand`}),(0,d.jsx)(`button`,{onClick:()=>k(`codes`),className:`px-4 py-2 text-xs font-bold ${ht===`codes`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`Gutschein-Codes`}),(0,d.jsx)(`button`,{onClick:()=>k(`history`),className:`px-4 py-2 text-xs font-bold ${ht===`history`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`Antworten & Historie`})]}),(0,d.jsxs)(`div`,{className:`space-y-4`,children:[ht===`recipients`&&(0,d.jsxs)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-500 uppercase block mb-2`,children:`Empfänger-Daten (Pro Zeile)`}),(0,d.jsxs)(`p`,{className:`text-[10px] text-gray-400 mb-2 leading-tight`,children:[`Format: `,(0,d.jsx)(`b`,{children:`E-Mail, Vorname Elternteil, Namen der Kinder`}),(0,d.jsx)(`br`,{}),`(z.B. `,(0,d.jsx)(`i`,{children:`max@muster.de, Max, Moritz und Leni`}),`)`]}),(0,d.jsx)(`textarea`,{placeholder:`max@muster.de, Max, Moritz und Leni +anna@test.de, Anna, Lisa`,value:Ye,onChange:e=>Xe(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 mb-2 h-40 font-mono`}),(0,d.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,d.jsxs)(`span`,{className:`text-xs text-gray-500`,children:[bt.length,` Empfänger erkannt`]}),(0,d.jsx)(`button`,{onClick:()=>{k(`preview`),gt(0)},className:`px-4 py-1.5 bg-indigo-100 text-indigo-700 text-xs font-bold rounded-lg hover:bg-indigo-200 transition-colors`,children:`Zur Vorschau →`})]})]}),ht===`preview`&&(0,d.jsx)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:bt.length===0?(0,d.jsx)(`div`,{className:`text-center py-6 text-gray-500 text-sm`,children:`Bitte zuerst Empfänger eintragen.`}):(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsxs)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:[`Vorschau für Empfänger `,A+1,` von `,bt.length]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`button`,{onClick:()=>gt(Math.max(0,A-1)),disabled:A===0,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`←`}),(0,d.jsx)(`button`,{onClick:()=>gt(Math.min(bt.length-1,A+1)),disabled:A>=bt.length-1,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`→`})]})]}),bt[A]&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-lg p-4 mb-4`,children:[(0,d.jsxs)(`div`,{className:`text-xs text-gray-500 mb-1 border-b border-gray-100 pb-2`,children:[(0,d.jsx)(`span`,{className:`font-bold`,children:`An:`}),` `,bt[A].to]}),(0,d.jsx)(`div`,{className:`text-sm font-bold text-gray-800 mt-2 mb-2`,children:bt[A].subject}),(0,d.jsx)(`div`,{className:`text-xs text-gray-700 space-y-2 email-preview`,dangerouslySetInnerHTML:{__html:bt[A].body}})]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2 mb-3 bg-white p-2 rounded-lg border border-gray-100`,children:[(0,d.jsx)(`span`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Versandzeit (Optional)`}),(0,d.jsx)(`input`,{type:`time`,value:lt,onChange:e=>ut(e.target.value),className:`text-xs border border-gray-200 rounded px-2 py-1 focus:ring-1 focus:ring-indigo-500`}),(0,d.jsx)(`span`,{className:`text-[10px] text-gray-400 italic`,children:`Leer = sofort`})]}),(0,d.jsx)(`button`,{onClick:Ot,disabled:at||!Ce,className:`w-full px-3 py-2 bg-indigo-600 text-white text-sm font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 shadow-sm`,children:at?`Sende...`:`${bt.length} Anfrage-E-Mails jetzt senden`}),!Ce&&(0,d.jsx)(`p`,{className:`text-center text-[10px] mt-2 text-red-500`,children:`Gmail nicht verbunden.`}),st&&(0,d.jsx)(`p`,{className:`text-center text-xs mt-2 font-bold text-indigo-600`,children:st})]})}),ht===`codes`&&(0,d.jsxs)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Gutscheincodes hinzufügen`}),$e&&(0,d.jsxs)(`span`,{className:`text-xs text-indigo-600 font-bold`,children:[`Verfügbar: `,$e.available,` (Verwendet: `,$e.used,`)`]})]}),(0,d.jsx)(`textarea`,{placeholder:`z.B. CODE1, CODE2, CODE3`,value:Ze,onChange:e=>Qe(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 mb-2 h-24`}),(0,d.jsx)(`button`,{onClick:Dt,disabled:tt||!Ze.trim(),className:`w-full px-3 py-1.5 bg-indigo-100 text-indigo-700 text-xs font-bold rounded-lg hover:bg-indigo-200 disabled:opacity-50`,children:tt?`Lädt hoch...`:`Codes speichern`}),rt&&(0,d.jsx)(`p`,{className:`text-center text-xs mt-2 font-bold text-gray-600`,children:rt})]}),ht===`history`&&(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[(0,d.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-lg p-3 shadow-inner`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsx)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Eingegangene Antworten (Codes)`}),(0,d.jsx)(`button`,{onClick:Et,disabled:pt,className:`text-[10px] bg-indigo-50 text-indigo-600 px-2 py-1 rounded hover:bg-indigo-100 transition-colors flex items-center gap-1`,children:pt?`...`:`🔄 Aktualisieren`})]}),!dt||dt.length===0?(0,d.jsx)(`p`,{className:`text-[10px] text-gray-400 italic text-center py-4`,children:`Noch keine Antworten eingegangen.`}):(0,d.jsx)(`div`,{className:`max-h-60 overflow-y-auto rounded border border-gray-50`,children:(0,d.jsxs)(`table`,{className:`min-w-full text-[10px] text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-400 sticky top-0`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`E-Mail`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Code`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Datum`})]})}),(0,d.jsx)(`tbody`,{className:`divide-y divide-gray-50`,children:dt.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-indigo-50/30`,children:[(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-700 truncate max-w-[120px]`,title:e.email,children:e.email}),(0,d.jsx)(`td`,{className:`px-2 py-1 font-mono font-bold text-indigo-600`,children:e.code}),(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-400`,children:new Date(e.used_at).toLocaleDateString(`de-DE`,{day:`2-digit`,month:`2-digit`,hour:`2-digit`,minute:`2-digit`})})]},t))})]})})]}),(0,d.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-lg p-3 shadow-inner`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsx)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Versand-Historie (Anfragen)`}),(0,d.jsx)(`button`,{onClick:wt,className:`text-[10px] bg-indigo-50 text-indigo-600 px-2 py-1 rounded hover:bg-indigo-100 transition-colors flex items-center gap-1`,children:`🔄 Aktualisieren`})]}),!_t||_t.length===0?(0,d.jsx)(`p`,{className:`text-[10px] text-gray-400 italic text-center py-4`,children:`Noch keine Versand-Aktivitäten.`}):(0,d.jsx)(`div`,{className:`max-h-60 overflow-y-auto rounded border border-gray-50`,children:(0,d.jsxs)(`table`,{className:`min-w-full text-[10px] text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-400 sticky top-0`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Datum/Zeit`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Empfänger`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Geplant für`})]})}),(0,d.jsx)(`tbody`,{className:`divide-y divide-gray-50`,children:_t.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-indigo-50/30`,children:[(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-700`,children:new Date(e.timestamp).toLocaleDateString(`de-DE`,{day:`2-digit`,month:`2-digit`,hour:`2-digit`,minute:`2-digit`})}),(0,d.jsx)(`td`,{className:`px-2 py-1 font-bold text-indigo-600`,children:e.recipient_count}),(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-400`,children:e.scheduled_time||`Sofort`})]},t))})]})})]})]})]}),(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-amber-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-4`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-amber-50 rounded-lg text-amber-600 text-xl`,children:`✉️`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Nachfassen (Erinnerungen)`})]})}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg border border-gray-100 flex flex-col`,children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`Erinnerungen (Konfigurierbar)`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-4`,children:`Identifiziert Nicht-Käufer basierend auf der Login-Anzahl.`}),ye&&(0,d.jsxs)(`div`,{className:`mb-6`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-400 uppercase mb-2 block`,children:`Login-Verteilung (Anzahl Personen)`}),(0,d.jsx)(`div`,{className:`flex items-end gap-1 h-20 border-b border-gray-200 pb-1`,children:ye.map((e,t)=>(0,d.jsxs)(`div`,{className:`flex-1 flex flex-col justify-end items-center group relative ${e.logins<=T?`opacity-100`:`opacity-30`}`,children:[(0,d.jsx)(`div`,{className:`w-full rounded-t-sm transition-all duration-300 ${e.logins<=T?`bg-amber-400`:`bg-gray-300`}`,style:{height:`${Math.max(5,e.count/Math.max(...ye.map(e=>e.count))*100)}%`}}),(0,d.jsx)(`span`,{className:`text-[8px] text-gray-500 mt-1`,children:e.logins}),(0,d.jsxs)(`div`,{className:`absolute bottom-full left-1/2 -translate-x-1/2 bg-gray-800 text-white text-[8px] py-1 px-2 rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none mb-1 whitespace-nowrap z-20`,children:[e.count,` Personen mit `,e.logins,` Logins`]})]},t))})]}),(0,d.jsxs)(`div`,{className:`space-y-4 mb-6 bg-white p-3 rounded-lg border border-gray-100 shadow-sm`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-1`,children:[(0,d.jsxs)(`label`,{className:`text-xs font-bold text-gray-700`,children:[`Max. Logins: `,T]}),(0,d.jsx)(`span`,{className:`text-[10px] text-amber-600 font-bold`,children:ye?`Treffer: ${ye.filter(e=>e.logins<=T).reduce((e,t)=>e+t.count,0)} Personen`:``})]}),(0,d.jsx)(`input`,{type:`range`,min:`0`,max:`10`,value:T,onChange:e=>{E(parseInt(e.target.value)),Ie(null),w(null)},className:`w-full h-1.5 bg-gray-200 rounded-lg appearance-none cursor-pointer accent-amber-500`})]}),(0,d.jsxs)(`label`,{className:`flex items-center gap-3 cursor-pointer group`,children:[(0,d.jsxs)(`div`,{className:`relative inline-flex items-center`,children:[(0,d.jsx)(`input`,{type:`checkbox`,className:`sr-only peer`,checked:_e,onChange:e=>{ve(e.target.checked),Ie(null),w(null)}}),(0,d.jsx)(`div`,{className:`w-9 h-5 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-amber-300 rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-amber-500`})]}),(0,d.jsxs)(`div`,{className:`flex flex-col`,children:[(0,d.jsx)(`span`,{className:`text-xs font-bold text-gray-700`,children:`E-Mail bei Käufen ausschließen`}),(0,d.jsx)(`span`,{className:`text-[10px] text-gray-500`,children:`Ignoriert die Mail, wenn bereits ein Kind gekauft hat.`})]})]})]}),(0,d.jsx)(`div`,{className:`mt-auto`,children:he?(0,d.jsxs)(`div`,{className:`w-full bg-white p-3 rounded border border-gray-200 text-sm flex flex-col gap-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4 text-amber-600`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),(0,d.jsx)(`span`,{className:`font-medium text-gray-700`,children:`Analyse läuft...`})]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 break-words`,children:pe})]}):C?(0,d.jsx)(`div`,{className:`space-y-3`,children:(0,d.jsxs)(`button`,{onClick:()=>Ht(C),className:`w-full px-4 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 transition-colors shadow-sm flex items-center justify-center gap-2`,children:[(0,d.jsx)(`svg`,{className:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 16v1a2 2 0 002 2h12a2 2 0 002-2v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})}),`CSV für Supermailer`]})}):(0,d.jsx)(`button`,{onClick:()=>Vt(c),disabled:f!==null||he||b,className:`w-full px-4 py-2 bg-amber-600 text-white text-xs font-bold rounded-lg hover:bg-amber-700 disabled:opacity-50 transition-colors shadow-sm`,children:`Analyse starten`})})]})]}),C&&Fe&&Ce&&(0,d.jsxs)(`div`,{className:`mt-4 border-t border-gray-100 pt-4 bg-gray-50 p-4 rounded-xl space-y-4`,children:[(0,d.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,d.jsxs)(`h6`,{className:`font-bold text-gray-900 flex items-center gap-2`,children:[(0,d.jsx)(`span`,{children:`🚀`}),` Gmail Direkt-Versand`]}),(0,d.jsxs)(`p`,{className:`text-xs text-indigo-600 font-bold bg-indigo-50 px-2 py-1 rounded`,children:[Fe.length,` Empfänger identifiziert`]})]}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-2`,children:[(0,d.jsx)(`button`,{onClick:()=>qe(`config`),className:`px-4 py-2 text-xs font-bold ${D===`config`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`1. Text konfigurieren`}),(0,d.jsx)(`button`,{onClick:()=>{qe(`preview`),Je(0)},className:`px-4 py-2 text-xs font-bold ${D===`preview`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`2. Vorschau & Versand`}),(0,d.jsx)(`button`,{onClick:()=>qe(`history`),className:`px-4 py-2 text-xs font-bold ${D===`history`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`3. Historie`})]}),D===`config`&&(0,d.jsxs)(`div`,{className:`space-y-4`,children:[(0,d.jsxs)(`div`,{className:`space-y-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Betreff`}),(0,d.jsx)(`input`,{value:ze,onChange:e=>Be(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500`})]}),(0,d.jsxs)(`div`,{className:`space-y-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Nachricht (HTML erlaubt)`}),(0,d.jsx)(`textarea`,{value:Ve,onChange:e=>He(e.target.value),rows:4,className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 font-mono`}),(0,d.jsxs)(`div`,{className:`flex justify-between items-center text-[10px] text-gray-400`,children:[(0,d.jsxs)(`span`,{children:[`Platzhalter: `,`{Name Käufer}`,`, `,`{Kindernamen}`,`, `,`{LinksHTML}`]}),(0,d.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3 text-emerald-500`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z`})}),`Signatur "Kinderfotos Erding" wird automatisch angehängt`]})]})]}),(0,d.jsx)(`button`,{onClick:()=>{qe(`preview`),Je(0)},className:`w-full px-4 py-2 bg-indigo-100 text-indigo-700 text-sm font-bold rounded-lg hover:bg-indigo-200 transition-colors`,children:`Zur Vorschau →`})]}),D===`preview`&&(0,d.jsx)(`div`,{children:Ct.length===0?(0,d.jsx)(`div`,{className:`text-center py-6 text-gray-500 text-sm`,children:`Keine Empfänger für die Vorschau.`}):(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsxs)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:[`Vorschau für Empfänger `,O+1,` von `,Ct.length]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`button`,{onClick:()=>Je(Math.max(0,O-1)),disabled:O===0,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`←`}),(0,d.jsx)(`button`,{onClick:()=>Je(Math.min(Ct.length-1,O+1)),disabled:O>=Ct.length-1,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`→`})]})]}),Ct[O]&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-lg p-4 mb-4`,children:[(0,d.jsxs)(`div`,{className:`text-xs text-gray-500 mb-1 border-b border-gray-100 pb-2`,children:[(0,d.jsx)(`span`,{className:`font-bold`,children:`An:`}),` `,Ct[O].to]}),(0,d.jsx)(`div`,{className:`text-sm font-bold text-gray-800 mt-2 mb-2`,children:Ct[O].subject}),(0,d.jsx)(`div`,{className:`text-xs text-gray-700 space-y-2 email-preview`,dangerouslySetInnerHTML:{__html:Ct[O].body}})]}),(0,d.jsx)(`button`,{onClick:Ut,disabled:Ue,className:`w-full py-2.5 bg-indigo-600 text-white text-sm font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 transition-all shadow-md flex items-center justify-center gap-2`,children:Ue?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),`Sende Mails...`]}):(0,d.jsxs)(d.Fragment,{children:[Ct.length,` Erinnerungs-Mails jetzt versenden`]})}),Ge&&(0,d.jsx)(`p`,{className:`text-center text-xs font-bold text-indigo-600 mt-2`,children:Ge})]})}),D===`history`&&(0,d.jsx)(`div`,{className:`space-y-4`,children:(0,d.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-lg p-3 shadow-inner`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsx)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Versand-Historie (Erinnerungen)`}),(0,d.jsx)(`button`,{onClick:()=>Me(c.id),className:`text-[10px] bg-amber-50 text-amber-600 px-2 py-1 rounded hover:bg-amber-100 transition-colors flex items-center gap-1`,children:`🔄 Aktualisieren`})]}),!Le||Le.length===0?(0,d.jsx)(`p`,{className:`text-[10px] text-gray-400 italic text-center py-4`,children:`Noch keine Versand-Aktivitäten für diesen Auftrag.`}):(0,d.jsx)(`div`,{className:`max-h-80 overflow-y-auto rounded border border-gray-50`,children:(0,d.jsxs)(`table`,{className:`min-w-full text-[10px] text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-400 sticky top-0`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Datum/Zeit`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Empfänger`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Max Logins`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Status`})]})}),(0,d.jsx)(`tbody`,{className:`divide-y divide-gray-50`,children:Le.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-amber-50/30 border-b border-gray-50`,children:[(0,d.jsx)(`td`,{className:`px-2 py-2 text-gray-700`,children:new Date(e.timestamp).toLocaleDateString(`de-DE`,{day:`2-digit`,month:`2-digit`,hour:`2-digit`,minute:`2-digit`})}),(0,d.jsxs)(`td`,{className:`px-2 py-2`,children:[(0,d.jsxs)(`div`,{className:`font-bold text-amber-600`,children:[e.recipient_count,` Personen`]}),(0,d.jsx)(`div`,{className:`text-[8px] text-gray-400 truncate max-w-[200px]`,children:e.recipients.map(e=>e.Kindernamen).join(`, `)})]}),(0,d.jsx)(`td`,{className:`px-2 py-2 text-gray-600`,children:e.max_logins}),(0,d.jsx)(`td`,{className:`px-2 py-2 text-gray-400 italic`,children:e.scheduled_time||`Sofort`})]},t))})]})})]})})]})]})]}),` `,xt===`statistik`&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-purple-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-4`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-purple-50 rounded-lg text-purple-600 text-xl`,children:`📊`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Verkaufsstatistik`})]})}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mb-4`,children:`Übersicht der Verkäufe basierend auf den lokal gespeicherten Daten. Nutze "Daten abgleichen" im Kopfbereich für ein Update.`}),(0,d.jsx)(`div`,{className:`mb-6`,children:b?(0,d.jsxs)(`div`,{className:`w-full bg-gray-50 p-3 rounded border border-gray-200 text-sm flex flex-col gap-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4 text-purple-600`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),(0,d.jsx)(`span`,{className:`font-medium text-gray-700`,children:`Läuft im Hintergrund...`})]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 break-words`,children:g})]}):(0,d.jsx)(`button`,{onClick:()=>Pt(c),disabled:f!==null||b,className:`px-4 py-2 bg-purple-600 text-white text-sm font-bold rounded-lg hover:bg-purple-700 disabled:opacity-50 transition-colors shadow-sm`,children:`Statistik-Lauf starten`})}),v&&(0,d.jsxs)(`div`,{className:`mt-4 border-t border-gray-200 pt-6`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-4`,children:[(0,d.jsx)(`h4`,{className:`text-lg font-bold text-gray-800`,children:`Ergebnis der Auswertung`}),(0,d.jsx)(`span`,{className:`text-xs bg-emerald-100 text-emerald-800 px-2 py-1 rounded font-medium`,children:`Erfolgreich abgeschlossen`})]}),(0,d.jsx)(`div`,{className:`overflow-x-auto rounded-lg border border-gray-200`,children:(0,d.jsxs)(`table`,{className:`min-w-full divide-y divide-gray-200 text-sm text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-500 uppercase`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium`,children:`Album`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Kinder (Gesamt)`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Mit Käufen`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Alle Bilder`})]})}),(0,d.jsxs)(`tbody`,{className:`bg-white divide-y divide-gray-200`,children:[v.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-gray-50`,children:[(0,d.jsx)(`td`,{className:`px-4 py-3 font-medium text-gray-900`,children:e.Album}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-gray-600`,children:e.Kinder_insgesamt}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-emerald-600 font-medium`,children:e.Kinder_mit_Käufen}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-indigo-600 font-medium`,children:e.Kinder_Alle_Bilder_gekauft})]},t)),(0,d.jsxs)(`tr`,{className:`bg-gray-50 font-bold border-t-2 border-gray-300`,children:[(0,d.jsxs)(`td`,{className:`px-4 py-3 text-gray-900`,children:[`Gesamt (`,v.length,` Alben)`]}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-gray-900`,children:v.reduce((e,t)=>e+(t.Kinder_insgesamt||0),0)}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-emerald-700`,children:v.reduce((e,t)=>e+(t.Kinder_mit_Käufen||0),0)}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-indigo-700`,children:v.reduce((e,t)=>e+(t.Kinder_Alle_Bilder_gekauft||0),0)})]})]})]})})]})]})]})]}),(0,d.jsx)(`div`,{className:`bg-gray-100 px-4 py-3 sm:px-6 sm:flex sm:flex-row-reverse border-t border-gray-200`,children:(0,d.jsx)(`button`,{type:`button`,className:`w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 sm:mt-0 sm:ml-3 sm:w-auto sm:text-sm`,onClick:()=>{u(null),y(null),h(null)},children:`Schließen`})})]})]})})]})}(0,c.createRoot)(document.getElementById(`root`)).render((0,d.jsx)(l.StrictMode,{children:(0,d.jsx)(f,{})})); \ No newline at end of file diff --git a/fotograf-de-scraper/frontend/dist/assets/index-FME2rxM6.js b/fotograf-de-scraper/frontend/dist/assets/index-FME2rxM6.js deleted file mode 100644 index a83a91820..000000000 --- a/fotograf-de-scraper/frontend/dist/assets/index-FME2rxM6.js +++ /dev/null @@ -1,47 +0,0 @@ -var e=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var t=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var ee=Array.isArray;function S(){}var C={H:null,A:null,T:null,S:null},te=Object.prototype.hasOwnProperty;function ne(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function re(e,t){return ne(e.type,t,e.props)}function w(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function ie(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ae=/\/+/g;function oe(e,t){return typeof e==`object`&&e&&e.key!=null?ie(``+e.key):t.toString(36)}function se(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(S,S):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ce(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,ce(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+oe(e,0):a,ee(o)?(i=``,c!=null&&(i=c.replace(ae,`$&/`)+`/`),ce(o,r,i,``,function(e){return e})):o!=null&&(w(o)&&(o=re(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(ae,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(ee(e))for(var u=0;u{n.exports=t()})),r=e((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,ee||(ee=!0,w());else{var t=n(l);t!==null&&oe(x,t.startTime-e)}}var ee=!1,S=-1,C=5,te=-1;function ne(){return g?!0:!(e.unstable_now()-tet&&ne());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&oe(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?w():ee=!1}}}var w;if(typeof y==`function`)w=function(){y(re)};else if(typeof MessageChannel<`u`){var ie=new MessageChannel,ae=ie.port2;ie.port1.onmessage=re,w=function(){ae.postMessage(null)}}else w=function(){_(re,0)};function oe(t,n){S=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(S),S=-1):h=!0,oe(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,ee||(ee=!0,w()))),r},e.unstable_shouldYield=ne,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),i=e(((e,t)=>{t.exports=r()})),a=e((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=a()})),s=e((e=>{var t=i(),r=n(),a=o();function s(e){var t=`https://react.dev/errors/`+e;if(1pe||(e.current=fe[pe],fe[pe]=null,pe--)}function O(e,t){pe++,fe[pe]=e.current,e.current=t}var he=me(null),ge=me(null),_e=me(null),ve=me(null);function ye(e,t){switch(O(_e,t),O(ge,e),O(he,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}D(he),O(he,e)}function be(){D(he),D(ge),D(_e)}function xe(e){e.memoizedState!==null&&O(ve,e);var t=he.current,n=Hd(t,e.type);t!==n&&(O(ge,e),O(he,n))}function Se(e){ge.current===e&&(D(he),D(ge)),ve.current===e&&(D(ve),Qf._currentValue=de)}var Ce,we;function Te(e){if(Ce===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Ce=t&&t[1]||``,we=-1)`:-1i||c[r]!==l[i]){var u=` -`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Ee=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Te(n):``}function Oe(e,t){switch(e.tag){case 26:case 27:case 5:return Te(e.type);case 16:return Te(`Lazy`);case 13:return e.child!==t&&t!==null?Te(`Suspense Fallback`):Te(`Suspense`);case 19:return Te(`SuspenseList`);case 0:case 15:return De(e.type,!1);case 11:return De(e.type.render,!1);case 1:return De(e.type,!0);case 31:return Te(`Activity`);default:return``}}function ke(e){try{var t=``,n=null;do t+=Oe(e,n),n=e,e=e.return;while(e);return t}catch(e){return` -Error generating stack: `+e.message+` -`+e.stack}}var Ae=Object.prototype.hasOwnProperty,je=t.unstable_scheduleCallback,Me=t.unstable_cancelCallback,Ne=t.unstable_shouldYield,Pe=t.unstable_requestPaint,Fe=t.unstable_now,Ie=t.unstable_getCurrentPriorityLevel,Le=t.unstable_ImmediatePriority,Re=t.unstable_UserBlockingPriority,ze=t.unstable_NormalPriority,Be=t.unstable_LowPriority,Ve=t.unstable_IdlePriority,He=t.log,Ue=t.unstable_setDisableYieldValue,We=null,k=null;function Ge(e){if(typeof He==`function`&&Ue(e),k&&typeof k.setStrictMode==`function`)try{k.setStrictMode(We,e)}catch{}}var A=Math.clz32?Math.clz32:Je,Ke=Math.log,qe=Math.LN2;function Je(e){return e>>>=0,e===0?32:31-(Ke(e)/qe|0)|0}var Ye=256,Xe=262144,Ze=4194304;function Qe(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function $e(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Qe(n))):i=Qe(o):i=Qe(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Qe(n))):i=Qe(o)):i=Qe(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function et(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function tt(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function nt(){var e=Ze;return Ze<<=1,!(Ze&62914560)&&(Ze=4194304),e}function rt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function it(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function at(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0`u`||window.document===void 0||window.document.createElement===void 0),_n=!1;if(gn)try{var vn={};Object.defineProperty(vn,`passive`,{get:function(){_n=!0}}),window.addEventListener(`test`,vn,vn),window.removeEventListener(`test`,vn,vn)}catch{_n=!1}var yn=null,bn=null,xn=null;function Sn(){if(xn)return xn;var e,t=bn,n=t.length,r,i=`value`in yn?yn.value:yn.textContent,a=i.length;for(e=0;e=er),rr=` `,ir=!1;function ar(e,t){switch(e){case`keyup`:return Qn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function or(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var sr=!1;function cr(e,t){switch(e){case`compositionend`:return or(t);case`keypress`:return t.which===32?(ir=!0,rr):null;case`textInput`:return e=t.data,e===rr&&ir?null:e;default:return null}}function lr(e,t){if(sr)return e===`compositionend`||!$n&&ar(e,t)?(e=Sn(),xn=bn=yn=null,sr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=jr(n)}}function Nr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Pr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Ut(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ut(e.document)}return t}function Fr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Ir=gn&&`documentMode`in document&&11>=document.documentMode,Lr=null,Rr=null,zr=null,Br=!1;function Vr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Br||Lr==null||Lr!==Ut(r)||(r=Lr,`selectionStart`in r&&Fr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),zr&&Ar(zr,r)||(zr=r,r=Ed(Rr,`onSelect`),0>=o,i-=o,Ni=1<<32-A(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),o=a(_,o,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),N&&Fi(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(i,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(i,h),o=a(y,o,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(i,h),N&&Fi(i,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(i,v.value,l),v!==null&&(o=a(v,o,g),d===null?u=v:d.sibling=v,d=v);return N&&Fi(i,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,i,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),o=a(v,o,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(i,e)}),N&&Fi(i,g),u}function b(e,r,a,c){if(typeof a==`object`&&a&&a.type===y&&a.key===null&&(a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case _:a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===y){if(r.tag===7){n(e,r.sibling),c=i(r,a.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===w&&Na(l)===r.type){n(e,r.sibling),c=i(r,a.props),Ba(c,a),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}a.type===y?(c=bi(a.props.children,e.mode,c,a.key),c.return=e,e=c):(c=yi(a.type,a.key,a.props,null,e.mode,c),Ba(c,a),c.return=e,e=c)}return o(e);case v:a:{for(l=a.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),c=i(r,a.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=Ci(a,e.mode,c),c.return=e,e=c}return o(e);case w:return a=Na(a),b(e,r,a,c)}if(ue(a))return h(e,r,a,c);if(se(a)){if(l=se(a),typeof l!=`function`)throw Error(s(150));return a=l.call(a),g(e,r,a,c)}if(typeof a.then==`function`)return b(e,r,za(a),c);if(a.$$typeof===S)return b(e,r,ca(e,a),c);Va(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(a=``+a,r!==null&&r.tag===6?(n(e,r.sibling),c=i(r,a),c.return=e,e=c):(n(e,r),c=xi(a,e.mode,c),c.return=e,e=c),o(e)):n(e,r)}return function(e,t,n,r){try{Ra=0;var i=b(e,t,n,r);return La=null,i}catch(t){if(t===Da||t===ka)throw t;var a=hi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ua=Ha(!0),Wa=Ha(!1),Ga=!1;function Ka(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function qa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ja(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ya(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,G&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=fi(e),di(e,null,n),t}return ci(e,r,t,n),fi(e)}function Xa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,st(e,n)}}function Za(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Qa=!1;function $a(){if(Qa){var e=va;if(e!==null)throw e}}function eo(e,t,n,r){Qa=!1;var i=e.updateQueue;Ga=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(J&f)===f:(r&f)===f){f!==0&&f===_a&&(Qa=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(m=g.payload,typeof m==`function`){d=m.call(_,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=g.payload,f=typeof m==`function`?m.call(_,d,f):m,f==null)break a;d=h({},d,f);break a;case 2:Ga=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Gl|=o,e.lanes=o,e.memoizedState=d}}function to(e,t){if(typeof e!=`function`)throw Error(s(191,e));e.call(t)}function no(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=T.T,s={};T.T=s,Ls(e,!1,t,n);try{var c=i(),l=T.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Is(e,t,xa(c,r),pu(e)):Is(e,t,r,pu(e))}catch(n){Is(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{E.p=a,o!==null&&s.types!==null&&(o.types=s.types),T.T=o}}function Es(){}function Ds(e,t,n,r){if(e.tag!==5)throw Error(s(476));var i=Os(e).queue;Ts(e,i,t,de,n===null?Es:function(){return ks(e),n(r)})}function Os(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:de,baseState:de,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:de},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ro,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function ks(e){var t=Os(e);t.next===null&&(t=e.alternate.memoizedState),Is(e,t.next.queue,{},pu())}function As(){return sa(Qf)}function js(){return B().memoizedState}function Ms(){return B().memoizedState}function Ns(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ja(n);var r=Ya(t,e,n);r!==null&&(hu(r,t,n),Xa(r,t,n)),t={cache:pa()},e.payload=t;return}t=t.return}}function Ps(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Rs(e)?zs(t,n):(n=li(e,t,n,r),n!==null&&(hu(n,e,r),Bs(n,t,r)))}function Fs(e,t,n){Is(e,t,n,pu())}function Is(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Rs(e))zs(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,kr(s,o))return ci(e,t,i,0),K===null&&si(),!1}catch{}if(n=li(e,t,i,r),n!==null)return hu(n,e,r),Bs(n,t,r),!0}return!1}function Ls(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Rs(e)){if(t)throw Error(s(479))}else t=li(e,n,r,2),t!==null&&hu(t,e,2)}function Rs(e){var t=e.alternate;return e===I||t!==null&&t===I}function zs(e,t){yo=vo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Bs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,st(e,n)}}var Vs={readContext:sa,use:Io,useCallback:z,useContext:z,useEffect:z,useImperativeHandle:z,useLayoutEffect:z,useInsertionEffect:z,useMemo:z,useReducer:z,useRef:z,useState:z,useDebugValue:z,useDeferredValue:z,useTransition:z,useSyncExternalStore:z,useId:z,useHostTransitionStatus:z,useFormState:z,useActionState:z,useOptimistic:z,useMemoCache:z,useCacheRefresh:z};Vs.useEffectEvent=z;var Hs={readContext:sa,use:Io,useCallback:function(e,t){return No().memoizedState=[e,t===void 0?null:t],e},useContext:sa,useEffect:fs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),us(4194308,4,vs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return us(4194308,4,e,t)},useInsertionEffect:function(e,t){us(4,2,e,t)},useMemo:function(e,t){var n=No();t=t===void 0?null:t;var r=e();if(bo){Ge(!0);try{e()}finally{Ge(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=No();if(n!==void 0){var i=n(t);if(bo){Ge(!0);try{n(t)}finally{Ge(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ps.bind(null,I,e),[r.memoizedState,e]},useRef:function(e){var t=No();return e={current:e},t.memoizedState=e},useState:function(e){e=Jo(e);var t=e.queue,n=Fs.bind(null,I,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:bs,useDeferredValue:function(e,t){return Cs(No(),e,t)},useTransition:function(){var e=Jo(!1);return e=Ts.bind(null,I,e.queue,!0,!1),No().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=I,i=No();if(N){if(n===void 0)throw Error(s(407));n=n()}else{if(n=t(),K===null)throw Error(s(349));J&127||Uo(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,fs(Go.bind(null,r,a,e),[e]),r.flags|=2048,cs(9,{destroy:void 0},Wo.bind(null,r,a,n,t),null),n},useId:function(){var e=No(),t=K.identifierPrefix;if(N){var n=Pi,r=Ni;n=(r&~(1<<32-A(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=xo++,0<\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?o.createElement(`select`,{is:r.is}):o.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?o.createElement(i,{is:r.is}):o.createElement(i)}}a[pt]=t,a[mt]=r;a:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)a.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break a;for(;o.sibling===null;){if(o.return===null||o.return===t)break a;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=a;a:switch(Pd(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Fc(t)}}return H(t),Ic(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Fc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(s(166));if(e=_e.current,qi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=Bi,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[pt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Wi(t,!0)}else e=Bd(e).createTextNode(r),e[pt]=t,t.stateNode=e}return H(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=qi(t),n!==null){if(e===null){if(!r)throw Error(s(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(s(557));e[pt]=t}else Ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;H(t),e=!1}else n=Yi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(ho(t),t):(ho(t),null);if(t.flags&128)throw Error(s(558))}return H(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=qi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(s(318));if(i=t.memoizedState,i=i===null?null:i.dehydrated,!i)throw Error(s(317));i[pt]=t}else Ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;H(t),i=!1}else i=Yi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(ho(t),t):(ho(t),null)}return ho(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Rc(t,t.updateQueue),H(t),null);case 4:return be(),e===null&&Sd(t.stateNode.containerInfo),H(t),null;case 10:return ta(t.type),H(t),null;case 19:if(D(F),r=t.memoizedState,r===null)return H(t),null;if(i=(t.flags&128)!=0,a=r.rendering,a===null)if(i)zc(r,!1);else{if(X!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=go(e),a!==null){for(t.flags|=128,zc(r,!1),e=a.updateQueue,t.updateQueue=e,Rc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)vi(n,e),n=n.sibling;return O(F,F.current&1|2),N&&Fi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Fe()>tu&&(t.flags|=128,i=!0,zc(r,!1),t.lanes=4194304)}else{if(!i)if(e=go(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Rc(t,e),zc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!N)return H(t),null}else 2*Fe()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,i=!0,zc(r,!1),t.lanes=4194304);r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(H(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Fe(),e.sibling=null,n=F.current,O(F,i?n&1|2:n&1),N&&Fi(t,r.treeForkCount),e);case 22:case 23:return ho(t),so(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(H(t),t.subtreeFlags&6&&(t.flags|=8192)):H(t),n=t.updateQueue,n!==null&&Rc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&D(Ca),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),ta(P),H(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function Vc(e,t){switch(Ri(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return ta(P),be(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Se(t),null;case 31:if(t.memoizedState!==null){if(ho(t),t.alternate===null)throw Error(s(340));Ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(ho(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));Ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return D(F),null;case 4:return be(),null;case 10:return ta(t.type),null;case 22:case 23:return ho(t),so(),e!==null&&D(Ca),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return ta(P),null;case 25:return null;default:return null}}function Hc(e,t){switch(Ri(t),t.tag){case 3:ta(P),be();break;case 26:case 27:case 5:Se(t);break;case 4:be();break;case 31:t.memoizedState!==null&&ho(t);break;case 13:ho(t);break;case 19:D(F);break;case 10:ta(t.type);break;case 22:case 23:ho(t),so(),e!==null&&D(Ca);break;case 24:ta(P)}}function Uc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Wc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Gc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{no(t,n)}catch(t){Z(e,e.return,t)}}}function Kc(e,t,n){n.props=Ys(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function qc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function Jc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}function Yc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function Xc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[mt]=t}catch(t){Z(e,e.return,t)}}function Zc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Qc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Zc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=sn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(el(e,t,n),e=e.sibling;e!==null;)el(e,t,n),e=e.sibling}function tl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[pt]=e,t[mt]=n}catch(t){Z(e,e.return,t)}}var nl=!1,U=!1,rl=!1,il=typeof WeakSet==`function`?WeakSet:Set,al=null;function ol(e,t){if(e=e.containerInfo,Rd=sp,e=Pr(e),Fr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break a}var o=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||i!==0&&f.nodeType!==3||(c=o+i),f!==a||r!==0&&f.nodeType!==3||(l=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===i&&(c=o),p===a&&++d===r&&(l=o),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,al=t;al!==null;)if(t=al,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,al=e;else for(;al!==null;){switch(t=al,a=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n title`))),Pd(a,r,n),a[pt]=e,Et(a),r=a;break a;case`link`:var o=Vf(`link`,`href`,i).get(r+(n.href||``));if(o){for(var c=0;cg&&(o=g,g=h,h=o);var _=Mr(s,h),v=Mr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,T.T=null,n=lu,lu=null;var a=au,o=su;if(iu=0,ou=au=null,su=0,G&6)throw Error(s(331));var c=G;if(G|=4,Fl(a.current),Dl(a,a.current,o,n),G=c,id(0,!1),k&&typeof k.onPostCommitFiberRoot==`function`)try{k.onPostCommitFiberRoot(We,a)}catch{}return!0}finally{E.p=i,T.T=r,Vu(e,t)}}function Wu(e,t,n){t=Ti(n,t),t=tc(e.stateNode,t,2),e=Ya(e,t,2),e!==null&&(it(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=Ti(n,e),n=nc(2),r=Ya(t,n,2),r!==null&&(rc(n,r,t,e),it(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new zl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Ul=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,K===e&&(J&n)===n&&(X===4||X===3&&(J&62914560)===J&&300>Fe()-$l?!(G&2)&&Su(e,0):ql|=n,Yl===J&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=nt()),e=ui(e,t),e!==null&&(it(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(s(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return je(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-A(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=J,a=$e(r,r===K?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||et(r,a)||(n=!0,ld(r,a));r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=Fe(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Gt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),Et(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Gt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Gt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Gt(n.imageSizes)+`"]`)):i+=`[href="`+Gt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=h({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),Et(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Gt(r)+`"][href="`+Gt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=h({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),Et(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=Tt(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=h({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);Et(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=Tt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),Et(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=Tt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),Et(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var i=(i=_e.current)?gf(i):null;if(!i)throw Error(s(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=Tt(i).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var a=Tt(i).hoistableStyles,o=a.get(e);if(o||(i=i.ownerDocument||i,o={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},a.set(e,o),(a=i.querySelector(jf(e)))&&!a._p&&(o.instance=a,o.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),a||Nf(i,e,n,o.state))),t&&r===null)throw Error(s(528,``));return o}if(t&&r!==null)throw Error(s(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=Tt(i).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(s(444,e))}}function Af(e){return`href="`+Gt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return h({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),Et(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Gt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Gt(n.href)+`"]`);if(r)return t.instance=r,Et(r),r;var i=h({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),Et(r),Pd(r,`style`,i),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Af(n.href);var a=e.querySelector(jf(i));if(a)return t.state.loading|=4,t.instance=a,Et(a),a;r=Mf(n),(i=mf.get(i))&&Rf(r,i),a=(e.ownerDocument||e).createElement(`link`),Et(a);var o=a;return o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),t.state.loading|=4,Lf(a,n.precedence,e),t.instance=a;case`script`:return a=Pf(n.src),(i=e.querySelector(Ff(a)))?(t.instance=i,Et(i),i):(r=n,(i=mf.get(a))&&(r=h({},n),zf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),Et(i),Pd(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(s(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,Et(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),Et(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=s()}))(),l=n(),u=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),d=e(((e,t)=>{t.exports=u()}))();function f(){let[e,t]=(0,l.useState)(`kiga`),[n,r]=(0,l.useState)({kiga:null,schule:null}),[i,a]=(0,l.useState)(!1),[o,s]=(0,l.useState)(null),[c,u]=(0,l.useState)(null),[f,p]=(0,l.useState)(null),[m,h]=(0,l.useState)(null),[g,_]=(0,l.useState)(``),[v,y]=(0,l.useState)(null),[b,x]=(0,l.useState)(!1),[ee,S]=(0,l.useState)(!1),[C,te]=(0,l.useState)([]),[ne,re]=(0,l.useState)(``),[w,ie]=(0,l.useState)(!1),[ae,oe]=(0,l.useState)(!1),[se,ce]=(0,l.useState)(!1),[le,ue]=(0,l.useState)(null),[T,E]=(0,l.useState)(``),[de,fe]=(0,l.useState)(!1),[pe,me]=(0,l.useState)(null),[D,O]=(0,l.useState)(!1),[he,ge]=(0,l.useState)(null),[_e,ve]=(0,l.useState)(`Fotos von {Kindernamen}`),[ye,be]=(0,l.useState)(`Hallo {Name Käufer},

deine Fotos sind fertig und warten auf dich! Klicke einfach auf die Links unten, um direkt zu den Galerien zu gelangen:

{LinksHTML}

Viel Spaß beim Anschauen!`),[xe,Se]=(0,l.useState)(!1),[Ce,we]=(0,l.useState)(null),[Te,Ee]=(0,l.useState)(``),[De,Oe]=(0,l.useState)(``),[ke,Ae]=(0,l.useState)(null),[je,Me]=(0,l.useState)(!1),[Ne,Pe]=(0,l.useState)(``),[Fe,Ie]=(0,l.useState)(!1),[Le,Re]=(0,l.useState)(``),[ze,Be]=(0,l.useState)(``),[Ve,He]=(0,l.useState)(null),[Ue,We]=(0,l.useState)(!1),[k,Ge]=(0,l.useState)(`recipients`),[A,Ke]=(0,l.useState)(0),[qe,Je]=(0,l.useState)(null),Ye=` -

- --
-
- - - - - - - -
- Kinderfotos Erding Logo - -

Kinderfotos Erding | www.kinderfotos-erding.de

-

Gartenstr. 10 | 85445 Oberding | 08122-8470867

-
-
- `,Xe=(0,l.useMemo)(()=>Te.split(` -`).filter(e=>e.trim()).map(e=>{let t=e.split(`,`),n=t[0]?t[0].trim().toLowerCase():``,r=t[1]?t[1].trim():`Liebe Eltern`,i=t[2]?t[2].trim():`Euren Kindern`;return{to:n,subject:`Eure Bilder vom Kindergarten-Fotoshooting`,body:`Guten Morgen ${r},

vielen Dank für Eure Teilnahme am Mini-Familien-Fotoshooting im ${c?c.name.replace(/\(JOB\d+\)\s*/,``).replace(/Kindergarten\s+/gi,``).replace(/\s+\d{4}$/,``).trim():`dem Kindergarten`} diese Woche. Die Bilder sind jetzt bereits online, ihr solltet bald eine Mail dazu erhalten. :)

Die Bilder von ${i} gefallen uns sehr gut, sie wirken auf den Bildern sehr selbstbewusst. Gerne würden wir diese in unserer Galerie auf www.kinderfotos-erding.de (Link: Beispiel ansehen) veröffentlichen.

Um den rechtlichen Anforderungen (DSGVO) gerecht zu werden, müsstet Ihr noch dieses Formular auf unserer Website ausfüllen:
Zum Formular zur Veröffentlichung

Das hilft uns wirklich sehr, damit andere einen besseren Eindruck von unserer Arbeit gewinnen. Als kleines Dankeschön erhaltet Ihr im Anschluss einen Rabattcode über 25 € für Eure Bestellung. Diesen senden wir Euch per separater E-Mail zu, sobald das Formular ausgefüllt ist. Bitte wartet mit Eurer Bestellung, bis wir Euch den Rabattcode zugesendet haben.

Vielen Dank für Eure Unterstützung und Euer Vertrauen!

Liebe Grüße,
das Team von Kinderfotos Erding -

- --
-
- - - - - - - -
- Kinderfotos Erding Logo - -

Kinderfotos Erding | www.kinderfotos-erding.de

-

Gartenstr. 10 | 85445 Oberding | 08122-8470867

-
-
- `,first_name:r}}).filter(e=>e.to),[Te,c]),[Ze,Qe]=(0,l.useState)(`config`),[$e,et]=(0,l.useState)(0),[tt,nt]=(0,l.useState)(`vorbereitung`),rt=(0,l.useMemo)(()=>he?he.map(e=>{let t=_e.replace(/{Kindernamen}/g,e.Kindernamen),n=ye.replace(/{Name Käufer}/g,e[`Name Käufer`]).replace(/{Kindernamen}/g,e.Kindernamen).replace(/{LinksHTML}/g,e.LinksHTML).replace(/\n/g,`
`);return{to:e[`E-Mail-Adresse Käufer`],subject:t,body:n+Ye}}):[],[he,_e,ye,Ye]),it=async()=>{try{let e=await fetch(`${j}/api/publish-request/history`);e.ok&&Je(await e.json())}catch(e){console.error(`Failed to fetch release history`,e)}},at=async()=>{try{let e=await fetch(`${j}/api/publish-request/stats`);e.ok&&Ae(await e.json())}catch(e){console.error(`Failed to fetch release stats`,e)}},ot=async()=>{We(!0);try{let e=await fetch(`${j}/api/publish-request/responses`);e.ok&&He(await e.json())}catch(e){console.error(`Failed to fetch release responses`,e)}We(!1)},st=async()=>{Me(!0),Pe(`Lädt hoch...`);try{let e=await fetch(`${j}/api/publish-request/codes`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({codes:De})}),t=await e.json();e.ok?(Pe(`✅ ${t.added} neue Codes gespeichert.`),Oe(``),at()):Pe(`❌ Fehler beim Hochladen.`)}catch{Pe(`❌ Netzwerkfehler.`)}Me(!1)},ct=async()=>{if(!D)return;Ie(!0),Re(`Bereite Senden vor...`);let e=Xe;if(e.length===0){Re(`⚠️ Bitte Empfänger eintragen.`),Ie(!1);return}Re(`Sende ${e.length} Mails...`);try{let t=await fetch(`${j}/api/publish-request/send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:e.map(e=>({to:e.to,subject:e.subject,body:e.body})),scheduled_time:ze||null,participants:e.map(e=>({email:e.to,first_name:e.first_name}))})}),n=await t.json();t.ok?(Re(`✅ Fertig! ${n.success} gesendet. ${n.failed.length>0?`(`+n.failed.length+` Fehler)`:``}`),it()):Re(`❌ Fehler beim Senden.`)}catch{Re(`❌ Netzwerkfehler.`)}Ie(!1)},j=window.location.hostname.includes(`duckdns.org`)?`/fotograf-de-api`:`http://192.168.178.6:8002`,lt=async()=>{try{let e=await fetch(`${j}/api/gmail/status`);e.ok&&O((await e.json()).authenticated)}catch{console.error(`Failed to check Gmail auth status`)}},ut=async()=>{try{let e=await fetch(`${j}/api/auth/google`);if(e.ok){let t=await e.json();window.location.href=t.url}}catch{s(`Konnte Gmail-Anmeldung nicht starten.`)}},dt=async()=>{try{let e=await fetch(`${j}/api/jobs/latest-file`);if(e.ok){let t=await e.json();t.has_file&&me(t)}}catch{console.error(`Failed to fetch latest file info`)}},ft=async(e,t=!1)=>{a(!0),s(null);try{let n=await fetch(`${j}/api/jobs?account_type=${e}&force_refresh=${t}`);if(!n.ok){let e=await n.json();throw Error(e.detail||`Fehler beim Abrufen der Aufträge`)}let i=await n.json();r(t=>({...t,[e]:i}))}catch(e){s(e.message)}finally{a(!1)}};(0,l.useEffect)(()=>{n[e]===null&&ft(e,!1),dt(),lt(),at(),ot(),it()},[e]);let pt=()=>ft(e,!0);(0,l.useEffect)(()=>{(async()=>{try{let e=await fetch(`${j}/api/calendly/event-types`);if(e.ok){let t=await e.json();if(te(t.event_types||[]),t.event_types&&t.event_types.length>0){let e=localStorage.getItem(`fotograf_selected_event_type`),n=t.event_types.some(t=>t.name===e);re(e&&n?e:t.event_types[0].name)}}}catch(e){console.error(`Failed to fetch event types:`,e)}})()},[]);let mt=async t=>{x(!0),y(null),_(`Starte Analyse...`),s(null);try{let n=await fetch(`${j}/api/jobs/${t.id}/statistics?account_type=${e}`,{method:`POST`});if(!n.ok)throw Error(`Konnte Statistik-Prozess nicht starten.`);h((await n.json()).task_id)}catch(e){s(e.message),x(!1)}};(0,l.useEffect)(()=>{let e;return m&&b&&(e=setInterval(async()=>{try{let e=await fetch(`${j}/api/tasks/${m}`);if(!e.ok)throw Error(`Task Status Request failed`);let t=await e.json();_(t.progress||`Verarbeite...`),t.status===`completed`?(y(t.result),x(!1),h(null)):t.status===`error`&&(s(t.progress||`Ein Fehler ist aufgetreten.`),x(!1),h(null))}catch(e){console.error(`Polling Error:`,e)}},1e3)),()=>{e&&clearInterval(e)}},[m,b]);let ht=async e=>{try{let t=await fetch(`${j}/api/tasks/${e}`);t.ok&&ge((await t.json()).result)}catch{console.error(`Failed to fetch reminder results`)}};(0,l.useEffect)(()=>{let e;return le&&de&&(e=setInterval(async()=>{try{let e=await fetch(`${j}/api/tasks/${le}`);if(!e.ok)throw Error(`Task Status Request failed`);let t=await e.json();E(t.progress||`Verarbeite...`),t.status===`completed`?(fe(!1),ht(le)):t.status===`error`&&(s(t.progress||`Ein Fehler ist aufgetreten.`),fe(!1),ue(null))}catch(e){console.error(`Polling Error:`,e)}},1e3)),()=>{e&&clearInterval(e)}},[le,de]);let gt=async t=>{p(t.id),s(null);try{let n=`${j}/api/jobs/${t.id}/generate-pdf?account_type=${e}`;window.open(n,`_blank`),setTimeout(()=>{p(null),dt()},3e3)}catch(e){s(`PDF Fehler (${t.name}): ${e.message}`),p(null)}},_t=async(e,t)=>{if(!t){s(`Bitte wähle eine PDF-Vorlage aus.`);return}S(!0),s(null);let n=new FormData;n.append(`pdf_file`,t),ne&&n.append(`event_type_name`,ne);try{let t=await fetch(`${j}/api/qr-cards/generate`,{method:`POST`,body:n});if(!t.ok){if(t.status===404)throw Error(`Keine passenden Calendly-Termine gefunden.`);let e=await t.json();throw Error(e.detail||`Generierung fehlgeschlagen`)}let r=await t.blob(),i=window.URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`QR_Karten_Andruck_${e.id}.pdf`,document.body.appendChild(a),a.click(),setTimeout(()=>{document.body.removeChild(a),window.URL.revokeObjectURL(i),dt()},100)}catch(e){s(e.message)}finally{S(!1)}},vt=async(t,n)=>{if(!n){s(`Bitte wähle eine PDF-Vorlage aus.`);return}ce(!0),s(null);let r=new FormData;r.append(`pdf_file`,n);try{let n=await fetch(`${j}/api/jobs/${t.id}/siblings-qr-cards?account_type=${e}`,{method:`POST`,body:r});if(!n.ok){if(n.status===404)throw Error(`Keine Geschwisterkinder für QR-Karten gefunden.`);let e=await n.json();throw Error(e.detail||`Generierung fehlgeschlagen`)}let i=await n.json();if(i.status===`success`&&i.download_url)window.open(`${j}${i.download_url}`,`_blank`),setTimeout(dt,2e3);else throw Error(`Download URL could not be retrieved from server.`)}catch(e){s(e.message)}finally{ce(!1)}},yt=async t=>{oe(!0),s(null);try{let n=`${j}/api/jobs/${t.id}/siblings-list?account_type=${e}&event_type_name=${encodeURIComponent(ne)}`;window.open(n,`_blank`),setTimeout(()=>{oe(!1),dt()},3e3)}catch(e){s(`Geschwisterlisten-Fehler (${t.name}): ${e.message}`),oe(!1)}},bt=async e=>{ie(!0),s(null);try{let t=`${j}/api/jobs/${e.id}/appointment-list?event_type_name=${encodeURIComponent(ne)}`;window.open(t,`_blank`),setTimeout(()=>{ie(!1),dt()},3e3)}catch(t){s(`Listen-Fehler (${e.name}): ${t.message}`),ie(!1)}},xt=async t=>{fe(!0),E(`Starte Analyse...`),s(null);try{let n=await fetch(`${j}/api/jobs/${t.id}/reminder-analysis?account_type=${e}`,{method:`POST`});if(!n.ok)throw Error(`Konnte Analyse nicht starten.`);ue((await n.json()).task_id)}catch(e){s(e.message),fe(!1)}},St=async e=>{try{window.open(`${j}/api/tasks/${e}/download-csv`,`_blank`),setTimeout(dt,2e3)}catch{s(`Download fehlgeschlagen.`)}},Ct=async()=>{if(!he||!D)return;Se(!0),we(`Sende...`);let e=he.map(e=>{let t=_e.replace(/{Kindernamen}/g,e.Kindernamen),n=ye.replace(/{Name Käufer}/g,e[`Name Käufer`]).replace(/{Kindernamen}/g,e.Kindernamen).replace(/{LinksHTML}/g,e.LinksHTML).replace(/\n/g,`
`);return{to:e[`E-Mail-Adresse Käufer`],subject:t,body:n+Ye}});try{let t=await fetch(`${j}/api/publish-request/send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:e,scheduled_time:ze||null})});if(t.ok){let e=await t.json();we(`✅ Fertig! ${e.success} gesendet.`),e.failed.length>0&&we(t=>`${t} (${e.failed.length} Fehler)`)}else throw Error(`Sende-Fehler`)}catch{we(`❌ Fehler beim Senden`)}finally{Se(!1)}},wt=async()=>{if(D){Se(!0);try{(await fetch(`${j}/api/gmail/send-bulk`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({emails:[{to:`floke.com@gmail.com`,subject:`Test-E-Mail vom Fotograf Tool (inkl. Signatur)`,body:`Hallo! Das ist eine Test-E-Mail, um die Gmail-API-Integration zu verifizieren. Wenn du das liest, funktioniert alles perfekt! 🚀`+Ye}]})})).ok?alert(`Test-E-Mail erfolgreich an floke.com@gmail.com gesendet!`):alert(`Fehler beim Senden der Test-E-Mail.`)}catch{alert(`Netzwerkfehler beim Senden der Test-E-Mail.`)}finally{Se(!1)}}},Tt=n[e];return(0,d.jsxs)(`div`,{className:`min-h-screen bg-gray-50 text-gray-900 font-sans`,children:[(0,d.jsx)(`header`,{className:`bg-white shadow-sm sticky top-0 z-10`,children:(0,d.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-16 flex items-center justify-between`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`text-2xl`,children:`📸`}),(0,d.jsx)(`h1`,{className:`text-xl font-bold text-gray-800 tracking-tight`,children:`Fotograf.de ERP`})]}),(0,d.jsxs)(`a`,{href:`http://192.168.178.6:8090`,className:`hidden sm:flex text-xs font-medium text-gray-500 hover:text-indigo-600 transition-colors items-center gap-1 bg-gray-50 px-2 py-1 rounded border border-gray-200`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 19l-7-7m0 0l7-7m-7 7h18`})}),`Zum Dashboard`]}),(0,d.jsxs)(`button`,{onClick:ut,className:`flex text-xs font-medium transition-colors items-center gap-1 px-2 py-1 rounded border ${D?`bg-emerald-50 text-emerald-600 border-emerald-200`:`bg-amber-50 text-amber-600 border-amber-200 hover:bg-amber-100`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:D?`✅`:`✉️`}),D?`Gmail verbunden`:`Gmail verbinden`]}),D&&(0,d.jsx)(`button`,{onClick:wt,disabled:xe,className:`text-[10px] bg-white border border-gray-200 text-gray-400 hover:text-indigo-600 hover:border-indigo-200 px-2 py-1 rounded transition-all`,children:xe?`Sende...`:`Test-Mail senden`}),pe&&(0,d.jsxs)(`div`,{className:`hidden lg:flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`text-xs text-gray-400`,children:`Letzte Datei:`}),(0,d.jsxs)(`a`,{href:`${j}/api/jobs/download-latest`,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs font-bold text-emerald-600 hover:text-emerald-700 underline flex items-center gap-1`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 16v1a2 2 0 002 2h12a2 2 0 002-2v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})}),pe.display_name,` (`,pe.timestamp,`)`]})]})]}),(0,d.jsxs)(`nav`,{className:`flex space-x-1 bg-gray-100 p-1 rounded-lg`,children:[(0,d.jsx)(`button`,{onClick:()=>t(`kiga`),className:`px-4 py-2 rounded-md text-sm font-medium transition-all duration-200 ${e===`kiga`?`bg-white shadow text-indigo-700`:`text-gray-500 hover:text-gray-700`}`,children:`Kindergarten`}),(0,d.jsx)(`button`,{onClick:()=>t(`schule`),className:`px-4 py-2 rounded-md text-sm font-medium transition-all duration-200 ${e===`schule`?`bg-white shadow text-indigo-700`:`text-gray-500 hover:text-gray-700`}`,children:`Schule`})]})]})}),(0,d.jsxs)(`main`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8`,children:[(0,d.jsxs)(`div`,{className:`flex flex-col sm:flex-row justify-between items-start sm:items-center mb-8 gap-4`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h2`,{className:`text-2xl font-bold text-gray-900`,children:e===`kiga`?`Kindergarten Aufträge`:`Schul Aufträge`}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mt-1`,children:Tt===null?`Noch nicht geladen.`:`${Tt.length} aktive Projekte gefunden.`})]}),(0,d.jsx)(`button`,{onClick:pt,disabled:i,className:`flex items-center gap-2 px-5 py-2.5 bg-indigo-600 text-white text-sm font-medium rounded-lg hover:bg-indigo-700 focus:ring-4 focus:ring-indigo-100 transition-all disabled:opacity-70 disabled:cursor-not-allowed shadow-sm`,children:i?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),`Synchronisiere...`]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`svg`,{className:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15`})}),Tt===null?`Aufträge abrufen`:`Liste aktualisieren`]})})]}),o&&!c&&(0,d.jsxs)(`div`,{className:`bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-lg mb-8 flex items-start gap-3`,children:[(0,d.jsx)(`svg`,{className:`w-5 h-5 mt-0.5 flex-shrink-0`,fill:`currentColor`,viewBox:`0 0 20 20`,children:(0,d.jsx)(`path`,{fillRule:`evenodd`,d:`M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z`,clipRule:`evenodd`})}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h3`,{className:`font-semibold text-sm`,children:`Systemfehler`}),(0,d.jsx)(`p`,{className:`text-sm mt-1`,children:o})]})]}),Tt!==null&&Tt.length===0&&!i&&!o&&(0,d.jsxs)(`div`,{className:`text-center py-16 bg-white rounded-xl border border-dashed border-gray-300`,children:[(0,d.jsx)(`svg`,{className:`mx-auto h-12 w-12 text-gray-300`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{vectorEffect:`non-scaling-stroke`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M9 13h6m-3-3v6m-9 1V7a2 2 0 012-2h6l2 2h6a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2z`})}),(0,d.jsx)(`h3`,{className:`mt-2 text-sm font-semibold text-gray-900`,children:`Keine Projekte`}),(0,d.jsx)(`p`,{className:`mt-1 text-sm text-gray-500`,children:`Es wurden keine aktiven Aufträge für diesen Account gefunden.`})]}),Tt!==null&&Tt.length>0&&(0,d.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-6`,children:Tt.map(e=>(0,d.jsxs)(`div`,{className:`bg-white rounded-xl shadow-sm border border-gray-200 overflow-hidden hover:shadow-md hover:border-indigo-300 transition-all duration-200 cursor-pointer flex flex-col h-full`,onClick:()=>u(e),children:[(0,d.jsx)(`div`,{className:`h-2 w-full ${e.status.toLowerCase().includes(`abgeschlossen`)?`bg-gray-300`:`bg-indigo-500`}`}),(0,d.jsxs)(`div`,{className:`p-6 flex-1 flex flex-col`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-start mb-4`,children:[(0,d.jsx)(`span`,{className:`inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-gray-100 text-gray-800`,children:e.id?`ID: ${e.id}`:`Unbekannte ID`}),(0,d.jsx)(`span`,{className:`text-sm font-medium text-gray-500 bg-gray-50 px-2 py-1 rounded`,children:e.date||`Kein Datum`})]}),(0,d.jsx)(`h3`,{className:`text-lg font-bold text-gray-900 leading-tight mb-2 line-clamp-2`,children:e.name}),(0,d.jsxs)(`div`,{className:`mt-auto pt-4 flex flex-col gap-2`,children:[(0,d.jsxs)(`p`,{className:`text-sm text-gray-600 flex items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-emerald-500`}),e.status]}),(0,d.jsxs)(`p`,{className:`text-xs text-gray-400`,children:[`Typ: `,e.shooting_type]})]})]}),(0,d.jsx)(`div`,{className:`bg-gray-50 px-6 py-3 border-t border-gray-100 flex justify-between items-center`,children:(0,d.jsx)(`span`,{className:`text-sm font-medium text-indigo-600 group-hover:text-indigo-800`,children:`Details verwalten →`})})]},e.id))})]}),c&&(0,d.jsx)(`div`,{className:`fixed inset-0 z-50 overflow-y-auto`,"aria-labelledby":`modal-title`,role:`dialog`,"aria-modal":`true`,children:(0,d.jsxs)(`div`,{className:`flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0`,children:[(0,d.jsx)(`div`,{className:`fixed inset-0 bg-gray-900 bg-opacity-75 transition-opacity`,"aria-hidden":`true`,onClick:()=>u(null)}),(0,d.jsx)(`span`,{className:`hidden sm:inline-block sm:align-middle sm:h-screen`,"aria-hidden":`true`,children:`​`}),(0,d.jsxs)(`div`,{className:`inline-block align-bottom bg-gray-50 rounded-2xl text-left overflow-hidden shadow-2xl transform transition-all sm:my-8 sm:align-middle sm:max-w-4xl w-full`,children:[(0,d.jsxs)(`div`,{className:`bg-white px-6 py-6 border-b border-gray-200 flex justify-between items-start`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h3`,{className:`text-2xl font-bold text-gray-900`,id:`modal-title`,children:c.name}),(0,d.jsxs)(`p`,{className:`text-sm text-gray-500 mt-1 flex items-center gap-3`,children:[(0,d.jsxs)(`span`,{children:[`📅 `,c.date]}),(0,d.jsx)(`span`,{children:`•`}),(0,d.jsx)(`span`,{className:`text-emerald-600 font-medium`,children:c.status}),(0,d.jsx)(`span`,{children:`•`}),(0,d.jsxs)(`a`,{href:c.url,target:`_blank`,rel:`noopener noreferrer`,className:`text-indigo-600 hover:underline inline-flex items-center gap-1`,children:[`In Fotograf.de öffnen `,(0,d.jsx)(`svg`,{className:`w-3 h-3`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14`})})]})]})]}),(0,d.jsxs)(`button`,{type:`button`,className:`bg-white rounded-md text-gray-400 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500`,onClick:()=>u(null),children:[(0,d.jsx)(`span`,{className:`sr-only`,children:`Schließen`}),(0,d.jsx)(`svg`,{className:`h-6 w-6`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,d:`M6 18L18 6M6 6l12 12`})})]})]}),(0,d.jsxs)(`div`,{className:`px-6 py-8`,children:[o&&f===c.id&&(0,d.jsx)(`div`,{className:`bg-red-50 border border-red-200 text-red-700 px-4 py-3 rounded-lg mb-6 text-sm`,children:o}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-6 gap-2`,children:[(0,d.jsxs)(`button`,{onClick:()=>nt(`vorbereitung`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${tt===`vorbereitung`?`text-emerald-600 border-b-2 border-emerald-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`📆`}),` Vorbereitung`]}),(0,d.jsxs)(`button`,{onClick:()=>nt(`followup`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${tt===`followup`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`✉️`}),` Follow-Up`]}),(0,d.jsxs)(`button`,{onClick:()=>nt(`statistik`),className:`px-4 py-2 text-sm font-bold flex items-center gap-2 ${tt===`statistik`?`text-purple-600 border-b-2 border-purple-600`:`text-gray-500 hover:text-gray-700`}`,children:[(0,d.jsx)(`span`,{className:`text-lg`,children:`📊`}),` Statistik`]})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[tt===`vorbereitung`&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-emerald-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-start justify-between mb-4`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-emerald-50 rounded-lg text-emerald-600 text-xl`,children:`📆`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Shooting-Planung & Listen`})]}),(0,d.jsx)(`span`,{className:`inline-flex items-center px-2 py-0.5 rounded text-xs font-medium bg-emerald-100 text-emerald-800`,children:`Aktiv`})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:[(0,d.jsxs)(`div`,{className:`md:col-span-1 border-r border-gray-100 pr-4`,children:[(0,d.jsx)(`label`,{className:`block text-sm font-bold text-gray-700 mb-2`,children:`Calendly Event auswählen`}),(0,d.jsxs)(`select`,{value:ne,onChange:e=>{re(e.target.value),localStorage.setItem(`fotograf_selected_event_type`,e.target.value)},className:`w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-emerald-500 focus:border-emerald-500 text-sm`,children:[C.length===0&&(0,d.jsx)(`option`,{value:``,children:`Lade Events...`}),C.map(e=>(0,d.jsx)(`option`,{value:e.name,children:e.name},e.uri))]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 mt-2`,children:`Wird für QR-Karten und die Terminübersicht benötigt.`})]}),(0,d.jsxs)(`div`,{className:`md:col-span-2 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4`,children:[(0,d.jsxs)(`div`,{className:`bg-blue-50 p-4 rounded-lg flex flex-col justify-between border border-blue-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-blue-800 mb-1`,children:`📄 Teilnehmerliste`}),(0,d.jsx)(`p`,{className:`text-xs text-blue-600 mb-3`,children:`Lädt alle Fotograf.de Anmeldungen als PDF herunter.`})]}),(0,d.jsx)(`button`,{onClick:()=>gt(c),disabled:f===c.id||b,className:`w-full px-3 py-2 bg-blue-600 text-white text-xs font-bold rounded-lg hover:bg-blue-700 disabled:opacity-50 transition-all flex justify-center items-center mt-auto`,children:f===c.id?`Lädt...`:`PDF generieren`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`📇 QR-Karten`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Andruck auf Blanko-PDF.`}),(0,d.jsx)(`input`,{type:`file`,accept:`.pdf`,id:`qr-upload-${c.id}`,className:`hidden`,onChange:e=>{e.target.files&&e.target.files.length>0&&(_t(c,e.target.files[0]),e.target.value=``)}})]}),(0,d.jsx)(`button`,{onClick:()=>document.getElementById(`qr-upload-${c.id}`)?.click(),disabled:!ne||ee,className:`w-full px-3 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 mt-auto`,children:ee?`Generiere...`:`Upload & Start`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`📋 Terminübersicht`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Tabelle mit 6-Minuten Takt.`})]}),(0,d.jsx)(`button`,{onClick:()=>bt(c),disabled:!ne||w,className:`w-full px-3 py-2 bg-indigo-600 text-white text-xs font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 mt-auto`,children:w?`Generiere...`:`Generieren`})]}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg flex flex-col justify-between sm:col-span-2 lg:col-span-3 border border-gray-100`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`👨‍👩‍👧‍👦 Geschwisterliste (Einrichtungsintern)`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-3`,children:`Abgleich von Kindergarten-Anmeldungen mit Calendly-Buchungen.`})]}),(0,d.jsxs)(`div`,{className:`grid grid-cols-2 gap-3 mt-auto`,children:[(0,d.jsx)(`button`,{onClick:()=>yt(c),disabled:ae,className:`w-full px-3 py-2 bg-teal-600 text-white text-xs font-bold rounded-lg hover:bg-teal-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2`,children:ae?`Generiere...`:`📄 PDF Liste`}),(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`input`,{type:`file`,accept:`.pdf`,id:`siblings-qr-upload-${c.id}`,className:`hidden`,onChange:e=>{e.target.files&&e.target.files.length>0&&(vt(c,e.target.files[0]),e.target.value=``)}}),(0,d.jsx)(`button`,{onClick:()=>document.getElementById(`siblings-qr-upload-${c.id}`)?.click(),disabled:se,className:`w-full px-3 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 disabled:opacity-50 transition-all flex justify-center items-center gap-2 h-full`,children:se?`Generiere...`:`📇 QR-Karten drucken`})]})]})]})]})]})]}),tt===`followup`&&(0,d.jsxs)(d.Fragment,{children:[` `,(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-indigo-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-2`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-indigo-50 rounded-lg text-indigo-600 text-xl`,children:`🖼️`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Anfrage Veröffentlichung`})]})}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mb-4 line-clamp-2`,children:`Sende personalisierte DSGVO-Anfragen für ausgewählte Eltern inkl. Gutschein-Webhook.`}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-4`,children:[(0,d.jsx)(`button`,{onClick:()=>Ge(`recipients`),className:`px-4 py-2 text-xs font-bold ${k===`recipients`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`1. Empfängerliste`}),(0,d.jsx)(`button`,{onClick:()=>Ge(`preview`),className:`px-4 py-2 text-xs font-bold ${k===`preview`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`2. Vorschau & Versand`}),(0,d.jsx)(`button`,{onClick:()=>Ge(`codes`),className:`px-4 py-2 text-xs font-bold ${k===`codes`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`Gutschein-Codes`}),(0,d.jsx)(`button`,{onClick:()=>Ge(`history`),className:`px-4 py-2 text-xs font-bold ${k===`history`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`Antworten & Historie`})]}),(0,d.jsxs)(`div`,{className:`space-y-4`,children:[k===`recipients`&&(0,d.jsxs)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-500 uppercase block mb-2`,children:`Empfänger-Daten (Pro Zeile)`}),(0,d.jsxs)(`p`,{className:`text-[10px] text-gray-400 mb-2 leading-tight`,children:[`Format: `,(0,d.jsx)(`b`,{children:`E-Mail, Vorname Elternteil, Namen der Kinder`}),(0,d.jsx)(`br`,{}),`(z.B. `,(0,d.jsx)(`i`,{children:`max@muster.de, Max, Moritz und Leni`}),`)`]}),(0,d.jsx)(`textarea`,{placeholder:`max@muster.de, Max, Moritz und Leni -anna@test.de, Anna, Lisa`,value:Te,onChange:e=>Ee(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 mb-2 h-40 font-mono`}),(0,d.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,d.jsxs)(`span`,{className:`text-xs text-gray-500`,children:[Xe.length,` Empfänger erkannt`]}),(0,d.jsx)(`button`,{onClick:()=>{Ge(`preview`),Ke(0)},className:`px-4 py-1.5 bg-indigo-100 text-indigo-700 text-xs font-bold rounded-lg hover:bg-indigo-200 transition-colors`,children:`Zur Vorschau →`})]})]}),k===`preview`&&(0,d.jsx)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:Xe.length===0?(0,d.jsx)(`div`,{className:`text-center py-6 text-gray-500 text-sm`,children:`Bitte zuerst Empfänger eintragen.`}):(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsxs)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:[`Vorschau für Empfänger `,A+1,` von `,Xe.length]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`button`,{onClick:()=>Ke(Math.max(0,A-1)),disabled:A===0,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`←`}),(0,d.jsx)(`button`,{onClick:()=>Ke(Math.min(Xe.length-1,A+1)),disabled:A>=Xe.length-1,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`→`})]})]}),Xe[A]&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-lg p-4 mb-4`,children:[(0,d.jsxs)(`div`,{className:`text-xs text-gray-500 mb-1 border-b border-gray-100 pb-2`,children:[(0,d.jsx)(`span`,{className:`font-bold`,children:`An:`}),` `,Xe[A].to]}),(0,d.jsx)(`div`,{className:`text-sm font-bold text-gray-800 mt-2 mb-2`,children:Xe[A].subject}),(0,d.jsx)(`div`,{className:`text-xs text-gray-700 space-y-2 email-preview`,dangerouslySetInnerHTML:{__html:Xe[A].body}})]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2 mb-3 bg-white p-2 rounded-lg border border-gray-100`,children:[(0,d.jsx)(`span`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Versandzeit (Optional)`}),(0,d.jsx)(`input`,{type:`time`,value:ze,onChange:e=>Be(e.target.value),className:`text-xs border border-gray-200 rounded px-2 py-1 focus:ring-1 focus:ring-indigo-500`}),(0,d.jsx)(`span`,{className:`text-[10px] text-gray-400 italic`,children:`Leer = sofort`})]}),(0,d.jsx)(`button`,{onClick:ct,disabled:Fe||!D,className:`w-full px-3 py-2 bg-indigo-600 text-white text-sm font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 shadow-sm`,children:Fe?`Sende...`:`${Xe.length} Anfrage-E-Mails jetzt senden`}),!D&&(0,d.jsx)(`p`,{className:`text-center text-[10px] mt-2 text-red-500`,children:`Gmail nicht verbunden.`}),Le&&(0,d.jsx)(`p`,{className:`text-center text-xs mt-2 font-bold text-indigo-600`,children:Le})]})}),k===`codes`&&(0,d.jsxs)(`div`,{className:`bg-gray-50 p-3 rounded-lg border border-gray-100`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Gutscheincodes hinzufügen`}),ke&&(0,d.jsxs)(`span`,{className:`text-xs text-indigo-600 font-bold`,children:[`Verfügbar: `,ke.available,` (Verwendet: `,ke.used,`)`]})]}),(0,d.jsx)(`textarea`,{placeholder:`z.B. CODE1, CODE2, CODE3`,value:De,onChange:e=>Oe(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 mb-2 h-24`}),(0,d.jsx)(`button`,{onClick:st,disabled:je||!De.trim(),className:`w-full px-3 py-1.5 bg-indigo-100 text-indigo-700 text-xs font-bold rounded-lg hover:bg-indigo-200 disabled:opacity-50`,children:je?`Lädt hoch...`:`Codes speichern`}),Ne&&(0,d.jsx)(`p`,{className:`text-center text-xs mt-2 font-bold text-gray-600`,children:Ne})]}),k===`history`&&(0,d.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[(0,d.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-lg p-3 shadow-inner`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsx)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Eingegangene Antworten (Codes)`}),(0,d.jsx)(`button`,{onClick:ot,disabled:Ue,className:`text-[10px] bg-indigo-50 text-indigo-600 px-2 py-1 rounded hover:bg-indigo-100 transition-colors flex items-center gap-1`,children:Ue?`...`:`🔄 Aktualisieren`})]}),!Ve||Ve.length===0?(0,d.jsx)(`p`,{className:`text-[10px] text-gray-400 italic text-center py-4`,children:`Noch keine Antworten eingegangen.`}):(0,d.jsx)(`div`,{className:`max-h-60 overflow-y-auto rounded border border-gray-50`,children:(0,d.jsxs)(`table`,{className:`min-w-full text-[10px] text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-400 sticky top-0`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`E-Mail`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Code`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Datum`})]})}),(0,d.jsx)(`tbody`,{className:`divide-y divide-gray-50`,children:Ve.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-indigo-50/30`,children:[(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-700 truncate max-w-[120px]`,title:e.email,children:e.email}),(0,d.jsx)(`td`,{className:`px-2 py-1 font-mono font-bold text-indigo-600`,children:e.code}),(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-400`,children:new Date(e.used_at).toLocaleDateString(`de-DE`,{day:`2-digit`,month:`2-digit`,hour:`2-digit`,minute:`2-digit`})})]},t))})]})})]}),(0,d.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-lg p-3 shadow-inner`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsx)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:`Versand-Historie (Anfragen)`}),(0,d.jsx)(`button`,{onClick:it,className:`text-[10px] bg-indigo-50 text-indigo-600 px-2 py-1 rounded hover:bg-indigo-100 transition-colors flex items-center gap-1`,children:`🔄 Aktualisieren`})]}),!qe||qe.length===0?(0,d.jsx)(`p`,{className:`text-[10px] text-gray-400 italic text-center py-4`,children:`Noch keine Versand-Aktivitäten.`}):(0,d.jsx)(`div`,{className:`max-h-60 overflow-y-auto rounded border border-gray-50`,children:(0,d.jsxs)(`table`,{className:`min-w-full text-[10px] text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-400 sticky top-0`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Datum/Zeit`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Empfänger`}),(0,d.jsx)(`th`,{className:`px-2 py-1`,children:`Geplant für`})]})}),(0,d.jsx)(`tbody`,{className:`divide-y divide-gray-50`,children:qe.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-indigo-50/30`,children:[(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-700`,children:new Date(e.timestamp).toLocaleDateString(`de-DE`,{day:`2-digit`,month:`2-digit`,hour:`2-digit`,minute:`2-digit`})}),(0,d.jsx)(`td`,{className:`px-2 py-1 font-bold text-indigo-600`,children:e.recipient_count}),(0,d.jsx)(`td`,{className:`px-2 py-1 text-gray-400`,children:e.scheduled_time||`Sofort`})]},t))})]})})]})]})]}),(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-amber-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-4`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-amber-50 rounded-lg text-amber-600 text-xl`,children:`✉️`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Nachfassen (Erinnerungen)`})]})}),(0,d.jsxs)(`div`,{className:`bg-gray-50 p-4 rounded-lg border border-gray-100 flex flex-col`,children:[(0,d.jsx)(`h6`,{className:`font-bold text-sm text-gray-800 mb-1`,children:`Erinnerungen (0-1 Logins)`}),(0,d.jsx)(`p`,{className:`text-xs text-gray-600 mb-4`,children:`Identifiziert Nicht-Käufer für den Supermailer oder Gmail Direkt-Versand.`}),(0,d.jsx)(`div`,{className:`mt-auto`,children:de?(0,d.jsxs)(`div`,{className:`w-full bg-white p-3 rounded border border-gray-200 text-sm flex flex-col gap-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4 text-amber-600`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),(0,d.jsx)(`span`,{className:`font-medium text-gray-700`,children:`Analyse läuft...`})]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 break-words`,children:T})]}):le?(0,d.jsx)(`div`,{className:`space-y-3`,children:(0,d.jsxs)(`button`,{onClick:()=>St(le),className:`w-full px-4 py-2 bg-emerald-600 text-white text-xs font-bold rounded-lg hover:bg-emerald-700 transition-colors shadow-sm flex items-center justify-center gap-2`,children:[(0,d.jsx)(`svg`,{className:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 16v1a2 2 0 002 2h12a2 2 0 002-2v-1m-4-4l-4 4m0 0l-4-4m4 4V4`})}),`CSV für Supermailer`]})}):(0,d.jsx)(`button`,{onClick:()=>xt(c),disabled:f!==null||de||b,className:`w-full px-4 py-2 bg-amber-600 text-white text-xs font-bold rounded-lg hover:bg-amber-700 disabled:opacity-50 transition-colors shadow-sm`,children:`Analyse starten`})})]})]}),le&&he&&D&&(0,d.jsxs)(`div`,{className:`mt-4 border-t border-gray-100 pt-4 bg-gray-50 p-4 rounded-xl space-y-4`,children:[(0,d.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,d.jsxs)(`h6`,{className:`font-bold text-gray-900 flex items-center gap-2`,children:[(0,d.jsx)(`span`,{children:`🚀`}),` Gmail Direkt-Versand`]}),(0,d.jsxs)(`p`,{className:`text-xs text-indigo-600 font-bold bg-indigo-50 px-2 py-1 rounded`,children:[he.length,` Empfänger identifiziert`]})]}),(0,d.jsxs)(`div`,{className:`flex border-b border-gray-200 mb-2`,children:[(0,d.jsx)(`button`,{onClick:()=>Qe(`config`),className:`px-4 py-2 text-xs font-bold ${Ze===`config`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`1. Text konfigurieren`}),(0,d.jsx)(`button`,{onClick:()=>{Qe(`preview`),et(0)},className:`px-4 py-2 text-xs font-bold ${Ze===`preview`?`text-indigo-600 border-b-2 border-indigo-600`:`text-gray-500 hover:text-gray-700`}`,children:`2. Vorschau & Versand`})]}),Ze===`config`&&(0,d.jsxs)(`div`,{className:`space-y-4`,children:[(0,d.jsxs)(`div`,{className:`space-y-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Betreff`}),(0,d.jsx)(`input`,{value:_e,onChange:e=>ve(e.target.value),className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500`})]}),(0,d.jsxs)(`div`,{className:`space-y-2`,children:[(0,d.jsx)(`label`,{className:`text-[10px] font-bold text-gray-400 uppercase`,children:`Nachricht (HTML erlaubt)`}),(0,d.jsx)(`textarea`,{value:ye,onChange:e=>be(e.target.value),rows:4,className:`w-full px-3 py-2 text-sm border border-gray-200 rounded-lg focus:ring-2 focus:ring-indigo-500 font-mono`}),(0,d.jsxs)(`div`,{className:`flex justify-between items-center text-[10px] text-gray-400`,children:[(0,d.jsxs)(`span`,{children:[`Platzhalter: `,`{Name Käufer}`,`, `,`{Kindernamen}`,`, `,`{LinksHTML}`]}),(0,d.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,d.jsx)(`svg`,{className:`w-3 h-3 text-emerald-500`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,d.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z`})}),`Signatur "Kinderfotos Erding" wird automatisch angehängt`]})]})]}),(0,d.jsx)(`button`,{onClick:()=>{Qe(`preview`),et(0)},className:`w-full px-4 py-2 bg-indigo-100 text-indigo-700 text-sm font-bold rounded-lg hover:bg-indigo-200 transition-colors`,children:`Zur Vorschau →`})]}),Ze===`preview`&&(0,d.jsx)(`div`,{children:rt.length===0?(0,d.jsx)(`div`,{className:`text-center py-6 text-gray-500 text-sm`,children:`Keine Empfänger für die Vorschau.`}):(0,d.jsxs)(`div`,{children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-3`,children:[(0,d.jsxs)(`h6`,{className:`text-[10px] font-bold text-gray-500 uppercase`,children:[`Vorschau für Empfänger `,$e+1,` von `,rt.length]}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(`button`,{onClick:()=>et(Math.max(0,$e-1)),disabled:$e===0,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`←`}),(0,d.jsx)(`button`,{onClick:()=>et(Math.min(rt.length-1,$e+1)),disabled:$e>=rt.length-1,className:`p-1 bg-white border border-gray-200 rounded text-gray-600 disabled:opacity-30`,children:`→`})]})]}),rt[$e]&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-lg p-4 mb-4`,children:[(0,d.jsxs)(`div`,{className:`text-xs text-gray-500 mb-1 border-b border-gray-100 pb-2`,children:[(0,d.jsx)(`span`,{className:`font-bold`,children:`An:`}),` `,rt[$e].to]}),(0,d.jsx)(`div`,{className:`text-sm font-bold text-gray-800 mt-2 mb-2`,children:rt[$e].subject}),(0,d.jsx)(`div`,{className:`text-xs text-gray-700 space-y-2 email-preview`,dangerouslySetInnerHTML:{__html:rt[$e].body}})]}),(0,d.jsx)(`button`,{onClick:Ct,disabled:xe,className:`w-full py-2.5 bg-indigo-600 text-white text-sm font-bold rounded-lg hover:bg-indigo-700 disabled:opacity-50 transition-all shadow-md flex items-center justify-center gap-2`,children:xe?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),`Sende Mails...`]}):(0,d.jsxs)(d.Fragment,{children:[rt.length,` Erinnerungs-Mails jetzt versenden`]})}),Ce&&(0,d.jsx)(`p`,{className:`text-center text-xs font-bold text-indigo-600 mt-2`,children:Ce})]})})]})]})]}),` `,tt===`statistik`&&(0,d.jsxs)(`div`,{className:`bg-white border border-gray-200 rounded-xl p-5 hover:border-purple-300 transition-colors shadow-sm md:col-span-2`,children:[(0,d.jsx)(`div`,{className:`flex items-start justify-between mb-4`,children:(0,d.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,d.jsx)(`div`,{className:`p-2 bg-purple-50 rounded-lg text-purple-600 text-xl`,children:`📊`}),(0,d.jsx)(`h5`,{className:`font-bold text-gray-900 text-lg`,children:`Verkaufsstatistik`})]})}),(0,d.jsx)(`p`,{className:`text-sm text-gray-500 mb-4`,children:`Wie viele Kinder haben wie viel gekauft? Starten Sie den Job, um die Daten abzurufen.`}),(0,d.jsx)(`div`,{className:`mb-6`,children:b?(0,d.jsxs)(`div`,{className:`w-full bg-gray-50 p-3 rounded border border-gray-200 text-sm flex flex-col gap-2`,children:[(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsxs)(`svg`,{className:`animate-spin h-4 w-4 text-purple-600`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,d.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,d.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`})]}),(0,d.jsx)(`span`,{className:`font-medium text-gray-700`,children:`Läuft im Hintergrund...`})]}),(0,d.jsx)(`p`,{className:`text-xs text-gray-500 break-words`,children:g})]}):(0,d.jsx)(`button`,{onClick:()=>mt(c),disabled:f!==null||b,className:`px-4 py-2 bg-purple-600 text-white text-sm font-bold rounded-lg hover:bg-purple-700 disabled:opacity-50 transition-colors shadow-sm`,children:`Statistik-Lauf starten`})}),v&&(0,d.jsxs)(`div`,{className:`mt-4 border-t border-gray-200 pt-6`,children:[(0,d.jsxs)(`div`,{className:`flex justify-between items-center mb-4`,children:[(0,d.jsx)(`h4`,{className:`text-lg font-bold text-gray-800`,children:`Ergebnis der Auswertung`}),(0,d.jsx)(`span`,{className:`text-xs bg-emerald-100 text-emerald-800 px-2 py-1 rounded font-medium`,children:`Erfolgreich abgeschlossen`})]}),(0,d.jsx)(`div`,{className:`overflow-x-auto rounded-lg border border-gray-200`,children:(0,d.jsxs)(`table`,{className:`min-w-full divide-y divide-gray-200 text-sm text-left`,children:[(0,d.jsx)(`thead`,{className:`bg-gray-50 text-gray-500 uppercase`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium`,children:`Album`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Kinder (Gesamt)`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Mit Käufen`}),(0,d.jsx)(`th`,{className:`px-4 py-3 font-medium text-center`,children:`Alle Bilder`})]})}),(0,d.jsxs)(`tbody`,{className:`bg-white divide-y divide-gray-200`,children:[v.map((e,t)=>(0,d.jsxs)(`tr`,{className:`hover:bg-gray-50`,children:[(0,d.jsx)(`td`,{className:`px-4 py-3 font-medium text-gray-900`,children:e.Album}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-gray-600`,children:e.Kinder_insgesamt}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-emerald-600 font-medium`,children:e.Kinder_mit_Käufen}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-indigo-600 font-medium`,children:e.Kinder_Alle_Bilder_gekauft})]},t)),(0,d.jsxs)(`tr`,{className:`bg-gray-50 font-bold border-t-2 border-gray-300`,children:[(0,d.jsxs)(`td`,{className:`px-4 py-3 text-gray-900`,children:[`Gesamt (`,v.length,` Alben)`]}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-gray-900`,children:v.reduce((e,t)=>e+(t.Kinder_insgesamt||0),0)}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-emerald-700`,children:v.reduce((e,t)=>e+(t.Kinder_mit_Käufen||0),0)}),(0,d.jsx)(`td`,{className:`px-4 py-3 text-center text-indigo-700`,children:v.reduce((e,t)=>e+(t.Kinder_Alle_Bilder_gekauft||0),0)})]})]})]})})]})]})]})]}),(0,d.jsx)(`div`,{className:`bg-gray-100 px-4 py-3 sm:px-6 sm:flex sm:flex-row-reverse border-t border-gray-200`,children:(0,d.jsx)(`button`,{type:`button`,className:`w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 sm:mt-0 sm:ml-3 sm:w-auto sm:text-sm`,onClick:()=>{u(null),y(null),h(null)},children:`Schließen`})})]})]})})]})}(0,c.createRoot)(document.getElementById(`root`)).render((0,d.jsx)(l.StrictMode,{children:(0,d.jsx)(f,{})})); \ No newline at end of file diff --git a/fotograf-de-scraper/frontend/dist/index.html b/fotograf-de-scraper/frontend/dist/index.html index ce21088ec..7468e3f9b 100644 --- a/fotograf-de-scraper/frontend/dist/index.html +++ b/fotograf-de-scraper/frontend/dist/index.html @@ -5,8 +5,8 @@ Fotograf.de ERP - - + +